Apply Tags to Contact

keap.apply_tags
ActionCRM & salesconnection required

Calls the Keap API with the connection's credentials.

Apply one or more Keap tags to a contact and report the outcome Keap gave for each tag separately.

Connection

Required
Yes — the node will not save without one
Auth type
OAuth 2.0
Providers
Keap
Secret shape
{"client_id": "…", "client_secret": "…", "refresh_token": "…"}
Config it needs
base_url, default_user_id
Resolved by
config.connection_id, else node.connection_id

Configuration

2 fields, 2 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
contact_id
The Keap contact id (an integer, as shown on the contact record).
stringYes——12345
tag_ids
The Keap tag ids to apply — a JSON array, or a comma-separated list.
arrayYes—array of number[123,456]

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "contact_id": "12345",
  "tag_ids": [
    123,
    456
  ]
}

Output

One shape.

result

FieldTypeExample
contact_id
The contact the tags were applied to.
number—
results[].tag_id
The tag this row is about.
number—
results[].status
Keap's own outcome: SUCCESS, DUPLICATE, TAG_ID_NOT_FOUND, CONTACT_NOT_FOUND, NO_PERMISSION or FAILURE.
string—
results[].applied
True when the tag is on the contact (SUCCESS or DUPLICATE).
boolean—
results[].duplicate
True when the contact already carried this tag.
boolean—
applied_tag_ids
The tag ids that ended up on the contact.
array—
failed
The rows Keap refused, with their status.
array—
applied_count
How many tags are on the contact.
number—
failure_count
How many tags Keap refused.
number—
status
'success' when every tag applied, 'partial' when some did not.
string—
{
  "applied_count": 0,
  "applied_tag_ids": [],
  "contact_id": 0,
  "failed": [],
  "failure_count": 0,
  "results": [
    {
      "applied": false,
      "duplicate": false,
      "status": "",
      "tag_id": 0
    }
  ],
  "status": ""
}

Notes

  • Keap answers with one status per tag id, so a partial result is normal; the step fails only when no tag at all was applied.
  • DUPLICATE counts as applied — the tag is already on the contact.

See Apply Tags to Contact run in a workflow.

In a technical demo we add the Keap connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.