For Agents
Ingest behavioural data into Customer.io: identify people, track events, manage devices, submit forms, suppress profiles, and send batched or v2 entity requests.
Get started with Customer.io Track API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"track a customer event in customer.io"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Customer.io Track API API.
Add or update people in Customer.io with traits and timestamps via PUT /api/v1/customers/{identifier}
Track named customer events or anonymous events to drive campaign triggers
Register and remove customer devices to enable push delivery
Suppress, unsuppress, or delete people for compliance and lifecycle hygiene
GET STARTED
Use for: Identify a new signup with their email, name, and plan tier, Track an 'order_completed' event for an identified customer, Register a push device token for a mobile customer, Suppress a customer who has unsubscribed from all messaging
Not supported: Does not handle campaign creation, sending transactional email, or pulling reporting metrics — use for ingesting people, events, devices, and batched data only.
Jentic publishes the only available OpenAPI document for Customer.io Track API, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for Customer.io Track API, keeping it validated and agent-ready. The Track API is the data ingestion surface for Customer.io, used to add and update people, record events, manage devices, suppress profiles, submit forms, merge duplicates, and send batched requests. It also includes account region discovery and a v2 entity endpoint for unified ingestion. Authentication uses HTTP Basic with a site ID and tracking API key.
Submit forms, add or remove people from manual segments, and merge duplicate profiles
Send a batched payload of mixed identify, track, and device operations through /api/v2/batch
Patterns agents use Customer.io Track API API for, with concrete tasks.
★ Server-Side Event Ingestion
Send identification and event data from a server-side application into Customer.io to drive campaigns. Use PUT /api/v1/customers/{identifier} for upsert, POST /api/v1/customers/{identifier}/events for attributed events, and POST /api/v1/events for anonymous traffic. Suitable for backend services that own the source of truth for user behaviour.
Call PUT /api/v1/customers/{identifier} with traits, then POST /api/v1/customers/{identifier}/events with name='checkout_completed' and properties for the order
Mobile Device Registration for Push
Register and rotate device tokens so Customer.io campaigns can deliver push notifications to mobile customers. Use PUT /api/v1/customers/{identifier}/devices to add or update a token and DELETE /api/v1/customers/{identifier}/devices/{device_id} to revoke it on logout or app uninstall.
Call PUT /api/v1/customers/{identifier}/devices with the FCM or APNs token after a user signs in on a new device
Batched Backfill or Sync
Backfill historical events or sync records from another system using POST /api/v1/segments/{segment_id}/add_customers for segment population, /api/v1/merge_customers for de-duplication, and POST /api/v2/batch for a high-throughput batched payload of mixed operations. Reduces request volume during one-off migrations and nightly syncs.
Construct a /api/v2/batch payload with 200 mixed identify and track requests and POST it in a single call during a nightly sync window
Compliance and Suppression Workflow
Honour unsubscribe, deletion, and data subject requests by suppressing or deleting profiles via the Track API. POST /api/v1/customers/{identifier}/suppress halts messaging, POST /api/v1/customers/{identifier}/unsuppress reverses it, and DELETE /api/v1/customers/{identifier} removes the profile.
Call POST /api/v1/customers/{identifier}/suppress when a customer submits an unsubscribe and DELETE /api/v1/customers/{identifier} on a verified deletion request
AI Agent Track Workflow via Jentic
An AI agent automating ingestion of customer signals uses Jentic to send identify and event payloads directly. The agent searches for 'track customer event', loads the operation, supplies the identifier and event name, and posts the event without bespoke integration glue.
Use Jentic to search 'track customer event' and execute /api/v1/customers/{identifier}/events for each row of an enrichment job's output
16 endpoints — jentic publishes the only available openapi specification for customer.
METHOD
PATH
DESCRIPTION
/api/v1/customers/{identifier}
Add or update a customer
/api/v1/customers/{identifier}/events
Track a customer event
/api/v1/events
Track an anonymous event
/api/v1/customers/{identifier}/devices
Register a customer device
/api/v1/customers/{identifier}/suppress
Suppress a customer profile
/api/v1/merge_customers
Merge duplicate customer profiles
/api/v2/batch
Send a batched payload
/api/v1/accounts/region
Find the workspace region
/api/v1/customers/{identifier}
Add or update a customer
/api/v1/customers/{identifier}/events
Track a customer event
/api/v1/events
Track an anonymous event
/api/v1/customers/{identifier}/devices
Register a customer device
/api/v1/customers/{identifier}/suppress
Suppress a customer profile
Three things that make agents converge on Jentic-routed access.
Credential isolation
Customer.io site ID and tracking API key pairs are stored encrypted in the Jentic vault and combined into the Basic auth header at call time. The agent never sees the raw key.
Intent-based discovery
Agents search by intent (e.g. 'identify customer' or 'track event') and Jentic returns the matching Track API operation with its parameter schema.
Time to first call
Direct Track API integration: about 1 day for auth, event schema design, and batch handling. Through Jentic: under 1 hour — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Customer.io API
Customer.io's broader App API surface covering campaigns, exports, and transactional sends
Use the Customer.io API alongside Track when you need campaign listing, exports, or transactional email sends.
Segment API
CDP that fans out identify and track calls to many destinations
Choose Segment if you want a single ingestion API that forwards events to many tools rather than going direct to Customer.io.
Amplitude API
Product analytics platform with similar identify and event ingestion
Choose Amplitude when the primary use is product analytics rather than campaign triggering.
Mixpanel API
Event analytics platform with track and identify endpoints
Choose Mixpanel for funnel and retention analytics on the same event stream.
Specific to using Customer.io Track API API through Jentic.
Why is there no official OpenAPI spec for Customer.io Track API?
Customer.io does not publish a complete OpenAPI specification for the Track surface. Jentic generates and maintains this spec so that AI agents and developers can call Customer.io Track API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Customer.io Track API use?
The Track API uses HTTP Basic with a workspace site ID as the username and a tracking API key as the password. Through Jentic both values are held in the encrypted vault and injected into the Authorization header at call time.
Can I send batched events to the Customer.io Track API?
Yes. POST /api/v2/batch accepts an array of mixed identify, track, and device operations in a single request, useful for backfills and nightly syncs.
What are the rate limits for the Customer.io Track API?
Track endpoints accept high event throughput; specific limits depend on the Customer.io plan and are not encoded in the spec. Use /api/v2/batch for bulk loads to stay within per-request limits.
How do I find which region my Customer.io workspace is in through Jentic?
Run pip install jentic, search for 'find account region', load GET /api/v1/accounts/region, and execute it. Jentic returns the region (US or EU) so you can route subsequent calls to the right host.
How do I suppress a customer for GDPR compliance?
Call POST /api/v1/customers/{identifier}/suppress to stop messaging while keeping the profile. For full deletion call DELETE /api/v1/customers/{identifier}, which removes the profile and stops all subsequent processing.
/api/v1/merge_customers
Merge duplicate customer profiles
/api/v2/batch
Send a batched payload
/api/v1/accounts/region
Find the workspace region