Set a Signing Order
The signing order helps you to configure the order the document is going to be seen by the recipients. PandaDoc enforces the order and send the document to the next recipient as soon as it's their turn to see or sign the document.
Prerequisites
- You have authenticated via OAuth (see Authentication process) or have an API key (see API key authentication process).
- You have created a template (see Save time with templates).
Set a signing order in the document creation request
To set or override a signing order in the document creation request, you need to add a signing_order
parameter with a predefined number to each recipient.
Structure your document details
Use the create document endpoint description to decide what metadata and details you need to pass to your document. The simplest possible document schema consists of a name, template ID, or PDF, and at least two recipients.
Create the document
...
"recipients": [
{
"email": "[email protected]",
"first_name": "Josh",
"last_name": "Ron",
"role": "user",
"signing_order": 2
},
{
"email": "[email protected]",
"first_name": "John",
"last_name": "Snow",
"role": "Signer",
"signing_order": 1
}
]
...
The response will contain the document ID as the “id” property.
{
"id":"XHjv8z3SfDuTseFSnhprML",
"name":"My minimal document",
"Status":"document.uploaded",
"date_created":"2021-07-05T15:05:27.787341Z",
"date_modified":"2021-07-05T15:05:27.787341Z",
"Expiration_date":null,
"Version":null,
"uuid":"XHjv8z3SfDuTseFSnhprML"
}
In this case, a signing order of recipients will be defined based on data in the document creation request.
You can verify the signing order using Document Details endpoint:
...
"recipients": [
{
"id": "dHHZoALntuGmybk4R7QJvk",
"first_name": "Josh",
"last_name": "Ron",
"email": "[email protected]",
"recipient_type": "CC",
"has_completed": false,
"role": "",
"signing_order": 2
},
{
"id": "8dYMZoCYbnRPyNoYLGaqWo",
"first_name": "John",
"last_name": "Snow",
"email": "[email protected]",
"recipient_type": "CC",
"has_completed": false,
"role": "",
"signing_order": 1
}
]
...
Set a signing order in the template
The best practice is to set up a signing order in your template (both editable and uploaded) so that all subsequent documents inherit this setting.
Structure your Document details
Use the create document endpoint description to decide what metadata and details you need to pass to your document. The simplest possible document schema consists of a name, template ID, and at least two recipients. Include your template ID under “template_uuid”
{
"name": "My minimal document",
"template_uuid": "ustHNnVaPCD6MzuoNBbZ8L",
"recipients": [
{
"email":"[email protected]",
"role":"user"
},
{
"email":"[email protected]",
"role":"Signer"
}
]
}
Create the Document
Using your authentication token or API key, and the content-type application/json
POST https://api.pandadoc.com/public/v1/documents
The response will contain the document ID as the element “id”
{
"id":"XHjv8z3SfDuTseFSnhprML",
"name":"My minimal document",
"Status":"document.uploaded",
"date_created":"2021-07-05T15:05:27.787341Z",
"date_modified":"2021-07-05T15:05:27.787341Z",
"Expiration_date":null,
"Version":null,
"uuid":"XHjv8z3SfDuTseFSnhprML"
}
In this case, a signing order of recipients in the document will be the same as a signing order of roles in the template.
...
"roles": [
{
"id": "UByHvrFwEgjC8CgDLja9wZ",
"name": "user",
"signing_order": "1",
"preassigned_person": null
},
{
"id": "Z2NQj6BcWvu99YZLrPYxVC",
"name": "Signer",
"signing_order": "2",
"preassigned_person": null
}
]
...
...
"recipients": [
{
"id": "dHHZoALntuGmybk4R7QJvk",
"first_name": "Josh",
"last_name": "Ron",
"email": "[email protected]",
"recipient_type": "CC",
"has_completed": false,
"role": "",
"signing_order": 1
},
{
"id": "8dYMZoCYbnRPyNoYLGaqWo",
"first_name": "John",
"last_name": "Snow",
"email": "[email protected]",
"recipient_type": "CC",
"has_completed": false,
"role": "",
"signing_order": 2
}
]
...
Setting a non-sequential signing order
If you need all members of the group to sign a document, but the order does not matter, you can modify your payload to have several users with the same signing order:
...
"recipients": [
{
"id": "dHHZoALntuGmybk4R7QJvk",
"first_name": "Josh",
"last_name": "Ron",
"email": "[email protected]",
"recipient_type": "CC",
"has_completed": false,
"role": "user",
"signing_order": 1
},
{
"id": "8dYMZoCYbnRPyNoYLGaqWo",
"first_name": "John",
"last_name": "Snow",
"email": "[email protected]",
"recipient_type": "CC",
"has_completed": false,
"role": "user2",
"signing_order": 1
}
],
...
Here's how the document looks on the UI:
Updated 7 months ago