> 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

# Revoke user's access to products

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

Revokes a specified user's access to one or more products.

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

### Related topics

- [How to delete user data from an account as an account admin](/docs/admin-api/how-to/account-admin-delete-user-data/)

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

## 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

### Body (application/json)

This endpoint expects an UserProductProfileDeleteRequest.

- `product_ids` (list of string, required) — A list of IDs corresponding to the products for which the user's access will be revoked. For example: `["230546a7-xxxx-xxxx-xxxx-af205d5494ad", "984800b7-xxxx-xxxx-xxxx-kt374a5922lk"]`
- `user_email` (string, optional) — The user's email address.
- `user_id` (string, optional) — The user's unique ID.

## Response

### 200

OK

- `is_success` (boolean, required) — When **true,** indicates that the user's access to the specified products was successfully revoked.
- `user_product_results` (map from string to string, required) — The results of the request to revoke product access. Each key in the object is the ID of a product specified in the request. Each corresponding value indicates whether the user's access for that product was successfully revoked. If successful, the value is `deleted`. Otherwise, the value describes the error that occurred. For example: ```json { "230546a7-xxxx-xxxx-xxxx-af205d5494ad"": "deleted", "984800b7-xxxx-xxxx-xxxx-kt374a5922lk": "Invalid product id" } ```
- `user_email` (string, optional) — The user's email address.
- `user_id` (string, optional) — The user's ID.

## Examples

**Request**

```json
{
  "product_ids": [
    "00000000-0000-0000-0000-000000000000"
  ]
}
```

**Response**

```json
{
  "is_success": true,
  "user_product_results": {},
  "user_email": "string",
  "user_id": "00000000-0000-0000-0000-000000000000"
}
```