GetFluxly Start Free
Home / Integrations / Resend

Use Resend with GetFluxly

Connect Resend to GetFluxly and run behavior-triggered lifecycle email through the developer-friendliest ESP on the market. GetFluxly captures product events, builds unified customer profiles, and triggers automations on your rules Resend handles the actual delivery from the verified domain you control. Your sender reputation stays in your Resend account.

What you ship after this guide. A verified Resend domain with SPF, DKIM, and DMARC, a sending-scoped API key, a Resend webhook feeding bounces and complaints back into GetFluxly, and a working test send.

When to use Resend

Pick Resend when you want lifecycle email running today and you don't already have an ESP. The setup is the fastest of any major provider, paste a key, verify a domain, you're live and the API is genuinely pleasant to operate against. Resend is ideal for pre-Series A SaaS, indie founders, and any team that cares more about engineering velocity than the per-message rate.

If you're already on AWS and want to optimise sending costs instead of setup time, see the Amazon SES guide.

Requirements before connecting

A Resend account on any plan, a domain you can publish DNS records on, and a sending-scoped API key. On the GetFluxly side: a project, a server token (gflux_secret_live_...), and access to Settings → Email providers.

Verify your sending domain

In the Resend dashboard, open Domains → Add Domain and enter the apex of the domain you want to send from (for example yourdomain.com). Resend generates a set of DNS records and watches them for verification, once they propagate, the status flips to Verified.

Verifying the apex covers every from address that lives under it, so you don't need to verify each mailbox.

Add SPF, DKIM, and DMARC

These records live on your domain's DNS, not on GetFluxly. They tell receiving mailboxes that Resend is allowed to send on your behalf and what to do if alignment fails.

SPF

Resend puts SPF on a dedicated return-path subdomain ( send.yourdomain.com by default), not on the apex, so it never collides with an SPF record you already publish. Resend also asks for an MX record on that same subdomain for bounce handling; the exact host and value are generated per domain, so copy both from the Resend dashboard.

Type:   TXT
Host:   send.yourdomain.com
Value:  v=spf1 include:amazonses.com ~all

DKIM

Resend issues one TXT record for DKIM at the resend._domainkey selector. The value is a public key unique to your domain, the Resend dashboard displays the exact string you should publish.

Type:   TXT
Host:   resend._domainkey.yourdomain.com
Value:  <DKIM public key, copy from Resend>

DMARC

DMARC is your policy on what to do when SPF and DKIM alignment fails. Start permissive while you verify legitimate mail passes.

Type:   TXT
Host:   _dmarc.yourdomain.com
Value:  v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com; fo=1
These records protect your domain. Publish them at the DNS for the domain you send from. Nothing goes on getfluxly.com. GetFluxly never appears in your From: header.

Create a Resend API key

In the Resend dashboard, open API Keys → Create API Key. Set the permission to Sending access only, never use a full-access key for production sending. Copy the key (it starts with re_); Resend only displays it once.

Use a per-environment key. Create separate keys for dev, staging, and production. GetFluxly stores one key per email-provider record, so revoking one key in Resend takes down exactly one environment in GetFluxly without touching the others.

Connect Resend in GetFluxly

Open Settings → Email providers, click Add provider, and choose Resend. GetFluxly verifies the API key with a real Resend /emails preflight before persisting the record.

Field Example Notes
display_name Resend Production Free-form. Shown in the provider list.
from_email hello@yourdomain.com Must live on a verified Resend domain.
from_name Acme Optional. Wraps the from address.
reply_to support@yourdomain.com Optional. Replies route here.
api_key re_… Encrypted with AES-GCM before storage.

Or call the API directly:

curl -X POST https://api.getfluxly.com/v1/projects/PROJECT_ID/email-providers \
  -H "Authorization: Bearer gflux_secret_live_REPLACE_ME" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "resend",
    "display_name": "Resend Production",
    "from_email": "hello@yourdomain.com",
    "from_name": "Acme",
    "reply_to": "support@yourdomain.com",
    "api_key": "re_..."
  }'

Handle bounces and complaints

Resend webhooks deliver bounce, complaint, and delivery events. Pointing them at GetFluxly keeps the suppression list current and tags affected contacts in the unified profile so future segments naturally exclude them.

  1. In GetFluxly, copy the project webhook URL from Settings → Webhooks → Resend, it looks like https://api.getfluxly.com/v1/webhooks/resend/<project_id>.
  2. In the Resend dashboard, open Webhooks → Add Webhook and paste the URL.
  3. Subscribe to the email.bounced, email.complained, and email.delivered events at minimum.

Test your first lifecycle email

The verify endpoint dispatches a one-shot message through your Resend connection. Use it to confirm the wiring is good before you point an automation at the provider.

curl -X POST https://api.getfluxly.com/v1/email-providers/PROVIDER_ID/test \
  -H "Authorization: Bearer gflux_secret_live_REPLACE_ME" \
  -H "Content-Type: application/json" \
  -d '{ "to": "you@yourdomain.com" }'

Common errors

403 invalid_api_key. The key is wrong or has been revoked. Mint a fresh sending-scoped key in Resend and update the GetFluxly record.

422 validation_error: from is invalid. The address in from_email isn't on a verified Resend domain. Double-check the domain status in the Resend dashboard and confirm DKIM is green.

Mail going to spam. Almost always missing or misconfigured DMARC, or a sending domain with no warm-up history. Confirm the DMARC record is published on _dmarc.yourdomain.com and ramp send volume gradually over the first two weeks.

Troubleshooting Resend DNS

DKIM selector confusion. Resend's DKIM record uses the resend._domainkey selector and is a TXT record holding a public key, not a CNAME and not one of Amazon SES's default selectors. If you are hunting for a CNAME or an SES-style selector, that is why the record will not validate. The Resend DKIM selector guide breaks down the exact record and its value.

Domain stuck on Pending. This is nearly always DNS: the records have not propagated yet, a Cloudflare record is proxied (orange cloud) so Resend cannot read it, or a value was pasted with the hostname doubled or with stray quotes. Resend marks undetected records as Temporary Failure and, after 72 hours, as Failure. Confirm each record from the terminal before re-adding the domain, as covered in the DKIM selector guide.

SPF and return-path placement. Publish the SPF and return-path records on the exact host the Resend dashboard shows, which is not always your apex, and merge any existing SPF include rather than publishing two SPF records on one name. For how SPF, DKIM, and DMARC fit together, see SPF, DKIM, and DMARC for SaaS.

FAQ

Does GetFluxly charge extra to send through Resend?

No. GetFluxly does not bill per email. Resend pricing applies as if you were sending directly. GetFluxly handles segmentation, automation, profiles, and tracking on top of the Resend send path at no per-message markup.

Resend versus SES, which should I pick?

Resend has the friendliest setup and a solid DX out of the box, which makes it ideal for early SaaS where engineering time costs more than the per-message rate. SES is roughly an order of magnitude cheaper at scale but requires hands-on deliverability work. Both connect to GetFluxly the same way.

Does GetFluxly use the Resend HTTPS API or SMTP?

The native Resend connector calls the Resend HTTPS API, which is the supported transport for production sending. Resend SMTP is supported through GetFluxly's Custom SMTP connector if your network policy mandates SMTP.

Can I use a single Resend account across multiple GetFluxly projects?

Yes. Generate one API key per environment (dev, staging, production) and one GetFluxly email-provider record per key. That way revoking a key in Resend takes down a single environment without touching the others.

How do I track Resend bounces and complaints in GetFluxly?

GetFluxly exposes a project-scoped webhook URL for Resend. Add it as a Resend webhook subscription and select the bounce, complaint, and delivered events. GetFluxly verifies each request with the project token before any record updates the suppression list.

Will Resend's 100 emails/day shared-domain limit affect me?

Only on the Resend onboarding domain (resend.dev). Once you verify your own domain in the Resend dashboard, the day-one limit does not apply, your sending volume is governed by Resend's plan tier and your own deliverability hygiene.

Does Resend have automation built in?

Resend is sending infrastructure: an HTTPS API, SMTP, templates, and broadcasts. It does not ship behavioral automation, journeys, or event-triggered sequences, so there is nothing in Resend that watches what a user does in your product and decides what to send next. That decision layer is what GetFluxly adds on top of the Resend send path.

How do I track Resend email events?

Resend reports delivery activity over webhooks: email.sent, email.delivered, email.bounced, email.complained, email.opened, email.clicked, and the rest of the email.* family. Point a Resend webhook subscription at your project-scoped GetFluxly URL and GetFluxly ingests each event and attaches it to the matching customer profile, so open and click history sits next to the product events for the same person. Our Resend webhooks guide on the blog walks through the payload shape and signature verification.

Can I use Resend for both transactional and marketing email?

Yes. Resend sends any mail type, and GetFluxly can drive both lifecycle campaigns and transactional sends through the same connector. The one caveat is reputation: keep marketing and transactional traffic on separate sending domains or subdomains (for example mail.yourdomain.com and notify.yourdomain.com) so a bad campaign cannot drag your password resets into the spam folder.

Resend guides

Deeper walkthroughs for running Resend well with GetFluxly: