> 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

# Get envelope lock information

GET https://demo.docusign.net/restapi/v2.1/accounts/{accountId}/envelopes/{envelopeId}/lock

Retrieves general information about an envelope lock.

The user requesting the information must be the same user
who locked the envelope.

You can use this method to recover the lock information,
including the `lockToken`,
for a locked envelope.
The `X-DocuSign-Edit` header is included in the response. If the envelope referenced in the request is not locked, this method returns a 404 error including the error code EDIT_LOCK_ENVELOPE_NOT_LOCKED.

See [EnvelopeLocks: create](/docs/esign-rest-api/reference/envelopes/envelopelocks/create/)
for a description of the `X-DocuSign-Edit` header.

### Related topics

- [Common API Tasks: Locking and unlocking envelopes](https://www.docusign.com/blog/dsdev-common-api-tasks-locking-and-unlocking-envelopes)

Reference: https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopelocks/get

## 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.
- `envelopeId` (string, required) — The envelope's GUID. Example: `93be49ab-xxxx-xxxx-xxxx-f752070d71ec`

## Response

### 200

Successful response.

- `errorDetails` (errorDetails, optional) — This object describes errors that occur. It is only valid for responses, and ignored in requests.
- `lockDurationInSeconds` (string, optional) — The number of seconds to lock the envelope for editing. This value must be greater than `0` seconds.
- `lockedByApp` (string, optional) — The human-readable name of the application that is locking the envelope or template. This value displays to the user in error messages when lock conflicts occur.
- `lockedByUser` (userInfo, optional)
- `lockedUntilDateTime` (string, optional) — The date and time that the lock expires.
- `lockToken` (string, optional) — A unique identifier provided to the owner of the lock. You must use this token with subsequent calls to prove ownership of the lock.
- `lockType` (string, optional) — The type of lock. Currently `edit` is the only supported type.
- `useScratchPad` (string, optional) — When **true,** a scratchpad is used to edit information.

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

### errorDetails

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

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

### userInfo

- `accountId` (string, optional) — The account ID associated with the envelope.
- `accountName` (string, optional) — The name on the account.
- `activationAccessCode` (string, optional) — Access code provided to the user to activate the account.
- `email` (string, optional) — The user's email address.
- `errorDetails` (errorDetails, optional) — This object describes errors that occur. It is only valid for responses, and ignored in requests.
- `ipAddress` (string, optional)
- `loginStatus` (string, optional) — When **true,** indicates that the user is logged in. This is a read-only property.
- `membershipId` (string, optional) — The user's membership ID.
- `sendActivationEmail` (string, optional) — 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/).
- `uri` (string, optional) — A URI containing the user ID.
- `userId` (string, optional) — The ID of the user to access.
- `userName` (string, optional) — The name of the user.
- `userStatus` (string, optional) — Status of the user's account. One of: - `ActivationRequired` - `ActivationSent` - `Active` - `Closed` - `Disabled`
- `userType` (string, optional) — The type of user, for example `CompanyUser`.

## Examples

**Response**

```json
{
  "errorDetails": {
    "errorCode": "sample string 1",
    "message": "sample string 2"
  },
  "lockDurationInSeconds": "sample string 1",
  "lockedByApp": "sample string 2",
  "lockedByUser": {
    "accountId": "sample string 1",
    "accountName": "sample string 2",
    "activationAccessCode": "sample string 3",
    "email": "sample string 4",
    "ipAddress": "sample string 5",
    "loginStatus": "sample string 6",
    "membershipId": "sample string 7",
    "sendActivationEmail": "sample string 8",
    "uri": "sample string 9",
    "userId": "sample string 10",
    "userName": "sample string 11",
    "userStatus": "sample string 12",
    "userType": "sample string 13"
  },
  "lockedUntilDateTime": "sample string 3",
  "lockToken": "sample string 4",
  "lockType": "sample string 5",
  "useScratchPad": "sample string 6"
}
```