# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for X API v2 Bots API version: 1.0.0 extends: openapi/x-bots-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['/2/bots'].get update: x-apievangelist-phrasing: intent: List bots in my project effect: read questions: - Which bot accounts exist in my app's project? - How can I see all the bots I've created? instructions: - text: List all my project's bot accounts. - text: Show my bots with user fields {user_fields}. slots: user_fields: query.user.fields method: generated generated: '2026-09-26' - target: $.paths['/2/bots'].post update: x-apievangelist-phrasing: intent: Create a bot account effect: write questions: - How do I create a bot account and get its bearer token? - Is it safe to retry bot creation with the same handle if the response was lost? instructions: - text: Create a bot with handle {handle}. slots: handle: requestBody.handle - text: Create bot {handle} named {display_name} with scopes {scopes}. slots: handle: requestBody.handle display_name: requestBody.display_name scopes: requestBody.scopes method: generated generated: '2026-09-26' - target: $.paths['/2/bots/{id}'].put update: x-apievangelist-phrasing: intent: Update a bot's handle, name or DM permission effect: write questions: - Can I rename an existing bot or change its handle? - How do I control who is allowed to DM my bot? instructions: - text: Rename bot {id} to display name {display_name}. slots: id: path.id display_name: requestBody.display_name - text: Set DM permission on bot {id} to {dm_permission}. slots: id: path.id dm_permission: requestBody.dm_permission - text: Change bot {id}'s handle to {handle}. slots: id: path.id handle: requestBody.handle method: generated generated: '2026-09-26' - target: $.paths['/2/bots/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a bot account effect: destructive questions: - What's needed to permanently remove a bot from my project? - What's the call to delete a bot account? instructions: - text: Delete bot {id}. slots: id: path.id - text: Remove the bot account {id} from my project. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/2/bots/{id}/token'].post update: x-apievangelist-phrasing: intent: Rotate a bot's bearer token effect: write questions: - How do I issue a fresh bearer token for my bot? - Can I change the scopes when rotating a bot token? instructions: - text: Rotate the bearer token for bot {id}. slots: id: path.id - text: Mint a new token for bot {id} with scopes {scopes}. slots: id: path.id scopes: requestBody.scopes method: generated generated: '2026-09-26' - target: $.paths['/2/bots/{id}/token'].delete update: x-apievangelist-phrasing: intent: Revoke a bot's bearer token effect: destructive questions: - How do I kill a leaked bot token without deleting the bot? - Can I revoke a bot's token so it can no longer call the API? instructions: - text: Revoke the token for bot {id}. slots: id: path.id - text: Invalidate bot {id}'s current bearer token without issuing a new one. slots: id: path.id method: generated generated: '2026-09-26'