Filtering Issues

Filtering is the way the request packets pick out domains to which the requested operation will be applied.

The filter node is presented by the DomainFilterType complex type (domain_input.xsd). This data type is structured as follows:

The filter allows two kinds of filtering:

 

Individual filtering

The following packet requests hosting settings of three domains specified by their id:

<packet version="1.4.2.0">
<domain>
<get>
   <filter>
      <id>124</id>
      <id>125</id>
      <id>127</id>
   </filter>
   <dataset>
      <hosting/>
   </dataset>
</get>
</domain>
</packet>

The following packet is identical except it specifies domains by their names:

<packet version="1.4.2.0">
<domain>
<get>
   <filter>
      <domain_name>advent.co.uk</domain_name>
      <domain_name>freescale.co.uk</domain_name>
      <domain_name>talkmore.co.uk</domain>
   </filter>
   <dataset>
      <hosting/>
   </dataset>
</get>
</domain>
</packet>

The following packet is invalid as both the id node and the domain_name node are used in the same filter:

<packet version="1.4.2.0">
<domain>
<get>
   <filter>
      <domain_name>advent.co.uk</domain_name>
      <id>125</id>
      <domain_name>talkmore.co.uk</domain>
   </filter>
   <dataset>
      <hosting/>
   </dataset>
</get>
</domain>
</packet>

To fix this problem, use two different <get> sections:

<packet version="1.4.2.0">
<domain>
<get>
   <filter>
      <domain_name>advent.co.uk</domain_name>
      <domain_name>talkmore.co.uk</domain>
   </filter>
   <dataset>
      <hosting/>
   </dataset>
</get>
<get>
   <filter>
      <id>125</id>
   </filter>
   <dataset>
      <hosting/>
   </dataset>
</get>
</domain>
</packet>

 

Bulk filtering

The following packet deletes all domains belonging to two Plesk Clients specified by ID:

<packet version="1.4.2.0">
<domain>
<del>
   <filter>
      <client_id>1324</client_id>
      <client_id>1325</client_id>
   </filter>
</del>
</domain>
</packet>

The same packet specifies Plesk Clients by login:

<packet version="1.4.2.0">
<domain>
<del>
   <filter>
      <client_login>FirstClient</client_login>
      <client_login>LastClient</client_login>
   </filter>
</del>
</domain>
</packet>

The following packet is invalid as it uses both the client_id node and the client_login node within one filter:

<packet version="1.4.2.0">
<domain>
<del>
   <filter>
      <client_id>1324</client_id>
      <client_login>LastClient</client_login>
   </filter>
</del>
</domain>
</packet>

To fix this packet, use two different <del> sections:

<packet version="1.4.2.0">
<domain>
<del>
   <filter>
      <client_id>1324</client_id>
   </filter>
</del>
<del>
   <filter>
      <client_login>LastClient</client_login>
   </filter>
</del>
</domain>
</packet>

The following packet sent by Plesk Administrator deletes all domains available in Plesk. If sent by Plesk Client, it will delete all domains of this Client:

<packet version="1.4.2.0">
<domain>
<del>
   <filter/>
</del>
</domain>
</packet>