FLAM

Email

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 bodyapplication/json (required)

{}

Responses

StatusMeaning
200Recorded ({ ok, status }), unmatched ({ ok, matched:false }) or ignored ({ ok, ignored })
400UNPARSEABLE
401BAD_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 '{}'