Docusign Groups API

The Groups resource provides methods that allow you to manage groups for the account. Groups can be used to help manage users by associating users with a group. A group can be associated with a Permission Profile, which sets the user permissions for users in that group without having to set the `userSettings` property for each user. You are not required to set Permission Profiles for a group, but this makes it easier to manage user permissions for a large number of users. Groups can also be used with template sharing to limit user access to templates.

Business capability
Identity & Access Management BC-620.20

Operations 8

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /v2/accounts/{accountId}/groups List user groups in an account · Docusign Gets information about groups associated with the account #
Ask an LLM
“What user groups exist in my account?”
“Can I search groups by name or filter by group type?”
Tell an agent
List groups in account {account}.
Search account {account} for groups matching {search}.
PUT /v2/accounts/{accountId}/groups Rename groups or change their permission profile · Docusign Updates the group information for a group #
Ask an LLM
“Can I rename an existing group?”
“How do I change the permission profile assigned to a group?”
Tell an agent
Update groups {groups} in account {account}.
Rename or reassign permission profiles for existing groups {groups}.
POST /v2/accounts/{accountId}/groups Create user groups · Docusign Creates one or more groups for the account #
Ask an LLM
“How do I create a new group to manage users together?”
“Can a group be tied to a permission profile when it's created?”
Tell an agent
Create groups {groups} in account {account}.
Set up new user groups {groups} for my team.
DELETE /v2/accounts/{accountId}/groups Delete user groups · Docusign Deletes an existing user group #
Ask an LLM
“Can I delete a group I no longer need?”
“Is it possible to remove several groups in one request?”
Tell an agent destructive · confirm first
Delete groups {groups} from account {account}.
Remove user groups {groups}.
GET /v2.1/accounts/{accountId}/groups Gets information about groups associated with the account #
PUT /v2.1/accounts/{accountId}/groups Updates the group information for a group #
POST /v2.1/accounts/{accountId}/groups Creates one or more groups for the account #
DELETE /v2.1/accounts/{accountId}/groups Deletes an existing user group #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/docusign:docusign-groups-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

docusign-groups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Docusign Groups API
  termsOfService: https://www.docusign.com/company/terms-and-conditions/web
  version: '1.0'
  description: 'Operations tagged Groups across 2 of this provider''s published API definitions: docusign-openapi-original.yml, docusign-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://www.docusign.net/restapi
tags:
- name: Groups
  description: 'The Groups resource provides methods that allow you to manage groups for the account.


    Groups can be used to help manage users by associating users with a group. A group can be associated with a Permission Profile, which sets the user permissions for users in that group without having to set the `userSettings` property for each user. You are not required to set Permission Profiles for a group, but this makes it easier to manage user permissions for a large number of users. Groups can also be used with template sharing to limit user access to templates.'
paths:
  /v2/accounts/{accountId}/groups:
    get:
      tags:
      - Groups
      summary: Docusign Gets information about groups associated with the account
      description: Retrieves information about groups associated with the account.
      operationId: Groups_GetGroups
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: count
        in: query
        description: Number of records to return. The number must be greater than 1 and less than or equal to 100.
        schema:
          type: string
      - name: group_type
        in: query
        schema:
          type: string
      - name: search_text
        in: query
        schema:
          type: string
      - name: start_position
        in: query
        description: Starting value for the list.
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/groupInformation'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: listGroups
      x-ds-method: list
      x-ds-service: Groups
      x-ds-in-sdk: true
    put:
      tags:
      - Groups
      summary: Docusign Updates the group information for a group
      description: Updates the group name and modifies, or sets, the permission profile for the group.
      operationId: Groups_PutGroups
      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/groupInformation'
          application/xml:
            schema:
              $ref: '#/components/schemas/groupInformation'
        required: false
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/groupInformation'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: updateGroups
      x-ds-method: update
      x-ds-service: Groups
      x-ds-in-sdk: true
      x-codegen-request-body-name: groupInformation
    post:
      tags:
      - Groups
      summary: Docusign Creates one or more groups for the account
      description: 'Creates one or more groups for the account.


        Groups can be used to help manage users by associating users with a group. You can associate a group with a Permission Profile, which sets the user permissions for users in that group without having to set the `userSettings` property for each user. You are not required to set Permission Profiles for a group, but it makes it easier to manage user permissions for a large number of users. You can also use groups with template sharing to limit user access to templates.'
      operationId: Groups_PostGroups
      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/groupInformation'
          application/xml:
            schema:
              $ref: '#/components/schemas/groupInformation'
        required: false
      responses:
        '201':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/groupInformation'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: createGroups
      x-ds-method: create
      x-ds-service: Groups
      x-ds-in-sdk: true
      x-codegen-request-body-name: groupInformation
    delete:
      tags:
      - Groups
      summary: Docusign Deletes an existing user group
      description: Deletes an existing user group.
      operationId: Groups_DeleteGroups
      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/groupInformation'
          application/xml:
            schema:
              $ref: '#/components/schemas/groupInformation'
        required: false
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/groupInformation'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: deleteGroups
      x-ds-method: delete
      x-ds-service: Groups
      x-ds-in-sdk: true
      x-codegen-request-body-name: groupInformation
    servers:
    - url: https://www.docusign.net/restapi
  /v2.1/accounts/{accountId}/groups:
    parameters: []
    get:
      tags:
      - Groups
      summary: Gets information about groups associated with the account
      description: 'Gets information about groups associated with the account.


        To get the users in a group:


        1. Use this endpoint to get the group ID.

        2. Use listGroupUsers

        to get the list of users.


        ### Related topics


        - How to set a permission profile'
      operationId: getV21AccountsByAccountIdGroups
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      - name: count
        in: query
        description: 'The maximum number of results to return.


          Use `start_position` to specify the number of results to skip.


          Valid values: `1` to `100`'
        required: false
        schema:
          type: string
      - name: group_type
        in: query
        required: false
        description: 'The type of group to return. Valid values:


          * `AdminGroup`

          * `CustomGroup`

          * `EveryoneGroup`'
        schema:
          type: string
      - name: include_usercount
        in: query
        required: false
        description: When **true,** every group returned in the response includes a `userCount` property that contains the total number of users in the group. The default is **true.**
        schema:
          type: string
      - name: search_text
        in: query
        required: false
        description: Filters the results of a GET request based on the text that you specify.
        schema:
          type: string
      - name: start_position
        in: query
        description: 'The zero-based index of the

          result from which to start returning results.


          Use with `count` to limit the number

          of results.


          The default value is `0`.

          '
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/groupInformation_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: listGroups
      x-ds-method: list
      x-ds-service: Groups
      x-ds-in-sdk: true
      x-operation-id-source: normalized
      x-operation-id-original: Groups_GetGroups
    put:
      tags:
      - Groups
      summary: Updates the group information for a group
      description: 'Updates the group name and modifies, or sets, the permission profile for the group.


        ### Related topics


        - How-To Set Up a Permission Profile'
      operationId: putV21AccountsByAccountIdGroups
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/groupInformation_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: updateGroups
      x-ds-method: update
      x-ds-service: Groups
      x-ds-in-sdk: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/groupInformation_2'
          application/xml:
            schema:
              $ref: '#/components/schemas/groupInformation_2'
      x-operation-id-source: normalized
      x-operation-id-original: Groups_PutGroups
    post:
      tags:
      - Groups
      summary: Creates one or more groups for the account
      description: 'Creates one or more groups for the account.


        Groups help you manage users.

        For example, you can use groups

        to limit user access to templates.


        You can associate a group with a

        permission profile,

        which sets the user permissions for users in that group

        without having to set the `userSettings` property for each user.

        You are not required to set permission profiles for a group,

        but it makes it easier to manage user permissions

        for a large number of users.


        This endpoint uses only

        the groupName and

        permissionProfileId

        properties in the request body.

        All other properties are ignored.


        Example request:

        ```json

        {

        "groups": [

        { "groupName": "montagues" },

        { "groupName": "capulets" },

        { "groupName": "nobles",

        "permissionProfileId": 1597 }

        ]

        }

        ```


        Use AccountPermissionProfiles: list

        to get a list of permission profiles and their IDs.

        It is an error if the `permissionProfileId` does not exist.


        ### Related topics


        - How-To Set Up a Permission Profile'
      operationId: postV21AccountsByAccountIdGroups
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/groupInformation_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: createGroups
      x-ds-method: create
      x-ds-service: Groups
      x-ds-in-sdk: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/groupInformation_2'
          application/xml:
            schema:
              $ref: '#/components/schemas/groupInformation_2'
      x-operation-id-source: normalized
      x-operation-id-original: Groups_PostGroups
    delete:
      tags:
      - Groups
      summary: Deletes an existing user group
      description: 'Deletes an existing user group.


        When you delete a group, you include only the `groupId` in the request body.


        Example:


        ```

        {

        "groups": [

        {

        "groupId": "12345"

        }

        }

        ```'
      operationId: deleteV21AccountsByAccountIdGroups
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/groupInformation_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: deleteGroups
      x-ds-method: delete
      x-ds-service: Groups
      x-ds-in-sdk: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/groupInformation_2'
          application/xml:
            schema:
              $ref: '#/components/schemas/groupInformation_2'
      x-operation-id-source: normalized
      x-operation-id-original: Groups_DeleteGroups
    servers:
    - url: https://www.docusign.net/restapi
components:
  schemas:
    groupInformation:
      type: object
      properties:
        endPosition:
          type: string
          description: 'The last position in the result set. '
        groups:
          type: array
          description: A collection group objects containing information about the groups returned.
          items:
            $ref: '#/components/schemas/group'
        nextUri:
          type: string
          description: 'The URI for the next chunk of records based on the search request. It is `null` if this is the last set of results for the search. '
        previousUri:
          type: string
          description: 'The URI for the prior chunk of records based on the search request. It is `null` if this is the first set of results for the search. '
        resultSetSize:
          type: string
          description: 'The number of results returned in this response. '
        startPosition:
          type: string
          description: Starting position of the current result set.
        totalSetSize:
          type: string
          description: The total number of items in the search's result set. It will always be greater than or equal to the value of the `resultSetSize` field.
      description: ''
      x-ds-definition-name: groupInformation
      x-ms-summary: ''
    group:
      type: object
      properties:
        errorDetails:
          $ref: '#/components/schemas/errorDetails'
        groupId:
          type: string
          description: The DocuSign group ID for the group.
        groupName:
          type: string
          description: The name of the group.
        groupType:
          type: string
          description: The group type.
        permissionProfileId:
          type: string
          description: The ID of the permission profile associated with the group.
        users:
          type: array
          description: List of users in the group.
          items:
            $ref: '#/components/schemas/userInfo'
      description: Information about groups.
      x-ds-definition-name: group
      x-ms-summary: Information about groups.
    userInfo:
      type: object
      properties:
        activationAccessCode:
          type: string
          description: ''
        email:
          type: string
          description: ''
        errorDetails:
          $ref: '#/components/schemas/errorDetails'
        loginStatus:
          type: string
          description: ''
        sendActivationEmail:
          type: string
          description: ''
        uri:
          type: string
          description: ''
        userId:
          type: string
          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.'
        userName:
          type: string
          description: ''
        userStatus:
          type: string
          description: 'Status of the user''s account. One of:


            * ActivationRequired

            * ActivationSent

            * Active

            * Closed

            * Disabled

            '
        userType:
          type: string
          description: ''
      description: ''
      x-ds-definition-name: userInfo
      x-ms-summary: ''
    errorDetails:
      type: object
      properties:
        errorCode:
          type: string
          description: An error code associated with the error.
        message:
          type: string
          description: A short error message.
      description: This object describes errors that occur. It is only valid for responses, and ignored in requests.
      x-ds-definition-name: errorDetails
      x-ms-summary: This object describes errors that occur. It is only valid for responses, and ignored in requests.
    groupInformation_2:
      type: object
      properties:
        endPosition:
          description: 'The last index position in the result set. '
          type: string
        groups:
          description: A collection group objects containing information about the groups.
          type: array
          items:
            $ref: '#/components/schemas/group_2'
        nextUri:
          description: 'The URI for the next chunk of records based on the search request. It is `null` if this is the last set of results for the search. '
          type: string
        previousUri:
          description: 'The URI for the prior chunk of records based on the search request. It is `null` if this is the first set of results for the search. '
          type: string
        resultSetSize:
          description: The number of results in this response. Because you can filter which entries are included in the response, this value is always less than or equal to the `totalSetSize`.
          type: string
        startPosition:
          description: The starting index position of the current result set.
          type: string
        totalSetSize:
          description: The total number of items in the result set. This value is always greater than or equal to the value of `resultSetSize`.
          type: string
      x-ds-definition-name: groupInformation
      description: 'This object is used for both requests and responses. Some properties (such as `endPosition`) only apply to the response of [Groups: list](/docs/esign-rest-api/reference/usergroups/groups/list/).

        '
      x-ms-summary: 'This object is used for both requests and responses. Some properties (such as `endPosition`) only apply to the response of [Groups: list](/docs/esign-rest-api/reference/usergroups/groups/list/).

        '
    group_2:
      type: object
      properties:
        accessType:
          description: ''
          type: string
        dsGroupId:
          description: Reserved for Docusign.
          type: string
        errorDetails:
          $ref: '#/components/schemas/errorDetails_2'
          description: This object describes errors that occur. It is only valid for responses and ignored in requests.
        groupId:
          description: 'The Docusign group ID for the group.

            This is a read-only property.'
          type: string
        groupName:
          description: The name of the group.
          type: string
        groupType:
          description: The group type.
          type: string
        isManagedByScim:
          description: ''
          type: boolean
        lastModifiedOn:
          description: ''
          type: string
        permissionProfileId:
          description: 'The ID of the permission profile associated with the group.


            Use [AccountPermissionProfiles: list](/docs/esign-rest-api/reference/accounts/accountpermissionprofiles/list/)

            to get a list of permission profiles and their IDs.'
          type: string
        userGroupType:
          description: ''
          type: string
        users:
          description: 'A list of the users in the group. This property is not used by [Groups: list](/docs/esign-rest-api/reference/usergroups/groups/list/). To get a list of users see [GroupUsers: list](/docs/esign-rest-api/reference/usergroups/groupusers/list/)

            '
          type: array
          items:
            $ref: '#/components/schemas/userInfo_2'
        usersCount:
          description: The total number of users in the group.
          type: string
      description: This object contains information about a group.
      x-ds-definition-name: group
      x-ms-summary: This object contains information about a group.
    userInfo_2:
      type: object
      properties:
        accountId:
          description: The account ID associated with the envelope.
          type: string
        accountName:
          description: The name on the account.
          type: string
        activationAccessCode:
          description: Access code provided to the user to activate the account.
          type: string
        email:
          description: The user's email address.
          type: string
        errorDetails:
          $ref: '#/components/schemas/errorDetails_2'
          description: This object describes errors that occur. It is only valid for responses and ignored in requests.
        ipAddress:
          description: ''
          type: string
        loginStatus:
          description: When **true,** indicates that the user is logged in. This is a read-only property.
          type: string
        membershipId:
          description: The user's membership ID.
          type: string
        sendActivationEmail:
          description: This field is no longer supported for most accounts. To create an eSignature user without sending an activation email, use the Admin API by following [these steps](/docs/admin-api/how-to/create-active-user/).
          type: string
        uri:
          description: A URI containing the user ID.
          type: string
        userId:
          description: The ID of the user to access.
          type: string
        userName:
          description: The name of the user.
          type: string
        userStatus:
          description: 'Status of the user''s account. One of:


            - `ActivationRequired`

            - `ActivationSent`

            - `Active`

            - `Closed`

            - `Disabled`

            '
          type: string
        userType:
          description: The type of user, for example `CompanyUser`.
          type: string
      x-ds-definition-name: userInfo
      description: ''
      x-ms-summary: ''
    errorDetails_2:
      description: This object describes errors that occur. It is only valid for responses and ignored in requests.
      type: object
      properties:
        errorCode:
          description: The code associated with the error condition.
          type: string
        message:
          description: A brief message describing the error condition.
          type: string
      x-ds-definition-name: errorDetails
      x-ms-summary: This object describes errors that occur. It is only valid for responses and ignored in requests.
x-refined-from:
- docusign-openapi-original.yml
- docusign-openapi.json
x-ds-categories:
- name: UserManagement
  summary: Methods to manage users in an account.
  description: Methods to manage users in an account.
- name: BulkOperations
  summary: Methods to import and export users and accounts.
  description: Methods to import and export users and accounts.
- name: IdentityProviders
  summary: Methods to get a list of identity providers.
  description: Methods to get a list of identity providers.
- name: ReservedDomains
  summary: Methods to get a list of reserved domains.
  description: Methods to get a list of reserved domains.
- name: Organization
  summary: Methods for working with organizations.
  description: Methods for working with organizations.
x-original-swagger-version: '2.0'