1
votes

I know that I can do the following using PDF field transform and a composite template (I'm actually using the C# SDK so the actually JSON isn't as important as knowing this is possible using the SDK) to have a recipient sign all signature tabs on a PDF form (not a DocuSign template) whose names start with PrimarySigner

"tabs":{
   "signHereTabs":[
   {
      "tabLabel":"PrimarySigner\\*"
   }
]

Suppose that a document has three sets of signature fields. Signer one gets PrimarySigner, Signer two gets SecondarySigner and depending on the context of the envelope Signer one or Signer two might get TertiarySigner. In the case of Signer one getting those signature fields can I add multiple wildcards for a signer? e.g. :

"tabs":{
   "signHereTabs":[
   {
      "tabLabel":"PrimarySigner\\*"
   }
   ],
   "signHereTabs":[
   {
      "tabLabel":"TertiarySigner\\*"
   }
   ]
}

UPDATE: I've implemented this, I thought, using the C# SDK. However, the signature tags are just disappearing for both signers; when they view the documents they are getting the free form rather than the directed signing experience. The PDF document I'm sending has two PDF signature fields named DocuSignSignHere_Signer1_1 and DocuSignSignHere_Signer2_1. I've double checked the obvious such as setting TransformPDFFields, etc. Wildcards will be respected on either end of the pdf form field names, yes?

Here is the JSON of the serialized envelope.

{
   "compositeTemplates":[
      {
         "inlineTemplates":[
            {
               "documents":[
                  {
                     "documentBase64":"redacted",
                     "documentId":"1",
                     "name":"TestPDFForm.pdf",
                     "transformPdfFields":"true"
                  }
               ],
               "recipients":{
                  "signers":[
                     {
                        "email":"[email protected]",
                        "name":"Test Signer 1",
                        "recipientId":"1",
                        "tabs":{
                           "signHereTabs":[
                              {
                                 "tabLabel":"DocuSignSignHere_Signer1\\*"
                              }
                           ]
                        }
                     },
                     {
                        "email":"[email protected]",
                        "name":"Test Signer 2",
                        "recipientId":"2",
                        "tabs":{
                           "signHereTabs":[
                              {
                                 "tabLabel":"DocuSignSignHere_Signer2\\*"
                              }
                           ]
                        }
                     }
                  ]
               },
               "sequence":"1"
            }
         ]
      }
   ],
   "customFields":{
      "textCustomFields":[
         {
            "name":"ClientId",
            "value":"A:1!!D:1!!T:1!!UserId:123!!C:10BD32B131C5ECE3"
         }
      ]
   },
   "documents":[

   ],
   "emailSubject":"Test Email",
   "eventNotification":{
      "envelopeEvents":[
         {
            "envelopeEventStatusCode":"completed"
         }
      ],
      "includeCertificateOfCompletion":"true",
      "includeCertificateWithSoap":"false",
      "includeDocumentFields":"true",
      "includeSenderAccountAsCustomField":"true",
      "includeTimeZone":"true",
      "requireAcknowledgment":"true",
      "signMessageWithX509Cert":"false",
      "url":"https://test.test.com/documentcallback.aspx",
      "useSoapInterface":"false"
   },
   "status":"sent"
}
1
Got it working. For the tabLabel I used DocuSignSignHere_Signer1\*. The trick was that there had to be a compositeTemplate for each document being sent and the document had to be in the compositeTemplate.Document property rather than in the inlineTemplates.Documents collection. Now to get the signers the ability to edit other fields.Fred

1 Answers

2
votes

Yes you can assign multiple fields with WildCards to a single Signer.

In your example, you should move the wild card prefix (\\*) at the beginning of the tabLabel. Also you can move the signHereTabs into a single array.

Here is a sample PostEnvelope request. See full example here

POST /v2/accounts/{accountId}/envelopes

 {
     "compositeTemplates": [
         {
             "inlineTemplates": [
                 {
                     "sequence": "1",
                     "recipients": {
                         "signers": [
                             {
                                 "name": "Jane Doe",
                                 "email": "[email protected]",
                                 "recipientId": "1",
                                 "tabs": {
                                     "signHereTabs": [
                                         {
                                             "tabLabel": "\\*PrimarySigner"
                                         },
                                         {
                                             "tabLabel": "\\*TertiarySigner"
                                         }
                                     ]
                                 }
                             },
                             {
                                 "name": "Bob Doe",
                                 "email": "[email protected]",
                                 "recipientId": "2",
                                 "tabs": {
                                     "signHereTabs": [
                                         {
                                             "tabLabel": "\\*SecondarySigner"
                                         }
                                     ]
                                 }
                             }
                         ]
                     }
                 }
             ],
             "document": {
                 "documentId": "1",
                 "name": "Doc with Fields",
                 "transformPdfFields": "true",
                 "fileExtension": "pdf",
                 "documentBase64": ""
             }
         }
     ],
     "emailSubject": "Doc with form fields",
     "status": "sent",
 }