ActiveCampaign · Arazzo Workflow

ActiveCampaign Sync Contact, Set Custom Field, and Tag

Version 1.0.0

Upsert a contact by email, set a custom field, then apply a tag.

1 workflow 1 source API 1 provider
View Spec View on GitHub Marketing AutomationEmail MarketingCRMSales AutomationCustomer ExperienceSMS MarketingE-CommerceSegmentationWebhookArazzoWorkflows

Provider

activecampaign

Workflows

sync-contact-set-custom-field-tag
Upsert a contact, set a custom field value, then apply a tag.
Syncs a contact by email, writes the supplied value to a custom field, and applies the supplied tag to the resolved contact.
3 steps inputs: apiToken, email, fieldId, fieldValue, firstName, lastName, tagId outputs: contactId, contactTagId
1
syncContact
sync-a-contacts-data
Upsert the contact by email so it is created or updated in place.
2
setFieldValue
create-fieldvalue
Write the supplied value to the custom field for the contact.
3
applyTag
create-contact-tag
Apply the supplied tag to the contact for segmentation.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: ActiveCampaign Sync Contact, Set Custom Field, and Tag
  summary: Upsert a contact by email, set a custom field, then apply a tag.
  description: >-
    A full enrichment flow keyed on email. The contact is synced so it is
    created or updated in place, a value is written to one of its custom fields,
    and a tag is applied for segmentation. Every step spells out its request
    inline, including the Api-Token authentication header, so the flow can be
    read and executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: activecampaignApi
  url: ../openapi/activecampaign-v3.json
  type: openapi
workflows:
- workflowId: sync-contact-set-custom-field-tag
  summary: Upsert a contact, set a custom field value, then apply a tag.
  description: >-
    Syncs a contact by email, writes the supplied value to a custom field, and
    applies the supplied tag to the resolved contact.
  inputs:
    type: object
    required:
    - apiToken
    - email
    - fieldId
    - fieldValue
    - tagId
    properties:
      apiToken:
        type: string
        description: ActiveCampaign API token sent in the Api-Token header.
      email:
        type: string
        description: Email address used to upsert the contact.
      firstName:
        type: string
        description: Optional first name of the contact.
      lastName:
        type: string
        description: Optional last name of the contact.
      fieldId:
        type: integer
        description: Identifier of the custom field to set.
      fieldValue:
        type: string
        description: Value to write to the custom field.
      tagId:
        type: integer
        description: Identifier of the tag to apply to the contact.
  steps:
  - stepId: syncContact
    description: Upsert the contact by email so it is created or updated in place.
    operationId: sync-a-contacts-data
    parameters:
    - name: Api-Token
      in: header
      value: $inputs.apiToken
    requestBody:
      contentType: application/json
      payload:
        contact:
          email: $inputs.email
          firstName: $inputs.firstName
          lastName: $inputs.lastName
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      contactId: $response.body#/contact/id
  - stepId: setFieldValue
    description: Write the supplied value to the custom field for the contact.
    operationId: create-fieldvalue
    parameters:
    - name: Api-Token
      in: header
      value: $inputs.apiToken
    requestBody:
      contentType: application/json
      payload:
        fieldValue:
          contact: $steps.syncContact.outputs.contactId
          field: $inputs.fieldId
          value: $inputs.fieldValue
        useDefaults: true
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      updatedContactId: $response.body#/contacts/0/id
  - stepId: applyTag
    description: Apply the supplied tag to the contact for segmentation.
    operationId: create-contact-tag
    parameters:
    - name: Api-Token
      in: header
      value: $inputs.apiToken
    requestBody:
      contentType: application/json
      payload:
        contactTag:
          contact: $steps.syncContact.outputs.contactId
          tag: $inputs.tagId
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      contactTagId: $response.body#/contactTag/id
  outputs:
    contactId: $steps.syncContact.outputs.contactId
    contactTagId: $steps.applyTag.outputs.contactTagId

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/activecampaign-sync-contact-set-custom-field-tag-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.