Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Optimizely Feature Experimentation Rules API

5 actions 5 updates phrasing extends openapi/optimizely-rules-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 5

$.info
$.paths['/projects/{project_id}/environments/{environment_key}/rule/{rule_key}/holdouts'].get
$.paths['/projects/{project_id}/flags/{flag_key}/environments/{environment_key}/rules/{rule_key}'].get
$.paths['/projects/{project_id}/rules'].get
$.paths['/projects/{project_id}/rules/{experiment_id}'].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 Optimizely Feature Experimentation Rules API
  version: 1.0.0
extends: openapi/optimizely-rules-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: 4
- target: $.paths['/projects/{project_id}/environments/{environment_key}/rule/{rule_key}/holdouts'].get
  update:
    x-apievangelist-phrasing:
      intent: List holdouts applied to a rule
      effect: read
      questions:
      - Which holdouts are excluding traffic from a given rule in an environment?
      - Can I see the holdouts attached to one rule key?
      instructions:
      - text: List holdouts for rule {rule_key} in environment {environment_key} of project {project_id}.
        slots:
          rule_key: path.rule_key
          environment_key: path.environment_key
          project_id: path.project_id
      - text: Show which holdouts apply to rule {rule_key} in {environment_key} for project {project_id}.
        slots:
          rule_key: path.rule_key
          environment_key: path.environment_key
          project_id: path.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/flags/{flag_key}/environments/{environment_key}/rules/{rule_key}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a flag's rule in an environment
      effect: read
      questions:
      - How do I see the configuration of one rule on a feature flag in production?
      - What does a flag rule's setup look like in a specific environment?
      instructions:
      - text: Get rule {rule_key} of flag {flag_key} in environment {environment_key} for project {project_id}.
        slots:
          rule_key: path.rule_key
          flag_key: path.flag_key
          environment_key: path.environment_key
          project_id: path.project_id
      - text: Show how flag {flag_key} rule {rule_key} is configured in {environment_key} on project {project_id}.
        slots:
          flag_key: path.flag_key
          rule_key: path.rule_key
          environment_key: path.environment_key
          project_id: path.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/rules'].get
  update:
    x-apievangelist-phrasing:
      intent: List rules across a project
      effect: read
      questions:
      - How can I list every rule in my Optimizely project?
      - Can I filter a project's rules to only A/B tests running in production?
      - Are archived rules included when I list a project's rules?
      instructions:
      - text: List all rules in project {project_id}.
        slots:
          project_id: path.project_id
      - text: List {rule_types} rules in project {project_id} for environment {environments}.
        slots:
          rule_types: query.rule_types
          project_id: path.project_id
          environments: query.environments
      - text: Show archived rules in project {project_id}.
        slots:
          project_id: path.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/rules/{experiment_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Find the rule behind an experiment id
      effect: read
      questions:
      - Which rule corresponds to a given experiment id?
      - Can I look up a rule when I only know the experiment id?
      instructions:
      - text: Get the rule for experiment {experiment_id} in project {project_id}.
        slots:
          experiment_id: path.experiment_id
          project_id: path.project_id
      - text: Find which rule experiment {experiment_id} belongs to in project {project_id}.
        slots:
          experiment_id: path.experiment_id
          project_id: path.project_id
      method: generated
      generated: '2026-09-26'