# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Loops OpenAPI Spec Campaigns API version: 1.0.0 extends: openapi/loops-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: 4 - target: $.paths['/v1/campaigns'].get update: x-apievangelist-phrasing: intent: List campaigns effect: read questions: - What email campaigns do I have in Loops? - Can I page through my campaigns? instructions: - text: List my campaigns. - text: Show the next page of campaigns from cursor {cursor}. slots: cursor: query.cursor method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns'].post update: x-apievangelist-phrasing: intent: Create a draft campaign effect: write questions: - How do I start a new draft email campaign? - Can I pick the mailing list and schedule when I first create a campaign? instructions: - text: Create a draft campaign named {name}. slots: name: requestBody.name - text: Create campaign {name} sending to mailing list {mailingListId} in group {campaignGroupId}. slots: name: requestBody.name mailingListId: requestBody.mailingListId campaignGroupId: requestBody.campaignGroupId - text: Start a new campaign {name} for segment {audienceSegmentId} scheduled {scheduling}. slots: name: requestBody.name audienceSegmentId: requestBody.audienceSegmentId scheduling: requestBody.scheduling method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaignId}'].get update: x-apievangelist-phrasing: intent: Get a campaign effect: read questions: - How do I check the status and settings of one campaign? - Which email message belongs to a given campaign? instructions: - text: Show campaign {campaignId}. slots: campaignId: path.campaignId - text: Get the audience and schedule for campaign {campaignId}. slots: campaignId: path.campaignId method: generated generated: '2026-09-26' - target: $.paths['/v1/campaigns/{campaignId}'].post update: x-apievangelist-phrasing: intent: Update a campaign's audience, group or schedule effect: write questions: - How do I reschedule a draft campaign that already exists? - What can I still change on a campaign after it has been sent? instructions: - text: Reschedule existing campaign {campaignId} to {scheduling}. slots: campaignId: path.campaignId scheduling: requestBody.scheduling - text: Move campaign {campaignId} into group {campaignGroupId}. slots: campaignId: path.campaignId campaignGroupId: requestBody.campaignGroupId - text: Point existing campaign {campaignId} at segment {audienceSegmentId}. slots: campaignId: path.campaignId audienceSegmentId: requestBody.audienceSegmentId method: generated generated: '2026-09-26'