Optimizely · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Optimizely Campaign REST Custom blocklists API
11 actions
11 updates
phrasing
extends
openapi/optimizely-custom-blocklists-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 11
$.info
$.paths['/{clientId}/customblacklists'].get
$.paths['/{clientId}/customblacklists'].post
$.paths['/{clientId}/customblacklists/{customBlacklistId}/entries'].get
$.paths['/{clientId}/customblacklists/{customBlacklistId}/entries'].post
$.paths['/{clientId}/customblacklists/{customBlacklistId}/entries'].delete
$.paths['/{clientId}/customblacklists/{customBlacklistId}/entries/{customBlacklistEntryId}'].get
$.paths['/{clientId}/customblacklists/{customBlacklistId}/entries/{customBlacklistEntryId}'].post
$.paths['/{clientId}/customblacklists/{customBlacklistId}/entries/{customBlacklistEntryId}'].delete
$.paths['/{clientId}/customblacklists/{customBlacklistId}'].get
$.paths['/{clientId}/customblacklists/{customBlacklistId}'].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 Optimizely Campaign REST Custom blocklists API
version: 1.0.0
extends: openapi/optimizely-custom-blocklists-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: 10
- target: $.paths['/{clientId}/customblacklists'].get
update:
x-apievangelist-phrasing:
intent: List custom blocklists
effect: read
questions:
- Which custom blocklists does my Optimizely client have, and what hash algorithm does each use?
- Can I limit the blocklists returned to one folder?
instructions:
- text: List custom blocklists for client {clientId}.
slots:
clientId: path.clientId
- text: List up to {limit} custom blocklists in folder {folderId} for client {clientId}.
slots:
limit: query.limit
folderId: query.folderId
clientId: path.clientId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists'].post
update:
x-apievangelist-phrasing:
intent: Create a custom blocklist
effect: write
questions:
- How do I create a new blocklist to keep certain recipients out of mailings?
- Can a custom blocklist store hashed patterns instead of plain ones?
instructions:
- text: Create a custom blocklist named {name} for client {clientId}.
slots:
name: requestBody.name
clientId: path.clientId
- text: Create blocklist {name} for client {clientId} using hash algorithm {hashAlgorithm}.
slots:
name: requestBody.name
clientId: path.clientId
hashAlgorithm: requestBody.hashAlgorithm
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}/entries'].get
update:
x-apievangelist-phrasing:
intent: List entries in a custom blocklist
effect: read
questions:
- What patterns are in a custom blocklist, and why was each blocked?
- Can I search a blocklist's entries for a matching pattern?
- Is there a way to page and sort blocklist entries by creation date?
instructions:
- text: List entries in blocklist {customBlacklistId} for client {clientId}.
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
- text: Find entries in blocklist {customBlacklistId} of client {clientId} matching {matchingPattern}.
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
matchingPattern: query.matchingPattern
- text: Check if blocklist {customBlacklistId} for client {clientId} has the exact pattern {exactPattern}.
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
exactPattern: query.exactPattern
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}/entries'].post
update:
x-apievangelist-phrasing:
intent: Add patterns to a custom blocklist
effect: write
questions:
- How do I block new email addresses or domains by adding them to a blocklist?
- Can I record a reason when adding blocklist patterns?
instructions:
- text: Add patterns {patterns} to blocklist {customBlacklistId} for client {clientId}.
slots:
patterns: requestBody.patterns
customBlacklistId: path.customBlacklistId
clientId: path.clientId
- text: Block {patterns} in blocklist {customBlacklistId} of client {clientId} with reason {reason}.
slots:
patterns: requestBody.patterns
customBlacklistId: path.customBlacklistId
clientId: path.clientId
reason: requestBody.reason
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}/entries'].delete
update:
x-apievangelist-phrasing:
intent: Clear all entries from a custom blocklist
effect: destructive
questions:
- How do I empty a blocklist completely while keeping the list itself?
- Can I wipe every pattern from a custom blocklist at once?
instructions:
- text: Remove all entries from blocklist {customBlacklistId} for client {clientId}.
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
- text: Wipe blocklist {customBlacklistId} of client {clientId} clean.
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}/entries/{customBlacklistEntryId}'].get
update:
x-apievangelist-phrasing:
intent: Get one custom blocklist entry
effect: read
questions:
- When was a specific blocklist entry created and for what reason?
- How do I read a single entry of a custom blocklist?
instructions:
- text: Get entry {customBlacklistEntryId} of blocklist {customBlacklistId} for client {clientId}.
slots:
customBlacklistEntryId: path.customBlacklistEntryId
customBlacklistId: path.customBlacklistId
clientId: path.clientId
- text: Show why entry {customBlacklistEntryId} is in blocklist {customBlacklistId} (client {clientId}).
slots:
customBlacklistEntryId: path.customBlacklistEntryId
customBlacklistId: path.customBlacklistId
clientId: path.clientId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}/entries/{customBlacklistEntryId}'].post
update:
x-apievangelist-phrasing:
intent: Update a custom blocklist entry's reason
effect: write
questions:
- How do I change the reason recorded on a blocklist entry?
- Can I edit an existing blocklist entry instead of recreating it?
instructions:
- text: Set the reason on entry {customBlacklistEntryId} in blocklist {customBlacklistId} for client {clientId} to {reason}.
slots:
customBlacklistEntryId: path.customBlacklistEntryId
customBlacklistId: path.customBlacklistId
clientId: path.clientId
reason: requestBody.reason
- text: Update blocklist entry {customBlacklistEntryId} in list {customBlacklistId} of client {clientId}.
slots:
customBlacklistEntryId: path.customBlacklistEntryId
customBlacklistId: path.customBlacklistId
clientId: path.clientId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}/entries/{customBlacklistEntryId}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one entry from a custom blocklist
effect: destructive
questions:
- How do I unblock a single address by deleting its blocklist entry?
- Can I remove just one pattern from a blocklist?
instructions:
- text: Delete entry {customBlacklistEntryId} from blocklist {customBlacklistId} for client {clientId}.
slots:
customBlacklistEntryId: path.customBlacklistEntryId
customBlacklistId: path.customBlacklistId
clientId: path.clientId
- text: Unblock entry {customBlacklistEntryId} in blocklist {customBlacklistId} of client {clientId}.
slots:
customBlacklistEntryId: path.customBlacklistEntryId
customBlacklistId: path.customBlacklistId
clientId: path.clientId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}'].get
update:
x-apievangelist-phrasing:
intent: Get a custom blocklist
effect: read
questions:
- What is the name and hash algorithm of a specific blocklist?
- How do I fetch details of one custom blocklist?
instructions:
- text: Get blocklist {customBlacklistId} for client {clientId}.
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
- text: Show the hash algorithm of blocklist {customBlacklistId} (client {clientId}).
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
method: generated
generated: '2026-09-26'
- target: $.paths['/{clientId}/customblacklists/{customBlacklistId}'].post
update:
x-apievangelist-phrasing:
intent: Rename or rehash a custom blocklist
effect: write
questions:
- How do I rename an existing custom blocklist?
- Can I change the hash algorithm a blocklist uses?
instructions:
- text: Rename blocklist {customBlacklistId} for client {clientId} to {name}.
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
name: requestBody.name
- text: 'Update blocklist {customBlacklistId} of client {clientId}: name {name}, hash algorithm {hashAlgorithm}.'
slots:
customBlacklistId: path.customBlacklistId
clientId: path.clientId
name: requestBody.name
hashAlgorithm: requestBody.hashAlgorithm
method: generated
generated: '2026-09-26'