Skip to content

Mailgun

PropertyValue
AlgorithmHMAC-SHA256
LocationWithin request body signature object
Fieldstimestamp, token, signature

Unlike most providers, Mailgun includes signature components in the request body rather than headers.

Signing formula:

hex(HMAC-SHA256("timestamp" + "token", api_key))

Transyt extracts the signature.timestamp, signature.token, and signature.signature fields from the payload and verifies against your Mailgun API key.

  1. In the Mailgun Dashboard, go to Sending > Webhooks
  2. Add a webhook for each event type you want, pointing to:
    https://ingest.transyt.com/mailgun/{your-account-slug}
  3. Use your Mailgun API key as the signing secret
Terminal window
curl -X POST https://ingest.transyt.com/admin/accounts \
-H "X-Admin-Token: YOUR_ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"provider": "mailgun",
"account_slug": "main",
"app_key": "my-app",
"signing_secret_current": "your-mailgun-api-key"
}'
Mailgun EventTransyt Event
acceptedemail.accepted
deliveredemail.delivered
failedemail.failed
openedemail.opened
clickedemail.clicked
unsubscribedemail.unsubscribed

The external ID is a composite of message-id:event, allowing multiple event types for the same message to be tracked separately.