Delay
When publishing a message, you can delay it for a certain amount of time before it will be delivered to your API. See the pricing table for more information
For free: The maximum allowed delay is 7 days.
For pay-as-you-go: The maximum allowed delay is 1 year.
For fixed pricing: The maximum allowed delay is Custom(you may delay as much as needed).
Relative Delay
Delay a message by a certain amount of time relative to the time the message was published.
The format for the duration is <number><unit>
. Here are some examples:
10s
= 10 seconds1m
= 1 minute30m
= half an hour2h
= 2 hours7d
= 7 days
You can send this duration inside the Upstash-Delay
header.
Upstash-Delay
will get overridden by Upstash-Not-Before
header when both are
used together.
Absolute Delay
Delay a message until a certain time in the future. The format is a unix timestamp in seconds, based on the UTC timezone.
You can send the timestamp inside the Upstash-Not-Before
header.
Upstash-Not-Before
will override the Upstash-Delay
header when both are used
together.
Delays in Schedules
Adding a delay in schedules is only possible via via Upstash-Delay
. The
delay will affect the messages that will be created by the schedule and not the
schedule itself.
For example when you create a new schedule with a delay of 30s
, the messages
will be created when the schedule triggers but only delivered after 30 seconds.