Iterable integration | Zervanor
← All connectors

Iterable

Also an agent tool
marketing

Iterable cross-channel marketing automation via the Iterable REST API: users (CRUD, subscriptions, GDPR forget, device tokens), events (track/bulk/in-app), lists, campaigns (metrics, trigger, lifecycle), templates (email/push), catalogs, commerce (purchase/cart), workflows, exports, channels, message types, metadata, and direct email/push sends. API-key auth (raw Api-Key header, no Bearer). EU/US data center selectable via {config.region_host}. Webhooks are UI-only and unsigned (no REST registration, no signature handler) — polling trigger on list_campaigns instead. See compatibility.md iterable-01/02/03/04.

76 actions · 1 triggers

The Iterable integration lets you connect Iterable to your automations with 76 actions and 1 triggers — and every action is also a tool an AI agent can call. Examples: List Lists, Create List, Delete List, Get List Size, Get List Users. No blank-canvas wiring — connect it and use it in your workflows.

Every action below is also a tool an AI agent can call — the same pack powers your workflows and your agents.

Triggers 1

Events in Iterable that can start a workflow.

polling

New / updated campaign activity

Polls GET /campaigns and de-dupes by id, advancing on updatedAt. Iterable webhooks are UI-only and unsigned (iterable-01/03), so polling is the v1 trigger path. For raw event polling use export_data_json with startDateTime.

Actions 76

What Zervanor can do in Iterable.

Users16

POST

Update User

Create or update a user profile, upsert by email/userId (POST /users/update).

POST

Bulk Update Users

Create/update up to 1,000 user profiles in one request (POST /users/bulkUpdate).

POST

Update Subscriptions

Set a user's channel/message-type subscriptions and unsubscribed lists (POST /users/updateSubscriptions).

POST

Bulk Update Subscriptions

Batch subscription updates for many users (POST /users/bulkUpdateSubscriptions).

GET

Get User By Email

Retrieve a user profile by email (GET /users/{email}).

GET

Get User By UserId

Retrieve a user profile by userId (GET /users/byUserId/{userId}).

GET

Get User Fields

List all user profile field names and types defined in the project (GET /users/getFields).

POST

Update User Email

Change a user's email address, re-keying the profile (POST /users/updateEmail).

GET

Get Sent Messages

List messages sent to a user within a time range (GET /users/{email}/getSentMessages).

DELETE

Delete User By Email

Permanently delete a user by email (DELETE /users/{email}). Destructive.

DELETE

Delete User By UserId

Permanently delete a user by userId (DELETE /users/byUserId/{userId}). Destructive.

POST

Forget User (GDPR)

GDPR forget: permanently delete a user and block re-creation (POST /users/forget). Irreversible except via unforget.

POST

Unforget User (GDPR)

Reverse a prior forget for a user, re-enabling creation (POST /users/unforget).

POST

Register Browser Token

Register a web-push browser token for a user (POST /users/registerBrowserToken).

POST

Register Device Token

Register a mobile push device token for a user (POST /users/registerDeviceToken).

POST

Disable Device

Disable a previously registered push device token for a user (POST /users/disableDevice).

Catalogs10

GET

List Catalogs

List catalog names, paginated (GET /catalogs).

POST

Create Catalog

Create a new catalog (POST /catalogs/{catalogName}).

DELETE

Delete Catalog

Delete a catalog (DELETE /catalogs/{catalogName}).

GET

Get Catalog Field Mappings

Retrieve a catalog's field-type mappings (GET /catalogs/{catalogName}/fieldMappings).

PUT

Update Catalog Field Mappings

Set/replace a catalog's field-type mappings (PUT /catalogs/{catalogName}/fieldMappings).

GET

List Catalog Items

List items in a catalog, paginated (GET /catalogs/{catalogName}/items).

GET

Get Catalog Item

Retrieve a single catalog item (GET /catalogs/{catalogName}/items/{itemId}).

PUT

Create Or Replace Catalog Item

Create or fully replace a single catalog item (PUT /catalogs/{catalogName}/items/{itemId}).

PATCH

Update Catalog Item

Update selected fields of a catalog item (PATCH /catalogs/{catalogName}/items/{itemId}).

DELETE

Delete Catalog Item

Delete a single catalog item (DELETE /catalogs/{catalogName}/items/{itemId}).

Events10

POST

Track Event

Record a single custom event for a user (POST /events/track).

POST

Track Bulk Events

Record up to 1,000 custom events in one request (POST /events/trackBulk).

POST

Track Push Open

Record a push-notification open event (POST /events/trackPushOpen).

POST

Track In-App Click

Record an in-app message click (POST /events/trackInAppClick).

POST

Track In-App Close

Record an in-app message close (POST /events/trackInAppClose).

POST

Track In-App Open

Record an in-app message open (POST /events/trackInAppOpen).

POST

Track In-App Delivery

Record an in-app message delivery (POST /events/trackInAppDelivery).

POST

Consume In-App Message

Mark an in-app message as consumed, removing it from the user's queue (POST /events/inAppConsume).

GET

Get Events By Email

Retrieve recent event history for a user by email (GET /events/{email}).

GET

Get Events By UserId

Retrieve recent event history for a user by userId (GET /events/byUserId/{userId}).

Campaigns8

GET

List Campaigns

Retrieve all campaigns (GET /campaigns). Polling source for new/updated campaign activity.

GET

Get Campaign Metrics

Retrieve aggregate metrics for one or more campaigns over a time range (GET /campaigns/metrics).

POST

Create Campaign

Create a campaign from a template and recipient list(s) (POST /campaigns/create).

POST

Trigger Campaign

Trigger a triggered-campaign send to a list/segment (POST /campaigns/trigger).

POST

Activate Triggered Campaign

Activate a previously created triggered campaign (POST /campaigns/activateTriggered).

POST

Abort Campaign

Abort an in-progress campaign send (POST /campaigns/abort).

POST

Cancel Campaign

Cancel a scheduled campaign (POST /campaigns/cancel).

GET

List Child Campaigns

List child campaigns generated by a recurring campaign (GET /campaigns/recurring/{campaignId}/childCampaigns).

Lists7

GET

List Lists

Retrieve all lists in the project (GET /lists) — safe identity/connectivity check; parameterless.

POST

Create List

Create a new static list (POST /lists). Returns the new list id as top-level listId.

DELETE

Delete List

Delete a list by id (DELETE /lists/{listId}). Returns HTTP 200 with code:Success.

GET

Get List Size

Return the number of users on a list (GET /lists/{listId}/size).

GET

Get List Users

Stream all member emails of a list as NDJSON (GET /lists/getUsers).

POST

Subscribe To List

Add one or more users to a list (POST /lists/subscribe).

POST

Unsubscribe From List

Remove one or more users from a list (POST /lists/unsubscribe).

Metadata6

GET

Get Global Metadata

List all metadata tables (GET /metadata).

GET

List Metadata Keys

List keys in a metadata table, paginated via next (GET /metadata/{table}).

DELETE

Delete Metadata Table

Delete an entire metadata table (DELETE /metadata/{table}).

GET

Get Metadata Value

Fetch a single metadata key's value (GET /metadata/{table}/{key}).

PUT

Put Metadata Value

Create/update a single metadata key-value pair (PUT /metadata/{table}/{key}).

DELETE

Delete Metadata Key

Delete a single metadata key (DELETE /metadata/{table}/{key}).

Templates6

GET

List Templates

List templates, filterable by type and medium (GET /templates).

GET

Get Template By Client Template Id

Look up a template by clientTemplateId (GET /templates/getByClientTemplateId).

GET

Get Email Template

Retrieve an email template by templateId/clientTemplateId (GET /templates/email/get).

POST

Upsert Email Template

Create or update an email template (POST /templates/email/update).

GET

Get Push Template

Retrieve a push template (GET /templates/push/get).

POST

Upsert Push Template

Create or update a push template (POST /templates/push/update).

Export3

GET

Export Data (JSON)

Export raw event/user/message data within a time range as NDJSON (GET /export/data.json). Rate-limited to 4 req/min.

GET

Export Data (CSV)

Export raw event/user/message data within a time range as CSV (GET /export/data.csv). Rate-limited to 4 req/min.

GET

Export User Events

Export a single user's event stream (GET /export/userEvents).

Commerce2

POST

Track Purchase

Record a purchase event for revenue attribution (POST /commerce/trackPurchase).

POST

Update Cart

Replace a user's current shopping-cart contents for abandoned-cart workflows (POST /commerce/updateCart).

Email2

POST

Send Email

Send a transactional/triggered email to one recipient using a campaignId (POST /email/target).

GET

View Email In Browser

Return the rendered HTML of a sent email for a recipient (GET /email/viewInBrowser).

Push2

POST

Send Push

Send a transactional push to one recipient using a push campaignId (POST /push/target).

POST

Cancel Scheduled Push

Cancel a scheduled push for a recipient (POST /push/cancel).

Channels1

GET

List Channels

List all message channels (GET /channels).

InApp1

GET

Get In-App Messages

Retrieve queued in-app messages for a user (GET /inApp/getMessages).

MessageTypes1

GET

List Message Types

List all message types (GET /messageTypes).

Workflows1

POST

Trigger Workflow

Enter a user (or list) into a Journey/workflow by workflowId (POST /workflows/triggerWorkflow).

Automations using Iterable

Build your own automation with Iterable in the visual builder.

Frequently asked questions

What can I automate with Iterable?

76 actions are available — for example: List Lists, Create List, Delete List, Get List Size, Get List Users, and more.

Which Iterable events can start a workflow?

1 triggers — for example: New / updated campaign activity.

Can Iterable be used as an AI agent tool?

Yes. Every Iterable action automatically becomes a tool an AI agent can call — the same pack powers both your workflows and your agents.

How is the Iterable integration modelled?

Iterable is modelled as a versioned connector pack, and the steps that need reasoning fall to first-party agents hosted in the same runtime as the workflows.