- Home
- Resources
- Integrations
- Mailchimp
Mailchimp n8n integrationAutomate Mailchimp with n8n.
Every new subscriber, every tag change and every campaign send can start a workflow. The Mailchimp n8n integration exposes 14 operations across 4 resources, plus a trigger that listens to 6 audience and campaign events. It fits marketing and ops teams who want the audience to stay in sync without anyone touching it.
Verified Trustpilot reviews · AI, automation & growth agency
What does the Mailchimp n8n integration cover?
The integration is a pair of nodes that ship with n8n. The Mailchimp node calls the Mailchimp API to create, read, update and delete members, add and remove member tags, drive campaigns and read interest groups. The Mailchimp Trigger registers a webhook, meaning a URL that Mailchimp calls, so a workflow starts within seconds of an audience or campaign event.
The first scenario is a signup that lands everywhere at once. A form submission, a checkout or a new row picked up from Google Sheets goes through member.create with a status of subscribed or pending, and the same run can attach a source tag through memberTag.create. No copy and paste, no weekly CSV import.
The second scenario runs the other way. The trigger fires on subscribe or unsubscribe, and the workflow pushes that change to the rest of the stack: a message in Slack for the sales channel, a follow-up through Gmail, a matching record in ActiveCampaign. Consent stays consistent across tools, which is the part that usually breaks.
The third scenario is campaign housekeeping. campaign.getAll lists what went out and filters on sent status, campaign.replicate clones last month's newsletter as a starting point, and campaign.resend builds the Resend to Non-Openers version of a campaign that already shipped. A scheduled workflow can prepare the copy and hand a draft to a human before campaign.send ever runs.
Reach for the HTTP Request node when the operation is not in the list. Reports, automations, e-commerce stores and audience creation are not covered by the 14 operations, and the HTTP Request node hits any Mailchimp endpoint while reusing the same credential through predefined authentication. That keeps one set of keys for the whole workflow.
Two limits are worth knowing before building. Members are addressed by email address, not by an internal identifier, so the workflow needs the exact address it used on the way in. And listGroup.getAll reads interest groups but the node has no operation to create or edit them, so group structure stays a manual job in Mailchimp. If the choice between platforms is still open, the n8n review goes through hosting, pricing and the visual editor in detail.
How do you connect Mailchimp to n8n?
- 01
Generate the API key
Open the API keys section of the Mailchimp account and create a key. In n8n, go to Credentials, pick the Mailchimp API credential and paste the value into the API Key field. A credential is created once and reused by every workflow, so both the node and the trigger pick it from the same dropdown. Mailchimp itself suggests the API key route when the code only touches data inside your own account.
- 02
Or register an OAuth2 app
OAuth2 is the other supported method, and it is the one to use when a workflow reaches into someone else's Mailchimp account instead of your own. Register an application on the Mailchimp developer side, then create the Mailchimp OAuth2 credential in n8n and complete the consent flow. The tradeoff is setup time against the ability to hand access back without sharing a raw key.
- 03
Select the audience in the node
Drop a Mailchimp node on the canvas, choose the credential, then pick the resource and the operation. Most operations ask for List Name or ID, which is the audience the call applies to. The dropdown loads the audiences from the account, so there is nothing to memorize, and an expression such as
{{ $json.listId }}works when the audience comes from an earlier node.
What starts a Mailchimp workflow?
Mailchimp Trigger is the node that starts a workflow when something happens in Mailchimp. It listens to 6 events, listed below by family. Pick one or several, activate the workflow: n8n registers the webhook on your Mailchimp account.
What you see in n8n
Every event, by family
One row per object, one chip per action. The event to tick in the node is object.action; hover a chip to read exactly when it fires.
campaign.*1campaign.campaign
cleaned.*1cleaned.cleaned
profile.*1profile.profile
subscribe.*1subscribe.subscribe
unsubscribe.*1unsubscribe.unsubscribe
upemail.*1upemail.upemail
Configuration notes
01Set up the Mailchimp Trigger
The trigger node is the entry point of the workflow, the block that reacts to something happening in Mailchimp rather than being called by another node. It runs on webhooks: n8n registers its URL with Mailchimp when the workflow is activated, and each event arrives within seconds, with no polling loop in between.
Key parameters
- List Name or ID: the audience that fires the events. One trigger watches one audience, so a second audience needs its own trigger node.
- Events: the checkboxes that decide which of the 6 event types reach the workflow. There is no catch-all option, so tick only what the workflow handles.
- Sources: the origins that are allowed to fire the webhook, so a change made in the Mailchimp interface can be treated differently from one made through the API.
02Subscribe and Unsubscribe
These two events cover the audience growing and shrinking. subscribe fires when a subscriber is added to the list, unsubscribe when a list member opts out. Together they are the pair most workflows start with, because they carry the consent state the rest of the stack has to respect.
Key parameters
- Events: tick Subscribe, Unsubscribe, or both on the same trigger and branch afterwards on the event type.
- Sources: useful here to separate a signup that came from a Mailchimp hosted form from one pushed by an API call, since the follow-up is rarely the same.
03Profile Updated, Email Address Updated and Cleaned
This family is about data quality on an existing contact. profile fires when a subscriber updates their profile, upemail when the email address itself changes, and cleaned when Mailchimp removes an address from the list after it stops accepting mail.
Key parameters
- Events: Profile Updated, Email Address Updated and Cleaned can share one trigger, since the downstream job is usually the same record update.
- List Name or ID: the audience being cleaned, which matters because a product list and a newsletter list are usually watched by separate workflows.
04Campaign Sent
The campaign event covers the send itself: it fires when a campaign is sent or cancelled. It is the one event in the set that is about the message rather than about a person, which makes it the natural start for reporting and for anything that has to happen once per send.
Key parameters
- Events: Campaign Sent on its own, kept away from the member events so the workflow does not have to branch on every run.
- Sources: worth restricting when campaigns are scheduled by hand in Mailchimp and also triggered by another workflow through
campaign.send.
What can the Mailchimp node do?
The Mailchimp node exposes 14 operations across 4 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.
| Resource | Create | Get | Get Many | Update | Delete | Replicate | Resend | Send |
|---|---|---|---|---|---|---|---|---|
| Campaign | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| List Group | ✓ | |||||||
| Member | ✓ | ✓ | ✓ | ✓ | ✓ | |||
| Member Tag | ✓ | ✓ |
Operations index
Campaign
6 operationsDelete a campaign
campaign.deleteWhat you see in n8n
Notes & use cases
Deleting removes the campaign from the Mailchimp account permanently, drafts and scheduled sends included. The node returns once Mailchimp confirms the removal.
Key parameters
- Campaign ID: the campaign to remove, picked from the list of campaigns or passed as
{{ $json.id }}from a previous node.
Get a campaign
campaign.getWhat you see in n8n
Notes & use cases
One campaign in, one item out, with the settings and metadata Mailchimp holds for it. Handy as a lookup step in the middle of a longer workflow.
Key parameters
- Campaign ID: the identifier of the campaign to read, not its subject line or title.
Get many campaigns
campaign.getAllWhat you see in n8n
Notes & use cases
Listing returns the campaigns of the account as separate items, with filters that narrow the set before anything downstream runs.
Key parameters
- Return All: on, n8n walks every page of results; off, Limit caps how many campaigns come back.
- Status: restricts the response to
sent,sending,saveorschedule. - Since Send Time and Before Send Time: a date window on the send, which is how a report covers one month only.
- Sort Field and Sort Direction: order by
create_timeorsend_time, ascending or descending.
Replicate a campaign
campaign.replicateWhat you see in n8n
Notes & use cases
A copy of an existing campaign appears in the account, content and settings included, as a fresh draft that nobody has sent yet.
Key parameters
- Campaign ID: the campaign to clone, which stays untouched by the operation.
Resend a campaign
campaign.resendWhat you see in n8n
Notes & use cases
Non-openers get a second pass: the operation creates a Resend to Non-Openers version of a campaign that already went out, targeted at the people who did not open the first one.
Key parameters
- Campaign ID: the campaign that was already sent. A draft has no open data, so it has nothing to resend to.
Send a campaign
campaign.sendWhat you see in n8n
Notes & use cases
This one pushes the campaign out for real. Mailchimp starts the send immediately, which makes it the operation to guard with an approval step.
Key parameters
- Campaign ID: the draft to send, usually the identifier returned by the replicate step earlier in the same workflow.
List Group
1 operationGet many list groups
listGroup.getAllWhat you see in n8n
Notes & use cases
Interest groups live inside a category on an audience, and this operation reads them so a workflow can match a label to the group identifier Mailchimp expects.
Key parameters
- List Name or ID: the audience holding the groups.
- Group Category Name or ID: the category to read, since groups are always nested under one.
- Return All: on for the whole category, off to stop at Limit.
Member
5 operationsCreate a member
member.createWhat you see in n8n
Notes & use cases
Adding a person to an audience is the operation most workflows are built around. Mailchimp stores the address and the consent state you pass, and returns the created member.
Key parameters
- List Name or ID: the audience receiving the contact.
- Email: the address, often
{{ $json.email }}from the form or order that started the run. - Status:
subscribedadds the person straight away,pendingsends the confirmation email first. - Merge Fields: the named values behind the placeholders in the template, such as a first name.
- Tags: a comma separated list applied at creation.
Delete a member
member.deleteWhat you see in n8n
Notes & use cases
Removal takes the address out of the audience entirely, which is stronger than an unsubscribe and leaves no subscriber record behind.
Key parameters
- List Name or ID: the audience to remove from, one audience per call.
- Email: the member's email address, the only handle the node accepts here.
Get a member
member.getWhat you see in n8n
Notes & use cases
Reading one subscriber returns the record Mailchimp holds: status, merge fields, tags and the rest of the profile.
Key parameters
- List Name or ID: the audience to look in.
- Email: the address to fetch.
- Fields and Exclude Fields: comma separated lists that trim the response, which keeps the item readable when only the status matters.
Get many members
member.getAllWhat you see in n8n
Notes & use cases
Pulling the audience returns one item per subscriber, with filters that keep an export focused rather than exhaustive.
Key parameters
- List Name or ID: the audience to read.
- Return All: on, every page is fetched; off, Limit decides how many subscribers come back.
- Status: keeps only
subscribed,unsubscribed,cleaned,pendingortransactionalmembers. - Since Last Changed: restricts the result to subscribers whose information changed after a given moment.
Update a member
member.updateWhat you see in n8n
Notes & use cases
Changes land on an existing subscriber: status, profile values or interest groups, without touching the fields left alone.
Key parameters
- List Name or ID: the audience holding the contact.
- Email: the address that identifies the subscriber to update.
- Merge Fields: the values to overwrite, such as a company name that changed in the CRM.
- Skip Merge Validation: accepts the data even when a normally required merge field has no value, which unblocks partial records.
Member Tag
2 operationsCreate a member tag
memberTag.createWhat you see in n8n
Notes & use cases
Tags are how Mailchimp segments an audience, and this operation adds one or more of them to a subscriber who already exists.
Key parameters
- List Name or ID: the audience the subscriber belongs to.
- Email: the address to tag.
- Tags: the labels to add, written as a comma separated string.
- Is Syncing: on, Mailchimp automations based on those tags will not fire, which is what you want during a bulk backfill.
Delete a member tag
memberTag.deleteWhat you see in n8n
Notes & use cases
Taking a tag off a subscriber is the counterpart operation. The person stays in the audience, only the label goes.
Key parameters
- List Name or ID: the audience concerned.
- Email: the subscriber losing the tag.
- Tags: the labels to remove, comma separated like on the way in.
- Is Syncing: on when the cleanup should stay silent and not wake up tag based automations.
Need help automating Mailchimp with n8n?
A person reads every message.


