Resend
The Resend block sends transactional email through Resend (opens in a new tab) and manages your audiences and contacts — all from inside a workflow.
Email Automation: Send one email or a batch of up to 100, schedule sends for later, and keep your Resend contact lists in sync — using workflow variables anywhere in the fields.
Key Features
- Send Email: HTML or plain-text emails with cc/bcc, custom headers, and attachments
- Batch Sending: Up to 100 emails in a single request
- Scheduling: Send later with an ISO 8601
Scheduled Attime, and cancel before it goes out - Audience Management: Create audiences and add, list, or delete contacts
- Variables Everywhere: Every field accepts
{{variable}}values from earlier blocks
Operations
| Operation | What it does |
|---|---|
| Send Email | Sends one email (from, to, cc, bcc, reply-to, subject, HTML and/or text body, headers, attachments, optional schedule) |
| Send Batch Emails | Sends up to 100 emails in one request from a JSON array of email objects |
| Get Email | Fetches a sent email by its ID (status, recipients, timestamps) |
| Cancel Scheduled Email | Cancels an email that was scheduled with Scheduled At before it is sent |
| Create Audience | Creates a new contact list (audience) |
| List Audiences | Lists all audiences in your Resend account |
| Create Contact | Adds a contact (email, first/last name, unsubscribed flag) to an audience |
| List Contacts | Lists all contacts in an audience |
| Delete Contact | Removes a contact from an audience by contact ID or email address |
Configuration
| Parameter | Type | Required | Description |
|---|---|---|---|
| From | Text | Yes (Send Email) | Sender, e.g. Acme <hello@acme.com>. The domain must be verified in Resend |
| To / Cc / Bcc / Reply To | Text | To is required | Comma-separated email addresses, e.g. a@x.com, b@y.com |
| Subject | Text | Yes (Send Email) | Email subject line |
| HTML / Text | Text | One of the two | Email body — HTML, plain text, or both |
| Headers | JSON | No | JSON object of custom headers |
| Attachments | JSON | No | JSON array like [{"filename":"invoice.pdf","path":"https://…"}] — Resend downloads each path URL itself |
| Scheduled At | Text | No | ISO 8601 datetime (e.g. 2026-08-25T09:00:00Z) to send later |
| Emails | JSON | Yes (Send Batch) | JSON array of email objects, max 100 |
| Email ID | Text | Yes (Get / Cancel) | The ID Resend returned when the email was sent |
| Audience ID / Audience Name | Text | Per operation | Target audience for contact operations, or name for a new audience |
| Email, First Name, Last Name, Unsubscribed | Text | Per operation | Contact details for Create Contact (Unsubscribed is true/false) |
| Contact ID | Text | Yes (Delete Contact) | Contact ID or the contact's email address |
Setting up the credential
- Sign in at resend.com (opens in a new tab) and open API Keys (opens in a new tab).
- Click Create API Key and copy the key.
- In the block settings, click Add Resend account (or open Integrations → Resend → Connect).
- Give the connection a name and paste the API Key, then save.
⚠️
The From address must use a domain you have verified in your Resend dashboard, or sends will be rejected.
Example: order confirmation email
- A Stripe Trigger starts the workflow when a payment succeeds.
- A Resend block with Send Email sends a confirmation to
{{customer_email}}with an HTML receipt. - A second Resend block with Create Contact adds the buyer to your "Customers" audience.
Output
The block returns the Resend API response, which downstream blocks can reference:
| Operation | Output |
|---|---|
| Send Email / Cancel Scheduled Email | { id } — the email's Resend ID |
| Send Batch Emails | { data: [{ id }, …] } — one ID per email |
| Get Email | The full email object (status, recipients, timestamps) |
| Create Audience / Create Contact | The created object, including its id |
| List Audiences / List Contacts | { data: [ … ] } — the list of objects |
| Delete Contact | Deletion confirmation |
Keep the returned email id in a variable if you schedule an email — you need it later for Cancel Scheduled Email.