<!-- BusyBot node reference — https://busybot.net/tools/mailchimp-trigger/ -->

> Node: Mailchimp Trigger (`mailchimp_trigger`) · Webhook trigger · v1
> Category: Marketing · Credentials: Mailchimp (`mailchimpApi`)
> Updated: 2026-08-16

# Mailchimp Trigger

> Triggers on Mailchimp list events such as subscribes, unsubscribes, and campaign sends

## Overview

Receives webhook notifications from Mailchimp when audience/list events occur, such as new subscriptions, unsubscribes, profile updates, email address changes, cleaned addresses, and campaign sends. Mailchimp webhooks are configured per-list and filter by event type and source (user, admin, API). Mailchimp uses a GET request for webhook URL validation before activating; this trigger handles both the GET validation handshake and POST event delivery. The incoming POST payload contains the event type, fired_at timestamp, and data specific to the event (e.g., subscriber email, merge fields, list info). Useful for automating subscriber onboarding, CRM syncing, list hygiene alerts, and campaign tracking workflows.

**Category:** Marketing  
**Tool Name:** `mailchimp_trigger`  
**Version:** 1

**Appearance:** Icon: `si-mailchimp` | Color: `#ffe01b`

## Node Type

**Trigger** — webhook (receives incoming HTTP callbacks)

## Input / Output

| Direction | Port(s) |
|-----------|--------|
| Input | None (trigger node) |
| Output | `Output` |

## Credentials

This tool requires **Mailchimp** credentials.
See the [Credentials Guide](https://busybot.net/credentials/mailchimp-api/) for setup instructions.

### Parameters

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| List / Audience ID | `string` | Yes | — | The Mailchimp audience/list ID that will fire the webhook events. Find this in Mailchimp under Audience > Settings > Audience name and defaults. |
| Events | `multiOptions` | Yes | `[]` | Which events to listen for. Select one or more event types. |
| | | | | Options: `campaign` (a campaign is sent or cancelled), `cleaned` (a subscriber address is cleaned from the list), `upemail` (a subscriber changes their email address), `profile` (a subscriber profile is updated), `subscribe`, `unsubscribe` |
| Sources | `multiOptions` | Yes | `[]` | The sources of events that can trigger the webhook. Select one or more sources. |
| | | | | Options: `admin` (admin-initiated actions in the Mailchimp web interface), `api` (actions initiated via the Mailchimp API), `user` (subscriber-initiated actions) |

## Output Data

Each matching Mailchimp event produces one output item:

- `_trigger` — always `mailchimp_webhook`
- `_timestamp` — ISO 8601 timestamp of when the request arrived
- `_webhookEvent` — the Mailchimp event type, or `unknown` when the payload does not name one
- `type` — the Mailchimp event type (`subscribe`, `unsubscribe`, `profile`, `upemail`, `cleaned`, `campaign`)
- `fired_at` — the timestamp Mailchimp recorded for the event
- `data` — the event-specific object, for example the subscriber's `email`, `merges` and `list_id`

Any other top-level field Mailchimp sends is merged in alongside these. Events whose type is not in your **Events** selection are acknowledged without starting the workflow, and Mailchimp's URL-validation request produces no items. Reference the payload downstream by expression, e.g. `{{ $json.data.email }}`.

## Usage Examples

- Start a workflow when a new subscriber joins a Mailchimp audience
- Trigger a CRM update when a subscriber unsubscribes from a list
- Send a welcome email sequence when a new member subscribes
- Log profile changes when a subscriber updates their information
- Alert the team when a campaign is sent or cancelled

## Example Configuration

Fire on new subscribers who signed up themselves:

```json
{
  "type": "mailchimp_trigger",
  "parameters": {
    "list": "abc1234def",
    "events": ["subscribe"],
    "sources": ["user"]
  }
}
```

Watch list hygiene events from every source:

```json
{
  "type": "mailchimp_trigger",
  "parameters": {
    "list": "abc1234def",
    "events": ["unsubscribe", "cleaned", "upemail"],
    "sources": ["user", "admin", "api"]
  }
}
```

Track profile edits and campaign sends made through the API:

```json
{
  "type": "mailchimp_trigger",
  "parameters": {
    "list": "abc1234def",
    "events": ["profile", "campaign"],
    "sources": ["api"]
  }
}
```

### Trigger Behavior

- **Activation:** When the workflow is activated, a webhook endpoint is registered with the service.
- **Deactivation:** The webhook is automatically unregistered when the workflow is deactivated.
- **Payload:** The incoming webhook payload is parsed and output as workflow items.
- **Verification:** Supports signature verification where applicable.

## Tips

Entry point that fires when Mailchimp sends a webhook for subscribed list events. Configure the audience list ID, select which events to listen for (subscribe, unsubscribe, profile update, email change, cleaned, campaign), and choose which sources should trigger the webhook (user, admin, API). Mailchimp validates the webhook URL with a GET request before activation; this trigger handles that automatically.