For Agents
Identify and track customers, send transactional email, manage devices, list campaigns and segments, and export delivery and customer data through Customer.io.
Get started with Customer.io 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:
"send a transactional email to a customer"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Customer.io API API.
Identify and update customer profiles by customer_id with traits and timestamps
Track named events for an identified customer or anonymously to drive campaign triggers
Send transactional email through the /send/email endpoint with template and recipient data
List campaigns and retrieve campaign metrics, actions, and newsletter performance
GET STARTED
Use for: Identify a customer with their email and traits after signup, Track a 'subscription_renewed' event on a customer, Send a transactional password reset email through Customer.io, List all active campaigns and their performance metrics
Not supported: Does not handle SMS sending, push notification delivery payloads, or in-app messages — use for customer identification, event tracking, transactional email, and campaign metrics only.
Jentic publishes the only available OpenAPI document for Customer.io API, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for Customer.io API, keeping it validated and agent-ready. Customer.io is a marketing automation platform that combines behavioural messaging, segmentation, and transactional email into a single workflow tool. This API surface covers customer identification and lifecycle, event tracking, device management, segment and campaign listing, newsletter metrics, customer and delivery exports, and transactional email sending. Authentication uses HTTP Basic with a site ID and API key pair.
Suppress, unsuppress, or delete customer profiles for compliance and lifecycle hygiene
Export customer and delivery datasets for downstream analytics and audit
Patterns agents use Customer.io API API for, with concrete tasks.
★ Behavioural Email Automation
Drive lifecycle email campaigns from product behaviour by identifying customers and tracking events that match Customer.io campaign triggers. Use PUT /customers/{customer_id} to maintain the profile and POST /customers/{customer_id}/events to record actions like 'cart_abandoned' or 'trial_expired'. Integration takes a day or two compared with hand-rolling a behavioural messaging stack.
Call PUT /customers/{customer_id} with the user's email and signup_date, then POST /customers/{customer_id}/events with name='trial_started' to enrol them in the trial nurture campaign
Transactional Email Sending
Send transactional emails such as receipts, password resets, and confirmations through Customer.io's transactional API. POST /send/email accepts a transactional message ID, recipient, and template variables, so product teams can use the same provider for both lifecycle and transactional traffic.
Call POST /send/email with transactional_message_id for the password reset template, the user email, and a reset link variable
Campaign Performance Reporting
Pull campaign and newsletter metrics into a reporting dashboard or warehouse. GET /campaigns lists active campaigns, GET /campaigns/{campaign_id}/metrics returns send, open, click, and conversion counts, and GET /newsletters/{newsletter_id}/metrics covers one-off sends. Suitable for marketing analysts who want Customer.io performance alongside other channel metrics.
Call GET /campaigns to list campaign IDs, then GET /campaigns/{campaign_id}/metrics for each to populate a weekly performance dashboard
Customer Data Export
Export customer and delivery datasets for warehouse load, audit, or migration. POST /exports/customers and POST /exports/deliveries kick off async export jobs that return downloadable archives. Used by data teams running daily syncs or by ops teams preparing GDPR data subject access responses.
Call POST /exports/customers with the desired filter to start an export job, then poll GET /activities to confirm completion before downloading
AI Agent Messaging via Jentic
An AI agent automating customer communications uses Jentic to call Customer.io directly without bespoke integration code. The agent searches for 'send transactional email' or 'track customer event', loads the schema, supplies the parameters, and triggers the action.
Use Jentic to search 'send transactional email' and execute /send/email with the password reset template after a user requests a reset
21 endpoints — jentic publishes the only available openapi specification for customer.
METHOD
PATH
DESCRIPTION
/customers/{customer_id}
Identify or update a customer
/customers/{customer_id}/events
Track a customer event
/send/email
Send a transactional email
/campaigns
List campaigns
/campaigns/{campaign_id}/metrics
Get campaign metrics
/exports/customers
Start a customer export job
/customers/{customer_id}/suppress
Suppress a customer
/segments
List segments
/customers/{customer_id}
Identify or update a customer
/customers/{customer_id}/events
Track a customer event
/send/email
Send a transactional email
/campaigns
List campaigns
/campaigns/{campaign_id}/metrics
Get campaign metrics
Three things that make agents converge on Jentic-routed access.
Credential isolation
Customer.io site ID and 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. 'send transactional email' or 'track customer event') and Jentic returns the matching Customer.io operation with its parameter schema.
Time to first call
Direct Customer.io integration: 1-2 days for auth, event schema design, and export polling. Through Jentic: under 1 hour — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Customer.io Track API
Customer.io's narrower track-only API surface for identification and events
Use the Track API when you only need event ingestion and customer identification without the campaign and export endpoints.
Klaviyo API
Marketing automation platform with behavioural email and SMS
Choose Klaviyo if you are e-commerce focused and want native Shopify integration alongside email and SMS.
Braze API
Enterprise customer engagement platform with cross-channel orchestration
Choose Braze for large-scale, multi-channel orchestration including push, in-app, and content cards.
SendGrid Mail
Pure transactional email delivery if you want to split lifecycle and transactional
Pair SendGrid with Customer.io when you want SendGrid handling transactional volume and Customer.io owning lifecycle messaging.
Specific to using Customer.io API API through Jentic.
Why is there no official OpenAPI spec for Customer.io API?
Customer.io does not publish a single canonical OpenAPI specification covering this surface. Jentic generates and maintains this spec so that AI agents and developers can call Customer.io 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 API use?
The API uses HTTP Basic authentication with a workspace site ID as the username and an 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 transactional email with the Customer.io API?
Yes. Call POST /send/email with a transactional_message_id, the recipient email, and any template variables. The endpoint is suitable for receipts, password resets, and one-off notifications.
What are the rate limits for the Customer.io API?
Rate limits depend on the Customer.io plan and the specific endpoint family; tracking endpoints generally accept higher throughput than App API endpoints. The spec does not encode exact numbers; check your workspace settings for current limits.
How do I track a customer event through Jentic?
Run pip install jentic, search for 'track customer event', load POST /customers/{customer_id}/events, and execute it with the event name and any properties. Jentic posts the event so it can drive campaign triggers.
How do I export delivery data from Customer.io?
Call POST /exports/deliveries to start an async export job. The response includes a job ID; poll GET /activities or use the deliveries export status to confirm completion before downloading the resulting archive.
/exports/customers
Start a customer export job
/customers/{customer_id}/suppress
Suppress a customer
/segments
List segments