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

> Node: Mautic Trigger (`mautic_trigger`) · Webhook trigger · v1
> Category: Marketing · Credentials: Mautic (`mauticApi`)
> Updated: 2026-08-16

# Mautic Trigger

> Triggers on Mautic events such as contact changes, form submissions, and email interactions

## Overview

Receives webhook notifications from a Mautic instance when configured marketing automation events fire. Mautic is an open-source marketing automation platform. The trigger registers a webhook with the Mautic API that listens for specified events such as contact creation, form submissions, email opens, page hits, and point changes. The raw POST body from Mautic is returned as the output payload. Events can be ordered ascending or descending when multiple events are queued in a single webhook delivery. Supports both Basic Auth (username/password) and OAuth2 authentication against self-hosted Mautic instances. Useful for triggering workflows when contacts are created or updated, forms are submitted, emails are interacted with, or campaign events fire in Mautic.

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

**Appearance:** Icon: `si-mautic` | Color: `#4e5e9e`

## Node Type

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

## Input / Output

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

## Credentials

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

### Parameters

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Authentication | `options` | No | `credentials` | Authentication method to use for Mautic API calls. |
| | | | | Options: `credentials` (Basic Auth with a username and password), `oAuth2` |
| Events | `multiOptions` | Yes | `[]` | Which Mautic events to listen for. |
| | | | | Options: `mautic.lead_post_save_new` (a new contact is created), `mautic.lead_post_save_update` (an existing contact is updated), `mautic.lead_points_change` (a contact's point value changes), `mautic.lead_post_delete` (a contact is deleted), `mautic.lead_channel_subscription_changed` (a contact's channel subscription changes), `mautic.lead_post_save_identified` (a previously anonymous contact is identified), `mautic.email_on_open`, `mautic.email_on_send`, `mautic.email_on_reply`, `mautic.form_on_submit`, `mautic.page_on_hit` (a tracked page is visited by a contact), `mautic.point_on_trigger` (a point trigger action is executed), `mautic.campaign_on_trigger`, `mautic.stage_on_change` (a contact's stage changes), `mautic.webhook_kill` (Mautic disables the webhook after excessive failures) |
| Events Order | `options` | No | `ASC` | Order direction for queued events in one webhook delivery. Can be "ASC" (oldest first) or "DESC" (newest first). |
| | | | | Options: `ASC`, `DESC` |

## Output Data

Each Mautic delivery produces one output item:

- `_trigger` — always `mautic_webhook`
- `_timestamp` — ISO 8601 timestamp of when the request arrived
- `_webhookEvent` — the Mautic event name, taken from the delivery's event header or from the first `mautic.*` key in the body; `unknown` when neither is present

The raw Mautic body is merged in at the top level. Mautic keys that body by event name, so a contact-creation delivery arrives as a `mautic.lead_post_save_new` array of records — reference it downstream by expression, e.g. `{{ $json["mautic.lead_post_save_new"][0].contact.id }}`. Because Mautic can queue several events into one delivery, use **Events Order** to control whether the oldest or newest entry comes first.

## Usage Examples

- Start a workflow when a new contact is created in Mautic
- Trigger follow-up actions when a Mautic form is submitted
- Sync data when a Mautic contact is updated or deleted
- Automate responses when an email is opened or a link is clicked in Mautic

## Example Configuration

Fire when a contact is created, oldest queued event first:

```json
{
  "type": "mautic_trigger",
  "parameters": {
    "authentication": "credentials",
    "events": ["mautic.lead_post_save_new"],
    "eventsOrder": "ASC"
  }
}
```

Watch every contact-lifecycle change:

```json
{
  "type": "mautic_trigger",
  "parameters": {
    "authentication": "credentials",
    "events": [
      "mautic.lead_post_save_new",
      "mautic.lead_post_save_update",
      "mautic.lead_post_delete",
      "mautic.lead_points_change"
    ],
    "eventsOrder": "ASC"
  }
}
```

Handle form submissions and email engagement, newest event first:

```json
{
  "type": "mautic_trigger",
  "parameters": {
    "authentication": "oAuth2",
    "events": [
      "mautic.form_on_submit",
      "mautic.email_on_open",
      "mautic.email_on_reply"
    ],
    "eventsOrder": "DESC"
  }
}
```

### 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 a Mautic instance sends a webhook for subscribed events. Configure which events to listen for (contact changes, form submissions, email interactions, page hits, point changes). Events can be ordered ASC or DESC when multiple events are queued in a single delivery. The raw Mautic POST body is returned as the output payload.