Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Optimizely Projects API

6 actions 6 updates phrasing extends openapi/optimizely-projects-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['/projects'].get
$.paths['/projects'].post
$.paths['/projects/{project_id}'].get
$.paths['/projects/{project_id}'].delete
$.paths['/projects/{project_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 Projects API
  version: 1.0.0
extends: openapi/optimizely-projects-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['/projects'].get
  update:
    x-apievangelist-phrasing:
      intent: List Feature Experimentation projects
      effect: read
      questions:
      - Which Feature Experimentation projects can I access in Optimizely?
      - Can I page through my projects a set number at a time?
      instructions:
      - text: List my Feature Experimentation projects.
      - text: Show page {page} of my projects, {per_page} per page.
        slots:
          page: query.page
          per_page: query.per_page
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a Feature Experimentation project
      effect: write
      questions:
      - How do I start a new Feature Experimentation project?
      - Can I set a project's status when I create it?
      instructions:
      - text: Create a project named {name}.
        slots:
          name: requestBody.name
      - text: Create project {name} with status {status}.
        slots:
          name: requestBody.name
          status: requestBody.status
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a project's details
      effect: read
      questions:
      - What are the details of a specific experimentation project?
      - Can I check the status of one project by its id?
      instructions:
      - text: Get project {project_id}.
        slots:
          project_id: path.project_id
      - text: Show the name and status of project {project_id}.
        slots:
          project_id: path.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Permanently delete a project
      effect: destructive
      questions:
      - What happens to experiments, audiences and events when a project is deleted?
      - Is deleting a Feature Experimentation project reversible?
      instructions:
      - text: Delete project {project_id} and everything in it.
        slots:
          project_id: path.project_id
      - text: Permanently remove project {project_id}.
        slots:
          project_id: path.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Rename or change a project's status
      effect: write
      questions:
      - Can I rename an existing experimentation project?
      - Is it possible to change a project's status without touching its name?
      instructions:
      - text: Rename project {project_id} to {name}.
        slots:
          project_id: path.project_id
          name: requestBody.name
      - text: Set the status of project {project_id} to {status}.
        slots:
          project_id: path.project_id
          status: requestBody.status
      method: generated
      generated: '2026-09-26'