Filtering is the way a request XML packet indicates the object (one or several client templates) to which an operation is to be applied. Parameters nested within the filter node are called filtering rule.
The filter node is presented by the ClientTemplateFilterType complex type (client_template.xsd). This data type is structured as follows:

Note: Different client templates which belong to different Plesk users can have the same ID or name.
A client template can be filtered either by id, or by name. The same is true if several client templates are filtered by the same filter node. The following sample packet is invalid as it uses both id and name within the same filter:
<packet version="1.6.0.0">
<client-template>
<get>
<filter>
<name>base_template</name>
<name>quick_template</name>
<id>11</id>
<id>12</id>
</filter>
<limits/>
<owner-login>JDoe</owner-login>
</get>
</client-template>
</packet>
To fix this packet, use two different <get> sections instead:
<packet version="1.6.0.0">
<client-template>
<get>
<filter>
<name>base_template</name>
<name>quick_template</name>
</filter>
<limits/>
<owner-login>JDoe</owner-login>
</get>
<get>
<filter>
<id>11</id>
<id>12</id>
</filter>
<limits/>
<owner-login>JDoe</owner-login>
</get>
</client-template>
</packet>
The filter node can be left empty. In this case all client templates belong to one Plesk user will be filtered:
<packet version="1.6.0.0">
<client-template>
<get>
<filter/>
<owner-id>4</owner-id>
</get>
</client-template>
</packet>