Iterable Events API

Track custom events, retrieve event data for users, and manage event metadata used for segmentation and campaign triggering.

Operations 17

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /api/embedded-messaging/events/click Track a click on an embedded message · Track an embedded message click #
Ask an LLM
“How do I record that a user clicked a button in an embedded message?”
“Can I log which URL was opened from an embedded message click?”
Tell an agent
Track a click on embedded message {messageId} by {email}.
Record button {buttonIdentifier} clicked on embedded message {messageId} to {targetUrl}.
POST /api/embedded-messaging/events/received Track an embedded message received · Track an embedded message received event #
Ask an LLM
“Can I log that an embedded message arrived on a user's device?”
“What creates an embeddedReceived event?”
Tell an agent
Mark embedded message {messageId} as received for {email}.
Track receipt of embedded message {messageId} on device {deviceInfo}.
POST /api/embedded-messaging/events/session Track an embedded session and impressions · Track an embedded message session and related impressions #
Ask an LLM
“How do I report how long a user viewed embedded messages in a session?”
“Can I send impressions for several embedded messages in one session event?”
Tell an agent
Track embedded session {session} with impressions {impressions} for {email}.
Log an embedded messaging session {session} for user {userId}.
GET /api/events/byUserId/{userId} Get a user's events by userId · Get user events by userId #
Ask an LLM
“Can I pull the event history for a user identified by userId?”
“How many recent events can I fetch for one userId?”
Tell an agent
Get events for user ID {userId}.
Show the last {limit} events for user ID {userId}.
POST /api/events/inAppConsume Consume or delete an in-app message · Consume or delete an in-app message #
Ask an LLM
“How do I remove an in-app message from a user's inbox without the mobile SDK?”
“Can I record why an in-app message was deleted?”
Tell an agent destructive · confirm first
Consume in-app message {messageId} for {email}.
Delete in-app message {messageId} for user {userId} with delete action {deleteAction}.
POST /api/events/track Track a custom event · Track an event #
Ask an LLM
“Can I track a custom event and create new fields on the fly under /api/events?”
“Are single tracked events processed in order with bulk ones?”
Tell an agent
Track event {eventName} for {email}.
Track event {eventName} for user {userId} with data {dataFields}, creating new fields.
POST /api/events/trackBulk Track many custom events at once · Bulk track events #
Ask an LLM
“Can I send a batch of events in one /api/events call?”
“Are bulk events processed separately from single-event tracking?”
Tell an agent
Bulk track events {events}.
Send this batch of events to /api/events/trackBulk: {events}.
POST /api/events/trackInAppClick Track an in-app message click · Track an in-app message click #
Ask an LLM
“How do I log a tap on a link inside an in-app message?”
“Which URL did the user click in an in-app message, and how do I record it?”
Tell an agent
Track a click on in-app message {messageId} to {clickedUrl}.
Record in-app click on message {messageId} by {email}.
POST /api/events/trackInAppClose Track the closing of an in-app message · Track the closing of an in-app message #
Ask an LLM
“Can I record when a user dismisses an in-app message, and how they closed it?”
“Is there an event for closing an in-app message inside an inbox session?”
Tell an agent
Track that {email} closed in-app message {messageId}.
Log close of in-app message {messageId} with action {closeAction} in inbox session {inboxSessionId}.
POST /api/events/trackInAppDelivery Track in-app message delivery · Track the delivery of an in-app message #
Ask an LLM
“How do I record that an in-app message was delivered to a device?”
“What event marks an in-app message as delivered?”
Tell an agent
Track delivery of in-app message {messageId} to {email}.
Mark in-app message {messageId} delivered on device {deviceInfo}.
POST /api/events/trackInAppOpen Track an in-app message open · Track an in-app message open #
Ask an LLM
“Does tracking an in-app open also mark the message as read?”
“Where do I log that a user opened an in-app message?”
Tell an agent
Track that {email} opened in-app message {messageId}.
Record an open of in-app message {messageId} for user {userId}.
POST /api/events/trackPushOpen Track a mobile push open · Track a mobile push open #
Ask an LLM
“Can I record that a user opened a mobile push notification?”
“What campaign and message IDs do I need to log a push open?”
Tell an agent
Track a push open of message {messageId} from campaign {campaignId} by {email}.
Log mobile push open for campaign {campaignId}, message {messageId}.
POST /api/events/trackWebPushClick Track a web push click · Track a web push click #
Ask an LLM
“How do I record a click on a browser web push notification?”
“Can I tie a web push click to its campaign?”
Tell an agent
Track a web push click on message {messageId} by {email}.
Record web push click for message {messageId} in campaign {campaignId}.
GET /api/events/{email} Get a user's events by email · Get user events #
Ask an LLM
“Can I see recent events for a user under /api/events by their email?”
“What events has this email address generated?”
Tell an agent
Get /api/events history for {email}.
Show up to {limit} events for {email} from /api/events.
POST /events/track Track a custom event via the simple endpoint · Track a custom event #
Ask an LLM
“Is there a basic /events/track call that requires the user's email?”
“Can a custom event tracked by email trigger campaigns and segments?”
Tell an agent
Using /events/track, record {eventName} for {email}.
Via the simple events endpoint, log {eventName} for {email} with data {dataFields}.
POST /events/trackBulk Track events in bulk via the simple endpoint · Track multiple events in bulk #
Ask an LLM
“Can I post many custom events to the plain /events/trackBulk path?”
“What does each event in a basic bulk tracking request need?”
Tell an agent
Post events {events} to /events/trackBulk.
Use the simple bulk endpoint to log events {events}.
GET /events/{email} Get events by email via the simple endpoint · Get events for a user by email #
Ask an LLM
“Can I fetch a user's tracked events with the plain /events path by email?”
“Which basic endpoint lists events for an email address?”
Tell an agent
Get events for {email} from the plain /events endpoint.
Fetch {limit} tracked events for {email} via the simple endpoint.

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/iterable:iterable-events-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

iterable-events-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Iterable Events API
  version: '1.0'
  description: 'Operations tagged events across 2 of this provider''s published API definitions: iterable-api-openapi.json, iterable-rest-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.iterable.com/
- url: https://api.iterable.com/api
  description: US Data Center (USDC)
- url: https://api.eu.iterable.com/api
  description: European Data Center (EDC)
tags:


# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/iterable/refs/heads/main/openapi/iterable-events-api-openapi.yml