# 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 Persona User Profiles API version: 1.0.0 extends: openapi/optimizely-persona-user-profiles-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/PersonaUserProfiles'].get update: x-apievangelist-phrasing: intent: List persona assignments for users effect: read questions: - How do I list which personas are assigned to which user profiles? - Can I filter persona assignments to one persona? instructions: - text: List all persona user profile assignments. - text: List persona assignments matching {filter}. slots: filter: query.$filter method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PersonaUserProfiles'].post update: x-apievangelist-phrasing: intent: Assign a persona to a user profile effect: write questions: - How do I give a shopper a persona for personalized content? - Can I link a persona to a user profile through the admin API? instructions: - text: Assign persona {personaId} to user profile {userProfileId}. slots: personaId: requestBody.personaId userProfileId: requestBody.userProfileId - text: Give user {userProfileId} the persona {personaId}. slots: userProfileId: requestBody.userProfileId personaId: requestBody.personaId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PersonaUserProfiles({id})'].get update: x-apievangelist-phrasing: intent: Get one persona assignment effect: read questions: - How do I look up a single persona-to-user assignment by id? - Which persona and user does a given assignment record link? instructions: - text: Get persona user profile {id}. slots: id: path.id - text: Show the persona and user on assignment {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PersonaUserProfiles({id})'].put update: x-apievangelist-phrasing: intent: Replace a persona assignment effect: write questions: - How do I overwrite a persona assignment record entirely? - Is there a full replace for a persona user profile link? instructions: - text: Replace persona assignment {id} to link user {userProfileId} with persona {personaId}. slots: id: path.id userProfileId: requestBody.userProfileId personaId: requestBody.personaId - text: Overwrite the whole persona assignment {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PersonaUserProfiles({id})'].delete update: x-apievangelist-phrasing: intent: Remove a persona from a user effect: destructive questions: - How do I take a persona away from a user profile? - Can I delete a persona assignment only if its ETag matches? instructions: - text: Delete persona assignment {id}. slots: id: path.id - text: Delete persona assignment {id} if its ETag is {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PersonaUserProfiles({id})'].patch update: x-apievangelist-phrasing: intent: Change the persona on an assignment effect: write questions: - How do I switch a user's assigned persona to a different one? - Can I update just the persona on an existing assignment? instructions: - text: Switch assignment {id} to persona {personaId}. slots: id: path.id personaId: requestBody.personaId - text: Patch persona assignment {id} to user profile {userProfileId}. slots: id: path.id userProfileId: requestBody.userProfileId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PersonaUserProfiles/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get the default persona assignment record effect: read questions: - What does a default persona user profile record look like? - Can I get the template values for a new persona assignment? instructions: - text: Get the default persona user profile record. - text: Show the template for a new persona assignment. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/personauserprofiles/delete'].delete update: x-apievangelist-phrasing: intent: Bulk remove persona assignments effect: destructive questions: - How do I delete many persona assignments in one call? - Can I bulk unassign personas by a list of ids? instructions: - text: Bulk delete persona assignments {ids}. slots: ids: query.ids - text: 'Unassign these persona links at once: {ids}.' slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/personauserprofiles({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a persona assignment effect: read questions: - How do I read a custom property on a persona user profile record? - Can I fetch one extension property of a persona assignment? instructions: - text: Get custom property {custompropertyKey} on persona assignment {key}. slots: custompropertyKey: path.custompropertyKey key: path.key - text: Show custom property {custompropertyKey} for persona user profile {key}. slots: custompropertyKey: path.custompropertyKey key: path.key method: generated generated: '2026-09-26'