Use ActiveCampaign Automations API to trigger an automation for a specific contact and capture the resulting automation run state via the automation log
GET /api/3/automations to list automations and identify the target automation ID and its required trigger type
POST /api/3/contactAutomations with a body containing 'contactAutomation': {'contact': '{contactId}', 'automation': '{automationId}'} to enroll the contact into the automation
Inspect the response 'contactAutomation' object for 'status' (0=active, 1=complete, 2=paused) and 'currentElement' (the automation step the contact is currently on)
Poll GET /api/3/contactAutomations?contact={contactId} periodically to track status changes as the contact moves through the automation steps
GET /api/3/contactActivities?contact={contactId}&action=automation to retrieve the full log of automation actions taken for the contact
Known gotchas
ActiveCampaign does not allow re-enrolling a contact into an automation they have already completed unless the automation's 'allow multiple' setting is enabled; the API returns a success response but silently skips the enrollment
The 'currentElement' field in the contactAutomation response contains the internal step ID, not a human-readable name; map it against GET /api/3/automations/{id} action blocks to interpret the current position
Automations with wait steps will appear stuck in 'active' status during the wait period — this is expected behavior, not an error; use the lastDate field to determine if the automation is genuinely stalled
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp