2

I need to be able to resend an already sent API. Either because an email was lost, or perhaps a signer declined, and I want them to sign again.

I am using the call below. According to the docs, I need to add the 'resend' to the envelope. But I can't find where I put that. Does anyone have any idea how to add that flag?

EnvelopesApi envelopesApi = new EnvelopesApi();
EnvelopeSummary envelopeSummary = envelopesApi.CreateEnvelope(accountId, envDef);
jordanm
  • 33,009
  • 7
  • 61
  • 76
Brian Kitt
  • 665
  • 1
  • 6
  • 20

1 Answers1

7

If a signer has declined, you'll have to create/send a brand new Envelope, because once a signer declines, the Envelope is in a terminal state (cannot be completed).

If you need to re-send the signing invitation email to specific recipient(s), for example, because the initial email has been misplaced, you'll need to use the Update Envelope Recipients operation to do so (more details about this scenario are available in my answer here: Resend DocuSign Emails). To do this with the DocuSign C# SDK, your code would look like this:

envelopesApi.UpdateRecipients(accountId, envelopeId, recipients, options);

...where recipients specifies the recipient(s) that you want to re-send emails to, and options is an EnvelopesApi.UpdateRecipientsOptions object with the resendEnvelope property set to (the string value) true.

Kim Brandl
  • 13,125
  • 2
  • 16
  • 21
  • Awesome! Thanks so much. I wasn't sure if I could resend a decline. So that's great advice. The 'Update Recipients' call is really the one I was looking for. I was looking for something like 'Resend' or similar. That's why I couldn't find it. Thanks again! – Brian Kitt Oct 07 '17 at 16:54
  • No problem at all; happy I could help! – Kim Brandl Oct 09 '17 at 03:51
  • @KimBrandl Is there a way to resend the envelope with this method without defining the recipients (again)? – NiAu Jun 21 '19 at 12:30
  • @NiAu I don't think it's possible to resend the envelope without specifying the recipients. I tested this just now, and the server returns the error code `INVALID_REQUEST_BODY` and error message `The request body is missing or improperly formatted.` if I don't specify recipients. This makes sense, really -- because this API endpoint was originally designed for updating recipient info (even though you *can* use it to resend an envelope without changing recipient info) -- and also because in most re-send scenarios you'll want to resend to a specific person, not to all recipients. – Kim Brandl Jun 21 '19 at 13:33
  • @KimBrandl Thx for your quick answer! I also tested it that way, but I hoped that because it was an optional parameter that it would resend the envelope to all 'open' signers. But then I have to add all original recipients. Will the DocuSign system filter out the 'completed' signers or do I need to only pass those 'open' signers'? – NiAu Jun 21 '19 at 13:51
  • 1
    @NiAu with a bit more research, I've found a way to resend an envelope to all pending recipients: send a `PUT` request to this endpoint `https://demo.docusign.net/restapi/v2/accounts//envelopes/?resend_envelope=true` and set the request body to `{}`. Note that this endpoint is no longer the **Update Recipients** endpoint (it doesn't contain `/recipients` at the end). – Kim Brandl Jun 21 '19 at 14:00