Skip to main content

Hi everyone,
I'm reaching out because I've encountered an unexpected issue with DocuSign and I'm wondering if anyone else has experienced the same thing.


I have an application that has been using DocuSign for over 3 years to handle signature processes. I'm using a demo account, and I've registered an app in the DocuSign developer portal.
When a document is signed or declined, DocuSign sends a POST notification (webhook) to my API. For years, the payload I received looked like this, and was successfully deserialized into this C# class:

 

public class DocuSignEventNotificationResponse { public string status { get; set; } public string envelopeId { get; set; } public string documentsUri { get; set; } public string recipientsUri { get; set; } public Sender sender { get; set; } } public class Sender { public string userName { get; set; } public string userId { get; set; } public string accountId { get; set; } public string email { get; set; } }

This worked perfectly in my PostNotificationEvent method, which listens for events like "completed" or "declined".


Suddenly, without any changes on my side, the parameter DocuSignEventNotificationResponse response now always comes in as null.
I checked the DocuSign logs, and noticed that the payload structure now looks like this:

 

{ "event": "envelope-completed", "apiVersion": "v2.1", "uri": "/restapi/v2.1/accounts/1e78c******8c2db/envelopes/18*******91dca", "retryCount": 1, "configurationId": 0, "generatedDateTime": "2025-07-16T09:49:25.5964409Z", "data": { "accountId": "1e*******c2db", "userId": "abcdde*******03ed7", "envelopeId": "1870944*********ca" } }

Has the webhook payload schema changed?
Did DocuSign officially modify the structure of the notification events?

I updated my C# class to match this new structure and it works again — but I’d really like to understand:

  • Is this a documented or official change?

  • Is there a way to restore the old payload format?

  • Is this specific to the demo environment or due to new app settings?

Thanks in advance to anyone who can help clarify what happened. I just want to be sure I'm not missing something obvious, and that I'm handling the change properly.

Be the first to reply!