This article will guide you through the process of sending a document for signature using a template with the Sign.Plus eSignature API.
By following these steps, you'll create an envelope from a template, set recipient details, and send the envelope for signature.
Prerequisites
- A Sign.Plus account with an API Plan
- Your
Personal Access Token
- An existing template in your Sign.Plus account
Step 1: Create an envelope from a template
- Use the POST /v2/envelope/from_template/{template_id} endpoint to create a new envelope from a template.
- Replace
{template_id}
with the ID of your existing template.
Where can I find my template ID?- Go to https://app.sign.plus/templates .
- Click on the desired template name.
- Copy the ID from the right sidebar.
- Go to https://app.sign.plus/templates .
- Send a POST request to
POST /v2/envelope/from_template/{template_id}
with the following JSON body:{
"name": "My wonderful envelope from template"
} - Include your API key in the
Authorization
header. - On success, you will receive
an Envelope
object.{
"id": "66eb7d0467d2d549b89fcb6d",
// ...
"signing_steps": [
{
"recipients": [
{
"id": "66eb7d0467d2d549b89fcb70",
"uid": null,
"name": "",
"email": "",
"role": "SIGNER",
"verification": null
}
]
},
{
"recipients": [
{
"id": "66eb7d0467d2d549b89fcb71",
"uid": null,
"name": "",
"email": "",
"role": "RECEIVES_COPY",
"verification": null
},
{
"id": "66eb7d0467d2d549b89fcb72",
"uid": null,
"name": "",
"email": "",
"role": "SIGNER",
"verification": null
}
]
}
],
"documents": [
// ...
],
"notification": {
// ...
}
} - Save the returned
id
asenvelope_id
for future API calls. - Record the
id
of each recipient for later use in the signing process.
Examples:-
66eb7d0467d2d549b89fcb71
: FirstSIGNER
(Step 1) -
66eb7d0467d2d549b89fcb71
:RECEIVES_A_COPY
(Step 1) -
66eb7d0467d2d549b89fcb72
: SecondSIGNER
(Step 2)
-
Step 2: Set recipient details
If your template doesn't have fixed recipients and you need to set or update recipient details:
- Use the POST /v2/envelope/{envelope_id}/signing_steps endpoint to update recipient information.
- Replace
{envelope_id}
with the ID you received in Step 1. - Send a
POST
request with the following JSON body:{
"signing_steps": [
{
"recipients": [
{
"id": "66eb7d0467d2d549b89fcb70",
"name": "John Doe",
"email": "john.doe@example.com",
"role": "SIGNER"
}
]
},
{
"recipients": [
{
"id": "66eb7d0467d2d549b89fcb71",
"name": "Mark Twain",
"email": "m.twain@example.com",
"role": "RECEIVES_COPY"
},
{
"id": "66eb7d0467d2d549b89fcb72",
"name": "Jane Smith",
"email": "j.smith@example.com",
"role": "SIGNER"
}
]
}
]
} - On success, you'll receive an array of
SigningStep
object.
Step 3: Send your envelope for signature
- Use the POST /v2/envelope/{envelope_id}/send endpoint to send the envelope.
- Replace
{envelope_id}
with your envelope ID from Step 1. - Send a
POST
request to this endpoint. - On success, the envelope will be sent to the recipient(s) for signature.
Conclusion
You've now successfully sent a document for signature using a template with the Sign.Plus eSignature API. The recipient(s) will receive an email notification with a link to sign the document.
Using templates can significantly streamline your document signing workflow, especially for frequently used documents with consistent layouts and signing requirements.