> 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

# Assign permission profiles for user by user ID

POST https://api-d.docusign.net/Management/v2.1/organizations/{organizationId}/accounts/{accountId}/products/users/{userId}/permission_profiles
Content-Type: application/json

Sets permission profiles for one or more products for a given user. The user is specified by the `userId` path parameter.

[Required authentication scopes](/docs/admin-api/admin101/auth/): `user_write`.

Reference: https://developers.docusign.com/docs/admin-api/reference/usermanagement/multiproductusermanagement/adduserproductpermissionprofiles

## Authentication

- `Authorization` header (bearer token, required) — OAuth2 Access code Grant

## Servers

- `https://api-d.docusign.net/Management` (Demo, default)
- `https://api.docusign.net/Management` (Production)

## Request

### Path parameters

- `organizationId` (string, required) — The organization ID GUID
- `accountId` (string, required) — The account ID GUID
- `userId` (string, required) — The user ID GUID

### Body (application/json)

This endpoint expects a ProductPermissionProfilesRequest.

- `product_permission_profiles` (list of ProductPermissionProfileRequest, required) — A list of one or more products and their respective permissions.

## Response

### 200

OK

- `user_id` (string, optional) — The ID of the user.
- `account_id` (string, optional) — The ID of the account.
- `product_permission_profiles` (list of ProductPermissionProfileResponse, optional) — A list of one or more products and their respective permissions.

## Types

### ProductPermissionProfileRequest

Identifies a product and an associated permission profile.

- `product_id` (string, required) — The ID of the product. This property is required.
- `permission_profile_id` (string, required) — The ID of the permission profile for the given product. This property is required.

### ProductPermissionProfileResponse

- `product_id` (string, optional) — The ID of the product.
- `product_name` (string, optional) — The human-readable name of the product.
- `permission_profiles` (list of PermissionProfileResponse2_1, optional)
- `error_message` (string, optional)

### PermissionProfileResponse2_1

- `permission_profile_id` (string, optional) — The ID of the permission profile.
- `permission_profile_name` (string, optional) — The human-readable name of the permission profile.

## Examples

**Request**

```json
{
  "product_permission_profiles": [
    {
      "product_id": "00000000-0000-0000-0000-000000000000",
      "permission_profile_id": "string"
    }
  ]
}
```

**Response**

```json
{
  "user_id": "00000000-0000-0000-0000-000000000000",
  "account_id": "00000000-0000-0000-0000-000000000000",
  "product_permission_profiles": [
    {
      "product_id": "00000000-0000-0000-0000-000000000000",
      "product_name": "string",
      "permission_profiles": [
        {
          "permission_profile_id": "string",
          "permission_profile_name": "string"
        }
      ],
      "error_message": "string"
    }
  ]
}
```