Skip to main content
import { useStytch } from '@stytch/react-native';
import { useEffect } from 'react';

const OAuthAttach = ({ provider }) => {
const stytch = useStytch();

useEffect(() => {
  if (provider) {
    stytch.oauth.attach(provider).then((resp) => {
      // Pass resp.oauth_attach_token into OAuth Start method
      if (provider === 'microsoft') {
        stytch.oauth.microsoft.start({
          oauth_attach_token: resp.oauth_attach_token,
        });
      }
    });
  }
}, [stytch, provider]);
};

export default OAuthAttach;
{
    "status_code": 200,
    "request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
    "oauth_attach_token": "...",
}
The attach method wraps the attach OAuth API endpoint and generates an OAuth Attach Token to pre-associate an OAuth flow with an existing Stytch User. You must have an active Stytch session to use this endpoint. 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

Parameters

provider
string
required
The OAuth provider’s name.

Response

oauth_attach_token
string
A single-use token for connecting the Stytch User selection from an OAuth Attach request to the corresponding OAuth Start request.
request_id
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.
status_code
number
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.