# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for One OAuth Clients API version: 1.0.0 extends: openapi/integration-os-oauth-clients-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: 13 - target: $.paths['/v1/oauth-clients'].get update: x-apievangelist-phrasing: intent: List the OAuth clients I've registered effect: read questions: - Which OAuth client applications have I registered so far? - Can I page through my registered OAuth clients? instructions: - text: List my registered OAuth clients. - text: Show page {page} of my OAuth client registrations. slots: page: query.page method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients'].post update: x-apievangelist-phrasing: intent: Register a new OAuth client app effect: write questions: - How do I register an app so it can request OAuth access on behalf of users? - Can I choose the access-token lifetime when I register a new OAuth client? - What redirect URIs and client type must a new OAuth app declare? instructions: - text: Register a {clientType} OAuth client named {name} redirecting to {redirectUris}. slots: clientType: requestBody.clientType name: requestBody.name redirectUris: requestBody.redirectUris - text: Create OAuth app {name} ({clientType}) with redirects {redirectUris} and token lifetime {accessTokenTtl} seconds. slots: name: requestBody.name clientType: requestBody.clientType redirectUris: requestBody.redirectUris accessTokenTtl: requestBody.accessTokenTtl method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}'].get update: x-apievangelist-phrasing: intent: Get an OAuth client's settings effect: read questions: - What redirect URIs and token lifetime are configured on one of my OAuth clients? - Can I look up a registered OAuth app by its public client ID? instructions: - text: Get OAuth client {client_id}. slots: client_id: path.client_id - text: Show the registration settings of OAuth app {client_id}. slots: client_id: path.client_id method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}'].delete update: x-apievangelist-phrasing: intent: Delete a registered OAuth client effect: destructive questions: - How do I delete an OAuth client app I no longer use? - Can I unregister an OAuth app completely rather than just deactivating it? instructions: - text: Delete OAuth client {client_id}. slots: client_id: path.client_id - text: Unregister OAuth app {client_id} permanently. slots: client_id: path.client_id method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}'].patch update: x-apievangelist-phrasing: intent: Update an OAuth client's settings effect: write questions: - Can I change the redirect URIs on an OAuth app I already registered? - How do I deactivate an OAuth client without deleting it? instructions: - text: Set the redirect URIs of OAuth client {client_id} to {redirectUris}. slots: client_id: path.client_id redirectUris: requestBody.redirectUris - text: Mark OAuth app {client_id} active = {isActive}. slots: client_id: path.client_id isActive: requestBody.isActive method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/permission-sets'].get update: x-apievangelist-phrasing: intent: List an OAuth client's permission sets effect: read questions: - Which permission sets are defined for one of my OAuth clients? - Can I see every connector grant bundle an OAuth app offers? instructions: - text: List the permission sets on OAuth client {client_id}. slots: client_id: path.client_id - text: Show page {page} of OAuth app {client_id}'s permission sets. slots: page: query.page client_id: path.client_id method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/permission-sets'].post update: x-apievangelist-phrasing: intent: Create a permission set for an OAuth client effect: write questions: - How do I define which connectors an OAuth app may request access to? - What happens if I create a permission set without any connector rules? instructions: - text: Create permission set {name} on OAuth client {client_id}. slots: name: requestBody.name client_id: path.client_id - text: Add a permission set {name} to app {client_id} granting connectors {connectorRules}. slots: name: requestBody.name client_id: path.client_id connectorRules: requestBody.connectorRules method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/permission-sets/{id}'].get update: x-apievangelist-phrasing: intent: Get one permission set of an OAuth client effect: read questions: - Which connectors does a particular permission set grant? - Can I fetch a single permission set by ID for an OAuth client? instructions: - text: Get permission set {id} on OAuth client {client_id}. slots: id: path.id client_id: path.client_id - text: Show the connector rules in set {id} for app {client_id}. slots: id: path.id client_id: path.client_id method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/permission-sets/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a permission set from an OAuth client effect: destructive questions: - How do I remove a permission set an OAuth app no longer needs? - Can I delete one connector grant bundle without affecting the client's others? instructions: - text: Delete permission set {id} from OAuth client {client_id}. slots: id: path.id client_id: path.client_id - text: Remove the permission set {id} on app {client_id}. slots: id: path.id client_id: path.client_id method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/permission-sets/{id}'].patch update: x-apievangelist-phrasing: intent: Change a permission set's connectors effect: write questions: - Can I change which connectors an existing permission set grants? - How do I rename a permission set on an OAuth client? instructions: - text: Rename permission set {id} on OAuth client {client_id} to {name}. slots: id: path.id client_id: path.client_id name: requestBody.name - text: Update set {id} of app {client_id}, named {name}, to grant {connectorRules}. slots: id: path.id client_id: path.client_id name: requestBody.name connectorRules: requestBody.connectorRules method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/secret'].post update: x-apievangelist-phrasing: intent: Regenerate an OAuth client's secret effect: destructive questions: - How do I rotate the client secret on an OAuth app if it has leaked? - Does generating a new client secret invalidate the old one? instructions: - text: Regenerate the client secret for OAuth client {client_id}. slots: client_id: path.client_id - text: Rotate app {client_id}'s secret and give me the new value. slots: client_id: path.client_id method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/users'].get update: x-apievangelist-phrasing: intent: List users who authorized an OAuth client effect: read questions: - Which users have granted access to one of my OAuth apps? - Can I page through everyone who authorized a given OAuth client? instructions: - text: List the users who authorized OAuth client {client_id}. slots: client_id: path.client_id - text: Show page {page} of app {client_id}'s authorized users. slots: page: query.page client_id: path.client_id method: generated generated: '2026-10-01' - target: $.paths['/v1/oauth-clients/{client_id}/users/{user_id}'].delete update: x-apievangelist-phrasing: intent: Revoke one user's access to an OAuth client effect: destructive questions: - How do I cut off a single user's access to my OAuth app? - Can I revoke one person's authorization without affecting other users of the client? instructions: - text: Revoke user {user_id}'s access to OAuth client {client_id}. slots: user_id: path.user_id client_id: path.client_id - text: Remove {user_id} from the authorized users of app {client_id}. slots: user_id: path.user_id client_id: path.client_id method: generated generated: '2026-10-01'