Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Admin API V1 Category Persona Extendeds API

10 actions 10 updates phrasing extends openapi/optimizely-category-persona-extendeds-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Optimizely's API. It is a proposal applied on top of the contract, not a document Optimizely publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 10

$.info
$.paths['/api/v1/admin/CategoryPersonaExtendeds'].get
$.paths['/api/v1/admin/CategoryPersonaExtendeds'].post
$.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].get
$.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].put
$.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].delete
$.paths['/api/v1/admin/CategoryPersonaExtendeds({id})'].patch
$.paths['/api/v1/admin/CategoryPersonaExtendeds/Default.Default()'].get
$.paths['/api/v1/admin/categorypersonaextendeds/delete'].delete
$.paths['/api/v1/admin/categorypersonaextendeds({key})/customproperties({custompropertyKey})'].get

OpenAPI Overlay

Raw ↑
# 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'