# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Snapchat Login Kit OAuth API version: 1.0.0 extends: openapi/snapchat-oauth-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: 2 - target: $.paths['/accounts/oauth2/auth'].get update: x-apievangelist-phrasing: intent: Start Snapchat login and request user consent effect: read questions: - How do I send a user to Snapchat to log in and approve my app? - Which scopes can I ask for when users sign in with Snapchat? - Can I pass a state value to protect the Login Kit redirect from CSRF? instructions: - text: Build the Snapchat login URL for client {client_id} redirecting to {redirect_uri} with scopes {scope}. slots: client_id: query.client_id redirect_uri: query.redirect_uri scope: query.scope - text: Start the authorization code flow for client {client_id} with response type {response_type} and state {state}. slots: client_id: query.client_id response_type: query.response_type state: query.state method: generated generated: '2026-10-01' - target: $.paths['/login/oauth2/access_token'].post update: x-apievangelist-phrasing: intent: Exchange an auth code or refresh an access token effect: write questions: - How do I turn the Snapchat authorization code into an access token? - What do I do when my Login Kit access token expires after an hour? - Does the token endpoint also give me a refresh token? instructions: - text: Exchange authorization code {code} for tokens using client {client_id}, secret {client_secret} and redirect {redirect_uri}. slots: code: requestBody.code client_id: requestBody.client_id client_secret: requestBody.client_secret redirect_uri: requestBody.redirect_uri - text: Refresh the expired access token with refresh token {refresh_token} for client {client_id} and secret {client_secret}. slots: refresh_token: requestBody.refresh_token client_id: requestBody.client_id client_secret: requestBody.client_secret - text: Request new tokens with grant type {grant_type} for my app {client_id}. slots: grant_type: requestBody.grant_type client_id: requestBody.client_id method: generated generated: '2026-10-01'