Reference · Tools
Mautic integration
Manage contacts, companies, campaigns, and email dispatch within the Mautic open-source marketing automation platform.
The Mautic node manages contacts, companies, segments and campaigns and can send email through a Mautic instance. A typical build is syncing customers into Mautic, assigning them to a segment, and letting a campaign take over from there.
- Works as
- Action
- Tool name
mautic- Parameters
- 55
- Outputs
- Output, Error
- Credentials
- Mautic API
- Official docs
- Mautic docs devdocs.mautic.org
What you can build with Mautic
- Create a new contact in Mautic.
- Update a company in Mautic.
- Add a contact to a segment.
- Send a campaign email to a contact.
- List all contacts from Mautic.
Overview
Mautic is an open-source marketing automation platform. This tool manages contacts, companies, campaigns, segments, and email sending via the Mautic REST API. Authenticates via HTTP Basic against the user/password configured on the Mautic instance (OAuth2 is not supported because Mautic is self-hosted with no centralized provider URL). Provides CRUD operations for contacts and companies, plus segment/campaign membership management and email dispatch.
Node Type
Action — processes input items and produces output
Input / Output
| Direction | Port(s) |
|---|---|
| Input | Input |
| Output | Output, Error |
Credentials
This tool requires Mautic API credentials. See the Credentials Guide for setup instructions.
Resources
| Resource | Value |
|---|---|
| Campaign Contact | campaignContact |
| Company | company |
| Company Contact | companyContact |
| Contact | contact |
| Contact Segment | contactSegment |
| Segment Email | segmentEmail |
Operations
| Operation | Value | Description |
|---|---|---|
| Create | create | Create a new company |
| Delete | delete | Delete a company |
| Get | get | Get data of a company |
| Get Many | getAll | Get data of many companies |
| Update | update | Update a company |
| Create | create | Create a new contact |
| Delete | delete | Delete a contact |
| Edit Contact Points | editContactPoint | Edit contact’s points |
| Edit Do Not Contact List | editDoNotContactList | Add/remove from DNC list |
| Get | get | Get data of a contact |
| Get Many | getAll | Get data of many contacts |
| Send Email | sendEmail | Send email to contact |
| Update | update | Update a contact |
| Add | add | Add contact to a segment |
| Remove | remove | Remove contact from a segment |
| Add | add | Add contact to a campaign |
| Remove | remove | Remove contact from a campaign |
| Add | add | Add contact to a company |
| Remove | remove | Remove a contact from a company |
| Send | send | Send an email to a segment |
The operation list is scoped to the resource you pick, which is why create, delete, get, getAll, update, add and remove each appear more than once.
Parameters
Campaign Contact: Add
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | Yes | — | |
| Campaign ID | string | Yes | — | The ID of the campaign. Find in Mautic: Campaigns > select campaign > note the ID. |
Campaign Contact: Remove
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | Yes | — | |
| Campaign ID | string | Yes | — | The ID of the campaign. Find in Mautic: Campaigns > select campaign > note the ID. |
Company: Create
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Company Name | string | No | — | The name of the company to create. |
| Simplify | boolean | No | true | Whether to return a simplified version of the response. |
| Additional Fields | collection | No | {} | |
Options: B2B, Prospect, 1, asc | ||||
| — Address | fixedCollection | No | {} | |
| — — Address Line 1 | string | No | — | |
| — — Address Line 2 | string | No | — | |
| — — City | string | No | — | |
| — — State | string | No | — | |
| — — Country | string | No | — | |
| — — Zip Code | string | No | — | |
| — Annual Revenue | number | No | 0 | |
| — Company Email | string | No | — | |
| — Custom Fields | fixedCollection | No | {} | |
| — — Field ID | string | No | — | The alias of the company custom field. |
| — — Field Value | string | No | — | |
| — Description | string | No | — | |
| — Fax | string | No | — | |
| — Industry | string | No | — | Industry name. Find available values in Mautic: Settings > Custom Fields > companyindustry. |
| — Is Published | boolean | No | false | |
| — Number of Employees | number | No | 0 | |
| — Overwrite With Blank | boolean | No | false | Whether empty values are set to fields. |
| — Phone | string | No | — | |
| — Website | string | No | — |
Company: Delete
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Company ID | string | No | — | |
| Simplify | boolean | No | true |
Company: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Company ID | string | No | — | |
| Simplify | boolean | No | true |
Company: Get Many
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Return All | boolean | No | false | |
| Limit | number | No | 30 | (shown when Return All is false) |
| Simplify | boolean | No | true | |
| Additional Fields | collection | No | {} | |
Options: B2B, Prospect, 1, asc | ||||
| — Order Direction | options | No | — | |
Options: asc, desc | ||||
| — Order By | string | No | — | Column to sort by (company field alias). |
| — Search | string | No | — |
Company: Update
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Company ID | string | No | — | The ID of the company to update. |
| Simplify | boolean | No | true | |
| Update Fields | collection | No | {} | |
Options: B2B, Prospect | ||||
| — Address | fixedCollection | No | {} | |
| — — Address Line 1 | string | No | — | |
| — — Address Line 2 | string | No | — | |
| — — City | string | No | — | |
| — — State | string | No | — | |
| — — Country | string | No | — | |
| — — Zip Code | string | No | — | |
| — Annual Revenue | number | No | 0 | |
| — Company Email | string | No | — | |
| — Company Name | string | No | — | |
| — Custom Fields | fixedCollection | No | {} | |
| — — Field ID | string | No | — | |
| — — Field Value | string | No | — | |
| — Description | string | No | — | |
| — Fax | string | No | — | |
| — Industry | string | No | — | |
| — Is Published | boolean | No | false | |
| — Number of Employees | number | No | 0 | |
| — Overwrite With Blank | boolean | No | false | |
| — Phone | string | No | — | |
| — Website | string | No | — |
Company Contact: Add
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | No | — | |
| Company ID | string | No | — |
Company Contact: Remove
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | No | — | |
| Company ID | string | No | — |
Contact: Create
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| JSON Parameters | boolean | No | false | Whether to pass contact data as a raw JSON body. |
string | No | — | Email address of the contact. (shown when JSON Parameters is false) | |
| First Name | string | No | — | (shown when JSON Parameters is false) |
| Last Name | string | No | — | (shown when JSON Parameters is false) |
| Primary Company | string | No | — | Company name or ID. Find in Mautic: Companies > select company > note the name or ID. (shown when JSON Parameters is false) |
| Position | string | No | — | (shown when JSON Parameters is false) |
| Title | string | No | — | (shown when JSON Parameters is false) |
| Body (JSON) | json | No | — | Raw JSON body with contact field data. (shown when JSON Parameters is true) |
| Additional Fields | collection | No | {} | |
Options: B2B, Prospect, 1, asc | ||||
| — Address | fixedCollection | No | {} | |
| — — Address Line 1 | string | No | — | |
| — — Address Line 2 | string | No | — | |
| — — City | string | No | — | |
| — — State | string | No | — | |
| — — Country | string | No | — | |
| — — Zip Code | string | No | — | |
| — B2B or B2C | options | No | — | |
Options: B2B, B2C | ||||
| — CRM ID | string | No | — | |
| — Custom Fields | fixedCollection | No | {} | |
| — — Field ID | string | No | — | The alias of the custom field. Find in Mautic: Settings > Custom Fields. |
| — — Field Value | string | No | — | |
| — Fax | string | No | — | |
| — Has Purchased | boolean | No | false | |
| — IP Address | string | No | — | IP address to associate with the contact. |
| — Last Active | string | No | — | Date/time in UTC (e.g. 2024-01-15T10:30:00). |
| — Mobile | string | No | — | |
| — Owner ID | string | No | — | ID of a Mautic user to assign this contact to. |
| — Phone | string | No | — | |
| — Prospect or Customer | options | No | — | |
Options: Prospect, Customer | ||||
| — Sandbox | boolean | No | false | |
| — Stage | string | No | — | Stage ID. Find in Mautic: Stages > note the ID. |
| — Tags | string | No | — | Comma-separated tag names. |
| — Social Media | fixedCollection | No | {} | |
string | No | — | ||
| — — Foursquare | string | No | — | |
string | No | — | ||
string | No | — | ||
| — — Skype | string | No | — | |
string | No | — | ||
| — Website | string | No | — | |
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
Contact: Delete
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | No | — | |
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
Contact: Edit Contact Points
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | No | — | |
| Action | options | No | add | |
Options: add, remove | ||||
| Points | number | No | 0 | |
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
Contact: Edit Do Not Contact List
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | No | — | |
| Action | options | No | add | |
Options: add, remove | ||||
| Channel | options | Yes | email | |
Options: email, sms | ||||
| Additional Fields | collection | No | {} | |
Options: B2B, Prospect, 1, asc | ||||
| — Reason To Do Not Contact | options | No | 3 | |
Options: 1, 2, 3 | ||||
| — Comments | string | No | — | A text describing details of Do Not Contact entry. |
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
Contact: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | No | — | |
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
Contact: Get Many
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. |
| Limit | number | No | 30 | Max number of results to return. (shown when Return All is false) |
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
Contact: Send Email
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
| Campaign Email ID | string | Yes | — | ID of the campaign/template email to send. Find in Mautic: Channels > Emails > select template email > note the ID. |
| Contact ID | string | Yes | — |
Contact: Update
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | No | — | The ID of the contact to update. |
| JSON Parameters | boolean | No | false | Whether to pass update data as a raw JSON body. |
| Update Fields | collection | No | {} | |
Options: B2B, Prospect | ||||
| — Body (JSON) | json | No | — | Raw JSON body with contact fields to update. |
| — Address | fixedCollection | No | {} | |
| — — Address Line 1 | string | No | — | |
| — — Address Line 2 | string | No | — | |
| — — City | string | No | — | |
| — — State | string | No | — | |
| — — Country | string | No | — | |
| — — Zip Code | string | No | — | |
| — B2B or B2C | options | No | — | |
Options: B2B, B2C | ||||
| — CRM ID | string | No | — | |
| — Custom Fields | fixedCollection | No | {} | |
| — — Field ID | string | No | — | The alias of the custom field. |
| — — Field Value | string | No | — | |
string | No | — | ||
| — Fax | string | No | — | |
| — First Name | string | No | — | |
| — Has Purchased | boolean | No | false | |
| — IP Address | string | No | — | |
| — Last Active | string | No | — | |
| — Last Name | string | No | — | |
| — Mobile | string | No | — | |
| — Owner ID | string | No | — | |
| — Phone | string | No | — | |
| — Position | string | No | — | |
| — Primary Company | string | No | — | Company name or ID. |
| — Prospect or Customer | options | No | — | |
Options: Prospect, Customer | ||||
| — Sandbox | boolean | No | false | |
| — Stage | string | No | — | |
| — Tags | string | No | — | |
| — Title | string | No | — | |
| — Social Media | fixedCollection | No | {} | |
string | No | — | ||
| — — Foursquare | string | No | — | |
string | No | — | ||
string | No | — | ||
| — — Skype | string | No | — | |
string | No | — | ||
| — Website | string | No | — | |
| Options | collection | No | {} | (hidden when Operation is sendEmail, editDoNotContactList, editContactPoint) |
Options: asc | ||||
| — Search | string | No | — | String or search command to filter entities by. |
| — Order By | string | No | — | Column to sort by (will be converted to snake_case). |
| — Order By Dir | options | No | — | |
Options: asc, desc | ||||
| — Published Only | boolean | No | false | Whether to return currently published entities. |
| — Minimal | boolean | No | false | Whether to return array of entities without additional lists. |
| — RAW Data | boolean | No | true | If true, return the raw response with all data. If false, return only field values. |
Contact Segment: Add
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | Yes | — | |
| Segment ID | string | Yes | — | The ID of the segment. Find in Mautic: Segments > select segment > note the ID. |
Contact Segment: Remove
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Contact ID | string | Yes | — | |
| Segment ID | string | Yes | — | The ID of the segment. Find in Mautic: Segments > select segment > note the ID. |
Segment Email: Send
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Segment Email ID | string | Yes | — | ID of the segment (list) email. Find in Mautic: Channels > Emails > filter by Segment type > note the ID. |
All Operations
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Max Concurrency | number | No | 10 | Maximum number of items to process concurrently. |
Output Data
The Mautic API response is merged into the item JSON at the top level, so the fields the input item already carried pass through unchanged and binary data is forwarded.
| Operation | Output items |
|---|---|
contact / getAll | Fans out — one output item per contact returned |
company / getAll | Fans out — one output item per company returned |
| Every other operation | One item per input item, carrying the record or status Mautic returned |
The two getAll operations are the only ones that change the item count, so no Split Out node is needed after them. Return All pages through the whole result set; otherwise Limit caps it at up to 30 records per call.
Simplify and RAW Data change the shape of the record you get back. With Simplify on (the company operations’ default), the response is flattened to the record’s field values instead of the full API envelope. On the contact operations the equivalent switch is Options → RAW Data: leave it on for the full response, turn it off to receive field values only. Run the node once and inspect an output item to confirm which shape your settings produce before writing downstream expressions.
Example Configuration
Create a contact from individual fields:
{
"type": "mautic",
"parameters": {
"resource": "contact",
"operation": "create",
"jsonParameters": false,
"email": "john.doe@example.com",
"firstName": "John",
"lastName": "Doe",
"company": "Acme Corp",
"position": "Manager",
"additionalFields": {
"phone": "555-1234",
"website": "https://johndoe.com",
"tags": "lead,qualified",
"socialMediaUi": {
"socialMediaValues": [
{
"facebook": "johndoe",
"twitter": "@johndoe",
"linkedIn": "john-doe"
}
]
}
}
}
}
Create a contact from a raw JSON body instead — note that Body (JSON) is a JSON string:
{
"type": "mautic",
"parameters": {
"resource": "contact",
"operation": "create",
"jsonParameters": true,
"bodyJson": "{\"email\": \"jane.smith@example.com\", \"firstName\": \"Jane\", \"lastName\": \"Smith\", \"company\": \"Tech Solutions\", \"phone\": \"555-5678\"}"
}
}
Update a contact, including a custom field:
{
"type": "mautic",
"parameters": {
"resource": "contact",
"operation": "update",
"contactId": "{{ $json.contactId }}",
"updateFields": {
"email": "newemail@example.com",
"firstName": "UpdatedFirst",
"phone": "555-9999",
"customFieldsUi": {
"customFieldValues": [
{
"fieldId": "custom_field_1",
"fieldValue": "Updated Value"
}
]
}
}
}
}
Add a contact to the Do Not Contact list for email:
{
"type": "mautic",
"parameters": {
"resource": "contact",
"operation": "editDoNotContactList",
"contactId": "123",
"action": "add",
"channel": "email",
"additionalFields": {
"reason": "3",
"comments": "User requested removal"
}
}
}
Award engagement points to a contact:
{
"type": "mautic",
"parameters": {
"resource": "contact",
"operation": "editContactPoint",
"contactId": "123",
"action": "add",
"points": 50
}
}
List contacts matching a search, newest field order first:
{
"type": "mautic",
"parameters": {
"resource": "contact",
"operation": "getAll",
"returnAll": false,
"limit": 30,
"options": {
"search": "john",
"orderBy": "email",
"orderByDir": "asc",
"publishedOnly": true,
"minimal": false,
"rawData": true
}
}
}
Send a template email to one contact:
{
"type": "mautic",
"parameters": {
"resource": "contact",
"operation": "sendEmail",
"contactId": "123",
"campaignEmailId": "456"
}
}
Create a company with an address and full response:
{
"type": "mautic",
"parameters": {
"resource": "company",
"operation": "create",
"name": "New Company Inc",
"simple": false,
"additionalFields": {
"companyEmail": "info@newcompany.com",
"phone": "555-0123",
"website": "https://newcompany.com",
"industry": "Technology",
"annualRevenue": 1000000,
"numberOfEmpoyees": 50,
"addressUi": {
"addressValues": [
{
"address1": "123 Main St",
"city": "Anytown",
"state": "CA",
"country": "USA",
"zipCode": "12345"
}
]
}
}
}
}
Update a company:
{
"type": "mautic",
"parameters": {
"resource": "company",
"operation": "update",
"companyId": "789",
"simple": true,
"updateFields": {
"name": "Updated Company Name",
"companyEmail": "updated@company.com",
"phone": "555-7890",
"annualRevenue": 1500000
}
}
}
Add a contact to a segment:
{
"type": "mautic",
"parameters": {
"resource": "contactSegment",
"operation": "add",
"contactId": "123",
"segmentId": "456"
}
}
Add a contact to a campaign:
{
"type": "mautic",
"parameters": {
"resource": "campaignContact",
"operation": "add",
"contactId": "123",
"campaignId": "789"
}
}
Associate a contact with a company:
{
"type": "mautic",
"parameters": {
"resource": "companyContact",
"operation": "add",
"contactId": "123",
"companyId": "456"
}
}
Send a segment email:
{
"type": "mautic",
"parameters": {
"resource": "segmentEmail",
"operation": "send",
"segmentEmailId": "789"
}
}
Error Handling
| Mode | Behavior |
|---|---|
| stop | Halts workflow on first error |
| continue | Skips failed items, passes successful ones through |
| errorPort | Routes failed items to Error output port |
Tips
This tool manages contacts, companies, campaigns, segments, and email sending within the Mautic marketing automation platform. It is ideal for creating, updating, and deleting contacts and companies, managing their segment and campaign memberships, and dispatching emails to contacts or segments. The tool produces updated Mautic records, email dispatches, and lists of contacts or companies.
Data Management Best Practices
- Use
simple: truefor basic operations to reduce response payload - Set appropriate
limitvalues for getAll operations - Use
rawData: truein options for complete data responses - Leverage
customFieldsUifor custom field management - Use
additionalFieldscollections for extended contact/company data
Key Notes
- Limit tops out at 30. Both Get Many operations accept 1–30; ask for more by turning Return All on instead.
- Body (JSON) must be a JSON string. A raw object is rejected as invalid JSON — quote and escape it, or leave JSON Parameters off and use the individual fields.
- Two emails, two IDs. Contact: Send Email wants a campaign/template email ID; Segment Email: Send wants a segment (list) email ID. Mautic lists both under Channels > Emails, distinguished by type.
- Options is not shown for every contact operation. Send Email, Edit Do Not Contact List and Edit Contact Points do not accept it.
Frequently asked questions
Why am I only getting 30 records back?
Limit tops out at 30 on the Get All operations, so a larger audience has to be paged through rather than fetched in one call.
How do I reduce the size of responses?
Use `simple: true` for basic operations to trim the payload, and set sensible limits on getAll. Use `rawData: true` in options only when you genuinely need the complete response.
How do custom fields work?
Through `customFieldsUi` for custom field management, with `additionalFields` collections carrying extended contact and company data.
How do I react to activity in Mautic?
Use the Mautic Trigger, which fires on contact changes, form submissions, email interactions, page hits and point changes.
Build with Mautic
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Mautic API credentials first.
Open BusyBotLast reviewed . Spotted something wrong? Tell us.