Currently we use the "CLIENT SIGNATURE: " Tag to generate the group docs signature. Question? How can we add another signer? Is there a Tag related to this that we can just add to the word doc then upload via the API for signing?
Hi,
Thank you for the request. Unfortunately no, the only way to add the recipient via the API is described here.
Best regards.
Yes, we understand, but the question was not answered.
Please provide a functional example of how to use the API to create an Envelope that has multiple signers in a sequential order.
Example:
Signer 1 is the Client at email address #1 where Envelope is Sent
Signer 2 is the Business Owner who needs to sign the Envelope 2nd, so the Envelope is Sent to Signer 2 AFTER Signer 1 has Signed it.
How would we implement this using the Signature API?
Hi,
Thank you for the question. To achieve this goal you have two variants:
1. When you create a envelop you can set this option to true
var signature_envelope_info = {
ownerShouldSign : “Owner Should Sign”(boolean)
}
Then the envelop should be signed by both - client and owner.
2. Set callback action for the envelop. This callback action will be triggered when the envelop is signed - in this action you can add next recipient which should sign the document and send the envelop again. The code example:
<pre class=“code-java” style=“padding: 0px; margin-top: 0px; margin-bottom: 0px; overflow: auto; font-family: “Courier New”, Courier, monospace; line-height: 1.3; color: rgb(51, 51, 51); font-size: 12.6667px; background-color: rgb(255, 255, 255);”> //Create apiClient object
var aClient = new groupdocs.ApiClient(new groupdocs.GroupDocsSecurityHandler(“your privateKey”));
// Create SignatureApi object
var api = new groupdocs.SignatureApi(aClient, “Base path to API server”);
// Create new envelope
var envelop = api.CreateSignatureEnvelope(function(response) {
console.log(“success callback”);
console.log(response);
var envelope_id = response.result[“envelope”][“id”];
// Add uploaded document to envelope
api.AddSignatureEnvelopeDocument(function(response) {
console.log(“success callback”);
console.log(response);
// Get role list for current user
api.GetRolesList(function(response) {
console.log(“success callback”);
console.log(response);
//Get role_id for “Signer”
var role_id = response.result[“roles”][1][“id”];
// Add recipient id
api.AddSignatureEnvelopeRecipient(function(response) {
console.log(“success callback”);
console.log(response);
var recipient_id = response.result[“recipients”][0][“id”];
//Get document from envelope
api.PublicGetEnvelopeDocuments(function(response) {
console.log(“success callback”);
console.log(response);
var document_id = response.result[“documents”][0][“documentId”];
//Add signature envelope field
var field = {
locationX : “0.15”,
locationY : “0.73”,
locationWidth : “150”,
locationHeight : “50”,
name : “field name”,
forceNewField : true,
page : “1”
};
api.AddSignatureEnvelopeField(function(response) {
console.log(“success callback”);
console.log(response);
//Send envelope
api.SignatureEnvelopeSend(function(response) {
console.log(“success callback”);
console.log(response);
},“your clientId”, envelop_id, “callback url”)
},“your clientId”, envelop_id, document_id, recipient_id, “0545e589fb3e27c9bb7a1f59d0e3fcb9”, field)
},envelop_id, recipient_id)
},“your clientId”, envelop_id, “recipient email”, “recipient first name”, “recipient last name”, role_id)
},“your clientId”)
},“your clientId”, envelope_id, “file GUID”)
},“your clientId”, “envelope name”)<pre class=“code-java” style=“padding: 0px; margin-top: 0px; margin-bottom: 0px; overflow: auto; font-family: “Courier New”, Courier, monospace; line-height: 1.3; color: rgb(51, 51, 51); font-size: 12.6667px; background-color: rgb(255, 255, 255);”>
<pre class=“code-java” style=“padding: 0px; margin-top: 0px; margin-bottom: 0px; overflow: auto; font-family: “Courier New”, Courier, monospace; line-height: 1.3; color: rgb(51, 51, 51); font-size: 12.6667px; background-color: rgb(255, 255, 255);”>Best regards.
var aClient = new groupdocs.ApiClient(new groupdocs.GroupDocsSecurityHandler(“your privateKey”));
// Create SignatureApi object
var api = new groupdocs.SignatureApi(aClient, “Base path to API server”);
// Create new envelope
var envelop = api.CreateSignatureEnvelope(function(response) {
console.log(“success callback”);
console.log(response);
var envelope_id = response.result[“envelope”][“id”];
// Add uploaded document to envelope
api.AddSignatureEnvelopeDocument(function(response) {
console.log(“success callback”);
console.log(response);
// Get role list for current user
api.GetRolesList(function(response) {
console.log(“success callback”);
console.log(response);
//Get role_id for “Signer”
var role_id = response.result[“roles”][1][“id”];
// Add recipient id
api.AddSignatureEnvelopeRecipient(function(response) {
console.log(“success callback”);
console.log(response);
var recipient_id = response.result[“recipients”][0][“id”];
//Get document from envelope
api.PublicGetEnvelopeDocuments(function(response) {
console.log(“success callback”);
console.log(response);
var document_id = response.result[“documents”][0][“documentId”];
//Add signature envelope field
var field = {
locationX : “0.15”,
locationY : “0.73”,
locationWidth : “150”,
locationHeight : “50”,
name : “field name”,
forceNewField : true,
page : “1”
};
api.AddSignatureEnvelopeField(function(response) {
console.log(“success callback”);
console.log(response);
//Send envelope
api.SignatureEnvelopeSend(function(response) {
console.log(“success callback”);
console.log(response);
},“your clientId”, envelop_id, “callback url”)
},“your clientId”, envelop_id, document_id, recipient_id, “0545e589fb3e27c9bb7a1f59d0e3fcb9”, field)
},envelop_id, recipient_id)
},“your clientId”, envelop_id, “recipient email”, “recipient first name”, “recipient last name”, role_id)
},“your clientId”)
},“your clientId”, envelope_id, “file GUID”)
},“your clientId”, “envelope name”)<pre class=“code-java” style=“padding: 0px; margin-top: 0px; margin-bottom: 0px; overflow: auto; font-family: “Courier New”, Courier, monospace; line-height: 1.3; color: rgb(51, 51, 51); font-size: 12.6667px; background-color: rgb(255, 255, 255);”>
<pre class=“code-java” style=“padding: 0px; margin-top: 0px; margin-bottom: 0px; overflow: auto; font-family: “Courier New”, Courier, monospace; line-height: 1.3; color: rgb(51, 51, 51); font-size: 12.6667px; background-color: rgb(255, 255, 255);”>Best regards.
That is helpful.
Currently, we are using the Owner as the only signer of each envelope.
It sounds as if we would have to rewrite our e-sign API code to make the owner the “client” etc which may be a bit confusing for us to implement, but we do appreciate the reply.
Hi,
You are welcome. If you will have any questions - please feel free to contact us.
Best regards.