Suresh Ram
Suresh Ram

Reputation: 41

DocuSign webhook never retried

I am using the official DocuSign java client 3.2.0. I have set the envelope level notification as listed below. Say the webhook URL is https://A.

EventNotification eventNotification = new EventNotification();
eventNotification.setIncludeHMAC("true");
eventNotification.setIncludeDocuments("true");
eventNotification.setRequireAcknowledgment("true");
eventNotification.setUrl("https://A");
EnvelopeEvent envelopeEvent = new EnvelopeEvent();
envelopeEvent.setEnvelopeEventStatusCode("completed");
eventNotification.setEnvelopeEvents(Arrays.asList(envelopeEvent));
envelopeDefinition.setEventNotification(eventNotification);
    

I am trying to test the retry logic for this webhook. After few successful push requests, I intentionally made the service to return non 200 code (Example 404) for one of the request. Then I reverted the logic, so that the service continue to return 200 response for new requests. I checked after more than 24 hours, the failed request was never retried. Is there any reason why the request was never retried eventhough there were successful requests after the failure?

I also have a connect listener configured to push the complete notification for all the envelopes to webhook URL https://B Currently we have come issue with this webhook URL, so all the push notification to https://B is getting failed. Is the continuous failure with the https://B connect webhook stop retries to envelope level notification webhook https://A ? Also Is there any difference between the connect retry vs envelope notification retries?

Upvotes: 0

Views: 316

Answers (2)

IvanD
IvanD

Reputation: 783

For for global account events (all users and envelopes) make sure "Require Acknowledgement" option is selected in your Connect settings for the specific webhook for the failed to be re-pushed.

Connect webhook is global (all users and envelopes) for the account and you can select when is triggered for example "Envelope Sent", "Envelope Voided" etc. In this way you can have multiple webhooks handling different account events.

In your case you are setting webhook notification only for the specified envelope.

Also this could help you https://developers.docusign.com/docs/esign-rest-api/reference/Connect/ConnectEvents/

Upvotes: 1

Larry K
Larry K

Reputation: 49114

Connect retries at the account level for Aggregate Messages (the default) after 24 hours after a subsequent message is sent. I will ask about envelope-level connect retries.

Better is to switch to Send Intermediate Messages (SIM) queuing. It retries faster.

Best is to have a 100% always up listener (server). An easy and cheap (free) technique for this is to use AWS PaaS to receive and enqueue the messages. See blog post and sample code. We also have sample code for Google Cloud and Azure.

Upvotes: 0

Related Questions