Progress Software · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Chef Automate API Documentation Policies API
11 actions
11 updates
phrasing
extends
openapi/progress-software-policies-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.
What the actions change
x-apievangelist-phrasing
Targets 11
$.info
$.paths['/apis/iam/v2/policies'].get
$.paths['/apis/iam/v2/policies'].post
$.paths['/apis/iam/v2/policies/{id}'].get
$.paths['/apis/iam/v2/policies/{id}'].put
$.paths['/apis/iam/v2/policies/{id}'].delete
$.paths['/apis/iam/v2/policies/{id}/members'].get
$.paths['/apis/iam/v2/policies/{id}/members'].put
$.paths['/apis/iam/v2/policies/{id}/members:add'].post
$.paths['/apis/iam/v2/policies/{id}/members:remove'].post
$.paths['/apis/iam/v2/policy_version'].get
OpenAPI Overlay
# 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 Policies API
version: 1.0.0
extends: openapi/progress-software-policies-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: 10
- target: $.paths['/apis/iam/v2/policies'].get
update:
x-apievangelist-phrasing:
intent: List IAM policies
effect: read
questions:
- Which IAM policies exist in my Chef Automate install?
- Can I see both custom and Chef-managed access policies in one list?
instructions:
- text: List all IAM policies.
- text: Show every access policy defined in Automate.
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies'].post
update:
x-apievangelist-phrasing:
intent: Create a custom IAM policy
effect: write
questions:
- How do I create a policy that grants a team a role on specific projects?
- Can a new policy's statement be scoped to every project at once?
instructions:
- text: Create policy {id} named {name} with statements {statements}.
slots:
id: requestBody.id
name: requestBody.name
statements: requestBody.statements
- text: Create custom policy {id} called {name} granting {statements} to members {members}.
slots:
id: requestBody.id
name: requestBody.name
statements: requestBody.statements
members: requestBody.members
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get one IAM policy
effect: read
questions:
- What statements and members are on a specific policy?
- Can I look up a single access policy by its ID?
instructions:
- text: Get IAM policy {id}.
slots:
id: path.id
- text: Show the statements, members and projects of policy {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies/{id}'].put
update:
x-apievangelist-phrasing:
intent: Overwrite a custom IAM policy
effect: write
questions:
- How do I change the statements on an existing custom policy?
- Does updating a policy reset any fields I leave out of the request?
instructions:
- text: Overwrite policy {id} with name {name} and statements {statements}.
slots:
id: path.id
name: requestBody.name
statements: requestBody.statements
- text: Replace the full definition of policy {id}, setting name {name}, statements {statements} and projects {projects}.
slots:
id: path.id
name: requestBody.name
statements: requestBody.statements
projects: requestBody.projects
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a custom IAM policy
effect: destructive
questions:
- How do I delete a custom access policy?
- Can Chef-managed policies be deleted, or only custom ones?
instructions:
- text: Delete custom policy {id}.
slots:
id: path.id
- text: Remove IAM policy {id} permanently.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies/{id}/members'].get
update:
x-apievangelist-phrasing:
intent: List the members of a policy
effect: read
questions:
- Which users, teams and tokens are members of a given policy?
- Who is granted access through a particular policy?
instructions:
- text: List the members of policy {id}.
slots:
id: path.id
- text: Show who belongs to policy {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies/{id}/members'].put
update:
x-apievangelist-phrasing:
intent: Replace a policy's entire member list
effect: write
questions:
- How do I swap out the whole member list of a policy in one call?
- What format do member expressions need when I replace a policy's members?
instructions:
- text: Replace all members of policy {id} with {members}.
slots:
id: path.id
members: requestBody.members
- text: Set the member list of policy {id} to exactly {members}, dropping anyone else.
slots:
id: path.id
members: requestBody.members
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies/{id}/members:add'].post
update:
x-apievangelist-phrasing:
intent: Add members to a policy
effect: write
questions:
- How do I grant a new team access by adding it to an existing policy?
- Can I add members to a Chef-managed policy like Administrator?
instructions:
- text: Add members {members} to policy {id}.
slots:
members: requestBody.members
id: path.id
- text: Grant policy {id} to the additional members {members}, keeping current ones.
slots:
id: path.id
members: requestBody.members
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policies/{id}/members:remove'].post
update:
x-apievangelist-phrasing:
intent: Remove members from a policy
effect: write
questions:
- How do I revoke a user's access granted through a specific policy?
- What happens if I remove a member who isn't on the policy?
instructions:
- text: Remove members {members} from policy {id}.
slots:
members: requestBody.members
id: path.id
- text: Take {members} off the member list of policy {id}.
slots:
members: requestBody.members
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/apis/iam/v2/policy_version'].get
update:
x-apievangelist-phrasing:
intent: Get the IAM version Automate is running
effect: read
questions:
- Which IAM version is my Automate installation running?
- Is my Automate on IAM v2?
instructions:
- text: Get the IAM major and minor version.
- text: Tell me which IAM version this Automate install uses.
method: generated
generated: '2026-10-01'
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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/progress-software-policies-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.