Skip to main content
import { useEffect } from 'react';
import { useSearchParams } from 'react-router';
import { useStytchB2BClient } from '@stytch/react/b2b';

export const DiscoveryAuthenticate = () => {
  const stytch = useStytchB2BClient();
  const [searchParams] = useSearchParams();

  useEffect(() => {
    const token = searchParams.get('token');
    if (token) {
      stytch.oauth.google.discovery.authenticate({
        discovery_oauth_token: token,
      });
    }
  }, [stytch, searchParams]);

  return <div>Authenticating...</div>;
};
oauth.$provider.discovery.authenticate() wraps the Authenticate Discovery OAuth API endpoint which validates the OAuth token passed in. If this method succeeds, the token will be stored in the browser as a cookie. Use one of the following methods to authenticate a Discovery OAuth token:
  • oauth.google.discovery.authenticate()
  • oauth.microsoft.discovery.authenticate()
  • oauth.hubspot.discovery.authenticate()
  • oauth.slack.discovery.authenticate()
  • oauth.github.discovery.authenticate()

Parameters

discovery_oauth_token
string
required
The Discovery OAuth token to authenticate.