Docs

AuthenticateWith

These are all methods on the SignIn class that allow you to authenticate with different methods.

Methods

authenticateWithRedirect()

Signs in users via OAuth. This is commonly known as Single Sign On (SSO), where an external account is used for verifying the user's identity.

function authenticateWithRedirect(params: AuthenticateWithRedirectParams): Promise<void>;

AuthenticateWithRedirectParams

  • Name
    strategy
    Type
    OAuthStrategy | 'saml'
    Description

    The strategy corresponding to the OAuth provider. For example: oauth_facebook, oauth_github, etc.

  • Name
    redirectUrl (deprecated)
    Type
    string
    Description

    The URL that the OAuth provider should redirect to, on successful authorization on their part. signInFallbackRedirectUrl has priority over the legacy redirectUrl. Use fallbackRedirectUrl or forceRedirectUrl instead of redirectUrl.

  • Name
    redirectUrlComplete
    Type
    string
    Description

    The URL that the user will be redirected to, after successful authorization from the OAuth provider and Clerk sign in.

authenticateWithMetamask()

Starts a sign-in flow that uses the Metamask browser extension to authenticate the user using their public wallet address.

function authenticateWithMetamask(): Promise<SignInResource>;

authenticateWithMetamask() returns

TypeDescription
Promise<SignInResource>A Promise which resolves to the current SignIn.

authenticateWithWeb3()

Starts a sign-in flow that authenticates the user against their public wallet address.

function authenticateWithWeb3(params: AuthenticateWithWeb3Params): Promise<SignInResource>;

AuthenticateWithWeb3Params

  • Name
    identifier
    Type
    string
    Description

    The user's Web3 ID.

  • Name
    generateSignature
    Type
    (opts: GenerateSignatureParams) => Promise<string>
    Description

    The method of how to generate the signature for the Web3 sign-in. See GenerateSignatureParams for more details.

GenerateSignatureParams
  • Name
    identifier
    Type
    string
    Description

    The user's Web3 ID.

  • Name
    nonce
    Type
    string
    Description

    The cryptographic nonce used in the sign-in.

authenticateWithWeb3() returns

TypeDescription
Promise<SignInResource>A Promise which resolves to the current SignIn.

authenticateWithPasskey()

Starts a sign-in flow that allows a user to choose a passkey to sign into their account with.

function authenticateWithPasskey: (params?: AuthenticateWithPasskeyParams) => Promise<SignInResource>;

Learn more:

AuthenticateWithPasskeyParams
  • Name
    flow
    Type
    string | undefined
    Description

    Can be autofill or discoverable

  • 'autofill' enables the client to prompt your users to select a passkey before they interact with your app.
  • 'discoverable' requires the user to interact with the client.
  • To call authenticateWithPasskey() with no params, you must first call SignIn.create({ strategy: 'passkey' }). This is useful if you don't know which sign-in strategy will be used. See the docs for SignIn.create() for more information.

Feedback

What did you think of this content?