> 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

# Add contacts to contacts list

POST https://demo.docusign.net/restapi/v2.1/accounts/{accountId}/contacts
Content-Type: application/json

This method adds multiple contacts into a contacts list.

Reference: https://developers.docusign.com/docs/esign-rest-api/reference/users/contacts/create

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

### Body (application/json)

This endpoint expects a contactModRequest.

- `contactList` (list of contact, optional) — A list of contacts.

## Response

### 201

Successful response.

- `contacts` (list of contact, optional) — A list of contacts.

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

### contact

- `canManage` (string, optional) — Boolean value is set to true when either of the following conditions is met: - The user making the API call is the owner of the contact. - The user making the API call is an account administrator, and the contact is a shared contact.
- `cloudProvider` (string, optional) — The cloud service that provided the contact. Valid values are: - `rooms` - `docusignCore` (default)
- `cloudProviderContainerId` (string, optional) — The ID of the container at the cloud provider. For example, this might be the room ID for a Docusign Transaction Room.
- `contactId` (string, optional) — The ID of a contact person in the account's address book.
- `contactPhoneNumbers` (list of contactPhoneNumber, optional) — A list of the contact's phone numbers. **Note:** The phone numbers associated with shared contacts do not display to users other than the user who added the contact. Additionally, in the following scenarios, the phone number of a shared contact does not populate automatically for anyone other than the user who added the contact: - Sending an envelope by using SMS - Using phone authentication You must ask the user who added the contact for the phone number and then manually enter it into the authentication box.
- `contactUri` (string, optional) — The URI for retrieving information about the contact.
- `emails` (list of string, optional) — An array of email addresses.
- `errorDetails` (errorDetails, optional) — This object describes errors that occur. It is only valid for responses, and ignored in requests.
- `isOwner` (boolean, optional)
- `name` (string, optional) — The name of the contact.
- `notaryContactDetails` (notaryContactDetails, optional)
- `organization` (string, optional)
- `roomContactType` (string, optional)
- `shared` (string, optional) — When **true,** this contact is shared.
- `signingGroup` (string, optional) — The ID of the signing group.
- `signingGroupName` (string, optional) — Optional. The name of the signing group. Maximum Length: 100 characters.

### contactPhoneNumber

Details about the phone numbers associated with a specific contact.

- `phoneNumber` (string, optional) — The contact's phone number. Example: `+12223334444`
- `phoneType` (string, optional) — The type of phone number. Valid values are: - `home` - `mobile` - `work` - `other` - `fax`

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

### notaryContactDetails

- `hasDocusignCertificate` (string, optional)
- `jurisdictions` (list of jurisdictionSummary, optional)

### jurisdictionSummary

- `authorizedForIPen` (string, optional)
- `authorizedForRon` (string, optional)
- `jurisdictionId` (string, optional) — The ID of the jurisdiction. The following jurisdictions are supported: - `5 - California` - `6 - Colorado` - `9 - Florida` - `10 - Georgia` - `12 - Idaho` - `13 - Illinois` - `14 - Indiana` - `15 - Iowa` - `17 - Kentucky` - `23 - Minnesota` - `25 - Missouri` - `30 - New Jersey` - `32 - New York` - `33 - North Carolina` - `35 - Ohio` - `37 - Oregon` - `38 - Pennsylvania` - `40 - South Carolina` - `43 - Texas` - `44 - Utah` - `47 - Washington` - `48 - West Virginia` - `49 - Wisconsin` - `62 - Florida Commissioner of Deeds`
- `jurisdictionName` (string, optional)

## Examples

**Request**

```json
{
  "contactList": [
    {
      "canManage": "sample string 1",
      "cloudProvider": "sample string 2",
      "cloudProviderContainerId": "sample string 3",
      "contactId": "sample string 4",
      "contactPhoneNumbers": [
        {
          "phoneNumber": "sample string 1",
          "phoneType": "sample string 2"
        }
      ],
      "contactUri": "sample string 5",
      "emails": [
        "sample string 1"
      ],
      "errorDetails": {
        "errorCode": "sample string 1",
        "message": "sample string 2"
      },
      "isOwner": true,
      "name": "sample string 6",
      "notaryContactDetails": {
        "hasDocusignCertificate": "sample string 1",
        "jurisdictions": [
          {
            "authorizedForIPen": "sample string 1",
            "authorizedForRon": "sample string 2",
            "jurisdictionId": "sample string 3",
            "jurisdictionName": "sample string 4"
          }
        ]
      },
      "organization": "sample string 7",
      "roomContactType": "sample string 8",
      "shared": "sample string 9",
      "signingGroup": "sample string 10",
      "signingGroupName": "sample string 11"
    }
  ]
}
```

**Response**

```json
{
  "contacts": [
    {
      "canManage": "sample string 1",
      "cloudProvider": "sample string 2",
      "cloudProviderContainerId": "sample string 3",
      "contactId": "sample string 4",
      "contactPhoneNumbers": [
        {
          "phoneNumber": "sample string 1",
          "phoneType": "sample string 2"
        }
      ],
      "contactUri": "sample string 5",
      "emails": [
        "sample string 1"
      ],
      "errorDetails": {
        "errorCode": "sample string 1",
        "message": "sample string 2"
      },
      "isOwner": true,
      "name": "sample string 6",
      "notaryContactDetails": {
        "hasDocusignCertificate": "sample string 1",
        "jurisdictions": [
          {
            "authorizedForIPen": "sample string 1",
            "authorizedForRon": "sample string 2",
            "jurisdictionId": "sample string 3",
            "jurisdictionName": "sample string 4"
          }
        ]
      },
      "organization": "sample string 7",
      "roomContactType": "sample string 8",
      "shared": "sample string 9",
      "signingGroup": "sample string 10",
      "signingGroupName": "sample string 11"
    }
  ]
}
```