> This page is for Agent Handler.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# ActiveCampaign

**Authentication:** API key. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow.

## Sample use cases

* Find every contact who clicked our last campaign but hasn't replied to the follow-up in 5 days and DM their account owner.
* Add a tag and start a re-engagement automation for contacts whose subscription is expiring within 30 days.
* Pull the open-rate and click-rate for last month's campaigns and post a digest in #marketing.

## Available Tools

#### create\_account

Create a new account (company) in ActiveCampaign. Requires name. Optionally include account\_url for the company website.

#### list\_accounts

List all accounts (companies) in ActiveCampaign. Supports search by name and pagination with limit/offset.

#### get\_account

Retrieve a single account (company) by ID.

#### update\_account

Update an existing account. Specify account\_id and fields to update. Only provided fields will be changed.

#### delete\_account

Delete an account (company) from ActiveCampaign. This action cannot be undone.

#### list\_automations

List all automations in ActiveCampaign. Supports pagination with limit/offset.

#### get\_automation

Retrieve a single automation by ID. Returns automation details and status.

#### add\_contact\_to\_automation

Add a contact to an automation. Requires contact\_id and automation\_id. Use list\_automations to find valid automation IDs.

#### remove\_contact\_from\_automation

Remove a contact from an automation. Use the contact\_automation\_id from add\_contact\_to\_automation response.

#### list\_campaigns

List all email campaigns in ActiveCampaign. Supports pagination with limit/offset.

#### get\_campaign

Retrieve a single email campaign by ID. Returns campaign details including type and status.

#### create\_contact

Create a new contact in ActiveCampaign. Requires email address. Optionally include first\_name, last\_name, phone, and custom field\_values.

#### list\_contacts

List contacts in ActiveCampaign with optional filters. Filter by email, list\_id, tag\_id, or status. Supports pagination with limit/offset.

#### get\_contact

Retrieve a single contact by ID. Returns full contact details including custom fields.

#### update\_contact

Update an existing contact. Specify contact\_id and fields to update. Only provided fields will be changed.

#### delete\_contact

Delete a contact from ActiveCampaign. This action cannot be undone.

#### add\_tag\_to\_contact

Add a tag to a contact. Use list\_tags to find valid tag IDs.

#### remove\_tag\_from\_contact

Remove a tag from a contact. Use the contact\_tag\_id from add\_tag\_to\_contact response.

#### subscribe\_contact\_to\_list

Subscribe a contact to a mailing list. Use list\_lists to find valid list IDs.

#### unsubscribe\_contact\_from\_list

Unsubscribe a contact from a mailing list by updating subscription status to unsubscribed.

#### create\_custom\_field

Create a new custom field in ActiveCampaign. Requires title and type (text, textarea, date, dropdown, multiselect, radio, checkbox, hidden, listbox).

#### list\_custom\_fields

List all custom fields in ActiveCampaign. Supports pagination with limit/offset.

#### get\_custom\_field

Retrieve a single custom field by ID.

#### update\_custom\_field

Update an existing custom field. Specify field\_id and fields to update. Can change title and options (for dropdown/multiselect types).

#### delete\_custom\_field

Delete a custom field from ActiveCampaign. This action cannot be undone.

#### set\_contact\_field\_value

Set a custom field value for a contact. Requires contact\_id, field\_id, and value. Use list\_custom\_fields to find valid field IDs.

#### create\_deal

Create a new deal in ActiveCampaign. Requires title, pipeline\_id, and stage\_id. Optionally include value (in cents), currency, owner\_id, contact\_id, account\_id, and description.

#### list\_deals

List deals in ActiveCampaign with optional filters. Filter by status, stage\_id, pipeline\_id, or contact\_id. Supports search and pagination.

#### get\_deal

Retrieve a single deal by ID. Returns full deal details.

#### update\_deal

Update an existing deal. Specify deal\_id and fields to update. Can change title, value, status (open/won/lost), stage\_id, owner\_id, and more.

#### delete\_deal

Delete a deal from ActiveCampaign. This action cannot be undone.

#### create\_deal\_note

Create a note on a deal. Requires deal\_id and note content.

#### update\_deal\_note

Update an existing deal note. Requires deal\_id, note\_id, and new note content.

#### create\_list

Create a new mailing list in ActiveCampaign. Requires name, stringid (URL-safe name), sender\_url, and sender\_reminder for CAN-SPAM compliance.

#### list\_lists

List all mailing lists in ActiveCampaign. Supports pagination with limit/offset.

#### get\_list

Retrieve a single mailing list by ID.

#### delete\_list

Delete a mailing list from ActiveCampaign. This action cannot be undone.

#### create\_note

Create a note on a contact. Requires contact\_id and note content.

#### list\_notes

List all notes in ActiveCampaign. Optionally filter by contact\_id. Supports pagination with limit/offset.

#### get\_note

Retrieve a single note by ID.

#### update\_note

Update an existing note. Specify note\_id and new note content.

#### delete\_note

Delete a note from ActiveCampaign. This action cannot be undone.

#### create\_pipeline

Create a new deal pipeline in ActiveCampaign. Requires title. Optionally include default currency.

#### list\_pipelines

List all deal pipelines in ActiveCampaign. Supports pagination with limit/offset.

#### get\_pipeline

Retrieve a single pipeline by ID.

#### update\_pipeline

Update an existing pipeline. Specify pipeline\_id and fields to update. Can change title and default currency.

#### delete\_pipeline

Delete a pipeline from ActiveCampaign. This action cannot be undone.

#### create\_stage

Create a new stage in a pipeline. Requires title and pipeline\_id. Optionally specify order (0-indexed position).

#### list\_stages

List all deal stages. Optionally filter by pipeline\_id. Supports pagination.

#### get\_stage

Retrieve a single stage by ID.

#### update\_stage

Update an existing stage. Specify stage\_id and fields to update. Can change title and order.

#### delete\_stage

Delete a stage from a pipeline. This action cannot be undone.

#### create\_tag

Create a new tag in ActiveCampaign. Requires tag name. Optionally specify tag\_type (contact or template) and description.

#### list\_tags

List all tags in ActiveCampaign. Supports search by name and pagination.

#### get\_tag

Retrieve a single tag by ID.

#### update\_tag

Update an existing tag. Specify tag\_id and fields to update. Can change tag name and description.

#### delete\_tag

Delete a tag from ActiveCampaign. This action cannot be undone.

#### create\_deal\_task

Create a task for a deal. Requires deal\_id and title. Optionally include note, due\_date (ISO 8601), and task\_type\_id.

#### list\_deal\_tasks

List deal tasks in ActiveCampaign. Optionally filter by deal\_id or status. Supports pagination with limit/offset.

#### get\_deal\_task

Retrieve a single deal task by ID.

#### update\_deal\_task

Update an existing deal task. Specify task\_id and fields to update. Can change title, note, due\_date, and status (incomplete/complete).

#### delete\_deal\_task

Delete a deal task from ActiveCampaign. This action cannot be undone.