# 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 Category Persona Extendeds API version: 1.0.0 extends: openapi/optimizely-category-persona-extendeds-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/CategoryPersonaExtendeds'].get update: x-apievangelist-phrasing: intent: List category-to-persona assignments effect: read questions: - Which product categories are targeted to which personas? - Can I filter category persona links to one persona? instructions: - text: List all category persona assignments. - text: Show category persona assignments matching {filter}. slots: filter: query.$filter method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CategoryPersonaExtendeds'].post update: x-apievangelist-phrasing: intent: Link a category to a persona effect: write questions: - How do I show a category only to a particular persona? - Can I assign a product category to a customer persona? instructions: - text: Link category {categoryId} to persona {personaId}. slots: categoryId: requestBody.categoryId personaId: requestBody.personaId - text: Create a category persona assignment for persona {personaId} on category {categoryId}. slots: categoryId: requestBody.categoryId personaId: requestBody.personaId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].get update: x-apievangelist-phrasing: intent: Get a category persona assignment effect: read questions: - Which category and persona does a given assignment connect? - Can I look up one category persona record by ID? instructions: - text: Get category persona assignment {id}. slots: id: path.id - text: Show which persona and category assignment {id} links. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].put update: x-apievangelist-phrasing: intent: Replace a category persona assignment effect: write questions: - How do I overwrite a category persona record completely? - Can I fully replace both the category and persona on an assignment? instructions: - text: Replace assignment {id} with category {categoryId} and persona {personaId}. slots: id: path.id categoryId: requestBody.categoryId personaId: requestBody.personaId - text: Overwrite all fields of category persona record {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].delete update: x-apievangelist-phrasing: intent: Remove a category persona assignment effect: destructive questions: - How do I stop targeting a category to a persona? - Does removing a category persona link support If-Match? instructions: - text: Delete category persona assignment {id}. slots: id: path.id - text: Remove category persona link {id} if its ETag is {ifMatch}. slots: id: path.id ifMatch: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].patch update: x-apievangelist-phrasing: intent: Change the persona on a category assignment effect: write questions: - How do I switch an existing category assignment to a different persona? - Can I update just the category on a persona assignment? instructions: - text: Change the persona on assignment {id} to {personaId}. slots: id: path.id personaId: requestBody.personaId - text: Point existing category persona record {id} at category {categoryId}. slots: id: path.id categoryId: requestBody.categoryId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/CategoryPersonaExtendeds/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get defaults for a new category persona link effect: read questions: - What defaults does a new category persona assignment start with? - Is there a blank category persona template? instructions: - text: Get the default field values for a new category persona assignment. - text: Show a blank category persona record. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/categorypersonaextendeds/delete'].delete update: x-apievangelist-phrasing: intent: Delete several category persona assignments effect: destructive questions: - How do I bulk remove category persona links? - Can I delete many category persona records in one request? instructions: - text: Bulk delete category persona assignments {ids}. slots: ids: query.ids - text: Permanently delete every category persona link in {ids}. slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/categorypersonaextendeds({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a category persona link effect: read questions: - How do I read a custom property on a category persona assignment? - Can I fetch one custom field value from a category persona record? instructions: - text: Get custom property {custompropertyKey} of category persona assignment {key}. slots: key: path.key custompropertyKey: path.custompropertyKey - text: Show the {custompropertyKey} custom property on category persona record {key}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26'