Retrieving Descriptor of Permissions

Use the get-permission-descriptor operation to retrieve descriptor of user permissions over a certain subscription. For details on descriptors, refer to the Representation of Object Descriptor section. to learn more about the permissions, refer to the Permissions section.

In this chapter:

Request Packet Structure

Response Packet Structure

Samples

 

Request Packet Structure

A request XML packet retrieving descriptor of permissions for subscription users includes the get-permission-descriptor operation node:

<packet version="1.6.3.0">
<webspace>
   <get-permission-descriptor>
   ...
   </get-permission-descriptor>
</webspace>
</packet>

 

You can retrieve a descriptor for specified subscriptions or the server-level descriptor of permissions. The get-permission-descriptor node has the following graphical representation:

get-perm-desc-rps.gif

Note: The interactive schema navigator for all request packets is available here: http://plesk.github.io/api-schemas/1.6.8.0/agent_input.svg.

  • The filter node is required. It specifies a filtering rule. For info on filters, refer to the Filters of Descriptors section. Data type: domainFilterType (domain_input.xsd).
 

Response Packet Structure

The get-permission-descriptor node of the output XML packet is structured as follows:

Note: The interactive schema navigator for all response packets is available here: http://plesk.github.io/api-schemas/1.6.8.0/agent_output.svg.

  • The result node is required. It wraps the response retrieved from the server. Data type: ResultFilterType (plesk_common.xsd).
  • The status node is required. It specifies the execution status of the get-permission-descriptor operation. Data type: string. Allowed values: ok | error.
  • The errcode node is optional. It is used to return the error code when the get-permission-descriptor operation fails. Data type: unsignedInt.
  • The errtext node is optional. Can be used to return the error message if the get-permission-descriptor operation fails. Data type: string.
  • The filter-id node is optional. It is required if the get-permission-descriptor operation succeeds. Returns either subscription name, subscription ID, customer name, or customer ID depending on a way of descriptor's specification in the request packet. For info on filters, refer to the Filters of Descriptors section. Data type: anySimple.
  • The id node is optional. It is required if the get-permission-descriptor operation succeeds. Returns the unique identifier of the subscription. Data type: integer.
  • The descriptor node is optional. It specifies the object descriptor. For details, refer to Representation of Object Descriptor. Data type: string.

Note: This descriptor contains permissions extensions. For details, refer to the Extension of Permissions Descriptor section.

 

Samples

The request packet retrieving permissions descriptor for the subscription with ID 5 looks as follows:

<packet version ="1.6.3.0">
<webspace>
   <get-permission-descriptor>
      <filter>
         <id>5</id>
      </filter>
   </get-permission-descriptor>
</webspace>
</packet>

Response:

<packet version="1.6.3.0">
  <webspace>
    <get-permission-descriptor>
      <result>
        <status>ok</status>
        <filter-id>MyDomain.com</filter-id>
        <id>10</id>
          <property>
            <name>manage_sh_access</name>
            <type>boolean</type>
            <default-value>false</default-value>
            <writable-by>admin</writable-by>
            <label>cl_perm__manage_sh_access</label>
            <extension>
              <level>client</level>
              <level>domain</level>
            </extension>
          </property>
          ...
          <property>
            <name>manage_dashboard</name>
            <type>boolean</type>
            <default-value>true</default-value>
            <writable-by>admin</writable-by>
            <writable-by>client</writable-by>
            <label>cl_perm__manage_dashboard</label>
            <extension>
              <level>client</level>
              <level>domain</level>
            </extension>
          </property>
        </descriptor>
      </result>
    </get-permission-descriptor>
  </webspace>
</packet>

The request packet retrieving permissions descriptor for subscriptions with ID 5 and ID 7 looks as follows:

<packet version ="1.6.3.0">
<webspace>
   <get-permission-descriptor>
      <filter>
         <name>5</name>
         <name>7</name>
      </filter>
   </get-permission-descriptor>
</webspace>
</packet>

 

The request packet retrieving permissions descriptor for subscriptions of the customer specified by ID 3 looks as follows:

<packet version ="1.6.3.0">
<webspace>
   <get-permission-descriptor>
      <filter>
         <owner-id>3</owner-id>
      </filter>
   </get-permission-descriptor>
</webspace>
</packet>

 

The request packet retrieving the server-level descriptor of permissions for subscription users looks as follows:

<packet version ="1.6.3.0">
<webspace>
   <get-permission-descriptor>
      <filter/>
   </get-permission-descriptor>
</webspace>
</packet>

 

 

Leave your feedback on this topic here

If you have questions or need support, please visit the Plesk forum or contact your hosting provider.
The comments below are for feedback on the documentation only. No timely answers or help will be provided.