Reschedule an email
PATCH /emails/{id}
{ "scheduled_at": "2027-01-02T09:00:00Z" }
Moves a queued message’s send time. An empty or absent scheduled_at clears the
schedule and sends immediately. A time in the past means the same thing — your
clock being behind ours is not an error.
Only the schedule can change. Everything else about a message is committed the moment the send is accepted: it is in the log, and once it is being sent, at the provider. An endpoint that appeared to edit a body would be editing a copy nobody sends.
The id does not change, so anything you stored against it stays valid — which is the reason to use this rather than cancelling and sending again.
Answers 422 already_sent once the message has left. Deliberately not a 404:
the message exists, it has simply gone, and “not found” would send you looking
for a bug in your ids.