When you send a message, Transactional Email allows you to specify a time when the message should be sent. We'll store the message until then, and then send it automatically. We'll try to deliver it as close as possible to the time indicated, but to-the-second precision typically is not possible.
Scheduling emails is a feature provided to all Transactional Email accounts at no additional cost. Scheduled emails will count towards your monthly send total at the time the message is sent, not when it is scheduled.
Scheduling an Email
To schedule a message, indicate when the message should be sent using the send_at
parameter to the messages/send
, messages/send-template
, or messages/send-raw
API calls. If you're using SMTP, you can provide the schedule time in the X-MC-SendAt
header. Both SMTP and the API accept a UTC timestamp in YYYY-MM-DD HH:MM:SS format. The message ID returned by the send call can be used to cancel or reschedule the message.
If you're using SMTP and don't have direct access to the message ID that Transactional Email generated for your message, you can also use the messages/list-scheduled
method to look up scheduled messages for a specific recipient.
Managing Scheduled Emails
To change when a scheduled message will be delivered, you can use the messages/reschedule
method to provide a new delivery time. If you no longer want to send a scheduled message, use messages/cancel-schedule
to delete the message. Cancelling a scheduled email prevents that message from counting towards your monthly send total.