Resend
Resend email API emulation with email sending, domain management, API keys, audiences, contacts, and a local inbox for captured messages.
Emails
POST /emails— send single emailPOST /emails/batch— send up to 100 emailsGET /emails— list sent emailsGET /emails/:id— get emailPOST /emails/:id/cancel— cancel scheduled email
Idempotency
POST /emails and POST /emails/batch accept the case-insensitive Idempotency-Key header. Keys must be 1 to 256 characters and are retained for 24 hours. Repeating a request with the same key and validated payload returns the original response without creating another email or dispatching duplicate webhooks. Reusing a key with a different payload or endpoint returns 409 invalid_idempotent_request. Invalid key lengths return 400 invalid_idempotency_key. Requests without the header keep the normal non-idempotent behavior.
Domains
POST /domains— create domainGET /domains— list domainsGET /domains/:id— get domainDELETE /domains/:id— remove domainPOST /domains/:id/verify— trigger domain verification
API Keys
POST /api-keys— create API keyGET /api-keys— list API keysDELETE /api-keys/:id— delete API key
Audiences & Contacts
POST /audiences— create audienceGET /audiences— list audiencesDELETE /audiences/:id— delete audiencePOST /audiences/:audience_id/contacts— add contactGET /audiences/:audience_id/contacts— list contactsDELETE /audiences/:audience_id/contacts/:id— delete contact
Inbox
GET /inbox— list captured emailsGET /inbox/:id— view captured email