DocuSign Envelope Fields - status_changed_date_time and last_modified_date_time - Webhooks Response - docusignapi

We are using the DocuSign SDK (version 3.3.0) and utilizing webhooks to receive the various envelope and recipient events.
In the envelope, I need to retrieve the fields (status_changed_date_time and last_modified_date_time) in the XML message from the DocuSign Connect. But I identified that those fields are not being sent in the XML message.
Is there any way to include those above mentioned fields in the XML message from DocuSign connect?

The XML notification body is what it is. If it doesn't include the data your application needs, then make additional API calls to DocuSign to obtain the data you want. Doing so is a common pattern.
Note: It is important that you respond to DocuSign with a 200 status right away--all your processing should be done asynchronously on a different thread. Don't delay your 200 response.

Related

DocuSign listener xml response for voided envelopes, status is sent

The status for the voided envelope is "sent" in the XML POST response for the webhook listener. The document pdf bytes are also in the "sent" status . But the envelope is showing as "void" in the docusign account and the documents are voided too .# Inbar Gazit
You may need to open a case with DocuSign Support and provide specifics such as your account ID and the envelope ID in question.
Are you using an account-level Connect configuration, or are you using an envelope-level EventNotifications definition? Either way, you'll want to confirm what events are set to fire. If you haven't enabled the 'Voided' event, it won't fire.
Are Logging and Require Acknowledgement enabled? If so, you can check the Failure queue to see if the event fired, but was rejected by your listener. Logging will show which events have fired, as well.
Finally, you can use a free service like https://webhookapp.com/ or http://webhook.site to confirm that the data coming from DocuSign matches what you're expecting.

Conditional Notifications

I have a checkbox list of locations on my powerform and I'd like to implement logic that sends a copy of the signed powerform to the location based on the users selection. Is such conditional logic possible? Would this be something that could be done using the API perhaps?
It's not possible to have DocuSign automatically send the completed/signed document(s) to specific locations. However, you could achieve the same end result by doing the following:
Configure DocuSign Connect to subscribe to the "Envelope Complete" notification and specify that you want the notification to contain the document(s) as well (in addition to the form data, recipient data, etc. that it contains by default).
Design your listener application (where DocuSign Connect will send HTTP notifications each time an Envelope is Completed) to parse the payload of each request received and use the form data to determine where the Completed document(s) need to be sent. Then, programmatically extract the documents from the payload of that request and send them to the correct location(s).
In other words, you create a simple (listener) application and configure DocuSign Connect to send an HTTP notification to that application's endpoint each time an Envelope is completed. The body of each notification that your listener application receives from DocuSign Connect will contain info about Envelope Status, Recipients, Form Data, and also the document bytes (provided that you've configured DocuSign Connect to include the documents in the notifications it sends). Your listener app then has all the info it requires in order to send the completed document to the location that the user/signer specified on the form.

Resend Webhook Notification on Docusign

Is it possible to request from the API to resend a webhook?
From here i can see this is possible from the Admin Panel
https://www.docusign.com/blog/dsdev-adding-webhooks-application/
When a webhook request fails, the Failures screen also enables you to
resend the notification. This can be very helpful when debugging your
listener software.
I want to do the same but from the API.
Thanks!
You can use the ConnectEvents Api's.
Specifically the following api's
retryForEnvelope
Republishes Connect information for the specified envelope.
retryForEnvelopes
Republishes Connect information for the specified set of envelopes. The primary use is to republish Connect post failures by including envelope IDs for the envelopes that failed to post in the request. The list of envelope IDs that failed to post correctly can be retrieved by calling to [ML:GetConnectLog] retrieve the failure log.

HTTP DELETE Operation using DocuSign API

We are using DocuSign Rest API from our Pega application. There is a scenario where we have to delete a particular recipient, and the restful service for this functionality is an HTTP DELETE which expects a message body (JSON format).
But Pega has certain limitation in sending message body for HTTP DELETE requests and hence we are now unable to hit the DocuSign Rest API for Delete Recipient.
API for Docusign
Pega provides some workaround in such scenarios where there is a message body required for DELETE operations.
Can you please let me know if DocuSign provides an alternate way to invoke the service without a message body? We want this information to decide if we need to go the Pega way or DocuSign way to fix this issue.
You can delete the recipient by specifying the recipientId in the URL.
See deleteEnvelopeRecipients api
DELETE /v2/accounts/{accId}/envelopes/{envId}/recipients/{recipientId}
The api you are using is deleteListEnvelopeRecipients
Use deleteListEnvelopeRecipients api if you want to delete multiple recipients in a single call. You will have to specify the HTTP body for this call.

Check document status DocuSign

How can I check if a document is signed with DocuSign API? Exists any API service that lets me know the document status?
I tried to obtain all objects in "completed" folder but the response doesn't contains documentId and I can't know which of documents is each of the objects
DocuSign tracks Recipient status and Envelope status (but not Document status). In other words:
If Envelope status = Completed, you can safely assume that each
Recipient in the envelope workflow supplied all information that the
Sender marked as Required.
If Recipient status = Completed, you can safely assume that the
Recipient supplied all information that the Sender marked as Required
for him/her.
You have several options for determining the status of a Recipient or an Envelope:
Use the DocuSign REST API (https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopes/get/). If you're wanting to query for the status of a single envelope-- the operation is: GET https://{{env}}.docusign.net/restapi/{{version}}/accounts/{{acctId}}/envelopes/{{envId}}
Use the DocuSign SOAP API (http://www.docusign.com/sites/default/files/DocuSignAPI_Guide.pdf).
Use DocuSign Connect, such that Connect will notify your "listener" application about Envelope and/or Recipient statuses that you specify. See here
Finally, when querying for Envelope status using either the REST API or SOAP API, keep in mind the polling limitations that DocuSign imposes on the request status operations. These limitations are described in the API Best Practices guide

Resources