DocuSign

Electronic signature and agreement platform

developers.docusign.com ↗
Version
v2.1
OpenAPI
3.0.0
Endpoints
402
Schemas
598
91
Quality
Updated
3 days ago
Documents documents signatures legal
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://www.docusign.net/restapi

Endpoints

Clear filters

Accountbrands 1 endpoints

POST /v2.1/accounts/{accountId}/brands

This method creates one or more brand profile files for an account.

To specify logos for the brand,
use the
AccountBrands: updateLogo
method
after you create the brand.

Either or both of the following settings must be enabled for the account to use this method:

  • canSelfBrandSign
  • canSelfBrandSend

Related topics

operationId: Brands_PostBrands

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/brand

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/brands

Accountcustomfields 1 endpoints

POST /v2.1/accounts/{accountId}/custom_fields

This method creates a custom field and makes it available for all new envelopes associated with an account.

operationId: AccountCustomFields_PostAccountCustomFields

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

apply_to_templates query optional string

(Optional) When true, the new custom field is applied to all of the templates on the account.

Request Body

#/components/requestBodies/customField

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/custom_fields

Accountpermissionprofiles 1 endpoints

POST /v2.1/accounts/{accountId}/permission_profiles

This method creates a new permission profile for an account.

Related topics

operationId: PermissionProfiles_PostPermissionProfiles

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

include query optional string

A comma-separated list of additional properties to return in the response. The only valid value for this request is metadata, which returns metadata indicating whether the properties associated with the account permission profile are editable.

Request Body

#/components/requestBodies/permissionProfile

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/permission_profiles

Accountsignatures 1 endpoints

POST /v2.1/accounts/{accountId}/signatures

Adds or updates one or more account stamps.

operationId: AccountSignatures_PostAccountSignatures

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

decode_only query optional string

Request Body

#/components/requestBodies/accountSignaturesInformation

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/signatures

Accounts 1 endpoints

POST /v2.1/accounts

Creates new DocuSign accounts.
You can use this method to create
a single account
or up to 100 accounts at a time.

Note: This method is restricted to partner integrations.
You must work with DocuSign Professional Services
or DocuSign Business Development,
who will provide you with the Distributor Code
and Distributor Password
that you need to include in the request body.

When creating a single account,
the body of the request is a
newAccountRequest
object.

Example:

{
  "newAccountRequest": [
    {
      "accountName":"Test Account",
      "distributorCode":"MY_DIST_CODE",
      "distributorPassword":"MY_DIST_PWD",
      "initialUser":{
        "email":"user@emaildomain.com",
        "firstName":"John",
        "middleName": "Harry",
        "lastName":"Doe",
        "suffixName": "",
        "userName": "John Doe",
        "jobTitle": "Engineer",
        "company": "Test Company"
      },
      "addressInformation":{
        "address1": "1234 Main Street",
        "address2": "Suite 100",
        "city": "Seattle",
        "state": "WA",
        "postalCode": "98101",
        "country": "US",
        "phone": "1234567890",
        "fax": "1234567891"
      },
      "planInformation":{
        "planId":"37085696-xxxx-xxxx-xxxx-7ea067752959"
      },
      "referralInformation":{
        "includedSeats": "1",
        "referralCode": "code",
        "referrerName": "name"
      }
    }
  ]
}

If the request succeeds,
it returns a
201 (Created) HTTP response code.
The response returns the new account ID, password, and the default user
information for each newly created account.

When creating multiple accounts,
the body of the request is a
newAccountRequests
object,
which contains one or more
newAccountDefinition
objects.
You can create up to 100 new accounts
at a time this way.

The body for a multi-account
creation request
looks like this in JSON:

{
  "newAccountRequests": [
    {
      "accountName": "accountone",
      . . .
    },
    {
      "accountName": "accounttwo",
      . . .
    }
  ]
}

A multi-account request
looks like this in XML:

<newAccountsDefinition xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.docusign.com/restapi">
  <newAccountRequests>
    <newAccountDefinition>
      . . .
    </newAccountDefinition>
    <newAccountDefinition>
      . . .
    </newAccountDefinition>
  </newAccountRequests>
</newAccountsDefinition>

A multi-account creation request
may succeed (report a 201 code)
even if some accounts could not be created.
In this case, the errorDetails property
in the response contains specific information
about the failure.

operationId: Accounts_PostAccounts

Request Body

application/json
schema newAccountDefinition
Property Type Required
accountName string optional
initialUser object optional
uri string optional
email string optional
title string optional
userId string optional
company string optional
isAdmin string optional
jobTitle string optional
lastName string optional
password string optional
userName string optional
userType string optional
firstName string optional
groupList array optional
users array optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
groupId string optional
dsGroupId string optional
groupName string optional
groupType string optional
usersCount string optional
errorDetails object optional
message string optional
errorCode string optional
permissionProfileId string optional
lastLogin string optional
subscribe string optional
middleName string optional
suffixName string optional
userStatus string optional
countryCode string optional
homeAddress object optional
fax string optional
city string optional
phone string optional
country string optional
address1 string optional
address2 string optional
zipPlus4 string optional
postalCode string optional
stateOrProvince string optional
…24 more object optional
taxExemptId string optional
enablePreAuth string optional
paymentMethod string optional
processPayment string optional
accountSettings object optional
usesAPI string optional
allowACE string optional
bulkSend string optional
exitPrompt string optional
accountName string optional
allowMarkup string optional
autoNavRule string optional
enableDSPro string optional
expressSend string optional
hidePricing string optional
allowSignNow string optional
enableSearch string optional
readOnlyMode string optional
allowBulkSend string optional
allowInPerson string optional
allowWebForms string optional
enableAutoNav string optional
faxOutEnabled string optional
idCheckExpire string optional
showTutorials string optional
…708 more object optional
distributorCode string optional
planInformation object optional
addOns array optional
id string optional
name string optional
active string optional
addOnId string optional
planId string optional
currencyCode string optional
planFeatureSets array optional
name string optional
seatFee string optional
fixedFee string optional
isActive string optional
isEnabled string optional
envelopeFee string optional
featureSetId string optional
is21CFRPart11 string optional
currencyFeatureSetPrices array optional
seatFee string optional
fixedFee string optional
envelopeFee string optional
currencyCode string optional
currencySymbol string optional
recipientDomains array optional
active string optional
domainCode string optional
domainName string optional
recipientDomainId string optional
freeTrialDaysOverride string optional
paymentProcessor string optional
addressInformation object optional
fax string optional
city string optional
email string optional
phone string optional
state string optional
country string optional
address1 string optional
address2 string optional
lastName string optional
firstName string optional
postalCode string optional
supportedCountries array optional
name string optional
isoCode string optional
provinces array optional
name string optional
isoCode string optional
provinceValidated string optional
distributorPassword string optional
envelopePartitionId string optional
referralInformation object optional
idType string optional
industry string optional
promoCode string optional
shopperId string optional
publisherId string optional
referralCode string optional
referrerName string optional
enableSupport string optional
externalOrgId string optional
groupMemberId string optional
includedSeats string optional
planStartMonth string optional
advertisementId string optional
saleDiscountAmount string optional
saleDiscountPercent string optional
saleDiscountPeriods string optional
saleDiscountFixedAmount string optional
saleDiscountSeatPriceOverride string optional
creditCardInformation object optional
address object optional
fax string optional
city string optional
phone string optional
country string optional
address1 string optional
address2 string optional
zipPlus4 string optional
postalCode string optional
stateOrProvince string optional
cardType string optional
cvNumber string optional
cardNumber string optional
nameOnCard string optional
tokenizedCard string optional
cardLastDigits string optional
expirationYear string optional
expirationMonth string optional
socialAccountInformation object optional
email string optional
provider string optional
socialId string optional
userName string optional
errorDetails object optional
message string optional
errorCode string optional
paymentProcessorInformation object optional
email string optional
address object optional
fax string optional
city string optional
phone string optional
country string optional
address1 string optional
address2 string optional
zipPlus4 string optional
postalCode string optional
stateOrProvince string optional
billingAgreementId string optional
directDebitProcessorInformation object optional
iBAN string optional
email string optional
country string optional
bankCode string optional
bankName string optional
lastName string optional
firstName string optional
bankBranchCode string optional
bankCheckDigit string optional
bankTransferType string optional
bankTransferAccountName string optional
bankTransferAccountNumber string optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts

Authorizations 2 endpoints

POST /v2.1/accounts/{accountId}/users/{userId}/authorization

Creates an authorization allowing one user to send and/or manage envelopes on behalf of another user.

The agent user acts on behalf of the principal user. The principal user is specified by the userId path parameter. The agent user is specified in the request body. Each principal user can only share signing permission with one agent user.

Specify in the request the level of access to share with the agent user. If you share signing access, the agent user will receive an email notification.

To call this endpoint:

  • You must be an account administrator or you must be the principal user.
  • The agent user and principal user must belong to the same account.
  • At least one of the following account settings must be enabled: AllowDelegatedSigning, AllowManagingEnvelopesOnBehalfOfOthers, AllowEditingEnvelopesOnBehalfOfOthers, AllowSendingEnvelopesOnBehalfOfOthers. These settings correspond to the level of access you can set for the authorization.
operationId: UserAuthorization_CreateUserAuthorization

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

userId path required string

The ID of the principal user.

Request Body

application/json
schema userAuthorizationCreateRequest
Property Type Required
endDate string optional
agentUser object optional
name string optional
email string optional
userId string optional
accountId string optional
startDate string optional
permission string optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/users/{userId}/authorization
POST /v2.1/accounts/{accountId}/users/{userId}/authorizations

Create or update multiple user authorizations in a single request. The body of the request is a list of userAuthorizationSomething objects. To create a new authorization, specify the agentUser and permission fields, with the optional startDate and endDate fields. To update an existing authorization, specify the authorizationId field and the startDate and/or endDate fields.

For example, to create a new authorization and update the end date of an existing authorization, your request body might look like this:

{
  "authorizations": [
    {
      "agentUser": {
        "userId": "1470ff66-xxxx-xxxx-xxxx-8c46f140da37",
        "accountId": "230546a7-xxxx-xxxx-xxxx-af205d5494ad"
      },
      "permission": "manage"
    },
    {
      "authorizationId": "b73ac983-xxxx-xxxx-xxxx-b3c0ea5b09d3",
      "endDate": "2023-05-09T21:36:27.0000000+00:00"
    }
  ]
}

The principal user is specified by the userId path parameter. To call this endpoint, you must be an account administrator or the principal user.

Note: To create an authorization with signing permission, the AllowDelegationSigning setting must be enabled on the account. If you share signing access, the agent user will receive an email notification. Each principal user can only share signing permission with one agent user.

operationId: UserAuthorizations_PostUserAuthorizations

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

userId path required string

The ID of the principal user.

Request Body

application/json
schema userAuthorizationsRequest
Property Type Required
authorizations array optional
endDate string optional
agentUser object optional
name string optional
email string optional
userId string optional
accountId string optional
startDate string optional
permission string optional
authorizationId string optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/users/{userId}/authorizations

Bccemailarchive 1 endpoints

POST /v2.1/accounts/{accountId}/settings/bcc_email_archives

This method creates a BCC email archive configuration for an account (adds a BCC email address to the account for archiving the emails that DocuSign generates).

The only property that you must set in the request body is the BCC email address that you want to use.

Note: An account can have up to five active and pending email archive addresses combined, but you must use this method to add them to the account one at a time. Each email address is considered a separate BCC email archive configuration.

operationId: BCCEmailArchive_PostBCCEmailArchive

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

Boolean that specifies whether BCC for Email Archive is enabled for the account. BCC for Email Archive allows you to set up an archive email address so that a BCC copy of an envelope is sent only to that address.

application/json
schema bccEmailArchive
Property Type Required
uri string optional
email string optional
status string optional
created string optional
modified string optional
accountId string optional
createdBy object optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
message string optional
errorCode string optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
modifiedBy object optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
message string optional
errorCode string optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
bccEmailArchiveId string optional
emailNotificationId string optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/settings/bcc_email_archives

Bulksend 3 endpoints

POST /v2.1/accounts/{accountId}/bulk_send_lists

This method creates a bulk send list that you can use to send an envelope to up to 1,000 recipients at once.

Related topics

Errors

Error code Description
BULK_SEND_MAX_COPIES_EXCEEDED A bulk sending list cannot specify more than XXX copies in the mailing list. Call the settings API endpoint to find the maximum number of copies in a batch allowed for your account. In almost all cases, the default limit is 1000.
BULK_SEND_RECIPIENT_IDS_MUST_BE_UNIQUE No two recipientIds can be same within a bulkCopy. Same restriction as a regular envelope applies. Specify unique recipient IDs for each recipient within a bulkCopy (model for envelope in mailing list).
BULK_SEND_RECIPIENT_ID_REQUIRED If no RoleName is present, recipientID is required in mailing list’s bulkCopy. Add a roleName (that coalesces with template/envelope) or a recipientID.
BULK_SEND_RECIPIENT_NAME_REQUIRED Recipient {0} has no name. Specify a name for the recipient.
BULK_SEND_EMAIL_ADDRESS_REQUIRED_FOR_EMAIL_RECIPIENT Recipient {0} is an email recipient with no email address. Specify an email for the email recipient.
BULK_SEND_FAX_NUMBER_REQUIRED_FOR_FAX_RECIPIENT Recipient {0} is a fax recipient with no fax number. Specify a fax number for the fax recipient.
BULK_SEND_FAX_NUMBER_NOT_VALID Recipient {0} specifies fax number {1}, which is not valid. Specify a valid fax number for the fax recipient.
BULK_SEND_EMAIL_ADDRESS_NOT_VALID Recipient {0} specifies email address {1}, which is not a valid email address. Specify a valid email address for the recipient.
BULK_SEND_PHONE_NUMBER_REQURED_FOR_SMS_AUTH Recipient {0} specifies SMS auth, but no number was provided. Specify a phone number for the SMS auth recipient.
BULK_SEND_PHONE_NUMBER_INVALID_FOR_SMS_AUTH Recipient {0} specifies phone number {1} for SMS auth, which is not valid. Specify a valid phone number for the SMS auth recipient.
BULK_SEND_ROLE_NAMES_MUST_BE_UNIQUE Recipient role names cannot be duplicated; role {duplicateRecipientRole} appears multiple times. Use unique roleNames for recipients.
BULK_SEND_CANNOT_USE_BOTH_ROLE_AND_ID_ON_SAME_RECIPIENT Recipients cannot have both ID and Role; {0} has both. Specify a roleName or recipientId, but not both for the same recipient.
BULK_SEND_CANNOT_USE_BOTH_ROLE_AND_ID_IN_SAME_LIST Cannot use both recipient role and ID in the same list. Specify a roleName or recipientId, but not both in the same list.
BULK_SEND_INVALID_ID_CHECK_CONFIGURATION Recipient {0} specified SMS authentication, but no SMS auth settings were provided. Provide an SMS auth setting (proper ID configuration) if SMS auth is specified.
BULK_SEND_INVALID_SBS_INPUT_CONFIGURATION Recipient {0} has more than one signature provider specified. Or signingProviderName is not specified. Or Signature provider : {0} is either unknown or not an available pen for this account. One or more SBS configuration is missing or invalid. The error details provide specifics.
BULK_SEND_TAB_LABELS_MUST_BE_UNIQUE Tab label {0} is duplicated. Needs to be unique. Use a unique tab label.
BULK_SEND_TAB_LABEL_REQUIRED Tab label is required. Specify a tab label.
BULK_SEND_TAB_VALUE_REQUIRED Tab Label value is required. Specify a value for the tab label.
BULK_SEND_ENVELOPE_CUSTOM_FIELD_NAME_MUST_BE_UNIQUE Custom fields must have distinct names. The field {0} appears more than once in a copy. Use unique names for custom fields.
BULK_SEND_ENVELOPE_CUSTOM_FIELD_NAME_REQUIRED All custom fields must have names. Specify a name for the custom field.
BULK_SEND_ENVELOPE_CUSTOM_FIELD_VALUE_REQUIRED Custom field {0} has no value. A custom field can have an empty value, but it cannot have a null value. Specify a value for the custom field.
operationId: BulkSendV2CRUD_PostBulkSendList

Parameters

Name In Required Type Description
accountId path required string

The ID of the account.

Request Body

#/components/requestBodies/bulkSendingList

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/bulk_send_lists
POST /v2.1/accounts/{accountId}/bulk_send_lists/{bulkSendListId}/send

This method initiates the bulk send process. It generates a bulk send request based on an existing bulk send list and an envelope or template.

Consider using the BulkSend::createBulkSendTestRequest method to test your bulk send list for compatibility with the envelope or template that you want to send first. To learn about the complete bulk send flow, see the Bulk Send overview.

If the envelopes were successfully queued for asynchronous processing, the response contains a batchId that you can use to get the status of the batch. If a failure occurs, the API returns an error message.

Note: Partial success or failure generally does not occur. Only the entire batch is queued for asynchronous processing.

Related topics

Errors

This method returns the following errors:

Error code Description
BULK_SEND_ENVELOPE_NOT_IN_SENDABLE_STATE Envelope {0} is not in a sendable state. The envelope is not complete. Make sure it has a sendable status, such as created.
BULK_SEND_ENVELOPE_LIST_CONTAINS_NO_COPIES Cannot send an envelope with a bulk sending list which contains no copies. The list you’re trying to bulk send is empty. Make sure the bulk sending list you’re using contains recipients.
BULK_SEND_ENVELOPE_LIST_CONTAINS_TOO_MANY_COPIES Bulk sending list contains more than {0} copies. The list you’re trying to bulk send will cause your account to exceed the 1,000-copy limit imposed for all accounts. Try sending two or more separate lists.
BULK_SEND_ENVELOPE_CANNOT_BE_NULL Cannot send a bulk list without an envelope. Specify the envelope ID or template ID for the envelope you want to bulk send.
BULK_SEND_BLOB_STORE_ERROR Could not save copy of bulk sending list. An error writing to the database occurred. Try again. If the error persists, contact DocuSign Support.
BULK_SEND_ACCOUNT_HAS_TOO_MANY_QUEUED_ENVELOPES Cannot send this bulk sending list because doing so would exceed the maximum of {maxCopies} in-flight envelopes. This account currently has {unprocessedEnvelopes} envelopes waiting to be processed. Please try again later.” .Try again later, or contact DocuSign Support to request a higher tier.
BULK_SEND_ENVELOPE_NOT_FOUND Envelope {envelopeOrTemplateId} does not exist or you do not have permission to access it. The envelopeId or templateId specified could not be found. Specify a valid value.
BULK_SEND_LIST_NOT_FOUND Bulk Sending list {listId} does not exist or you do not have permission to access it. The mailingListId specified could not be found. Specify a valid value.
BULK_SEND_ENVELOPE_HAS_NO_RECIPIENTS Bulk sending copy contains recipients, but the specified envelope does not. The recipients on the envelope and the bulk send list do not match. Make sure the envelope and list are compatible for sending.
BULK_SEND_RECIPIENT_ID_DOES_NOT_EXIST_IN_ENVELOPE Recipient {0} does not exist in the envelope. Add the missing recipient to the envelope.
BULK_SEND_RECIPIENT_ID_DOES_NOT_MATCH Recipient ID {envelopeMember.ID} does not match. Make sure the recipient information in the list and the envelope match up.
BULK_SEND_ENVELOPE_HAS_BULK_RECIPIENT Recipient {0} is a bulk recipient. This is not supported. No legacy ‘bulk recipient’ allowed. In v2.1 of the eSignature API, you must use a bulk send list instead of a bulk recipient. See the API documentation for details.
BULK_SEND_RECIPIENT_ROLE_DOES_NOT_MATCH Recipient Role {envelopeMember.RoleName} does not match. Make sure the recipient information in the list and the envelope is compatible.
BULK_SEND_DUPLICATE_RECIPIENT_DETECTED Duplicate recipients ({0}) not allowed, unless recipients have unique routing order specified on envelope.
BULK_SEND_ENVELOPE_HAS_NO_TABS Bulk sending copy contains tabs, but the specified envelope does not. List and envelope tabs cannot be coalesced. Make sure they are compatible for sending.
BULK_SEND_TAB_LABEL_DOES_NOT_EXIST_IN_ENVELOPE Tab with label {0} does not exist in envelope. Add the tab label to the envelope, remove the label from the list, or make sure you’re specifying the correct list and envelope.
BULK_SEND_TAB_DOES_NOT_MATCH Tab {0} does not match {0} in envelope. A tab exists on the list that does not match or is missing on the envelope. Make sure the tabs on the list and the envelope match.
BULK_SEND_ENVELOPE_HAS_NO_ENVELOPE_CUSTOM_FIELDS Bulk sending copy contains custom fields, but the specified envelope does not. There are custom fields on the list that the envelope does not have. Make sure that any custom fields on the list and the envelope match.
BULK_SEND_ENVELOPE_CUSTOM_FIELD_DOES_NOT_EXIST_IN_ENVELOPE Custom field {0} does not exist in the envelope. Either add the custom field on the list to the envelope, remove the custom field from the list, or make sure you’re specifying the correct list and envelope.
BULK_SEND_ENVELOPE_CUSTOM_FIELD_NAME_DOES_NOT_MATCH Custom field names must match. {0} and {1} do not match. The custom field names on the list and the envelope do not match. Use identical names for both.
operationId: BulkSendV2Send_PostBulkSendRequest

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

bulkSendListId path required string

The GUID of the bulk send list. This property is created after you post a new bulk send list.

Request Body

#/components/requestBodies/bulkSendRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/bulk_send_lists/{bulkSendListId}/send
POST /v2.1/accounts/{accountId}/bulk_send_lists/{bulkSendListId}/test

This method tests a bulk send list for compatibility with the envelope or template that you want to send. For example, a template that has three roles is not compatible with a bulk send list that has only two recipients. For this reason, you might want to test compatibility first.

A successful test result returns true for the canBeSent property. An unsuccessful test returns a JSON response that contains information about the errors that occurred.

If the test is successful, you can then send the envelope or template by using the BulkSend::createBulkSendRequest method.

Envelope Compatibility Checks

This section describes the envelope compatibility checks that the system performs.

Top-Level Issues

  • Envelopes must be in a sendable state.
  • The bulk send list must contain at least one copy (instance of an envelope), and no more than the maximum number of copies allowed for the account.
  • The envelope must not be null and must be visible to the current user.
  • The account cannot have more queued envelopes than the maximum number configured for the account.
  • The bulk send list must exist.

Recipients

  • The envelope must have recipients.
  • If you are using an envelope, all of the recipients defined in the bulk send list must have corresponding recipient IDs in the envelope definition. If you are using a template, you must either match the recipient IDs or role IDs.
  • The envelope cannot contain a bulk recipient (an artifact of the legacy version of DocuSign’s bulk send
    functionality).

Recipient Tabs

  • Every recipient ID, tab label pair in the bulk send list must correspond to a tab in the envelope.

Custom Fields

  • Each envelope-level custom field in the bulk send list must correspond to the name of a customField in the
    envelope definition. You do not have to match the recipient-level custom fields.
operationId: BulkSendV2Test_PostBulkSendTestRequest

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

bulkSendListId path required string

The GUID of the bulk send list. This property is created after you post a new bulk send list.

Request Body

#/components/requestBodies/bulkSendRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/bulk_send_lists/{bulkSendListId}/test

Chunkeduploads 1 endpoints

POST /v2.1/accounts/{accountId}/chunked_uploads

This method initiates a new chunked upload with the first part of the content.

operationId: ChunkedUploads_PostChunkedUploads

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/chunkedUploadRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/chunked_uploads

Cloudstorageproviders 1 endpoints

POST /v2.1/accounts/{accountId}/users/{userId}/cloud_storage

Configures the redirect URL information for one or more cloud storage providers for the specified user. The redirect URL is added to the authentication URL to complete the return route.

operationId: CloudStorage_PostCloudStorage

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

userId path required string

The ID of the user to access.

Note: Users can only access their own information. A user, even one with Admin rights, cannot access another user’s settings.

Request Body

#/components/requestBodies/cloudStorageProviders

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/users/{userId}/cloud_storage

Connectconfigurations 2 endpoints

POST /v2.1/accounts/{accountId}/connect

Creates a custom Connect configuration for the specified account.

Connect is a webhook service that provides updates when certain events occur in your eSignature workflows. You can use this endpoint to create:

  • Account-level Connect configurations to listen for events related to any envelopes sent by one or more account users
  • Recipient Connect configurations that are triggered when one or more of your account users receive an envelope

To set an account-level configuration, set configurationType to custom.
To set a Recipient Connect configuration, set configurationType to customrecipient.

If you want to listen for events on only one envelope, use the eventNotification object instead.

Note: To use this function, you must be an account administrator and Connect must be enabled on your account.

Data models

There are four possible data models for your Connect configuration. Consider:

  • Do you want the data in JSON or XML?
  • Do you want events sent individually (SIM) or in aggregate?

DocuSign recommends using the JSON SIM event model.

JSON SIM (Recommended)

Set `deliveryMode` to **SIM** and `eventData.version` to **restv2.1.** Use the `events` property to set the event statuses that will trigger your configuration. The following sample request shows how to create an envelope-level configuration using JSON SIM: ``` { "configurationType": "custom", "urlToPublishTo": "YOUR-WEBHOOK-URL", "allUsers": "true", "name": "jsonSimTest", "deliveryMode": "SIM", "allowEnvelopePublish": "true", "enableLog": "true", "eventData": { "version": "restv2.1" }, "events": [ "envelope-sent", "envelope-delivered", "envelope-completed" ] } ``` The following sample request shows how to create a Recipient Connect configuration using JSON SIM: ``` { "configurationType": "customrecipient", "urlToPublishTo": "YOUR-WEBHOOK-URL", "allUsers": "true", "name": "jsonSimTest", "deliveryMode": "SIM", "allowEnvelopePublish": "true", "enableLog": "true", "eventData": { "version": "restv2.1" }, "events": [ "recipient-sent", "recipient-completed" ] } ```

JSON Aggregate

Set `deliveryMode` to **aggregate** and `eventData.version` to **restv2.1.** Use the `envelopeEvents` or `recipientEvents` property to set the event statuses that will trigger your configuration.

XML Aggregate

Set `deliveryMode` to **aggregate.** Use the `envelopeEvents` or `recipientEvents` property to set the event statuses that will trigger your configuration.

XML SIM (Legacy apps only)

**Note:** This model [will be deprecated](https://www.docusign.com/blog/developers/docusign-connect-xml-sim-messaging-format-deprecated). Set `deliveryMode` to **SIM.** Use the `envelopeEvents` or `recipientEvents` property to set the event statuses that will trigger your configuration.

Troubleshooting

If your configuration is not working, check the following.

  • Connect must be enabled for your account to use this function.
  • If you are using envelopeEvents or recipientEvents, make sure that the event values are sentence case, not lowercase.
  • Make sure you have either set allUsers to true or set userIds to a non-empty array of IDs.
  • By default, this endpoint creates a disabled configuration. To enable the configuration immediately, set the body parameter allowEnvelopePublish to true. You can also enable the configuration in the UI.
  • To check if events are being emitted, set enableLog to true to view event logs in the Connect console.

Related topics

operationId: Connect_PostConnectConfiguration

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/connectCustomConfiguration

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/connect
POST /v2.1/accounts/{accountId}/connect/oauth

Sets up Connect OAuth for the specified account using an authorization server of your choice. To use this endpoint, get the client ID and client secret from your authorization server.

When you call this endpoint, DocuSign requests an access token from your authorization server. DocuSign will use that token in the Authorization HTTP header of your account’s Connect messages. Finally, your listener will be responsible for validating the token by calling the authorization server.

Note: To use this function, you must be an account administrator and Connect must be enabled on your account.

Related topics:

operationId: ConnectOAuthConfig_PostConnectOAuthConfig

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/connectOAuthConfig

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/connect/oauth

Contacts 1 endpoints

POST /v2.1/accounts/{accountId}/contacts

This method adds multiple contacts into a contacts list.

operationId: Contacts_PostContacts

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/contactModRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/contacts

Customtabs 1 endpoints

POST /v2.1/accounts/{accountId}/tab_definitions

Creates a tab with pre-defined properties, such as a text tab with a certain font type and validation pattern. Users can access the custom tabs when sending documents through the DocuSign web application.

Custom tabs can be created for approve, checkbox, company, date, date signed, decline, email, email address, envelope ID, first name, formula, full name, initial here, last name, list, note, number, radio, sign here, signer attachment, SSN, text, title, and zip tabs.

operationId: Tabs_PostTabDefinitions

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/tabMetadata

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/tab_definitions

Documentresponsivehtmlpreview 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/responsive_html_preview

Creates a preview of the
responsive
HTML version of a specific document.
This method enables you to preview a PDF document
conversion to responsive HTML across device types prior to sending.

The request body is a documentHtmlDefinition object, which holds the responsive signing parameters that define how to generate the HTML version of the signing document.

operationId: ResponsiveHtml_PostDocumentResponsiveHtmlPreview

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

documentId path required string

The unique ID of the document within the envelope.

Unlike other IDs in the eSignature API,
you specify the documentId yourself.
Typically the first document has the ID
1, the second document 2, and so on,
but you can use any numbering scheme
that fits within a 32-bit signed integer
(1 through 2147483647).

Tab objects have a documentId property
that specifies the document on which to place
the tab.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/documentHtmlDefinition

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/responsive_html_preview

Envelopecustomfields 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/custom_fields

Updates the envelope custom fields for draft and in-process envelopes.

Related topics

operationId: CustomFields_PostCustomFields

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/EnvelopeCustomFields

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/custom_fields

Envelopedocumentfields 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/fields

Creates custom document fields in an existing envelope document.

operationId: DocumentFields_PostDocumentFields

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

documentId path required string

The unique ID of the document within the envelope.

Unlike other IDs in the eSignature API,
you specify the documentId yourself.
Typically the first document has the ID
1, the second document 2, and so on,
but you can use any numbering scheme
that fits within a 32-bit signed integer
(1 through 2147483647).

Tab objects have a documentId property
that specifies the document on which to place
the tab.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/EnvelopeDocumentFields

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/fields

Envelopedocumenttabs 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/tabs

Adds tabs to the document specified by documentId in the
envelope specified by envelopeId.

This method operates only on smartSection and polyLineOverlay tabs.
operationId: Tabs_PostDocumentTabs

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

documentId path required string

The unique ID of the document within the envelope.

Unlike other IDs in the eSignature API,
you specify the documentId yourself.
Typically the first document has the ID
1, the second document 2, and so on,
but you can use any numbering scheme
that fits within a 32-bit signed integer
(1 through 2147483647).

Tab objects have a documentId property
that specifies the document on which to place
the tab.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/tabs

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/tabs

Envelopeemailsettings 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/email_settings

Adds email override settings, changing the email address to reply to an email address, name, or the BCC for email archive information, for the envelope. Note that adding email settings will only affect email communications that occur after the addition was made.

The BCC Email address feature is designed to provide a copy of all email communications for external archiving purposes.
To send a copy of the envelope to a recipient who does not need to sign, use a Carbon Copy or Certified Delivery recipient type.

Note: DocuSign recommends that envelopes sent using the BCC for Email Archive feature, including the BCC Email Override option, include additional signer authentication options.

operationId: EmailSettings_PostEmailSettings

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/emailSettings

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/email_settings

Envelopelocks 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/lock

This method locks the specified envelope and sets the time until
the lock expires to prevent other users or recipients from
changing the envelope.

The response to this request includes a lockToken parameter
that you must use in the X-DocuSign-Edit header for
every PUT method (typically a method that updates an envelope)
while the envelope is locked.

If you do not provide the lockToken when accessing
a locked envelope, you will get the following
error:

{
   "errorCode": "EDIT_LOCK_NOT_LOCK_OWNER",
   "message": "The user is not the owner of the lock. The template is locked by another user or in another application"
}

The X-DocuSign-Edit header

The X-DocuSign-Edit header looks like this
and can be specified in either JSON or XML.

JSON

{
  "LockToken": "token-from-response",
  "LockDurationInSeconds": "600"
}

XML

<DocuSignEdit>
  <LockToken>token-from-response</LockToken>
  <LockDurationInSeconds>600</LockDurationInSeconds>
</DocuSignEdit>

In the actual HTTP header, you would remove the linebreaks:

X-DocuSign-Edit: {"LockToken": "token-from-response", "LockDurationInSeconds": "600" }
    or
X-DocuSign-Edit:<DocuSignEdit><LockToken>token-from-response</LockToken><LockDurationInSeconds>600</LockDurationInSeconds></DocuSignEdit>

Related topics

operationId: Lock_PostEnvelopeLock

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/lockRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/lock

Envelopepublish 1 endpoints

POST /v2.1/accounts/{accountId}/connect/envelopes/publish/historical

This endpoint submits a batch of existing envelopes to a webhook of your choice. Set the webhook address with the urlToPublishTo request body parameter.

This endpoint does not call an existing Connect configuration or create a new Connect listener to monitor new activity. It simply uses an ad hoc configuration to submit existing envelopes. You must include all the configuration data in the request body.

The envelope data will always be transmitted in JSON format. XML, Salesforce, and eOriginal configuration types are not supported.

Your request should match the following format:

{
    "envelopes": ["4280f274-xxxx-xxxx-xxxx-b218b7eeda08", "8373a938-xxxx-xxxx-xxxx-e992a2abae01"],
    "config": {
        "configurationType":"custom",
        "name": "Test",
        "urlToPublishTo":"YOUR-WEBHOOK-URL",
        "allowEnvelopePublish": "true",
        "enableLog": "true",
        "requiresAcknowledgement": "true",
        "IncludeHMAC": "true",
        "SignMessageWithX509Cert": "true",
        "deliveryMode": "SIM",
        "eventData": {
            "version": "restv2.1",
            "format": "json",
            "includedata": ["tabs","payment_tabs","custom_fields","powerform","recipients","folders","extensions","attachments", "prefill_tabs", "documents"]
        }
    }
}

If the request succeeds, it returns a 201 (Created) HTTP response code and the response body property processingStatus will be set to processing. You can then view the status of each historical republish request in the Bulk Actions Log.

operationId: HistoricalEnvelopePublish_PostHistoricalEnvelopePublishTransaction

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

application/json
schema connectHistoricalEnvelopeRepublish
Property Type Required
config object optional
name string optional
events array optional
userIds array optional
allUsers string optional
groupIds array optional
password string optional
userName string optional
connectId string optional
enableLog string optional
eventData object optional
format string optional
version string optional
includeData array optional
sfObjects array optional
id string optional
active string optional
insert string optional
sfObject string optional
description string optional
selectFields array optional
id string optional
dsLink string optional
dsNode string optional
sfField string optional
sfFolder string optional
dsAttribute string optional
sfFieldName string optional
sfLockedValue string optional
sfObjectName string optional
updateFields array optional
id string optional
dsLink string optional
dsNode string optional
sfField string optional
sfFolder string optional
dsAttribute string optional
sfFieldName string optional
sfLockedValue string optional
onCompleteOnly string optional
disabledBy string optional
includeHMAC string optional
deliveryMode string optional
includeOAuth string optional
soapNamespace string optional
allUsersExcept string optional
envelopeEvents array optional
senderOverride string optional
urlToPublishTo string optional
…23 more object optional
envelopes array optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/connect/envelopes/publish/historical

Enveloperecipienttabs 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients/{recipientId}/tabs

Adds one or more tabs for a recipient.

operationId: Recipients_PostRecipientTabs

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

recipientId path required string

A local reference used to map
recipients to other objects, such as specific
document tabs.

A recipientId must be
either an integer or a GUID,
and the recipientId must be
unique within an envelope.

For example, many envelopes assign the first recipient
a recipientId of 1.

Request Body

#/components/requestBodies/EnvelopeRecipientTabs

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients/{recipientId}/tabs

Enveloperecipients 4 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients

Adds one or more recipients to an envelope.

For an in-process envelope,
one that has been sent and has not been completed or voided,
an email is sent to a new recipient
when they are reached in the routing order.
If the new recipient’s routing order
is before or the same as the envelope’s
next recipient,
an email is only sent if the optional
resend_envelope query string is set to true.

Note: This method works on recipients only.
To add recipient tabs,
use methods from the EnvelopeRecipientTabs resource.
For example, this request body will add a recipient (astanton@example.com)
but NOT the Sign Here recipient tab.

{
  "signers": [
    {
      "email": "astanton@example.com",
      "name": "Anne Stanton",
      "recipientId": "1",
      "tabs": {           // These tabs will NOT be added
        "signHereTabs": [ // with this method. See note above.
          {
            "anchorString": "below",
            "tooltip": "please sign here"
          },
          . . .
        ]
      }
    }
  ]
}

Related topics

operationId: Recipients_PostRecipients

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

resend_envelope query optional string

When true,
forces the envelope to be resent
if it would not be resent otherwise.

Ordinarily, if the recipient’s routing order
is before or the same as the envelope’s next recipient,
the envelope is not resent.

Setting this query parameter
to false has no effect and is the same as omitting
it altogether.

Request Body

#/components/requestBodies/EnvelopeRecipients

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients/{recipientId}/identity_proof_token

Creates a resource token for a sender. This token allows a sender to return identification data for a recipient using the ID Evidence API.

operationId: Recipients_PostRecipientProofFileResourceToken

Parameters

Name In Required Type Description
accountId path required string

The account ID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

recipientId path required string

The recipientIdGuid.

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients/{recipientId}/identity_proof_token
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients/{recipientId}/views/identity_manual_review

This method returns the URL of the page that allows a sender to manually review the ID of a recipient.

operationId: Views_PostRecipientManualReviewView

Parameters

Name In Required Type Description
accountId path required string

A value that identifies your account. This value is automatically generated by DocuSign for any account you create. Copy the value from the API Account ID field in the AppsI and Keys page.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

recipientId path required string

A GUID value that DocuSign assigns to identify each recipient in an envelope. This value is globally unique for all recipients, not just those in your account.

The specified recipient must belong to a workflow that allows the manual review of IDs. In addition, the status of the automatic verification for this recipient must return Failed and the value of the vendorFailureStatusCode field must be MANUAL_REVIEW_STARTED as shown in the following extract of a response to the GET ENVELOPE method:

``` "recipientAuthenticationStatus": { "identityVerificationResult": { "status": "Failed", "eventTimestamp": "2020-09-04T16:59:42.8045667Z", "vendorFailureStatusCode": "MANUAL_REVIEW_STARTED" } } ```

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients/{recipientId}/views/identity_manual_review
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/recipient_preview

Returns a URL to preview the recipients’ view of a draft envelope or template. You can embed this view in your application to enable the sender to preview the recipients’ experience.

For more information, see Preview and Send.

operationId: Views_PostEnvelopeRecipientPreview

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/recipientPreviewRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/recipient_preview

Envelopetemplates 2 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/templates

Adds templates to a document in the specified envelope.

operationId: Templates_PostDocumentTemplates

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

documentId path required string

The unique ID of the document within the envelope.

Unlike other IDs in the eSignature API,
you specify the documentId yourself.
Typically the first document has the ID
1, the second document 2, and so on,
but you can use any numbering scheme
that fits within a 32-bit signed integer
(1 through 2147483647).

Tab objects have a documentId property
that specifies the document on which to place
the tab.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

preserve_template_recipient query optional string

If omitted or set to false (the default),
envelope recipients will be removed
if the template being applied
includes only tabs positioned via anchor text for the recipient,
and none of the documents include the anchor text.

When true, the recipients will be preserved after the template is applied.

Request Body

#/components/requestBodies/documentTemplateList

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/templates
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/templates

Adds templates to the specified envelope.

operationId: Templates_PostEnvelopeTemplates

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

preserve_template_recipient query optional string

If omitted or set to false (the default),
envelope recipients will be removed
if the template being applied
includes only tabs positioned via anchor text for the recipient,
and none of the documents include the anchor text.

When true, the recipients will be preserved after the template is applied.

Request Body

#/components/requestBodies/documentTemplateList

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/templates

Envelopetransferrules 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/transfer_rules

This method creates an envelope transfer rule.

When you create an envelope transfer rule, you specify the following properties:

  • eventType
  • fromGroups
  • toUser
  • toFolder
  • carbonCopyOriginalOwner
  • enabled

Note: Only Administrators can create envelope transfer rules. In addition, to use envelope transfer rules, the Transfer Custody feature must be enabled for your account.

operationId: EnvelopeTransferRules_PostEnvelopeTransferRules

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

application/json
schema envelopeTransferRuleRequest
Property Type Required
toUser object optional
uri string optional
email string optional
title string optional
userId string optional
company string optional
isAdmin string optional
jobTitle string optional
lastName string optional
password string optional
userName string optional
userType string optional
firstName string optional
groupList array optional
users array optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
groupId string optional
dsGroupId string optional
groupName string optional
groupType string optional
usersCount string optional
errorDetails object optional
message string optional
errorCode string optional
permissionProfileId string optional
lastLogin string optional
subscribe string optional
middleName string optional
suffixName string optional
userStatus string optional
countryCode string optional
homeAddress object optional
fax string optional
city string optional
phone string optional
country string optional
address1 string optional
address2 string optional
zipPlus4 string optional
postalCode string optional
stateOrProvince string optional
…24 more object optional
enabled string optional
toFolder object optional
uri string optional
name string optional
type string optional
owner object optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
message string optional
errorCode string optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
filter object optional
order string optional
status string optional
expires string optional
orderBy string optional
folderIds string optional
isTemplate string optional
searchText string optional
toDateTime string optional
fromDateTime string optional
searchTarget string optional
actionRequired string optional
folders array optional
folderId string optional
hasAccess string optional
itemCount string optional
folderItems array optional
status string optional
subject string optional
folderId string optional
folderUri string optional
ownerName string optional
envelopeId string optional
recipients object optional
seals array optional
agents array optional
editors array optional
signers array optional
notaries array optional
witnesses array optional
carbonCopies array optional
errorDetails object optional
participants array optional
intermediaries array optional
recipientCount string optional
inPersonSigners array optional
certifiedDeliveries array optional
currentRoutingOrder string optional
senderName string optional
templateId string optional
envelopeUri string optional
senderEmail string optional
templateUri string optional
senderUserId string optional
sentDateTime string optional
is21CFRPart11 string optional
recipientsUri string optional
senderCompany string optional
expireDateTime string optional
createdDateTime string optional
completedDateTime string optional
…1 more object optional
errorDetails object optional
message string optional
errorCode string optional
hasSubFolders string optional
parentFolderId string optional
subFolderCount string optional
parentFolderUri string optional
eventType string optional
fromUsers array optional
uri string optional
email string optional
title string optional
userId string optional
company string optional
isAdmin string optional
jobTitle string optional
lastName string optional
password string optional
userName string optional
userType string optional
firstName string optional
groupList array optional
users array optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
groupId string optional
dsGroupId string optional
groupName string optional
groupType string optional
usersCount string optional
errorDetails object optional
message string optional
errorCode string optional
permissionProfileId string optional
lastLogin string optional
subscribe string optional
middleName string optional
suffixName string optional
userStatus string optional
countryCode string optional
homeAddress object optional
fax string optional
city string optional
phone string optional
country string optional
address1 string optional
address2 string optional
zipPlus4 string optional
postalCode string optional
stateOrProvince string optional
…24 more object optional
fromGroups array optional
users array optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
message string optional
errorCode string optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
groupId string optional
dsGroupId string optional
groupName string optional
groupType string optional
usersCount string optional
errorDetails object optional
message string optional
errorCode string optional
permissionProfileId string optional
modifiedDate string optional
modifiedUser object optional
uri string optional
email string optional
title string optional
userId string optional
company string optional
isAdmin string optional
jobTitle string optional
lastName string optional
password string optional
userName string optional
userType string optional
firstName string optional
groupList array optional
users array optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
groupId string optional
dsGroupId string optional
groupName string optional
groupType string optional
usersCount string optional
errorDetails object optional
message string optional
errorCode string optional
permissionProfileId string optional
lastLogin string optional
subscribe string optional
middleName string optional
suffixName string optional
userStatus string optional
countryCode string optional
homeAddress object optional
fax string optional
city string optional
phone string optional
country string optional
address1 string optional
address2 string optional
zipPlus4 string optional
postalCode string optional
stateOrProvince string optional
…24 more object optional
envelopeTransferRuleId string optional
carbonCopyOriginalOwner string optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/transfer_rules

Envelopeviews 6 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/correct

Returns a URL that allows you to embed the envelope correction view of the DocuSign UI. To customize the appearance of the correction view, you can add special query parameters to the returned URL when you use it in your application.

You can revoke this URL by calling the deleteEnvelopeCorrectView endpoint.

Best practices

The returned URL expires after 10 minutes and can only be used once. Therefore, request the URL immediately before you redirect your user to it.

Due to screen space issues, do not use an <iframe> for embedded operations on mobile devices. For iOS devices, DocuSign recommends using a WebView.

Customizing the correction view

To customize the appearance of the correction view, you can add query parameters to the URL that is returned by this endpoint and used in your application. Do not add these query parameters to the URL of the endpoint itself.

For example, adding the following query parameters to the URL returned by this method causes the sending view to:

  • start in the tagging screen
  • hide the Edit Pages command
  • hide all of the options under the Actions dropdown except Save, Close, and Discard
https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=dd3b7c4c-xxxx-xxxx-xxxx-50cd195a3401&DocuEnvelope=f37489d3-xxxx-xxxx-xxxx-4de057063d0e&\
        advcorrect=1&\
        showEditPages=false&\
        showHeaderActions=false

The default value reflects what happens
if you omit the customization query parameter.
You can use the interactive
Embedded Sending Demo tool
to see the effect of using different query parameters.

Query Parameter Default Value Alternate Value
sendButtonAction send

The Send button operates normally.
redirect

The text of the button changes to Continue. Clicking it redirects to the returnUrl in the request object. If you intend to modify the envelope after redirection, see this note.
backButtonAction previousPage

The back arrow and back button operate normally.
redirect

Clicking the back arrow and back button redirects to the returnUrl in the request object. If you intend to modify the envelope after redirection, see this note.
showBackButton true

Shows the back arrow and the back button.
false

Hides the back arrow and the back button.
showEditRecipients true

Shows the Edit Recipients command in the action menu and in the Conditional Recipients settings.
false

Hides the Edit Recipients command.
showEditDocuments true

Shows the Edit Documents command in the action menu and removes the Documents Gear icon.
false

Hides the Edit Documents command.
showEditDocumentVisibility true

Shows the Documents Gear icon where the sender can edit document visibility.
false

Hides the Documents Gear icon.
showEditPages true

Shows the Edit Pages command under the document thumbnail.
false

Hides the Edit Pages command.
showMatchingTemplatesPrompt true

Shows the matching template prompt.
false

Hides the matching template prompt.
showHeaderActions true

Shows all options under the Actions dropdown.
false

Hides all options under the Actions dropdown except Save, Close, and Discard.
showDiscardAction true

Shows the Discard command under the Actions dropdown.
false

Hides the Discard command.
advcorrect 1

Starts the signer in the tagging screen.
0

Starts the signer in the prepare screen.
showTabPalette true

Shows the tab palette.
false

Hides the tab palette.
tabPaletteType standard

Displays the standard tab palette.
custom
merge
notary
seals
smartcontracts
annotations
smartSections

Displays the specified tab palette before the standard palette.

Modifying the envelope after redirection

If you use sendButtonAction=redirect or backButtonAction=redirect, and you intend to modify the envelope after redirection, you will need to lock the envelope and add an extra query parameter:

  1. Create a lock token for the envelope.
  2. Add the new lock token to the URL with the lockToken query parameter.

    ...&sendButtonAction=redirect&lockToken=MDgxZxabUVBiMWUzZWYz

    Note: The lockToken query parameter is case-sensitive.

After clicking Continue,
your user is redirected back to your integration.
You can then delete the lock token.

Information security notice

This method provides full access to the sending account. When you
use this view, the current user has full access to the account.
If the account has administrative privileges, then this method
also provides administrator access.

If your use case needs to enable a sender to update a draft
envelope before it is sent or make other changes, take one of the
following steps:

  • Configure each sender to have their own individual user account
    to use this API method.
  • Enhance your API integration so that this method is not needed.
    Your integration can create the tabs, recipients,
    and other envelope settings as needed.

Related topics

operationId: Views_PostEnvelopeCorrectView

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/correctViewRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/correct
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/edit

Returns a URL that enables you to embed the edit view of the DocuSign UI in your applications. This is a one-time use login token that allows the user to be placed into the DocuSign editing view. Upon sending completion, the user is returned to the return URL provided by the API application.

See Embedded signing and sending
to learn more about embedding.

Due to screen space issues,
do not use an <iframe> for embedded operations on mobile devices.
For iOS devices, DocuSign recommends using a WebView.

Information security notice

This method provides full access to the sending account. When you
use this view, the current user has full access to the account.
If the account has administrative privileges, then this method
also provides administrator access.

If your use case needs to enable a sender to update a draft envelope before it is sent or make other changes, take one of the following steps:

  • Configure each sender to have their own individual user account to use this API method.</li>
  • Enhance your API integration so that this method is not needed. Your integration can create the tabs, recipients, and other envelope settings as needed.</li>

Related topics

operationId: Views_PostEnvelopeEditView

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/returnUrlRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/edit
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/recipient

Returns a URL that enables you to
embed the recipient view
of the
DocuSign UI in your applications. If the recipient is a signer,
then the view will provide the signing ceremony.

This method is only used with envelopes in the sent status.

Due to screen space issues, do not use an <iframe> for embedded operations on mobile devices. For iOS devices, DocuSign recommends using a WebView.

The returned URL

The URL returned in this method’s response is intended to be used
immediately to redirect the signer to the recipient view.
You can open the recipient view
in the current browser or in a new tab.
After the signer is redirected to the
recipient view, they must interact with the DocuSign system
periodically or their session will time out.

The returned URL can be used only once and expires after 5 minutes. Do not store or email the returned URL.

If you want to invite someone to an embedded signing session via
email, the email invitation’s URL must be to your application.
When invoked, your app should request a recipientView URL from
DocuSign and then redirect the signer to that URL.

How to specify the default language

You can append the locale
query parameter
to the URL returned by this method
to specify a language.

The language for the recipient view
follows this order or precedence:

  • The language specified by the sender for the recipient.
  • The locale parameter appended to the URL.
  • The account language if the signer has a DocuSign account.
  • The language used in a previous signing if the signer is return signer.
  • The browser language.

For example, to set the default language
to Canadian French, you would add this query parameter
to the returned URL:

...?locale=fr_CA

Authentication

Your application is responsible for authenticating the identity
of the recipient or signer when you use this method. Use the
following parameters to record how the recipient
was authenticated.

  • assertionId
  • authenticationInstant
  • authenticationMethod
  • clientUserId
  • securityDomain

At a minimum, authenticationMethod and clientUserId are
required. The information that you provide is included in the
envelope’s certificate of completion.

Sending to a remote signer

You can request a signing session for a remote recipient
who has a DocuSign account.

Authenticate the request using the recipient’s
credentials, and do not specify a clientUserId.
This differs from the typical behavior where the
request is authenticated using the sender’s credentials,
and the recipient has a clientUserId defined.

Redirecting back to returnUrl

After the signer completes or ends the signing ceremony, DocuSign
redirects the user’s browser back to your app via the
returnUrl that you supplied in the request.

The signer may be redirected through various DocuSign
subdomains, depending on the region of the account sending the
envelope. Please consult Allowlists for DocuSign eSignature service
in Security for DocuSign eSignature
when setting up your allowlists

The event status parameter

DocuSign appends an event query parameter to the returnUrl with the
outcome of the signing ceremony. Your app can use this event
parameter to determine the next step for the envelope.
Do not fetch the envelope status by using
Envelopes: get
or a similar method because doing so
will probably hit request and polling limits.

event query parameter Meaning
signing_complete The recipient has signed the document.
cancel The recipient decided to finish later.
decline The recipient declined to sign the document.
exception An exception has occurred on the server during the signing session.
fax_pending Recipient has a fax pending.
session_timeout The recipient did not sign the document in time. The timeout is set to 20 minutes.
ttl_expired The token was not used within the timeout period or the token has already been accessed.
viewing_complete The recipient did not need to sign but has completed the viewing ceremony.
Because a user can cancel redirection, close their browser after signing, or spoof the landing URL, you should not rely on the returnUrl alone as the single source of truth for envelope status for your integration.

Maintaining State

After the recipient completes the recipient view (or signing
ceremony), they are redirected to your application. Your
application can recover state information about the transaction
by storing information in a cookie, or by including query
parameters in the returnUrl field. For example.
https://myapp.example.com/docusign_return?myState=12345 When the
user is redirected to your app, the event query parameter will
be appended. In this example, prevent spoofing by not using a
guessable value as the state value.

Related topics

operationId: Views_PostEnvelopeRecipientView

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The ID of the draft envelope or template to preview.

Request Body

#/components/requestBodies/recipientViewRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/recipient
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/sender

Returns a URL that enables you to embed the sender view
of the DocuSign UI in your applications. To customize the appearance of the sender view, you can append special query parameters to the returned URL.

Best Practices

The returned URL can only be redirected to immediately after it
is generated. It can only be used once. Therefore, request the
URL immediately before you redirect your user to it.

Due to screen space issues,
do not use an <iframe> for embedded operations on mobile devices.
For iOS devices, DocuSign recommends using a WebView.

Customizing the sending view

You can add query parameters
to customize the appearance of the sending view.
For example, adding the following query parameters
to the URL returned by this method
causes the sending view to:

  • start in the tagging screen
  • hide the Edit Pages command
  • hide all of the options under the Actions dropdown except Save, Close, and Discard
https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=dd3b7c4c-xxxx-xxxx-xxxx-50cd195a3401&DocuEnvelope=f37489d3-xxxx-xxxx-xxxx-4de057063d0e&\
        send=1&\
        showEditPages=false&\
        showHeaderActions=false

The default value reflects what happens
if you omit the customization query parameter.
You can use the interactive
Embedded Sending Demo tool
to see the effect of using different query parameters.

Query Parameter Default Value Alternate Value
sendButtonAction send

The Send button operates normally.
redirect

The text of the button changes to Continue. Clicking it redirects to the returnUrl in the request object. If you intend to modify the envelope after redirection, see this note.
backButtonAction previousPage

The back arrow and back button operate normally.
redirect

Clicking the back arrow and back button redirects to the returnUrl in the request object. If you intend to modify the envelope after redirection, see this note.
showBackButton true

Shows the back arrow and the back button.
false

Hides the back arrow and the back button.
showEditRecipients true

Shows the Edit Recipients command in the action menu and in the Conditional Recipients settings.
false

Hides the Edit Recipients command.
showEditDocuments true

Shows the Edit Documents command in the action menu and removes the Documents Gear icon.
false

Hides the Edit Documents command.
showEditDocumentVisibility true

Shows the Documents Gear icon where the sender can edit document visibility.
false

Hides the Documents Gear icon.
showEditPages true

Shows the Edit Pages command under the document thumbnail.
false

Hides the Edit Pages command.
showMatchingTemplatesPrompt true

Shows the matching template prompt.
false

Hides the matching template prompt.
showHeaderActions true

Shows all options under the Actions dropdown.
false

Hides all options under the Actions dropdown except Save, Close, and Discard.
showDiscardAction true

Shows the Discard command under the Actions dropdown.
false

Hides the Discard command.
send 1

Starts the signer in the tagging screen.
0

Starts the signer in the prepare screen.
showTabPalette true

Shows the tab palette.
false

Hides the tab palette.
tabPaletteType standard

Displays the standard tab palette.
custom
merge
notary
seals
smartcontracts
annotations
smartSections

Displays the specified tab palette before the standard palette.

Modifying the envelope after redirection

If you use sendButtonAction=redirect
or
backButtonAction=redirect,
and
you intend to modify the envelope after redirection,
you will need to lock the envelope
and
add an extra query parameter:

  1. Create a lock token for the envelope.
  2. Add the new lock token to the URL with the lockToken query parameter.

    ...&sendButtonAction=redirect&lockToken=MDgxZxabUVBiMWUzZWYz

    Note: The lockToken query parameter is case-sensitive.

After clicking Continue,
your user is redirected back to your integration.
You can then delete the lock token.

Information security notice

This method provides full access to the sending account. When you
use this view, the current user has full access to the account.
If the account has administrative privileges, then this method
also provides administrator access.

If your use case needs to enable a sender to update a draft
envelope before it is sent or make other changes, take one of the
following steps:

  • Configure each sender to have their own individual user account
    to use this API method.
  • Enhance your API integration so that this method is not needed.
    Your integration can create the tabs, recipients,
    and other envelope settings as needed.

Related topics

operationId: Views_PostEnvelopeSenderView

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/returnUrlRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/sender
POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/shared

Returns a URL that enables you to embed the DocuSign UI recipient view of a shared envelope in your applications. This is the view that a user sees of an envelope that a recipient on the same account has shared with them.

Due to screen space issues,
do not use an <iframe> for embedded operations on mobile devices.
For iOS devices, DocuSign recommends using a WebView.

Related topics

operationId: Views_PostEnvelopeRecipientSharedView

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/recipientViewRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/views/shared
POST /v2.1/accounts/{accountId}/views/console

Returns a URL that enables you to embed the DocuSign UI in your applications. To view a specific envelope, set the envelopeId property in the request body.

Information security notice

This method provides full access to the sending account.

Related topics

operationId: Views_PostAccountConsoleView

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

application/json
schema consoleViewRequest
Property Type Required
returnUrl string optional
envelopeId string optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/views/console

Envelopeworkflowdefinition 2 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/workflow/steps

Adds a new step to an envelope’s workflow.

operationId: EnvelopeWorkflowStep_PostEnvelopeWorkflowStepDefinition

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/workflowStep

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/workflow/steps
POST /v2.1/accounts/{accountId}/templates/{templateId}/workflow/steps

Adds a new step to a template’s workflow.

operationId: TemplateWorkflowStep_PostTemplateWorkflowStepDefinition

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/workflowStep

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/workflow/steps

Envelopes 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes

Creates and sends an envelope or creates a draft envelope.
Envelopes are fundamental resources in the DocuSign platform.

With this method you can:

When you use this method
to create and send an envelope
in a single request,
the following parameters in the request body (an envelopeDefinition object) are required:

Parameter Description
status Set to sent to send the envelope to recipients.
Set to created (or don’t set at all) to save the envelope as a draft.
emailSubject The subject of the email used to send the envelope.
documents The documents to be signed.
recipients The email addresses of the envelope recipients.

When you create an envelope by using a
composite template,
you should specify the envelope custom fields in the inline template.
Any custom fields that you specify at the root level are ignored.

If the envelope has a workflow definition
and the workflowStatus is paused,
the envelope will not be sent immediately,
even if the envelope’s status is sent.

Related topics

Envelope and template
objects along with documents,
recipients, and tabs
are the five object models at the core of the eSignature API.
The eSignature concepts guide
describes how the five object models work together.

The following how-to articles contain
practical examples that show you how to
to
configure this method’s
envelopeDefinition request body
to perform common tasks.

Requesting a signature

Working with envelopes and templates

Working with advanced recipient routing

Working with documents

Working with tabs

Working with brands

Working with permissions

Implementing multi-factor recipient (signer) authentication

operationId: Envelopes_PostEnvelopes

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

cdse_mode query optional string

Reserved for DocuSign.

change_routing_order query optional string

When true, users can define the routing order of recipients while sending documents for signature.

completed_documents_only query optional string

Reserved for DocuSign.

merge_roles_on_draft query optional string

When true, template roles will be merged, and empty recipients will be removed. This parameter applies when you create a draft envelope with multiple templates. (To create a draft envelope, the status field is set to created.)

Note: DocuSign recommends that this parameter should be set to true whenever you create a draft envelope with multiple templates.

Request Body

#/components/requestBodies/envelopeDefinition

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes

Groups 1 endpoints

POST /v2.1/accounts/{accountId}/groups

Creates one or more groups for the account.

Groups help you manage users.
For example, you can use groups
to limit user access to templates.

You can associate a group with a
permission profile,
which sets the user permissions for users in that group
without having to set the userSettings property for each user.
You are not required to set permission profiles for a group,
but it makes it easier to manage user permissions
for a large number of users.

This endpoint uses only the groupName and permissionProfileId properties in the request body. All other properties are ignored.

Example request:

{
  "groups": [
    { "groupName": "montagues" },
    { "groupName": "capulets" },
    { "groupName": "nobles",
       "permissionProfileId": 1597 }
  ]
}

Use AccountPermissionProfiles: list
to get a list of permission profiles and their IDs.
It is an error if the permissionProfileId does not exist.

Related topics

operationId: Groups_PostGroups

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/groupInformation

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/groups

Notary 1 endpoints

POST /v2.1/current_user/notary

Registers the current user as a notary.

operationId: Notary_PostNotary

Request Body

#/components/requestBodies/notary

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/current_user/notary

Notaryjurisdiction 1 endpoints

POST /v2.1/current_user/notary/jurisdictions

Creates a jurisdiction object.

operationId: NotaryJurisdictions_PostNotaryJurisdictions

Request Body

#/components/requestBodies/notaryJurisdiction

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/current_user/notary/jurisdictions

Payments 1 endpoints

POST /v2.1/accounts/{accountId}/billing_payments

Posts a payment to a past due invoice.

This method can only be used if the paymentAllowed value for a past due invoice is true. This can be determined calling Billing::listInvoicesPastDue.

The response returns information for a single payment
if a payment ID was used in the endpoint, or a list of payments.
If the from date or to date queries or payment ID are not used,
the response returns payment information for the last 365 days.

If the request was for a single payment ID, the nextUri and previousUri properties are not returned.

Privileges required: account administrator

operationId: BillingPayments_PostPayment

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

application/json
schema billingPaymentRequest
Property Type Required
paymentAmount string optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/billing_payments

Powerforms 1 endpoints

POST /v2.1/accounts/{accountId}/powerforms

This method creates a new PowerForm.

You create a PowerForm from an existing DocuSign template, based on the templateId in the request body.

PowerForms that you create from a template are referred to as web PowerForms.

Note: The DocuSign Admin console also supports creating a PowerForm by uploading a PDF file that has active form fields (referred to as a PDF PowerForm). However, PDF PowerForms are deprecated and are not supported in the API.

Note: A PowerForm can have only one sender. (Because PowerForms are not necessarily sent by email, this user is also referred to as the PowerForm initiator.) If you need to associate multiple senders with a PowerForm, create multiple copies of the PowerForm by using the same template (one copy for each sender). By default, the sender is the PowerForm Administrator who creates the PowerForm.

Signing modes

You can use one of the following signing modes for a PowerForm:

email

This mode verifies the recipient’s identity by using email authentication before the recipient can sign a document. The recipient enters their email address on the landing page and then clicks Begin Signing to begin the signing process. The system then sends an email message with a validation code to the recipient. If the recipient does not provide a valid email address, they do not receive the email message containing the access code and are not able to open and sign the document.

Alternatively, you can make the process easier for signers by using email authentication only and omitting the access code. To do this, you append the activateonly flag to the PowerForm URL and set it to true by passing in the value 1. When the flag is active, the first recipient receives an email with a link that initiates the signing session without having to enter access code.

Example: activateonly=1

direct

This mode does not require any verification. After a recipient enters their email address on the landing page and clicks Begin Signing, a new browser tab opens and the recipient can immediately begin the signing process.

Because the direct signing mode does not verify the recipient’s identity by using email authentication, we strongly recommend that you use this mode only when the PowerForm is accessible behind a secure portal where the recipient’s identity is already authenticated, or where another form of authentication is specified for the recipient in the DocuSign template (for example, an access code, phone authentication, or ID check).

Note: In the account settings, enablePowerFormDirect must be true to use direct as the signingMode.

Redirect URLs

You can control the URL to which signers are redirected after signing your PowerForm. However, the URL is specified elsewhere, outside of the PowerForm creation process. For details, see How do I specify a URL to redirect to when a PowerForm is completed?.

More information

For more information about creating PowerForms, see Create a PowerForm.

operationId: PowerForms_PostPowerForm

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/powerForm

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/powerforms

Responsivehtmlpreview 1 endpoints

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/responsive_html_preview

Creates a preview of the
responsive,
HTML versions of all of the documents in an
envelope. This method enables you to preview the
PDF document conversions to responsive HTML across
device types prior to sending.

The request body is a documentHtmlDefinition
object, which holds the responsive signing
parameters that define how to generate the HTML
version of the documents.

operationId: ResponsiveHtml_PostResponsiveHtmlPreview

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

envelopeId path required string

The envelope’s GUID.

Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec

Request Body

#/components/requestBodies/documentHtmlDefinition

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/envelopes/{envelopeId}/responsive_html_preview

Signinggroups 1 endpoints

POST /v2.1/accounts/{accountId}/signing_groups

Creates one or more signing groups.

Multiple signing groups can be created in one call. Only users with account administrator privileges can create signing groups.

An account can have a maximum of 50 signing groups. Each signing group can have a maximum of 50 group members.

Signing groups can be used by any account user.

operationId: SigningGroups_PostSigningGroups

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/signingGroupInformation

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/signing_groups

Templatecustomfields 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/custom_fields

Creates custom document fields in an existing template document.

operationId: CustomFields_PostTemplateCustomFields

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/templateCustomFields

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/custom_fields

Templatedocumentfields 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/documents/{documentId}/fields

Creates custom document fields in an existing template document.

operationId: DocumentFields_PostTemplateDocumentFields

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

documentId path required string

The unique ID of the document within the envelope.

Unlike other IDs in the eSignature API,
you specify the documentId yourself.
Typically the first document has the ID
1, the second document 2, and so on,
but you can use any numbering scheme
that fits within a 32-bit signed integer
(1 through 2147483647).

Tab objects have a documentId property
that specifies the document on which to place
the tab.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/documentFieldsInformation

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/documents/{documentId}/fields

Templatedocumentresponsivehtmlpreview 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/documents/{documentId}/responsive_html_preview

Creates a preview of the
responsive,
HTML version of a specific template document. This
method enables you to preview a PDF document
conversion to responsive HTML across device types
prior to sending.

The request body is a documentHtmlDefinition
object, which holds the responsive signing
parameters that define how to generate the HTML
version of the signing document.

operationId: ResponsiveHtml_PostTemplateDocumentResponsiveHtmlPreview

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

documentId path required string

The unique ID of the document within the envelope.

Unlike other IDs in the eSignature API,
you specify the documentId yourself.
Typically the first document has the ID
1, the second document 2, and so on,
but you can use any numbering scheme
that fits within a 32-bit signed integer
(1 through 2147483647).

Tab objects have a documentId property
that specifies the document on which to place
the tab.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/documentHtmlDefinition

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/documents/{documentId}/responsive_html_preview

Templatedocumenttabs 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/documents/{documentId}/tabs

Adds tabs to the document specified by documentId in the
template specified by templateId.

In the request body, you only need to specify the tabs that your
are adding. For example, to add a text
prefill tab,
your request body might look like this:

{
  "prefillTabs": {
    "textTabs": [
      {
        "value": "a prefill text tab",
        "pageNumber": "1",
        "documentId": "1",
        "xPosition": 316,
        "yPosition": 97
      }
    ]
  }
}
operationId: Tabs_PostTemplateDocumentTabs

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

documentId path required string

The unique ID of the document within the envelope.

Unlike other IDs in the eSignature API,
you specify the documentId yourself.
Typically the first document has the ID
1, the second document 2, and so on,
but you can use any numbering scheme
that fits within a 32-bit signed integer
(1 through 2147483647).

Tab objects have a documentId property
that specifies the document on which to place
the tab.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/templateTabs

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/documents/{documentId}/tabs

Templatelocks 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/lock

This method locks the specified template and sets the time until
the lock expires to prevent other users or recipients from
changing the template.

The response to this request includes a lockToken parameter
that you must use in the X-DocuSign-Edit header for
every PUT method (typically a method that updates a template)
while the template is locked.

If you do not provide the lockToken when accessing
a locked template, you will get the following
error:

{
   "errorCode": "EDIT_LOCK_NOT_LOCK_OWNER",
   "message": "The user is not the owner of the lock. The template is locked by another user or in another application"
}

The X-DocuSign-Edit header

The X-DocuSign-Edit header looks like this
and can be specified in either JSON or XML.

JSON

{
  "LockToken": "token-from-response",
  "LockDurationInSeconds": "600"
}

XML

<DocuSignEdit>
  <LockToken>token-from-response</LockToken>
  <LockDurationInSeconds>600</LockDurationInSeconds>
</DocuSignEdit>

In the actual HTTP header, you would remove the linebreaks:

X-DocuSign-Edit: {"LockToken": "token-from-response", "LockDurationInSeconds": "600" }
    or
X-DocuSign-Edit:<DocuSignEdit><LockToken>token-from-response</LockToken><LockDurationInSeconds>600</LockDurationInSeconds></DocuSignEdit>

Related topics

operationId: Lock_PostTemplateLock

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/lockRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/lock

Templaterecipienttabs 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/recipients/{recipientId}/tabs

Adds one or more tabs for a recipient.

operationId: Recipients_PostTemplateRecipientTabs

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

recipientId path required string

A local reference used to map
recipients to other objects, such as specific
document tabs.

A recipientId must be
either an integer or a GUID,
and the recipientId must be
unique within an envelope.

For example, many envelopes assign the first recipient
a recipientId of 1.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/templateTabs

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/recipients/{recipientId}/tabs

Templaterecipients 2 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/recipients

Adds one or more recipients to a template.

operationId: Recipients_PostTemplateRecipients

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

templateId path required string

The ID of the template.

resend_envelope query optional string

When true,
resends the envelope to the recipients
that you specify in the request body.
Use this parameter to resend the envelope
to a recipient
who deleted the original email notification.

Note: Correcting an envelope is a different process.
DocuSign always resends an envelope when you correct it,
regardless of the value that you enter here.

Request Body

#/components/requestBodies/templateRecipients

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/recipients
POST /v2.1/accounts/{accountId}/templates/{templateId}/views/recipient_preview

This method returns a URL for a template recipient preview in the DocuSign UI that you can embed in your application. You use this method to enable the sender to preview the recipients’ experience.

For more information, see Preview and Send.

operationId: Views_PostTemplateRecipientPreview

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/recipientPreviewRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/views/recipient_preview

Templateresponsivehtmlpreview 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/responsive_html_preview

Creates a preview of the
responsive,
HTML versions of all of the documents associated
with a template. This method enables you to
preview the PDF document conversions to responsive
HTML across device types prior to sending.

The request body is a documentHtmlDefinition
object, which holds the responsive signing
parameters that define how to generate the HTML
version of the documents.

operationId: ResponsiveHtml_PostTemplateResponsiveHtmlPreview

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/documentHtmlDefinition

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/responsive_html_preview

Templateviews 1 endpoints

POST /v2.1/accounts/{accountId}/templates/{templateId}/views/edit

This method returns a URL for starting an edit view of a template that uses the DocuSign Template UI. The URL can only be used once.

To prevent the user from accessing the sending account, set the returnUrl value in the request body.

Information security notice

If the returnUrl value is not set, this method provides full access to the sending account. If the account has administrative privileges, then this method also provides administrator access.

operationId: Views_PostTemplateEditView

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

templateId path required string

The ID of the template.

Request Body

#/components/requestBodies/returnUrlRequest

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates/{templateId}/views/edit

Templates 1 endpoints

POST /v2.1/accounts/{accountId}/templates

Creates one or more template definitions, using a multipart
request for each template.

Templates
help streamline the sending process when you frequently
send the same or similar documents, or send different documents
to the same group of people.

When you create a template, you define placeholder roles. Rather
than specifying a person, you specify a role that regularly
participates in a transaction that uses the template. Then, when
you create or send an envelope based on the template, you assign
actual recipients to the template roles. The recipients
automatically inherit all of the workflow that is defined for
that role in the template, such as the tabs and routing
information.

Template Email Subject Merge Fields

Placeholder roles have associated merge fields that personalize
the email notification that DocuSign sends. For example, the
template automatically personalizes the email message by adding
placeholders for the recipient’s name and email address within
the email subject line, based on the recipient’s role. When the
sender adds the name and email information for the recipient and
sends the envelope, the recipient information is automatically
merged into the appropriate fields in the email subject line.

Both the sender and the recipients will see the information in
the email subject line for any emails associated with the
template. This provides an easy way for senders to organize their
envelope emails without having to open an envelope to find out
who the recipient is.

Use the following placeholders
to insert a recipient’s name or
email address in the subject line

To insert a recipient’s name into the subject line,
use the [[<roleName>_UserName]] placeholder
in the emailSubject property when you create the
template:

To include a recipient’s name
or email address in the subject line,
use the following placeholders
in the emailSubject property:

  • [[<roleName>_UserName]]
  • [[<roleName>_Email]]

For example, if the role name is Signer 1,
you might set emailSubject to one of these strings:

  • "[[Signer 1_UserName]], Please sign this NDA"
  • "[[Signer 1_Email]], Please sign this NDA"

Note: The maximum length of the
subject line is 100 characters,
including any merged text.

Creating multiple templates

To create multiple templates, you provide a zip file of JSON
files. You can also use the Templates::ListTemplates method with
the is_download query parameter to download a zip file
containing your existing templates and use that as a guide. The
API supports both .zip and .gzip file formats as input.

You also need to set the
Content-Length,
Content-Type,
and
Content-Disposition
headers:

Content-Length: 71068
Content-Type: application/zip
Content-Disposition: file; filename="DocuSignTemplates_Nov_25_2019_20_40_21.zip"; fileExtension=.zip

Related topics

operationId: Templates_PostTemplates

Parameters

Name In Required Type Description
accountId path required string

(Required) The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/envelopeTemplate

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/templates

Usersignatures 1 endpoints

POST /v2.1/accounts/{accountId}/users/{userId}/signatures

Adds a user signature image and/or user initials image to the specified user.

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

The rules and processes associated with this are:

  • If Content-Type is set to application/json, then the default behavior for creating a default signature image, based on the name and a DocuSign font, is used.
  • If Content-Type is set to multipart/form-data, then the request must contain a first part with the user signature information, followed by parts that contain the images.

For each Image part, the Content-Disposition header has a “filename” value that is used to map to the signatureName and/or signatureInitials properties in the JSON to the image.

For example:
Content-Disposition: file; filename="Ron Test20121127083900"

If no matching image (by filename value) is found, then the image is not set. One, both, or neither of the signature and initials images can be set with this call.

The Content-Transfer-Encoding: base64 header, set in the header for the part containing the image, can be set to indicate that the images are formatted as base64 instead of as binary.

If successful, 200-OK is returned, and a JSON structure containing the signature information is provided, note that the signatureId can change with each API POST, PUT, or DELETE since the changes to the signature structure cause the current signature to be closed, and a new signature record to be created.

operationId: UserSignatures_PostUserSignatures

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

userId path required string

The ID of the user to access.

Note: Users can only access their own information. A user, even one with Admin rights, cannot access another user’s settings.

Request Body

#/components/requestBodies/userSignaturesInformation

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/users/{userId}/signatures

Users 1 endpoints

POST /v2.1/accounts/{accountId}/users

Adds new users to an account.

The body of this request is an array of newUsers objects. For each new user, you must provide at least the userName and email properties. The maximum number of users you can create in one request is 500 users.

The userSettings property specifies the actions users can perform. In the example below, Tal Mason will be able to send envelopes, and the activation email will be in French because the locale is set to fr.

POST /restapi/v2.1/accounts/{accountId}/users
Content-Type: application/json
{
  "newUsers": [
    {
      "userName": "Claire Horace",
      "email": "claire@example.com"
    },
    {
      "userName": "Tal Mason",
      "email": "talmason@example.com",
      "company": "TeleSel",
      "userSettings": {
        "locale": "fr",
        "canSendEnvelope": true
      }
    }
  ]
}

A successful response is a newUsers array with information about the newly created users. If there was a problem in creating a user, that user entry will contain an errorDetails property that describes what went wrong.

{
  "newUsers": [
    {
      "userId": "18f3be12-xxxx-xxxx-xxxx-883d8f9b8ade",
      "uri": "/users/18f3be12-xxxx-xxxx-xxxx-883d8f9b8ade",
      "email": "claire@example.com",
      "userName": "Claire Horace",
      "createdDateTime": "0001-01-01T08:00:00.0000000Z",
      "errorDetails": {
        "errorCode": "USER_ALREADY_EXISTS_IN_ACCOUNT",
        "message": "Username and email combination already exists for this account."
      }
    },
    {
      "userId": "be9899a3-xxxx-xxxx-xxxx-2c8dd7156e33",
      "uri": "/users/be9899a3-xxxx-xxxx-xxxx-2c8dd7156e33",
      "email": "talmason@example.com",
      "userName": "Tal Mason",
      "userStatus": "ActivationSent",
      "createdDateTime": "2020-05-26T23:25:30.7330000Z"
    }
  ]
}
operationId: Users_PostUsers

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

application/json
schema newUsersDefinition
Property Type Required
newUsers array optional
uri string optional
email string optional
title string optional
userId string optional
company string optional
isAdmin string optional
jobTitle string optional
lastName string optional
password string optional
userName string optional
userType string optional
firstName string optional
groupList array optional
users array optional
uri string optional
email string optional
userId string optional
userName string optional
userType string optional
accountId string optional
ipAddress string optional
userStatus string optional
accountName string optional
loginStatus string optional
errorDetails object optional
membershipId string optional
sendActivationEmail string optional
activationAccessCode string optional
groupId string optional
dsGroupId string optional
groupName string optional
groupType string optional
usersCount string optional
errorDetails object optional
message string optional
errorCode string optional
permissionProfileId string optional
lastLogin string optional
subscribe string optional
middleName string optional
suffixName string optional
userStatus string optional
countryCode string optional
homeAddress object optional
fax string optional
city string optional
phone string optional
country string optional
address1 string optional
address2 string optional
zipPlus4 string optional
postalCode string optional
stateOrProvince string optional
…24 more object optional

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/users

Workspaceitems 1 endpoints

POST /v2.1/accounts/{accountId}/workspaces/{workspaceId}/folders/{folderId}/files

This method adds a file to a workspace.

operationId: WorkspaceFile_PostWorkspaceFiles

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

folderId path required string

The ID of the folder.

workspaceId path required string

The ID of the workspace.

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/workspaces/{workspaceId}/folders/{folderId}/files

Workspaces 1 endpoints

POST /v2.1/accounts/{accountId}/workspaces

This method creates a new workspace.

operationId: Workspace_PostWorkspace

Parameters

Name In Required Type Description
accountId path required string

The external account number (int) or account ID GUID.

Request Body

#/components/requestBodies/workspace

Responses

201

Successful response.

400

Error encountered.

POST /v2.1/accounts/{accountId}/workspaces

Schemas

object AccountBrands
{
  "type": "object",
  "properties": {
    "brands": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/brand"
      },
      "description": "A list of brands."
    },
    "senderBrandIdDefault": {
      "type": "string",
      "description": "The brand that envelope senders see when a brand is not explicitly set."
    },
    "recipientBrandIdDefault": {
      "type": "string",
      "description": "The brand that envelope recipients see when a brand is not explicitly set."
    }
  },
  "x-ds-order": "10",
  "description": "The AccountBrands resource enables you to use account-level brands to customize the styles and text that recipients see.",
  "x-ms-summary": "The AccountBrands resource enables you to use account-level brands to customize the styles and text that recipients see.",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "brandsResponse"
}
object AccountConsumerDisclosures
{
  "type": "object",
  "properties": {
    "pdfId": {
      "type": "string",
      "description": "**Deprecated.** \n\nThe `pdfId` property in the consumer_disclosure PUT request is deprecated. For security reasons going forward, any value provided in the request packet must be ignored. "
    },
    "custom": {
      "type": "string",
      "description": "When **true,** indicates that the consumer disclosure is a custom disclosure. The default is **false.**"
    },
    "useBrand": {
      "type": "string",
      "description": "When **true,** specifies that the company name in the signing brand is used for the disclosure. Whenever an envelope is sent from the account that uses a signing brand with a specified company name, that value is used in email notifications and in the signing experience.  \n\nWhen **false** (default), or if the signing brand does not specify a company name, the account name is used instead.\n\n**Note:** This substitution only works if you use the default legal disclosure or if you apply the `companyName` to the merge fields in a custom ERSD. "
    },
    "esignText": {
      "type": "string",
      "description": "The template for the Electronic Record and Signature Disclosure, which contains placeholders for information such as the `companyName`. It also includes the HTML tags used for formatting.\n\n**Note:** If you are switching to or updating a custom disclosure, you can edit both the text and the HTML formatting."
    },
    "changeEmail": {
      "type": "string",
      "description": "If the customer needs to change their email address, this is the email address to which they should the change request.\n\nMaximum length: 100 characters."
    },
    "companyName": {
      "type": "string",
      "description": "Specifies the company name used in the disclosure. The default value is the account name.\n\nHowever, if your account uses signing brands that specify a company name, you can substitute the brand's company name by setting the `useBrand` property to **true.** Whenever an envelope is sent from the account that uses a signing brand with a specified `companyName`, that value is used in email notifications and in the signing experience.\n\n**Note:** This substitution only works if you use the default legal disclosure or if you apply the `companyName` to the merge fields in a custom ERSD. You must also set the value of the `useBrand` property to **true.**"
    },
    "enableEsign": {
      "type": "string",
      "description": "When **true** (default), indicates that eSign is enabled."
    },
    "companyPhone": {
      "type": "string",
      "description": "The phone number of the company associated with the consumer disclosure, as a free-formatted string."
    },
    "languageCode": {
      "type": "string",
      "description": "The code for the language version of the disclosure. The following languages are supported:\n\n- Arabic (`ar`)\n- Bulgarian (`bg`)\n- Czech (`cs`)\n- Chinese Simplified (`zh_CN`)\n- Chinese Traditional (`zh_TW`)\n- Croatian (`hr`)\n- Danish (`da`)\n- Dutch (`nl`)\n- English US (`en`)\n- English UK (`en_GB`)\n- Estonian (`et`)\n- Farsi (`fa`)\n- Finnish (`fi`)\n- French (`fr`)\n- French Canadian (`fr_CA`)\n- German (`de`)\n- Greek (`el`)\n- Hebrew (`he`)\n- Hindi (`hi`)\n- Hungarian (`hu`)\n- Bahasa Indonesian (`id`)\n- Italian (`it`)\n- Japanese (`ja`)\n- Korean (`ko`)\n- Latvian (`lv`)\n- Lithuanian (`lt`)\n- Bahasa Melayu (`ms`)\n- Norwegian (`no`)\n- Polish (`pl`)\n- Portuguese (`pt`)\n- Portuguese Brazil (`pt_BR`)\n- Romanian (`ro`)\n- Russian (`ru`)\n- Serbian (`sr`)\n- Slovak (`sk`)\n- Slovenian (`sl`)\n- Spanish (`es`)\n- Spanish Latin America (`es_MX`)\n- Swedish (`sv`)\n- Thai (`th`)\n- Turkish (`tr`)\n- Ukrainian (`uk`) \n- Vietnamese (`vi`)\n\nAdditionally, you can automatically detect the browser language being used by the viewer and display the disclosure in that language by setting the value to `browser`."
    },
    "withdrawCity": {
      "type": "string",
      "description": "Contains the city of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 50 characters. "
    },
    "withdrawEmail": {
      "type": "string",
      "description": "Contains the email address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 100 characters. "
    },
    "withdrawOther": {
      "type": "string",
      "description": "Contains any other information needed to withdraw consent.\n\nMaximum length: 255 characters.\n\nExample:\n\n`We do not need any other information from you to withdraw consent.`"
    },
    "withdrawPhone": {
      "type": "string",
      "description": "Contains the phone number that a customer can call to register consent withdrawal notification as a free-formatted string.\n\nMaximum length: 20 characters. "
    },
    "withdrawState": {
      "type": "string",
      "description": "Contains the state of the postal address to which a customer can send a consent withdrawal notification.\n\nExample: `PA`"
    },
    "accountEsignId": {
      "type": "string",
      "description": "The GUID of the account associated with the consumer disclosure."
    },
    "esignAgreement": {
      "type": "string",
      "description": "The final, assembled text of the Electronic Record and Signature Disclosure that includes the appropriate `companyName` and other specifics. It also includes the HTML tags used for formatting."
    },
    "withdrawByMail": {
      "type": "string",
      "description": "When **true,** indicates that the customer can withdraw consent by postal mail. The default is **false.**"
    },
    "allowCDWithdraw": {
      "type": "string",
      "description": "When **true,** indicates that the customer can withdraw their consent to the consumer disclosure when they decline to sign documents. If these recipients sign documents sent to them from your account in the future, they will be required to agree to the terms in the disclosure. The default value is **false.**\n**Note:** Only Admin users can change this setting."
    },
    "copyCostPerPage": {
      "type": "string",
      "description": "The cost per page if the customer requests paper copies.\n\nExample: \n\n`0.0000`"
    },
    "withdrawByEmail": {
      "type": "string",
      "description": "When **true** (default), indicates that the customer can withdraw consent by email."
    },
    "withdrawByPhone": {
      "type": "string",
      "description": "When **true,** indicates that the customer can withdraw consent by phone. The default is **false.**"
    },
    "changeEmailOther": {
      "type": "string",
      "description": "Other information about the requirements for the user to change their email address.\n\nMaximum length: 255 characters.\n\nExample: \n\n`We do not require any other information from you to change your email address.`"
    },
    "copyRequestEmail": {
      "type": "string",
      "description": "The email address to which the customer should send a request for copies of a document.\n\nMaximum length: 100 characters."
    },
    "mustAgreeToEsign": {
      "type": "string",
      "description": "When **true,** the  recipient must agree to the consumer disclosure. The value of this property is read-only. It is calculated based on the account setting `consumerDisclosureFrequency` and the user's actions."
    },
    "withdrawPostalCode": {
      "type": "string",
      "description": "Contains the postal code of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 20 characters. "
    },
    "withdrawAddressLine1": {
      "type": "string",
      "description": "Contains the first address line of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 100 characters. "
    },
    "withdrawAddressLine2": {
      "type": "string",
      "description": "Contains the second address line of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 100 characters. "
    },
    "withdrawConsequences": {
      "type": "string",
      "description": "Text indicating the consequences of withdrawing consent.\n\nMaximum length: 255 characters."
    },
    "allowCDWithdrawMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "copyFeeCollectionMethod": {
      "type": "string",
      "description": "Specifies the fee collection method for cases in which the customer requires paper copies of the document.\n\nMaximum length: 255 characters.\n\nExample: \n\n`We will bill you for any fees at that time, if any.`"
    },
    "useConsumerDisclosureWithinAccount": {
      "type": "string",
      "description": "When **true,** specifies that recipients in the same account as the sender must agree to eSign an Electronic Record and Signature Disclosure Statement."
    },
    "useConsumerDisclosureWithinAccountMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    }
  },
  "x-ds-order": "20",
  "description": "Details about account consumer disclosures.",
  "x-ms-summary": "Details about account consumer disclosures.",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "consumerDisclosure"
}
object AccountCustomFields
{
  "type": "object",
  "properties": {
    "listCustomFields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/listCustomField"
      },
      "description": "An array of list custom fields."
    },
    "textCustomFields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/textCustomField"
      },
      "description": "An array of text custom fields."
    }
  },
  "x-ds-order": "30",
  "description": "An `accountCustomField` is an envelope custom field that you set at the account level.\nApplying custom fields enables account administrators to group and manage envelopes.\n",
  "x-ms-summary": "An `accountCustomField` is an envelope custom field that you set at the account level.\nApplying custom fields enables account administrators to group and manage envelopes.\n",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "customFields"
}
object AccountPasswordRules
{
  "type": "object",
  "properties": {
    "expirePassword": {
      "type": "string",
      "description": "When **true,** passwords expire. The default value is `false`."
    },
    "questionsRequired": {
      "type": "string",
      "description": "The number of security questions required to confirm the user’s identity before the user can reset their password. The default value is `0`."
    },
    "expirePasswordDays": {
      "type": "string",
      "description": "The number of days before passwords expire. To use this property, the `expirePassword` property must be set to **true.**"
    },
    "lockoutDurationType": {
      "type": "string",
      "description": "The interval associated with the user lockout after a failed login attempt.\n\nPossible values are:\n\n- `minutes` (default)\n- `hours`\n- `days`"
    },
    "passwordIncludeDigit": {
      "type": "string",
      "description": "When **true,** passwords must include a digit. The default value is `false`."
    },
    "passwordStrengthType": {
      "type": "string",
      "description": "The type of password strength. Possible values are:\n\n- `basic`: The minimum password length is 6 characters with no other password requirements.\n- `medium`: The minimum password length is 7 characters. Passwords must also have one uppercase letter, one lowercase letter, and one number or special character.\n- `strong`: The minimum password length is 9 characters. Passwords must also have one uppercase letter, one lowercase letter, one number, and one special character.\n- `custom`: This option enables you to customize password requirements, including the following properties:\n\n   - `minimumPasswordLength`\n   - `minimumPasswordAgeDays`\n   - `passwordIncludeDigit`\n   - `passwordIncludeDigitOrSpecialCharacter`\n   - `passwordIncludeLowerCase`\n   - `passwordIncludeSpecialCharacter`\n   - `passwordIncludeUpperCase`\n   - `questionsRequired`"
    },
    "minimumPasswordLength": {
      "type": "string",
      "description": "The minimum number of characters in the password. This value must be a number between `6` and `15`. The default value is `6`."
    },
    "lockoutDurationMinutes": {
      "type": "string",
      "description": "The number of minutes a user is locked out of the system after three failed login attempts. The default value is `2`."
    },
    "minimumPasswordAgeDays": {
      "type": "string",
      "description": "The minimum number of days after a password is set before it can be changed. This value can be `0` or more days. The default value is `0`."
    },
    "passwordIncludeLowerCase": {
      "type": "string",
      "description": "When **true,** passwords must include a lowercase letter. The default value is `false`."
    },
    "passwordIncludeUpperCase": {
      "type": "string",
      "description": "When **true,** passwords must include an uppercase letter. The default value is `false`."
    },
    "questionsRequiredMetadata": {
      "$ref": "#/components/schemas/accountPasswordQuestionsRequired"
    },
    "expirePasswordDaysMetadata": {
      "$ref": "#/components/schemas/accountPasswordExpirePasswordDays"
    },
    "lockoutDurationTypeMetadata": {
      "$ref": "#/components/schemas/accountPasswordLockoutDurationType"
    },
    "passwordStrengthTypeMetadata": {
      "$ref": "#/components/schemas/accountPasswordStrengthType"
    },
    "minimumPasswordLengthMetadata": {
      "$ref": "#/components/schemas/accountMinimumPasswordLength"
    },
    "lockoutDurationMinutesMetadata": {
      "$ref": "#/components/schemas/accountPasswordLockoutDurationMinutes"
    },
    "minimumPasswordAgeDaysMetadata": {
      "$ref": "#/components/schemas/accountPasswordMinimumPasswordAgeDays"
    },
    "passwordIncludeSpecialCharacter": {
      "type": "string",
      "description": "When **true,** passwords must include a special character. The default value is `false`.\n\n**Note:** Passwords cannot include angle brackets (`<` `>`) or spaces."
    },
    "passwordIncludeDigitOrSpecialCharacter": {
      "type": "string",
      "description": "When **true,** passwords must include either a digit or a special character. The default value is `false`.\n\n**Note:** Passwords cannot include angle brackets (`<` `>`) or spaces."
    }
  },
  "x-ds-order": "190",
  "description": "Contains details about the password rules for an account.",
  "x-ms-summary": "Contains details about the password rules for an account.",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "accountPasswordRules"
}
object AccountPermissionProfiles
{
  "type": "object",
  "properties": {
    "users": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/userInformation"
      },
      "description": "A list of user objects containing information about the users who are associated with the account permission profile."
    },
    "settings": {
      "$ref": "#/components/schemas/accountRoleSettings"
    },
    "userCount": {
      "type": "string",
      "description": "The total number of users in the group associated with the account permission profile."
    },
    "modifiedDateTime": {
      "type": "string",
      "description": "The date and time when the permission profile was last modified."
    },
    "modifiedByUsername": {
      "type": "string",
      "description": "The username of the user who last modified the permission profile."
    },
    "permissionProfileId": {
      "type": "string",
      "description": "The ID of the permission profile.\n\nUse [AccountPermissionProfiles: list](https://raw.githubusercontent.com)\nto get a list of permission profiles and their IDs.\n\nYou can also download a CSV file of all permission profiles\nand their IDs from the **Settings > Permission Profiles** page\nof your eSignature account page.\n"
    },
    "permissionProfileName": {
      "type": "string",
      "description": "The name of the account permission profile. \n\nExample: `Account Administrator`"
    }
  },
  "x-ds-order": "70",
  "description": "The AccountPermissionProfiles resource provides methods that allow you to manage permission profiles for groups of account users.",
  "x-ms-summary": "The AccountPermissionProfiles resource provides methods that allow you to manage permission profiles for groups of account users.",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "permissionProfile"
}
object AccountSealProviders
{
  "type": "object",
  "properties": {
    "seals": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/sealIdentifier"
      },
      "description": "A list of electronic seals to apply to documents."
    }
  },
  "x-ds-order": "10",
  "description": "",
  "x-ms-summary": "",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "accountSeals"
}
object AccountSignatureProviders
{
  "type": "object",
  "properties": {
    "signatureProviders": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/accountSignatureProvider"
      },
      "description": "Names of electronic or digital signature providers that can be used."
    }
  },
  "x-ds-order": "30",
  "description": "This resource provides information on the Standards Based Signature providers that have been provisioned for an account.\n",
  "x-ms-summary": "This resource provides information on the Standards Based Signature providers that have been provisioned for an account.\n",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "accountSignatureProviders"
}
object AccountSignatures
{
  "type": "object",
  "properties": {
    "nrdsId": {
      "type": "string",
      "description": "The National Association of Realtors (NAR) membership ID for a user who is a realtor."
    },
    "status": {
      "type": "string",
      "description": "Indicates the envelope status. Valid values are:\n\n* sent - The envelope is sent to the recipients. \n* created - The envelope is saved as a draft and can be modified and sent later."
    },
    "imageType": {
      "type": "string",
      "description": "Specificies the type of image. Valid values:\n\n- `stamp_image`\n- `signature_image`\n- `initials_image`"
    },
    "isDefault": {
      "type": "string",
      "description": "Boolean that specifies whether the signature is the default signature for the user."
    },
    "stampType": {
      "type": "string",
      "description": "The type of stamp. Valid values are:\n\n- `signature`: A signature image. This is the default value.\n- `stamp`: A stamp image.\n- null"
    },
    "externalID": {
      "type": "string",
      "description": "Optionally specify an external identifier for the user's signature."
    },
    "nrdsStatus": {
      "type": "string",
      "description": "The realtor's NAR membership status. The value `active` verifies that the user is a current NAR member. Valid values are:\n\n- `Active`\n- `Inactive`\n- `Terminate`\n- `Provisional`\n- `Deceased`\n- `Suspend`\n- `Unknown`"
    },
    "customField": {
      "type": "string",
      "description": ""
    },
    "imageBase64": {
      "type": "string",
      "description": ""
    },
    "signatureId": {
      "type": "string",
      "description": "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."
    },
    "stampFormat": {
      "type": "string",
      "description": "The format of a stamp. Valid values are:\n\n- `NameHanko`: The stamp represents only the signer's name.\n- `NameDateHanko`: The stamp represents the signer's name and the date. "
    },
    "stampSizeMM": {
      "type": "string",
      "description": "The physical height of the stamp image (in millimeters) that the stamp vendor recommends for displaying the image in PDF documents."
    },
    "errorDetails": {
      "$ref": "#/components/schemas/errorDetails"
    },
    "nrdsLastName": {
      "type": "string",
      "description": "The realtor's last name."
    },
    "phoneticName": {
      "type": "string",
      "description": "The phonetic spelling of the `signatureName`."
    },
    "signatureFont": {
      "type": "string",
      "description": "The font type to use for the signature if the signature is not drawn. The following font styles  are supported. The quotes are to indicate that these values are strings, not `enums`.\n\n- `\"1_DocuSign\"`\n- `\"2_DocuSign\"`\n- `\"3_DocuSign\"`\n- `\"4_DocuSign\"`\n- `\"5_DocuSign\"`\n- `\"6_DocuSign\"`\n- `\"7_DocuSign\"`\n- `\"8_DocuSign\"`\n- `\"Mistral\"`\n- `\"Rage Italic\"`\n"
    },
    "signatureName": {
      "type": "string",
      "description": "Specifies the user's signature name."
    },
    "signatureType": {
      "type": "string",
      "description": "Specifies the type of signature."
    },
    "stampImageUri": {
      "type": "string",
      "description": "The URI for retrieving the image of the user's stamp."
    },
    "signatureUsers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/signatureUser"
      },
      "description": ""
    },
    "adoptedDateTime": {
      "type": "string",
      "description": "The UTC date and time when the user adopted the signature."
    },
    "createdDateTime": {
      "type": "string",
      "description": "The UTC DateTime when the item was created."
    },
    "signatureGroups": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/signatureGroup"
      },
      "description": ""
    },
    "signatureRights": {
      "type": "string",
      "description": "The rights that the user has to the signature. Valid values are:\n\n- `none`\n- `read`\n- `admin`"
    },
    "initialsImageUri": {
      "type": "string",
      "description": "The URI for retrieving the image of the user's initials."
    },
    "signatureImageUri": {
      "type": "string",
      "description": "An endpoint URI that you can use to retrieve the user's signature image."
    },
    "signatureInitials": {
      "type": "string",
      "description": "Specifies the user's signature in initials format."
    },
    "initials150ImageId": {
      "type": "string",
      "description": "The ID of the user's initials image."
    },
    "dateStampProperties": {
      "$ref": "#/components/schemas/dateStampProperties"
    },
    "signature150ImageId": {
      "type": "string",
      "description": "The ID of the user's signature image."
    },
    "lastModifiedDateTime": {
      "type": "string",
      "description": "The date and time that the item was last modified."
    },
    "disallowUserResizeStamp": {
      "type": "string",
      "description": "When **true,** users may not resize the stamp."
    }
  },
  "x-ds-order": "40",
  "description": "AccountSignatures represent stamps used to sign documents.",
  "x-ms-summary": "AccountSignatures represent stamps used to sign documents.",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "accountSignature"
}
string AccountSignaturesGetAccountSignatureImageResponse
{
  "type": "string",
  "format": "binary"
}
object AccountTabSettings
{
  "type": "object",
  "properties": {
    "allowTabOrder": {
      "type": "string",
      "description": "When **true,** account users can set a tab order for the signing process.\n\n**Note:** Only Admin users can change this setting."
    },
    "drawTabsEnabled": {
      "type": "string",
      "description": ""
    },
    "listTabsEnabled": {
      "type": "string",
      "description": "When **true,** list tabs are enabled."
    },
    "noteTabsEnabled": {
      "type": "string",
      "description": "When **true,** note tabs are enabled."
    },
    "tabScaleEnabled": {
      "type": "string",
      "description": "Reserved for DocuSign."
    },
    "textTabsEnabled": {
      "type": "string",
      "description": "When **true,** text tabs are enabled."
    },
    "drawTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "listTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "noteTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "radioTabsEnabled": {
      "type": "string",
      "description": "When **true,** radio button tabs are enabled."
    },
    "tabScaleMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "textTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "radioTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "tabLockingEnabled": {
      "type": "string",
      "description": "When **true,** tab locking is enabled.\n\n**Note:** Only Admin users can change this setting.\n"
    },
    "prefillTabsEnabled": {
      "type": "string",
      "description": ""
    },
    "tabLocationEnabled": {
      "type": "string",
      "description": "Reserved for DocuSign."
    },
    "tabLockingMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "checkboxTabsEnabled": {
      "type": "string",
      "description": "When **true,** checkbox tabs are enabled."
    },
    "prefillTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "tabDataLabelEnabled": {
      "type": "string",
      "description": "When **true,** [data\nlabels](https://support.docusign.com/en/videos/Data-Labels) are enabled.\n\n**Note:** Only Admin users can change this setting.\n"
    },
    "tabLocationMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "checkBoxTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "dataFieldSizeEnabled": {
      "type": "string",
      "description": "When **true,** setting character limits for input fields is enabled."
    },
    "numericalTabsEnabled": {
      "type": "string",
      "description": ""
    },
    "tabDataLabelMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "allowTabOrderMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "dataFieldRegexEnabled": {
      "type": "string",
      "description": "When **true,** regular expressions are enabled for tabs that contain data fields."
    },
    "dataFieldSizeMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "numericalTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "dataFieldRegexMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "calculatedFieldsEnabled": {
      "type": "string",
      "description": "When **true,** [calculated fields](https://support.docusign.com/s/document-item?bundleId=gbo1643332197980&topicId=crs1578456361259.html) are enabled for tabs."
    },
    "savingCustomTabsEnabled": {
      "type": "string",
      "description": "When **true,** saving custom tabs is enabled."
    },
    "sharedCustomTabsEnabled": {
      "type": "string",
      "description": "When **true,** shared custom tabs are enabled."
    },
    "calculatedFieldsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "savingCustomTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "sharedCustomTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "tabTextFormattingEnabled": {
      "type": "string",
      "description": "When **true,** text formatting (such as font type, font size,\nfont color, bold, italic, and underline) is enabled for tabs that\nsupport formatting.\n\n**Note:** Only Admin users can change this setting.\n"
    },
    "approveDeclineTabsEnabled": {
      "type": "string",
      "description": "When **true,** approve and decline tabs are enabled."
    },
    "firstLastEmailTabsEnabled": {
      "type": "string",
      "description": "Reserved for DocuSign."
    },
    "tabTextFormattingMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "approveDeclineTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "firstLastEmailTabsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "senderToChangeTabAssignmentsEnabled": {
      "type": "string",
      "description": "Reserved for DocuSign."
    },
    "senderToChangeTabAssignmentsMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    }
  },
  "x-ds-order": "100",
  "description": "Tab settings determine the tab types and tab functionality that are enabled for an account.",
  "x-ms-summary": "Tab settings determine the tab types and tab functionality that are enabled for an account.",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "tabAccountSettings"
}
object AccountWatermarks
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "A unique ID for the Salesforce object."
    },
    "font": {
      "type": "string",
      "description": "The font to be used for the tab value. Supported fonts include:\n\n- Default\n- Arial\n- ArialNarrow\n- Calibri\n- CourierNew\n- Garamond\n- Georgia\n- Helvetica\n- LucidaConsole\n- MSGothic\n- MSMincho\n- OCR-A\n- Tahoma\n- TimesNewRoman\n- Trebuchet\n- Verdana\n"
    },
    "enabled": {
      "type": "string",
      "description": ""
    },
    "fontSize": {
      "type": "string",
      "description": "The font size used for the information in the tab. Possible values are:\n\n- Size7\n- Size8\n- Size9\n- Size10\n- Size11\n- Size12\n- Size14\n- Size16\n- Size18\n- Size20\n- Size22\n- Size24\n- Size26\n- Size28\n- Size36\n- Size48\n- Size72"
    },
    "fontColor": {
      "type": "string",
      "description": "The font color to use for the information in the tab. Possible values are: \n\n- Black\n- BrightBlue\n- BrightRed\n- DarkGreen\n- DarkRed\n- Gold\n- Green\n- NavyBlue\n- Purple\n- White\n"
    },
    "imageBase64": {
      "type": "string",
      "description": ""
    },
    "displayAngle": {
      "type": "string",
      "description": ""
    },
    "transparency": {
      "type": "string",
      "description": ""
    },
    "watermarkText": {
      "type": "string",
      "description": ""
    }
  },
  "x-ds-order": "200",
  "description": "",
  "x-ms-summary": "",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "watermark"
}
object Accounts
{
  "type": "object",
  "properties": {
    "brands": {
      "$ref": "#/components/schemas/AccountBrands"
    },
    "planName": {
      "type": "string",
      "description": "The name of the billing plan used for the account.\n\nExamples: \n\n- `Personal - Annual`\n- `Unlimited Envelope Subscription - Annual Billing`"
    },
    "dssValues": {
      "type": "object",
      "description": "",
      "additionalProperties": {
        "type": "string"
      }
    },
    "canUpgrade": {
      "type": "string",
      "description": "When **true,** specifies that you can upgrade the account through the API. For GET methods, you must set the `include_metadata` query parameter to **true** for this property to appear in the response."
    },
    "seatsInUse": {
      "type": "string",
      "description": "The number of users currently active on the account."
    },
    "accountName": {
      "type": "string",
      "description": "The name on the account."
    },
    "createdDate": {
      "type": "string",
      "description": "The creation date of the account in UTC timedate format."
    },
    "isDowngrade": {
      "type": "string",
      "description": "When **true,** the account has been downgraded from a premium account type. Otherwise **false.**"
    },
    "planEndDate": {
      "type": "string",
      "description": "The date that the current plan will end."
    },
    "currencyCode": {
      "type": "string",
      "description": "The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code.\n"
    },
    "seatsAllowed": {
      "type": "string",
      "description": "The number of active users the account can have at one time."
    },
    "accountIdGuid": {
      "type": "string",
      "description": "The GUID associated with the account ID."
    },
    "currentPlanId": {
      "type": "string",
      "description": "ID of the plan used to create this account."
    },
    "paymentMethod": {
      "type": "string",
      "description": "The payment method used for the billing plan. Valid values are:\n\n- `NotSupported`\n- `CreditCard`\n- `PurchaseOrder`\n- `Premium`\n- `Freemium`\n- `FreeTrial`\n- `AppStore`\n- `DigitalExternal`\n- `DirectDebit`"
    },
    "planStartDate": {
      "type": "string",
      "description": "The date that the Account started using the current plan."
    },
    "billingProfile": {
      "type": "string",
      "description": "The type of billing method on the account. Valid values are: \n\n- `direct`\n- `web`"
    },
    "suspensionDate": {
      "type": "string",
      "description": "The date on which the account was suspended."
    },
    "accountSettings": {
      "$ref": "#/components/schemas/accountSettingsInformation"
    },
    "distributorCode": {
      "type": "string",
      "description": "The code that identifies the billing plan groups and plans for the new account."
    },
    "recipientDomains": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/recipientDomain"
      },
      "description": ""
    },
    "suspensionStatus": {
      "type": "string",
      "description": "Indicates whether the account is currently suspended."
    },
    "connectPermission": {
      "type": "string",
      "description": ""
    },
    "envelopeUnitPrice": {
      "type": "string",
      "description": "The price of sending an envelope, represented in the account's local currency."
    },
    "externalAccountId": {
      "type": "string",
      "description": "The Account ID displayed on the user's Account page."
    },
    "status21CFRPart11": {
      "type": "string",
      "description": "The status of the account content per (Title 21 CFR Part 11)[https://www.fda.gov/regulatory-information/search-fda-guidance-documents/part-11-electronic-records-electronic-signatures-scope-and-application]. This regulation defines the criteria under which electronic records and electronic signatures are considered trustworthy."
    },
    "docuSignLandingUrl": {
      "type": "string",
      "description": "URL of the landing page used to create the account."
    },
    "planClassification": {
      "type": "string",
      "description": "Identifies the type of plan. Examples include:\n\n- `business`\n- `corporate`\n- `enterprise` \n- `free`"
    },
    "displayApplianceUrl": {
      "type": "string",
      "description": ""
    },
    "useDisplayAppliance": {
      "type": "boolean",
      "description": ""
    },
    "billingPeriodEndDate": {
      "type": "string",
      "description": "The billing period end date in UTC timedate format."
    },
    "allowTransactionRooms": {
      "type": "string",
      "description": "When **true,** the transaction rooms feature exposed through the Workspaces API is enabled."
    },
    "billingPeriodStartDate": {
      "type": "string",
      "description": "The billing period start date in UTC timedate format."
    },
    "envelopeSendingBlocked": {
      "type": "string",
      "description": "When **true,** the ability to send envelopes is blocked. When **false,** envelopes can be sent."
    },
    "displayApplianceStartUrl": {
      "type": "string",
      "description": ""
    },
    "billingPeriodDaysRemaining": {
      "type": "string",
      "description": "Number of days remaining in the current billing period."
    },
    "billingPeriodEnvelopesSent": {
      "type": "string",
      "description": "The number of envelopes that have been sent in the current billing period."
    },
    "billingPeriodEnvelopesAllowed": {
      "type": "string",
      "description": "The number of envelopes that can be sent in the current billing period (can be unlimited)."
    },
    "forgottenPasswordQuestionsCount": {
      "type": "string",
      "description": " A complex element that contains up to four Question/Answer pairs for forgotten password information for a user."
    }
  },
  "x-ds-order": "1",
  "description": "Account management",
  "x-ms-summary": "Account management",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "accountInformation"
}
string ApiRequestLogGetRequestLogResponse
{
  "type": "string",
  "format": "binary"
}
string AttachmentsGetAttachmentResponse
{
  "type": "string",
  "format": "binary"
}
object Authorizations
{
  "type": "object",
  "properties": {
    "created": {
      "type": "string",
      "description": "The UTC DateTime when the workspace user authorization was created."
    },
    "endDate": {
      "type": "string",
      "description": ""
    },
    "modified": {
      "type": "string",
      "description": ""
    },
    "agentUser": {
      "$ref": "#/components/schemas/authorizationUser"
    },
    "createdBy": {
      "type": "string",
      "description": ""
    },
    "startDate": {
      "type": "string",
      "description": ""
    },
    "modifiedBy": {
      "type": "string",
      "description": "The user ID (GUID) of the user who last modified this user record. This property is read-only."
    },
    "permission": {
      "type": "string",
      "description": ""
    },
    "principalUser": {
      "$ref": "#/components/schemas/authorizationUser"
    },
    "authorizationId": {
      "type": "string",
      "description": ""
    }
  },
  "x-ds-order": "100",
  "description": "Authorizations allow you to share access between users on an account.",
  "x-ms-summary": "Authorizations allow you to share access between users on an account.",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "userAuthorization"
}
object BCCEmailArchive
{
  "type": "object",
  "properties": {
    "nextUri": {
      "type": "string",
      "description": "The URI for the next chunk of records based on the search request. It is `null` if this is the last set of results for the search. "
    },
    "endPosition": {
      "type": "string",
      "description": "The last index position in the result set. "
    },
    "previousUri": {
      "type": "string",
      "description": "The URI for the prior chunk of records based on the search request. It is `null` if this is the first set of results for the search. "
    },
    "totalSetSize": {
      "type": "string",
      "description": "The total number of items in the result set. This value is always greater than or equal to the value of `resultSetSize`."
    },
    "resultSetSize": {
      "type": "string",
      "description": "The number of results in this response. Because you can filter which entries are included in the response, this value is always less than or equal to the `totalSetSize`."
    },
    "startPosition": {
      "type": "string",
      "description": "The starting index position of the current result set."
    },
    "bccEmailArchiveHistory": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/bccEmailArchiveHistory"
      },
      "description": "A list of changes to the BCC email archive configuration."
    }
  },
  "x-ds-order": "120",
  "description": "The `EmailArchive` resource provides methods for managing your email archive configuration, which consists of the BCC email address or addresses that you want to use to archive DocuSign emails. Each account can use up to five BCC email addresses for archiving purposes.\n",
  "x-ms-summary": "The `EmailArchive` resource provides methods for managing your email archive configuration, which consists of the BCC email address or addresses that you want to use to archive DocuSign emails. Each account can use up to five BCC email addresses for archiving purposes.\n",
  "x-ds-category": "EmailArchive",
  "x-ds-definition-name": "bccEmailArchiveHistoryList"
}
object BillingPlans
{
  "type": "object",
  "properties": {
    "billingPlan": {
      "$ref": "#/components/schemas/accountBillingPlan"
    },
    "taxExemptId": {
      "type": "string",
      "description": ""
    },
    "paymentMethod": {
      "type": "string",
      "description": "The payment method used for the billing plan. Valid values are:\n\n- `NotSupported`\n- `CreditCard`\n- `PurchaseOrder`\n- `Premium`\n- `Freemium`\n- `FreeTrial`\n- `AppStore`\n- `DigitalExternal`\n- `DirectDebit`"
    },
    "billingAddress": {
      "$ref": "#/components/schemas/accountAddress"
    },
    "successorPlans": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/billingPlan"
      },
      "description": "A list of billing plans that the current billing plan can be rolled into."
    },
    "entityInformation": {
      "$ref": "#/components/schemas/billingEntityInformationResponse"
    },
    "referralInformation": {
      "$ref": "#/components/schemas/referralInformation"
    },
    "creditCardInformation": {
      "$ref": "#/components/schemas/creditCardInformation"
    },
    "downgradePlanInformation": {
      "$ref": "#/components/schemas/downgradePlanUpdateResponse"
    },
    "downgradeRequestInformation": {
      "$ref": "#/components/schemas/downgradeRequestInformation"
    },
    "paymentProcessorInformation": {
      "$ref": "#/components/schemas/paymentProcessorInformation"
    },
    "directDebitProcessorInformation": {
      "$ref": "#/components/schemas/directDebitProcessorInformation"
    },
    "billingAddressIsCreditCardAddress": {
      "type": "string",
      "description": "When **true,** the credit card address information is the same as that returned as the billing address. If false, then the billing address is considered a billing contact address, and the credit card address can be different."
    }
  },
  "x-ds-order": "10",
  "description": "Billing plans",
  "x-ms-summary": "Billing plans",
  "x-ds-category": "Billing",
  "x-ds-definition-name": "accountBillingPlanResponse"
}
string BrandLogoGetBrandLogoResponse
{
  "type": "string",
  "format": "binary"
}
string BrandLogoPutBrandLogoRequest
{
  "type": "string",
  "format": "binary"
}
object BrandResourcesPutBrandResourcesRequest
{
  "type": "object",
  "required": [
    "file.xml"
  ],
  "properties": {
    "file.xml": {
      "type": "string",
      "format": "binary",
      "description": "Brand resource XML file."
    }
  }
}
object BulkSend
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the bulk send list."
    },
    "listId": {
      "type": "string",
      "description": "The GUID of the bulk send list. This property is created after you post a new bulk send list."
    },
    "bulkCopies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/bulkSendingCopy"
      },
      "description": "An array of `bulkCopy` objects. Each object represents an instance or copy of an envelope and contains details such as the recipient, custom fields, tabs, and other information."
    }
  },
  "x-ds-order": "120",
  "description": "The bulk send list resource provides methods that enable you to create and manage bulk sending lists, which you can use to send multiple copies of an envelope in a single batch. \n\n**Note:** The Bulk Send feature is only available on Business Pro and Enterprise Pro plans.",
  "x-ms-summary": "The bulk send list resource provides methods that enable you to create and manage bulk sending lists, which you can use to send multiple copies of an envelope in a single batch. \n\n**Note:** The Bulk Send feature is only available on Business Pro and Enterprise Pro plans.",
  "x-ds-category": "BulkEnvelopes",
  "x-ds-definition-name": "bulkSendingList"
}
object ChunkedUploads
{
  "type": "object",
  "properties": {
    "checksum": {
      "type": "string",
      "description": "A 64-byte, Secure Hash Algorithm 256 (SHA256) checksum that the caller computes across the entirety of the original content that has been uploaded to the chunked upload. DocuSign compares this value to its own computation. If the two values are not equal, the original content and received content are not the same and the commit action is refused."
    },
    "committed": {
      "type": "string",
      "description": "When **true,** the chunked upload has been committed. A committed chunked upload can no longer receive any additional parts and is ready for use within other API requests. "
    },
    "totalSize": {
      "type": "string",
      "description": "The total size of the parts of the chunked upload.\n\n**Note:** When a chunked upload is used as an envelope document, it is subject to the PDF size limit (25 MB) and page count limit that apply to all envelope documents."
    },
    "maxTotalSize": {
      "type": "string",
      "description": "The maximum total size allowed for a chunked upload. This value is configured per DocuSign environment, account, or integrator. The default value is 50 MB."
    },
    "chunkedUploadId": {
      "type": "string",
      "description": "The ID of the chunked upload. "
    },
    "chunkedUploadUri": {
      "type": "string",
      "description": "The URI that you use to reference the chunked upload in other API requests, such as envelope document and envelope attachment requests. "
    },
    "chunkedUploadParts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/chunkedUploadPart"
      },
      "description": "A list of the parts that compose the chunked upload, including their byte sizes. The list must be contiguous before you can commit the chunked upload."
    },
    "expirationDateTime": {
      "type": "string",
      "description": "The UTC time at which the chunked upload expires and is no longer addressable. \n\n**Note:** The length of time before expiration is configurable, and begins when you initiate the chunked upload. You must fully upload and use a chunked upload within this time. The default value for this duration is 20 minutes."
    },
    "maxChunkedUploadParts": {
      "type": "string",
      "description": "The maximum number of parts allowed for a chunked upload. This value is configurable per DocuSign environment, account, or integrator. The default value is 128. The maximum possible value is 256.  \n"
    }
  },
  "x-ds-order": "150",
  "description": "The ChunkedUploads resource provides methods to complete integrity checks, and to add, commit, retrieve, initiate and delete chunked uploads.",
  "x-ms-summary": "The ChunkedUploads resource provides methods to complete integrity checks, and to add, commit, retrieve, initiate and delete chunked uploads.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "chunkedUploadResponse"
}
object CloudStorage
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "A unique ID for the Salesforce object."
    },
    "name": {
      "type": "string",
      "description": "The name of the cloud storage item."
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/externalFile"
      },
      "description": "A list of objects that contain information about a file or folder in cloud storage."
    },
    "nextUri": {
      "type": "string",
      "description": "The URI for the next chunk of records based on the search request. It is `null` if this is the last set of results for the search. "
    },
    "endPosition": {
      "type": "string",
      "description": "The last index position in the result set. "
    },
    "previousUri": {
      "type": "string",
      "description": "The URI for the prior chunk of records based on the search request. It is `null` if this is the first set of results for the search. "
    },
    "errorDetails": {
      "$ref": "#/components/schemas/externalDocServiceErrorDetails"
    },
    "totalSetSize": {
      "type": "string",
      "description": "The total number of items in the result set. This value is always greater than or equal to the value of `resultSetSize`."
    },
    "resultSetSize": {
      "type": "string",
      "description": "The number of results in this response. Because you can filter which entries are included in the response, this value is always less than or equal to the `totalSetSize`."
    },
    "startPosition": {
      "type": "string",
      "description": "The starting index position of the current result set."
    }
  },
  "x-ds-order": "10",
  "description": "Cloud storage",
  "x-ms-summary": "Cloud storage",
  "x-ds-category": "CloudStorage",
  "x-ds-definition-name": "externalFolder"
}
object CloudStorageProviders
{
  "type": "object",
  "properties": {
    "storageProviders": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudStorageProvider"
      },
      "description": "An Array containing the storage providers associated with the user."
    }
  },
  "x-ds-order": "20",
  "description": "The CloudStorageProviders resource provides methods that allow you to manage the cloud storage providers associate with an account.",
  "x-ms-summary": "The CloudStorageProviders resource provides methods that allow you to manage the cloud storage providers associate with an account.",
  "x-ds-category": "CloudStorage",
  "x-ds-definition-name": "cloudStorageProviders"
}
object Comments
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "A unique ID for the Salesforce object."
    },
    "hmac": {
      "type": "string",
      "description": "Reserved for DocuSign."
    },
    "read": {
      "type": "boolean",
      "description": "Indicates if the comment has been read by the target recipient of the comment."
    },
    "text": {
      "type": "string",
      "description": "Specifies the text that is shown in the dropdown list. "
    },
    "tabId": {
      "type": "string",
      "description": "The unique identifier for the tab."
    },
    "subject": {
      "type": "string",
      "description": ""
    },
    "mentions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An array of userIds that are mentioned directly in the body of a comment."
    },
    "threadId": {
      "type": "string",
      "description": "The unique identifier for the comment thread."
    },
    "timestamp": {
      "type": "string",
      "description": ""
    },
    "visibleTo": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": ""
    },
    "envelopeId": {
      "type": "string",
      "description": "The envelope ID of the envelope status that failed to post."
    },
    "sentByEmail": {
      "type": "string",
      "description": ""
    },
    "sentByUserId": {
      "type": "string",
      "description": ""
    },
    "sentByImageId": {
      "type": "string",
      "description": "Reserved for DocuSign."
    },
    "sentByFullName": {
      "type": "string",
      "description": ""
    },
    "sentByInitials": {
      "type": "string",
      "description": ""
    },
    "signingGroupId": {
      "type": "string",
      "description": "The ID of the [signing group](https://support.docusign.com/s/document-item?bundleId=gav1643676262430&topicId=zgn1578456447934.html).\n"
    },
    "signingGroupName": {
      "type": "string",
      "description": "Optional. The name of the signing group. \n\nMaximum Length: 100 characters. "
    },
    "sentByRecipientId": {
      "type": "string",
      "description": ""
    },
    "threadOriginatorId": {
      "type": "string",
      "description": "The userId of the user who created the thread."
    },
    "timeStampFormatted": {
      "type": "string",
      "description": ""
    }
  },
  "x-ds-order": "160",
  "description": "Details about envelope comments.",
  "x-ms-summary": "Details about envelope comments.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "comment"
}
string CommentsGetCommentsTranscriptResponse
{
  "type": "string",
  "format": "binary"
}
object ConnectConfigurations
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the Connect configuration. The name helps identify the configuration in the list."
    },
    "events": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A comma-separated list of envelope-level event statuses that will trigger Connect to send updates to the endpoint specified in the `urlToPublishTo` property.\n\nSet this property when you are using the [JSON SIM event model](https://raw.githubusercontent.com). If you are instead using any of [the legacy event message formats](https://raw.githubusercontent.com), set either the `envelopeEvents` property or the `recipientEvents` property.\n\nThe [possible event statuses](/platform/webhooks/connect/improved-json-sim-event-model/#eventreference) are:\n\n* `envelope-created`\n* `envelope-sent`\n* `envelope-resent`\n* `envelope-delivered`\n* `envelope-completed`\n* `envelope-declined`\n* `envelope-voided`\n* `recipient-authenticationfailed`\n* `recipient-autoresponded`\n* `recipient-declined`\n* `recipient-delivered`\n* `recipient-completed`\n* `recipient-sent`\n* `recipient-resent`\n* `template-created`\n* `template-modified`\n* `template-deleted`\n* `envelope-corrected`\n* `envelope-purge`\n* `envelope-deleted`\n* `envelope-discard`\n* `recipient-reassign`\n* `recipient-delegate`\n* `recipient-finish-later`\n* `click-agreed`\n* `click-declined`\n"
    },
    "userIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A comma-separated list of user IDs. This sets the users associated with the tracked envelope and recipient events. When a tracked event occurs for a set user, the a notification message is sent to your Connect listener.\n\nBy default, the users will be included in the configuration. If you want to exclude the users, set the `allUsersExcept` property to **true.**\n\n**Note:** If `allUsers` is set to `false`, then you must provide a list of user IDs."
    },
    "allUsers": {
      "type": "string",
      "description": "When **true,** the tracked envelope and recipient events for all users, including users that are added a later time, are sent through Connect. The default value is **false.**\n\n**Note:** If this property is **false,** make sure you set the `userIds` property to a non-empty array of user IDs."
    },
    "groupIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": ""
    },
    "password": {
      "type": "string",
      "description": "The user's encrypted password hash."
    },
    "userName": {
      "type": "string",
      "description": "The name of the user."
    },
    "connectId": {
      "type": "string",
      "description": "The DocuSign-generated ID for the Connect configuration. This property is read-only."
    },
    "enableLog": {
      "type": "string",
      "description": "When **true,** Connect logging is turned on. DocuSign recommends that you enable this functionality to help troubleshoot any issues. \n\nYou can have a maximum of 100 active logs in your account. You can view the entries in active logs in the **Logs** tab in the Connect console."
    },
    "eventData": {
      "$ref": "#/components/schemas/connectEventData"
    },
    "sfObjects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/connectSalesforceObject"
      },
      "description": "An array of Salesforce objects."
    },
    "disabledBy": {
      "type": "string",
      "description": ""
    },
    "includeHMAC": {
      "type": "string",
      "description": "When **true,** a Hash-based Message Authentication Code (HMAC) signature is included in messages sent through Connect.\nFor more information, see [Using HMAC Security with DocuSign Connect](https://raw.githubusercontent.com)."
    },
    "deliveryMode": {
      "type": "string",
      "description": ""
    },
    "includeOAuth": {
      "type": "string",
      "description": ""
    },
    "soapNamespace": {
      "type": "string",
      "description": "The namespace of the SOAP interface.\n\n**Note:** If `useSoapInterface` is set to **true,** you must set this value."
    },
    "allUsersExcept": {
      "type": "string",
      "description": "This flag allows you to toggle between including and excluding specified users from the configuration. When **false,** the users corresponding to the IDs in `userIds` will be included in the configuration. Conversely, when **true,** the users will be excluded from the configuration. The default value is **false.**"
    },
    "envelopeEvents": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An array of strings that lists envelope-related events to track through Connect. The possible event values are: \n\n- `sent`: An envelope has the status `sent` in the following scenarios:\n   - When the envelope has been sent to recipients.\n   - When using remote signing, this event is triggered when the email notification with a link to the documents is sent to at least one recipient.\n   - When using embedded signing, this event is triggered when the link is ready for the recipient to sign the envelope.\n\n   An envelope remains in this state until all recipients have viewed or taken action on the envelope.\n\n- `delivered`: This status is triggered when all recipients have opened the envelope, selected the **Continue** button in the interface, and viewed the documents.\n- `completed`: This status is triggered when all recipients have completed their assigned actions on an envelope.\n- `declined`: This status is triggered when a recipient has declined to sign the envelope.\n- `voided`: The voided status indicates that the sender has voided the envelope.\n\n**Note:** In previous versions of the API, this value was a single comma-separated string.\n"
    },
    "senderOverride": {
      "type": "string",
      "description": ""
    },
    "urlToPublishTo": {
      "type": "string",
      "description": "The endpoint to which Connect should send webhook notification messages via an HTTPS POST request. The URL must start with `https`. The customer's web server must use an SSL/TLS certificate whose CA is in the Microsoft list of trusted CAs. Self-signed certificates are not acceptable, but you can use free certificates from Let's Encrypt.\n\nThe maximum length of this property is 4096 bytes."
    },
    "recipientEvents": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An array of strings that lists of recipient-related events that trigger a notification\nto your webhook Connect listener. The possible event values are:\n\n- `sent`: If a recipient type is set to receive an email notification to take action on an envelope, the recipient status is set to `sent` upon delivery of the email.\n- `delivered`: The recipient has viewed the documents in the envelope. This recipient status does not indicate email delivery of the documents in the envelope.\n- `completed`: The recipient has completed their assigned actions on an envelope.\n- `declined`: The recipient has declined to sign a document in the envelope.\n- `authenticationfailed`: At least one signer has failed the authentication check on the document. If this occurs, you have two options:\n   - Send a reminder to the recipients, which provides the signer with another chance to access and pass the authentication.\n   - Correct the document and modify the authentication setting.\n- `autoresponded`: The recipient's email system sent back an automatic response. This status is only used when **Send-on-behalf-of** is turned off for the account.\n\n**Note:** In previous versions of the API, this value was a single comma-separated string.\n"
    },
    "externalFolderId": {
      "type": "string",
      "description": "The ID of an external folder."
    },
    "includeDocuments": {
      "type": "string",
      "description": "When **true,**\nConnect attaches the envelope documents\nto the payloads of your event notification messages.\n\n**Note:** Consider resources and scaling when adding documents\nto your event payloads. Documents attached to these messages\nare sent as base64 strings,\nwhich are larger than binary document data.\nThis can significantly increase your payload size,\nopening up windows for failure.\nIf you include documents,\nyou must build your application to scale in these situations."
    },
    "requireMutualTls": {
      "type": "string",
      "description": "When **true,** [Mutual TLS](https://raw.githubusercontent.com) authentication is enabled."
    },
    "useSoapInterface": {
      "type": "string",
      "description": "When **true,** indicates that the `urlToPublishTo` property contains a SOAP endpoint."
    },
    "configurationType": {
      "type": "string",
      "description": "If you are using merge fields, this property specifies the type of the merge field. The only supported value is `salesforce`."
    },
    "integratorManaged": {
      "type": "string",
      "description": ""
    },
    "salesforceAuthcode": {
      "type": "string",
      "description": ""
    },
    "externalFolderLabel": {
      "type": "string",
      "description": "The label for an external folder."
    },
    "allowEnvelopePublish": {
      "type": "string",
      "description": "When **true,** data is sent to the `urlToPublishTo` web address. The default value for this property is **false,** which will stop sending data while maintaining the Connect configuration information."
    },
    "salesforceApiVersion": {
      "type": "string",
      "description": "The version of the Salesforce API that you are using."
    },
    "includeCertSoapHeader": {
      "type": "string",
      "description": "When **true,** a certificate for a SOAP header is included in messages sent through Connect."
    },
    "includeDocumentFields": {
      "type": "string",
      "description": "When **true,** the Document Fields associated with the envelope's documents are included in the notification messages. Document Fields are optional custom name-value pairs added to documents using the API. "
    },
    "salesforceCallBackUrl": {
      "type": "string",
      "description": ""
    },
    "senderSelectableItems": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "This property sets the items that are available for selection when adding or editing Connect objects. "
    },
    "allowSalesforcePublish": {
      "type": "string",
      "description": "When **true,** DocuSign sends data to the designated Salesforce account through Connect. The default value is **true.**"
    },
    "requiresAcknowledgement": {
      "type": "string",
      "description": "When **true,** event delivery acknowledgements are enabled for your Connect configuration.\n\nDocuSign Connect awaits a valid 200 response from your application acknowledging that it received a message. If you do not acknowledge receiving an event notification message within 100 seconds, DocuSign treats the message as a failure and places it into a failure queue. It is imperative that you acknowledge successful receipt of Connect events as they occur by sending a 200 event back.\n\n#### When **true** and Send Individual Messages (SIM) mode is activated\n\nIf the HTTP status response to a notification message is not in the range of 200-299,\nthen the message delivery failed, and the configuration is marked as down.\n\nThe message will be queued and retried once per day.\nWhile a Connect configuration is marked down, subsequent notifications will not be tried. Instead they will be immediately queued with the reason `Pending`.\nWhen a message succeeds, all queued messages for the configuration will be tried immediately, in order.\n\nThere is a maximum of ten retries. Alternately, you can use **Republish Connect Information** to manually republish the notification.\n\n#### When **true** and SIM mode is not activated\n\nIf the HTTP Status response to a notification message is not in the range of 200-299,  then the message delivery failed, and the message is queued.\n\nThe message will be retried after at least a day the next time a subsequent message is successfully sent to this configuration (subscription).  Subsequent notifications will be tried when they occur.\nThere is a maximum of ten retries. Alternately, you can use **Republish Connect Information** to manually republish the notification.\n\n#### When **false**\n\nWhen `requiresAcknowledgement` is set to **false** and you do not acknowledge receiving an event notification message within 100 seconds, DocuSign treats the message as a failure and determines that the server is unavailable. It does not retry to send the notification message, and you must handle the failure manually.\n\n"
    },
    "includeEnvelopeVoidReason": {
      "type": "string",
      "description": "When **true,** Connect will include the voidedReason for voided envelopes."
    },
    "includeTimeZoneInformation": {
      "type": "string",
      "description": "When **true,** Connect will include the envelope time zone information."
    },
    "includeCertificateOfCompletion": {
      "type": "string",
      "description": "When **true,** the Connect Service includes the Certificate of Completion with completed envelopes. "
    },
    "signMessageWithX509Certificate": {
      "type": "string",
      "description": "When **true,** Mutual TLS will be enabled for notifications. Mutual TLS must be initiated by the listener (the customer's web server) during the TLS handshake protocol. "
    },
    "includeSenderAccountasCustomField": {
      "type": "string",
      "description": "When **true,** Connect will include the sender account as Custom Field in the data."
    },
    "salesforceDocumentsAsContentFiles": {
      "type": "string",
      "description": "When **true,** DocuSign can use documents in your Salesforce account for sending and signing."
    }
  },
  "x-ds-order": "10",
  "description": "Contains information about a DocuSign Connect configuration.",
  "x-ms-summary": "Contains information about a DocuSign Connect configuration.",
  "x-ds-category": "Connect",
  "x-ds-definition-name": "connectCustomConfiguration"
}
object ConnectEvents
{
  "type": "object",
  "properties": {
    "logs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/connectLog"
      },
      "description": "A list of Connect general logs."
    },
    "type": {
      "type": "string",
      "description": "The type of this tab. Values are:\n\n- `Approve`\n- `CheckBox`\n- `Company`\n- `Date`\n- `DateSigned`\n- `Decline`\n- `Email`\n- `EmailAddress`\n- `EnvelopeId`\n- `FirstName`\n- `Formula`\n- `FullName`\n- `InitialHere`\n- `InitialHereOptional`\n- `LastName`\n- `List`\n- `Note`\n- `Number`\n- `Radio`\n- `SignerAttachment`\n- `SignHere`\n- `SignHereOptional`\n- `Ssn`\n- `Text`\n- `Title`\n- `Zip5`\n- `Zip5Dash4`\n"
    },
    "failures": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/connectLog"
      },
      "description": "A list of Connect failure logs."
    },
    "totalRecords": {
      "type": "string",
      "description": "The count of records in the log list."
    }
  },
  "x-ds-order": "20",
  "description": "Connect event logging information. This object contains sections for regular Connect logs and for Connect failures. ",
  "x-ms-summary": "Connect event logging information. This object contains sections for regular Connect logs and for Connect failures. ",
  "x-ds-category": "Connect",
  "x-ds-definition-name": "connectLogs"
}
object ConnectSecret
{
  "type": "object",
  "properties": {
    "logs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/connectLog"
      },
      "description": "A list of Connect general logs."
    },
    "type": {
      "type": "string",
      "description": "The type of this tab. Values are:\n\n- `Approve`\n- `CheckBox`\n- `Company`\n- `Date`\n- `DateSigned`\n- `Decline`\n- `Email`\n- `EmailAddress`\n- `EnvelopeId`\n- `FirstName`\n- `Formula`\n- `FullName`\n- `InitialHere`\n- `InitialHereOptional`\n- `LastName`\n- `List`\n- `Note`\n- `Number`\n- `Radio`\n- `SignerAttachment`\n- `SignHere`\n- `SignHereOptional`\n- `Ssn`\n- `Text`\n- `Title`\n- `Zip5`\n- `Zip5Dash4`\n"
    },
    "failures": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/connectLog"
      },
      "description": "A list of Connect failure logs."
    },
    "totalRecords": {
      "type": "string",
      "description": "The count of records in the log list."
    }
  },
  "x-ds-order": "50",
  "description": "",
  "x-ms-summary": "",
  "x-ds-category": "Connect",
  "x-ds-definition-name": "connectLogs"
}
object Contacts
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the contact."
    },
    "emails": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The email address or addresses associated with the contact."
    },
    "shared": {
      "type": "string",
      "description": "When **true,** the contact is shared. For more information, see [Shared Contacts](https://support.docusign.com/s/document-item?bundleId=jux1643235969954&topicId=twh1578456324503.html).\n\n**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:\n\n- Sending an envelope by using SMS\n- Using phone authentication\n\nYou must ask the user who added the contact for the phone number and then manually enter it into the authentication box."
    },
    "isOwner": {
      "type": "boolean",
      "description": "When **true,** the current user is the owner of the contact."
    },
    "contactId": {
      "type": "string",
      "description": "The ID of a contact person in the account's address book."
    },
    "contactUri": {
      "type": "string",
      "description": "The URI for retrieving information about the contact."
    },
    "errorDetails": {
      "$ref": "#/components/schemas/errorDetails"
    },
    "organization": {
      "type": "string",
      "description": "The name of the contact's organization."
    },
    "signingGroup": {
      "type": "string",
      "description": "If the contact belongs to a signing group, this property contains the `signingGroupId`."
    },
    "cloudProvider": {
      "type": "string",
      "description": "The cloud service that provided the contact. Valid values are:\n\n- `rooms`\n- `docusignCore` (default)\n\n<!-- Future:\n\n- `Box`\n- `GoogleDrive`\n- `Dropbox`\n- `SalesForce`\n- `SkyDrive`\n\n-->"
    },
    "roomContactType": {
      "type": "string",
      "description": ""
    },
    "signingGroupName": {
      "type": "string",
      "description": "The name of the signing group that the contact belongs to."
    },
    "contactPhoneNumbers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/contactPhoneNumber"
      },
      "description": "A list of the contact's phone numbers.\n\n**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:\n\n- Sending an envelope by using SMS\n- Using phone authentication\n\nYou must ask the user who added the contact for the phone number and then manually enter it into the authentication box."
    },
    "notaryContactDetails": {
      "$ref": "#/components/schemas/notaryContactDetails"
    },
    "cloudProviderContainerId": {
      "type": "string",
      "description": "The ID of the container at the cloud provider. For example, this might be the room ID for a DocuSign Transaction Room."
    }
  },
  "x-ds-order": "50",
  "description": "The `Contacts` resource enables you to manage the contact in an account's address book.",
  "x-ms-summary": "The `Contacts` resource enables you to manage the contact in an account's address book.",
  "x-ds-category": "Users",
  "x-ds-definition-name": "contact"
}
object CustomTabs
{
  "type": "object",
  "properties": {
    "bold": {
      "type": "string",
      "description": "When **true,** the information in the tab is bold."
    },
    "font": {
      "type": "string",
      "description": "The font to be used for the tab value. Supported fonts include:\n\n- Default\n- Arial\n- ArialNarrow\n- Calibri\n- CourierNew\n- Garamond\n- Georgia\n- Helvetica\n- LucidaConsole\n- MSGothic\n- MSMincho\n- OCR-A\n- Tahoma\n- TimesNewRoman\n- Trebuchet\n- Verdana\n"
    },
    "name": {
      "type": "string",
      "description": "The name of the custom tab."
    },
    "type": {
      "type": "string",
      "description": "The type of this tab. Values are:\n\n- `Approve`\n- `CheckBox`\n- `Company`\n- `Date`\n- `DateSigned`\n- `Decline`\n- `Email`\n- `EmailAddress`\n- `EnvelopeId`\n- `FirstName`\n- `Formula`\n- `FullName`\n- `InitialHere`\n- `InitialHereOptional`\n- `LastName`\n- `List`\n- `Note`\n- `Number`\n- `Radio`\n- `SignerAttachment`\n- `SignHere`\n- `SignHereOptional`\n- `Ssn`\n- `Text`\n- `Title`\n- `Zip5`\n- `Zip5Dash4`"
    },
    "items": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "If the tab is a list, this represents the values that are possible for the tab."
    },
    "width": {
      "type": "string",
      "description": "The width of the tab in pixels.\nMust be an integer."
    },
    "anchor": {
      "type": "string",
      "description": "An optional string that is used to auto-match tabs to strings located in the documents of an envelope."
    },
    "height": {
      "type": "string",
      "description": "The height of the tab in pixels.\nMust be an integer."
    },
    "italic": {
      "type": "string",
      "description": "When **true,** the information in the tab is italic."
    },
    "locked": {
      "type": "string",
      "description": "When **true,** the signer cannot change the data of the custom tab."
    },
    "shared": {
      "type": "string",
      "description": "When **true,** this custom tab is shared."
    },
    "editable": {
      "type": "string",
      "description": "When **true,** the custom tab is editable. Otherwise the custom tab cannot be modified."
    },
    "fontSize": {
      "type": "string",
      "description": "The font size used for the information in the tab. Possible values are:\n\n- Size7\n- Size8\n- Size9\n- Size10\n- Size11\n- Size12\n- Size14\n- Size16\n- Size18\n- Size20\n- Size22\n- Size24\n- Size26\n- Size28\n- Size36\n- Size48\n- Size72"
    },
    "required": {
      "type": "string",
      "description": "When **true,** the signer is required to fill out this tab."
    },
    "selected": {
      "type": "string",
      "description": "When **true,** the radio button is selected."
    },
    "tabLabel": {
      "type": "string",
      "description": "The label associated with the tab. This value may be an empty string.\nIf no value is provided, the tab type is used as the value.\n\nMaximum Length: 500 characters.\n"
    },
    "fontColor": {
      "type": "string",
      "description": "The font color to use for the information in the tab. Possible values are: \n\n- Black\n- BrightBlue\n- BrightRed\n- DarkGreen\n- DarkRed\n- Gold\n- Green\n- NavyBlue\n- Purple\n- White\n"
    },
    "stampType": {
      "type": "string",
      "description": "The type of stamp. Valid values are:\n\n- `signature`: A signature image. This is the default value.\n- `stamp`: A stamp image.\n- null"
    },
    "underline": {
      "type": "string",
      "description": "When **true,** the information in the tab is underlined."
    },
    "mergeField": {
      "$ref": "#/components/schemas/mergeField"
    },
    "requireAll": {
      "type": "string",
      "description": "When **true** and shared is true, information must be entered in this field to complete the envelope. "
    },
    "scaleValue": {
      "type": "string",
      "description": "Sets the size of the tab. This field accepts values from `0.5` to `1.0`, where `1.0` represents full size and `0.5` is 50% of full size."
    },
    "anchorUnits": {
      "type": "string",
      "description": "Specifies units of the `anchorXOffset` and `anchorYOffset`. Valid units are:\n\n- `pixels` (default)\n- `inches`\n- `mms`\n- `cms`\n"
    },
    "customTabId": {
      "type": "string",
      "description": "The DocuSign-generated custom tab ID for the custom tab to be applied. This property can only be used when adding new tabs for a recipient. When used, the new tab inherits all of the custom tab properties."
    },
    "initialValue": {
      "type": "string",
      "description": "The original value of the tab."
    },
    "lastModified": {
      "type": "string",
      "description": "The UTC DateTime this object was last modified. This is in ISO 8601 format."
    },
    "localePolicy": {
      "$ref": "#/components/schemas/localePolicyTab"
    },
    "anchorXOffset": {
      "type": "string",
      "description": "Specifies the X axis location of the tab in `anchorUnits` relative to the `anchorString`.\n"
    },
    "anchorYOffset": {
      "type": "string",
      "description": "Specifies the Y axis location of the tab in `anchorUnits` relative to the `anchorString`.\n"
    },
    "collaborative": {
      "type": "string",
      "description": ""
    },
    "maximumLength": {
      "type": "string",
      "description": "The maximum number of entry characters supported by the custom tab."
    },
    "numericalValue": {
      "type": "string",
      "description": ""
    },
    "validationType": {
      "type": "string",
      "description": "Specifies how numerical data is validated. Valid values:\n\n- `number`\n- `currency`\n"
    },
    "createdByUserId": {
      "type": "string",
      "description": "The userId of the DocuSign user who created this object."
    },
    "disableAutoSize": {
      "type": "string",
      "description": "When **true,** disables the auto sizing of single line text boxes in the signing screen when the signer enters data. If disabled users will only be able enter as much data as the text box can hold. By default this is false. This property only affects single line text boxes."
    },
    "includedInEmail": {
      "type": "string",
      "description": "When **true,** the tab is included in e-mails related to the envelope on which it exists. This applies to only specific tabs."
    },
    "paymentItemCode": {
      "type": "string",
      "description": "If the custom tab is for a payment request, this is the external code for the item associated with the charge. For example, this might be your product id.\n\nExample: `SHAK1`\n\nMaximum Length: 100 characters."
    },
    "paymentItemName": {
      "type": "string",
      "description": "If the custom tab is for a payment request, this is the name of the item associated with the charge.\n\nMaximum Length: 100 characters.\n\nExample: `Hamlet`"
    },
    "maxNumericalValue": {
      "type": "string",
      "description": ""
    },
    "minNumericalValue": {
      "type": "string",
      "description": ""
    },
    "stampTypeMetadata": {
      "$ref": "#/components/schemas/propertyMetadata"
    },
    "validationMessage": {
      "type": "string",
      "description": "The message displayed if the custom tab fails input validation (either custom of embedded)."
    },
    "validationPattern": {
      "type": "string",
      "description": "A regular expression used to validate input for the tab."
    },
    "anchorCaseSensitive": {
      "type": "string",
      "description": "This property controls how [anchor tabs][AnchorTabs] are placed. When **true,** the text string in a document must match the case of the `anchorString` property for an anchor tab to be created. The default value is **false.**\n\nFor example, when set to **true,** if the anchor string is `DocuSign`, then `DocuSign` will match but `Docusign`, `docusign`, `DoCuSiGn`, etc. will not match. When **false,** `DocuSign`, `Docusign`, `docusign`, `DoCuSiGn`, etc. will all match.\n\nThis functionality uses the following rules:\n\n- Unless punctuation is specified in the `anchorString`, this functionality ignores punctuation and the following characters:\n\n  $~><|^+=\n\n  For example, the `anchorString` `water` will match on the string `Fetch a pail of water.`\n\n- Strings embedded in other strings are ignored during the matching process.\n\n- In words that have dashes, the parts separated by dashes are treated as distinct words.\n\n  Example: If the anchor string is `forget`, then an anchor tab is placed on the `forget` in `forget-me-not`, even when `anchorMatchWholeWord` is set to **true.**\n\n- Letters with accent marks are treated as distinct characters from their unaccented counterparts.\n\n- For single-character anchor strings, if the two characters appear right next to each other in the document, a single anchor tab is placed for both of them.\n\n  Example: If the anchor string is `i`, then only one anchor tab is placed in `skiing`.\n\n- Unlike punctuation, numbers are not ignored when finding anchor words.\n\n  Example: If the anchor string is `cat`, then `-cat-` is matched but `1cat2` is not when `anchorMatchWholeWord` is set to **true** (its default value).\n\n**Note:** You can only specify the value of this property in POST requests.\n\n[AnchorTabs]: /docs/esign-rest-api/esign101/concepts/tabs/auto-place/"
    },
    "signatureProviderId": {
      "type": "string",
      "description": "Reserved for DocuSign."
    },
    "anchorMatchWholeWord": {
      "type": "string",
      "description": "When **true,** the text string in a document must match the value of the `anchorString` property in its entirety for an [anchor tab][AnchorTab] to be created. The default value is **false.**\n\nFor example, when set to **true,** if the input is `man` then `man` will match but `manpower`, `fireman`, and `penmanship` will not. When **false,** if the input is `man` then `man`, `manpower`, `fireman`, and `penmanship` will all match.\n\nThis functionality uses the following rules:\n\n- Unless punctuation is specified in the `anchorString`, this functionality ignores punctuation and the following characters:\n\n  $~><|^+=\n\n  For example, the `anchorString` `water` will match on the string `Fetch a pail of water.`\n\n- Strings embedded in other strings are ignored during the matching process.\n\n- In words that have dashes, the parts separated by dashes are treated as distinct words.\n\n  Example: If the anchor string is `forget`, then an anchor tab is placed on the `forget` in `forget-me-not`, even when `anchorMatchWholeWord` is set to **true.**\n\n- Letters with accent marks are treated as distinct characters from their unaccented counterparts.\n\n- For single-character anchor strings, if the two characters appear right next to each other in the document, a single anchor tab is placed for both of them.\n\n  Example: If the anchor string is `i`, then only one anchor tab is placed in `skiing`.\n\n- Unlike punctuation, numbers are not ignored when finding anchor words.\n\n  Example: If the anchor string is `cat`, then `-cat-` is matched but `1cat2` is not when `anchorMatchWholeWord` is set to **true** (its default value).\n\n\n**Note:** You can only specify the value of this property in POST requests.\n\n[AnchorTab]: /docs/esign-rest-api/esign101/concepts/tabs/auto-place/\n"
    },
    "createdByDisplayName": {
      "type": "string",
      "description": "The user name of the DocuSign user who created this object."
    },
    "lastModifiedByUserId": {
      "type": "string",
      "description": "The userId of the DocuSign user who last modified this object."
    },
    "concealValueOnDocument": {
      "type": "string",
      "description": "When **true,** the field appears normally while the recipient is adding or modifying the information in the field, but the data is not visible (the characters are hidden by asterisks) to any other signer or the sender.\n\nWhen an envelope is completed the information is only available to the sender through the Form Data link in the DocuSign Console. The information on the downloaded document remains masked by asterisks.\n\nThis setting applies only to text boxes and does not affect list boxes, radio buttons, or check boxes."
    },
    "paymentItemDescription": {
      "type": "string",
      "description": "If the custom tab is for a payment request, this is the description of the item associated with the charge.\n\nExample: `The Danish play by Shakespeare`\n\nMaximum Length: 100 characters."
    },
    "anchorIgnoreIfNotPresent": {
      "type": "string",
      "description": "When **true,** this tab is ignored if the `anchorString` is not found in the document."
    },
    "anchorHorizontalAlignment": {
      "type": "string",
      "description": "This property controls how [anchor tabs][AnchorTabs] are aligned in relation to the anchor text. Possible values are :\n\n- `left`: Aligns the left side of the tab with the beginning of the first character of the matching anchor word. This is the default value.\n- `right`: Aligns the tab’s left side with the last character of the matching anchor word.\n\n**Note:** You can only specify the value of this property in POST requests.\n\n[AnchorTabs]: /docs/esign-rest-api/esign101/concepts/tabs/auto-place/\n"
    },
    "lastModifiedByDisplayName": {
      "type": "string",
      "description": "The User Name of the DocuSign user who last modified this object."
    },
    "requireInitialOnSharedChange": {
      "type": "string",
      "description": "Optional element for field markup. When **true,** the signer is required to initial when they modify a shared field."
    }
  },
  "x-ds-order": "10",
  "description": "Custom tabs",
  "x-ms-summary": "Custom tabs",
  "x-ds-category": "CustomTabs",
  "x-ds-definition-name": "tabMetadata"
}
object DocumentGeneration
{
  "type": "object",
  "properties": {
    "errorDetails": {
      "$ref": "#/components/schemas/errorDetails"
    },
    "docGenFormFields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/docGenFormFields"
      },
      "description": ""
    }
  },
  "x-ds-order": "100",
  "description": "Document Generation for eSignature allows you to\ndynamically generate\ndocuments from a Word template to send for\nsignature within the eSignature sending workflow.",
  "x-ms-summary": "Document Generation for eSignature allows you to\ndynamically generate\ndocuments from a Word template to send for\nsignature within the eSignature sending workflow.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "docGenFormFieldResponse"
}
object DocumentResponsiveHtml
{
  "type": "object",
  "properties": {
    "htmlDefinitions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/documentHtmlDefinitionOriginal"
      },
      "description": "Holds the properties that define how to generate the responsive-formatted HTML for the document."
    }
  },
  "x-ds-order": "100",
  "description": "",
  "x-ms-summary": "",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "documentHtmlDefinitionOriginals"
}
object DocumentResponsiveHtmlPreview
{
  "type": "object",
  "properties": {
    "htmlDefinitions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Holds the properties that define how to generate the responsive-formatted HTML for the document."
    }
  },
  "x-ds-order": "230",
  "description": "This resource is used to create a responsive preview of a specific document.",
  "x-ms-summary": "This resource is used to create a responsive preview of a specific document.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "documentHtmlDefinitions"
}
string DocumentsGetDocumentResponse
{
  "type": "string",
  "format": "binary"
}
string DocumentsGetTemplateDocumentResponse
{
  "type": "string",
  "format": "binary"
}
string DocumentsPutDocumentRequest
{
  "type": "string",
  "format": "binary"
}
object ENoteConfigurations
{
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": ""
    },
    "password": {
      "type": "string",
      "description": "The user's encrypted password hash."
    },
    "userName": {
      "type": "string",
      "description": "The name of the user."
    },
    "organization": {
      "type": "string",
      "description": ""
    },
    "eNoteConfigured": {
      "type": "string",
      "description": ""
    },
    "connectConfigured": {
      "type": "string",
      "description": ""
    }
  },
  "x-ds-order": "110",
  "description": "",
  "x-ms-summary": "",
  "x-ds-category": "Accounts",
  "x-ds-definition-name": "eNoteConfiguration"
}
object EnvelopeAttachments
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the attachment."
    },
    "label": {
      "type": "string",
      "description": "A label for the attachment. Potential values include: \n\n- `guidedForm`: [Guided forms](https://www.docusign.com/products/guided-forms) provide a step-by-step, mobile-ready experience to help signers easily complete long or complex forms.\n- `eventNotifications`: A list of envelope-level event statuses that trigger Connect to send updates to the endpoint specified in the `url` property. "
    },
    "attachmentId": {
      "type": "string",
      "description": "The unique identifier for the attachment."
    },
    "errorDetails": {
      "$ref": "#/components/schemas/errorDetails"
    },
    "accessControl": {
      "type": "string",
      "description": "Valid values are `sender` and `senderAndAllRecipients`."
    },
    "attachmentType": {
      "type": "string",
      "description": "Specifies the type of the attachment for the recipient. Possible values are:\n\n- `.htm`\n- `.xml`"
    }
  },
  "x-ds-order": "60",
  "description": "The EnvelopeAttachments resource provides methods that allow you to\nassociate files with an envelope.",
  "x-ms-summary": "The EnvelopeAttachments resource provides methods that allow you to\nassociate files with an envelope.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "envelopeAttachment"
}
object EnvelopeConsumerDisclosures
{
  "type": "object",
  "properties": {
    "pdfId": {
      "type": "string",
      "description": "**Deprecated.** \n\nThe `pdfId` property in the consumer_disclosure PUT request is deprecated. For security reasons going forward, any value provided in the request packet must be ignored. "
    },
    "custom": {
      "type": "string",
      "description": "When **true,** indicates that the consumer disclosure is a custom disclosure. The default is **false.**"
    },
    "useBrand": {
      "type": "string",
      "description": "When **true,** specifies that the company name in the signing brand is used for the disclosure. Whenever an envelope is sent from the account that uses a signing brand with a specified company name, that value is used in email notifications and in the signing experience.  \n\nWhen **false** (default), or if the signing brand does not specify a company name, the account name is used instead.\n\n**Note:** This substitution only works if you use the default legal disclosure or if you apply the `companyName` to the merge fields in a custom ERSD. "
    },
    "esignText": {
      "type": "string",
      "description": "The template for the Electronic Record and Signature Disclosure, which contains placeholders for information such as the `companyName`. It also includes the HTML tags used for formatting.\n\n**Note:** If you are switching to or updating a custom disclosure, you can edit both the text and the HTML formatting."
    },
    "changeEmail": {
      "type": "string",
      "description": "If the customer needs to change their email address, this is the email address to which they should the change request."
    },
    "companyName": {
      "type": "string",
      "description": "Specifies the company name used in the disclosure. The default value is the account name.\n\nHowever, if your account uses signing brands that specify a company name, you can substitute the brand's company name by setting the `useBrand` property to **true.** Whenever an envelope is sent from the account that uses a signing brand with a specified `companyName`, that value is used in email notifications and in the signing experience.\n\n**Note:** This substitution only works if you use the default legal disclosure or if you apply the `companyName` to the merge fields in a custom ERSD. You must also set the value of the `useBrand` property to **true.**\n"
    },
    "enableEsign": {
      "type": "string",
      "description": "When **true** (default), indicates that eSign is enabled."
    },
    "companyPhone": {
      "type": "string",
      "description": "The phone number of the company associated with the consumer disclosure, as a free-formatted string."
    },
    "languageCode": {
      "type": "string",
      "description": "The simple type enumeration for the language to use when displaying the disclosure. The following languages are supported:\n\n- Arabic (`ar`)\n- Bulgarian (`bg`)\n- Czech (`cs`)\n- Chinese Simplified (`zh_CN`)\n- Chinese Traditional (`zh_TW`)\n- Croatian (`hr`)\n- Danish (`da`)\n- Dutch (`nl`)\n- English US (`en`)\n- English UK (`en_GB`)\n- Estonian (`et`)\n- Farsi (`fa`)\n- Finnish (`fi`)\n- French (`fr`)\n- French Canadian (`fr_CA`)\n- German (`de`)\n- Greek (`el`)\n- Hebrew (`he`)\n- Hindi (`hi`)\n- Hungarian (`hu`)\n- Bahasa Indonesian (`id`)\n- Italian (`it`)\n- Japanese (`ja`)\n- Korean (`ko`)\n- Latvian (`lv`)\n- Lithuanian (`lt`)\n- Bahasa Melayu (`ms`)\n- Norwegian (`no`)\n- Polish (`pl`)\n- Portuguese (`pt`)\n- Portuguese Brazil (`pt_BR`)\n- Romanian (`ro`)\n- Russian (`ru`)\n- Serbian (`sr`)\n- Slovak (`sk`)\n- Slovenian (`sl`)\n- Spanish (`es`)\n- Spanish Latin America (`es_MX`)\n- Swedish (`sv`)\n- Thai (`th`)\n- Turkish (`tr`)\n- Ukrainian (`uk`) \n- Vietnamese (`vi`)\n\nAdditionally, you can automatically detect the browser language being used by the viewer and display the disclosure in that language by setting the value to `browser`."
    },
    "withdrawCity": {
      "type": "string",
      "description": "Contains the city of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 50 characters. "
    },
    "withdrawEmail": {
      "type": "string",
      "description": "Contains the email address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 100 characters. "
    },
    "withdrawOther": {
      "type": "string",
      "description": "Contains any other information needed to withdraw consent.\n\nMaximum length: 255 characters.\n\nExample:\n\n`We do not need any other information from you to withdraw consent.`"
    },
    "withdrawPhone": {
      "type": "string",
      "description": "Contains the phone number that a customer can call to register consent withdrawal notification as a free-formatted string.\n\nMaximum length: 20 characters. "
    },
    "withdrawState": {
      "type": "string",
      "description": "Contains the state of the postal address to which a customer can send a consent withdrawal notification.\n\nExample: `PA`"
    },
    "accountEsignId": {
      "type": "string",
      "description": "The GUID of the account associated with the consumer disclosure."
    },
    "esignAgreement": {
      "type": "string",
      "description": "The final, assembled text of the Electronic Record and Signature Disclosure that includes the appropriate `companyName` and other specifics. It also includes the HTML tags used for formatting."
    },
    "withdrawByMail": {
      "type": "string",
      "description": "When **true,** indicates that the customer can withdraw consent by postal mail. The default is **false.**"
    },
    "allowCDWithdraw": {
      "type": "string",
      "description": "When **true,** indicates that the customer can withdraw their consent to the consumer disclosure when they decline to sign documents. If these recipients sign documents sent to them from your account in the future, they will be required to agree to the terms in the disclosure. The default value is **false.**\n**Note:** Only Admin users can change this setting."
    },
    "copyCostPerPage": {
      "type": "string",
      "description": "The cost per page if the customer requests paper copies.\n\nExample: \n\n`0.0000`"
    },
    "withdrawByEmail": {
      "type": "string",
      "description": "When **true** (default), indicates that the customer can withdraw consent by email."
    },
    "withdrawByPhone": {
      "type": "string",
      "description": "When **true,** indicates that the customer can withdraw consent by phone. The default is **false.**"
    },
    "changeEmailOther": {
      "type": "string",
      "description": "Other information about the requirements for the user to change their email address.\n\nExample: \n\n`We do not require any other information from you to change your email address.`"
    },
    "copyRequestEmail": {
      "type": "string",
      "description": "The email address to which the customer should send a request for copies of a document.\n\nMaximum length: 100 characters."
    },
    "mustAgreeToEsign": {
      "type": "string",
      "description": "When **true,** the  recipient must agree to the consumer disclosure. The value of this property is read-only. It is calculated based on the account setting `consumerDisclosureFrequency` and the user's actions."
    },
    "withdrawPostalCode": {
      "type": "string",
      "description": "Contains the postal code of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 20 characters. "
    },
    "withdrawAddressLine1": {
      "type": "string",
      "description": "Contains the first address line of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 100 characters. "
    },
    "withdrawAddressLine2": {
      "type": "string",
      "description": "Contains the second address line of the postal address to which a customer can send a consent withdrawal notification.\n\nMaximum length: 100 characters. "
    },
    "withdrawConsequences": {
      "type": "string",
      "description": "Text indicating the consequences of withdrawing consent.\n\nMaximum length: 255 characters."
    },
    "allowCDWithdrawMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    },
    "copyFeeCollectionMethod": {
      "type": "string",
      "description": "Specifies the fee collection method for cases in which the customer requires paper copies of the document.\n\nMaximum length: 255 characters.\n\nExample: \n\n`We will bill you for any fees at that time, if any.`"
    },
    "useConsumerDisclosureWithinAccount": {
      "type": "string",
      "description": "When **true,** specifies that recipients in the same account as the sender must agree to eSign an Electronic Record and Signature Disclosure Statement."
    },
    "useConsumerDisclosureWithinAccountMetadata": {
      "$ref": "#/components/schemas/settingsMetadata"
    }
  },
  "x-ds-order": "90",
  "description": "Details about envelope consumer disclosures.",
  "x-ms-summary": "Details about envelope consumer disclosures.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "consumerDisclosure"
}
object EnvelopeCustomFields
{
  "type": "object",
  "properties": {
    "listCustomFields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/listCustomField"
      },
      "description": "An array of list custom fields."
    },
    "textCustomFields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/textCustomField"
      },
      "description": "An array of text custom fields."
    }
  },
  "x-ds-order": "70",
  "description": "An envelope custom field enables you to collect custom data about envelopes on a per-envelope basis. You can then use the custom data for sorting, organizing, searching, and other downstream processes. For example, you can use custom fields to copy envelopes or data to multiple areas in Salesforce. eOriginal customers can eVault their documents from the web app on a per-envelope basis by setting an envelope custom field with a name like \"eVault with eOriginal?\" to \"Yes\" or \"No\".\n\nWhen a user creates an envelope, the envelope custom fields display in the **Envelope Settings** section of the DocuSign console. Envelope recipients do not see the envelope custom fields. For more information, see [Envelope Custom Fields](https://support.docusign.com/s/document-item?bundleId=pik1583277475390&topicId=qor1583277385137.html).",
  "x-ms-summary": "An envelope custom field enables you to collect custom data about envelopes on a per-envelope basis. You can then use the custom data for sorting, organizing, searching, and other downstream processes. For example, you can use custom fields to copy envelopes or data to multiple areas in Salesforce. eOriginal customers can eVault their documents from the web app on a per-envelope basis by setting an envelope custom field with a name like \"eVault with eOriginal?\" to \"Yes\" or \"No\".\n\nWhen a user creates an envelope, the envelope custom fields display in the **Envelope Settings** section of the DocuSign console. Envelope recipients do not see the envelope custom fields. For more information, see [Envelope Custom Fields](https://support.docusign.com/s/document-item?bundleId=pik1583277475390&topicId=qor1583277385137.html).",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "customFields"
}
object EnvelopeDocumentFields
{
  "type": "object",
  "properties": {
    "documentFields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/nameValue"
      },
      "description": "The array of name/value custom data strings to be added to a document. Custom document field information is returned in the status, but otherwise is not used by DocuSign. The array contains the elements: \n\n* name - A string that can be a maximum of 50 characters. \n* value - A string that can be a maximum of 200 characters.\n\n*IMPORTANT*: If you are using xml, the name/value pair is contained in a nameValue element. \n"
    }
  },
  "x-ds-order": "60",
  "description": "Envelope document fields",
  "x-ms-summary": "Envelope document fields",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "documentFieldsInformation"
}
object EnvelopeDocumentHtmlDefinitions
{
  "type": "object",
  "properties": {
    "htmlDefinitions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/documentHtmlDefinitionOriginal"
      },
      "description": "Holds the properties that define how to generate the responsive-formatted HTML for the document."
    }
  },
  "x-ds-order": "220",
  "description": "",
  "x-ms-summary": "",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "documentHtmlDefinitionOriginals"
}
object EnvelopeDocumentTabs
{
  "type": "object",
  "properties": {
    "ssnTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ssn"
      },
      "description": "A list of\n[SSN tabs][ssn].\n\nAn SSN tab contains a one-line field that enables the recipient to enter a Social Security Number (SSN) with or without\ndashes. It uses the same parameters as a Text tab, with the validation message and pattern set for SSN information. This value can be set.\n\n\n[ssn]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "zipTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/zip"
      },
      "description": "A list of\n[Zip tabs][zip].\n\nA Zip tab enables the recipient to enter a ZIP code. The ZIP code can be five digits or nine digits ( in ZIP+4 format), and can be entered with or without dashes. It uses the same parameters as a Text tab, with the validation message and pattern set for ZIP code information.  This value can be set.\n\n\n[zip]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "dateTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/date"
      },
      "description": "A list of\n[Date tabs][date].\n\nA Date tab enables the recipient to enter a date. This value can't be set. The tooltip for this tab recommends the date format MM/DD/YYYY, but several other date formats are also accepted. The system retains the format that the recipient enters.\n\n**Note:** If you need to enforce a specific date format, DocuSign recommends that you use a Text tab with a validation pattern and validation message.\n\n\n[date]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "drawTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/draw"
      },
      "description": "A list of Draw Tabs.\n\nA Draw Tab allows the recipient to add a free-form drawing to the document."
    },
    "listTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/list"
      },
      "description": "An array of List tabs.\n\nA List tab enables the recipient to choose from a list of options. You specify the options in the `listItems` property. This value can't be set.\n\nFind descriptions of all tab types in\nthe [EnvelopeRecipientTabs Resource][ert].\n\n[ert]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "noteTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/note"
      },
      "description": "A list of\n[Note tabs][note].\n\nA Note tab displays additional information to the recipient in the form of a note. This value can be set.\n\n[note]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "textTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/text"
      },
      "description": "A list of\nText tabs.\n\nA text tab enables the recipient to enter free text. This value can be set.\n\nFind descriptions of all tab types in\nthe [EnvelopeRecipientTabs Resource][ert].\n\n[ert]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "viewTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view"
      },
      "description": "A list of\n[View tabs][view].\n\nA View tab is used with an Approve tab to handle supplemental documents.  This value can be set.\n\n[view]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "emailTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/email"
      },
      "description": "A list of\n[Email tabs][email].\n\nAn Email tab enables the recipient to enter an email address.\nThis is a one-line field that checks that a valid email\naddress is entered. It uses the same parameters as a Text\ntab, with the validation message and pattern set for email\ninformation. This value can be set.\n\nWhen getting information that includes\nthis tab type, the original value of the tab when the\nassociated envelope was sent is included in the response.\n\n[email]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "tabGroups": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tabGroup"
      },
      "description": "An array of `tabGroup` items.\n\nTo associate a tab with a tab group, add the tab group's `groupLabel` to the tab's `tabGroupLabels` array.\n"
    },
    "titleTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/title"
      },
      "description": "A list of\n[Title tabs][title].\n\nA Title tab displays the recipient's title.  This value can't be set.\n\n\n[title]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "numberTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/number"
      },
      "description": "A list of Number tabs.\n\nNumber tabs validate that the entered value is a number.\nThey do not support advanced validation or display options.\n\nTo learn more about the different forms of number tabs,\nsee [Number fields](https://raw.githubusercontent.com) in the Concepts guide.\nFor specific information about number tabs\nsee [Features of numberTabs](/docs/esign-rest-api/esign101/concepts/tabs/number-fields/#features-of-numbertabs).\n\n[number]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "approveTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/approve"
      },
      "description": "A list of\n[Approve tabs][approve].\n\nAn Approve tab enables\nthe recipient to approve documents without\nplacing a signature or initials on the document. If the\nrecipient clicks the tab during the signing process, the\nrecipient is considered to have signed the document. No\ninformation is shown on the document of the approval, but it\nis recorded as a signature in the envelope history.\nThe value of an approve tab can't be set.\n\n[approve]:          /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "companyTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/company"
      },
      "description": "A list of\n[Company tabs][company].\n\nA Company tab displays a field for the name of the recipient's company. This value can't be set.\n\n[company]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/create/#parameters_company\n"
    },
    "declineTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/decline"
      },
      "description": "A list of\n[Decline tabs][decline].\n\nA Decline tab enables the recipient to decline the envelope. If the recipient clicks the tab during the signing process, the envelope is voided. The value of this tab can't be set.\n\n\n[decline]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "formulaTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/formulaTab"
      },
      "description": "A list of [Formula tabs][formulaTab].\n\nThe value of a Formula tab is calculated from the values of other number or date tabs in the document. When the recipient completes the underlying fields, the Formula tab calculates and displays the result. This value can be set.\n\nThe `formula` property of the tab contains the references to the underlying tabs. To learn more about formulas, see [Calculated Fields][calculatedfields].\n\nIf a Formula tab contains a `paymentDetails` property, the tab is considered a payment item. To learn more about payments, see [Requesting Payments Along with Signatures][paymentguide].\n\n[calculatedfields]: https://support.docusign.com/s/document-item?bundleId=gbo1643332197980&topicId=crs1578456361259.html\n[paymentguide]:     https://support.docusign.com/s/document-item?bundleId=juu1573854950452&topicId=fyw1573854935374.html\n[formulaTab]:       /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "prefillTabs": {
      "$ref": "#/components/schemas/prefillTabs"
    },
    "checkboxTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/checkbox"
      },
      "description": "A list of\n[Checkbox tabs][checkbox].\n\n\nA Checkbox tab enables the recipient to select a yes/no (on/off) option. This value can be set.\n\n\n[checkbox]:  /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "fullNameTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/fullName"
      },
      "description": "A list of\n[Full Name tabs][fullName].\n\nA Full Name tab displays the recipient's full name. This value can't be set.\n\n\n[fullName]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "lastNameTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lastName"
      },
      "description": "A list of\n[Last Name tabs][lastName].\n\nA Last Name tab displays the recipient's last name. The system automatically populates this field by splitting the name in the recipient information on spaces. This value can't be set.\n\n\n[lastName]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "notarizeTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/notarize"
      },
      "description": "A list of  [Notarize tabs][notarize].\n\nA Notarize tab alerts notary recipients that they must take action on the page. This value can be set.\n\n**Note:** Only one notarize tab can appear on a page.\n\n[notarize]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "signHereTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/signHere"
      },
      "description": "A list of\n[Sign Here tabs][signHere].\n\nThis type of tab enables the recipient to sign a document. May be optional. This value can't be set.\n\n[signHere]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "firstNameTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/firstName"
      },
      "description": "A list of\n[First Name tabs][firstName].\n\nA First Name tab displays the recipient's first name. The system automatically populates this field by splitting the name in the recipient information on spaces. This value can't be set.\n\n\n[firstName]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/create/#parameters_firstname\n"
    },
    "numericalTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/numerical"
      },
      "description": "A list of numerical tabs.\n\nNumerical  tabs provide robust display and validation features, including formatting for different regions and currencies, and minimum and maximum value validation.                                                                                                                                                                                                                                                                                                                                                                                                                                                             \n\nTo learn more about the different forms of number tabs,\nsee [Number fields](https://raw.githubusercontent.com) in the Concepts guide.\nFor specific information about numerical tabs\nsee [Features of numericalTabs](/docs/esign-rest-api/esign101/concepts/tabs/number-fields/#features-of-numericaltabs)."
    },
    "dateSignedTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dateSigned"
      },
      "description": "A list of\n[Date Signed tabs][dateSigned].\n\n\nA Date Signed tab displays the date that the recipient signed the document. This value can't be set.\n\n[dateSigned]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "envelopeIdTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/envelopeId"
      },
      "description": "A list of\n[Envelope ID tabs][envelopeId].\n\nAn Envelope ID tab  displays the envelope ID. Recipients cannot enter or change the information in this tab. This value can't be set.\n\n\n[envelopeId]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/create/#response201_envelopeid\n"
    },
    "notarySealTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/notarySeal"
      },
      "description": "A list of Notary Seal tabs.\n\nA Notary Seal tab enables the recipient to notarize a document. This tab can only be assigned to a remote notary recipient using [DocuSign Notary][notary].\n\n[notary]: /docs/notary-api/"
    },
    "radioGroupTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/radioGroup"
      },
      "description": "A list of [Radio Group tabs][radioGroup].\n\nA Radio Group tab places a group of radio buttons on a document. The `radios` property is used to add and place the radio\nbuttons associated with the group. Only one radio button can be selected in a group. This value can be set.\n\n\n[radioGroup]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "initialHereTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/initialHere"
      },
      "description": "A list of\n[Initial Here tabs][initialHere].\n\nThis type of tab enables the recipient to initial the document. May be optional. This value can't be set.\n\n[initialHere]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "phoneNumberTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/phoneNumber"
      },
      "description": "A list of\n[Phone Number tabs][cc].\n\n\nA Phone Number tab enables a recipient to enter a phone number.\n\n**Note:** This tab can only be assigned to a remote notary recipient using [DocuSign Notary][notary].\n\n[cc]:  /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n[notary]: /docs/notary-api/"
    },
    "emailAddressTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/emailAddress"
      },
      "description": "A list of\n[Email Address tabs][emailAddress].\n\nAn Email Address tab displays the recipient's email as entered in the recipient information. This value can't be set.\n\n\n[emailAddress]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "smartSectionTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/smartSection"
      },
      "description": "A list of [Smart Section](https://www.docusign.com/blog/dsdev-deep-dive-responsive-smart-sections) tabs.\n\nSmart Section tabs enhance responsive signing on mobile devices by enabling collapsible sections, page breaks, custom formatting options, and other advanced functionality.\n\n**Note:** Smart Sections are a premium feature. Responsive signing must also be enabled for your account."
    },
    "commentThreadTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/commentThread"
      },
      "description": "An array of tabs that represents a collection of comments in a comment thread. For example, if a recipient has questions about the content of a document, they can add a comment to the document and control who else can see the comment. This value can't be set."
    },
    "commissionStateTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/commissionState"
      },
      "description": "A list of\n[Commission State tabs][cc].\n\n\nA Commission County tab displays the state in which a notary's commission was granted. This tab can only be assigned to a remote notary recipient using [DocuSign Notary][notary]. The tab's value can be edited by the recipient.\n\n\n[cc]:  /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n[notary]: /docs/notary-api/"
    },
    "polyLineOverlayTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/polyLineOverlay"
      },
      "description": "This type of tab enables the recipient to strike through document text. This value can't be set.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      "
    },
    "commissionCountyTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/commissionCounty"
      },
      "description": "A list of\n[Commission County tabs][cc].\n\n\nA Commission County tab displays the county of a notary's commission. This tab can only be assigned to a remote notary recipient using [DocuSign Notary][notary]. The tab's value can be edited by the recipient.\n\n\n[cc]:  /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n[notary]: /docs/notary-api/"
    },
    "commissionNumberTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/commissionNumber"
      },
      "description": "A list of\n[Commission Number tabs][tabref].\n\n\nA Commission Number tab displays a notary's commission number. This tab can only be assigned to a remote notary recipient using [DocuSign Notary][notary]. The tab's value can be edited by the recipient.\n\n\n[tabref]:  /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n[notary]: /docs/notary-api/"
    },
    "signerAttachmentTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/signerAttachment"
      },
      "description": "A list of\n[Signer Attachment tabs][signerAttachment].\n\nThis type of tab enables the recipient to attach supporting documents to an envelope. This value can't be set.\n\n\n[signerAttachment]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n"
    },
    "commissionExpirationTabs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/commissionExpiration"
      },
      "description": "A list of\n[Commission Expiration tabs][tabref].\n\n\nA Commission Expiration tab displays the expiration date of a notary's commission. This tab can only be assigned to a remote notary recipient using [DocuSign Notary][notary]. The tab's value can be edited by the recipient.\n\n\n[tabref]:  /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/\n[notary]: /docs/notary-api/"
    }
  },
  "x-ds-order": "50",
  "description": "Document tabs are tabs that are associated with a document rather than with a recipient.",
  "x-ms-summary": "Document tabs are tabs that are associated with a document rather than with a recipient.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "tabs"
}
object EnvelopeDocumentVisibility
{
  "type": "object",
  "properties": {
    "documentVisibility": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/documentVisibility"
      },
      "description": "An array of `documentVisibility` objects that specifies which documents are visible to which recipients."
    }
  },
  "x-ds-order": "170",
  "description": "Document Visibility enables senders to control the visibility of the documents in an envelope at the recipient level. For example, if the parties associated with a legal proceeding should have access to different documents, the Document Visibility feature enables you to keep all of the documents in the same envelope and set view permissions for the documents by recipient. This functionality is enabled for envelopes and templates. It is not available for PowerForms.\n\n**Note:** Before you use Document Visibility, you should be aware of the following information:\n\n- Document Visibility must be enabled for your account by your DocuSign administrator. \n- A document cannot be hidden from a recipient if the recipient has tabs assigned to them on the document. \n- When the Document Visibility setting hides a document from a recipient, the document also does not appear in the recipient's list of envelopes, documents, or page images.\n- Carbon Copy, Certified Delivery (Needs to Sign), Editor, and Agent recipients can always see all of the documents associated with the envelope or template.\n\nThe Document Visibility feature has multiple settings that specify the options that senders have when sending documents. For more information, see [Use Document Visibility to Control Recipient Access](https://support.docusign.com/s/document-item?bundleId=gbo1643332197980&topicId=eui1578456411411.html).",
  "x-ms-summary": "Document Visibility enables senders to control the visibility of the documents in an envelope at the recipient level. For example, if the parties associated with a legal proceeding should have access to different documents, the Document Visibility feature enables you to keep all of the documents in the same envelope and set view permissions for the documents by recipient. This functionality is enabled for envelopes and templates. It is not available for PowerForms.\n\n**Note:** Before you use Document Visibility, you should be aware of the following information:\n\n- Document Visibility must be enabled for your account by your DocuSign administrator. \n- A document cannot be hidden from a recipient if the recipient has tabs assigned to them on the document. \n- When the Document Visibility setting hides a document from a recipient, the document also does not appear in the recipient's list of envelopes, documents, or page images.\n- Carbon Copy, Certified Delivery (Needs to Sign), Editor, and Agent recipients can always see all of the documents associated with the envelope or template.\n\nThe Document Visibility feature has multiple settings that specify the options that senders have when sending documents. For more information, see [Use Document Visibility to Control Recipient Access](https://support.docusign.com/s/document-item?bundleId=gbo1643332197980&topicId=eui1578456411411.html).",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "documentVisibilityList"
}
object EnvelopeDocuments
{
  "type": "object",
  "properties": {
    "envelopeId": {
      "type": "string",
      "description": "The envelope ID of the envelope status that failed to post."
    },
    "envelopeDocuments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/envelopeDocument"
      },
      "description": "An array of document objects."
    }
  },
  "x-ds-order": "40",
  "description": "Envelope documents",
  "x-ms-summary": "Envelope documents",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "envelopeDocumentsResult"
}
object EnvelopeEmailSettings
{
  "type": "object",
  "properties": {
    "bccEmailAddresses": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/bccEmailAddress"
      },
      "description": "An array containing the email address that should receive a copy of all email communications related to an envelope for archiving purposes. Maximum Length: 100 characters.\n\nWhile this property is an array, note that it takes only a single email address.\n\n**Note:** Only users with the `canManageAccount` setting set to **true** can use this option. \n\nDocuSign verifies that the email format is correct, but does not verify that the email address is active. You can use this for archiving purposes. However, using this property overrides the BCC for Email Archive information setting for this envelope. \n\n**Example:** if your account has BCC for Email Archive set up for the email address archive@mycompany.com and you send an envelope using the BCC Email Override to send a BCC email to salesarchive@mycompany.com, then a copy of the envelope is only sent to the salesarchive@mycompany.com email address."
    },
    "replyEmailNameOverride": {
      "type": "string",
      "description": "The name to associate with the Reply To email address, instead of the name that is configured at the account level. Maximum Length: 100 characters."
    },
    "replyEmailAddressOverride": {
      "type": "string",
      "description": "The Reply To email address to use for email replies, instead of the one that is configured at the account level. DocuSign verifies that the email address is in a correct format, but does not verify that it is active. Maximum Length: 100 characters."
    }
  },
  "x-ds-order": "30",
  "description": "Envelope email settings",
  "x-ms-summary": "Envelope email settings",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "emailSettings"
}
object EnvelopeFormData
{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "description": "Indicates the envelope status. Valid values are:\n\n* `completed`: The recipients have finished working with the envelope: the documents are signed and all required tabs are filled in.\n* `created`: The envelope is created as a draft. It can be modified and sent later.\n* `declined`: The envelope has been declined by the recipients.\n* `delivered`: The envelope has been delivered to the recipients.\n* `sent`: The envelope will be sent to the recipients after the envelope is created.\n* `signed`: The envelope has been signed by the recipients.\n* `voided`: The envelope is no longer valid and recipients cannot access or sign the envelope.\n"
    },
    "formData": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/formDataItem"
      },
      "description": "An array of form data objects."
    },
    "envelopeId": {
      "type": "string",
      "description": "The ID of the envelope."
    },
    "emailSubject": {
      "type": "string",
      "description": "The subject line of the email message that is sent to all recipients.\n\nFor information about adding merge field information to the email subject, see [Template Email Subject Merge Fields](/docs/esign-rest-api/reference/templates/templates/create/#template-email-subject-merge-fields).\n\n**Note:** The subject line is limited to 100 characters, including any merged fields.It is not truncated. It is an error if the text is longer than 100 characters.\n"
    },
    "sentDateTime": {
      "type": "string",
      "description": "The UTC DateTime when the envelope was sent. This property is read-only."
    },
    "prefillFormData": {
      "$ref": "#/components/schemas/prefillFormData"
    },
    "recipientFormData": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/recipientFormData"
      },
      "description": "An array of form data objects that are associated with specific recipients."
    }
  },
  "x-ds-order": "160",
  "description": "This object contains the data that recipients have entered into the form fields associated with an envelope.",
  "x-ms-summary": "This object contains the data that recipients have entered into the form fields associated with an envelope.",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "envelopeFormData"
}
object EnvelopeHtmlDefinitions
{
  "type": "object",
  "properties": {
    "htmlDefinitions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/documentHtmlDefinitionOriginal"
      },
      "description": "Holds the properties that define how to generate the responsive-formatted HTML for the document."
    }
  },
  "x-ds-order": "240",
  "description": "",
  "x-ms-summary": "",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "documentHtmlDefinitionOriginals"
}
object EnvelopeLocks
{
  "type": "object",
  "properties": {
    "lockType": {
      "type": "string",
      "description": "The type of lock.  Currently `edit` is the only supported type."
    },
    "lockToken": {
      "type": "string",
      "description": "A unique identifier provided to the owner of the lock. You must use this token with subsequent calls to prove ownership of the lock."
    },
    "lockedByApp": {
      "type": "string",
      "description": "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."
    },
    "errorDetails": {
      "$ref": "#/components/schemas/errorDetails"
    },
    "lockedByUser": {
      "$ref": "#/components/schemas/userInfo"
    },
    "useScratchPad": {
      "type": "string",
      "description": "When **true,** a scratchpad is used to edit information.\n "
    },
    "lockedUntilDateTime": {
      "type": "string",
      "description": "The date and time that the lock expires."
    },
    "lockDurationInSeconds": {
      "type": "string",
      "description": "\nThe number of seconds until the lock expires when there is no activity on the envelope.\n\nThe default value is 300 seconds. The maximum value is 1,800 seconds.\n\nThe lock duration can be extended.\n"
    }
  },
  "x-ds-order": "80",
  "description": "Envelope locks let you lock an envelope to prevent any changes while you are updating an envelope.\n",
  "x-ms-summary": "Envelope locks let you lock an envelope to prevent any changes while you are updating an envelope.\n",
  "x-ds-category": "Envelopes",
  "x-ds-definition-name": "lockInformation"
}