Customer.io · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Customer.io App Assets API
11 actions
11 updates
phrasing
extends
openapi/customer-io-assets-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Customer.io's API. It is a proposal applied on top of the contract, not a document Customer.io publishes.
What the actions change
x-apievangelist-phrasing
Targets 11
$.info
$.paths['/v1/assets'].get
$.paths['/v1/assets/files'].post
$.paths['/v1/assets/files/{id}'].get
$.paths['/v1/assets/files/{id}'].put
$.paths['/v1/assets/files/{id}'].delete
$.paths['/v1/assets/folders'].get
$.paths['/v1/assets/folders'].post
$.paths['/v1/assets/folders/{id}'].get
$.paths['/v1/assets/folders/{id}'].put
$.paths['/v1/assets/folders/{id}'].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 Customer.io App Assets API
version: 1.0.0
extends: openapi/customer-io-assets-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['/v1/assets'].get
update:
x-apievangelist-phrasing:
intent: List file assets
effect: read
questions:
- How do I see all the images and PDFs uploaded to my asset library?
- Can I list only the files directly inside one asset folder, not its subfolders?
instructions:
- text: List the file assets in asset folder {parent_folder_id}.
slots:
parent_folder_id: query.parent_folder_id
- text: Show page {page} of my uploaded file assets.
slots:
page: query.page
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/files'].post
update:
x-apievangelist-phrasing:
intent: Upload a file asset
effect: write
questions:
- How do I upload an image or PDF to the asset library through the API?
- What file types and sizes can I upload as an asset?
instructions:
- text: Upload {file} to the asset library as {name}.
slots:
file: requestBody.file
name: requestBody.name
- text: Upload {file} into asset folder {parent_folder_id}.
slots:
file: requestBody.file
parent_folder_id: requestBody.parent_folder_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/files/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a file asset
effect: read
questions:
- How do I look up the details of one uploaded file asset?
- Can I get the URL and size of a specific image in my asset library?
instructions:
- text: Get file asset {id}.
slots:
id: path.id
- text: Show me the details of uploaded file {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/files/{id}'].put
update:
x-apievangelist-phrasing:
intent: Rename or move a file asset
effect: write
questions:
- Can I rename an uploaded file asset without re-uploading it?
- How do I move an image into a different asset folder?
instructions:
- text: Rename file asset {id} to {name}.
slots:
id: path.id
name: requestBody.name
- text: Move file asset {id} into asset folder {parent_folder_id}.
slots:
id: path.id
parent_folder_id: requestBody.parent_folder_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/files/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a file asset
effect: destructive
questions:
- How do I remove an uploaded image from my asset library?
- Can I delete a file asset that is still in use?
instructions:
- text: Delete file asset {id}.
slots:
id: path.id
- text: Remove uploaded file {id} from the asset library.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/folders'].get
update:
x-apievangelist-phrasing:
intent: List asset folders
effect: read
questions:
- What folders exist in my file asset library?
- Can I list just the subfolders directly under one asset folder?
instructions:
- text: List the asset folders under {parent_folder_id}.
slots:
parent_folder_id: query.parent_folder_id
- text: Show all my asset library folders.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/folders'].post
update:
x-apievangelist-phrasing:
intent: Create an asset folder
effect: write
questions:
- How do I create a folder to organize my uploaded files?
- Do asset folder names have to be unique?
instructions:
- text: Create an asset folder called {name}.
slots:
name: requestBody.name
- text: Create asset folder {name} inside folder {parent_folder_id}.
slots:
name: requestBody.name
parent_folder_id: requestBody.parent_folder_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/folders/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get an asset folder
effect: read
questions:
- How do I look up one folder in my asset library by ID?
- Which parent does a given asset folder sit under?
instructions:
- text: Get asset folder {id}.
slots:
id: path.id
- text: Show details for asset library folder {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/folders/{id}'].put
update:
x-apievangelist-phrasing:
intent: Rename or move an asset folder
effect: write
questions:
- Can I rename a folder in my asset library?
- How do I nest one asset folder inside another?
instructions:
- text: Rename asset folder {id} to {name}.
slots:
id: path.id
name: requestBody.name
- text: Move asset folder {id} under folder {parent_folder_id}.
slots:
id: path.id
parent_folder_id: requestBody.parent_folder_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/assets/folders/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an empty asset folder
effect: destructive
questions:
- How do I delete an empty folder from my asset library?
- Why can't I delete an asset folder that still has files in it?
instructions:
- text: Delete asset folder {id}.
slots:
id: path.id
- text: Remove the empty asset library folder {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'