Customer.io Broadcasts API

Trigger API-triggered broadcasts to send messages to groups of people based on segments or filters.

Business capability
Digital Marketing Management BC-400.60

Operations 15

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/campaigns/{broadcast_id}/triggers/{trigger_id}/errors Get validation errors for a broadcast trigger · Get broadcast error descriptions #
Ask an LLM
“Why did my API-triggered broadcast fail validation?”
“Where can I see the errors a broadcast trigger produced?”
Tell an agent
Show the errors for trigger {trigger_id} of broadcast {broadcast_id}.
List validation errors from broadcast {broadcast_id} trigger {trigger_id}.
GET /v1/broadcasts List API-triggered broadcasts · List broadcasts #
Ask an LLM
“What API-triggered broadcasts do I have set up?”
“How do I find the ID of a broadcast I want to trigger?”
Tell an agent
List all my API-triggered broadcasts.
Show every broadcast in this workspace with its metadata.
GET /v1/broadcasts/{broadcast_id} Get a broadcast · Get a broadcast #
Ask an LLM
“How do I look up the settings of one API-triggered broadcast?”
“Can I check when a specific broadcast was created and who it targets?”
Tell an agent
Get broadcast {broadcast_id}.
Show the metadata for broadcast {broadcast_id}.
GET /v1/campaigns/{broadcast_id}/triggers/{trigger_id} Check the status of a broadcast trigger · Get the status of a broadcast #
Ask an LLM
“Did the broadcast I just triggered finish processing?”
“How do I check progress on a specific broadcast trigger?”
Tell an agent
Check the status of trigger {trigger_id} on broadcast {broadcast_id}.
Tell me whether trigger {trigger_id} of broadcast {broadcast_id} has finished.
GET /v1/broadcasts/{broadcast_id}/metrics Get broadcast delivery metrics over time · Get broadcast metrics #
Ask an LLM
“How many emails did my broadcast deliver and open each day?”
“Can I see a broadcast's metrics broken into weekly steps?”
Tell an agent
Get metrics for broadcast {broadcast_id} by {period}.
Show the last {steps} days of metrics for broadcast {broadcast_id}.
GET /v1/broadcasts/{broadcast_id}/actions List the actions in a broadcast · List broadcast actions #
Ask an LLM
“What messages and steps make up a broadcast?”
“How do I find the action IDs inside a broadcast?”
Tell an agent
List the actions in broadcast {broadcast_id}.
Show every message step of broadcast {broadcast_id}.
GET /v1/broadcasts/{broadcast_id}/messages List deliveries sent by a broadcast · Get messages for a broadcast #
Ask an LLM
“Who received messages from my API-triggered broadcast?”
“Can I filter a broadcast's deliveries to only the ones that bounced?”
Tell an agent
List deliveries from broadcast {broadcast_id}.
Show broadcast {broadcast_id} deliveries with metric {metric}.
GET /v1/broadcasts/{broadcast_id}/actions/{action_id} Get one action in a broadcast · Get a broadcast action #
Ask an LLM
“How do I see the content of one message in a broadcast?”
“Can I read the body of a specific broadcast action?”
Tell an agent
Get action {action_id} in broadcast {broadcast_id}.
Show the message body for broadcast {broadcast_id} action {action_id}.
PUT /v1/broadcasts/{broadcast_id}/actions/{action_id} Update a message in a broadcast · Update a broadcast action #
Ask an LLM
“How do I change the email body of a broadcast message through the API?”
“Can I edit a broadcast action that was built in Design Studio?”
Tell an agent
Update the content of action {action_id} in broadcast {broadcast_id}.
Replace the message body of broadcast {broadcast_id} action {action_id}.
GET /v1/broadcasts/{broadcast_id}/actions/{action_id}/language/{language} Get a translated broadcast message · Get a translation of a broadcast message #
Ask an LLM
“How do I see the Spanish version of a broadcast message?”
“Can I fetch one language translation of a broadcast action?”
Tell an agent
Get the {language} translation of action {action_id} in broadcast {broadcast_id}.
Show broadcast {broadcast_id} action {action_id} in {language}.
PUT /v1/broadcasts/{broadcast_id}/actions/{action_id}/language/{language} Update a translated broadcast message · Update a translation of a broadcast message #
Ask an LLM
“How do I edit the French translation of a broadcast message?”
“Can I update one language of a broadcast action without touching the default?”
Tell an agent
Update the {language} translation of broadcast {broadcast_id} action {action_id}.
Replace the {language} body of action {action_id} in broadcast {broadcast_id}.
GET /v1/broadcasts/{broadcast_id}/actions/{action_id}/metrics Get metrics for one broadcast action · Get broadcast action metrics #
Ask an LLM
“How is a single message in my broadcast performing?”
“Can I see daily sends and opens for one broadcast action?”
Tell an agent
Get metrics for action {action_id} in broadcast {broadcast_id}.
Show broadcast {broadcast_id} action {action_id} metrics by {period}.
GET /v1/broadcasts/{broadcast_id}/triggers List the triggers of a broadcast · Get broadcast triggers #
Ask an LLM
“How many times has my broadcast been triggered via the API?”
“Where do I find the trigger IDs for a broadcast?”
Tell an agent
List the triggers for broadcast {broadcast_id}.
Show every time broadcast {broadcast_id} was triggered.

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-broadcasts-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-broadcasts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  title: Customer.io App Broadcasts 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 (274 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/customer-io/refs/heads/main/openapi/customer-io-broadcasts-api-openapi.yml