# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Admin API V1 Documents API version: 1.0.0 extends: openapi/optimizely-documents-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['/api/v1/admin/Documents'].get update: x-apievangelist-phrasing: intent: List catalog documents effect: read questions: - Which documents, like spec sheets or manuals, are attached across my catalog? - Can I filter documents by type or by the record they belong to? - How many documents are stored in the commerce admin? instructions: - text: List all catalog documents. - text: Find documents matching {filter}. slots: filter: query.$filter - text: Show the first {top} documents sorted by {orderby}. slots: top: query.$top orderby: query.$orderby method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/Documents'].post update: x-apievangelist-phrasing: intent: Add a document to a record effect: write questions: - How do I attach a spec sheet PDF to a product? - What do I need to supply to register a new document, like file path and parent table? instructions: - text: Add document {name} at {filePath} of type {documentType}, described as {description}, to {parentTable} record {parentId}. slots: name: requestBody.name filePath: requestBody.filePath documentType: requestBody.documentType description: requestBody.description parentTable: requestBody.parentTable parentId: requestBody.parentId - text: Register a new document named {name} pointing to file {filePath}. slots: name: requestBody.name filePath: requestBody.filePath method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/Documents({id})'].get update: x-apievangelist-phrasing: intent: Get a catalog document effect: read questions: - Where is the file for a particular document stored? - Which record and language is a specific document tied to? instructions: - text: Get document {id}. slots: id: path.id - text: Show the file path and parent record of document {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/Documents({id})'].put update: x-apievangelist-phrasing: intent: Replace a catalog document effect: write questions: - How do I overwrite a document record in full? - Does replacing a document clear its language if I leave it out? instructions: - text: Replace document {id} with name {name} and file path {filePath}. slots: id: path.id name: requestBody.name filePath: requestBody.filePath - text: Overwrite document {id} entirely, setting document type {documentType}. slots: id: path.id documentType: requestBody.documentType method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/Documents({id})'].delete update: x-apievangelist-phrasing: intent: Delete a catalog document effect: destructive questions: - How do I delete a document that is out of date? - Can deleting a document be made conditional on its ETag? instructions: - text: Delete document {id}. slots: id: path.id - text: Delete document {id} only if its ETag is {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/Documents({id})'].patch update: x-apievangelist-phrasing: intent: Update a catalog document effect: write questions: - Can I point an existing document at a new file without resending everything? - How do I change just the description of a document? instructions: - text: Point document {id} at the new file {filePath}. slots: id: path.id filePath: requestBody.filePath - text: Change the description of document {id} to {description}. slots: id: path.id description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/Documents/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get a blank document template effect: read questions: - What default values does a new document record start with? - Is there an empty document template I can fetch before adding one? instructions: - text: Fetch the default document template. - text: Show default field values for a new document record. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/documents/delete'].delete update: x-apievangelist-phrasing: intent: Bulk delete catalog documents effect: destructive questions: - How do I delete many documents at once? - Can I purge a list of documents by their IDs in one request? instructions: - text: Bulk delete documents {ids}. slots: ids: query.ids - text: 'Remove these documents in one call: {ids}.' slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/documents({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a document effect: read questions: - What value is stored in a custom property on a document? - Can I read one custom property of a document record? instructions: - text: Get custom property {custompropertyKey} on document {key}. slots: custompropertyKey: path.custompropertyKey key: path.key - text: Show document {key}'s custom property {custompropertyKey}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26'