Customer.io · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Customer.io App Transactional API
10 actions
10 updates
phrasing
extends
openapi/customer-io-transactional-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Customer.io's API. It is a proposal applied on top of the contract, not a document Customer.io publishes.
What the actions change
x-apievangelist-phrasing
Targets 10
$.info
$.paths['/v1/transactional'].get
$.paths['/v1/transactional/{transactional_id}'].get
$.paths['/v1/transactional/{transactional_id}/contents'].get
$.paths['/v1/transactional/{transactional_id}/content/{content_id}'].put
$.paths['/v1/transactional/{transactional_id}/language/{language}'].get
$.paths['/v1/transactional/{transactional_id}/language/{language}'].put
$.paths['/v1/transactional/{transactional_id}/metrics'].get
$.paths['/v1/transactional/{transactional_id}/metrics/links'].get
$.paths['/v1/transactional/{transactional_id}/messages'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Customer.io App Transactional API
version: 1.0.0
extends: openapi/customer-io-transactional-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 9
- target: $.paths['/v1/transactional'].get
update:
x-apievangelist-phrasing:
intent: List transactional messages
effect: read
questions:
- What transactional message templates do I have?
- How do I find a transactional message ID?
instructions:
- text: List my transactional messages.
- text: Show every transactional template ID.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a transactional message
effect: read
questions:
- How do I look up the settings of one transactional message?
- Is a given transactional message set to send to unsubscribed people?
instructions:
- text: Get transactional message {transactional_id}.
slots:
transactional_id: path.transactional_id
- text: Show details of transactional template {transactional_id}.
slots:
transactional_id: path.transactional_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}/contents'].get
update:
x-apievangelist-phrasing:
intent: List a transactional message's languages
effect: read
questions:
- Which languages is my transactional message translated into?
- How do I get the content IDs of a transactional message?
instructions:
- text: List the variants of transactional message {transactional_id}.
slots:
transactional_id: path.transactional_id
- text: Show all language versions of transactional message {transactional_id}.
slots:
transactional_id: path.transactional_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}/content/{content_id}'].put
update:
x-apievangelist-phrasing:
intent: Overwrite a transactional message's content
effect: write
questions:
- How do I update the body of a transactional email template?
- Does updating a transactional message fully overwrite it?
instructions:
- text: Update content {content_id} of transactional message {transactional_id} with body {body}.
slots:
content_id: path.content_id
transactional_id: path.transactional_id
body: requestBody.body
- text: Set the subject of transactional {transactional_id} content {content_id} to {subject}.
slots:
transactional_id: path.transactional_id
content_id: path.content_id
subject: requestBody.subject
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}/language/{language}'].get
update:
x-apievangelist-phrasing:
intent: Get a translation of a transactional message
effect: read
questions:
- How do I see the Spanish version of a transactional email?
- Can I fetch one language of a transactional message by code?
instructions:
- text: Get the {language} translation of transactional message {transactional_id}.
slots:
language: path.language
transactional_id: path.transactional_id
- text: Show transactional message {transactional_id} in {language}.
slots:
transactional_id: path.transactional_id
language: path.language
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}/language/{language}'].put
update:
x-apievangelist-phrasing:
intent: Update a translation of a transactional message
effect: write
questions:
- How do I edit the French translation of a transactional email?
- Does updating one transactional translation overwrite it entirely?
instructions:
- text: Update the {language} translation of transactional message {transactional_id} with body {body}.
slots:
language: path.language
transactional_id: path.transactional_id
body: requestBody.body
- text: Change the subject line of the {language} translation of transactional template {transactional_id} to {subject}.
slots:
language: path.language
transactional_id: path.transactional_id
subject: requestBody.subject
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}/metrics'].get
update:
x-apievangelist-phrasing:
intent: Get transactional message metrics
effect: read
questions:
- How many password reset emails went out and were opened each day?
- Can I see transactional metrics in weekly steps?
instructions:
- text: Get metrics for transactional message {transactional_id}.
slots:
transactional_id: path.transactional_id
- text: Show transactional {transactional_id} metrics by {period} for {steps} periods.
slots:
transactional_id: path.transactional_id
period: query.period
steps: query.steps
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}/metrics/links'].get
update:
x-apievangelist-phrasing:
intent: Get link clicks for a transactional message
effect: read
questions:
- Which links in my transactional email were clicked?
- Can I count unique clicks on transactional message links?
instructions:
- text: Show link clicks for transactional message {transactional_id}.
slots:
transactional_id: path.transactional_id
- text: Get unique link clicks for transactional {transactional_id} by {period}.
slots:
transactional_id: path.transactional_id
period: query.period
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/transactional/{transactional_id}/messages'].get
update:
x-apievangelist-phrasing:
intent: List deliveries of a transactional message
effect: read
questions:
- Who received a particular transactional email?
- Can I list transactional deliveries that failed?
instructions:
- text: List deliveries of transactional message {transactional_id}.
slots:
transactional_id: path.transactional_id
- text: Show transactional {transactional_id} deliveries in state {state}.
slots:
transactional_id: path.transactional_id
state: query.state
method: generated
generated: '2026-09-26'
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/customer-io-transactional-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.