简体   繁体   中英

DocuSign: Signer Tabs are lost when updating an envelope

When I initially create and sent a DocuSign envelope, I define the tabs where to recipients needs to sign and where the signed date will be placed. This works great with the eSignatures REST API.

When some changes are done in the document (and the envelope status is sent or delivered), the document of the envelope can still be updated. With the code below I'm able to update the document and email subject/body. After resend, I get the changes made to the email and document correctly.

In the 'new' DocuSign email the signer tabs are lost and I don't have a place to sign.

What I have tried, is to define the signerTabs again and bound it to the recipient.

Update document and email subject/body

envDef.EmailSubject = env.EmailSubject = "Updated documents";
envDef.EmailBlurb = env.EmailBlurb = "Changes were made to the document(s)";
env.Status = EnumHelper.GetDescription(DSStatus.Sent);
envDef.Documents = new List<Document>() { doc };

apiClient.UpdateDocuments(_accountId, envelopeId, envDef);

//resend
apiClient.Update(_accountId, envelopeId, env, new EnvelopesApi.UpdateOptions() { resendEnvelope = true.ToString() });
Signer signer1 = new Signer
{
    RecipientId = "1"
};
SignHere signHere1 = new SignHere
{
    AnchorString = "/sn1/"
};
Tabs signer1Tabs = new Tabs
{
    SignHereTabs = new List<SignHere> { signHere1 },
    DateSignedTabs = new List<DateSigned> { dateSigned1 },
    FullNameTabs = new List<FullName> { fullName1 }
};
signer1.Tabs = signer1Tabs;

Recipients recipients = new Recipients
{
    Signers = new List<Signer> { signer1 },
};
env.Recipients = recipients;

EDIT

This is my request body when sending an envelope. The signer tabs are added with anchorString , in this case /sn1/. So it seems that the updated document no longer has these tabs.

"recipients" : {
    "signers" : [ {
      "routingOrder" : "1",
      "name" : "Recipient Name",
      "email" : "Recipient Email Address",
      "recipientId" : "1",
      "tabs" : {
        "signHereTabs" : [ {
          "anchorString" : "/sn1/",
        } ]

How comes that those signer details are lost, but the envelope is resend to the correct signers again?

so your tabs, how were they created? manually by dragging dropping in the tagger ? You can define them using the API as well. You can GET them for an existing envelope and then "rehydrate" them back to the envelope after you updated it.

Probably, it is common in DocuSign that the tabs of the recipients are lost when updating a document. To solve this I got the recipients with the tabs included with following call: apiClient.ListRecipients(_accountId, envelopeId, new EnvelopesApi.ListRecipientsOptions(){ includeTabs = true.ToString() });

This result can be placed in envDef.Recipients.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM