# 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'