Retrieving Descriptor of Permissions

Use the get-permission-descriptor operation to retrieve permissions descriptors of add-on plans. For details on descriptor, refer to the Representation of Object Descriptors section. For details on permissions of service plans, refer to the Permissions section.

In this chapter:

Request Packet Structure

Response Packet Structure

Samples

 

Request Packet Structure

A request XML packet retrieving add-on plan limits includes the get-permission-descriptor operation node:

<packet>
<service-plan-addon>
   <get-permission-descriptor>
   ...
   </get-permission-descriptor>
</service-plan-addon>
</packet>

The get-permission-descriptor node is presented by type DomainAddonTemplateGetInputType (domain_addon_template.xsd). Its graphical representation is as follows:

addon-

 

Response Packet Structure

Theget-permission-descriptor node of the output XML packet is of type DomainAddonTemplateDescriptorOutput (domain_addon_template.xsd) which is structured as follows:

addon-get-permission-desriptor-output

 

Samples

The following packet retrieves limits descriptor for a service plan:

<packet>
<service-plan-addon>
<get-permission-descriptor>
   <filter>
      <name>base_plan</name>
   </filter>
</get-permission-descriptor>
</service-plan-addon>
</packet>

Response:

<packet>
  <service-plan-addon>
    <get-permission-descriptor>
      <result>
        <status>ok</status>
        <name>1 Additional Gigabyte</name>
        <descriptor>
          <property>
            <name>create_domains</name>
            <type>boolean</type>
            <default-value>false</default-value>
            <writable-by>admin</writable-by>
            <writable-by>reseller</writable-by>
            <label>cl_perm__create_domains</label>
            <extension>
              <level>reseller</level>
            </extension>
          </property>
          <property>
            <name>manage_phosting</name>
            <type>boolean</type>
            <default-value>false</default-value>
            <writable-by>admin</writable-by>
            <writable-by>reseller</writable-by>
            <label>cl_perm__manage_phosting</label>
            <extension>
              <level>reseller</level>
              <level>domain</level>
            </extension>
          </property>
                   ...
          <bind>
            <ref>allow_insecure_sites</ref>
            <relevant>
              <name>manage_phosting</name>
              <value>true</value>
            </relevant>
            <read-only>0</read-only>
          </bind>
                   ...
        </descriptor>
      </result>
    </get-permission-descriptor>
  </service-plan-addon>
</packet>

Note: Data structures that describe a number of properties are omitted to improve the readability of the sample.

A single filter can specify multiple plans, all specified either by ID or by name.

<packet>
<service-plan-addon>
<get-permission-descriptor>
   <filter>
      <name>base_plan</name>
      <name>quick_plan</name>
   </filter>
</get-permission-descriptor>
</service-plan-addon>
</packet>