resend

Send, receive, and manage transactional emails through the Resend API.

Updated Sep 5, 2023
One-click install
npx skills add https://github.com/eyenalxai/dotfiles --skill resend-eyenalxai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: resend
Source: https://github.com/eyenalxai/dotfiles/tree/main/.agents/skills/resend
Command: npx skills add https://github.com/eyenalxai/dotfiles --skill resend-eyenalxai

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires resend, and includes references (resource) components.

What problem does it solve? Integrating the Resend email API involves many production pitfalls — duplicate sends on retries, unverified webhooks, template variable mismatches, and domain DNS misconfigurations. This Skill provides the exact SDK patterns, gotchas, and reference docs needed to implement Resend correctly the first time. ## Core Features & Use Cases - Transactional Email Sending: Send single or batch emails with idempotency keys, attachments, scheduling, and templates across Node.js, Python, Go, Ruby, PHP, Rust, Java, and .NET SDKs. - Inbound Email & Webhooks: Receive emails via webhooks with Svix signature verification, retrieve bodies and attachments, and track delivery events like bounces and complaints. - Audience & Campaign Management: Manage domains, contacts, segments, topics, broadcasts, automations, events, API keys, and request logs. - Use Case: A developer adding a welcome email flow can use this Skill to install the correct SDK version, send with an idempotency key, verify the sending domain's DNS records, and set up a verified webhook to track delivery. ## Quick Start Ask the AI to send a transactional email with Resend using an idempotency key and proper error handling.

Frequently Asked Questions about resend

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I send an email with the Resend API?

Install the resend SDK, initialize it with your RESEND_API_KEY, and call resend.emails.send with from, to, subject, and html parameters. Always pass an idempotency key like welcome-email/user-123 to prevent duplicate sends on retries.

How do I verify Resend webhook signatures?

Use resend.webhooks.verify with the raw request body, the svix-id, svix-timestamp, and svix-signature headers, and your RESEND_WEBHOOK_SECRET. Never parse the body as JSON before verification, since that breaks the signature.

Why does my Resend webhook not contain the email body?

Resend webhook payloads contain metadata only, such as sender, subject, and attachment IDs. Call resend.emails.receiving.get with the email_id from the event to retrieve the actual HTML and text body.

Can I send batch emails with attachments using Resend?

No, the Resend batch endpoint does not support attachments or scheduled sends. Use individual single-email sends when you need attachments, scheduling, or per-email customization beyond the batch limits.

Why am I getting a 403 error when sending from resend.dev?

The default [email protected] address is a sandbox that only delivers to your own Resend account email. To send to real recipients, verify your own domain by adding the DNS records from resend.domains.create and confirming verification.

What template variable syntax does Resend use?

Resend templates use triple-mustache syntax like {{{CUSTOMER_NAME}}}, with optional fallbacks via {{{FIRST_NAME|there}}}. Double braces do not render, variable names are case-sensitive, and templates must be published before sending.