# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Things Stack — Identity Server User Access API version: 1.0.0 extends: openapi/the-things-network-user-access-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: 7 - target: $.paths['/users/{user_ids.user_id}/api-keys'].get update: x-apievangelist-phrasing: intent: List a user's API keys effect: read questions: - Which personal API keys have I created on The Things Stack? - Can I page through a user's API keys in a given order? instructions: - text: List the API keys of user {user_id}. slots: user_id: path.user_ids.user_id - text: Show {limit} personal keys per page for user {user_id}. slots: limit: query.limit user_id: path.user_ids.user_id method: generated generated: '2026-10-01' - target: $.paths['/users/{user_ids.user_id}/api-keys'].post update: x-apievangelist-phrasing: intent: Create a personal user API key effect: write questions: - How do I create a personal API key that can reach all my apps, gateways and organizations? - Can I set rights and an expiry on a user-level API key? instructions: - text: Create an API key named {name} for user {user_id}. slots: name: requestBody.name user_id: path.user_ids.user_id - text: Create a key for user {user_id} with rights {rights} expiring {expires_at}. slots: user_id: path.user_ids.user_id rights: requestBody.rights expires_at: requestBody.expires_at method: generated generated: '2026-10-01' - target: $.paths['/users/{user_ids.user_id}/api-keys/{api_key.id}'].put update: x-apievangelist-phrasing: intent: Change the rights of a user API key effect: write questions: - Can I change the rights on one of my personal API keys? - What happens if I update a user key to have no rights? instructions: - text: Update rights on key {key_id} of user {user_id}. slots: key_id: path.api_key.id user_id: path.user_ids.user_id - text: Strip every right from user {user_id}'s key {key_id} so it is deleted. slots: user_id: path.user_ids.user_id key_id: path.api_key.id method: generated generated: '2026-10-01' - target: $.paths['/users/{user_ids.user_id}/api-keys/{key_id}'].get update: x-apievangelist-phrasing: intent: Get one user API key effect: read questions: - What rights does one of my personal API keys have? - Can I look up a single user key by its ID? instructions: - text: Show API key {key_id} of user {user_id}. slots: key_id: path.key_id user_id: path.user_ids.user_id - text: Check the rights and expiry of user {user_id}'s key {key_id}. slots: user_id: path.user_ids.user_id key_id: path.key_id method: generated generated: '2026-10-01' - target: $.paths['/users/{user_ids.user_id}/api-keys/{key_id}'].delete update: x-apievangelist-phrasing: intent: Delete a user API key effect: destructive questions: - How do I revoke one of my personal API keys? - Is deleting a user API key permanent? instructions: - text: Delete API key {key_id} from user {user_id}. slots: key_id: path.key_id user_id: path.user_ids.user_id - text: Revoke user {user_id}'s key {key_id} now. slots: user_id: path.user_ids.user_id key_id: path.key_id method: generated generated: '2026-10-01' - target: $.paths['/users/{user_ids.user_id}/login-tokens'].post update: x-apievangelist-phrasing: intent: Create a one-time login token for a user effect: write questions: - Can an admin generate a one-time login link for a user? - Is it possible to create a login token without emailing it to the user? instructions: - text: Create a one-time login token for user {user_id}. slots: user_id: path.user_ids.user_id - text: 'Issue a login token for user {user_id} and skip the email: {skip_email}.' slots: user_id: path.user_ids.user_id skip_email: query.skip_email method: generated generated: '2026-10-01' - target: $.paths['/users/{user_id}/rights'].get update: x-apievangelist-phrasing: intent: List my rights on a user effect: read questions: - What rights do my credentials give me on this user account? - Can I check whether my key may manage a given user? instructions: - text: List the rights I hold on user {user_id}. slots: user_id: path.user_id - text: Check my permissions on user account {user_id}. slots: user_id: path.user_id method: generated generated: '2026-10-01'