1 Email route on the FLAM API: Resend delivery webhook (standard-webhooks signature).
Base URL https://api.flam.fashion. Send Authorization: Bearer flam_sk_… on every call; a handful of routes are session-only and say so. How keys and roles work.
POST /api/toolkit/email/webhook/resend
Resend delivery webhook (standard-webhooks signature)
Delivery truth. email_log.status is written once at send time — 'sent' means Resend accepted it, not that a director read it — so without this a hard bounce is indistinguishable from a delivered mail. Public and unauthenticated, authenticated by the webhook-id / webhook-timestamp / webhook-signature headers (the same verifier the Dodo webhook uses), and it fails CLOSED when RESEND_WEBHOOK_SECRET is unset. Correlates on provider_id (Resend's message id, echoed back as data.email_id). email.bounced and email.complained also raise an alert; events that say nothing about arrival answer 200 and write nothing.
Request body — application/json (required)
{}Responses
| Status | Meaning |
|---|---|
200 | Recorded ({ ok, status }), unmatched ({ ok, matched:false }) or ignored ({ ok, ignored }) |
400 | UNPARSEABLE |
401 | BAD_SIGNATURE |
Call it
curl -X POST "https://api.flam.fashion/api/toolkit/email/webhook/resend" \
-H "Authorization: Bearer $FLAM_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'