Resend Integration
Resend API Operations
Browse all 67 operations available for Resend workflow automation.
API Keys
3 operations/api-keysCreate a new API key
Generate a new API key for authenticating requests to the Resend API. Keys can be scoped to full access or restricted to sending only, optionally limited to specific domains. The key value is only returned once at creation time.
/api-keys/{api_key_id}Delete an API key
Permanently revoke an API key so it can no longer be used for authentication. Use this to rotate credentials or remove access for a decommissioned service.
/api-keysList all API keys
Retrieve a paginated list of all API keys in your Resend account. Use this to audit active credentials, review permission levels, or identify keys that should be rotated or revoked.
Audiences
4 operations/audiencesCreate a new audience (deprecated)
Deprecated: Use Segments instead. Create a named audience to group contacts for targeted email campaigns. Audiences are collections of contacts that can receive broadcasts together.
/audiences/{id}Delete an audience (deprecated)
Deprecated: Use Segments instead. Permanently remove an audience and disassociate its contacts. The contacts themselves are not deleted.
/audiences/{id}Get an audience by ID (deprecated)
Deprecated: Use Segments instead. Retrieve the details of a specific audience including its name, creation date, and contact count.
/audiencesList all audiences (deprecated)
Deprecated: Use Segments instead. Retrieve a list of all audiences in your account. Use this to see which contact groups exist and their sizes.
Broadcasts
6 operations/broadcastsCreate a new broadcast
Create a broadcast campaign for a contact segment
/broadcasts/{id}Delete a draft broadcast
Permanently remove a broadcast that is still in draft status. Broadcasts that have already been sent or scheduled cannot be deleted. Use this to clean up campaigns that are no longer needed.
/broadcasts/{id}Get a broadcast by ID
Retrieve the full details of a specific broadcast including its content, target segment, delivery status, and performance metrics. Use this to monitor an active campaign or review past results.
/broadcastsList all broadcasts
Retrieve a paginated list of all broadcasts including drafts, scheduled, sent, and completed campaigns. Use this to review campaign history, check delivery status, or find a broadcast to duplicate.
/broadcasts/{id}/sendSend or schedule a broadcast
Send or schedule a broadcast to its target segment
/broadcasts/{id}Update an existing broadcast
Modify a broadcast's content, subject line, target segment, or other settings. Only draft broadcasts can be updated. Use this to refine a campaign before sending.
Contact Properties
5 operations/contact-propertiesCreate a new contact property
Define a custom property that can be attached to contacts for storing additional metadata like company name, plan tier, or signup source. Contact properties enable richer segmentation and personalization in your email campaigns.
/contact-properties/{id}Delete a contact property
Permanently remove a custom contact property. Existing values for this property on contacts will be lost. Use this to clean up properties that are no longer needed in your data model.
/contact-properties/{id}Get a contact property by ID
Retrieve the full details of a specific custom contact property including its name, data type, and configuration. Use this to verify property settings or check its usage across segments.
/contact-propertiesList all contact properties
Retrieve a paginated list of all custom contact properties defined in your account. Use this to review your contact data model or find property IDs for use in segmentation rules and template variables.
/contact-properties/{id}Update a contact property
Modify an existing contact property's name or configuration. Use this to rename a property or adjust its settings as your contact data model evolves.
Contacts
10 operations/contacts/{contact_id}/segments/{segment_id}Add a contact to a segment
Add a contact to a specific segment for targeting
/contactsCreate a new contact
Add a new contact with email and optional metadata
/contacts/{id}Delete a contact by ID or email
Permanently remove a contact from your account. The contact will be removed from all segments and will no longer receive broadcasts. Use this to honor unsubscribe requests or clean up invalid email addresses.
/contacts/{id}Get a contact by ID or email
Retrieve the full details of a specific contact including their email, name, subscription status, and custom properties. Accepts either a contact ID or email address as the identifier.
/contactsList all contacts
Retrieve a paginated list of contacts, optionally filtered by segment. Use this to browse your mailing list, export contact data, or find specific subscribers for targeted outreach.
/contacts/{contact_id}/segmentsList segments for a contact
Retrieve a paginated list of all segments that a specific contact belongs to. Use this to understand a contact's group memberships or verify that a contact has been correctly categorized.
/contacts/{contact_id}/topicsList topic preferences for a contact
Retrieve the topic subscription preferences for a specific contact. Use this to build a preference center or check which email categories a contact has opted into or out of.
/contacts/{contact_id}/segments/{segment_id}Remove a contact from a segment
Remove a contact from a specific segment so they will no longer receive broadcasts targeted at that group. The contact is not deleted, only disassociated from the segment.
/contacts/{id}Update a contact by ID or email
Modify an existing contact's information such as name, subscription status, or custom properties. Use this to keep contact data in sync with your CRM or update preferences when a subscriber changes their settings.
/contacts/{contact_id}/topicsUpdate topic preferences for a contact
Modify a contact's topic subscription preferences. Use this to honor opt-in or opt-out requests, sync preferences from an external system, or update subscriptions when a contact changes their email settings.
Domains
6 operations/domainsCreate a new sending domain
Register a new sending domain for email delivery
/domains/{domain_id}Delete a sending domain
Permanently remove a domain from your Resend account. Any emails still being sent from this domain will fail after deletion. Use this when decommissioning a brand or consolidating sending domains.
/domains/{domain_id}Get a domain by ID
Retrieve the full details of a specific domain including its DNS records, verification status, and configuration. Use this to check whether a domain is properly configured and ready for sending.
/domainsList all sending domains
Retrieve a paginated list of all domains registered in your Resend account. Use this to audit your sending infrastructure, check verification status, or find the right domain for a new email workflow.
/domains/{domain_id}Update a sending domain
Modify the configuration of an existing domain, such as enabling or disabling click and open tracking. Use this to fine-tune domain settings without removing and re-creating the domain.
/domains/{domain_id}/verifyVerify a sending domain
Trigger DNS verification for a domain to confirm that SPF, DKIM, and other records are properly configured. A domain must be verified before it can be used to send emails. Run this after adding the required DNS records.
Emails
8 operations/emails/{email_id}/cancelCancel a scheduled email
Cancel an email that was scheduled for future delivery. The email must still be in a scheduled state to be cancelled. Use this when plans change and a queued message is no longer needed.
/emails/{email_id}Get a sent email by ID
Retrieve the full details of a previously sent email including its delivery status, recipients, subject, and body content. Use this to check whether a specific email was delivered, opened, or bounced.
/emails/{email_id}/attachments/{attachment_id}Get a specific attachment from a sent email
Retrieve the details of a single attachment from a previously sent email. Use this to access the attachment content or metadata for archival or debugging purposes.
/emailsList all sent emails
Retrieve a paginated list of emails that have been sent. Use this to review recent sending activity, audit delivery history, or build dashboards that track email volume over time.
/emails/{email_id}/attachmentsList attachments for a sent email
Retrieve a paginated list of attachments that were included in a sent email. Use this to verify which files were attached or to download attachment metadata after sending.
/emails/batchSend a batch of up to 100 emails
Send up to 100 individual emails in a single API call
/emailsSend an email
Send a transactional email to one or more recipients
/emails/{email_id}Update a scheduled email
Modify a scheduled email before it is sent. Use this to change the send time or update the content of an email that has been queued for future delivery.
Receiving Emails
4 operations/emails/receiving/{email_id}Get a received inbound email by ID
Retrieve the full details of a single received inbound email including sender, subject, body, and headers. Use this to read and process a specific incoming message.
/emails/receiving/{email_id}/attachments/{attachment_id}Get a specific attachment from a received email
Retrieve the details of a single attachment from a received inbound email. Use this to download or process a specific file sent by an external party.
/emails/receiving/{email_id}/attachmentsList attachments for a received email
Retrieve a paginated list of attachments from an inbound email. Use this to identify and download files that customers or partners have sent to your inbound address.
/emails/receivingList received inbound emails
Retrieve a paginated list of emails received through your Resend inbound address. Use this to process incoming messages from customers, parse support requests, or build reply-tracking workflows.
Segments
4 operations/segmentsCreate a new contact segment
Create a named segment to organize contacts into targetable groups for broadcasts and campaigns. Segments replace the deprecated Audiences feature and provide more flexible contact grouping.
/segments/{id}Delete a contact segment
Permanently remove a segment. Contacts in the segment are not deleted, only disassociated from the group. Use this to clean up unused segments or consolidate your contact organization.
/segments/{id}Get a segment by ID
Retrieve the full details of a specific segment including its name, contact count, and creation date. Use this to verify a segment's contents before targeting it with a broadcast.
/segmentsList all contact segments
Retrieve a paginated list of all segments in your account. Use this to browse available segments, check their sizes, or find the right segment for a new broadcast campaign.
Templates
7 operations/templatesCreate a new email template
Create a reusable email template with dynamic variables
/templates/{id}Delete an email template
Permanently remove an email template from your account. Any workflows referencing this template will need to be updated. Use this to clean up unused or outdated templates.
/templates/{id}/duplicateDuplicate an email template
Create a copy of an existing email template. Use this to start a new template based on a proven design, create A/B test variants, or make seasonal variations of a standard layout.
/templates/{id}Get an email template by ID
Retrieve the full details of a specific email template including its HTML content, subject line, and metadata. Use this to preview template content or check which dynamic variables are expected.
/templatesList all email templates
Retrieve a paginated list of all email templates in your account. Use this to browse available templates, find a specific template to send with, or audit your template library.
/templates/{id}/publishPublish an email template
Publish a template to make it available for sending. Draft templates cannot be used to send emails until they are published. Use this when a template has been reviewed and is ready for production use.
/templates/{id}Update an email template
Modify an existing email template's content, subject line, or other properties. Changes apply to all future emails sent with this template. Use this to update branding, fix typos, or adjust template structure.
Topics
5 operations/topicsCreate a new email topic
Create a topic that contacts can subscribe to or unsubscribe from. Topics enable granular email preference management, letting recipients choose which types of emails they want to receive (e.g., product updates, newsletters, promotions).
/topics/{id}Delete an email topic
Permanently remove a topic. Contacts who were subscribed to this topic will lose their subscription preference. Use this when consolidating or reorganizing your email preference categories.
/topics/{id}Get a topic by ID
Retrieve the full details of a specific topic including its name, description, and subscriber count. Use this to check topic configuration or verify subscriber engagement levels.
/topicsList all email topics
Retrieve a paginated list of all topics in your account. Use this to review your email preference categories or build a preference center where contacts can manage their subscriptions.
/topics/{id}Update an email topic
Modify an existing topic's name or description. Use this to rename a preference category or update its description to better communicate what subscribers will receive.
Webhooks
5 operations/webhooksCreate a new webhook endpoint
Register a new webhook endpoint to receive real-time notifications about email events such as deliveries, bounces, opens, and clicks. Webhooks are verified using Svix signatures for security.
/webhooks/{webhook_id}Delete a webhook endpoint
Permanently remove a webhook endpoint so it no longer receives event notifications. Use this when decommissioning a service or replacing a webhook with a new URL.
/webhooks/{webhook_id}Get a webhook endpoint by ID
Retrieve the full details of a specific webhook endpoint including its URL, subscribed event types, and status. Use this to debug delivery issues or verify configuration.
/webhooksList all webhook endpoints
Retrieve a paginated list of all registered webhook endpoints. Use this to audit which URLs are receiving event notifications and verify their configuration.
/webhooks/{webhook_id}Update a webhook endpoint
Modify an existing webhook endpoint's URL, subscribed event types, or other settings. Use this to change where notifications are sent or adjust which events trigger callbacks.