docusign.envelope-recipients.put-recipients
Updates the recipients of a draft envelope or corrects recipient information for an in-process envelope. If you send information for a recipient that does not already exist in a draft envelope, the recipient is added to the envelope (similar to the [EnvelopeRecipients: Create][EnvelopeRecipients-create] method). You can also use this method to resend an envelope to a recipient by using the resend_envelope option. Updating Sent Envelopes After an envelope has been sent, you can edit only the following properties: - accessCode - agentCanEditName - agentCanEditEmail - customFields - deliveryMethod - documentVisibility - email (If you provide an email address in this method, it will be treated as a new email address, even if it is exactly the same as the current address. Do not provide an email address if you do not want a correction email sent.) - emailNotification - idCheckConfigurationName - identityVerification - name - note - phoneAuthentication - recipientType (For this to work, you must also change the recipient object to match the recipient type.) - requireIdLookup - routingOrder - signingGroupId (You can change this ID to switch to a different signing group and its corresponding set of recipients.) - smsAuthentication - suppressEmails - userName If the recipient has signed, but the envelope is still active, the method will return success, but the recipientUpdateResults property in the response will include an error that the recipient could not be updated: { "recipientUpdateResults": [ { "recipientId": "999", "errorDetails": { "errorCode": "RECIPIENT_UPDATE_FAILED", "message": "The recipient could not be updated. Recipient not in state that allows correction." } } ] } If the envelope is completed, and you try to change a recipient's address, the method will fail with this error: { "errorCode": "ENVELOPE_INVALID_STATUS", "message": "Invalid envelope status. Envelope status is not one of: Created, Sent, Delivered, Correct." } Note: This method works on recipients only. To add recipient tabs, use methods from the [EnvelopeRecipientTabs][recipientTabs] resource. For example, this request body will add a recipient (astanton@example.com) but NOT the Sign Here recipient tab. json { "signers": [ { "email": "astanton@example.com", "name": "Anne Stanton", "recipientId": "1", // THIS WILL NOT WORK "tabs": { "signHereTabs": [ { "anchorString": "below", "tooltip": "please sign here3" }, . . . ] } } ] } [EnvelopeRecipients-create]: /docs/esign-rest-api/reference/envelopes/enveloperecipients/create/ [recipientTabs]: /docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/
Updates recipients in a draft envelope or corrects recipient information for an in-process envelope.
Overview
| Property | Value |
|---|---|
| Workflow type | Atomic |
| Library | App-docusign |
| Version | 1.0 |
Input Schema
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
base_url | string | Yes | — | Docusign API root, e.g. https://<host>/api |
api_token | string | No | — | Bearer token; omit to use the workflow's token env var |
accountid | string | Yes | — | The external account number (int) or account ID GUID. |
envelopeid | string | Yes | — | The envelope's GUID. Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec |
combine_same_order_recipients | string | No | — | When true, recipients are combined or merged with matching recipients. Recipient matching occurs as part of template matching, and is based on Recipient Role and Routing Order. |
offline_signing | string | No | — | Indicates if offline signing is enabled for the recipient when a network connection is unavailable. |
resend_envelope | string | No | — | 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. |
agents | list | No | — | A list of agent recipients assigned to the documents. |
authorizedsignatories | list | No | — | — |
carboncopies | list | No | — | A list of carbon copy recipients assigned to the documents. |
certifieddeliveries | list | No | — | A complex type containing information on a recipient the must receive the completed documents for the envelope to be completed, but the recipient does not need to sign, initial, date, or add information to any of the documents. |
currentroutingorder | string | No | — | The routing order of the current recipient. If this value equals a particular signer's routing order, it indicates that the envelope has been sent to that recipient, but he or she has not completed the required actions. |
editors | list | No | — | A list of users who can edit the envelope. |
errordetails | json | No | — | This object describes errors that occur. It is only valid for responses and ignored in requests. |
inpersonsigners | list | No | — | Specifies a signer that is in the same physical location as a Docusign user who will act as a Signing Host for the transaction. The recipient added is the Signing Host and new separate Signer Name field appears after Sign in person is selected. |
intermediaries | list | No | — | Identifies a recipient that can, but is not required to, add name and email information for recipients at the same or subsequent level in the routing order (until subsequent Agents, Editors or Intermediaries recipient types are added). |
notaries | list | No | — | A list of notary recipients on the envelope. |
notarywitnesses | list | No | — | — |
participants | list | No | — | — |
recipientcount | string | No | — | The number of recipients in the envelope. |
seals | list | No | — | A list of electronic seals to apply to documents. |
signers | list | No | — | A list of signers on the envelope. |
witnesses | list | No | — | A list of signers who act as witnesses on the envelope. |
Output Schema
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
base_url | string | Yes | — | Docusign API root, e.g. https://<host>/api |
api_token | string | No | — | Bearer token; omit to use the workflow's token env var |
accountid | string | Yes | — | The external account number (int) or account ID GUID. |
envelopeid | string | Yes | — | The envelope's GUID. Example: 93be49ab-xxxx-xxxx-xxxx-f752070d71ec |
combine_same_order_recipients | string | No | — | When true, recipients are combined or merged with matching recipients. Recipient matching occurs as part of template matching, and is based on Recipient Role and Routing Order. |
offline_signing | string | No | — | Indicates if offline signing is enabled for the recipient when a network connection is unavailable. |
resend_envelope | string | No | — | 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. |
agents | list | No | — | A list of agent recipients assigned to the documents. |
authorizedsignatories | list | No | — | — |
carboncopies | list | No | — | A list of carbon copy recipients assigned to the documents. |
certifieddeliveries | list | No | — | A complex type containing information on a recipient the must receive the completed documents for the envelope to be completed, but the recipient does not need to sign, initial, date, or add information to any of the documents. |
currentroutingorder | string | No | — | The routing order of the current recipient. If this value equals a particular signer's routing order, it indicates that the envelope has been sent to that recipient, but he or she has not completed the required actions. |
editors | list | No | — | A list of users who can edit the envelope. |
errordetails | json | No | — | This object describes errors that occur. It is only valid for responses and ignored in requests. |
inpersonsigners | list | No | — | Specifies a signer that is in the same physical location as a Docusign user who will act as a Signing Host for the transaction. The recipient added is the Signing Host and new separate Signer Name field appears after Sign in person is selected. |
intermediaries | list | No | — | Identifies a recipient that can, but is not required to, add name and email information for recipients at the same or subsequent level in the routing order (until subsequent Agents, Editors or Intermediaries recipient types are added). |
notaries | list | No | — | A list of notary recipients on the envelope. |
notarywitnesses | list | No | — | — |
participants | list | No | — | — |
recipientcount | string | No | — | The number of recipients in the envelope. |
seals | list | No | — | A list of electronic seals to apply to documents. |
signers | list | No | — | A list of signers on the envelope. |
witnesses | list | No | — | A list of signers who act as witnesses on the envelope. |
status_code | integer | No | — | HTTP status code of the completed call |
response | json | No | — | Parsed JSON response body |
failure_reason | string | No | — | — |
failure_type | string | No | — | — |
failed_at | string | No | — | — |
failed_step | string | No | — | — |
failed_layer | string | No | — | — |
failed_at_state | string | No | — | — |
error | string | No | — | — |
error_type | string | No | — | — |
States
| State | Initial | Terminal | Success | Auto-advance | Description |
|---|---|---|---|---|---|
pending | Yes | No | — | execute | Waiting to call PUT /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients |
completed | No | Yes | Yes | — | HTTP call succeeded |
failed | No | Yes | No | — | HTTP call failed |
State Diagram
Transitions
| From | Action | To | Description |
|---|---|---|---|
pending | execute | completed | Perform PUT /v2.1/accounts/{accountId}/envelopes/{envelopeId}/recipients |
* (any state) | fail | failed | Record the failure reason |
API Usage
POST /api/workflows/start
Content-Type: application/json
{
"workflow_type": "docusign.envelope-recipients.put-recipients",
"initial_data": {
"base_url": "value",
"accountid": "value",
"envelopeid": "value"
}
}