resend

Resend email API for sending transactional and marketing emails. Use when integrating email delivery, managing domains, handling webhooks, building email workflows with React Email, managing contacts, or sending broadcasts. Use for resend, email, transactional, broadcast, contacts, segments, webhooks, domain.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "resend" with this command: npx skills add oakoss/agent-skills/oakoss-agent-skills-resend

Resend

Overview

Resend is a modern email API built for developers, providing programmatic email sending with support for React Email components, domain management, and webhook-driven event tracking.

When to use: Transactional emails (welcome, password reset, receipts), batch email delivery, scheduled sending, webhook-based delivery tracking, domain verification, React Email integration.

When NOT to use: High-volume marketing automation (use dedicated ESP), SMS/push notifications, email hosting/inbox management.

Quick Reference

PatternAPIKey Points
Send emailresend.emails.send({ from, to, subject })Returns { data, error }, supports html/text/react content
Send with Reactresend.emails.send({ react: <Email /> })Node.js SDK only, renders React Email components server-side
Batch sendresend.batch.send([...emails])Multiple emails in one request, no attachments/scheduling
Schedule emailemails.send({ scheduled_at })ISO 8601 or natural language, cancel before send window
Attachmentsemails.send({ attachments: [...] })Max 40MB total after encoding, supports content or path
Idempotent sendemails.send(params, { idempotencyKey })Prevents duplicate sends on retry
Retrieve emailresend.emails.get(emailId)Check delivery status and metadata
Add domainresend.domains.create({ name })Returns DNS records for SPF, DKIM, MX
Verify domainresend.domains.verify(domainId)Triggers DNS record check
List domainsresend.domains.list()Returns all domains with status
Create webhookDashboard or APISubscribe to email lifecycle events
Verify webhookresend.webhooks.verify({ payload, ... })Validates Svix signature headers
Tagsemails.send({ tags: [...] })Key-value pairs for categorization, ASCII only, max 256 chars
Custom headersemails.send({ headers: {...} })Add custom email headers
Create contactresend.contacts.create({ email, ... })Global contacts with custom properties
List contactsresend.contacts.list()Returns all contacts
Create broadcastresend.broadcasts.create({ from, ... })Bulk email to a segment, supports template variables
Send broadcastresend.broadcasts.send(id, { segmentId })Delivers broadcast to a segment of contacts

Common Mistakes

MistakeCorrect Pattern
Using root domain for sendingUse a subdomain like send.yourdomain.com to isolate reputation
Not checking error in responseAlways destructure { data, error } and handle errors
Sending attachments in batch requestsAttachments and scheduling are not supported in batch sends
Hardcoding API key in source codeUse environment variable RESEND_API_KEY
Skipping webhook signature verificationAlways verify using Svix headers before processing events
Using react prop outside Node.js SDKThe react prop only works with the Node.js SDK
Not setting up DMARC after SPF/DKIM verifyAdd DMARC record after SPF and DKIM pass to improve deliverability
Exceeding 50 recipients in a single sendUse batch send or loop for more than 50 recipients per request
Using && for tag name/value charactersTag names and values must be ASCII letters, numbers, _, or -
Ignoring bounce/complaint webhooksMonitor email.bounced and email.complained to protect reputation

Delegation

  • Email template design: Use Explore agent to discover React Email component patterns
  • Domain DNS configuration: Use Task agent for step-by-step DNS setup verification
  • Webhook endpoint setup: Use Task agent for route handler implementation

References

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

playwright

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

ui-ux-polish

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

tanstack-form

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

find-skills

No summary provided by upstream source.

Repository SourceNeeds Review