Skip to main content

Documentation Index

Fetch the complete documentation index at: https://auth0-feat-ionic-capacitor-quickstart-modernization.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

The login screen collects the user’s identifier and password. Depending on your tenant, this identifier can be an email, phone number, or username. It also supports authentication via federated identity providers.
ACUL Login

Import

Each screen has its own set of hooks and methods. The SDK supports partial import and root import for each screen.
  • Using partial import allows you include only the code you need for your specific use case.
  • Using root import allows you to load all screens from a single bundle useful when you want a unified build to handle all possible screens.
Import Example
// root import
import { useLogin } from '@auth0/auth0-acul-react';

// partial import
import {
  useLogin,
  // Context hooks
  useUser,
  useTenant,
  useBranding,
  useClient,
  useOrganization,
  usePrompt,
  useScreen,
  useTransaction,
  useUntrustedData,
  // Common hooks
  useCurrentScreen,
  useAuth0Themes,
  useErrors,
  // Utility hooks
  useLoginIdentifiers,
  useChangeLanguage,
  // Methods  
  login,
  federatedLogin,
  pickCountryCode,
} from "@auth0/auth0-acul-react/login";

function LoginForm() {
  const { login, federatedLogin } = useLogin();
  return (
    <button onClick={() => login({ username: "user@example.com", password: "secret" })}>
      Sign In
    </button>
  );
}

Context Hooks

Screen-scoped hooks that provide read-only access to Auth0 context data on the login screen. Import them from @auth0/auth0-acul-react/login.
useBranding
Provides branding configurations, such as logo, colors, and theme settings displayed on the login screen.
Example
import { useBranding } from '@auth0/auth0-acul-react/login';
function CustomTheme() {
  const branding = useBranding();
}
useClient
Provides client-related configurations, such as id, name, and logoUrl, for the login screen.
Example
import { useClient } from '@auth0/auth0-acul-react/login';
function AppInfo() {
  const client = useClient();
}
useOrganization
Provides information about the user’s organization if the login is organization-scoped. Returns null when no organization context is present.
Example
import { useOrganization } from '@auth0/auth0-acul-react/login';
function OrgSelector() {
  const organization = useOrganization();
  if (!organization) {
    return <p>No organization context</p>;
  }
}
usePrompt
Contains data about the current prompt in the authentication flow.
Example
import { usePrompt } from '@auth0/auth0-acul-react/login';
function FlowInfo() {
  const prompt = usePrompt();
}
Contains details specific to the login screen, including its configuration and context.
Example
import { useScreen } from '@auth0/auth0-acul-react/login';
function ScreenDebug() {
  const screen = useScreen();
}
useTenant
Contains data related to the tenant, such as id and associated metadata.
Example
import { useTenant } from '@auth0/auth0-acul-react/login';
function TenantInfo() {
  const tenant = useTenant();
}
useTransaction
Provides transaction-specific data for the login screen, such as active connections, available login methods, and current flow state.
Example
import { useTransaction } from '@auth0/auth0-acul-react/login';
function TransactionInfo() {
  const transaction = useTransaction();
}
useUntrustedData
Handles untrusted data passed to the screen, such as a prefilled username from URL parameters.
Example
import { useUntrustedData } from '@auth0/auth0-acul-react/login';
function PrefilledForm() {
  const untrustedData = useUntrustedData();
}
useUser
Details of the active user, including username, email, and available authentication methods.
Example
import { useUser } from '@auth0/auth0-acul-react/login';
function UserProfile() {
  const user = useUser();
}

Methods

federatedLogin
void | Promise<void>
Initiates authentication via a federated identity provider such as Google or GitHub.
Example
import { useLogin } from '@auth0/auth0-acul-react/login';

function SocialButton() {
  const { federatedLogin } = useLogin();
  return (
    <button onClick={() => federatedLogin({ connection: 'google-oauth2' })}>
      Sign in with Google
    </button>
  );
}
login
void | Promise<void>
Submits the user’s credentials to complete authentication on the login screen.
Example
import { useLogin } from '@auth0/auth0-acul-react/login';

function LoginForm() {
  const { login } = useLogin();
  return (
    <button onClick={() => login({ username: 'user@example.com', password: 'secret' })}>
      Sign In
    </button>
  );
}
pickCountryCode
void | Promise<void>
Navigates to the country code picker for phone-based login flows.
Example
import { useLogin } from '@auth0/auth0-acul-react/login';

function PhoneLogin() {
  const { pickCountryCode } = useLogin();
  return (
    <button onClick={() => pickCountryCode()}>
      Select Country Code
    </button>
  );
}

Common/Utility Hooks

Get the current theme options with flattened configuration from branding context.
Returns a function for changing the display language on the current ACUL screen.
Gets the current screen context and state.
Read and manage server, client, and developer errors on the screen.
Returns a list of active identifier types (email, phone, username) in the current flow.