Brevo · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Marketing Campaigns Email Campaigns API
14 actions
14 updates
phrasing
extends
openapi/brevo-email-campaigns-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Brevo's API. It is a proposal applied on top of the contract, not a document Brevo publishes.
What the actions change
x-apievangelist-phrasing
Targets 14
$.info
$.paths['/emailCampaigns'].get
$.paths['/emailCampaigns'].post
$.paths['/emailCampaigns/{campaignId}'].get
$.paths['/emailCampaigns/{campaignId}'].put
$.paths['/emailCampaigns/{campaignId}'].delete
$.paths['/emailCampaigns/{campaignId}/sendNow'].post
$.paths['/emailCampaigns/{campaignId}/sendTest'].post
$.paths['/emailCampaigns/{campaignId}/status'].put
$.paths['/emailCampaigns/{campaignId}/sharedUrl'].get
$.paths['/emailCampaigns/{campaignId}/exportRecipients'].post
$.paths['/emailCampaigns/{campaignId}/sendReport'].post
$.paths['/emailCampaigns/{campaignId}/abTestCampaignResult'].get
$.paths['/emailCampaigns/images'].post
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 Marketing Campaigns Email Campaigns API
version: 1.0.0
extends: openapi/brevo-email-campaigns-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 13
- target: $.paths['/emailCampaigns'].get
update:
x-apievangelist-phrasing:
intent: List email campaigns
effect: read
questions:
- Which email campaigns have I sent or scheduled in Brevo?
- Can I list only draft campaigns created within a date range?
instructions:
- text: List my email campaigns with status {status}.
slots:
status: query.status
- text: List {type} email campaigns created between {startDate} and {endDate} with {statistics} stats.
slots:
type: query.type
startDate: query.startDate
endDate: query.endDate
statistics: query.statistics
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns'].post
update:
x-apievangelist-phrasing:
intent: Create an email campaign
effect: write
questions:
- How do I set up a new newsletter campaign as a draft?
- Can I create an A/B test campaign with two subject lines?
- What's needed at minimum to create an email campaign?
instructions:
- text: Create an email campaign named {name} from {sender} with subject {subject}.
slots:
name: requestBody.name
sender: requestBody.sender
subject: requestBody.subject
- text: Create campaign {name} from {sender} using template {templateId} for recipients {recipients}.
slots:
name: requestBody.name
sender: requestBody.sender
templateId: requestBody.templateId
recipients: requestBody.recipients
- text: Create an A/B campaign {name} from {sender} testing subjects {subjectA} and {subjectB}.
slots:
name: requestBody.name
sender: requestBody.sender
subjectA: requestBody.subjectA
subjectB: requestBody.subjectB
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}'].get
update:
x-apievangelist-phrasing:
intent: Get an email campaign's report
effect: read
questions:
- How did a specific email campaign perform in opens and clicks?
- Can I fetch one campaign's details without its HTML content?
instructions:
- text: Get the report for email campaign {campaignId}.
slots:
campaignId: path.campaignId
- text: Show {statistics} statistics for campaign {campaignId}.
slots:
statistics: query.statistics
campaignId: path.campaignId
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}'].put
update:
x-apievangelist-phrasing:
intent: Update an email campaign
effect: write
questions:
- Can I change the subject or send time of a campaign I already created?
- How do I swap the recipient lists on an existing email campaign?
instructions:
- text: Change the subject of email campaign {campaignId} to {subject}.
slots:
campaignId: path.campaignId
subject: requestBody.subject
- text: Reschedule email campaign {campaignId} for {scheduledAt}.
slots:
campaignId: path.campaignId
scheduledAt: requestBody.scheduledAt
- text: Set the recipients of existing campaign {campaignId} to {recipients}.
slots:
campaignId: path.campaignId
recipients: requestBody.recipients
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an email campaign
effect: destructive
questions:
- Why can't I delete an email campaign that's already scheduled?
- How do I get rid of a draft email campaign?
instructions:
- text: Delete email campaign {campaignId}.
slots:
campaignId: path.campaignId
- text: Remove the unscheduled draft campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}/sendNow'].post
update:
x-apievangelist-phrasing:
intent: Send an email campaign immediately
effect: write
questions:
- Can I send an email campaign right now instead of scheduling it?
- What does a campaign need before it can be sent immediately?
instructions:
- text: Send email campaign {campaignId} now.
slots:
campaignId: path.campaignId
- text: Launch campaign {campaignId} to its recipients immediately.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}/sendTest'].post
update:
x-apievangelist-phrasing:
intent: Send a test of an email campaign
effect: write
questions:
- How do I preview a campaign in my own inbox before it goes out?
- Can I send a campaign test to my whole test list?
instructions:
- text: Send a test of email campaign {campaignId} to {emailTo}.
slots:
campaignId: path.campaignId
emailTo: requestBody.emailTo
- text: Send campaign {campaignId} to my test list.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}/status'].put
update:
x-apievangelist-phrasing:
intent: Suspend, archive or replicate an email campaign
effect: write
questions:
- Can I pause an email campaign that's scheduled?
- How do I archive or duplicate an old email campaign?
instructions:
- text: Set the status of email campaign {campaignId} to {status}.
slots:
campaignId: path.campaignId
status: requestBody.status
- text: Suspend email campaign {campaignId} by setting status {status}.
slots:
campaignId: path.campaignId
status: requestBody.status
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}/sharedUrl'].get
update:
x-apievangelist-phrasing:
intent: Get a shareable URL for a campaign's template
effect: read
questions:
- How can I share a campaign's email design with another Brevo account?
- Is there a link I can send someone to import my email template?
instructions:
- text: Get the shared template URL for campaign {campaignId}.
slots:
campaignId: path.campaignId
- text: Create a link to import the design of campaign {campaignId} into another account.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}/exportRecipients'].post
update:
x-apievangelist-phrasing:
intent: Export an email campaign's recipients
effect: write
questions:
- Can I export everyone who clicked in a sent email campaign?
- How do I get a file of the hard bounces from a campaign?
instructions:
- text: Export the {recipientsType} of email campaign {campaignId}.
slots:
recipientsType: requestBody.recipientsType
campaignId: path.campaignId
- text: Export {recipientsType} recipients of campaign {campaignId} and notify {notifyURL} when done.
slots:
recipientsType: requestBody.recipientsType
campaignId: path.campaignId
notifyURL: requestBody.notifyURL
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}/sendReport'].post
update:
x-apievangelist-phrasing:
intent: Email a PDF report of a campaign
effect: write
questions:
- Can I email a PDF performance report of a campaign to my boss?
- What language options are there for a campaign's emailed report?
instructions:
- text: Send the PDF report of email campaign {campaignId} to {email}.
slots:
campaignId: path.campaignId
email: requestBody.email
- text: Email the campaign {campaignId} report to {email} in {language}.
slots:
campaignId: path.campaignId
email: requestBody.email
language: requestBody.language
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/{campaignId}/abTestCampaignResult'].get
update:
x-apievangelist-phrasing:
intent: Get the winner of an A/B test campaign
effect: read
questions:
- Which version won my A/B tested email campaign?
- What are the results of the subject line test I ran?
instructions:
- text: Get the A/B test results for campaign {campaignId}.
slots:
campaignId: path.campaignId
- text: Tell me the winning version of A/B campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-10-01'
- target: $.paths['/emailCampaigns/images'].post
update:
x-apievangelist-phrasing:
intent: Upload an image to the image gallery
effect: write
questions:
- How do I add an image to my account's gallery for use in emails?
- What's the maximum image size I can upload to the gallery?
instructions:
- text: Upload the image at {imageUrl} to my gallery.
slots:
imageUrl: requestBody.imageUrl
- text: Add image {imageUrl} to the gallery named {name}.
slots:
imageUrl: requestBody.imageUrl
name: requestBody.name
method: generated
generated: '2026-10-01'