To get started with Delay, first, search for and select the Delay app:
Then, select the trigger that best fits your workflow:
The "Delay Until" allows you to delay performing the next action until a particular date/time. You can set this up in one of two ways.
- You can type in a static date and time to tell your Zap exactly when to send along your trigger data to the action.
- You can use a date field from your trigger app to tell the Zap when to delay the action until. Datetime modifiers will work in this field as well.
Note that the maximum we can hold a task is for 1 month. If the date passed into the Delay Until field is greater than 1 month from when the zap triggered, it will error out.
If you're looking to delay sending data from your trigger to your action using a defined timeframe, you can do that using the "Delay For" trigger. Simply select the value and unit of time from the drop-down to set this up.
Once you've filled out those fields, you can continue to setup the action and then test it out to make sure everything is working as you expected. If all looks good, we'll let you know and turn on your Zap.
Note that the maximum we can hold a task is for 1 month, so you won't be able to set the Delay For trigger for longer than 4 weeks.
This is a feature of the Delay tool. Instead of resuming the next action after a set amount of time, the Delay After Queue step will wait for any previous runs of this Zap that are waiting to perform this action.
If there are multiple Zaps updating the same event, you can add a Delay After Queue step to those Zaps as well. The tool will use the name of your queue to check for other Zaps that are performing the same action and ensure the data gets updated in the correct order.
This action is used mostly to prevent Race Conditions and Rate Limiting, but can be used in any scenario where a Zap or multiple Zaps may trigger many tasks in parallel and you want to force them to run in series.
Check existing tasks in your Task History to get an idea how long Zaps take to complete and use that as Time Delayed For. Note that the maximum we can hold a task is for one month (31 days). Since the delays queue up, the maximum number of tasks in the queue depend on the Time Delayed For. If you set it to one day, then the maximum tasks in the queue is 31, which means that the 32nd task created within that period will error on the Delay step because the scheduled resume is too far away.
Be aware that the action is not a lock that can guarantee that the steps following it will never run simultaneously. Slowdowns in our infrastructure and auto or manual replays after errors may cause steps to still run at the same time.
Take a Zap that first tries to find a contact and then creates it when nothing is found. When two tasks related to the same contact run simultaneously, they could both complete the search before any of them has finished creating the contact. As a result, they'll both try to create the contact. In the best case the last task to attempt to create will error, but you could also end up with duplicate contacts.
Take a Zap that triggers on each attendee after a webinar ends and adds them to a mailing list. Because hundreds of task all try to run the same action, many error because the requests exceed what mailing list app can or will process. Because all erred tasks will autoreplay at the same time, it may take a long time for all tasks to complete successfully and some may not before they reach the maximum number of autoreplays.