Blog
Home/

From the Trenches: Reminders and Expiration

Author Drew Martin
Drew MartinDeveloper Support Engineer
Summary3 min read

Find out how to use the eSignature REST API to set your own reminders and expiration for an envelope.

When creating an envelope, it's important to consider how often the recipient should receive reminder emails, and when the envelope should expire. Default reminders and expiration are set in your account’s Admin section. When you’re creating integrations, you can specify reminders and expiration under the notification parameter in the envelope definition, and retrieve them from an existing envelope by making a GET call to: /accounts/{account_id}/envelopes/{envelope_id}/notification (as documented in the Developer Center).

If no notifications are defined, system defaults will be used instead of account defaults. This will result in an envelope with no reminders, no expiration warning, and a 120 day expiration timer.

If you will not be defining custom reminders or expiration on an envelope, the UseAccountDefaults parameter should be set to "true."

Here’s an example set of default values from my account:

ReminderDelay: 44
ReminderFrequency: 33
ExpireAfter: 22
ExpireWarn: 11

Also, if the UseAccountDefaults parameter is set to true, the account's default settings (defined in Go to Admin > Reminders and Expiration) will be used. This is the case regardless of other parameters being defined:

"notification": {
	"useAccountDefaults": "true",
	"reminders": {
        "reminderEnabled": "true",
        "reminderDelay": "2",
        "reminderFrequency": "1"
	},
	"expirations": {
        "expireEnabled": "True",
        "expireAfter": "250",
        "expireWarn": "5"
	}
}

This results in the account's defaults being used, regardless of the other parameters set:

ReminderDelay: 44
ReminderFrequency: 33
ExpireAfter: 22
ExpireWarn: 11

If your goal is to set custom settings in the envelope, set UseAccountDefaults to false**,** ReminderEnabled and ExpireEnabled to true, and then set the remaining parameters as you wish:

"notification": {
	"useAccountDefaults": "false",
	"reminders": {
        "reminderEnabled": "true",
        "reminderDelay": "2",
        "reminderFrequency": "1"
	},
	"expirations": {
        "expireEnabled": "true",
        "expireAfter": "250",
        "expireWarn": "5"
	}
}

This results in what you would expect:

ReminderDelay: 2
ReminderFrequency: 1
ExpireAfter: 250
ExpireWarn: 5

Setting both ReminderEnabled and ExpireEnabled to false results in the related parameters being discarded and the account defaults being used:

"notification": {
	"useAccountDefaults": "false",
	"reminders": {
        "reminderEnabled": "false",
        "reminderDelay": "2",
        "reminderFrequency": "1"
	},
	"expirations": {
        "expireEnabled": "false",
        "expireAfter": "250",
        "expireWarn": "5"
	}
}

This produces the following results:

ReminderDelay: 44
ReminderFrequency: 33
ExpireAfter: 22
ExpireWarn: 11

Note that all Docusign envelopes expire at some point. If you want an extended expiration period, use an ExpireAfter value of 999.

If you want either custom reminders or custom expirations, you should define both. Defining one without the other results in the undefined values being set to 0, not the account defaults:

	"notification": {
		{
		"expirations": {
		"expireAfter": "250",
		"expireEnabled": "true",
		"expireWarn": "5"
	},
	"useAccountDefaults": "false"
	}
}

This produces the following results:

ReminderDelay: 0
ReminderFrequency: 0
ExpireAfter: 250
ExpireWarn: 5

Likewise, when reminders are defined without expirations:

"notification": {
	"reminders": {
		"reminderDelay": "2",
		"reminderEnabled": "true",
		"reminderFrequency": "1"
  	},
  	"useAccountDefaults": "false"
}

This produces the following results:

ReminderDelay: 2
ReminderFrequency: 1
ExpireAfter: 0
ExpireWarn: 0

Note that an envelope with ExpireAfter set to 0 will expire the next day.

All of this holds true whether you are calling the API directly or through an SDK. In fact, when I was testing to confirm, I used the C# SDK for ease of repetition. Adding notifications to the envelope definition can look like this:

Expirations expirations = new Expirations("250", "false", "5"); //ExpireAfter, Enabled, Warning
Reminders reminders = new Reminders("2", "true", "1");  //ReminderDelay, Enabled, Frequency
envelopeDefinition.Notification = new Notification(expirations, reminders, "false"); //Expirations, Reminders, UseDefaults

Pulling the notifications on a live envelope can be done like this:

Notification activeNotification = envelopesApi.GetNotificationSettings(accountId, envelopeId);

Docusign gives you, through the Admin controls and the API, the power and flexibility to manage reminders and expirations as you wish. Be sure to set defaults in the Admin section that meet the largest proportion of your needs, and use the API to specify custom settings as needed.

Make sure to signup for our Developer Newsletter to stay up-do-date with the latest Docusign developer news.

Author Drew Martin
Drew MartinDeveloper Support Engineer
More posts from this author

Related posts

  • From the Trenches: Testing Docusign Connect with ngrok
    Developer Support Articles

    From the Trenches: Testing Docusign Connect with ngrok

    Author Ivan Dinkov
    Ivan Dinkov
  • From the Trenches: Controlling Sign on Paper options via the API

    From the Trenches: Controlling Sign on Paper options via the API

    Author Guilherme Flores
    Guilherme Flores
From the Trenches: Testing Docusign Connect with ngrok

From the Trenches: Testing Docusign Connect with ngrok

Author Ivan Dinkov
Ivan Dinkov
From the Trenches: Controlling Sign on Paper options via the API

From the Trenches: Controlling Sign on Paper options via the API

Author Guilherme Flores
Guilherme Flores

Discover what's new with Docusign IAM or start with eSignature for free

Explore Docusign IAMTry eSignature for Free
Person smiling while presenting