Mailchimp Webhooks
Email marketing platform. Receive events for subscribes, unsubscribes, campaign activity, and list changes.
Connecting Mailchimp to Hookbase
Create a source in Hookbase first — it gives you an ingest URL to paste into Mailchimp. Then:
- 1Go to Mailchimp → Audience → Settings → Webhooks
- 2Click "Create New Webhook" and paste your Hookbase ingest URL
- 3Select the events to receive (subscribes, unsubscribes, etc.)
- 4Copy the secret key for signature verification
Signature verification
Mailchimp signs its webhooks with HMAC-SHA256 in X-Mailchimp-Signature, and Hookbase has no verifier for that combination today. We would rather say so here than let a source report every event as verified while nothing was checked.
What you can do:
- Receive them on a
customsource with no signing secret. Hookbase still dedupes, retries, transforms, routes and replays them; it just does not vouch for the sender. - Set a signing secret anyway if Mailchimp can be configured to send a hex HMAC-SHA256 of the raw body in
X-Signature,X-Webhook-SignatureorX-Hub-Signature-256— that is the one scheme the custom verifier implements. - Verify downstream: the original headers travel with the event, so your own service or a transform can check the signature itself. The key is at Mailchimp → Audience → Settings → Webhooks → Secret key.
- Narrow the blast radius with an IP allowlist and a hard-to-guess source slug.
Mailchimp event types
6 of the events people route most often. Hookbase accepts every event Mailchimp sends, whether or not it is listed here.
subscribe
A new subscriber was added
unsubscribe
A subscriber unsubscribed
profile
A subscriber profile was updated
cleaned
A subscriber was cleaned (bounced)
campaign
A campaign status changed
upemail
A subscriber changed their email
What a Mailchimp webhook looks like
A subscribe payload. Hookbase stores the raw body exactly as it arrived, so this is also what you get back on a replay.
{
"type": "subscribe",
"fired_at": "2024-01-15 10:30:00",
"data": {
"id": "abc123def456",
"email": "newuser@example.com",
"email_type": "html",
"list_id": "lst_789012",
"merges": {
"FNAME": "Jane",
"LNAME": "Doe"
},
"ip_opt": "203.0.113.42"
}
}Start receiving Mailchimp webhooks
Create a source, paste the URL into Mailchimp, and watch the first event arrive. The free tier includes 1,000 events a month.
Get Started Free