# 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 Attachments API version: 1.0.0 extends: openapi/optimizely-attachments-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: 9 - target: $.paths['/{clientId}/attachments/count'].get update: x-apievangelist-phrasing: intent: Count email attachments for a client effect: read questions: - How many attachments are stored for my Optimizely Campaign client? - Can I get just the total attachment count without listing them? instructions: - text: Count the attachments for client {clientId}. slots: clientId: path.clientId - text: Tell me the total number of mailing attachments on client {clientId}. slots: clientId: path.clientId method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments'].get update: x-apievangelist-phrasing: intent: List a client's email attachments effect: read questions: - What attachments does my client have, with their mime types and sizes? - Can I sort the attachment list by creation date and limit the results? instructions: - text: List all attachments for client {clientId}. slots: clientId: path.clientId - text: List {limit} attachments of client {clientId} sorted by {sort} {direction}. slots: clientId: path.clientId limit: query.limit sort: query.sort direction: query.direction method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments'].post update: x-apievangelist-phrasing: intent: Upload a new email attachment effect: write questions: - How do I upload a file to use as an attachment in my mailings? - Can I name an attachment when I upload it? instructions: - text: Upload {file} as a new attachment for client {clientId}. slots: clientId: path.clientId file: requestBody.file - text: Create attachment {name} from file {file} on client {clientId}. slots: clientId: path.clientId file: requestBody.file name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments/{attachmentId}/content'].get update: x-apievangelist-phrasing: intent: Download an attachment's file content effect: read questions: - How do I download the actual file behind an attachment? - Can I retrieve the uploaded content of one attachment? instructions: - text: Download the content of attachment {attachmentId} for client {clientId}. slots: clientId: path.clientId attachmentId: path.attachmentId - text: Get the file bytes of attachment {attachmentId} on client {clientId}. slots: clientId: path.clientId attachmentId: path.attachmentId method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments/{attachmentId}/content'].post update: x-apievangelist-phrasing: intent: Replace an attachment's file content effect: write questions: - Can I swap in a new file for an existing attachment without creating another one? - How do I re-upload the content of an attachment I already have? instructions: - text: Replace the file of attachment {attachmentId} on client {clientId} with {file}. slots: clientId: path.clientId attachmentId: path.attachmentId file: requestBody.file - text: Re-upload {file} as the content of attachment {attachmentId} for client {clientId}. slots: clientId: path.clientId attachmentId: path.attachmentId file: requestBody.file method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments/{attachmentId}'].get update: x-apievangelist-phrasing: intent: Get an attachment's details effect: read questions: - What type, size and creation date does a specific attachment have? - Can I see the metadata of one attachment without downloading it? instructions: - text: Get details of attachment {attachmentId} for client {clientId}. slots: clientId: path.clientId attachmentId: path.attachmentId - text: Show the metadata of attachment {attachmentId} on client {clientId}. slots: clientId: path.clientId attachmentId: path.attachmentId method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments/{attachmentId}'].post update: x-apievangelist-phrasing: intent: Rename or retype an attachment effect: write questions: - How do I rename an attachment or change its file name? - Can I correct the mime type recorded on an attachment? instructions: - text: Rename attachment {attachmentId} on client {clientId} to {name}. slots: clientId: path.clientId attachmentId: path.attachmentId name: requestBody.name - text: Set the mime type of attachment {attachmentId} for client {clientId} to {mimeType}. slots: clientId: path.clientId attachmentId: path.attachmentId mimeType: requestBody.mimeType - text: Change the file name of attachment {attachmentId} on client {clientId} to {fileName}. slots: clientId: path.clientId attachmentId: path.attachmentId fileName: requestBody.fileName method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments/{attachmentId}'].delete update: x-apievangelist-phrasing: intent: Delete an attachment effect: destructive questions: - How do I remove an attachment I no longer use in mailings? - Is deleting an attachment permanent? instructions: - text: Delete attachment {attachmentId} from client {clientId}. slots: clientId: path.clientId attachmentId: path.attachmentId - text: Remove mailing attachment {attachmentId} on client {clientId}. slots: clientId: path.clientId attachmentId: path.attachmentId method: generated generated: '2026-09-26' - target: $.paths['/{clientId}/attachments/personalized'].post update: x-apievangelist-phrasing: intent: Create a personalized attachment effect: write questions: - How do I set up a personalized attachment that differs per recipient? - Can a personalized attachment be built from several files? instructions: - text: Create personalized attachment {name} from {file} for client {clientId}. slots: clientId: path.clientId name: requestBody.name file: requestBody.file - text: Upload files {file} as a per-recipient personalized attachment on client {clientId}. slots: clientId: path.clientId file: requestBody.file method: generated generated: '2026-09-26'