class Stytch::OAuth
def attach(
The HTTP status code of the response. Stytch follows standard HTTP response status code patterns, e.g. 2XX values equate to success, 3XX values are redirects, 4XX are client errors, and 5XX are server errors.
status_code::
The type of this field is +String+.
A single-use token for connecting the Stytch User selection from an OAuth Attach request to the corresponding OAuth Start request.
oauth_attach_token::
The type of this field is +String+.
Globally unique UUID that is returned with every API call. This value is important to log for debugging purposes; we may ask for this value to help identify a specific API call when helping you debug an issue.
request_id::
An object with the following fields:
== Returns:
The type of this field is nilable +String+.
The `session_jwt` associated with a User's existing Session.
session_jwt::
The type of this field is nilable +String+.
The `session_token` associated with a User's existing Session.
session_token::
The type of this field is nilable +String+.
The unique ID of a specific User.
user_id::
The type of this field is +String+.
The OAuth provider's name.
provider::
== Parameters:
This is an optional step in the OAuth flow. Stytch can often determine whether to create a new user or log in an existing one based on verified identity provider information. This endpoint is useful for cases where we can't, such as missing or unverified provider information.
Exactly one of `user_id`, `session_token`, or `session_jwt` must be provided to identify the target Stytch User.
Generate an OAuth Attach Token to pre-associate an OAuth flow with an existing Stytch User. Pass the returned `oauth_attach_token` to the same provider's OAuth Start endpoint to treat this OAuth flow as a login for that user instead of a signup for a new user.
def attach( provider:, user_id: nil, session_token: nil, session_jwt: nil ) headers = {} request = { provider: provider } request[:user_id] = user_id unless user_id.nil? request[:session_token] = session_token unless session_token.nil? request[:session_jwt] = session_jwt unless session_jwt.nil? post_request('/v1/oauth/attach', request, headers) end