Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Optimizely Attributes API

6 actions 6 updates phrasing extends openapi/optimizely-attributes-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 6

$.info
$.paths['/attributes'].get
$.paths['/attributes'].post
$.paths['/attributes/{attribute_id}'].get
$.paths['/attributes/{attribute_id}'].delete
$.paths['/attributes/{attribute_id}'].patch

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 Optimizely Attributes API
  version: 1.0.0
extends: openapi/optimizely-attributes-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: 5
- target: $.paths['/attributes'].get
  update:
    x-apievangelist-phrasing:
      intent: List audience attributes in a project
      effect: read
      questions:
      - How do I see all the custom attributes defined in an experimentation project?
      - Can I page through a project's attributes?
      instructions:
      - text: List the attributes in project {project_id}.
        slots:
          project_id: query.project_id
      - text: Show page {page} of attributes for project {project_id}.
        slots:
          page: query.page
          project_id: query.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/attributes'].post
  update:
    x-apievangelist-phrasing:
      intent: Create an audience attribute
      effect: write
      questions:
      - How do I add a custom attribute for audience targeting in Optimizely?
      - Can I create an attribute as a custom dimension instead of a custom attribute?
      instructions:
      - text: Create attribute {key} in project {project_id}.
        slots:
          key: requestBody.key
          project_id: requestBody.project_id
      - text: Add attribute {key} named {name} to project {project_id}.
        slots:
          key: requestBody.key
          name: requestBody.name
          project_id: requestBody.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/attributes/{attribute_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an audience attribute
      effect: read
      questions:
      - How do I look up a single attribute by its ID?
      - Is a given attribute archived or still active?
      instructions:
      - text: Get attribute {attribute_id}.
        slots:
          attribute_id: path.attribute_id
      - text: Show the key and description of attribute {attribute_id}.
        slots:
          attribute_id: path.attribute_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/attributes/{attribute_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Archive an audience attribute
      effect: destructive
      questions:
      - How do I archive an attribute I no longer target on?
      - Does removing an attribute archive it rather than erase it?
      instructions:
      - text: Archive attribute {attribute_id}.
        slots:
          attribute_id: path.attribute_id
      - text: Retire the attribute {attribute_id} from its project.
        slots:
          attribute_id: path.attribute_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/attributes/{attribute_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update an audience attribute
      effect: write
      questions:
      - How do I rename an attribute or change its description?
      - Can I change an attribute's key after it's created?
      instructions:
      - text: Rename attribute {attribute_id} to {name}.
        slots:
          attribute_id: path.attribute_id
          name: requestBody.name
      - text: Set the description of attribute {attribute_id} to {description}.
        slots:
          attribute_id: path.attribute_id
          description: requestBody.description
      method: generated
      generated: '2026-09-26'