OpenAI · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for OpenAI Roles API

9 actions 9 updates phrasing extends openapi/openai-roles-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for OpenAI's API. It is a proposal applied on top of the contract, not a document OpenAI publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 9

$.info
$.paths['/organization/roles'].get
$.paths['/organization/roles'].post
$.paths['/organization/roles/{role_id}'].post
$.paths['/organization/roles/{role_id}'].delete
$.paths['/projects/{project_id}/roles'].get
$.paths['/projects/{project_id}/roles'].post
$.paths['/projects/{project_id}/roles/{role_id}'].post
$.paths['/projects/{project_id}/roles/{role_id}'].delete

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 OpenAI Roles API
  version: 1.0.0
extends: openapi/openai-roles-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: 8
- target: $.paths['/organization/roles'].get
  update:
    x-apievangelist-phrasing:
      intent: List the organization's roles
      effect: read
      questions:
      - Which roles are configured at the organization level?
      - Can I see the custom organization roles we've defined?
      instructions:
      - text: List the organization roles.
      - text: Show {limit} organization-wide roles ordered {order}.
        slots:
          limit: query.limit
          order: query.order
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organization/roles'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a custom organization role
      effect: write
      questions:
      - How do I define a custom role for my whole organization?
      - Which permissions can I bundle into a new organization role?
      instructions:
      - text: Create an organization role {role_name} with permissions {permissions}.
        slots:
          role_name: requestBody.role_name
          permissions: requestBody.permissions
      - text: Add org-wide role {role_name} granting {permissions}, described as {description}.
        slots:
          role_name: requestBody.role_name
          permissions: requestBody.permissions
          description: requestBody.description
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organization/roles/{role_id}'].post
  update:
    x-apievangelist-phrasing:
      intent: Update an organization role
      effect: write
      questions:
      - Can I change the permissions on an existing organization role?
      - Is it possible to rename a custom role at the org level?
      instructions:
      - text: Set organization role {role_id}'s permissions to {permissions}.
        slots:
          role_id: path.role_id
          permissions: requestBody.permissions
      - text: Rename organization role {role_id} to {role_name}.
        slots:
          role_id: path.role_id
          role_name: requestBody.role_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organization/roles/{role_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a custom organization role
      effect: destructive
      questions:
      - How do I remove a custom role from the organization?
      - Can I delete an organization role we no longer use?
      instructions:
      - text: Delete organization role {role_id}.
        slots:
          role_id: path.role_id
      - text: Remove custom org role {role_id}.
        slots:
          role_id: path.role_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/roles'].get
  update:
    x-apievangelist-phrasing:
      intent: List the roles in a project
      effect: read
      questions:
      - Which roles are defined inside a particular project?
      - Can I see the custom roles available in one project?
      instructions:
      - text: List the roles in project {project_id}.
        slots:
          project_id: path.project_id
      - text: Show {limit} roles configured for project {project_id}.
        slots:
          limit: query.limit
          project_id: path.project_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/roles'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a custom role in a project
      effect: write
      questions:
      - How do I create a role that only applies within one project?
      - Can a project have its own custom set of permissions?
      instructions:
      - text: Create role {role_name} in project {project_id} with permissions {permissions}.
        slots:
          role_name: requestBody.role_name
          project_id: path.project_id
          permissions: requestBody.permissions
      - text: Add a project-scoped role {role_name} to {project_id} granting {permissions}.
        slots:
          role_name: requestBody.role_name
          project_id: path.project_id
          permissions: requestBody.permissions
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/roles/{role_id}'].post
  update:
    x-apievangelist-phrasing:
      intent: Update a role in a project
      effect: write
      questions:
      - Can I change what a project-level role is allowed to do?
      - Is it possible to rename a role inside a project?
      instructions:
      - text: Set role {role_id} in project {project_id} to permissions {permissions}.
        slots:
          role_id: path.role_id
          project_id: path.project_id
          permissions: requestBody.permissions
      - text: Rename project {project_id}'s role {role_id} to {role_name}.
        slots:
          project_id: path.project_id
          role_id: path.role_id
          role_name: requestBody.role_name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{project_id}/roles/{role_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a custom role from a project
      effect: destructive
      questions:
      - How do I delete a custom role from a single project?
      - Can I remove a project role that nobody uses anymore?
      instructions:
      - text: Delete role {role_id} from project {project_id}.
        slots:
          role_id: path.role_id
          project_id: path.project_id
      - text: Remove project {project_id}'s custom role {role_id}.
        slots:
          project_id: path.project_id
          role_id: path.role_id
      method: generated
      generated: '2026-09-26'

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/openai-roles-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.