Progress Software · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Chef Automate API Documentation Roles API

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

What the actions change

x-apievangelist-phrasing

Targets 6

$.info
$.paths['/apis/iam/v2/roles'].get
$.paths['/apis/iam/v2/roles'].post
$.paths['/apis/iam/v2/roles/{id}'].get
$.paths['/apis/iam/v2/roles/{id}'].put
$.paths['/apis/iam/v2/roles/{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 Chef Automate API Documentation Roles API
  version: 1.0.0
extends: openapi/progress-software-roles-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 5
- target: $.paths['/apis/iam/v2/roles'].get
  update:
    x-apievangelist-phrasing:
      intent: List IAM roles
      effect: read
      questions:
      - Which roles exist in Chef Automate, both built-in and custom?
      - What roles can I reference in a policy statement?
      instructions:
      - text: List all IAM roles.
      - text: Show every Chef-managed and custom role.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/roles'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a custom IAM role
      effect: write
      questions:
      - How do I define a custom role with a specific set of actions?
      - Can a new role be limited to certain projects?
      instructions:
      - text: Create role {id} named {name} with actions {actions}.
        slots:
          id: requestBody.id
          name: requestBody.name
          actions: requestBody.actions
      - text: Create custom role {id} called {name} allowing {actions} in projects {projects}.
        slots:
          id: requestBody.id
          name: requestBody.name
          actions: requestBody.actions
          projects: requestBody.projects
      method: generated
      generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/roles/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one IAM role
      effect: read
      questions:
      - What actions does a particular role grant?
      - Is a given role Chef-managed or custom?
      instructions:
      - text: Show role {id}.
        slots:
          id: path.id
      - text: Get the actions granted by role {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/roles/{id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a custom role's actions or name
      effect: write
      questions:
      - How do I change the actions a custom role allows?
      - Will fields I leave out be wiped when I update a role?
      instructions:
      - text: Update role {id} to name {name} with actions {actions}.
        slots:
          id: path.id
          name: requestBody.name
          actions: requestBody.actions
      - text: Change the actions on custom role {id} to {actions}.
        slots:
          id: path.id
          actions: requestBody.actions
      method: generated
      generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/roles/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a custom IAM role
      effect: destructive
      questions:
      - How do I delete a custom role I created?
      - What happens to policy statements that used a role I delete?
      instructions:
      - text: Delete custom role {id}.
        slots:
          id: path.id
      - text: Remove role {id} and drop it from any policy statements.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-01'