Update Subscriptions

iterable.update_subscriptions
ActionEmailconnection required

Calls the Iterable API with the connection's credentials.

Set which lists, channels and message types a user is subscribed to.

Connection

Required
Yes — the node will not save without one
Auth type
API key
Providers
Iterable
Secret shape
the API key, or {"api_key": "…"}
Config it needs
region, base_url
Resolved by
config.connection_id, else node.connection_id

Configuration

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

FieldTypeRequiredDefaultConstraintsExample
email
The email address that identifies the user. Provide this or 'user_id'.
stringNo—email format—
user_id
The userId that identifies the user. Provide this or 'email'.
stringNo———
email_list_ids
The list ids the user should be subscribed to, as a JSON array of numbers. Send an empty array to unsubscribe them from every list.
arrayNo—array of integer—
unsubscribed_channel_ids
Channel ids to unsubscribe the user from, as a JSON array of numbers.
arrayNo—array of integer—
unsubscribed_message_type_ids
Message type ids to unsubscribe from, as a JSON array of numbers.
arrayNo—array of integer—
subscribed_message_type_ids
Message type ids to subscribe to, as a JSON array of numbers.
arrayNo—array of integer—
campaign_id
Campaign to attribute the unsubscribe to.
integerNo—≥ 1—
template_id
Template to attribute the unsubscribe to.
integerNo—≥ 1—
  • At least one of email, user_id must be set.

Output

One shape.

result

FieldTypeExample
code
Iterable's response code, 'Success' when the call was accepted.
string—
msg
The human-readable message Iterable returned.
string—
params
Any extra detail Iterable attached to the response.
object—
{
  "code": "",
  "msg": "",
  "params": {}
}

Notes

  • This endpoint overwrites — it does not merge — every field you send, so send the complete list of ids the user should end up with.
  • An empty array clears that set; a field you leave blank is not sent at all and Iterable leaves it as it was.

See Update Subscriptions run in a workflow.

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