> 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

# Update user signature

PUT https://demo.docusign.net/restapi/v2/accounts/{accountId}/users/{userId}/signatures/{signatureId}
Content-Type: application/json

Creates, or updates, the signature font and initials for the specified user. When creating a signature, you use this resource to create the signature name and then add the signature and initials images into the signature.

###### Note: This will also create a default signature for the user when one does not exist.

The userId property specified in the endpoint must match the authenticated user's user ID and the user must be a member of the account.

The `signatureId` parameter accepts a signature ID. DocuSign recommends you use signature ID (`signatureId`), since some names contain characters that do not properly encode into a URL. If you use the user name, it is likely that the name includes spaces. In that case, URL encode the name before using it in the endpoint. 

For example encode "Bob Smith" as "Bob%20Smith".

Reference: https://developers.docusign.com/docs/esign-rest-api/v2/reference/users/usersignatures/update

## Authentication

- `Authorization` header (required) — OAuth 2.0 access token (JWT or auth-code grant). Sent as Authorization: Bearer \<token>.

## 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.
- `signatureId` (string, required) — The ID of the signature being accessed.
- `userId` (string, required) — 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.

### Query parameters

- `close_existing_signature` (string, optional) — When set to **true**, closes the current signature.

### Body (application/json)

This endpoint expects an userSignatureDefinition.

- `signatureFont` (string, optional)
- `signatureId` (string, optional) — Specifies the signature ID associated with the signature name. You can use the signature ID in the URI in place of the signature name, and the value stored in the `signatureName` property in the body is used. This allows the use of special characters (such as "&", "\<", ">") in a the signature name. Note that with each update to signatures, the returned signature ID might change, so the caller will need to trigger off the signature name to get the new signature ID.
- `signatureInitials` (string, optional)
- `signatureName` (string, optional) — Specifies the user signature name.

## Response

### 200

Successful response.

- `adoptedDateTime` (string, optional) — The date and time the user adopted their signature.
- `createdDateTime` (string, optional) — Indicates the date and time the item was created.
- `dateStampProperties` (dateStampProperties, optional)
- `errorDetails` (errorDetails, optional) — This object describes errors that occur. It is only valid for responses, and ignored in requests.
- `externalID` (string, optional)
- `imageType` (string, optional) — One of **signature_image** or **initials_image**.
- `initials150ImageId` (string, optional)
- `initialsImageUri` (string, optional) — Contains the URI for an endpoint that you can use to retrieve the initials image.
- `isDefault` (string, optional)
- `phoneticName` (string, optional)
- `signature150ImageId` (string, optional)
- `signatureFont` (string, optional)
- `signatureId` (string, optional) — The ID of the signature being accessed.
- `signatureImageUri` (string, optional) — Contains the URI for an endpoint that you can use to retrieve the signature image.
- `signatureInitials` (string, optional)
- `signatureName` (string, optional) — Specifies the user signature name.
- `signatureType` (string, optional)
- `stampFormat` (string, optional)
- `stampImageUri` (string, optional)
- `stampSizeMM` (string, optional)
- `stampType` (string, optional)

## Errors

### 400 Bad Request Error

Error encountered.

- `errorCode` (string, optional) — An error code associated with the error.
- `message` (string, optional) — A short error message.

## Types

### dateStampProperties

- `dateAreaHeight` (string, optional)
- `dateAreaWidth` (string, optional)
- `dateAreaX` (string, optional)
- `dateAreaY` (string, optional)

### errorDetails

This object describes errors that occur. It is only valid for responses, and ignored in requests.

- `errorCode` (string, optional) — An error code associated with the error.
- `message` (string, optional) — A short error message.

## Examples

**Request**

```json
{}
```

**Response**

```json
{
  "adoptedDateTime": "string",
  "createdDateTime": "string",
  "dateStampProperties": {
    "dateAreaHeight": "string",
    "dateAreaWidth": "string",
    "dateAreaX": "string",
    "dateAreaY": "string"
  },
  "errorDetails": {
    "errorCode": "string",
    "message": "string"
  },
  "externalID": "string",
  "imageType": "string",
  "initials150ImageId": "string",
  "initialsImageUri": "string",
  "isDefault": "string",
  "phoneticName": "string",
  "signature150ImageId": "string",
  "signatureFont": "string",
  "signatureId": "string",
  "signatureImageUri": "string",
  "signatureInitials": "string",
  "signatureName": "string",
  "signatureType": "string",
  "stampFormat": "string",
  "stampImageUri": "string",
  "stampSizeMM": "string",
  "stampType": "string"
}
```