ActionActiveCampaignUpdated September 2026
How do I update a contact's fields in ActiveCampaign?
Short answer: You can update contact in ActiveCampaign by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the ActiveCampaign Update Contact action to a workflow, map its 5 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.
Inputs
The fields this action accepts.
Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.
| Field | Type | Required | Description |
|---|---|---|---|
Contact ID contact_id | string | Required | Contact ID. Example: 123 |
Email email | string | Optional | Email. e.g. "user@example.com" |
First Name firstName | string | Optional | Contact's first (given) name. |
Last Name lastName | string | Optional | Contact's last (family) name. |
Phone phone | string | Optional | Phone number in E.164 format (with country code, no spaces). |
Sample request
{"contact_id": "e.g. 123","email": "user@example.com","firstName": "e.g. Jane","lastName": "e.g. Doe","phone": "e.g. +14155551234"}
Returns
{"contact": {"id": "123","email": "user@example.com"}}
Use these fields in downstream nodes for routing, logging, or error handling.
Triggered by
Apps that pair well as the trigger for Update Contact.
Any of these apps can fire this action as part of a workflow.
FAQ
Questions about Update Contact.
What does the Update Contact action do in ActiveCampaign?
Updates standard fields and custom fields on an existing contact by ID. Partial updates supported — only the passed fields change, others stay untouched. For "enrichment from external source → write back to AC" workflows where you're augmenting with firmographic data after the initial signup.
What inputs does Update Contact require?
Required: Contact ID. Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if ActiveCampaign returns an error?
The run history shows the failed step with its input and the error message ActiveCampaign returned, so you can fix the input and run the workflow again. Automatic retries are built into HTTP steps only, where you can also set your own retry count and delay.
Does Update Contact support batch operations?
Run Update Contact inside a loop to process each item in an array. TinyCommand does not throttle calls for you, so for large arrays add a Delay step if you need to stay within ActiveCampaign's rate limits.
More actions
Other ActiveCampaign actions.
Action
Add Contact to List
Subscribes an existing contact to a specific list. If the contact isn't in the system, this fails — use Create Contact first or the upsert pattern. List membership drives campaign targeting in ActiveCampaign, so this is how cross-app workflows hand off leads into AC's nurture flows.
ActionAdd Tag to Contact
Applies a tag to a contact — auto-creates the tag if it doesn't exist yet, which makes it forgiving for workflow setup but easy to fragment your tag taxonomy. Maintain a canonical tag list (in a Notion doc or workflow constant) to avoid "Customer", "customer", "Customers" all coexisting.
ActionCreate Contact
Creates a new contact with email, name, phone, and any configured custom fields. ActiveCampaign treats email as the dedupe key — repeated creates with the same email update the existing record. For "auto-add new leads from upstream" workflows, this is the entry point.
ActionDelete Contact
Hard-deletes the contact and all associated history (campaign engagement, automation state, list memberships). Irreversible — for GDPR right-to-erasure workflows or compliance cleanups. For soft removal (suppress without erasing history), use Unsubscribe or remove from all lists instead.
ActionGet Contact
Returns the full contact record by ID — standard fields, custom fields, current tags, list memberships, and recent activity if requested. The standard lookup before Update Contact or for enrichment workflows that need a snapshot of AC state for downstream decisions.
ActionList Automations
Returns every automation in the connected ActiveCampaign account with name, status (active, paused, draft), and the contact count currently in each. Useful for "where are my leads right now" audit workflows and for resolving automation IDs at workflow-build time.