DocuSign field mandatory/not mandatory per REST request - docusignapi

I have a question: is it possible to choose a field to be mandatory or not mandatory per DocuSign REST request when we are forming an envelope?
In some cases I need field to be mandatory, in other - not (or even not usable)

Yes, document tabs have parameters required which can be set to true or false.
They also have the parameter readOnly which can also be set to true or false
The API reference has all the parameters in it

Related

Skip optional TemplateRole in DocuSign envelope

I have a template with two signers. One of them is mandatory but the second one is optional. When I try to create an envelope without a filled second templateRole I receive INVALID_EMAIL_ADDRESS_FOR_RECIPIENT error. Is it possible to conditionally delete templateRole in the envelope with all 'SignHere' tabs?
The recommended way to go about this would be through Conditional Routing.
One of the ways you could go about making this work is to set the optional template role to be conditional based on a specific tab value. Say a text or checkbox. If you were to make these fields read-only and populate them on send, the first recipient would not be able to edit the value.
When our system sees the presence of this value, say a checkbox being checked, it can then follow the logic that you provide to drop the template role.
IE: When sending place a read-only checkbox set to be checked if you want the second recipient to take part.
When the first recipient finishes their portion, Conditional Routing engages. When it sees the checkbox is populated, it knows to send to the second role. If it doesn't see the value populated, that role is then ignored.
Does that make sense? An outline and setup guides for Conditional routing can be found on our support page at https://support.docusign.com/en/guides/ndse-user-guide-conditional-recipients -- the portion for setting this up for an envelope or template in the WebUI is about halfway down the page.
Regards,
Matt
Yes, you can simply not include a role object (template reference pattern) or signer object (composite templates) for the role that you're not interested in. Omitting a role/signer object will remove that recipient, and their tabs, from the envelope.
Here's an example using the API Request Builder
First run the example as is, then try it again but delete a role object.

Custom document metadata when using DocuSign REST API

Is there a way that I can provide any custom document metadata when adding documents to my DocuSign envelopes when using the REST API?
DocuSign appear to enforce the use of a positive integer for the DocumentId's we provide in the envelope. Whilst we are indeed using a positive integer, sometimes, there is some additional info that we need to supply, which we would like to come back in the DocuSign webhook events for specific documents.
I've had a look at the Document object but can't see anything obvious that I could use. An example would be simply providing a true/false along with a specific document, which I can inspect when I receive the DS webhook events.
At the moment, the only workaround I can think of is to add an Envelope Custom Field which contains any of my DocumentId's where 'true' is applicable, which feels like a bit of a shoddy solution, and I don't know if there's a character limit in those Envelope Custom Fields, which could break such a workaround.
Custom envelope text fields give you complete flexibility on providing meta-data that you can get back from the webhook. Here is some information about this:
This is how you create a custom field for an envelope:
https://developers.docusign.com/docs/esign-rest-api/reference/Envelopes/EnvelopeCustomFields/create/
This article shows code examples in 7 languagues on how to get the custom fields values :
https://developers.docusign.com/docs/esign-rest-api/how-to/get-envelope-custom-field-values/

DocuSign Connect API -- I need to prepopulate a required custom text field that will be editable by signer

I am using DocuSign Connect API to generate envelopes. I have a tab defined as a custom text field that is marked as required. I would like to pre-populate its value, and still give the signer the ability to edit the field.
When I populate the field with a string value, it is displayed to the signer but it is not editable. It is only editable if I fail to populate the field. I have verified that the 'CustomTabLocked' property is 'false', which I thought would have been enough to ensure the field's edit-ability.
Is the behavior I am seeking supported?
Posting an answer for the benefit of the community- when using the DocuSign SOAP API there is an XML property that you need set for certain properties. In this case to set CustomTabLocked to true you also need to set CustomTabLockedSpecified property to true.

API to display filled in tags in PNG format

We are looking for a way to have functionality similar to the following api method which returns a requested page in PNG format (non editable format):
https://www.docusign.com/p/RESTAPIGuide/RESTAPIGuide.htm#REST API References/Get a Page Image.htm
but with the ability to display the values for any custom, etc. tags that have been filled in. Currently, no tags or values are displayed regardless of whether they have been filled in.
Does any know a way to do this?
I don't believe you can bring back the tab values with the page image when the envelope is still in process, I think only completed envelopes will show that info.
You'll most likely have to make a separate API call to retrieve the recipient entered tab values. Have a look at the Get Envelope Recipient Status API call, and more importantly, it's one optional parameter. Details of the call are:
URL:
/accounts/{accountId}/envelopes/{envelopeId}/recipients
HTTP Method:
GET
Parameters:
The only required parameter is the envelope ID. If the optional query include_tabs is set to true, the tabs associated with the recipient are returned. If the optional query include_extended is set to true, the extended properties are returned.

Get form data (including concealed values) via API?

I'm working on a Form that contains various fields for adding values (texttabs/ listtabs/ etc).
The form goes to two recipients, one of whom has access to half the fields which have been set to "concealed" (true) to prevent other recipients from viewing personal information.
My question is, is it possible to retrieve the Form Data (concealed values) via API? I'd like to reattach these concealed values to the final product in my API script once the form is completed in Docusign. I searched everywhere but could not find an answer.
Thanks,
Dan
Yes this is possible to do through the DocuSign REST API. It's not very intuitive but there's an API call you can make to retrieve the recipient entered values.
Have a look at the Get Envelope Recipient Status API call, and more importantly, it's one optional parameter. Details of the call are:
URL:
/accounts/{accountId}/envelopes/{envelopeId}/recipients
HTTP Method:
GET
Parameters:
The only required parameter is the envelope ID. If the optional query include_tabs is set to true, the tabs associated with the recipient are returned. If the optional query include_extended is set to true, the extended properties are returned.
-Example (from documentation)-
GET https://{server}/restapi/{apiVersion}/accounts/{accountId}/envelopes/{envelopeId}/recipients?include_tabs=true
X-DocuSign-Authentication: <DocuSignCredentials><Username>{name}</Username><Password>{password}</Password><IntegratorKey>{integrator_key}</IntegratorKey></DocuSignCredentials>
Accept: application/json
Content-Type: application/json
See the REST API Guide page 192 for more info on the call.

Resources