Skip to main content
Each email gets an id when you send it. Use that id to read its status, cancel a scheduled send, or match webhook events to the original message.

Status

Sending returns a status: Later events describe what happened to the message. They arrive as webhooks and are also visible on the email:

Read an email

List recent emails with GET /v1/emails.

Schedule an email

Pass an ISO 8601 timestamp as scheduled_at:
Relative times such as “in one hour” aren’t supported. Compute the timestamp in your code. To cancel a scheduled email before it sends, use DELETE /v1/emails/{id}. The native API doesn’t change a scheduled time; cancel it and send a new email. The Resend-compatible API also supports rescheduling.

Recipients and content

  • One address per to. Use cc and bcc, or send one email per recipient with the batch endpoint.
  • Up to 10 attachments per email, 10 MB each.
  • Use absolute URLs for images. Inline cid: images arrive as attachments.