- Documentation
- Integrations
- Apps
- Resend integration
Resend integration
Send transactional email and broadcasts, manage contacts, segments and domains, and react to delivery, engagement and inbound email events on behalf of your clients.
What it does
The Resend integration lets your agency run a client's email from inside any workflow, using the client's own Resend account. Connect their API key once and your workflows can send a receipt the moment an order lands, send from a published template, schedule a reminder for tomorrow morning, keep contacts and segments in sync with a CRM, publish a broadcast, onboard a new sending domain, and start Resend Automations with custom events. Triggers react the moment Resend reports a delivery, bounce, spam complaint, open, click or inbound email, with no polling.
Connect a Resend account
- In TaskJuice, open Apps, choose Resend, and click Connect account.
- In a new tab, sign in to resend.com as the client and open API Keys.
- Click Create API key. Give it a name that identifies the workspace and choose Full access. The triggers need it to register their webhook, and every action other than Send Email needs it too. A Sending access key can only send email.
- Copy the
re_...value (Resend shows it once) and paste it into the API key field in TaskJuice.
To revoke access, delete the key on the Resend API Keys page. To rotate it, create a new key, update the connection, then delete the old one.
Triggers
When you publish a workflow that starts with a Resend trigger, TaskJuice registers one webhook on the connected Resend account and keeps its event list in sync with your published workflows. You do not need to create anything in the Resend dashboard. Every delivery is signature-checked before it starts a run, and a delivery Resend retries runs your workflow only once.
Sending and engagement
resend/email-sent: Resend accepted an email and handed it to the receiving mail server.resend/email-delivered: the recipient's mail server accepted an email.resend/email-delivery-delayed: delivery is temporarily delayed, for example because the recipient's inbox is full.resend/email-bounced: the receiving server rejected an email.bounce.typeisPermanentfor a hard bounce andTransientfor a soft one.resend/email-complained: a recipient marked an email as spam.resend/email-opened: a recipient opened an email. Needs open tracking on the sending domain.resend/email-clicked: a recipient clicked a link. Needs click tracking on the sending domain. The link is inclick.link.resend/email-failed: Resend could not send an email. The reason is infailed.reason.resend/email-scheduled: an email was scheduled for a later send time.resend/email-suppressed: Resend skipped a recipient who is on the suppression list.
Every email event carries email_id (follow with Get Email for the full record) and the tags you set when sending, so you can tell which client or campaign an event belongs to.
Inbound email
resend/email-received: an email arrived on one of the account's receiving domains. The event carries the sender, recipients, subject and attachment list. Follow with Get Received Email to read the body and headers.
Contacts, domains, suppressions and topics
resend/contact-created,resend/contact-updated,resend/contact-deleted: a contact changed.resend/contact-topics-updated: a contact opted in to or out of one or more topics.resend/domain-created,resend/domain-updated,resend/domain-deleted: a domain changed. Use Domain Updated to react when a client's domain becomes verified.resend/suppression-added,resend/suppression-removed: an address joined or left the suppression list.resend/topic-created,resend/topic-updated,resend/topic-deleted: a subscription topic changed.
Actions
Segments, topics, templates, domains, broadcasts and contact properties are chosen from a dropdown that lists the connected account's records. Contacts and emails are referenced by id (or, for contacts and suppressions, by email address), usually mapped from an earlier step.
resend/send-email: send one email with HTML or plain text, or send a published template with variables. Optional CC, BCC, reply-to, tags, custom headers, attachments, a topic, an idempotency key, and Schedule for to send later.resend/get-email: get one sent email and its latest delivery status.resend/list-emails: list sent emails, newest first.resend/update-scheduled-email: move a scheduled email to a new send time.resend/cancel-scheduled-email: cancel a scheduled email before it sends.resend/list-received-emails,resend/get-received-email: read inbound email.
Contacts and segments
resend/create-contact: create a contact, optionally straight into a segment.resend/get-contact,resend/update-contact,resend/delete-contact,resend/list-contacts: manage contacts by id or email address.resend/add-contact-to-segment,resend/remove-contact-from-segment,resend/list-contact-segments: manage a contact's segment membership.resend/get-contact-topics,resend/update-contact-topic: read or change a contact's topic subscriptions.resend/create-segment,resend/get-segment,resend/list-segments,resend/update-segment,resend/delete-segment,resend/list-segment-contacts: manage segments.resend/create-contact-property,resend/get-contact-property,resend/list-contact-properties,resend/update-contact-property,resend/delete-contact-property: manage custom contact fields.
Broadcasts and templates
resend/create-broadcast: create a broadcast to a segment, as a draft or sent right away.resend/get-broadcast,resend/list-broadcasts,resend/update-broadcast,resend/delete-broadcast: manage broadcasts.resend/send-broadcast: send a draft broadcast now or at a scheduled time.resend/cancel-broadcastcancels a scheduled one.resend/create-template,resend/get-template,resend/list-templates,resend/update-template,resend/duplicate-template,resend/delete-template: manage templates.resend/publish-template: publish a template's draft so sends pick up the change.
Domains, topics, suppressions and automations
resend/create-domain: add a sending domain and get the DNS records to publish. Then runresend/verify-domain.resend/get-domain,resend/list-domains,resend/update-domain,resend/delete-domain: manage domains, including open and click tracking.resend/create-topic,resend/get-topic,resend/list-topics,resend/update-topic,resend/delete-topic: manage subscription topics.resend/add-suppression,resend/get-suppression,resend/list-suppressions,resend/remove-suppression: manage the suppression list.resend/send-event: send a custom event for a contact to start or advance a Resend Automation.
Known limitations
- Resend allows 10 API requests per second per account by default, shared by every key on the account. A workflow that exceeds it receives a retryable rate-limit error.
- Until a client verifies a domain, Resend only sends test emails to the account owner's own address, and the From address must use a verified domain.
- List actions return one page (up to 100 items). To read the next page, pass the last item's
idas After (cursor). - Batch sending (up to 100 different emails in one call) is not available as an action: use Send Email inside a Loop instead.
- Resend's Inbox, Logs, Automations editor, API key and contact import endpoints are not part of this integration.
- Resend has retired Audiences in favour of account-level contacts and segments, so Create Contact and List Contacts work on the whole account and use a segment where you need a subset. If a workflow used the older audience picker on either action, reopen the node and choose a segment.