Amazon Lex · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Amazon Lex Model Building V2 Policy API
7 actions
7 updates
phrasing
extends
openapi/amazon-lex-policy-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Amazon Lex's API. It is a proposal applied on top of the contract, not a document Amazon Lex publishes.
What the actions change
x-apievangelist-phrasing
Targets 7
$.info
$.paths['/policy/{resourceArn}'].get
$.paths['/policy/{resourceArn}'].put
$.paths['/policy/{resourceArn}'].post
$.paths['/policy/{resourceArn}'].delete
$.paths['/policy/{resourceArn}/statements'].post
$.paths['/policy/{resourceArn}/statements/{statementId}'].delete
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 Amazon Lex Model Building V2 Policy API
version: 1.0.0
extends: openapi/amazon-lex-policy-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: 6
- target: $.paths['/policy/{resourceArn}'].get
update:
x-apievangelist-phrasing:
intent: Get a bot's resource policy
effect: read
questions:
- What resource policy is attached to my bot or bot alias?
- Which revision is the current resource policy on a bot at?
instructions:
- text: Show the resource policy for {resourceArn}.
slots:
resourceArn: path.resourceArn
- text: Get the policy document and revision ID attached to {resourceArn}.
slots:
resourceArn: path.resourceArn
method: generated
generated: '2026-09-26'
- target: $.paths['/policy/{resourceArn}'].put
update:
x-apievangelist-phrasing:
intent: Replace a bot's resource policy
effect: write
questions:
- How do I replace the whole resource policy on a bot alias with a new document?
- Can I guard a policy replacement so it fails if someone changed it since I read it?
instructions:
- text: Replace the resource policy on {resourceArn} with {policy}.
slots:
resourceArn: path.resourceArn
policy: requestBody.policy
- text: Overwrite the policy on {resourceArn} with {policy} only if the current revision is {expectedRevisionId}.
slots:
resourceArn: path.resourceArn
policy: requestBody.policy
expectedRevisionId: query.expectedRevisionId
method: generated
generated: '2026-09-26'
- target: $.paths['/policy/{resourceArn}'].post
update:
x-apievangelist-phrasing:
intent: Attach a new resource policy to a bot
effect: write
questions:
- How do I attach a resource policy to a bot that doesn't have one yet?
- Can I let another account access my bot with a new resource-based policy?
instructions:
- text: Create a resource policy {policy} on {resourceArn}.
slots:
policy: requestBody.policy
resourceArn: path.resourceArn
- text: Attach a brand-new policy to bot resource {resourceArn} using {policy}.
slots:
resourceArn: path.resourceArn
policy: requestBody.policy
method: generated
generated: '2026-09-26'
- target: $.paths['/policy/{resourceArn}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a bot's resource policy
effect: destructive
questions:
- How do I remove the entire resource policy from a bot or alias?
- What happens if I delete a policy from a bot that has none attached?
instructions:
- text: Delete the resource policy on {resourceArn}.
slots:
resourceArn: path.resourceArn
- text: Remove the whole policy from {resourceArn} if its revision is still {expectedRevisionId}.
slots:
resourceArn: path.resourceArn
expectedRevisionId: query.expectedRevisionId
method: generated
generated: '2026-09-26'
- target: $.paths['/policy/{resourceArn}/statements'].post
update:
x-apievangelist-phrasing:
intent: Add a statement to a bot's resource policy
effect: write
questions:
- Can I grant one principal access to my bot by adding a single policy statement?
- Does adding a statement create a policy if the bot doesn't have one?
instructions:
- text: Add statement {statementId} to the policy on {resourceArn} to {effect} {action} for {principal}.
slots:
statementId: requestBody.statementId
resourceArn: path.resourceArn
effect: requestBody.effect
action: requestBody.action
principal: requestBody.principal
- text: 'Append policy statement {statementId} on {resourceArn}: {effect} {action} for {principal} when {condition}.'
slots:
statementId: requestBody.statementId
resourceArn: path.resourceArn
effect: requestBody.effect
action: requestBody.action
principal: requestBody.principal
condition: requestBody.condition
method: generated
generated: '2026-09-26'
- target: $.paths['/policy/{resourceArn}/statements/{statementId}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one statement from a bot's policy
effect: destructive
questions:
- How do I revoke one principal's access by deleting a single policy statement?
- Is the policy deleted if I remove its last statement?
instructions:
- text: Delete statement {statementId} from the policy on {resourceArn}.
slots:
statementId: path.statementId
resourceArn: path.resourceArn
- text: Remove policy statement {statementId} on {resourceArn} at revision {expectedRevisionId}.
slots:
statementId: path.statementId
resourceArn: path.resourceArn
expectedRevisionId: query.expectedRevisionId
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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/amazon-lex-policy-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.