send-email
Transactional and bulk email delivery via Resend API with single or batch endpoints.
- Choose single endpoint for individual emails with attachments or scheduling; use batch endpoint for 2–100 distinct emails in one request to reduce API calls
- Implement idempotency keys (
<event-type>/<entity-id>format) to prevent duplicate sends on retries, with 24-hour expiration - Retry only 429 (rate limit) and 500 (server error) responses using exponential backoff; fix 400/422 validation errors without retrying
- Configure domain-level SPF, DKIM, DMARC records and disable open/click tracking for transactional emails to maximize deliverability
- Track delivery events (delivered, bounced, complained, opened, clicked) via webhooks with signature verification; manage suppressed addresses automatically
Send Email with Resend
Overview
Resend provides two endpoints for sending emails:
| Approach | Endpoint | Use Case |
|---|---|---|
| Single | POST /emails |
Individual transactional emails, emails with attachments, scheduled sends |
| Batch | POST /emails/batch |
Multiple distinct emails in one request (max 100), bulk notifications |
Choose batch when:
- Sending 2+ distinct emails at once
- Reducing API calls is important (by default, rate limit is 2 requests per second)
- No attachments or scheduling needed
Choose single when:
- Sending one email
- Email needs attachments
More from resend/resend-skills
resend
Use when working with the Resend email API — sending transactional emails (single or batch), receiving inbound emails via webhooks, managing email templates, tracking delivery events, managing domains, contacts, broadcasts, webhooks, API keys, automations, events, viewing API request logs, or setting up the Resend SDK. Always use this skill when the user mentions Resend, even for simple tasks like "send an email with Resend" — the skill contains critical gotchas (idempotency keys, webhook verification, template variable syntax) that prevent common production issues.
7.5Kagent-email-inbox
Use when building any system where email content triggers actions — AI agent inboxes, automated support handlers, email-to-task pipelines, or any workflow processing untrusted inbound email. Always use this skill when the user wants to receive emails and act on them programmatically, even if they don't mention "agent" — the skill contains critical security patterns (sender allowlists, content filtering, sandboxed processing) that prevent untrusted email from controlling your system.
2.3Kemail-best-practices
Use when building email features, emails going to spam, high bounce rates, setting up SPF/DKIM/DMARC authentication, implementing email capture, ensuring compliance (CAN-SPAM, GDPR, CASL), handling webhooks, retry logic, or deciding transactional vs marketing.
1.8Kresend-cli
>
1.8Kreact-email
Use when building HTML email templates with React components, adding a visual email editor to an application using the React Email visual editor, rendering emails to HTML, or sending emails with Resend. Covers welcome emails, password resets, notifications, order confirmations, newsletters, transactional emails, and the embeddable email editor component.
1.7Kresend-inbound
Use when receiving emails with Resend - setting up inbound domains, processing email.received webhooks, retrieving email content/attachments, or forwarding received emails.
5