The following segment will allow you to invite, update or remove signers from the created transaction. 

Adding Signers to a Transaction

To add a signer to an existing transaction:

HTTP Request

POST /api/cs-packages/{packageId}/roles
JS

HTTP Headers

Accept: application/json   
Content-Type: application/json   
Authorization: Bearer access_token 
JS

Request Payload

{   "id": "Signer5",   "type": "SIGNER",   "signers": [   {   "email": "signer5@example.com",   "firstName": "John",   "lastName": "Smith",   "id": "Signer5"   }   ],   "name": "Signer5"   }
JS

For a complete description of each field, see the Request Payload Table below.

Response Payload

{   "id": "Signer5",   "data": null,   "specialTypes": [],   "emailMessage": null,   "attachmentRequirements": [],   "locked": false,   "reassign": false,   "index": 0,   "signers": [   {   "group": null,   "language": "en",   "signature": null,   "id": "Signer5",   "delivery": {   "provider": false,   "email": false,   "download": false   },   "auth": {   "scheme": "NONE",   "challenges": []   },   "knowledgeBasedAuthentication": null,   "data": null,   "title": "",   "company": "",   "email": "signer5@example.com",   "firstName": "John",   "lastName": "Smith",   "external": null,   "updated": "2017-11-16T16:53:01Z",   "phone": "",   "professionalIdentityFields": [],   "userCustomFields": [],   "address": null,   "created": "2017-11-16T16:53:01Z",   "name": "",   "specialTypes": []   }   ],   "name": "Signer5",   "type": "SIGNER"   }
JS

Updating an Existing Signer

To update an existing signer role, create a payload with the updates you want to make, and then use the request examples below to make your updates. Use the roleId you assigned in the previous request. If you did not assign a roleId, a randomly generated ID will be assigned. 

HTTP Request

PUT /api/cs-packages/{packageId}/roles/{roleId}
JS

HTTP Headers

Accept: application/json  
Content-Type: application/json   
Authorization: Bearer access_token
JS

Request Payload

{   "type": "SIGNER",   "signers": [   {   "email": "mary.doe@example.com",   "firstName": "Mary",   "lastName": "Doe"   }   ]   }
JS

Response Payload

{   "id": "Signer5",   "data": null,   "specialTypes": [],   "emailMessage": null,   "attachmentRequirements": [],   "locked": false,   "reassign": false,   "index": 0,   "signers": [   {   "group": null,   "language": "en",   "signature": null,   "id": "Signer5",   "delivery": {   "provider": false,   "email": false,   "download": false   },   "auth": {   "scheme": "NONE",   "challenges": []   },   "knowledgeBasedAuthentication": null,   "data": null,   "title": "",   "company": "",   "email": "mary.doe@example.com",   "firstName": "Mary",   "lastName": "Doe",   "external": null,   "updated": "2017-11-16T16:53:01Z",   "phone": "",   "professionalIdentityFields": [],   "userCustomFields": [],   "address": null,   "created": "2017-11-16T16:53:01Z",   "name": "",   "specialTypes": []   }   ],   "name": "Signer5",   "type": "SIGNER"   }
JS

For a complete description of each field, see the Request Payload Table below. 

Removing Signers From a Transaction

To remove a signer, you can make a DELETE request:

HTTP Request

DELETE /api/cs-packages/{packageId}/roles/{signerId}
JS

HTTP Headers

Accept: application/json   
Content-Type: application/json   
Authorization: Bearer access_token 
JS

Request Payload Table

PropertyTypeEditableRequiredDefaultSample Values

id

stringYesNon/aSigner5 
reassignbooleanYesNofalsetrue/false 
namestringYesNon/aSigner5 
idstringYesNon/aSigner5 
typestringYesNoSIGNERSIGNER/SENDER 
signers
emailstringYesNon/asigner5@example.com 
firstNamestringYesNon/aJohn 
lastNamestringYesNon/aSmith 
idstringYesNon/aSigner5