Iterable, worked by an AI employee
Not another app for your team to learn, and not a set of rules for you to build. You hire an AI employee, you give it access to your Iterable account, and you ask it for things in Slack or Teams the way you would ask anyone else on the team. There is nothing to map and nothing to maintain.
- Marketing
- Connects with a key
- 100 ready-made tools
- Asked in Slack or Teams
An illustration of how the conversation reads, not a transcript from a client account.
What Iterable is
Cross-channel marketing platform for creating, executing, and optimizing campaigns
You paste in a key from your own Iterable account. It is kept encrypted, and you can withdraw it from inside Iterable whenever you like.
One message in, the work done in Iterable.
- 01
You ask
You message your AI employee in the chat your team already has open, in one sentence, in your own words.
- 02
It works out the step
It decides what the job needs in Iterable. You do not pick anything from a menu or wire anything together.
- 03
It does the work
Signed in to your own Iterable account, inside the access you granted it, doing the thing you asked for.
- 04
It reports back
It tells you what it did, in the same thread. If it could not do something, it says so rather than guessing.
What it can do in Iterable
These are the ready-made tools your AI employee already has in Iterable. It is not limited to them, but it never has to be taught these.
- Abort CampaignAbort a running campaign to stop all in-progress message deliveries. Use this action when you need to immediately halt an active campaign that is currently sending messages to reci
- Activate a triggered campaignActivates a triggered campaign by its unique ID, allowing it to process events and send messages. Use this action when you need to start a triggered campaign that will send message
- Archive CampaignsArchives one or more campaigns. This endpoint behaves the same as the archive feature in the UI. Scheduled or recurring campaigns will be cancelled, and running campaigns will be a
- Bulk delete templatesBulk delete one or more base templates from Iterable. Use this action when you need to permanently remove multiple templates that are no longer needed. This action is irreversible
- Bulk Update UsersBulk update user data in Iterable. Use this action when you need to update multiple user profiles at once. This endpoint adds and overwrites user profile fields as needed. It does
- Cancel CampaignCancel a scheduled or recurring campaign in Iterable. Use when you need to stop a campaign that is scheduled for future sending or is part of a recurring campaign cycle. Once cance
- Cancel EmailCancel a scheduled email to a specific user in Iterable. Use when you need to stop an email that has been queued for a specific user but has not yet been sent. You can cancel by pr
- Cancel ExportCancel a queued or running export created with the 'Start export' endpoint. Use when you need to abort an export job that is in progress or queued. Rate limit: 1 request/second, pe
- Cancel In-App MessageCancel a scheduled in-app message to a specific user in Iterable. Use when you need to stop a scheduled in-app message that is queued for delivery to a specific user. This action c
- Cancel PushCancel a scheduled push notification to a specific user in Iterable. Use when you need to stop a push notification that has been queued for a specific user but has not yet been sen
- Cancel Web PushCancel a scheduled web push notification to a specific user in Iterable. Use when you need to stop a web push notification that has been queued for a specific user but has not yet
- Cancel WhatsAppCancel a scheduled WhatsApp message to a specific user in Iterable. Use when you need to stop a WhatsApp message that has been queued for a specific user but has not yet been sent.
- Create a catalogCreate a catalog with the specified name in Iterable. Use this action when you need to create a new catalog to store and organize data such as products, users, or other entities. E
- Create a new campaignCreates a new blast or triggered campaign from an existing template. Use this action when you need to create email, push notification, web push notification, SMS, in-app message, a
- Create a new listCreate a new static list in Iterable. Use this action when you need to create a new contact list that can be used for email campaigns, segmentation, or organizing contacts. Each li
- Create Catalog ItemsAsynchronously creates or updates up to 1000 catalog items with a single request. Use this action when you need to bulk create or update catalog items efficiently. If an item with
- Create snippetCreates a new code snippet in Iterable. Use this action when you need to create a reusable code snippet that can be referenced in campaigns, templates, or other Iterable features.
- Deactivate Triggered CampaignDeactivate a triggered campaign in Iterable. Use when you need to stop a triggered campaign from firing based on user events. This action is irreversible — once a triggered campaig
- Delete a catalogDelete a catalog by its name. This action also deletes all collections that reference the specified catalog. Use this action when you need to permanently remove a catalog and all i
- Delete a Catalog ItemDeletes the specified item from a catalog. This action is asynchronous — the data may not be deleted immediately. Use this action when you need to remove a specific item from a cat
- Delete a listDelete a list by its listId. Use this action when you need to permanently remove a contact list from Iterable. This action is irreversible — the list and all associated data cannot
- Delete Catalog ItemsAsynchronously deletes catalog items from a specified catalog in Iterable. Use when you need to remove specific items from a catalog by their IDs. This action processes the deletio
- Delete Metadata TableAsynchronously deletes a metadata table by its table name. Use when you need to permanently remove a metadata table from Iterable. This action is asynchronous - a 200 response indi
- Delete snippetDeletes a snippet by its ID (numeric) or name (string). Numeric identifiers are treated as snippet IDs, string identifiers as snippet names. Use this action when you need to remove
- Delete User By IDAsynchronously deletes a user by userId from Iterable. Use when you need to remove a user from Iterable's system by their userId. This action does not prevent future data collectio
- Export Campaign Data to JSONExport campaign analytics data in JSON format with one entry per line. Use when you need to retrieve campaign metrics such as email sends, opens, clicks, purchases, or custom event
- Export data to CSVExport campaign analytics data in CSV format from Iterable. Use when you need to retrieve event data such as email sends, opens, clicks, push notifications, SMS messages, purchases
- Export User EventsExport all events for a user identified by email or userId. Returns events as JSON, one event per line. Use this action when you need to retrieve the complete event history for a s
- Forget UserDeletes the specified user's data from the Iterable project and prevents future data collection about them. This action is used for GDPR compliance. Use this action when you need t
- Get campaign by IDRetrieves a campaign by its unique ID. Use this action when you need to fetch detailed information about a specific campaign from Iterable. The response includes campaign metadata
- Get Campaign MetricsRetrieve performance metrics for one or more campaigns. Use when you need to analyze delivery, open, click, and conversion rates for your email, push, or SMS campaigns. This action
- Get Catalog Field MappingsTool to retrieve field mappings (field to data type) and undefined fields for a catalog in Iterable. Use when you need to inspect the schema structure and data type definitions of
- Get catalog item by IDRetrieves a specific catalog item by its ID from the specified catalog. Use this action when you need to fetch a single item from a catalog using its unique identifier.
- Get email template by IDGet an email template by templateId. Use this action when you need to retrieve a specific email template from Iterable to view its content, settings, sender configuration, or metad
- Get Embedded MessagesRetrieves embedded messages for which the specified user is eligible, grouped by placementId. Use this action when you need to fetch in-app embedded messages for a user based on th
- Get Embedded TemplateRetrieves an embedded message template by its unique ID. Use this action when you need to fetch detailed information about a specific embedded message template from Iterable, inclu
- Get Experiment MetricsRetrieve metrics for email experiments. Use when you need to analyze performance data for A/B tests or email experiments. This action allows filtering by specific experiment IDs, c
- Get In-App MessagesGet a user's in-app messages from Iterable. This endpoint always returns the user's non-selective (not app-specific) in-app messages. To also fetch app-specific in-app messages, in
- Get in-app template by IDRetrieves an in-app template by its unique ID. Use this action when you need to fetch detailed information about a specific in-app template from Iterable, including its content, di
- Get List SizeGet the number of users within a list. Returns the count of users currently subscribed to the specified list. Use this action when you need to check how many users are in a specifi
- Get push template by IDRetrieves a push template by its unique ID. Use this action when you need to fetch a specific push template from Iterable to view its settings, content, or configuration. The respo
- Get SMS templateRetrieves an SMS template by its unique ID. Use this action when you need to fetch the content, metadata, and settings of a specific SMS template from Iterable. The response includ
- Get snippet by ID or nameRetrieves a snippet by its ID (numeric) or name (string). Numeric identifiers are treated as snippet IDs, string identifiers as snippet names. Use this action when you need to retr
- Get template by client template IDRetrieves an email template by its client-defined template ID. Use this action when you need to find templates using a client-specific identifier rather than the internal Iterable
- Get User By IDGet a user by userId from Iterable. Use when you need to retrieve user information using a specific userId. This action fetches user data including email, userId, and any additiona
- Get User By ID (Path)Get a user by userId (path parameter) from Iterable. Use when you need to retrieve user information using a specific userId as a path parameter. This action fetches user data inclu
- Get User EventsGet events for a specific user by userId. Use when you need to retrieve the event history for a particular user from Iterable. This action allows you to fetch a user's event data i
- Get User Sent MessagesGet messages sent to a user by email address or userId. Use when you need to retrieve the message history for a specific user in Iterable. This action returns messages sent to a us
- Get Web In-App MessagesGet a user's web in-app messages from Iterable. This endpoint always returns the user's non-selective (not app-specific) web in-app messages. To also fetch web app-specific in-app
- List all campaignsRetrieves metadata about all campaigns in a project with optional pagination. Use this action when you need to enumerate all campaigns in a project, retrieve campaign IDs for subse
- List all templatesRetrieves metadata about all templates in a project with optional pagination. Use this action when you need to enumerate all templates in a project, retrieve template IDs for subse
- List Catalog ItemsGet the catalog items for a catalog. Use when you need to retrieve items stored in a specific Iterable catalog, such as product catalogs, user preferences, or custom data sets. Sup
- List CatalogsTool to retrieve all catalog names from Iterable. Use when you need to list available catalogs before performing catalog-specific operations like getting or setting catalog records
- List ChannelsGet all message channels within the Iterable project. Use this action when you need to retrieve all available communication channels (e.g., email, push notifications) configured in
- List export filesGet the job status and files for an export started with the 'Start export' endpoint. Occasionally, a job status may change from running to enqueued because it had to restart. When
- List Export JobsRetrieve a list of recent export jobs for the current project. Use when you need to monitor export job status, check for completed exports, or manage data export operations.
- List Forgotten User IDsGet hashed user IDs of forgotten users for GDPR compliance. Returns a hash for each userId currently forgotten by your project. Each forgotten userId is lowercased, trimmed, and ha
- List JourneysGet a list of journeys (workflows) within your Iterable project. Use this action when you need to retrieve and browse through marketing automation journeys, including their status,
- List List UsersGet all users within a list. Use when you need to retrieve the complete list of users subscribed to a specific list for export, analysis, or batch operations. This action returns a
- List ListsRetrieve all lists within a project. Use when you need to enumerate available lists, retrieve list IDs for subsequent operations, or understand the structure of contact lists. Rate
- List Message TypesLists all message types within a project. Use when you need to retrieve all available message types (e.g., Email, Push, SMS) and their associated metadata such as channel ID, subsc
- List Metadata KeysList all keys in a metadata table. Use when you need to discover what keys exist within a specific metadata table (e.g., to find keys before retrieving or deleting individual metad
- List Metadata TablesList available metadata tables in Iterable. Use when you need to discover what metadata tables are available for querying (e.g., users, events, campaigns). This action is read-only
- List recurring campaign child campaignsRetrieve the child campaigns generated by a recurring campaign. Use when you need to list or monitor campaigns that were created from a recurring campaign template. Pagination is s
- List SnippetsGet all snippets for the current project. Use this action when you need to retrieve all code snippets available in the Iterable project, including their content, metadata, and asso
- List User FieldsGet all user fields within a project. Use when you need to discover what custom fields exist for users in your Iterable project, such as for understanding user data schema, creatin
- List WebhooksGet all webhooks configured within the Iterable project. Use this action when you need to retrieve all webhook configurations, identify webhook IDs for subsequent operations, or un
- Merge UsersMerge two user profiles in Iterable. Use when you need to consolidate duplicate user profiles. This action merges all profile data and events from the source user into the destinat
- Preview email templateGenerate a fully rendered HTML preview of an email template using custom data. Use this action when you need to preview how an email template will look when rendered with specific
- Preview in-app templateGenerate a fully rendered HTML preview of an in-app template using custom data. Use this action when you need to simulate how a template would appear when sent to a user, allowing
- Preview List UsersGet a random sample of up to 5000 users within a list. Use when you need to quickly preview the users in a specific list without fetching the entire list. This action is useful for
- Replace Catalog ItemAsynchronously creates or replaces the specified catalog item in the given catalog. Use this action when you need to completely replace a catalog item with new data. If the item al
- Replace Metadata ItemAsynchronously creates or replaces the metadata item associated with the specified key. Use when you need to create a new metadata item or completely replace an existing one. A 200
- Schedule CampaignSchedule an existing campaign to be sent at a specified time. Use when you have created a campaign and need to schedule it for future sending. The campaign must exist and not alrea
- Send CampaignSend an existing campaign immediately in Iterable. Use when you need to trigger a campaign to send right away, bypassing any scheduled send time. The campaign must be in a 'Ready'
- Send email template proofSend a proof of an email template to a specific user. Use this action when you need to preview an email template by sending a proof to a specific recipient before sending it to a l
- Send in-app notification to targetSend an in-app notification to a specific user using Iterable. Use this action when you need to send an in-app notification directly to a recipient. The notification is sent based
- Send in-app template proofSend a proof of an in-app template to a specific user using Iterable. Use this action when you need to preview how an in-app template will look for a specific user before sending t
- Send push template proofSend a proof of a push template to a specific user. Use this action when you need to preview a push template by sending a proof to a specific recipient before sending it to a large
- Send push to targetSend a push notification to a specific user using Iterable. Use this action when you need to send a transactional push notification directly to a recipient. The push is sent based
- Send SMS template proofSend a proof of an SMS template to a specific user. Use this action when you need to preview an SMS template by sending a proof to a specific recipient before sending it to a large
- Send WhatsApp to targetSend a WhatsApp message to a specific user using Iterable. Use this action when you need to send a transactional WhatsApp message directly to a recipient. The WhatsApp message is s
- Start ExportStart a data export job. The export processes as a background job asynchronously. Use the 'List export files' action to check export status by jobId and obtain file download links
- Subscribe to ListSubscribe one or more users to a specific list in Iterable. Use this action when you need to add subscribers to a list by their email address, userId, or both. The action can creat
- Subscribe User By IDSubscribes a user to the specified subscription group by their userId. Use when you need to add a user to a specific email list, message type, or message channel subscription. Cont
- Track Embedded ClickTracks a click event on an embedded message. Use this action when you need to record user interactions with buttons or links in embedded messages. This creates an embeddedClick eve
- Track Embedded ReceivedTrack that an embedded message was received on a device. Use this action when you need to record that a device has retrieved an embedded message from Iterable's API. Call this endp
- Track Embedded SessionTracks an embedded message session and related impressions in Iterable. Use this action when you need to report user engagement with embedded messages, including tracking when sess
- Track EventTrack an event in Iterable. Use when you need to record a user action, system event, or custom analytics event. This action sends event data to Iterable for processing. Events are
- Track Events in BulkTrack multiple events in bulk in Iterable. Use this action when you need to track multiple events at once for better performance and to ensure events are processed in the correct o
- Track PurchaseTrack a purchase event in Iterable. Use when you need to record a purchase transaction. This action tracks purchase events, clearing the shoppingCartItems field on the user profile
- Trigger CampaignTrigger a campaign to send to one or more lists of recipients. Use when you need to initiate a marketing campaign immediately, sending to all users in the specified lists. The camp
- Trigger JourneyTrigger a journey (workflow) in Iterable for a specific user or list. Use this action when you need to start a journey for an individual user (by email or userId) or for all users
- Unforget UserUnforgets a previously forgotten user in Iterable, resuming data collection. This action allows you to resume collecting data about a user who was previously forgotten (deleted) fr
- Unsubscribe from listRemove users from a list. Use this action when you need to unsubscribe one or more users from a specific email list in Iterable. This action permanently removes subscribers from th
- Unsubscribe User By IDUnsubscribes a user from the specified subscription group by their userId. Use when you need to remove a user from a specific email list, message type, or message channel subscript
- Update Catalog Field MappingsSet a catalog's field mappings (data types) in Iterable. Use this action when you need to define the data type for fields in a catalog. After being set, a given field's data type m
- Update Catalog ItemAsynchronously creates or updates the specified catalog item in the given catalog. Use when you need to create a new catalog item or update an existing one. If the item already exi
- Update email templateUpdate an existing email template in Iterable. Use this action when you need to modify an existing email template's content, settings, sender information, or metadata. Only the fie
- Update Shopping CartUpdate a user's shopping cart items in Iterable. Use when you need to update the shoppingCartItems field on a user profile with items from the user's shopping cart. The user profil
You stay the boss of your Iterable account.
Nothing connects until you approve it. You grant access one app at a time, you can take it back the same way, and everything your AI employee does in there is written down where you can see it.
How we handle your data- It signs in to your own Iterable account. You are not moving anything into ours.
- You grant access one app at a time, and you can take it back the same way.
- Everything it does in Iterable is written down, with what it did and when.
- Anything you tell it to check with you first, it checks with you first.
It works in Iterable and the rest of your software in the same job
A real job rarely stays in one place. Reading a message in one app, checking a record in another and writing the result in a third is one request to your AI employee, not three.
Questions people ask about Iterable
- Can an AI employee really work inside Iterable?
- Yes. It signs in to your own Iterable account and works in it the way a new hire would, from the chat your team already has open. Nobody installs anything, and nobody learns a new screen.
- Do I have to move anything out of Iterable?
- No. Nothing moves and nothing is replaced. Your records stay in Iterable, your team carries on in the same screens they used yesterday, and your AI employee works alongside them in there.
- How does it get into my Iterable account?
- You paste in a key from your own Iterable account. It is kept encrypted, and you can withdraw it from inside Iterable whenever you like. You approve it before anything connects, and you can take the access back the same way you gave it.
- What can it actually do in Iterable?
- It has 100 ready-made tools in Iterable today, among them Abort Campaign, Activate a triggered campaign and Archive Campaigns. The full list is on this page. It is not limited to those, but it never has to be taught them.
- Can it use Iterable and the rest of my software in the same job?
- Yes, and that is usually the point. Reading a message in one app, checking a record in Iterable and writing the result somewhere else is one request to your AI employee, not three separate ones you stitch together.
- Who decides what it is allowed to do in Iterable?
- You do. You grant access one app at a time and can withdraw it at any time, anything you ask it to check with you first it checks with you first, and everything it does in Iterable is written down with what it did and when.