Skip to main content
  1. CrossmintProvider — SDK initialization (required for all Crossmint features)
  2. CrossmintAuthProvider — Authentication state, login/logout, and the auth flow

CrossmintProvider

Root provider for the Crossmint SDK. Must wrap your entire application. Initializes the SDK with your API key and sets up logging.

Props

apiKey
string
required
Your Crossmint client-side API key.
appId
string
Application identifier, sent as x-app-identifier header.
consoleLogLevel
ConsoleLogLevel
Minimum log level for console output (or “silent” to suppress all output). Logs below this level will not be written to the console. Set to “silent” to completely suppress console output. Defaults to “debug” (all logs shown) for backward compatibility.
overrideBaseUrl
string
Override the base API URL.

Usage

import { CrossmintProvider } from "@crossmint/client-sdk-react-native-ui";

function App() {
    return (
        <CrossmintProvider apiKey="YOUR_CLIENT_API_KEY">
            {/* Your app content */}
        </CrossmintProvider>
    );
}

CrossmintAuthProvider

Provides Crossmint authentication to your React Native app: social login (OAuth) and session management. Exposes auth state via the useCrossmintAuth hook and stores auth material in secure device storage. Must be nested inside CrossmintProvider.

Props

appSchema
string | string[]
Your app’s deep link scheme(s) (e.g. "myapp://"), used for OAuth redirects back into your app.
authModalTitle
string
Custom title for the auth modal.
logoutRoute
string
Custom route for logging out, for server-side session management.
onLoginSuccess
() => void
Callback invoked when the user successfully logs in.
prefetchOAuthUrls
boolean
Whether to prefetch OAuth provider URLs when the provider mounts.
refreshRoute
string
Custom route for refreshing the auth token, for server-side session management.
storageProvider
StorageProvider
Custom storage provider for auth material. Defaults to browser cookies on web and secure device storage on React Native.

Usage

import {
    CrossmintProvider,
    CrossmintAuthProvider,
} from "@crossmint/client-sdk-react-native-ui";

function App() {
    return (
        <CrossmintProvider apiKey="YOUR_CLIENT_API_KEY">
            <CrossmintAuthProvider appSchema="myapp://">
                {/* Your app content */}
            </CrossmintAuthProvider>
        </CrossmintProvider>
    );
}
Note: CrossmintAuthProvider must be nested inside CrossmintProvider. Set appSchema to your app’s deep link scheme so OAuth redirects return to your app.