Resend
Connect Resend to Senlo, and its webhook for delivery events.
Provider type: Resend
API Key: re_...
Webhook Secret: whsec_...
Webhook URL: https://senlo.io/api/webhooks/resend1. Verify your domain in Resend
Senlo sends from the From email you set on each trigger. Resend only accepts it from a domain verified in your Resend account (Domains in the Resend dashboard). Until then, sends fail at Resend and show FAILED in the delivery log.
2. Create an API key
In Resend, open API Keys and create a key with sending access. Copy it (re_...).
3. Add the provider in Senlo
- Open Providers → Add Provider.
- Provider Type: Resend. Display Name: anything, e.g.
Resend acme.com. - API Key: the
re_...key. - Leave Webhook Secret empty for now and click Create Provider.
- In your workspace's Settings, select this provider.
Send a test from the Quickstart to check it works.
4. Connect the webhook
- In Resend, open Webhooks and add an endpoint:
https://senlo.io/api/webhooks/resend(self-hosted: yourAPP_URL+/api/webhooks/resend). - Enable
email.delivered,email.bouncedandemail.complained. Other events are ignored; opens and clicks are counted by Senlo itself. - Copy the endpoint's signing secret (
whsec_...). - In Senlo, edit the provider and paste it into Webhook Secret.
From now on bounces and complaints suppress the address, and the delivery log shows DELIVERED. Details: Provider webhooks.
Testing
Resend's test addresses let you try delivery outcomes without a real inbox, for example delivered@resend.dev and bounced@resend.dev. Send to one of them with POST /api/triggered and watch the delivery log.