Customer.io · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Customer.io App Broadcasts API

16 actions 16 updates phrasing extends openapi/customer-io-broadcasts-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.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 16

$.info
$.paths['/v1/campaigns/{broadcast_id}/triggers/{trigger_id}/errors'].get
$.paths['/v1/broadcasts'].get
$.paths['/v1/broadcasts/{broadcast_id}'].get
$.paths['/v1/campaigns/{broadcast_id}/triggers/{trigger_id}'].get
$.paths['/v1/broadcasts/{broadcast_id}/metrics'].get
$.paths['/v1/broadcasts/{broadcast_id}/metrics/links'].get
$.paths['/v1/broadcasts/{broadcast_id}/actions'].get
$.paths['/v1/broadcasts/{broadcast_id}/messages'].get
$.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}'].get
$.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}'].put
$.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/language/{language}'].get
$.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/language/{language}'].put
$.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/metrics'].get
$.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/metrics/links'].get
$.paths['/v1/broadcasts/{broadcast_id}/triggers'].get

OpenAPI Overlay

Raw ↑
# 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 Broadcasts API
  version: 1.0.0
extends: openapi/customer-io-broadcasts-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: 15
- target: $.paths['/v1/campaigns/{broadcast_id}/triggers/{trigger_id}/errors'].get
  update:
    x-apievangelist-phrasing:
      intent: Get validation errors for a broadcast trigger
      effect: read
      questions:
      - Why did my API-triggered broadcast fail validation?
      - Where can I see the errors a broadcast trigger produced?
      instructions:
      - text: Show the errors for trigger {trigger_id} of broadcast {broadcast_id}.
        slots:
          trigger_id: path.trigger_id
          broadcast_id: path.broadcast_id
      - text: List validation errors from broadcast {broadcast_id} trigger {trigger_id}.
        slots:
          broadcast_id: path.broadcast_id
          trigger_id: path.trigger_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts'].get
  update:
    x-apievangelist-phrasing:
      intent: List API-triggered broadcasts
      effect: read
      questions:
      - What API-triggered broadcasts do I have set up?
      - How do I find the ID of a broadcast I want to trigger?
      instructions:
      - text: List all my API-triggered broadcasts.
      - text: Show every broadcast in this workspace with its metadata.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a broadcast
      effect: read
      questions:
      - 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?
      instructions:
      - text: Get broadcast {broadcast_id}.
        slots:
          broadcast_id: path.broadcast_id
      - text: Show the metadata for broadcast {broadcast_id}.
        slots:
          broadcast_id: path.broadcast_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/campaigns/{broadcast_id}/triggers/{trigger_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Check the status of a broadcast trigger
      effect: read
      questions:
      - Did the broadcast I just triggered finish processing?
      - How do I check progress on a specific broadcast trigger?
      instructions:
      - text: Check the status of trigger {trigger_id} on broadcast {broadcast_id}.
        slots:
          trigger_id: path.trigger_id
          broadcast_id: path.broadcast_id
      - text: Tell me whether trigger {trigger_id} of broadcast {broadcast_id} has finished.
        slots:
          trigger_id: path.trigger_id
          broadcast_id: path.broadcast_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/metrics'].get
  update:
    x-apievangelist-phrasing:
      intent: Get broadcast delivery metrics over time
      effect: read
      questions:
      - How many emails did my broadcast deliver and open each day?
      - Can I see a broadcast's metrics broken into weekly steps?
      instructions:
      - text: Get metrics for broadcast {broadcast_id} by {period}.
        slots:
          broadcast_id: path.broadcast_id
          period: query.period
      - text: Show the last {steps} days of metrics for broadcast {broadcast_id}.
        slots:
          steps: query.steps
          broadcast_id: path.broadcast_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/metrics/links'].get
  update:
    x-apievangelist-phrasing:
      intent: Get link click metrics for a broadcast
      effect: read
      questions:
      - Which links in my broadcast got the most clicks?
      - Can I count only unique clicks on a broadcast's links?
      instructions:
      - text: Show link click metrics for broadcast {broadcast_id}.
        slots:
          broadcast_id: path.broadcast_id
      - text: Get unique link clicks for broadcast {broadcast_id} by {period}.
        slots:
          broadcast_id: path.broadcast_id
          period: query.period
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/actions'].get
  update:
    x-apievangelist-phrasing:
      intent: List the actions in a broadcast
      effect: read
      questions:
      - What messages and steps make up a broadcast?
      - How do I find the action IDs inside a broadcast?
      instructions:
      - text: List the actions in broadcast {broadcast_id}.
        slots:
          broadcast_id: path.broadcast_id
      - text: Show every message step of broadcast {broadcast_id}.
        slots:
          broadcast_id: path.broadcast_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/messages'].get
  update:
    x-apievangelist-phrasing:
      intent: List deliveries sent by a broadcast
      effect: read
      questions:
      - Who received messages from my API-triggered broadcast?
      - Can I filter a broadcast's deliveries to only the ones that bounced?
      - Can I limit broadcast deliveries to a time range?
      instructions:
      - text: List deliveries from broadcast {broadcast_id}.
        slots:
          broadcast_id: path.broadcast_id
      - text: Show broadcast {broadcast_id} deliveries with metric {metric}.
        slots:
          broadcast_id: path.broadcast_id
          metric: query.metric
      - text: Get deliveries for broadcast {broadcast_id} sent after {start_ts}.
        slots:
          broadcast_id: path.broadcast_id
          start_ts: query.start_ts
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one action in a broadcast
      effect: read
      questions:
      - How do I see the content of one message in a broadcast?
      - Can I read the body of a specific broadcast action?
      instructions:
      - text: Get action {action_id} in broadcast {broadcast_id}.
        slots:
          action_id: path.action_id
          broadcast_id: path.broadcast_id
      - text: Show the message body for broadcast {broadcast_id} action {action_id}.
        slots:
          broadcast_id: path.broadcast_id
          action_id: path.action_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a message in a broadcast
      effect: write
      questions:
      - 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?
      instructions:
      - text: Update the content of action {action_id} in broadcast {broadcast_id}.
        slots:
          action_id: path.action_id
          broadcast_id: path.broadcast_id
      - text: Replace the message body of broadcast {broadcast_id} action {action_id}.
        slots:
          broadcast_id: path.broadcast_id
          action_id: path.action_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/language/{language}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a translated broadcast message
      effect: read
      questions:
      - How do I see the Spanish version of a broadcast message?
      - Can I fetch one language translation of a broadcast action?
      instructions:
      - text: Get the {language} translation of action {action_id} in broadcast {broadcast_id}.
        slots:
          language: path.language
          action_id: path.action_id
          broadcast_id: path.broadcast_id
      - text: Show broadcast {broadcast_id} action {action_id} in {language}.
        slots:
          broadcast_id: path.broadcast_id
          action_id: path.action_id
          language: path.language
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/language/{language}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a translated broadcast message
      effect: write
      questions:
      - How do I edit the French translation of a broadcast message?
      - Can I update one language of a broadcast action without touching the default?
      instructions:
      - text: Update the {language} translation of broadcast {broadcast_id} action {action_id}.
        slots:
          language: path.language
          broadcast_id: path.broadcast_id
          action_id: path.action_id
      - text: Replace the {language} body of action {action_id} in broadcast {broadcast_id}.
        slots:
          language: path.language
          action_id: path.action_id
          broadcast_id: path.broadcast_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/metrics'].get
  update:
    x-apievangelist-phrasing:
      intent: Get metrics for one broadcast action
      effect: read
      questions:
      - How is a single message in my broadcast performing?
      - Can I see daily sends and opens for one broadcast action?
      instructions:
      - text: Get metrics for action {action_id} in broadcast {broadcast_id}.
        slots:
          action_id: path.action_id
          broadcast_id: path.broadcast_id
      - text: Show broadcast {broadcast_id} action {action_id} metrics by {period}.
        slots:
          broadcast_id: path.broadcast_id
          action_id: path.action_id
          period: query.period
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/actions/{action_id}/metrics/links'].get
  update:
    x-apievangelist-phrasing:
      intent: Get link clicks for one broadcast action
      effect: read
      questions:
      - Which links in a single broadcast message were clicked?
      - How far back do link metrics for a broadcast action go?
      instructions:
      - text: Show link clicks for action {action_id} of broadcast {broadcast_id}.
        slots:
          action_id: path.action_id
          broadcast_id: path.broadcast_id
      - text: Get link metrics for broadcast {broadcast_id} action {action_id} over {steps} periods.
        slots:
          broadcast_id: path.broadcast_id
          action_id: path.action_id
          steps: query.steps
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/broadcasts/{broadcast_id}/triggers'].get
  update:
    x-apievangelist-phrasing:
      intent: List the triggers of a broadcast
      effect: read
      questions:
      - How many times has my broadcast been triggered via the API?
      - Where do I find the trigger IDs for a broadcast?
      instructions:
      - text: List the triggers for broadcast {broadcast_id}.
        slots:
          broadcast_id: path.broadcast_id
      - text: Show every time broadcast {broadcast_id} was triggered.
        slots:
          broadcast_id: path.broadcast_id
      method: generated
      generated: '2026-09-26'