REST API - POST User Properties

Updated

This operation updates the properties associated with a user.

Request

Syntax

Send the request using either the ID or the name:

  • ID

    POST <webservice>/User/{userId} HTTP/1.1 Host: <host name> Accept: application/xml Authtoken: <authentication token> Content-type: application/xml <modify_user_template.xml>

  • Name

    POST <webservice>/User/byName(userName='{userName}') HTTP/1.1 Host: <host name> Accept: application/xml Authtoken: <authentication token> Content-type: application/xml <modify_user_template.xml>

where <webservice> is the root path used to route the API requests to the Web Server.

For more information, see Available Web Services for REST API.

Request Parameters

Name

Description

Required

userId

The user ID for the user. If the user ID is not known, use the GET User API to retrieve it.

Yes-for the request by ID

userName

The user name of the user. If the user name is not known, use the GET User API to retrieve it.

Yes-for the request by name

Request Headers

Name

Description

Host

The host name of the Web Server or Web Console used in the API request.

Accept

The format of the response. Valid values are: application/xml or application/json.

Authtoken

The authentication token received after successfully logging on. For details on receiving an authentication token, see Authentication.

Content-type

The media type contained in the request body.

Request Body

Download the modify_user_template.xml file required for this request. The following table displays the parameters for the modify_user_template.xml file.

Parameter

Description

Element

Parent Element

userName

The name of the user.

userEntity

users

newName

If you are changing the name of the user, enter the new name in the <newName> element and the original name in the <userName> element.

userEntity

users

associationsOperationType

The operation to perform on the role and entities inside the <associations> block. The entity, role, and user form a security association. To perform an operation on multiple security associations, add an <associations> block in the XML file for each security association:

<associations>
  <entities>
    <entity>
      <entity_name></entity_name>
    </entity>
  </entities>
  <properties>
    <role>
      <roleName></roleName>
    </role>
  </properties>
</associations>
    

Valid values are:

  • ADD, to create a new security association between the entity, role, and user

  • OVERWRITE, to overwrite existing security associations with new security associations

  • DELETE, to delete one or more security associations

securityAssociations

users

entity name

Replace entity_name with the name of the entity operated on by the associationsOperationType parameter.

Valid replacement values are:

  • clientGroupName

  • clientName

  • appName

  • backupsetName

  • subclientName

  • userName

  • userGroupName

  • providerDomainName

  • mediaAgentName

  • libraryName

  • containerName

  • locationName

  • shelfName

  • storagePolicyName

  • schedulePolicyName

  • trackingPolicyName

    To include multiple entities in a security association, add the following elements in the XML file for each entity:

    <entity> <entity_name>entity_value</entity_name> </entity>

    Examples

    To associate two libraries, enter the following in the XML file:

    <entities>
      <entity>
        <libraryName>library_001</libraryName>
      </entity>
      <entity>
        <libraryName>library_022</libraryName>
      </entity>
    </entities>
        
    

    To associate a domain, enter the following in the XML file:

    <entities>
      <entity>
        <providerDomainName>mydomain</providerDomainName>
      </entity>
    </entities>
        
    

    To associate a file system and a MySQL agent, enter the following in the XML file:

    <entities>
      <entity>
        <appName>File System</appName>
      </entity>
    </entities>
    <entities>
      <entity>
        <appName>MySQL</appName>
      </entity>
    </entities>
        
    

    Tip: For a list of valid values for the <appName> element, see GET Agent: appName.

entity

entities

roleName

The name of the role operated on by the associationsOperationType parameter. The <associations> block must have exactly one role, for example:

<associations>
  <properties>
    <role>
      <roleName>Role3</roleName>
    </role>
  </properties>
...
...
</associations>
    

role

properties

permissionName

Use this element to add permissions without selecting a role. If you use the permissionName parameter, you cannot use the roleName parameter.

The name of the permission operated on by the associationsOperationType parameter. To work with multiple permissions, add the following elements in the XML file for each permission:

<categoriesPermissionList permissionName = ""/>

For a list of valid values, see User Security Permissions and Permitted Actions.

categoriesPermissionList

categoriesPermission

categoryName

Use this element to add all of the permissions in a category without selecting a role. If you use the categoryName parameter, you cannot use the roleName parameter.

The name of the permission category operated on by the associationsOperationType parameter. To work with multiple categories, add the following elements in the XML file for each category:

<categoriesPermissionList categoryName = ""/>
    

Valid values are:

Access Policies

Features

Alert

Global

Analytics

Monitoring Policy

Billing

Plan

Client

Schedule Policy

Client Group

Storage Management

CommCell

Storage Provisioning

Content Director

Subclient Policy

Custom Property

User Management

Developer Tools

VM Operations

categoriesPermissionList

categoriesPermission

associatedUserGroupsOperationType

The operation to perform on the user group in the <userGroupName> element.

Valid values are:

  • ADD, to associate new user groups.

  • OVERWRITE, to overwrite the existing user groups with new user groups.

  • DELETE, to delete one or more user groups.

users

App_UpdateUserPropertiesRequest

enableUser

The option to enable/disable the user.

Valid values are True/False.

users

App_UpdateUserPropertiesRequest

agePasswordDays

The number of days to keep the password active.

users

App_UpdateUserPropertiesRequest

email

The email address of the user.

users

App_UpdateUserPropertiesRequest

password

The password of the user to access the user account.

The password must be in plain text in XML request and Base64 encoded in JSON request.

To change this password, the password of the logged on user must be included in the <validationParameters password> element.

users

App_UpdateUserPropertiesRequest

fullName

The full name of the user.

users

App_UpdateUserPropertiesRequest

password

If the password in the <users><password> element is changed, the password of the logged on user must be included in the <validationParameters password> element.

validationParameters

users

description

A general description of the user account.

users

App_UpdateUserPropertiesRequest

userGroupName

The name of the user group operated on by the <associatedUserGroupsOperationType> element. To work with more than one user group, add the following line in the XML file for each user group:

<userGroupName>user_group</userGroupName>

associatedUserGroups

users

Response

Response Parameters

Parameter

Description

Element

errorCode

The possible error codes.

Valid values are:

  • 0, successful completion.

  • 2, a failure.

  • a specific error code.

response

userId

The system-generated ID assigned to the user.

entity

Examples

Sample Request

This request uses the ID and a plain text password.

POST <webservice>/User/2 HTTP/1.1
 Host: client.mydomain.com
 Accept: application/xml
 Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
 0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
 8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
 40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
 68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
 3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
 Content-type: application/xml
 <App_UpdateUserPropertiesRequest>
   <users>
     <userEntity>
       <userName>jdoe</userName>
     </userEntity>
     <associatedUserGroupsOperationType>ADD</associatedUserGroupsOperationType>
     <enableUser>true</enableUser>
     <agePasswordDays>120</agePasswordDays>
     <email>jdoe@company.com</email>
     <password>P9u4589</password>
     <fullName>Jane Doe</fullName>
     <validationParameters password="O%rr123"/>
     <description>backup admin user</description>
     <associatedUserGroups>
       <userGroupName>View All</userGroupName>
     </associatedUserGroups>
   </users>
 </App_UpdateUserPropertiesRequest>
    

This request uses the name and a Base64 encoded password.

POST <webservice>/User/byName(userName='jdoe') HTTP/1.1
 Host: client.mydomain.com
 Accept: application/xml
 Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
 0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
 8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
 40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
 68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
 3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
 Content-type: application/xml
 <App_UpdateUserPropertiesRequest>
   <users>
     <userEntity>
       <userName>jdoe</userName>
     </userEntity>
     <associatedUserGroupsOperationType>ADD</associatedUserGroupsOperationType>
     <enableUser>true</enableUser>
     <agePasswordDays>120</agePasswordDays>
     <email>jdoe@company.com</email>
     <password>UDl1NDU4OQ==</password>
     <fullName>Jane Doe</fullName>
     <validationParameters password="O%rr123"/>
     <description>backup admin user</description>
     <associatedUserGroups>
       <userGroupName>View All</userGroupName>
     </associatedUserGroups>
   </users>
 </App_UpdateUserPropertiesRequest>
    

Sample Response

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
 <App_UpdateUserPropertiesResponse>
   <response errorCode="0">
     <entity userId="2"/>
   </response>
</App_UpdateUserPropertiesResponse>