> You are reading the Docusign Developer Documentation. For clean Markdown of any page, append .md to the page URL.
>
> Documentation indexes by section:
> - APIs and SDKs: https://docusign.docs.buildwithfern.com/docs/llms.txt
> - Platform 101: https://docusign.docs.buildwithfern.com/platform/llms.txt
> - Extension Apps: https://docusign.docs.buildwithfern.com/extension-apps/llms.txt
> - Docusign CLI: https://docusign.docs.buildwithfern.com/docusign-cli/llms.txt
>
> Authentication (OAuth, JWT Grant, M2M): https://docusign.docs.buildwithfern.com/platform/auth
> Webhooks and Connect: https://docusign.docs.buildwithfern.com/platform/webhooks
>
> OpenAPI specifications: https://docusign.docs.buildwithfern.com/openapi.json
> MCP server: https://docusign.docs.buildwithfern.com/_mcp/server

# List principal user authorizations

GET https://demo.docusign.net/restapi/v2.1/accounts/{accountId}/users/{userId}/authorizations

Returns the user authorizations for which the user specified by `userId` is the principal user.

To call this endpoint, you must be an account administrator or you must be the specified principal user.

Reference: https://developers.docusign.com/docs/esign-rest-api/reference/accounts/authorizations/getprincipaluserauthorizations

## Authentication

- `Authorization` header (required) (prefixed with ` Bearer  `) — OAuth 2.0 access token (JWT or auth-code grant). Sent as `Authorization: Bearer <token>` on every request except `GET /v2.1` and `GET /service_information`, which are public discovery endpoints.

## Servers

- `https://demo.docusign.net/restapi` (Demo, default)
- `https://www.docusign.net/restapi` (Production)

## Request

### Path parameters

- `accountId` (string, required) — The external account number (int) or account ID Guid.
- `userId` (string, required) — The ID of the principal user.

### Query parameters

- `active_only` (string, optional) — When **true,** return only active authorizations. The default value is **true.**
- `count` (string, optional) — The maximum number of results to return.
- `email_substring` (string, optional) — Filters returned user records by full email address or a substring of email address.
- `include_closed_users` (string, optional) — When **true,** returns active and scheduled authorizations of closed users. The default value is **true.** This value is only applied when `active_only` is **false.**
- `permissions` (string, optional) — Filters results by authorization permission. Valid values: - `Send` - `Manage` - `Sign`
- `start_position` (string, optional) — The position within the total result set from which to start returning values. The value **thumbnail** may be used to return the page image.
- `task_source` (string, optional)
- `task_type` (string, optional)
- `user_name_substring` (string, optional) — Filters results based on a full or partial user name. **Note:** When you enter a partial user name, you do not use a wildcard character.

## Response

### 200

Successful response.

- `authorizations` (list of userAuthorization, optional)
- `endPosition` (string, optional) — The last index position in the result set.
- `nextUri` (string, optional) — 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` (string, optional) — 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` (string, optional) — 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`.
- `startPosition` (string, optional) — The starting index position of the current result set.
- `totalSetSize` (string, optional) — The total number of items in the result set. This value is always greater than or equal to the value of `resultSetSize`.

## Errors

### 400 Bad Request Error

Error encountered.

- `errorCode` (string, optional) — The code associated with the error condition.
- `message` (string, optional) — A brief message describing the error condition.

## Types

### userAuthorization

A complex object describing a user authorization.

- `agentUser` (authorizationUser, optional)
- `authorizationId` (string, optional) — The ID of the user authorization.
- `created` (string, optional) — The UTC DateTime when the workspace user authorization was created.
- `createdBy` (string, optional) — The name and email of the user who created the authorization, in the following format: `[Francis Beagle email@example.com]`
- `endDate` (string, optional) — The UTC DateTime at which the authorization will expire.
- `modified` (string, optional) — The UTC DateTime when the workspace user authorization was last updated.
- `modifiedBy` (string, optional) — The name and email of the user who created the authorization, in the following format: `[Francis Beagle email@example.com]`
- `permission` (string, optional) — The [permission level](/docs/esign-rest-api/esign101/concepts/envelopes/share-access-to-mailbox-or-envelopes) to grant the agent. Valid values: - `Send` - `Manage` - `Sign` - `Edit` This property is required.
- `principalUser` (authorizationUser, optional)
- `startDate` (string, optional) — The UTC DateTime at which the authorization will start.
- `taskSource` (string, optional)
- `taskType` (string, optional)

### authorizationUser

- `accountId` (string, optional) — The account ID.
- `email` (string, optional) — The email address of the authorization user.
- `name` (string, optional) — The name of the authorization user.
- `userId` (string, optional) — The ID of the authorization user.

## Examples

**Response**

```json
{
  "authorizations": [
    {
      "agentUser": {
        "accountId": "sample string 1",
        "email": "sample string 2",
        "name": "sample string 3",
        "userId": "sample string 4"
      },
      "authorizationId": "sample string 1",
      "created": "sample string 2",
      "createdBy": "sample string 3",
      "endDate": "sample string 4",
      "modified": "sample string 5",
      "modifiedBy": "sample string 6",
      "permission": "sample string 7",
      "startDate": "sample string 8",
      "taskSource": "sample string 9",
      "taskType": "sample string 10"
    }
  ],
  "endPosition": "sample string 1",
  "nextUri": "sample string 2",
  "previousUri": "sample string 3",
  "resultSetSize": "sample string 4",
  "startPosition": "sample string 5",
  "totalSetSize": "sample string 6"
}
```