Docusign Users API

Methods to manage users in an account.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

docusign-users-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: DocuSign Admin AccountBrands Users API
  description: An API for an organization administrator to manage organizations, accounts and users
  termsOfService: https://www.docusign.com/company/terms-and-conditions/developers
  contact:
    name: DocuSign Developer Center
    url: https://developers.docusign.com
    email: devcenter@docusign.com
  version: v2.1
servers:
- url: https://api.docusign.net/Management
tags:
- name: Users
  description: Methods to manage users in an account.
paths:
  /v2/organizations/{organizationId}/users/email_addresses:
    post:
      tags:
      - Users
      summary: Docusign Updates a user's email address.
      description: 'Updates a user''s email address.


        - Required scopes: `user_write`


        '
      operationId: User_Users_UpdateEmailAddressesV2
      parameters:
      - name: organizationId
        in: path
        description: The organization ID Guid
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateUsersEmailRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersUpdateResponse'
      security:
      - accessCode:
        - user_write
      x-ds-methodname: updateEmailAddress
      x-ds-method: updateEmailAddress
      x-ds-service: Users
      x-ds-in-sdk: true
      x-codegen-request-body-name: request
  /v2/organizations/{organizationId}/users:
    get:
      tags:
      - Users
      summary: Docusign Returns information about the users in an organization.
      description: 'Returns information about the users in an organization.



        - Required scopes: `user_read`


        You must include at least one of the following query parameters in the request:


        - `account_id`: The id of an account associated with the organization.

        - `organization_reserved_domain_id`: The id of one of the organization''s reserved domains.

        - `email`: An email address associated with the users that you want to return.'
      operationId: OrganizationUser_OrganizationUsers_GetV2
      parameters:
      - name: organizationId
        in: path
        description: The organization ID Guid
        required: true
        schema:
          type: string
          format: uuid
      - name: start
        in: query
        description: Index of first item to include in the response. The default value is 0.
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: Page size of the response. The default value is 20.
        schema:
          type: integer
          format: int32
      - name: end
        in: query
        description: Index of the last item to include in the response. Ignored if `take` parameter is specified.
        schema:
          type: integer
          format: int32
      - name: email
        in: query
        description: Email address of the desired user. At least one of `email`, `account_id` or `organization_reserved_domain_id` must be specified.
        schema:
          type: string
      - name: email_user_name_like
        in: query
        description: Selects users by pattern matching on the user's email address
        schema:
          type: string
      - name: status
        in: query
        description: Status.
        schema:
          type: string
      - name: membership_status
        in: query
        description: 'The user''s membership status. One of:


          - `activation_required`

          - `activation_sent`

          - `active`

          - `closed`

          - `disabled`

          '
        schema:
          type: string
      - name: account_id
        in: query
        description: Select users that are members of the specified account. At least one of `email`, `account_id` or `organization_reserved_domain_id` must be specified.
        schema:
          type: string
          format: uuid
      - name: organization_reserved_domain_id
        in: query
        description: Select users that are in the specified domain. At least one of `email`, `account_id` or `organization_reserved_domain_id` must be specified.
        schema:
          type: string
          format: uuid
      - name: last_modified_since
        in: query
        description: Select users whose data have been modified since the date specified. `account_id` or `organization_reserved_domain_id` must be specified.
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationUsersResponse'
      security:
      - accessCode:
        - user_read
      x-ds-methodname: getUsers
      x-ds-method: getUsers
      x-ds-service: Users
      x-ds-in-sdk: true
  /v2/accounts/{accountId}/users:
    get:
      tags:
      - Users
      summary: Docusign Retrieves the list of users for the specified account.
      description: 'Retrieves the list of users for the specified account.


        The response returns the list of users for the account along with the information about the result set. If the `additional_info` query was added to the endpoint and set to **true**, the full user information is returned for each user'
      operationId: Users_GetUsers
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: additional_info
        in: query
        description: When set to **true**, the full list of user information is returned for each user in the account.
        schema:
          type: string
      - name: count
        in: query
        description: 'Number of records to return. The number must be greater than 0 and less than or equal to 100. '
        schema:
          type: string
      - name: email
        in: query
        schema:
          type: string
      - name: email_substring
        in: query
        description: Filters the returned user records by the email address or a sub-string of email address.
        schema:
          type: string
      - name: group_id
        in: query
        description: Filters user records returned by one or more group Id's.
        schema:
          type: string
      - name: login_status
        in: query
        schema:
          type: string
      - name: not_group_id
        in: query
        schema:
          type: string
      - name: start_position
        in: query
        description: 'Starting value for the list. '
        schema:
          type: string
      - name: status
        in: query
        description: 'Filters the user records by account status. One of:


          * ActivationRequired

          * ActivationSent

          * Active

          * Closed

          * Disabled

          '
        schema:
          type: string
      - name: user_name_substring
        in: query
        description: Filters the user records returned by the user name or a sub-string of user name.
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/userInformationList'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: list
      x-ds-method: list
      x-ds-service: Users
      x-ds-in-sdk: true
    put:
      tags:
      - Users
      summary: Docusign Change one or more user in the specified account.
      operationId: Users_PutUsers
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/userInformationList'
          application/xml:
            schema:
              $ref: '#/components/schemas/userInformationList'
        required: false
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/userInformationList'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: updateUsers
      x-ds-method: updateList
      x-ds-service: Users
      x-ds-in-sdk: true
      x-codegen-request-body-name: userInformationList
    post:
      tags:
      - Users
      summary: Docusign Adds news user to the specified account.
      description: "Adds new users to an account.\n\nThe body of this request\nis an array\nof [`Users`][usersobject] objects.\nFor each new user,\nyou must provide at least\nthe `userName`\nand\nan `email`.\n\nThe\n[`userSettings` property](#user-settings)\nis a [name/value][nameValue]\nlist that specifies the actions users can\nperform.\nIn the example below,\nTal Mason\nwill be able to send envelopes,\nand the activation email\nwill be in French\nbecause the `locale`\nis set to `fr`.\n\n\n```\nPOST /restapi/v2/accounts/{accountId}/users\nContent-Type: application/json\n```\n```\n{\n  \"newUsers\": [\n    {\n      \"userName\": \"Claire Horace\",\n      \"email\": \"claire@example.com.com\"\n    },\n    {\n      \"userName\": \"Tal Mason\",\n      \"email\": \"tal@example.com.com\",\n      \"userSettings\": [\n        {\n          \"name\": \"canSendEnvelope\",\n          \"value\": \"true\"\n        },\n        {\n          \"name\": \"locale\",\n          \"value\": \"fr\"\n        }\n      ]\n    }\n  ]\n}\n```\n\n\nA successful response\nis a\n`newUsers` array\nwith information about\nthe newly created users.\nIf there was problem creating a user,\nthat entry will contain\nan `errorDetails` property\nthat describes what went wrong.\n\n```json\n{\n  \"newUsers\": [\n    {\n      \"userId\": \"e064a4fc-c0da-c0c0-95fa-8bac87ede98a\",\n      \"uri\": \"/users/e064a4fc-c0da-c0c0-95fa-8bac87ede98a\",\n      \"email\": \"claire@example.com\",\n      \"userName\": \"Claire Horace\",\n      \"createdDateTime\": \"0001-01-01T08:00:00.0000000Z\",\n      \"errorDetails\": {\n        \"errorCode\": \"USER_ALREADY_EXISTS_IN_ACCOUNT\",\n        \"message\": \"Username and email combination already exists for this account.\"\n      }\n    },\n    {\n      \"userId\": \"a0e6c64b-feed-cafe-9af0-805ff3c8cffd\",\n      \"uri\": \"/users/a0e6c64b-feed-cafe-9af0-805ff3c8cffd\",\n      \"email\": \"tal@example.com\",\n      \"userName\": \"Tal Mason\",\n      \"userStatus\": \"ActivationSent\",\n      \"createdDateTime\": \"2017-09-15T05:54:36.1265683Z\"\n    }\n  ]\n}\n```\n\n\n### User Settings\n\nUser settings\nspecify the capabilities\na newly created user will have.\n\n\n| Name                             | Value   | Authorization Requried                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |\n| :------------------------------- | :------ | :------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| allowBulkRecipients              | Boolean | Admin                                                          | When **true**, this user can use the bulk send functionality.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |\n| allowRecipientLanguageSelection  | Boolean | Admin                                                          | When **true**, this user can set the language used in the standard email format for a recipient when creating an envelope.                                                                                                                                                                                                                                                                                                                                                                                                                                                              |\n| allowSendOnBehalfOf              | Boolean | Admin                                                          | When **true**, this user can send envelopes 'on behalf of' other users through the API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |\n| apiAccountWideAccess             | Boolean | Admin                                                          | When **true**, this user can send and manage envelopes for the entire account using the DocuSign API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |\n| canEditSharedAddressBook         | String  | Admin                                                          | Sets the address book usage and management rights for the user. Possible values: <ul> <li><code>none</code></li> <li><code>use_only_shared</code></li> <li><code>use_private_and_shared</code></li> <li><code>share</code></li> </ul>                                                                                                                                                                                                                                                                                                                                                   |\n| canManageAccount                 | Boolean | Admin &amp; not setting for self                               | When **true**, this user can manage account settings, manage user settings, add users, and remove users.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |\n| canManageTemplates               | String  | Admin &amp; not setting for self                               | Sets the template usage and management rights for the user. Possible values: <ul> <li><code>none</code></li> <li><code>use</code></li> <li><code>create</code></li> <li><code>share</code></li> </ul>                                                                                                                                                                                                                                                                                                                                                                                   |\n| canSendAPIRequests               | Boolean | Admin &amp; [account setting][accountsettings] `usesAPI` is set| Only needed if integrator key is not used. When **true**, this user can send and manage envelopes using the DocuSign API.                                                                                                                                                                                                                                                                                                                                                                                                                                                               |\n| canSendEnvelope                  | Boolean | Admin &amp; not setting for self                               | When **true**, this user can send envelopes though the DocuSign Console.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |\n| enableDSPro                      | Boolean | SysAdmin                                                       | When **true**, this user can send and manage envelopes from the DocuSign Desktop Client.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |\n| enableSequentialSigningAPI       | Boolean | SysAdmin                                                       | When **true**, this user can define the routing order of recipients for envelopes sent using the DocuSign API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |\n| enableSequentialSigningUI        | Boolean | SysAdmin                                                       | When **true**, this user can define the routing order of recipients while sending documents for signature.                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |\n| enableSignerAttachments          | Boolean | Admin                                                          | When **true**, this user can add requests for attachments from signers while sending documents.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |\n| enableSignOnPaperOverride        | Boolean | Admin                                                          | When **true**, this user can override the account setting that determines if signers may sign their documents on paper as an option to signing electronically.                                                                                                                                                                                                                                                                                                                                                                                                                          |\n| enableTransactionPoint           | Boolean | SysAdmin                                                       | When **true**, this user can select an envelope from their member console and upload the envelope documents to TransactionPoint.                                                                                                                                                                                                                                                                                                                                                                                                                                                        |\n| enableVaulting                   | Boolean | Admin                                                          | When **true**, this user can use electronic vaulting for documents.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |\n| locale                           | String  | Admin                                                          | Sets the default language for the user. The supported languages are: <ul> <li>Chinese Simplified: <code>zh_CN</code></li> <li>Chinese Traditional: <code>zh_TW</code></li> <li>Dutch: <code>nl</code></li> <li>English US: <code>en</code></li> <li>French: <code>fr</code></li> <li>German: <code>de</code></li> <li>Italian: <code>it</code></li> <li>Japanese: <code>ja</code></li> <li>Korean: <code>ko</code></li> <li>Portuguese: <code>pt</code></li> <li>Portuguese (Brazil): <code>pt_BR</code></li> <li>Russian: <code>ru</code></li> <li>Spanish: <code>es</code></li> </ul> |\n| powerFormAdmin                   | Boolean | Admin                                                          | When **true**, this user can create, manage and download the PowerForms documents.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |\n| powerFormUser                    | Boolean | Admin                                                          | When **true**, this user can view and download PowerForms documents.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |\n| selfSignedRecipientEmailDocument | String  | Admin                                                          | Sets how self-signed documents are presented to the email recipients. This can only be changed if the <code>selfSignedRecipientEmailDocumentUserOverride</code> <a href=\"https://developers.docusign.com/esign-rest-api/reference/Accounts/Accounts/create/#account-settings\">account setting</a> is <strong>true</strong>. This setting overrides the account setting. Possibe values are: <ul> <li><code>include_pdf</code>: A PDF of the completed document is attached to the email.</li> <li><code>include_link</code>: A secure link to the self-signed documents is included in the email.</li> </ul>                      |\n| vaultingMode                     | String  | Admin                                                          | Sets the electronic vaulting mode for the user. Possible values: <ul> <li><code>none</code></li> <li><code>estored</code></li> <li><code>electronic_original</code></li> </ul>                                                                                                                                                                                                                                                                                                                                                                                                          |\n\n[accountsettings]:  https://developers.docusign.com/esign-rest-api/reference/Accounts/Accounts/create/#account-settings\n[nameValue]:        #/definitions/nameValue\n[usersobject]:      #/definitions/Users\n"
      operationId: Users_PostUsers
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/newUsersDefinition'
          application/xml:
            schema:
              $ref: '#/components/schemas/newUsersDefinition'
        required: false
      responses:
        '201':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/newUsersSummary'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: create
      x-ds-method: create
      x-ds-service: Users
      x-ds-in-sdk: true
      x-codegen-request-body-name: newUsersDefinition
    delete:
      tags:
      - Users
      summary: Docusign Removes users account privileges.
      description: 'This closes one or more user records in the account. Users are never deleted from an account, but closing a user prevents them from using account functions.


        The response returns whether the API execution was successful (200 - OK) or  if it failed. The response contains a user structure similar to the request and includes the user changes. If an error occurred during the DELETE operation for any of the users, the response for that user contains an `errorDetails` node with `errorCode` and `message` properties.'
      operationId: Users_DeleteUsers
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: delete
        in: query
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/userInfoList'
          application/xml:
            schema:
              $ref: '#/components/schemas/userInfoList'
        required: false
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/usersResponse'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: delete
      x-ds-method: delete
      x-ds-service: Users
      x-ds-in-sdk: true
      x-codegen-request-body-name: userInfoList
  /v2/accounts/{accountId}/users/{userId}:
    get:
      tags:
      - Users
      summary: Docusign Gets the user information for a specified user.
      description: "Retrieves the user information for the specified user. \n\nTo return additional user information that details the last login date, login status, and the user's password expiration date, set the optional `additional_info` query string parameter to **true**."
      operationId: User_GetUser
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: userId
        in: path
        description: 'The user ID of the user being accessed. Generally this is the user ID of the authenticated user, but if the authenticated user is an Admin on the account, this may be another user the Admin user is accessing. **Note**: For the [GET /v2/accounts/{accountId}/envelopes](https://developers.docusign.com/esign-rest-api/reference/Envelopes/Envelopes/listStatusChanges/#envelopesInformation) method, the `user_id` query parameter is not implemented and should not be used.'
        required: true
        schema:
          type: string
      - name: additional_info
        in: query
        description: When set to **true**, the full list of user information is returned for each user in the account.
        schema:
          type: string
      - name: email
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/userInformation'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: getInformation
      x-ds-method: get
      x-ds-service: Users
      x-ds-in-sdk: true
    put:
      tags:
      - Users
      summary: Docusign Updates the specified user information.
      operationId: User_PutUser
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: userId
        in: path
        description: 'The user ID of the user being accessed. Generally this is the user ID of the authenticated user, but if the authenticated user is an Admin on the a

# --- truncated at 32 KB (114 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/docusign/refs/heads/main/openapi/docusign-users-api-openapi.yml