# 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 Campaigns API version: 1.0.0 extends: openapi/customer-io-campaigns-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: 13 - target: $.paths['/v1/campaigns'].get update: x-apievangelist-phrasing: intent: List campaigns effect: read questions: - What campaigns do I have in my workspace? - How do I find a campaign's ID? instructions: - text: List all my campaigns. - text: Show every campaign with its metadata. method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}'].get update: x-apievangelist-phrasing: intent: Get a campaign effect: read questions: - How do I look up one campaign's settings and trigger? - Is a specific campaign currently active? instructions: - text: Get campaign {campaign_id}. slots: campaign_id: path.campaign_id - text: Show the metadata for campaign {campaign_id}. slots: campaign_id: path.campaign_id method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/metrics'].get update: x-apievangelist-phrasing: intent: Get campaign metrics effect: read questions: - How is my campaign performing on sends, opens and clicks? - Can I get campaign metrics for a date range in my timezone? instructions: - text: Get version {version} metrics for campaign {campaign_id}. slots: version: query.version campaign_id: path.campaign_id - text: Show campaign {campaign_id} metrics from {start} to {end} using API version {version}. slots: campaign_id: path.campaign_id start: query.start end: query.end version: query.version method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/metrics/links'].get update: x-apievangelist-phrasing: intent: Get link click metrics for a campaign effect: read questions: - Which links across my campaign get clicked most? - Can I see only unique link clicks for a campaign? instructions: - text: Show link click metrics for campaign {campaign_id}. slots: campaign_id: path.campaign_id - text: Get unique link clicks for campaign {campaign_id} by {period}. slots: campaign_id: path.campaign_id period: query.period method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/actions'].get update: x-apievangelist-phrasing: intent: List the actions in a campaign workflow effect: read questions: - What steps are in my campaign workflow? - How do I get the action IDs of the tiles in a campaign? instructions: - text: List the actions in campaign {campaign_id}. slots: campaign_id: path.campaign_id - text: Show the workflow tiles of campaign {campaign_id}. slots: campaign_id: path.campaign_id method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/messages'].get update: x-apievangelist-phrasing: intent: List deliveries sent by a campaign effect: read questions: - Who received messages from my campaign last week? - Can I include draft messages when listing a campaign's deliveries? instructions: - text: List deliveries from campaign {campaign_id}. slots: campaign_id: path.campaign_id - text: Show campaign {campaign_id} deliveries of type {type} between {start_ts} and {end_ts}. slots: campaign_id: path.campaign_id type: query.type start_ts: query.start_ts end_ts: query.end_ts method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/actions/{action_id}'].get update: x-apievangelist-phrasing: intent: Get one action in a campaign effect: read questions: - How do I read the content of one message in a campaign? - Can I see the settings of a specific campaign workflow tile? instructions: - text: Get action {action_id} in campaign {campaign_id}. slots: action_id: path.action_id campaign_id: path.campaign_id - text: Show the message body of campaign {campaign_id} action {action_id}. slots: campaign_id: path.campaign_id action_id: path.action_id method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/actions/{action_id}'].put update: x-apievangelist-phrasing: intent: Update a message in a campaign effect: write questions: - How do I change the email body of a campaign message through the API? - Can I update the HTTP request in a campaign webhook action? instructions: - text: Update the content of action {action_id} in campaign {campaign_id}. slots: action_id: path.action_id campaign_id: path.campaign_id - text: Replace the message body of campaign {campaign_id} action {action_id}. slots: campaign_id: path.campaign_id action_id: path.action_id method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/actions/{action_id}/language/{language}'].get update: x-apievangelist-phrasing: intent: Get a translated campaign message effect: read questions: - How do I see the German version of a campaign message? - Can I fetch one language translation of a campaign action? instructions: - text: Get the {language} translation of action {action_id} in campaign {campaign_id}. slots: language: path.language action_id: path.action_id campaign_id: path.campaign_id - text: Show campaign {campaign_id} action {action_id} in {language}. slots: campaign_id: path.campaign_id action_id: path.action_id language: path.language method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/actions/{action_id}/language/{language}'].put update: x-apievangelist-phrasing: intent: Update a translated campaign message effect: write questions: - How do I edit the Japanese translation of a campaign message? - Can I change one language variant of a campaign action without affecting the default? instructions: - text: Update the {language} translation of campaign {campaign_id} action {action_id}. slots: language: path.language campaign_id: path.campaign_id action_id: path.action_id - text: Replace the {language} body of action {action_id} in campaign {campaign_id}. slots: language: path.language action_id: path.action_id campaign_id: path.campaign_id method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/actions/{action_id}/metrics'].get update: x-apievangelist-phrasing: intent: Get metrics for one campaign action effect: read questions: - How is one message in my campaign performing? - Can I get sends and opens for a single campaign tile over a date range? instructions: - text: Get version {version} metrics for action {action_id} in campaign {campaign_id}. slots: version: query.version action_id: path.action_id campaign_id: path.campaign_id - text: Show campaign {campaign_id} action {action_id} metrics from {start} to {end}, version {version}. slots: campaign_id: path.campaign_id action_id: path.action_id start: query.start end: query.end version: query.version method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/actions/{action_id}/metrics/links'].get update: x-apievangelist-phrasing: intent: Get link clicks for one campaign action effect: read questions: - Which links in a single campaign email were clicked? - What's the default period for link metrics on a campaign action? instructions: - text: Show link clicks for action {action_id} of campaign {campaign_id}. slots: action_id: path.action_id campaign_id: path.campaign_id - text: Get link metrics for campaign {campaign_id} action {action_id} by {period}. slots: campaign_id: path.campaign_id action_id: path.action_id period: query.period method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaign_id}/journey_metrics'].get update: x-apievangelist-phrasing: intent: Get campaign journey metrics effect: read questions: - How many people triggered, entered and were messaged by my campaign? - Can I see campaign journey metrics at hourly or daily resolution? instructions: - text: Get journey metrics for campaign {campaign_id} from {start} to {end} at {resolution} resolution. slots: campaign_id: path.campaign_id start: query.start end: query.end resolution: query.resolution - text: Show how many people entered campaign {campaign_id} between {start} and {end}, grouped by {resolution}. slots: campaign_id: path.campaign_id start: query.start end: query.end resolution: query.resolution method: generated generated: '2026-09-26'