Optimizely · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Optimizely Smart Campaigns API
66 actions
66 updates
phrasing
extends
openapi/optimizely-smart-campaigns-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Optimizely's API. It is a proposal applied on top of the contract, not a document Optimizely publishes.
What the actions change
x-apievangelist-phrasing
Targets 66 · first 16 shown; the file carries all of them
$.info
$.paths['/{clientId}/smartcampaigns'].get
$.paths['/{clientId}/smartcampaigns'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}'].get
$.paths['/{clientId}/smartcampaigns/{campaignId}'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}'].delete
$.paths['/{clientId}/smartcampaigns/{campaignId}/start'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}/pause'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}/activate'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}/deactivate'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}/abtest'].get
$.paths['/{clientId}/smartcampaigns/{campaignId}/abtest'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}/abtest'].delete
$.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors/{nodeId}'].get
$.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors/{nodeId}'].post
$.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors/{nodeId}'].delete
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 Optimizely Smart Campaigns API
version: 1.0.0
extends: openapi/optimizely-smart-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: 65
- target: $.paths['/{clientId}/smartcampaigns'].get
update:
x-apievangelist-phrasing:
intent: List smart campaigns for a Campaign client
effect: read
questions:
- Which smart campaigns exist under my Optimizely Campaign client?
- Can I see every automated smart campaign set up for one client account?
instructions:
- text: List all smart campaigns for client {clientId}.
slots:
clientId: path.clientId
- text: Show me every smart campaign configured in Campaign client {clientId}.
slots:
clientId: path.clientId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns'].post
update:
x-apievangelist-phrasing:
intent: Create a new smart campaign or copy an existing one
effect: write
questions:
- How do I create a new smart campaign through the API?
- Can I duplicate an existing smart campaign instead of building it from scratch?
- Is it possible to attach recipient lists while creating a smart campaign?
instructions:
- text: Create a smart campaign named {name} in client {clientId}.
slots:
name: requestBody.name
clientId: path.clientId
- text: Copy smart campaign {sourceCampaignId} into a new campaign in client {clientId}.
slots:
sourceCampaignId: requestBody.sourceCampaignId
clientId: path.clientId
- text: Start a new smart campaign {name} targeting recipient lists {recipientListIds}.
slots:
name: requestBody.name
recipientListIds: requestBody.recipientListIds
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}'].get
update:
x-apievangelist-phrasing:
intent: Get details of one smart campaign
effect: read
questions:
- What are the details and current status of a particular smart campaign?
- Can I look up a single smart campaign by its ID?
instructions:
- text: Get smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Show the details of smart campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}'].post
update:
x-apievangelist-phrasing:
intent: Rename a smart campaign
effect: write
questions:
- How do I rename a smart campaign after it's been created?
- Can I change the name of an existing smart campaign?
instructions:
- text: Rename smart campaign {campaignId} in client {clientId} to {name}.
slots:
campaignId: path.campaignId
clientId: path.clientId
name: requestBody.name
- text: Change the title of smart campaign {campaignId} to {name}.
slots:
campaignId: path.campaignId
name: requestBody.name
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a smart campaign
effect: destructive
questions:
- How do I permanently remove a smart campaign I no longer need?
- Can a smart campaign be deleted through the API?
instructions:
- text: Delete smart campaign {campaignId} from client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Remove the smart campaign {campaignId} entirely.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/start'].post
update:
x-apievangelist-phrasing:
intent: Start a smart campaign's automated workflow
effect: write
questions:
- How do I kick off the automated workflow of a smart campaign?
- What call begins execution of a smart campaign?
instructions:
- text: Start smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Begin running the automated workflow for smart campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/pause'].post
update:
x-apievangelist-phrasing:
intent: Pause a running smart campaign
effect: write
questions:
- Can I temporarily pause a whole smart campaign without cancelling it?
- How do I put a running smart campaign on hold?
instructions:
- text: Pause smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Put the entire smart campaign {campaignId} on hold.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/activate'].post
update:
x-apievangelist-phrasing:
intent: Activate a smart campaign
effect: write
questions:
- How do I move a smart campaign into the Activated status?
- What makes a smart campaign ready so its mailings can be started?
instructions:
- text: Activate smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Set smart campaign {campaignId} to status Activated.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/deactivate'].post
update:
x-apievangelist-phrasing:
intent: Deactivate a smart campaign
effect: write
questions:
- How do I deactivate a smart campaign so it goes back to activation required?
- Can I take a smart campaign out of the Activated state?
instructions:
- text: Deactivate smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Return smart campaign {campaignId} to the activation required status.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest'].get
update:
x-apievangelist-phrasing:
intent: Get a smart campaign's A/B test node
effect: read
questions:
- What optimization mode is the A/B test in my smart campaign using?
- When is the A/B test node of a smart campaign scheduled to pick a winner, and what's its fallback?
instructions:
- text: Show the A/B test node settings for smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Get the split test configuration of smart campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest'].post
update:
x-apievangelist-phrasing:
intent: Create or update a smart campaign's A/B test node
effect: write
questions:
- How do I add an A/B test step to a smart campaign?
- Can the A/B test pick a winner automatically by best open rate or click rate?
- Is send time optimization available on an A/B test node?
instructions:
- text: Add an A/B test node to smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Set the A/B test in campaign {campaignId} to optimize by {mode} and dispatch the winner at {scheduledAt}.
slots:
campaignId: path.campaignId
mode: requestBody.optimization.mode
scheduledAt: requestBody.optimization.scheduledAt
- text: Enable automatic optimization on the A/B test node of campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest'].delete
update:
x-apievangelist-phrasing:
intent: Delete a smart campaign's A/B test node
effect: destructive
questions:
- How do I remove the A/B test step from a smart campaign?
- Can I drop split testing from a smart campaign's workflow?
instructions:
- text: Delete the A/B test node from smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Remove split testing from campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors/{nodeId}'].get
update:
x-apievangelist-phrasing:
intent: Get one connection leaving an A/B test node
effect: read
questions:
- What share of recipients does a specific branch out of my A/B test receive?
- Which target group is attached to one particular A/B test connection?
instructions:
- text: Show the A/B test connection to node {nodeId} in smart campaign {campaignId} for client {clientId}.
slots:
nodeId: path.nodeId
campaignId: path.campaignId
clientId: path.clientId
- text: Get the recipient split for the A/B branch leading to node {nodeId}.
slots:
nodeId: path.nodeId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors/{nodeId}'].post
update:
x-apievangelist-phrasing:
intent: Create or update a connection from an A/B test node
effect: write
questions:
- How do I route a percentage of A/B test recipients to a particular next step?
- Can I send a fixed number of recipients down one A/B test branch?
- Is it possible to attach a target group to an A/B test connection?
instructions:
- text: Connect the A/B test in campaign {campaignId} to node {nodeId} for {relative} percent of recipients, client {clientId}.
slots:
campaignId: path.campaignId
nodeId: path.nodeId
relative: requestBody.relative
clientId: path.clientId
- text: Send {absolute} recipients from the A/B test down the branch to node {nodeId}.
slots:
absolute: requestBody.absolute
nodeId: path.nodeId
- text: Name the A/B branch to node {nodeId} as target group {name}.
slots:
nodeId: path.nodeId
name: requestBody.name
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors/{nodeId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete one connection leaving an A/B test node
effect: destructive
questions:
- How do I remove a single branch from an A/B test node?
- Can I disconnect the A/B test from just one of its next steps?
instructions:
- text: Delete the A/B test connection to node {nodeId} in smart campaign {campaignId}, client {clientId}.
slots:
nodeId: path.nodeId
campaignId: path.campaignId
clientId: path.clientId
- text: Cut only the A/B branch that leads to node {nodeId}.
slots:
nodeId: path.nodeId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors'].get
update:
x-apievangelist-phrasing:
intent: List all connections leaving an A/B test node
effect: read
questions:
- Where do all the branches of my A/B test lead and how are recipients divided?
- Can I see every outgoing connection from a smart campaign's A/B test at once?
instructions:
- text: List every connection out of the A/B test in smart campaign {campaignId} for client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Show all A/B test branches and their recipient shares for campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/abtest/successors'].delete
update:
x-apievangelist-phrasing:
intent: Delete all connections leaving an A/B test node
effect: destructive
questions:
- How do I clear every outgoing branch from an A/B test node at once?
- Can I disconnect the A/B test from all of its next steps in one call?
instructions:
- text: Remove all connections from the A/B test in smart campaign {campaignId}, client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Wipe every A/B branch out of campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/analysis'].get
update:
x-apievangelist-phrasing:
intent: Get recipient analysis results of a smart campaign
effect: read
questions:
- How many mailing recipients did the recipient analysis of my smart campaign find?
- What state is the recipient analysis of a smart campaign in right now?
instructions:
- text: Show the recipient analysis data for smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Check the analysis status and recipient count for campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/analysis'].post
update:
x-apievangelist-phrasing:
intent: Schedule a recipient analysis for a smart campaign
effect: write
questions:
- How do I trigger a fresh recipient analysis on a smart campaign?
- Can I queue a new count of who a smart campaign would reach?
instructions:
- text: Schedule a new recipient analysis for smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Run a recipient analysis on campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/analysis'].delete
update:
x-apievangelist-phrasing:
intent: Cancel a running recipient analysis
effect: destructive
questions:
- How do I stop a recipient analysis that is still running on a smart campaign?
- Can an in-progress smart campaign analysis be cancelled?
instructions:
- text: Cancel the running recipient analysis of smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Abort the analysis currently in progress for campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/block'].get
update:
x-apievangelist-phrasing:
intent: Get a smart campaign's Block node
effect: read
questions:
- Which custom blacklists does the Block step of my smart campaign use?
- What does the Block node in a smart campaign filter out?
instructions:
- text: Show the Block node of smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Get the blacklist IDs used by the Block step of campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/block'].post
update:
x-apievangelist-phrasing:
intent: Create or update a smart campaign's Block node
effect: write
questions:
- How do I exclude recipients on a custom blacklist from a smart campaign?
- Can I add a Block step between two nodes of a smart campaign?
instructions:
- text: Add a Block node using blacklists {customBlacklistIds} to smart campaign {campaignId} in client {clientId}.
slots:
customBlacklistIds: requestBody.customBlacklistIds
campaignId: path.campaignId
clientId: path.clientId
- text: Place the Block step of campaign {campaignId} after node {predecessorNodeId}.
slots:
campaignId: path.campaignId
predecessorNodeId: requestBody.predecessorNodeId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/block'].delete
update:
x-apievangelist-phrasing:
intent: Delete a smart campaign's Block node
effect: destructive
questions:
- How do I remove the blacklist Block step from a smart campaign?
- Can I stop a smart campaign from blocking blacklisted recipients?
instructions:
- text: Delete the Block node from smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Drop the blacklist Block step from campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/cap'].get
update:
x-apievangelist-phrasing:
intent: Get a smart campaign's Limit node
effect: read
questions:
- How many recipients is my smart campaign capped at?
- What recipient limit does the Limit node of a smart campaign apply?
instructions:
- text: Show the Limit node of smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Get the recipient cap set on campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/cap'].post
update:
x-apievangelist-phrasing:
intent: Create or update a smart campaign's Limit node
effect: write
questions:
- How do I cap a smart campaign at a fixed number of recipients?
- Can I limit a smart campaign to a percentage of its audience?
instructions:
- text: Limit smart campaign {campaignId} in client {clientId} to {absolute} recipients.
slots:
campaignId: path.campaignId
clientId: path.clientId
absolute: requestBody.absolute
- text: Cap campaign {campaignId} at {relative} percent of recipients.
slots:
campaignId: path.campaignId
relative: requestBody.relative
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/cap'].delete
update:
x-apievangelist-phrasing:
intent: Delete a smart campaign's Limit node
effect: destructive
questions:
- How do I remove the recipient cap from a smart campaign?
- Can I take the Limit step out of a smart campaign workflow?
instructions:
- text: Delete the Limit node from smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Remove the recipient cap on campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages'].get
update:
x-apievangelist-phrasing:
intent: List all mailings in a smart campaign
effect: read
questions:
- Which mailings belong to my smart campaign?
- Can I see every email and push message inside one smart campaign?
instructions:
- text: List all mailings of smart campaign {campaignId} in client {clientId}.
slots:
campaignId: path.campaignId
clientId: path.clientId
- text: Show every message defined in campaign {campaignId}.
slots:
campaignId: path.campaignId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages'].post
update:
x-apievangelist-phrasing:
intent: Create a mailing in a smart campaign
effect: write
questions:
- How do I add a new email mailing to a smart campaign?
- Can a smart campaign mailing be a Web Push or Mobile Push message?
- What sender details can I set when creating a campaign mailing?
instructions:
- text: Add a {mediaType} message called {name} to the workflow of smart campaign {campaignId}, client {clientId}.
slots:
mediaType: requestBody.mediaType
name: requestBody.name
campaignId: path.campaignId
clientId: path.clientId
- text: Add a new mailing to campaign {campaignId} with subject {subject} from {senderAddress}.
slots:
campaignId: path.campaignId
subject: requestBody.subject
senderAddress: requestBody.senderAddress
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}'].get
update:
x-apievangelist-phrasing:
intent: Get details of one smart campaign mailing
effect: read
questions:
- What status and format is a particular campaign mailing in?
- When was a specific smart campaign mailing created?
instructions:
- text: Get mailing {mailingId} of smart campaign {campaignId} in client {clientId}.
slots:
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Show the status and type of mailing {mailingId}.
slots:
mailingId: path.mailingId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}'].post
update:
x-apievangelist-phrasing:
intent: Update a smart campaign mailing
effect: write
questions:
- How do I change the subject line of a mailing already in a smart campaign?
- Can I update the sender name or reply-to address of an existing campaign mailing?
instructions:
- text: Change the subject of mailing {mailingId} in smart campaign {campaignId}, client {clientId}, to {subject}.
slots:
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
subject: requestBody.subject
- text: Set the sender name of existing mailing {mailingId} to {senderName}.
slots:
mailingId: path.mailingId
senderName: requestBody.senderName
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a smart campaign mailing
effect: destructive
questions:
- How do I delete a mailing I created in a smart campaign?
- Can one message be removed from a smart campaign without deleting the campaign?
instructions:
- text: Delete mailing {mailingId} from smart campaign {campaignId} in client {clientId}.
slots:
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Remove the mailing {mailingId} from its campaign.
slots:
mailingId: path.mailingId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/attachments'].post
update:
x-apievangelist-phrasing:
intent: Add attachments to a campaign email
effect: write
questions:
- How do I attach files to an email in a smart campaign?
- Can I add several attachments to a campaign mailing in one request?
instructions:
- text: Attach files {attachmentIds} to mailing {mailingId} in smart campaign {campaignId}, client {clientId}.
slots:
attachmentIds: requestBody.attachmentIds
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Add attachment {attachmentIds} to the email {mailingId}.
slots:
attachmentIds: requestBody.attachmentIds
mailingId: path.mailingId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/attachments'].delete
update:
x-apievangelist-phrasing:
intent: Remove attachments from a campaign email
effect: destructive
questions:
- How do I take attachments off a smart campaign email?
- Can I detach specific files from a campaign mailing?
instructions:
- text: Remove attachments {attachmentIds} from mailing {mailingId} in smart campaign {campaignId}, client {clientId}.
slots:
attachmentIds: query.attachmentIds
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Detach file {attachmentIds} from email {mailingId}.
slots:
attachmentIds: query.attachmentIds
mailingId: path.mailingId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/content'].get
update:
x-apievangelist-phrasing:
intent: Get the content of a campaign email
effect: read
questions:
- How do I download the HTML or plain-text body of a campaign email?
- Can I choose which content type of a mailing's content is returned?
instructions:
- text: Get the content of mailing {mailingId} in smart campaign {campaignId}, client {clientId}.
slots:
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Fetch the body of email {mailingId} as {Accept}.
slots:
mailingId: path.mailingId
Accept: header.Accept
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/content'].post
update:
x-apievangelist-phrasing:
intent: Upload new content for a campaign mailing
effect: write
questions:
- How do I replace the HTML body of a smart campaign mailing?
- Can I upload multipart content with both HTML and plain text for a mailing?
instructions:
- text: Upload {content} as the body of mailing {mailingId} in smart campaign {campaignId}, client {clientId}.
slots:
content: requestBody.content
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Replace the content of mailing {mailingId} with new HTML.
slots:
mailingId: path.mailingId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/content'].delete
update:
x-apievangelist-phrasing:
intent: Clear the content of a campaign email
effect: destructive
questions:
- How do I wipe the body content of a campaign email and start over?
- Can I empty a mailing's content without deleting the mailing itself?
instructions:
- text: Delete the content of mailing {mailingId} in smart campaign {campaignId}, client {clientId}.
slots:
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Clear out the email body of mailing {mailingId}.
slots:
mailingId: path.mailingId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/test/{testMailingId}'].get
update:
x-apievangelist-phrasing:
intent: Get the sending status of a test mailing
effect: read
questions:
- Did my test mailing actually reach each test recipient?
- Which recipients of a test send are still enqueued or failed?
instructions:
- text: Show the delivery status of test {testMailingId} for mailing {mailingId} in campaign {campaignId}, client {clientId}.
slots:
testMailingId: path.testMailingId
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Report which recipients of test send {testMailingId} were sent or failed.
slots:
testMailingId: path.testMailingId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/test'].post
update:
x-apievangelist-phrasing:
intent: Send a test of a campaign mailing
effect: write
questions:
- How do I send a test version of a mailing before the real send?
- Can I override the subject or sender address just for a test send?
instructions:
- text: Send a test of mailing {mailingId} in campaign {campaignId}, client {clientId}, to recipients {recipientIds} from list {recipientListId}.
slots:
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
recipientIds: requestBody.recipientIds
recipientListId: requestBody.recipientListId
- text: Test-send mailing {mailingId} with subject {subject} to recipients {recipientIds} in list {recipientListId}.
slots:
mailingId: path.mailingId
subject: requestBody.subject
recipientIds: requestBody.recipientIds
recipientListId: requestBody.recipientListId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/smartcampaigns/{campaignId}/messages/{mailingId}/tracking/links/{trackingLinkId}'].get
update:
x-apievangelist-phrasing:
intent: Get one tracking link of a mailing
effect: read
questions:
- What URL does a particular tracking link in my mailing point to?
- How often does one tracked link appear in a mailing's text version?
instructions:
- text: Show tracking link {trackingLinkId} of mailing {mailingId} in campaign {campaignId}, client {clientId}.
slots:
trackingLinkId: path.trackingLinkId
mailingId: path.mailingId
campaignId: path.campaignId
clientId: path.clientId
- text: Get the URL behind tracked link {trackingLinkId}.
slots:
trackingLinkId: path.trackingLinkId
method: generated
generated: '2026-09-26'
# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/optimizely/refs/heads/main/overlays/optimizely-smart-campaigns-api-phrasing-overlay.yaml