Customer.io Transactional API

Send transactional messages such as password resets, purchase receipts, and other important notifications triggered by user actions.

Operations 9

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

GET /v1/transactional List transactional messages · List transactional messages #
Ask an LLM
“What transactional message templates do I have?”
“How do I find a transactional message ID?”
Tell an agent
List my transactional messages.
Show every transactional template ID.
GET /v1/transactional/{transactional_id} Get a transactional message · Get a transactional message #
Ask an LLM
“How do I look up the settings of one transactional message?”
“Is a given transactional message set to send to unsubscribed people?”
Tell an agent
Get transactional message {transactional_id}.
Show details of transactional template {transactional_id}.
GET /v1/transactional/{transactional_id}/contents List a transactional message's languages · List all variants of a transactional message #
Ask an LLM
“Which languages is my transactional message translated into?”
“How do I get the content IDs of a transactional message?”
Tell an agent
List the variants of transactional message {transactional_id}.
Show all language versions of transactional message {transactional_id}.
PUT /v1/transactional/{transactional_id}/content/{content_id} Overwrite a transactional message's content · Update a transactional message #
Ask an LLM
“How do I update the body of a transactional email template?”
“Does updating a transactional message fully overwrite it?”
Tell an agent
Update content {content_id} of transactional message {transactional_id} with body {body}.
Set the subject of transactional {transactional_id} content {content_id} to {subject}.
GET /v1/transactional/{transactional_id}/language/{language} Get a translation of a transactional message · Get a translation of a transactional message #
Ask an LLM
“How do I see the Spanish version of a transactional email?”
“Can I fetch one language of a transactional message by code?”
Tell an agent
Get the {language} translation of transactional message {transactional_id}.
Show transactional message {transactional_id} in {language}.
PUT /v1/transactional/{transactional_id}/language/{language} Update a translation of a transactional message · Update a translation of a transactional message #
Ask an LLM
“How do I edit the French translation of a transactional email?”
“Does updating one transactional translation overwrite it entirely?”
Tell an agent
Update the {language} translation of transactional message {transactional_id} with body {body}.
Change the subject line of the {language} translation of transactional template {transactional_id} to {subject}.
GET /v1/transactional/{transactional_id}/metrics Get transactional message metrics · Get transactional message metrics #
Ask an LLM
“How many password reset emails went out and were opened each day?”
“Can I see transactional metrics in weekly steps?”
Tell an agent
Get metrics for transactional message {transactional_id}.
Show transactional {transactional_id} metrics by {period} for {steps} periods.
GET /v1/transactional/{transactional_id}/messages List deliveries of a transactional message · Get transactional message deliveries #
Ask an LLM
“Who received a particular transactional email?”
“Can I list transactional deliveries that failed?”
Tell an agent
List deliveries of transactional message {transactional_id}.
Show transactional {transactional_id} deliveries in state {state}.

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/customer-io:customer-io-transactional-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

customer-io-transactional-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  title: Customer.io App Transactional API
  description: Our App API provides ways to trigger messages and retrieve information about people, campaigns, broadcasts, and more.
servers:
- url: https://api.customer.io
  description: The base URL for broadcasts, transactional messages, and data-retrieval APIs. These endpoints use bearer authorization, and require a [token that you generate in the UI](https://fly.customer.io/settings/api_credentials?keyType=app).
- url: https://api-eu.customer.io
  description: The base URL for broadcasts, transactional messages, and data-retrieval APIs (EU region). These endpoints use bearer authorization, and require a [token that you generate in the UI](https://fly.customer.io/settings/api_credentials?keyType=app).
tags:


# --- truncated at 32 KB (114 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/customer-io/refs/heads/main/openapi/customer-io-transactional-api-openapi.yml