# Resend (/integrations/resend)





{/* MANUAL-CONTENT-START:intro */}

Use [Resend](https://resend.com/) to send emails, retrieve their status, manage contacts, and inspect domains. Configure a Resend API key and the sender, recipients, and content required by the operation.

Use returned email IDs to check delivery status. The block's actions define the available operations; template editing and analytics management are not exposed here.

{/* MANUAL-CONTENT-END */}

## Use the block [#usage-instructions]

Send emails, retrieve email status, manage contacts, and view domains. Requires API Key.

## Actions [#actions]

### Send Email [#send-email]

Send an email using your own Resend API key and from address

<ReferenceDetails>
  #### Input [#input]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `fromAddress` | string | Yes | Email address to send from (e.g., "[sender@example.com](mailto:sender@example.com)" or "Sender Name \<[sender@example.com](mailto:sender@example.com)>") |
  | `to` | string | Yes | Recipient email address (e.g., "[recipient@example.com](mailto:recipient@example.com)" or "Recipient Name \<[recipient@example.com](mailto:recipient@example.com)>") |
  | `subject` | string | Yes | Email subject line |
  | `body` | string | Yes | Email body content (plain text or HTML based on contentType) |
  | `contentType` | string | No | Content type for the email body: "text" for plain text or "html" for HTML content |
  | `cc` | string | No | Carbon copy recipient email address |
  | `bcc` | string | No | Blind carbon copy recipient email address |
  | `replyTo` | string | No | Reply-to email address |
  | `scheduledAt` | string | No | Schedule email to be sent later in ISO 8601 format |
  | `tags` | string | No | Comma-separated key:value pairs for email tags (e.g., "category:welcome,type:onboarding") |
  | `resendApiKey` | string | Yes | Resend API key for sending emails |

  #### Output [#output]

  | Parameter | Type | Description |
  | - | - | - |
  | `success` | boolean | Whether the email was sent successfully |
  | `id` | string | Email ID returned by Resend |
  | `to` | string | Recipient email address |
  | `subject` | string | Email subject |
  | `body` | string | Email body content |
</ReferenceDetails>

### Get Email [#get-email]

Retrieve details of a previously sent email by its ID

<ReferenceDetails>
  #### Input [#input-1]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `emailId` | string | Yes | The ID of the email to retrieve |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-1]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Email ID |
  | `from` | string | Sender email address |
  | `to` | array | Recipient email addresses |
  | `subject` | string | Email subject |
  | `html` | string | HTML email content |
  | `text` | string | Plain text email content |
  | `cc` | array | CC email addresses |
  | `bcc` | array | BCC email addresses |
  | `replyTo` | array | Reply-to email addresses |
  | `lastEvent` | string | Last event status (e.g., delivered, bounced) |
  | `createdAt` | string | Email creation timestamp |
  | `scheduledAt` | string | Scheduled send timestamp |
  | `tags` | array | Email tags as name-value pairs |
  | ↳ `name` | string | Tag name |
  | ↳ `value` | string | Tag value |
</ReferenceDetails>

### Cancel Email [#cancel-email]

Cancel a scheduled email before it is sent

<ReferenceDetails>
  #### Input [#input-2]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `cancelEmailId` | string | Yes | The ID of the scheduled email to cancel |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-2]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Canceled email ID |
</ReferenceDetails>

### Create Contact [#create-contact]

Create a new contact in Resend

<ReferenceDetails>
  #### Input [#input-3]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `email` | string | Yes | Email address of the contact |
  | `firstName` | string | No | First name of the contact |
  | `lastName` | string | No | Last name of the contact |
  | `unsubscribed` | boolean | No | Whether the contact is unsubscribed from all broadcasts |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-3]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Created contact ID |
</ReferenceDetails>

### List Contacts [#list-contacts]

List all contacts in Resend

<ReferenceDetails>
  #### Input [#input-4]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-4]

  | Parameter | Type | Description |
  | - | - | - |
  | `contacts` | array | Array of contacts |
  | ↳ `id` | string | Contact ID |
  | ↳ `email` | string | Contact email address |
  | ↳ `first_name` | string | Contact first name |
  | ↳ `last_name` | string | Contact last name |
  | ↳ `created_at` | string | Contact creation timestamp |
  | ↳ `unsubscribed` | boolean | Whether the contact is unsubscribed |
  | `hasMore` | boolean | Whether there are more contacts to retrieve |
</ReferenceDetails>

### Get Contact [#get-contact]

Retrieve details of a contact by ID or email

<ReferenceDetails>
  #### Input [#input-5]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `contactId` | string | Yes | The contact ID or email address to retrieve |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-5]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Contact ID |
  | `email` | string | Contact email address |
  | `firstName` | string | Contact first name |
  | `lastName` | string | Contact last name |
  | `createdAt` | string | Contact creation timestamp |
  | `unsubscribed` | boolean | Whether the contact is unsubscribed |
</ReferenceDetails>

### Update Contact [#update-contact]

Update an existing contact in Resend

<ReferenceDetails>
  #### Input [#input-6]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `contactId` | string | Yes | The contact ID or email address to update |
  | `firstName` | string | No | Updated first name |
  | `lastName` | string | No | Updated last name |
  | `unsubscribed` | boolean | No | Whether the contact should be unsubscribed from all broadcasts |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-6]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Updated contact ID |
</ReferenceDetails>

### Delete Contact [#delete-contact]

Delete a contact from Resend by ID or email

<ReferenceDetails>
  #### Input [#input-7]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `contactId` | string | Yes | The contact ID or email address to delete |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-7]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Deleted contact ID |
  | `deleted` | boolean | Whether the contact was successfully deleted |
</ReferenceDetails>

### Create Audience [#create-audience]

Create a new audience in Resend

<ReferenceDetails>
  #### Input [#input-8]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `audienceName` | string | Yes | The name of the audience to create |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-8]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Created audience ID |
  | `name` | string | Audience name |
</ReferenceDetails>

### Get Audience [#get-audience]

Retrieve details of an audience by ID

<ReferenceDetails>
  #### Input [#input-9]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `audienceId` | string | Yes | The ID of the audience to retrieve |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-9]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Audience ID |
  | `name` | string | Audience name |
  | `createdAt` | string | Audience creation timestamp |
</ReferenceDetails>

### List Audiences [#list-audiences]

List all audiences in Resend

<ReferenceDetails>
  #### Input [#input-10]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-10]

  | Parameter | Type | Description |
  | - | - | - |
  | `audiences` | array | Array of audiences |
  | ↳ `id` | string | Audience ID |
  | ↳ `name` | string | Audience name |
  | ↳ `created_at` | string | Audience creation timestamp |
  | `hasMore` | boolean | Whether there are more audiences to retrieve |
</ReferenceDetails>

### Delete Audience [#delete-audience]

Delete an audience from Resend by ID

<ReferenceDetails>
  #### Input [#input-11]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `audienceId` | string | Yes | The ID of the audience to delete |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-11]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Deleted audience ID |
  | `deleted` | boolean | Whether the audience was successfully deleted |
</ReferenceDetails>

### Create Broadcast [#create-broadcast]

Create a broadcast email for an audience in Resend

<ReferenceDetails>
  #### Input [#input-12]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `audienceId` | string | Yes | The ID of the audience to send the broadcast to |
  | `broadcastFrom` | string | Yes | Sender email address (e.g., "[sender@example.com](mailto:sender@example.com)" or "Sender Name \<[sender@example.com](mailto:sender@example.com)>") |
  | `broadcastSubject` | string | Yes | Broadcast email subject line |
  | `broadcastHtml` | string | No | HTML content of the broadcast |
  | `broadcastText` | string | No | Plain text content of the broadcast |
  | `broadcastReplyTo` | string | No | Reply-to email address |
  | `broadcastName` | string | No | Friendly internal name for the broadcast |
  | `broadcastPreviewText` | string | No | Preview text shown in the inbox before the email is opened |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-12]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Created broadcast ID |
</ReferenceDetails>

### Send Broadcast [#send-broadcast]

Send a broadcast immediately or schedule it for later

<ReferenceDetails>
  #### Input [#input-13]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `broadcastId` | string | Yes | The ID of the broadcast to send |
  | `broadcastScheduledAt` | string | No | Schedule delivery in natural language (e.g., "in 1 min") or ISO 8601 format. Sends immediately if omitted |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-13]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Broadcast ID |
</ReferenceDetails>

### Get Broadcast [#get-broadcast]

Retrieve details of a broadcast by ID

<ReferenceDetails>
  #### Input [#input-14]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `broadcastId` | string | Yes | The ID of the broadcast to retrieve |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-14]

  | Parameter | Type | Description |
  | - | - | - |
  | `id` | string | Broadcast ID |
  | `name` | string | Broadcast name |
  | `audienceId` | string | Audience ID (legacy) |
  | `segmentId` | string | Segment ID (the current recipient field) |
  | `from` | string | Sender email address |
  | `subject` | string | Broadcast subject |
  | `replyTo` | string | Reply-to email address |
  | `previewText` | string | Inbox preview text |
  | `status` | string | Broadcast status (e.g., draft, sent) |
  | `createdAt` | string | Broadcast creation timestamp |
  | `scheduledAt` | string | Scheduled send timestamp |
  | `sentAt` | string | Timestamp the broadcast was sent |
</ReferenceDetails>

### List Domains [#list-domains]

List all verified domains in your Resend account

<ReferenceDetails>
  #### Input [#input-15]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `resendApiKey` | string | Yes | Resend API key |

  #### Output [#output-15]

  | Parameter | Type | Description |
  | - | - | - |
  | `domains` | array | Array of domains |
  | ↳ `id` | string | Domain ID |
  | ↳ `name` | string | Domain name |
  | ↳ `status` | string | Domain verification status |
  | ↳ `region` | string | Region the domain is configured in |
  | ↳ `createdAt` | string | Domain creation timestamp |
  | `hasMore` | boolean | Whether there are more domains to retrieve |
</ReferenceDetails>

## Triggers [#triggers]

A trigger starts a workflow when a supported event occurs in this service.

### Resend Email Bounced [#resend-email-bounced]

Trigger workflow when an email bounces

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-16]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
  | `bounceType` | string | Bounce type (e.g., Permanent) |
  | `bounceSubType` | string | Bounce sub-type (e.g., Suppressed) |
  | `bounceMessage` | string | Bounce error message |
</ReferenceDetails>

### Resend Email Clicked [#resend-email-clicked]

Trigger workflow when a link in an email is clicked

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration-1]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-17]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
  | `clickIpAddress` | string | IP address of the click |
  | `clickLink` | string | URL that was clicked |
  | `clickTimestamp` | string | Click timestamp (ISO 8601) |
  | `clickUserAgent` | string | Browser user agent string |
</ReferenceDetails>

### Resend Email Complained [#resend-email-complained]

Trigger workflow when an email is marked as spam

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration-2]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-18]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
</ReferenceDetails>

### Resend Email Delivered [#resend-email-delivered]

Trigger workflow when an email is delivered

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration-3]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-19]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
</ReferenceDetails>

### Resend Email Failed [#resend-email-failed]

Trigger workflow when an email fails to send

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration-4]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-20]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
</ReferenceDetails>

### Resend Email Opened [#resend-email-opened]

Trigger workflow when an email is opened

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration-5]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-21]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
</ReferenceDetails>

### Resend Email Sent [#resend-email-sent]

Trigger workflow when an email is sent

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration-6]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-22]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
</ReferenceDetails>

### Resend Webhook (All Events) [#resend-webhook-all-events]

Start a workflow for subscribed Resend email, contact, and domain events. Flattened email fields may be null for non-email events; use `data` for the full payload.

<ReferenceDetails label="Configuration and outputs">
  #### Configuration [#configuration-7]

  | Parameter | Type | Required | Description |
  | - | - | - | - |
  | `apiKey` | string | Yes | Required to create the webhook in Resend. |

  #### Output [#output-23]

  | Parameter | Type | Description |
  | - | - | - |
  | `type` | string | Event type (e.g., email.sent, email.delivered) |
  | `created_at` | string | Webhook event creation timestamp (ISO 8601), top-level `created_at` |
  | `data_created_at` | string | Email record timestamp from payload `data.created_at` (ISO 8601), when present — distinct from top-level `created_at` |
  | `email_id` | string | Unique email identifier |
  | `broadcast_id` | string | Broadcast ID associated with the email, when sent as part of a broadcast |
  | `template_id` | string | Template ID used to send the email, when applicable |
  | `tags` | json | Tag key/value metadata attached to the email (payload `data.tags`) |
  | `from` | string | Sender email address |
  | `subject` | string | Email subject line |
  | `to` | json | Array of recipient email addresses |
  | `data` | json | Raw event `data` from Resend (shape varies by event type: email, contact, domain, etc.) |
  | `bounceType` | string | Bounce type (e.g., Permanent) |
  | `bounceSubType` | string | Bounce sub-type (e.g., Suppressed) |
  | `bounceMessage` | string | Bounce error message |
  | `clickIpAddress` | string | IP address of the click |
  | `clickLink` | string | URL that was clicked |
  | `clickTimestamp` | string | Click timestamp (ISO 8601) |
  | `clickUserAgent` | string | Browser user agent string |
</ReferenceDetails>
