Connector · CRM and email lists
ActiveCampaign, in every client’s workflows.
Add or update a contact, subscribe to a list, with the client’s own ActiveCampaign account.
- Triggers
- 0start a workflow
- Actions
- 2steps in a workflow
Do it in ActiveCampaign
A step with its own fields: values from the run go in by name, and what ActiveCampaign answers is there for the next step.
- Add or update a contactCreates the contact, or updates the one with this email.
- Subscribe to a listPuts a contact on a list, which starts the list’s “subscribes” automations. It re-subscribes someone who had unsubscribed from that list themselves: use it for people who just asked to hear from the client.
Connect the client’s ActiveCampaign
On the client’s page in Thrum: Add credential, type ActiveCampaign API access.
In the client’s ActiveCampaign: Settings → Developer → copy the URL and the Key.
The key is stored encrypted and bound to that client: another client’s workflow cannot use it, and no template or pack copies it.
Via HTTP
Or by web request: create or update a contact
The lead enters the client’s list, and their ActiveCampaign automations take it from there. The web request step, filled in: paste it, swap in the client’s ids, add their key.
01
Add the client’s credential
On the client’s page in Thrum: Add credential, type API key. In the client’s ActiveCampaign: Settings → Developer → copy the Key. The URL on the same page is the account’s address for the step.
{ "api_key": "…" }02
Add a web request step
Name it “Add to ActiveCampaign”, set it as here, and pick the credential. Values in double braces are read from the run: here, the lead the form brought in.
- ACCOUNT
- From the URL under Settings → Developer: https://<account>.api-us1.com.
{ "method": "POST", "url": "https://ACCOUNT.api-us1.com/api/3/contact/sync", "headers": { "Api-Token": "{{ credential.api_key }}" }, "body": { "contact": { "email": "{{ lead.email }}", "firstName": "{{ lead.name }}", "phone": "{{ lead.phone }}" } } }03
What goes out, and what comes back
Sync matches on email: a second enquiry updates the same contact.
POST https://ACCOUNT.api-us1.com/api/3/contact/sync content-type: application/json api-token: •••••••• { "contact": { "email": "nadia@example.com", "firstName": "Nadia Karim", "phone": "+447700900222" } }201 { "contact": { "email": "nadia@example.com", "firstName": "Nadia Karim", "phone": "+447700900222", "id": "113" } }
Watched like everything else
When ActiveCampaign stops answering or refuses the client’s key, you hear about it, and your client does not.
- A failing request
- Tried 3 times, 5 seconds apart and doubling, only for errors a retry can fix
- A service that asks for a pause
- Given it, up to an hour
- Requests at once, per account
- 2, per worker; the rest wait their turn
- Timeout
- 15 seconds, unless the step sets its own
- Private and internal addresses
- Refused, on every redirect too
- The client’s key
- Encrypted, bound to the client, and kept out of every run record
- A step that keeps failing
- Marks the workflow Degraded and alerts you, not the client
More in CRM and email lists
- AttioAdd or update a person, update a person2 actions
BrevoAdd or update a contact, send an email, or start when a new contact is added2 actions · 3 triggers
- CloseCreate a lead, update a lead, or start when a new lead is added2 actions · 2 triggers
- GoHighLevelAdd or update a contact, add tags to a contact2 actions
ActiveCampaign and its logo are trademarks of their owner, used here only to say what Thrum works with; no endorsement is implied.
Thrum is cooking.
Get early access and you’ll be among the first in. Early members get a launch perk.