# Clerk Search these docs: `https://clerk.com/docs/search.md?q=` (optional `&sdk=`). Append `.md` to a docs page URL for markdown (the API references are OpenAPI specs instead). ## Docs - [Clerk templates and examples](https://clerk.com/docs/templates.md): Browse Clerk-maintained quickstarts, starter templates, demos, and example applications. - [Clerk CLI](https://clerk.com/docs/cli.md): Learn how to use the Clerk CLI to set up authentication, manage configuration, and integrate with AI agents. - [Welcome to Clerk Docs](https://clerk.com/docs.md): Add complete user management to your application in minutes. - [Maintenance Mode](https://clerk.com/docs/maintenance-mode.md): Learn about Clerk's Maintenance Mode. - [Pin a Clerk SDK](https://clerk.com/docs/pinning.md): Learn how to pin a Clerk SDK to a specific version. - [Core concepts](https://clerk.com/docs/getting-started/core-concepts.md): Learn about the main concepts and objects that drive Clerk's powerful authentication and user management system. - [Set up your Clerk account](https://clerk.com/docs/getting-started/quickstart/setup-clerk.md): Set up a Clerk account and application with the Clerk CLI or in the Clerk Dashboard. - [Quickstarts](https://clerk.com/docs/getting-started/quickstart/overview.md): See the getting started guides and tutorials. - [Next.js Quickstart (Pages Router)](https://clerk.com/docs/getting-started/quickstart/pages-router.md): Add authentication and user management to your Next.js app with Clerk. - [Chrome Extension Quickstart (JavaScript)](https://clerk.com/docs/getting-started/quickstart/chrome-extension-js.md): Add authentication and user management to your Chrome Extension with Clerk using plain TypeScript and esbuild. - [SDK References](https://clerk.com/docs/reference/overview.md): Learn about the Clerk and community SDK's available for integrating Clerk into your application. - [API Reference](https://clerk.com/docs/reference/api/overview.md): Access Clerk's Frontend, Backend, and Platform API reference documentation. - [`clerkClient`](https://clerk.com/docs/reference/backend/overview.md): Use clerkClient to interact with Clerk's Backend API resources. - [`authenticateRequest()`](https://clerk.com/docs/reference/backend/authenticate-request.md): Use the authenticateRequest() method to verify a token passed from the frontend. - [`verifyToken()`](https://clerk.com/docs/reference/backend/verify-token.md): Use the verifyToken() method to verify a token signature. - [`verifyWebhook()`](https://clerk.com/docs/reference/backend/verify-webhook.md): Use the verifyWebhook() method to verify a webhook signature. - [`deleteAllowlistIdentifier()`](https://clerk.com/docs/reference/backend/allowlist/delete-allowlist-identifier.md): Use the deleteAllowlistIdentifier() method to delete an allowlist identifier. - [`getAllowlistIdentifierList()`](https://clerk.com/docs/reference/backend/allowlist/get-allowlist-identifier-list.md): Use the getAllowlistIdentifierList() method to get a list of allowlist identifiers. - [`createAllowlistIdentifier()`](https://clerk.com/docs/reference/backend/allowlist/create-allowlist-identifier.md): Use the createAllowlistIdentifier() method to add a new identifier to the allowlist. - [`create()`](https://clerk.com/docs/reference/backend/agent-tasks/create.md): Use the create() method to create an Agent Task. - [`revoke()`](https://clerk.com/docs/reference/backend/agent-tasks/revoke.md): Use the revoke() method to revoke an Agent Task. - [`create()`](https://clerk.com/docs/reference/backend/api-keys/create.md): Use the create() method to create an API key. - [`delete()`](https://clerk.com/docs/reference/backend/api-keys/delete.md): Use the delete() method to delete an API key. - [`list()`](https://clerk.com/docs/reference/backend/api-keys/list.md): Use the list() method to get a list of API keys for the given user or Organization. - [`revoke()`](https://clerk.com/docs/reference/backend/api-keys/revoke.md): Use the revoke() method to revoke an API key. - [`getSecret()`](https://clerk.com/docs/reference/backend/api-keys/get-secret.md): Use the getSecret() method to get the secret of an API key. - [`get()`](https://clerk.com/docs/reference/backend/api-keys/get.md): Use the get() method to get an API key. - [`update()`](https://clerk.com/docs/reference/backend/api-keys/update.md): Use the update() method to update an API key. - [`verify()`](https://clerk.com/docs/reference/backend/api-keys/verify.md): Use the verify() method to verify an API key secret. - [`getOrganizationBillingSubscription()`](https://clerk.com/docs/reference/backend/billing/get-organization-billing-subscription.md): Use the getOrganizationBillingSubscription() method to get an Organization's Billing Subscription. - [`extendSubscriptionItemFreeTrial()`](https://clerk.com/docs/reference/backend/billing/extend-subscription-item-free-trial.md): Use the extendSubscriptionItemFreeTrial() method to extend the free trial period of a Subscription Item. - [`cancelSubscriptionItem()`](https://clerk.com/docs/reference/backend/billing/cancel-subscription-item.md): Use the cancelSubscriptionItem() method to cancel a Subscription Item. - [`getUserBillingSubscription()`](https://clerk.com/docs/reference/backend/billing/get-user-billing-subscription.md): Use the getUserBillingSubscription() method to get a user's Billing Subscription. - [`getPlanList()`](https://clerk.com/docs/reference/backend/billing/get-plan-list.md): Use the getPlanList() method to get a list of Billing Plans. - [`getClientList()`](https://clerk.com/docs/reference/backend/client/get-client-list.md): Retrieves the list of clients. - [`verifyClient()`](https://clerk.com/docs/reference/backend/client/verify-client.md): Use the verifyClient() method to get a client for a given session token, if the session is active. - [`getClient()`](https://clerk.com/docs/reference/backend/client/get-client.md): Use the getClient() method to get a single client by its ID. - [`delete()`](https://clerk.com/docs/reference/backend/domains/delete.md): Use the delete() method to delete a domain other than the active one. - [`list()`](https://clerk.com/docs/reference/backend/domains/list.md): Use the list() method to list the domains for the instance. - [`update()`](https://clerk.com/docs/reference/backend/domains/update.md): Use the update() method to update a domain. - [`deleteDomain()`](https://clerk.com/docs/reference/backend/domains/delete-domain.md): Use the deleteDomain() method to delete a domain other than the active one. - [`add()`](https://clerk.com/docs/reference/backend/domains/add.md): Use the add() method to add a new domain to the instance. - [`updateEmailAddress()`](https://clerk.com/docs/reference/backend/email-addresses/update-email-address.md): Use the updateEmailAddress() method to update an email address. - [`deleteEmailAddress()`](https://clerk.com/docs/reference/backend/email-addresses/delete-email-address.md): Use the deleteEmailAddress() method to delete an email address. - [`getEmailAddress()`](https://clerk.com/docs/reference/backend/email-addresses/get-email-address.md): Use the getEmailAddress() method to get an email address by its ID. - [`createEmailAddress()`](https://clerk.com/docs/reference/backend/email-addresses/create-email-address.md): Use the createEmailAddress() method to create an email address for the specified user. - [`updateEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/update-enterprise-connection.md): Use the updateEnterpriseConnection() method to update an enterprise connection. - [`getEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/get-enterprise-connection.md): Use the getEnterpriseConnection() method to get an enterprise connection. - [`getEnterpriseConnectionList()`](https://clerk.com/docs/reference/backend/enterprise-connections/get-enterprise-connection-list.md): Use the getEnterpriseConnectionList() method to get a list of enterprise connections. - [`deleteEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/delete-enterprise-connection.md): Use the deleteEnterpriseConnection() method to delete an enterprise connection. - [`createEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/create-enterprise-connection.md): Use the createEnterpriseConnection() method to create an enterprise connection. - [`updateRestrictions()`](https://clerk.com/docs/reference/backend/instance/update-restrictions.md): Use the updateRestrictions() method to update the restriction settings of the current instance. - [`updateOrganizationSettings()`](https://clerk.com/docs/reference/backend/instance/update-organization-settings.md): Use the updateOrganizationSettings() method to update the Organization-related settings of the current instance. - [`get()`](https://clerk.com/docs/reference/backend/instance/get.md): Use the get() method to get the given instance. - [`getOrganizationSettings()`](https://clerk.com/docs/reference/backend/instance/get-organization-settings.md): Use the getOrganizationSettings() method to get the Organization-related settings of the current instance. - [`update()`](https://clerk.com/docs/reference/backend/instance/update.md): Use the update() method to update the current instance. - [`revokeInvitation()`](https://clerk.com/docs/reference/backend/invitations/revoke-invitation.md): Use the revokeInvitation() method to revoke an invitation. - [`getInvitationList()`](https://clerk.com/docs/reference/backend/invitations/get-invitation-list.md): Use the getInvitationList() method to get a list of non-revoked invitations for your application. - [`deleteInvitation()`](https://clerk.com/docs/reference/backend/invitations/delete-invitation.md): Use the deleteInvitation() method to permanently delete an invitation and its stored invitation email. - [`createInvitation()`](https://clerk.com/docs/reference/backend/invitations/create-invitation.md): Use the createInvitation() method to create a new invitation for the given email address, and send the invitation email. - [`createInvitationBulk()`](https://clerk.com/docs/reference/backend/invitations/create-invitation-bulk.md): Use the createInvitationBulk() method to create multiple invitations for the given email addresses, and send the invitation emails. - [`verify()`](https://clerk.com/docs/reference/backend/m2m-tokens/verify.md): Use the verify() method to verify an M2M token. - [`revokeToken()`](https://clerk.com/docs/reference/backend/m2m-tokens/revoke-token.md): Use the revokeToken() method to revoke a M2M token. - [`createToken()`](https://clerk.com/docs/reference/backend/m2m-tokens/create-token.md): Use the createToken() method to create a M2M token. - [`list()`](https://clerk.com/docs/reference/backend/m2m-tokens/list.md): Use the list() method to get a list of M2M tokens for the given machine. - [`delete()`](https://clerk.com/docs/reference/backend/machines/delete.md): Use the delete() method to delete a machine. - [`createScope()`](https://clerk.com/docs/reference/backend/machines/create-scope.md): Use the createScope() method to create a machine scope. - [`create()`](https://clerk.com/docs/reference/backend/machines/create.md): Use the create() method to create a machine. - [`deleteScope()`](https://clerk.com/docs/reference/backend/machines/delete-scope.md): Use the deleteScope() method to delete a machine scope. - [`update()`](https://clerk.com/docs/reference/backend/machines/update.md): Use the update() method to update a machine. - [`rotateSecretKey()`](https://clerk.com/docs/reference/backend/machines/rotate-secret-key.md): Use the rotateSecretKey() method to rotate a machine's secret key. - [`list()`](https://clerk.com/docs/reference/backend/machines/list.md): Use the list() method to get a list of machines for the instance. - [`get()`](https://clerk.com/docs/reference/backend/machines/get.md): Use the get() method to get the given machine. - [`getSecretKey()`](https://clerk.com/docs/reference/backend/machines/get-secret-key.md): Use the getSecretKey() method to get a machine secret key. - [`update()`](https://clerk.com/docs/reference/backend/oauth-applications/update.md): Use the update() method to update an OAuth application. - [`rotateSecret()`](https://clerk.com/docs/reference/backend/oauth-applications/rotate-secret.md): Use the rotateSecret() method to rotate the OAuth application's client secret. - [`revokeToken()`](https://clerk.com/docs/reference/backend/oauth-applications/revoke-token.md): Use the revokeToken() method to revoke an OAuth application token. - [`list()`](https://clerk.com/docs/reference/backend/oauth-applications/list.md): Use the list() method to get a list of OAuth applications for an instance. - [`delete()`](https://clerk.com/docs/reference/backend/oauth-applications/delete.md): Use the delete() method to delete an OAuth application. - [`create()`](https://clerk.com/docs/reference/backend/oauth-applications/create.md): Use the create() method to create an OAuth application. - [`get()`](https://clerk.com/docs/reference/backend/oauth-applications/get.md): Use the get() method to get an OAuth application. - [`replaceOrganizationMetadata()`](https://clerk.com/docs/reference/backend/organization/replace-organization-metadata.md): Use the replaceOrganizationMetadata() method to fully replace the metadata associated with the specified Organization. - [`createOrganizationInvitation()`](https://clerk.com/docs/reference/backend/organization/create-organization-invitation.md): Use the createOrganizationInvitation() method to create an invitation for new users to join an Organization. - [`getOrganizationMembershipList()`](https://clerk.com/docs/reference/backend/organization/get-organization-membership-list.md): Use the getOrganizationMembershipList() method to get a list of memberships for an Organization. - [`getOrganizationList()`](https://clerk.com/docs/reference/backend/organization/get-organization-list.md): Use the getOrganizationList() method to get a list of Organizations. - [`getOrganizationInvitation()`](https://clerk.com/docs/reference/backend/organization/get-organization-invitation.md): Use the getOrganizationInvitation() method to get an Organization invitation. - [`getInstanceOrganizationMembershipList()`](https://clerk.com/docs/reference/backend/organization/get-instance-organization-membership-list.md): Use the getInstanceOrganizationMembershipList() method to get the list of Organization Memberships for a given Organization. - [`getOrganization()`](https://clerk.com/docs/reference/backend/organization/get-organization.md): Use the getOrganization() method to get a single Organization. - [`getOrganizationInvitationList()`](https://clerk.com/docs/reference/backend/organization/get-organization-invitation-list.md): Use the getOrganizationInvitationList() method to get a list of Organization invitations. - [`updateOrganization()`](https://clerk.com/docs/reference/backend/organization/update-organization.md): Use the updateOrganization() method to update an Organization's name. - [`deleteOrganizationMembership()`](https://clerk.com/docs/reference/backend/organization/delete-organization-membership.md): Use the deleteOrganizationMembership() method to remove a user from the specified Organization. - [`updateOrganizationMetadata()`](https://clerk.com/docs/reference/backend/organization/update-organization-metadata.md): Use the updateOrganizationMetadata() method to update the metadata associated with a given Organization. - [`createOrganizationDomain()`](https://clerk.com/docs/reference/backend/organization/create-organization-domain.md): Use the createOrganizationDomain() method to create a new Verified Domain for a given Organization. - [`updateOrganizationMembership()`](https://clerk.com/docs/reference/backend/organization/update-organization-membership.md): Use the updateOrganizationMembership() method to update a user's Organization membership. - [`getOrganizationDomainList()`](https://clerk.com/docs/reference/backend/organization/get-organization-domain-list.md): Use the getOrganizationDomainList() method to get the list of Verified Domains for a given Organization. - [`updateOrganizationMembershipMetadata()`](https://clerk.com/docs/reference/backend/organization/update-organization-membership-metadata.md): Use the updateOrganizationMembershipMetadata() method to update the metadata associated with a user's Organization membership. - [`createOrganizationInvitationBulk()`](https://clerk.com/docs/reference/backend/organization/create-organization-invitation-bulk.md): Use the createOrganizationInvitationBulk() method to create multiple invitations for new users to join an Organization. - [`updateOrganizationLogo()`](https://clerk.com/docs/reference/backend/organization/update-organization-logo.md): Use the updateOrganizationLogo() method to update an Organization's logo. - [`deleteOrganizationDomain()`](https://clerk.com/docs/reference/backend/organization/delete-organization-domain.md): Use the deleteOrganizationDomain() method to delete a Verified Domain for a given Organization. - [`updateOrganizationDomain()`](https://clerk.com/docs/reference/backend/organization/update-organization-domain.md): Use the updateOrganizationDomain() method to update a Verified Domain for a given Organization. - [`revokeOrganizationInvitation()`](https://clerk.com/docs/reference/backend/organization/revoke-organization-invitation.md): Use the revokeOrganizationInvitation() method to revoke an Organization invitation from a user for a specified Organization. - [`deleteOrganizationLogo()`](https://clerk.com/docs/reference/backend/organization/delete-organization-logo.md): Use the deleteOrganizationLogo() method to delete an Organization's logo. - [`createOrganizationMembership()`](https://clerk.com/docs/reference/backend/organization/create-organization-membership.md): Use the createOrganizationMembership() method to create a membership to an Organization for a user directly (circumventing the need for an invitation). - [`deleteOrganization()`](https://clerk.com/docs/reference/backend/organization/delete-organization.md): Use the deleteOrganization() method to delete an Organization. - [`createOrganization()`](https://clerk.com/docs/reference/backend/organization/create-organization.md): Use the createOrganization() method to create an Organization. - [`createPhoneNumber()`](https://clerk.com/docs/reference/backend/phone-numbers/create-phone-number.md): Use the createPhoneNumber() method to create a phone number for the specified user. - [`deletePhoneNumber()`](https://clerk.com/docs/reference/backend/phone-numbers/delete-phone-number.md): Use the deletePhoneNumber() method to delete a phone number. - [`updatePhoneNumber()`](https://clerk.com/docs/reference/backend/phone-numbers/update-phone-number.md): Use the updatePhoneNumber() method to update a phone number. - [`getPhoneNumber()`](https://clerk.com/docs/reference/backend/phone-numbers/get-phone-number.md): Use the getPhoneNumber() method to get a phone number by its ID. - [`deleteRedirectUrl()`](https://clerk.com/docs/reference/backend/redirect-urls/delete-redirect-url.md): Use the deleteRedirectUrl() method to delete a redirect URL. - [`getRedirectUrl()`](https://clerk.com/docs/reference/backend/redirect-urls/get-redirect-url.md): Use the getRedirectUrl() method to get a redirect URL by its ID. - [`createRedirectUrl()`](https://clerk.com/docs/reference/backend/redirect-urls/create-redirect-url.md): Use the createRedirectUrl() method to create a redirect URL. - [`getRedirectUrlList()`](https://clerk.com/docs/reference/backend/redirect-urls/get-redirect-url-list.md): Use the getRedirectUrlList() method to get a list of whitelisted redirect URLs for your instance. - [`createSamlConnection()`](https://clerk.com/docs/reference/backend/saml-connections/create-saml-connection.md): Use the createSamlConnection() method to create a SAML connection. - [`deleteSamlConnection()`](https://clerk.com/docs/reference/backend/saml-connections/delete-saml-connection.md): Use the deleteSamlConnection() method to delete a SAML connection. - [`updateSamlConnection()`](https://clerk.com/docs/reference/backend/saml-connections/update-saml-connection.md): Use the updateSamlConnection() method to update a SAML connection. - [`getSamlConnection()`](https://clerk.com/docs/reference/backend/saml-connections/get-saml-connection.md): Use the getSamlConnection() method to get a SAML connection. - [`getSamlConnectionList()`](https://clerk.com/docs/reference/backend/saml-connections/get-saml-connection-list.md): Use the getSamlConnectionList() method to get the list of SAML connections for an instance. - [`verifySession()`](https://clerk.com/docs/reference/backend/sessions/verify-session.md): Use the verifySession() method to verify whether a session with a given ID corresponds to the provided session token. - [`revokeSession()`](https://clerk.com/docs/reference/backend/sessions/revoke-session.md): Use the revokeSession() method to revoke a session given its ID. - [`getToken()`](https://clerk.com/docs/reference/backend/sessions/get-token.md): Use the getToken() method to get a token for a JWT template that is defined in the Clerk Dashboard. - [`getSession()`](https://clerk.com/docs/reference/backend/sessions/get-session.md): Use the getSession() method to get a single session by its ID. - [`getSessionList()`](https://clerk.com/docs/reference/backend/sessions/get-session-list.md): Use the getSessionList() method to get a list of sessions. - [`revokeSignInToken()`](https://clerk.com/docs/reference/backend/sign-in-tokens/revoke-sign-in-token.md): Use the revokeSignInToken() method to revoke a pending sign-in token. - [`createSignInToken()`](https://clerk.com/docs/reference/backend/sign-in-tokens/create-sign-in-token.md): Use the createSignInToken() method to create a new sign-in token for a given user. - [`createTestingToken()`](https://clerk.com/docs/reference/backend/testing-tokens/create-testing-token.md): Use the createTestingToken() method to create a Testing Token for the instance. - [`PaginatedResourceResponse`](https://clerk.com/docs/reference/backend/types/paginated-resource-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`Feature`](https://clerk.com/docs/reference/backend/types/feature.md): The Feature type represents a Feature that a Plan can offer. - [Backend `DeletedObject` object](https://clerk.com/docs/reference/backend/types/deleted-object.md): The Backend DeletedObject object represents an item that has been deleted from the database. - [The Backend `OAuthApplication` object](https://clerk.com/docs/reference/backend/types/backend-oauth-application.md): The Backend OAuthApplication object describes an OAuth Application. - [The Backend `OauthAccessToken` object](https://clerk.com/docs/reference/backend/types/backend-oauth-access-token.md): The Backend OAuthAccessToken object describes an OAuth Access Token. - [Backend `Domain` object](https://clerk.com/docs/reference/backend/types/domain.md): The Backend Domain object represents a domain that is managed by the instance. - [The Backend `Machine` object](https://clerk.com/docs/reference/backend/types/backend-machine.md): The Backend Machine object holds information about a Machine. - [Backend `BillingSubscription` object](https://clerk.com/docs/reference/backend/types/billing-subscription.md): The Backend BillingSubscription object holds information about a Subscription of your application. - [The Backend `MachineScope` object](https://clerk.com/docs/reference/backend/types/backend-machine-scope.md): The Backend MachineScope object holds information about a Machine Scope. - [The Backend `M2MToken` object](https://clerk.com/docs/reference/backend/types/backend-m2m-token.md): The Backend M2MToken object holds information about a machine-to-machine token. - [Backend `BillingSubscriptionItem` object](https://clerk.com/docs/reference/backend/types/billing-subscription-item.md): The Backend BillingSubscriptionItem object holds information about a Subscription Item of your application. - [The Backend `Invitation` object](https://clerk.com/docs/reference/backend/types/backend-invitation.md): The Backend Invitation object represents an invitation to join your application. - [The Backend `Instance` object](https://clerk.com/docs/reference/backend/types/backend-instance.md): The Backend Instance object holds information about the current instance. - [The Backend `BillingSubscriptionItemStatus` object](https://clerk.com/docs/reference/backend/types/billing-subscription-item-status.md): The Backend BillingSubscriptionItemStatus type represents the possible lifecycle states of a BillingSubscriptionItem. - [The Backend `InstanceRestrictions` object](https://clerk.com/docs/reference/backend/types/backend-instance-restrictions.md): The Backend InstanceRestrictions object holds information about the restriction settings of the current instance. - [The Backend `IdentificationLink` object](https://clerk.com/docs/reference/backend/types/backend-identification-link.md): Contains information about any identifications that might be linked to the email address. - [Backend `BillingPlan` object](https://clerk.com/docs/reference/backend/types/billing-plan.md): The Backend BillingPlan object holds information about a Plan of your application. - [The Backend `ExternalAccount` object](https://clerk.com/docs/reference/backend/types/backend-external-account.md): The Backend ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [The Backend `Web3Wallet` object](https://clerk.com/docs/reference/backend/types/backend-web3-wallet.md): The Backend Web3Wallet object describes a Web3 wallet address. - [The Backend `EnterpriseConnection` object](https://clerk.com/docs/reference/backend/types/backend-enterprise-connection.md): The Backend EnterpriseConnection object holds information about an enterprise connection (SAML or OAuth) for an instance or organization. - [The Backend `WaitlistEntry` object](https://clerk.com/docs/reference/backend/types/backend-waitlist-entry.md): The Backend WaitlistEntry object is the model around a waitlist entry. - [The Backend `EnterpriseConnectionSamlConnectionLoginHint` object](https://clerk.com/docs/reference/backend/types/backend-enterprise-connection-saml-connection-login-hint.md): The Backend EnterpriseConnectionSamlConnectionLoginHint object represents the login hint configuration included in an EnterpriseConnectionSamlConnection response. - [The Backend `EnterpriseConnectionSamlConnection` object](https://clerk.com/docs/reference/backend/types/backend-enterprise-connection-saml-connection.md): The Backend EnterpriseConnectionSamlConnection object holds information about a SAML enterprise connection for an instance or organization. - [The Backend `Verification` object](https://clerk.com/docs/reference/backend/types/backend-verification.md): The Backend Verification object describes the state of the verification process of a sign-in or sign-up attempt. - [The Backend `EnterpriseConnectionOauthConfig` object](https://clerk.com/docs/reference/backend/types/backend-enterprise-connection-oauth-config.md): The Backend EnterpriseConnectionOauthConfig object represents the OAuth configuration data included in a Backend API EnterpriseConnection response. - [The Backend `User` object](https://clerk.com/docs/reference/backend/types/backend-user.md): The Backend User object holds information about a user of your application. However, the Backend User object is different from the User object in that it is used in the Backend API. - [The Backend `EnterpriseConnectionCustomAttribute` object](https://clerk.com/docs/reference/backend/types/backend-enterprise-connection-custom-attribute.md): The Backend EnterpriseConnectionCustomAttribute object represents a custom attribute mapping included in an EnterpriseConnection response. - [The Backend `TestingToken` object](https://clerk.com/docs/reference/backend/types/backend-testing-token.md): The Backend TestingToken object holds information about a Testing Token. - [The Backend `EnterpriseAccount` object](https://clerk.com/docs/reference/backend/types/backend-enterprise-account.md): The Backend EnterpriseAccount object represents an identification obtained via enterprise SSO (SAML or OIDC). - [The Backend `SignInToken` object](https://clerk.com/docs/reference/backend/types/backend-sign-in-token.md): The Backend SignInToken object holds information about a sign-in token. - [The Backend `EnterpriseAccountConnection` object](https://clerk.com/docs/reference/backend/types/backend-enterprise-account-connection.md): The Backend EnterpriseAccountConnection object represents an enterprise SSO connection associated with an enterprise account. - [The Backend `Session` object](https://clerk.com/docs/reference/backend/types/backend-session.md): The Backend Session object holds information about a Session of your application. However, the Backend Session object is different from the Session object in that it is used in the Backend API. - [The Backend `EmailAddress` object](https://clerk.com/docs/reference/backend/types/backend-email-address.md): The Backend EmailAddress object is a model around an email address. - [The Backend `SessionActivity` object](https://clerk.com/docs/reference/backend/types/backend-session-activity.md): The Backend SessionActivity object models the activity of a user session, capturing details such as the device type, browser information, and geographical location. - [The Backend `APIKey` object](https://clerk.com/docs/reference/backend/types/backend-api-key.md): The Backend APIKey object holds information about an API key of your application. - [The Backend `SamlConnection` object](https://clerk.com/docs/reference/backend/types/backend-saml-connection.md): The Backend SamlConnection object holds information about a SAML connection for an Organization. - [The Backend `Client` object](https://clerk.com/docs/reference/backend/types/backend-client.md): The Backend Client object holds information about the authenticated sessions in the current device. However, the Backend Client object is different from the Client object in that it is used in the Backend API. - [The Backend `SamlConnectionIdpCertificate` object](https://clerk.com/docs/reference/backend/types/backend-saml-connection-idp-certificate.md): The Backend SamlConnectionIdpCertificate object represents an Identity Provider (IdP) signing certificate trusted by a SAML connection. - [The Backend `AgentTask` object](https://clerk.com/docs/reference/backend/types/backend-agent-task.md): The Backend AgentTask object represents an Agent Task. - [The Backend `RedirectUrl` object](https://clerk.com/docs/reference/backend/types/backend-redirect-url.md): The Backend RedirectUrl object represents a redirect URL in your application. This object is used in the Backend API. - [The Backend `AllowlistIdentifier` object](https://clerk.com/docs/reference/backend/types/backend-allowlist-identifier.md): The Backend AllowlistIdentifier object holds information about a AllowlistIdentifier of your application. However, the Backend AllowlistIdentifier object is different from the AllowlistIdentifier object in that it is used in the Backend API. - [The Backend `PhoneNumber` object](https://clerk.com/docs/reference/backend/types/backend-phone-number.md): The Backend PhoneNumber object describes a phone number. - [Auth object](https://clerk.com/docs/reference/backend/types/auth-object.md): The Auth object contains information about the current user's session. - [The Backend `Organization` object](https://clerk.com/docs/reference/backend/types/backend-organization.md): The Backend Organization object holds information about an Organization, as well as methods for managing it. However, the it is different from the Organization object in that it is used in the Backend API and is not directly accessible from the Frontend API. - [The Backend `OrganizationSettings` object](https://clerk.com/docs/reference/backend/types/backend-organization-settings.md): The Backend OrganizationSettings object holds information about the Organization-related settings of the current instance. - [The Backend `OrganizationMembership` object](https://clerk.com/docs/reference/backend/types/backend-organization-membership.md): The Backend OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [The Backend `OrganizationInvitation` object](https://clerk.com/docs/reference/backend/types/backend-organization-invitation.md): The Backend OrganizationInvitation object is the model around an Organization invitation. - [The Backend `OrganizationDomain` object](https://clerk.com/docs/reference/backend/types/backend-organization-domain.md): The Backend OrganizationDomain object is the model around an Organization domain. - [`replaceUserMetadata()`](https://clerk.com/docs/reference/backend/user/replace-user-metadata.md): Use the replaceUserMetadata() method to fully replace the metadata associated with the specified user. - [`removePassword()`](https://clerk.com/docs/reference/backend/user/remove-password.md): Use the removePassword() method to remove a user's password credential. - [`lockUser()`](https://clerk.com/docs/reference/backend/user/lock-user.md): Use the lockUser() method to mark a user as locked, which means they are not allowed to sign in again until the lock expires. - [`getUser()`](https://clerk.com/docs/reference/backend/user/get-user.md): Use the getUser() method to get a single user by their ID. - [getUserOauthAccessToken()](https://clerk.com/docs/reference/backend/user/get-user-oauth-access-token.md): Use the getUserOauthAccessToken() method to get the corresponding OAuth access token for a user. - [`getUserList()`](https://clerk.com/docs/reference/backend/user/get-user-list.md): Use the getUserList() method to get a list of users. - [`getOrganizationMembershipList()`](https://clerk.com/docs/reference/backend/user/get-organization-membership-list.md): Use the getOrganizationMembershipList() method to get a list of Organization memberships for a given user. - [`getOrganizationInvitationList()`](https://clerk.com/docs/reference/backend/user/get-organization-invitation-list.md): Use the getOrganizationInvitationList() method to get a list of Organization invitations for a given user. - [`getCount()`](https://clerk.com/docs/reference/backend/user/get-count.md): Use the getCount() method to get the total number of users. - [`disableUserMFA()`](https://clerk.com/docs/reference/backend/user/disable-user-mfa.md): Use the disableUserMFA() method to disable all of a user's MFA methods at once. - [`deleteUser()`](https://clerk.com/docs/reference/backend/user/delete-user.md): Use the deleteUser() method to delete a user. - [`deleteUserWeb3Wallet()`](https://clerk.com/docs/reference/backend/user/delete-user-web3-wallet.md): Use the deleteUserWeb3Wallet() method to delete the Web3 wallet identification for a given user. - [`deleteUserTOTP()`](https://clerk.com/docs/reference/backend/user/delete-user-totp.md): Use the deleteUserTOTP() method to delete all of a user's TOTPs. - [`deleteUserProfileImage()`](https://clerk.com/docs/reference/backend/user/delete-user-profile-image.md): Use the deleteUserProfileImage() method to delete a user's profile image. - [`deleteUserPasskey()`](https://clerk.com/docs/reference/backend/user/delete-user-passkey.md): Use the deleteUserPasskey() method to delete the passkey identification for a given user. - [`deleteUserExternalAccount()`](https://clerk.com/docs/reference/backend/user/delete-user-external-account.md): Use the deleteUserExternalAccount() method to delete a user's external account by ID. - [`deleteUserBackupCodes()`](https://clerk.com/docs/reference/backend/user/delete-user-backup-codes.md): Use the deleteUserBackupCodes() method to delete all of a user's backup codes. - [`createUser()`](https://clerk.com/docs/reference/backend/user/create-user.md): Use the createUser() method to create a user. - [`banUser()`](https://clerk.com/docs/reference/backend/user/ban-user.md): Use the banUser() method to mark a given user as banned. - [`verifyTOTP()`](https://clerk.com/docs/reference/backend/user/verify-totp.md): Use the verifyTOTP() method to verify a TOTP or backup code for a user. - [`verifyPassword()`](https://clerk.com/docs/reference/backend/user/verify-password.md): Use the verifyPassword() method to check that the user's password matches the supplied input. Useful for custom auth flows and re-verification. - [`updateUserProfileImage()`](https://clerk.com/docs/reference/backend/user/update-user-profile-image.md): Use the updateUserProfileImage() method to update a user's profile image. - [`updateUser()`](https://clerk.com/docs/reference/backend/user/update-user.md): Use the updateUser() method to update a user. - [`updateUserMetadata()`](https://clerk.com/docs/reference/backend/user/update-user-metadata.md): Use the updateUserMetadata() method to update the metadata associated with the specified user. - [`unsetPasswordCompromised()`](https://clerk.com/docs/reference/backend/user/unset-password-compromised.md): Use the unsetPasswordCompromised() method to unset a user's password as compromised. - [`unlockUser()`](https://clerk.com/docs/reference/backend/user/unlock-user.md): Use the unlockUser() method to remove a sign-in lock from a user. - [`unbanUser()`](https://clerk.com/docs/reference/backend/user/unban-user.md): Use the unbanUser() method to remove the ban mark from a user. - [`setPasswordCompromised()`](https://clerk.com/docs/reference/backend/user/set-password-compromised.md): Use the setPasswordCompromised() method to set a user's password as compromised. - [`delete()`](https://clerk.com/docs/reference/backend/waitlist-entries/delete.md): Use the delete() method to delete a pending waitlist entry. - [`list()`](https://clerk.com/docs/reference/backend/waitlist-entries/list.md): Use the list() method to get a list of waitlist entries. - [`reject()`](https://clerk.com/docs/reference/backend/waitlist-entries/reject.md): Use the reject() method to reject a waitlist entry. - [`create()`](https://clerk.com/docs/reference/backend/waitlist-entries/create.md): Use the create() method to create a waitlist entry for the given email address. - [`invite()`](https://clerk.com/docs/reference/backend/waitlist-entries/invite.md): Use the invite() method to invite a waitlist entry. - [`createBulk()`](https://clerk.com/docs/reference/backend/waitlist-entries/create-bulk.md): Use the createBulk() method to bulk create waitlist entries for the given email addresses. - [Component Versioning](https://clerk.com/docs/reference/components/versioning.md): Learn how Clerk versions its components, and how to specify a specific version if necessary. - [Component Changelog](https://clerk.com/docs/reference/components/changelog.md): Keep track of the changes to Clerk's components. - [`AgentTask`](https://clerk.com/docs/reference/types/agent-task.md): The AgentTask interface represents an Agent Task. - [Account Portal overview](https://clerk.com/docs/guides/account-portal/overview.md): The Account Portal offers hosted user authentication and profile management for web and native applications. - [Getting started with the Account Portal](https://clerk.com/docs/guides/account-portal/getting-started.md): The Account Portal offers a comprehensive solution for managing user authentication and profile management in your web application and is the fastest way to add Clerk's authentication to your application with minimal code required. - [Linking to Account Portal pages](https://clerk.com/docs/guides/account-portal/direct-links.md): Learn how to share direct links to your Account Portal pages, and how to set up fallback redirects. - [Disabling the Account Portal](https://clerk.com/docs/guides/account-portal/disable-account-portal.md): Learn how to disable the Account Portal. - [Clerk Skills](https://clerk.com/docs/guides/ai/skills.md): Install Clerk Skills to enhance AI coding agents with authentication expertise. - [Using Clerk with AI](https://clerk.com/docs/guides/ai/overview.md): Learn how to integrate Clerk authentication with AI-powered applications and development tools. - [API keys & M2M](https://clerk.com/docs/guides/ai/eve/api-keys-and-m2m.md): Authenticate Clerk API key callers and agent-to-agent M2M traffic in an eve agent — from creating the machines in Clerk to verifying the inbound tokens. - [Custom channel auth](https://clerk.com/docs/guides/ai/eve/custom-channel-auth.md): Build an eve channel AuthFn that verifies Clerk callers from scratch — session auth, multi-token acceptance, and mapping Clerk auth to eve principal attributes. - [Enrich instructions](https://clerk.com/docs/guides/ai/eve/enriching-instructions.md): Build eve dynamic instructions that personalize the system prompt per session from the authenticated Clerk caller, without any helper packages. - [Get started with Clerk and eve](https://clerk.com/docs/guides/ai/eve/getting-started.md): Overview of the Clerk + eve integration. Install ready-to-go helpers via shadcn, or try the demo to see every pattern in one place. - [Authorize tool calls](https://clerk.com/docs/guides/ai/eve/authorize-tool-calls.md): Authorize individual eve tool calls — permission checks from the auth context, plus brokered OAuth for tools that need an external provider token. - [Connect MCP-compatible clients to your MCP server](https://clerk.com/docs/guides/ai/mcp/connect-mcp-client.md): Learn how to connect MCP-compatible clients, like Cursor, to your MCP server - [Use Clerk's MCP server](https://clerk.com/docs/guides/ai/mcp/clerk-mcp-server.md): Connect AI agents to Clerk's MCP server to manage your Clerk applications, users, and production setup, and to get Clerk SDK snippets. - [Default Plans](https://clerk.com/docs/guides/billing/default-plans.md): Learn more about default Plans and how they work in Clerk Billing - [Discounts and promo codes](https://clerk.com/docs/guides/billing/discounts.md): Reduce the price of a customer's Subscription — apply a Discount yourself, or issue a promo code customers redeem at checkout. - [Clerk Billing](https://clerk.com/docs/guides/billing/overview.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Free and complimentary access](https://clerk.com/docs/guides/billing/free-and-complimentary-access.md): Choose between a free trial, a 100% Discount, or a $0 complimentary price when you need to give someone free access to a paid Plan. - [Custom Plans and prices](https://clerk.com/docs/guides/billing/custom-plans.md): Transition Subscriptions between Plans and create custom pricing for your customers - [Free trials](https://clerk.com/docs/guides/billing/free-trials.md): Let users try paid Features before subscribing - [Account credits](https://clerk.com/docs/guides/billing/account-credits.md): Add and manage account credits for Users and Organizations. - [Seat-based Plans](https://clerk.com/docs/guides/billing/seat-based-plans.md): Configure Plans with seat limits, per-seat pricing, or both. - [Tasks after sign-up/sign-in](https://clerk.com/docs/guides/configure/session-tasks.md): Learn how to configure your application to require users to complete specific tasks after signing up or signing in. - [Sign-up and sign-in options](https://clerk.com/docs/guides/configure/auth-strategies/sign-up-sign-in-options.md): Clerk provides various options for configuring a sign-up and sign-in flow. - [Configure OAuth and SSO deep links for Electron](https://clerk.com/docs/guides/configure/auth-strategies/oauth-deep-links.md): Learn how OAuth and SSO sign-in return to your Electron app through a custom scheme, and how to package the app so the operating system delivers the callback. - [Self-serve SSO](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/self-serve-sso.md): Learn how to let your customers' IT admins configure their own enterprise SSO connections within your application. - [SSO bypass](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/sso-bypass.md): Learn how to let specific users sign in with an email code when their enterprise SSO connection is unavailable. - [Self-serve Directory Sync](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/self-serve-directory-sync.md): Learn how to let your customers' IT admins set up Directory Sync (SCIM provisioning) for their own enterprise SSO connection within your application. - [Enterprise Single Sign-On (SSO)](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/overview.md): Clerk provides Enterprise SSO to authenticate users via federated identity providers such as Azure AD, Okta, Google Workspace and more. - [Directory Sync](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/directory-sync.md): Learn how to use Directory Sync to automatically provision and deprovision users, sync custom attributes, and map identity provider groups to Clerk Roles. - [Custom Attribute Mapping](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/custom-attribute-mapping.md): Learn how to sync custom attributes, including multi-valued attributes, from your identity provider to Clerk's public metadata, shared across SSO and Directory Sync connections. - [Just-in-Time (JIT) Provisioning during SAML SSO](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/jit-provisioning.md): Learn about Clerk's support for Just-in-Time (JIT) Provisioning during SAML SSO. - [Rotate IdP signing certificates](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/certificate-rotation.md): Learn how to add, replace, and remove the signing certificates of a SAML enterprise connection without interrupting sign-ins. - [Account linking](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/account-linking.md): Learn how Clerk handles account linking during Enterprise SSO. - [Enterprise SSO authentication flows](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/authentication-flows.md): Learn about the Enterprise SSO authentication flows. - [Add Google as an EASIE connection](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/easie/google.md): Learn how to allow users to sign up and sign in to your Clerk app with their Google account using EASIE SSO. - [Add Microsoft as an EASIE connection](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/easie/microsoft.md): Learn how to allow users to sign up and sign in to your Clerk app with their Microsoft account using EASIE SSO. - [Add a custom OpenID Connect (OIDC) Provider as an enterprise connection](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/oidc/custom-provider.md): Learn how to integrate a custom OIDC provider with Clerk for Enterprise SSO. - [Add Okta Workforce as a SAML connection](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/saml/okta.md): Learn how to integrate Okta Workforce with Clerk using SAML SSO. - [Add Google Workspace as a SAML connection](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/saml/google.md): Learn how to integrate Google Workspace with Clerk using SAML SSO. - [Add a custom identity provider as a SAML connection](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/saml/custom-provider.md): Learn how to integrate an identity provider with Clerk using SAML SSO. - [Add Microsoft Entra ID as a SAML connection](https://clerk.com/docs/guides/configure/auth-strategies/enterprise-connections/saml/azure.md): Learn how to allow users to sign up and sign in to your Clerk app with their Microsoft account using SAML SSO. - [Verify OAuth tokens with Clerk](https://clerk.com/docs/guides/configure/auth-strategies/oauth/verify-oauth-tokens.md): Learn how to verify OAuth tokens in your applications. - [Use OAuth for Single Sign-On (SSO)](https://clerk.com/docs/guides/configure/auth-strategies/oauth/single-sign-on.md): Learn how to implement single sign-on with OAuth & OpenID Connect in your Clerk application or when signing into a third-party app. - [Use OAuth for scoped access](https://clerk.com/docs/guides/configure/auth-strategies/oauth/scoped-access.md): Learn how to use OAuth with Clerk to grant granular permissions and manage access securely. - [How Clerk implements OAuth](https://clerk.com/docs/guides/configure/auth-strategies/oauth/how-clerk-implements-oauth.md): Learn how to configure and secure OAuth flows with Clerk, including Device Authorization Grant, Client ID Metadata Documents, dynamic client registration, consent screens, PKCE, public clients, and scopes. - [OAuth and OIDC overview](https://clerk.com/docs/guides/configure/auth-strategies/oauth/overview.md): Learn what OAuth and OpenID Connect (OIDC) are, why they're used, and how the different OAuth flows work. - [Use OAuth Device Authorization Grant](https://clerk.com/docs/guides/configure/auth-strategies/oauth/device-authorization-grant.md): Learn how to authorize CLIs, TVs, and other input-constrained devices with Clerk's OAuth 2.0 Device Authorization Grant. - [Manage OAuth clients with Client ID Metadata Documents](https://clerk.com/docs/guides/configure/auth-strategies/oauth/client-id-metadata-documents.md): Learn how Clerk uses Client ID Metadata Documents and how to explicitly allow, review, and block URL-identified OAuth clients. - [Add X/Twitter v2 as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/x-twitter.md): Learn how to allow users to sign up and sign in to your Clerk application with their X/Twitter account using OAuth. - [Add Xero as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/xero.md): Learn how to allow users to sign up and sign in to your Clerk application with their Xero account using OAuth. - [Add Vercel as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/vercel.md): Learn how to allow users to sign up and sign in to your Clerk application with their Vercel account using OAuth. - [Twitter v1](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/twitter.md): Learn how to set up social connection with Twitter v1. - [Add Twitch as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/twitch.md): Learn how to allow users to sign up and sign in to your Clerk application with their Twitch account using OAuth. - [Add Spotify as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/spotify.md): Learn how to allow users to sign up and sign in to your Clerk application with their Spotify account using OAuth. - [Add Bitbucket as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/bitbucket.md): Learn how to allow users to sign up and sign in to your Clerk application with their Bitbucket account using OAuth. - [Add AgentID as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/agentid.md): Learn how to allow users to sign up and sign in to your Clerk application with their AgentID account using OAuth. - [Add TikTok as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/tiktok.md): Learn how to allow users to sign up and sign in to your Clerk application with their TikTok account using OAuth. - [Add Atlassian as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/atlassian.md): Learn how to allow users to sign up and sign in to your Clerk application with their Atlassian account using OAuth. - [Add Apple as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/apple.md): Learn how to allow users to sign up and sign in to your Clerk application with their Apple ID using OAuth. - [Add Slack as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/slack.md): Learn how to allow users to sign up and sign in to your Clerk application with their Slack account using OAuth. - [Account linking for OAuth](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/account-linking.md): Learn how Clerk handles account linking and manages unverified email addresses from OAuth providers. - [Add Notion as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/notion.md): Learn how to allow users to sign up and sign in to your Clerk application with their Notion account using OAuth. - [Add Microsoft Entra ID as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/microsoft.md): Learn how to allow users to sign up and sign in to your Clerk application with their Microsoft account using OAuth. - [Add LinkedIn OpenID Connect (OIDC) as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/linkedin-oidc.md): Learn how to allow users to sign up and sign in to your Clerk application with their LinkedIn account using OpenID Connect (OIDC). - [Add GitHub as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/github.md): Learn how to allow users to sign up and sign in to your Clerk application with their GitHub account using OAuth. - [Add Facebook as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/facebook.md): Learn how to allow users to sign up and sign in to your Clerk application with their Facebook account using OAuth. - [Add Linear as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/linear.md): Learn how to allow users to sign up and sign in to your Clerk application with their Linear account using OAuth. - [Add Discord as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/discord.md): Learn how to allow users to sign up and sign in to your Clerk application with their Discord account using OAuth. - [Add a custom OAuth provider as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/custom-provider.md): Configure a custom OpenID Connect (OIDC) compatible authentication provider for your Clerk application. - [Add Hugging Face as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/hugging-face.md): Learn how to allow users to sign up and sign in to your Clerk application with their Hugging Face account using OAuth. - [Add Dropbox as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/dropbox.md): Learn how to allow users to sign up and sign in to your Clerk application with their Dropbox account using OAuth. - [Add Coinbase as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/coinbase.md): Learn how to allow users to sign up and sign in to your Clerk application with their Coinbase account using OAuth. - [Add Box as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/box.md): Learn how to allow users to sign up and sign in to your Clerk application with their Box account using OAuth. - [Add LINE as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/line.md): Learn how to allow users to sign up and sign in to your Clerk application with their LINE account using OAuth. - [Add Google as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/google.md): Learn how to allow users to sign up and sign in to your Clerk application with their Google account using OAuth. - [Add GitLab as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/gitlab.md): Learn how to allow users to sign up and sign in to your Clerk application with their GitLab account using OAuth. - [Add HubSpot as a social connection](https://clerk.com/docs/guides/configure/auth-strategies/social-connections/hubspot.md): Learn how to allow users to sign up and sign in to your Clerk application with their HubSpot account using OAuth. - [OKX Wallet](https://clerk.com/docs/guides/configure/auth-strategies/web3/okx-wallet.md): Learn how to set up Web3 authentication with OKX Wallet. - [Solana](https://clerk.com/docs/guides/configure/auth-strategies/web3/solana.md): Learn how to set up Web3 authentication with Solana. - [Base](https://clerk.com/docs/guides/configure/auth-strategies/web3/base.md): Learn how to set up Web3 authentication with Base. - [MetaMask](https://clerk.com/docs/guides/configure/auth-strategies/web3/metamask.md): Learn how to set up Web3 authentication with MetaMask. - [Coinbase Wallet](https://clerk.com/docs/guides/configure/auth-strategies/web3/coinbase-wallet.md): Learn how to set up Web3 authentication with Coinbase Wallet. - [Customizing Clerk](https://clerk.com/docs/guides/customizing-clerk/overview.md): An overview of all customization options in Clerk, including UI styling, navigation menus, localization, and email and SMS templates. - [Email and SMS templates](https://clerk.com/docs/guides/customizing-clerk/email-sms-templates.md): Learn how to configure the theming of Clerk-sent emails and SMS messages. - [Localization prop](https://clerk.com/docs/guides/customizing-clerk/localization.md): Use the Clerk localizations package to override and provide predefined or custom localizations for your Clerk components, enabling you to offer localized content or tailor the wording to match your brand. - [Clerk Elements](https://clerk.com/docs/guides/customizing-clerk/elements/overview.md): Learn how to use Clerk Elements to build custom UIs on top of the Clerk APIs without having to manage the underlying logic. - [Sign-in](https://clerk.com/docs/guides/customizing-clerk/elements/examples/sign-in.md): Examples of prebuilt sign-in flows with Clerk Elements. - [Primitives](https://clerk.com/docs/guides/customizing-clerk/elements/examples/primitives.md): Example implementations using Clerk Elements primitives. - [shadcn/ui](https://clerk.com/docs/guides/customizing-clerk/elements/examples/shadcn-ui.md): Learn how to compose Clerk Elements with shadcn/ui to build custom sign in and sign up flows. - [Sign-up](https://clerk.com/docs/guides/customizing-clerk/elements/examples/sign-up.md): Examples of prebuilt sign-up flows with Clerk Elements. - [Build a sign-up flow with Clerk Elements](https://clerk.com/docs/guides/customizing-clerk/elements/guides/sign-up.md): Learn how to build a complete sign-up form with Clerk Elements. - [Styling for Clerk Elements](https://clerk.com/docs/guides/customizing-clerk/elements/guides/styling.md): Learn how to style Clerk Elements. - [Build a sign-in flow with Clerk Elements](https://clerk.com/docs/guides/customizing-clerk/elements/guides/sign-in.md): Learn how to build a complete sign-in form with Clerk Elements. - [Common components](https://clerk.com/docs/guides/customizing-clerk/elements/reference/common.md): Reference documentation for common Clerk Elements components. - [Sign-up components](https://clerk.com/docs/guides/customizing-clerk/elements/reference/sign-up.md): Reference documentation for Clerk Elements sign-up components. - [Sign-in components](https://clerk.com/docs/guides/customizing-clerk/elements/reference/sign-in.md): Reference documentation for Clerk Elements sign-in components. - [Manage your workspace](https://clerk.com/docs/guides/dashboard/overview.md): Learn how to manage your workspace in the Clerk Dashboard, including creating workspaces, inviting team members, transferring applications, canceling your plan, and deleting your account. - [Manage team access](https://clerk.com/docs/guides/dashboard/manage-team-access.md): Learn about workspace Roles and their feature-specific Permissions in the Clerk Dashboard, including the Owner, Admin, Developer, Support, and Viewer Roles. - [Organization profile](https://clerk.com/docs/guides/dashboard/organization-profile.md): Learn how to view and manage Organization settings, membership, and data in the Clerk Dashboard. - [User profile](https://clerk.com/docs/guides/dashboard/user-profile.md): Learn how to view and manage individual user identity and data in the Clerk Dashboard. - [Analytics](https://clerk.com/docs/guides/dashboard/analytics.md): Learn how to use analytics in the Clerk Dashboard to track user engagement, sign-in activity, retention, and more. - [Authentication across different domains](https://clerk.com/docs/guides/dashboard/dns-domains/satellite-domains.md): Learn how to share sessions across different domains by adding satellite domains to your application. - [Subdomain allowlist](https://clerk.com/docs/guides/dashboard/dns-domains/subdomain-allowlist.md): Restrict which subdomains can make cross-domain requests to the Frontend API for stronger security. - [Proxying the Clerk Frontend API](https://clerk.com/docs/guides/dashboard/dns-domains/proxy-fapi.md): Learn how to proxy the Clerk Frontend API through your domain. - [Email Logs](https://clerk.com/docs/guides/dashboard/logs/email-logs.md): Learn how to use Email Logs in the Clerk Dashboard to investigate transactional email delivery events and troubleshoot failed or delayed messages. - [Application Logs](https://clerk.com/docs/guides/dashboard/logs/application-logs.md): Learn how to use Application Logs in the Clerk Dashboard to monitor authentication events, track user activity, and debug issues across your instance. - [SMS delivery events](https://clerk.com/docs/guides/dashboard/logs/sms-delivery-events.md): Trace SMS delivery, understand failures, and troubleshoot missing verification codes in Application Logs. - [Dashboard Logs](https://clerk.com/docs/guides/dashboard/logs/overview.md): Learn how to view and filter logs in the Clerk Dashboard. - [Admin Logs](https://clerk.com/docs/guides/dashboard/logs/admin-logs.md): Learn how to use Admin Logs, the audit log for your Clerk workspace covering instance configuration changes, Role and Permission edits, integration setup, and other operations initiated from the Dashboard, Backend API, or Platform API. - [Tokens and signatures](https://clerk.com/docs/guides/how-clerk-works/tokens-and-signatures.md): Learn about JWTs, digital signatures, and how Clerk uses them to securely authenticate users. - [Rate limits](https://clerk.com/docs/guides/how-clerk-works/system-limits.md): Learn about rate limiting on the Clerk APIs. - [Routing in Clerk](https://clerk.com/docs/guides/how-clerk-works/routing.md): Learn how Clerk handles routing in your application. - [How Clerk works](https://clerk.com/docs/guides/how-clerk-works/overview.md): Learn how Clerk is architected and how it works under the hood. - [Multi-tenant architecture](https://clerk.com/docs/guides/how-clerk-works/multi-tenant-architecture.md): This guide outlines a number of the common architecture scenarios for building B2B, B2C, and Platform applications with Clerk, their characteristics, and limitations. - [Cookies](https://clerk.com/docs/guides/how-clerk-works/cookies.md): Learn how cookies enable secure authentication and manage browser-server interactions. - [Vulnerability disclosure policy](https://clerk.com/docs/guides/how-clerk-works/security/vulnerability-disclosure-policy.md): Clerk's vulnerability disclosure policy. - [Clerk Telemetry](https://clerk.com/docs/guides/how-clerk-works/security/clerk-telemetry.md): Clerk collects telemetry data from its SDKs about general product and feature usage. - [Organizations](https://clerk.com/docs/guides/organizations/overview.md): Learn what Clerk Organizations are, how they work, and how to build secure multi-tenant B2B applications with team workspaces, Role-Based Access Control, and streamlined enrollment. - [Use Organization slugs in URLs](https://clerk.com/docs/guides/organizations/org-slugs-in-urls.md): Learn how to use Organization slugs in your application URLs to build tenant-specific authentication flows. Enable seamless switching between active Organizations (one-to-many or many-to-many) with Clerk's secure and scalable multi-tenant authentication suite. - [Organization metadata](https://clerk.com/docs/guides/organizations/metadata.md): Learn how to add custom metadata to your B2B authentication flows to store additional information in the org object for advanced user segmentation, analytics, and B2B workflows. - [Domain verification](https://clerk.com/docs/guides/organizations/domain-verification.md): Learn how Clerk verifies Organization domains through affiliation (email) and ownership (DNS TXT), and what each method unlocks. - [Create and manage Organizations](https://clerk.com/docs/guides/organizations/create-and-manage.md): Learn how to create and manage individual Organizations in the Clerk Dashboard and in your application. - [Configure Organizations](https://clerk.com/docs/guides/organizations/configure.md): Learn how to configure global Organization settings in the Clerk Dashboard, including pricing, membership limits, and optional features. - [Verified Domains](https://clerk.com/docs/guides/organizations/add-members/verified-domains.md): Automatically invite or suggest users to join an Organization based on their email domain, using Clerk's Verified Domains feature. - [Organization-level Enterprise SSO](https://clerk.com/docs/guides/organizations/add-members/sso.md): Integrate as many Enterprise SSO methods within Clerk Organizations. Enable SAML SSO, OAuth/OIDC, and other secure MFA/single sign-on options for B2B SaaS apps. - [Invite users to your Organization](https://clerk.com/docs/guides/organizations/add-members/invitations.md): Send, manage, and track user invitations within your multi-tenant SaaS using Clerk Organizations. - [Roles and Permissions](https://clerk.com/docs/guides/organizations/control-access/roles-and-permissions.md): Implement Role-Based Access Control (RBAC) in your application. Set custom Roles, assign privileges, and control access to resources using Clerk Organizations. - [Role Sets](https://clerk.com/docs/guides/organizations/control-access/role-sets.md): Control which Roles are available to each Organization using Role Sets, the foundational building block for Organization-level access control. - [Clerk Protect](https://clerk.com/docs/guides/protect/overview.md): Clerk Protect blocks and challenges abusive sign-ups. Learn how its decisions work and what it includes. - [Set up Protect](https://clerk.com/docs/guides/protect/setup.md): Check that your application meets Clerk Protect's requirements, then enable protections in the Clerk Dashboard. - [Device Intelligence](https://clerk.com/docs/guides/protect/device-intelligence.md): Device Intelligence runs background browser checks. Learn how Require Device Intelligence checks uses the result. - [Require Device Intelligence checks](https://clerk.com/docs/guides/protect/system-protections/require-device-intelligence.md): Block sign-ups created by browsers that have no verified Device Intelligence result. - [Brute force attacks and locking user accounts](https://clerk.com/docs/guides/secure/user-lockout.md): User information is a prime target for malicious activity. Clerk protects your users against brute force attacks by locking out accounts with too many sign-in attempts until a set period of time has passed. - [User enumeration protection](https://clerk.com/docs/guides/secure/user-enumeration-protection.md): Learn how to protect your users from user enumeration attacks. - [Add reverification for sensitive actions](https://clerk.com/docs/guides/secure/reverification.md): Learn how to implement Clerk's reverification feature to protect sensitive actions in your application. - [Rotate your Clerk API keys](https://clerk.com/docs/guides/secure/rotate-api-keys.md): Learn how to rotate your Clerk Secret Key and webhook signing secrets to revoke access for compromised credentials. - [Legal compliance](https://clerk.com/docs/guides/secure/legal-compliance.md): Learn how to configure your legal compliance settings in the Clerk Dashboard. - [Session options](https://clerk.com/docs/guides/secure/session-options.md): Clerk provides session management options for fine-tuning user visits to your application. - [Password protection and rules](https://clerk.com/docs/guides/secure/password-protection-and-rules.md): Clerk refers to the National Institute of Standards and Technology (NIST) guidelines to determine the character rules for passwords. - [Restricting access](https://clerk.com/docs/guides/secure/restricting-access.md): Learn how to manage user access to your application by configuring Clerk's access restrictions. - [MFA account recovery](https://clerk.com/docs/guides/secure/mfa-recovery.md): Learn how to reset MFA for users who have lost access to their second factor, and how to build your own reset flow with the Backend API. - [Securing your app](https://clerk.com/docs/guides/secure/overview.md): Learn how Clerk protects your application from common security threats including credential stuffing, brute force attacks, XSS, CSRF, and more. - [Challenge suspicious sign-ups](https://clerk.com/docs/guides/secure/bot-protection.md): Protect your application from bots by challenging sign-ups that look automated or come through VPNs, Tor, or proxies. - [Features](https://clerk.com/docs/guides/secure/features.md): Grant access to your privileged content and data using features. - [Device Trust](https://clerk.com/docs/guides/secure/device-trust.md): Protect your users from credential stuffing attacks with automatic second-factor verification on new devices. - [Bot sign-up protection](https://clerk.com/docs/guides/secure/legacy-bot-protection.md): Learn how legacy bot sign-up protection works, and how to update your application to Challenge suspicious sign-ups. - [Implement basic Role Based Access Control (RBAC) with metadata](https://clerk.com/docs/guides/secure/basic-rbac.md): Learn how to leverage Clerk's publicMetadata to implement your own basic Role Based Access Controls. - [XSS leak protection](https://clerk.com/docs/guides/secure/best-practices/xss-leak-protection.md): Learn how Clerk prevents and mitigates XSS attacks. - [Unauthorized sign-in](https://clerk.com/docs/guides/secure/best-practices/unauthorized-sign-in.md): Notify users of unauthorized sign-ins to their accounts - [Protect email link sign-ins and sign-ups](https://clerk.com/docs/guides/secure/best-practices/protect-email-links.md): Learn how to protect email link sign-ins and sign-ups. - [Fixation protection](https://clerk.com/docs/guides/secure/best-practices/fixation-protection.md): Session fixation is an attack that permits an attacker to hijack a valid user session. The attack explores a limitation in the way the web application manages the session ID, more specifically the vulnerable web application. When authenticating a user, it doesn’t assign a new session ID, making it possible to use an existent session ID. - [CSRF protection](https://clerk.com/docs/guides/secure/best-practices/csrf-protection.md): CSRF is an attack that tricks the victim into submitting a malicious request. It inherits the identity and privileges of the victim to perform an undesired function on the victim’s behalf. - [Configure Clerk Content-Security-Policy headers](https://clerk.com/docs/guides/secure/best-practices/csp-headers.md): Learn how to configure your Content Security Policy to work with Clerk and its abuse and fraud protections. - [Manual JWT verification](https://clerk.com/docs/guides/sessions/manual-jwt-verification.md): Learn how to manually verify Clerk-generated session tokens (JWTs). - [Customize your session token](https://clerk.com/docs/guides/sessions/customize-session-tokens.md): Learn how to customize the session token that is generated for you by Clerk. - [Force a session token refresh](https://clerk.com/docs/guides/sessions/force-token-refresh.md): Learn how to force a refresh of a user's session token in your Clerk application. - [Session tokens](https://clerk.com/docs/guides/sessions/session-tokens.md): Learn about session tokens and how to validate them in your backend. - [JWT templates](https://clerk.com/docs/guides/sessions/jwt-templates.md): Learn how to create custom JWT templates to generate JSON Web Tokens with Clerk. - [Sync auth status between your Chrome Extension and web app](https://clerk.com/docs/guides/sessions/sync-host.md): Learn how to configure your Chrome Extension to sync user authentication with your web application. - [Verify a Clerk session in Go](https://clerk.com/docs/guides/sessions/verifying.md): Learn how to verify a session with Clerk in your Go application. - [User metadata](https://clerk.com/docs/guides/users/extending.md): Learn how to store information about a user that Clerk doesn't collect and extend the User object. - [Users](https://clerk.com/docs/guides/users/managing.md): Learn how to manage your users in your Clerk application. - [User impersonation](https://clerk.com/docs/guides/users/impersonation.md): Clerk's user impersonation feature allows you to sign in as different users to offer customer support or debug issues. - [Invite users to your application](https://clerk.com/docs/guides/users/inviting.md): Learn how to invite users to your Clerk application. - [Clerk environment variables](https://clerk.com/docs/guides/development/clerk-environment-variables.md): Learn which Clerk environment variables are necessary to configure your projects. - [Customize your redirect URLs](https://clerk.com/docs/guides/development/customize-redirect-urls.md): Customize where your users are redirected to after they sign in or sign up. - [Making authenticated requests](https://clerk.com/docs/guides/development/making-requests.md): Learn about various ways to make authenticated requests to the backend when using Clerk SDKs. - [Use image optimization to improve app performance](https://clerk.com/docs/guides/development/image-optimization.md): Learn how to use image optimization when fetching user images from Clerk. - [Override Clerk interfaces with custom types](https://clerk.com/docs/guides/development/override-clerk-types-interfaces.md): Learn about the interfaces that you can use to define custom types for your application. - [Instances / Environments](https://clerk.com/docs/guides/development/managing-environments.md): An overview of the differences between development and production instances. - [Integrate Clerk into your Next.js + tRPC app](https://clerk.com/docs/guides/development/trpc.md): Learn how to integrate Clerk into your Next.js app using tRPC. - [Install Clerk with shadcn/ui CLI](https://clerk.com/docs/guides/development/shadcn-cli.md): Use the shadcn/ui CLI to bootstrap your Next.js app with Clerk. - [Next.js rendering modes and Clerk](https://clerk.com/docs/guides/development/rendering-modes.md): Learn how Clerk's SDK interacts with Next.js's different rendering modes. - [Basic geo blocking](https://clerk.com/docs/guides/development/geo-blocking.md): Learn how to add geo blocking to your Next.js + Clerk application. - [Add custom onboarding to your authentication flow](https://clerk.com/docs/guides/development/add-onboarding-flow.md): Leverage Clerk’s customizable session tokens, public metadata, and Middleware to create a robust onboarding experience. - [Add React Router to your Clerk-powered Chrome Extension](https://clerk.com/docs/guides/development/add-react-router.md): Learn how to add React Router to your React app using their Data API router. - [Enable biometric sign-in for returning users in Expo](https://clerk.com/docs/guides/development/local-credentials.md): Learn how to use the useLocalCredentials() hook in your Expo app to enable biometric sign-ins for returning users. - [Enable offline support in your Expo app](https://clerk.com/docs/guides/development/offline-support.md): Learn how to enable offline support in your Expo app with Clerk. - [Access the Clerk object outside of components](https://clerk.com/docs/guides/development/access-clerk-outside-components.md): Learn how to access and use the Clerk instance outside of React components in Expo applications. - [Configure a consistent CRX ID for your Chrome Extension](https://clerk.com/docs/guides/development/configure-consistent-crx-id.md): Learn how to configure a consistent CRX ID in your Chrome Extension. - [Endpoints](https://clerk.com/docs/guides/development/endpoints.md): Learn how to use Clerk's Astro SDK in your Astro endpoints. - [Astro hybrid rendering](https://clerk.com/docs/guides/development/hybrid-rendering.md): Clerk's Astro SDK supports Astro's on-demand rendering output modes (server and hybrid). - [Build your own sign-up page with prebuilt components on web](https://clerk.com/docs/guides/development/web-support/custom-sign-up-page.md): Learn how to add custom sign-up page to your Expo app with Clerk's prebuilt components. - [Build your own sign-in-or-up page for your Expo web app](https://clerk.com/docs/guides/development/web-support/custom-sign-in-or-up-page.md): Learn how to add custom sign-in-or-up page to your Expo web app with Clerk's prebuilt components. - [Web support](https://clerk.com/docs/guides/development/web-support/overview.md): Add web support to your Expo project with Clerk. - [Deploying a Clerk app to Vercel](https://clerk.com/docs/guides/development/deployment/vercel.md): Learn how to deploy a Clerk app to Vercel. - [Deploy your Clerk app to production](https://clerk.com/docs/guides/development/deployment/production.md): Learn how to deploy your Clerk app to production. - [Change domain](https://clerk.com/docs/guides/development/deployment/changing-domains.md): Learn how to change your Clerk production instance's primary domain. - [Deploy a Clerk app behind a proxy](https://clerk.com/docs/guides/development/deployment/behind-a-proxy.md): Learn how to deploy a Clerk app to a web server using proxies and reverse proxies like nginx or Caddy, or using Docker. - [Staging alternatives](https://clerk.com/docs/guides/development/deployment/staging-alternatives.md): Alternative approaches to setting up a staging environment with Clerk, including using shared production credentials with a subdomain. - [Deploy an Electron app to production](https://clerk.com/docs/guides/development/deployment/electron.md): Learn how to package an Electron app with Clerk for production. - [Deploy an Expo app to production](https://clerk.com/docs/guides/development/deployment/expo.md): Learn how to deploy an Expo app to production with Clerk. - [Deploy a Chrome Extension to production](https://clerk.com/docs/guides/development/deployment/chrome-extension.md): Learn how to deploy a Chrome Extension to production with Clerk. - [Deploy an Astro app to production](https://clerk.com/docs/guides/development/deployment/astro.md): Learn how to deploy an Astro app to production with Clerk. - [Build your own UI (custom flows)](https://clerk.com/docs/guides/development/custom-flows/overview.md): Learn the process behind building custom sign-up and sign-in flows with Clerk. - [Build a custom flow for managing API keys](https://clerk.com/docs/guides/development/custom-flows/api-keys/manage-api-keys.md): Learn how to use the Clerk API to build a custom flow for creating, listing, and revoking API keys. - [Build a custom flow for managing multi-factor authentication](https://clerk.com/docs/guides/development/custom-flows/account-updates/manage-mfa.md): Learn how to use the Clerk API to build a custom flow for managing multi-factor authentication. - [Build a custom flow for managing SSO connections](https://clerk.com/docs/guides/development/custom-flows/account-updates/manage-sso-connections.md): Learn how to use the Clerk API to build a custom flow for adding and managing SSO connections - [Build a custom flow for adding a phone number to a user's account](https://clerk.com/docs/guides/development/custom-flows/account-updates/add-phone.md): Learn how to use the Clerk API to build a custom flow for adding a phone number to a user's account. - [Build a custom flow for updating a user's password](https://clerk.com/docs/guides/development/custom-flows/account-updates/update-password.md): Learn how to build a custom update password flow using the Clerk API. - [Build a custom flow for adding an email to a user's account](https://clerk.com/docs/guides/development/custom-flows/account-updates/add-email.md): Learn how to use the Clerk API to build a custom flow for adding an email to a user's account. - [Build a custom flow for updating an Organization](https://clerk.com/docs/guides/development/custom-flows/organizations/update-organizations.md): Learn how to use the Clerk API to build a custom flow for updating an Organization in your application. - [Build a custom flow for switching Organizations](https://clerk.com/docs/guides/development/custom-flows/organizations/organization-switcher.md): Learn how to use the Clerk API to build a custom flow for switching between Organizations. - [Build a custom flow for managing member Roles in an Organization](https://clerk.com/docs/guides/development/custom-flows/organizations/manage-roles.md): Learn how to use the Clerk API build a custom flow for managing member Roles in an Organization. - [Build a custom flow for creating and managing Organization invitations](https://clerk.com/docs/guides/development/custom-flows/organizations/manage-organization-invitations.md): Learn how to use the Clerk API to build a custom flow for creating and managing Organization invitations. - [Build a custom flow for managing a user's Organization invitations](https://clerk.com/docs/guides/development/custom-flows/organizations/manage-user-org-invitations.md): Learn how to use the Clerk API to build a custom flow for managing a user's Organization invitations. - [Build a custom flow for creating Organizations](https://clerk.com/docs/guides/development/custom-flows/organizations/create-organizations.md): Learn how to use the Clerk API to build a custom flow for creating Organizations. - [Handle accepting Organization invitation links](https://clerk.com/docs/guides/development/custom-flows/organizations/accept-organization-invitations.md): Learn how to use the Clerk API to build a custom flows for accepting Organization invitations. - [Build a custom flow for managing Organization Membership Requests](https://clerk.com/docs/guides/development/custom-flows/organizations/manage-membership-requests.md): Learn how to use the Clerk API to build a custom flow for managing Organization Membership Requests. - [Build a custom flow for displaying the last authentication method](https://clerk.com/docs/guides/development/custom-flows/authentication/last-authentication-strategy.md): Learn how to use the Clerk API to build a custom flow for displaying the lastAuthenticationStrategy property and highlighting the last used OAuth provider with a badge. - [Build a custom email/password authentication flow](https://clerk.com/docs/guides/development/custom-flows/authentication/email-password.md): Learn how to build a custom email/password sign-up and sign-in flow using the Clerk API. - [Build a custom forgot password flow](https://clerk.com/docs/guides/development/custom-flows/authentication/forgot-password.md): Learn how to build a custom forgot password flow using the Clerk API. - [Build a custom sign-in flow with email or phone code](https://clerk.com/docs/guides/development/custom-flows/authentication/email-sms-otp.md): Learn how build a custom passwordless sign-in flow with email or phone code using the Clerk API. - [Build a custom sign-in flow with Device Trust](https://clerk.com/docs/guides/development/custom-flows/authentication/device-trust.md): Learn how to build a custom sign-in flow that requires Device Trust. - [Build a custom sign-out flow](https://clerk.com/docs/guides/development/custom-flows/authentication/sign-out.md): Learn how to use the Clerk API to build a custom sign-out flow using Clerk's signOut() function. - [Sign-up with application invitations](https://clerk.com/docs/guides/development/custom-flows/authentication/application-invitations.md): Learn how to use the Clerk API to build a custom flow for handling application invitations. - [Session tasks](https://clerk.com/docs/guides/development/custom-flows/authentication/session-tasks.md): Learn how to handle session tasks in your custom authentication flow. - [Sign-in-or-up custom flow](https://clerk.com/docs/guides/development/custom-flows/authentication/sign-in-or-up.md): Learn how to handle a combined sign-up and sign-in flow in your application. - [Build a custom authentication flow using passkeys](https://clerk.com/docs/guides/development/custom-flows/authentication/passkeys.md): Learn how to use the Clerk API to build a custom authentication flow using passkeys. - [Build a custom flow for authenticating with OAuth connections](https://clerk.com/docs/guides/development/custom-flows/authentication/oauth-connections.md): Learn how to use the Clerk API to build a custom sign-up and sign-in flow that supports OAuth connections. - [Build a custom multi-session flow](https://clerk.com/docs/guides/development/custom-flows/authentication/multi-session-applications.md): Learn how to use the Clerk API to add multi-session handling to your application. - [Build a custom sign-in flow with multi-factor authentication (MFA)](https://clerk.com/docs/guides/development/custom-flows/authentication/multi-factor-authentication.md): Learn how to build a custom sign-in flow that requires multi-factor authentication (MFA). - [Build a custom flow for authenticating with enterprise connections](https://clerk.com/docs/guides/development/custom-flows/authentication/enterprise-connections.md): Learn how to use the Clerk API to build a custom sign-up and sign-in flow that supports enterprise connections. - [Build a custom flow for handling legal acceptance](https://clerk.com/docs/guides/development/custom-flows/authentication/legal-acceptance.md): Learn how to use the Clerk API to build a custom user interface for handling legal acceptance. - [Build a custom sign-in flow with multi-factor authentication](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/email-password-mfa.md): Use the legacy Clerk API to build a custom email/password sign-in flow that requires multi-factor authentication (MFA). - [Build a custom flow for handling legal acceptance](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/legal-acceptance.md): Use the legacy Clerk API to build a custom user interface for handling legal acceptance. - [Build a custom email/password authentication flow](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/email-password.md): Use the legacy Clerk API to build a custom email/password sign-up and sign-in flow. - [Build a custom flow for authenticating with OAuth connections](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/oauth-connections.md): Use the legacy Clerk API to build a custom sign-up and sign-in flow that supports OAuth connections. - [Build a custom email or phone OTP authentication flow](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/email-sms-otp.md): Use the legacy Clerk API to build a custom email or phone one time code (OTP) authentication flow. - [Build a custom authentication flow using passkeys](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/passkeys.md): Use the legacy Clerk API to build a custom authentication flow using passkeys. - [Sign-in-or-up custom flow](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/sign-in-or-up.md): Use the legacy Clerk API to handle a combined sign-up and sign-in flow in your application. - [Build a custom flow for authenticating with enterprise connections](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/enterprise-connections.md): Use the legacy Clerk API to build a custom sign-up and sign-in flow that supports enterprise connections. - [Build a custom flow for displaying the last authentication method](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/last-authentication-strategy.md): Use the legacy Clerk API to build a custom flow for displaying the lastAuthenticationStrategy property and highlighting the last used OAuth provider with a badge. - [Sign-up with application invitations](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/application-invitations.md): Use the legacy Clerk API to build a custom flow for handling application invitations. - [Build a custom forgot password flow](https://clerk.com/docs/guides/development/custom-flows/authentication/legacy/forgot-password.md): Learn how to build a custom forgot password flow using the Clerk API. - [Migrate from Cognito](https://clerk.com/docs/guides/development/migrating/cognito.md): Seamlessly migrate AWS Cognito user passwords into Clerk. - [Migrate from Firebase](https://clerk.com/docs/guides/development/migrating/firebase.md): Migrating your user base from Firebase to Clerk is a 2-part process that can be accomplished with just a few steps. - [Migrating](https://clerk.com/docs/guides/development/migrating/overview.md): Guides on how to move your user data from another authentication platform to Clerk. - [Migrate from Auth.js to Clerk](https://clerk.com/docs/guides/development/migrating/authjs.md): Learn how to migrate an application using Auth.js to use Clerk for authentication. - [Migrating from the Astro community SDK](https://clerk.com/docs/guides/development/migrating/astro-community-sdk.md): Learn how to migrate from the Astro community SDK to the Clerk Astro SDK. - [Migrating from the Vue community SDK](https://clerk.com/docs/guides/development/migrating/vue-community-sdk.md): Learn how to migrate from the Vue community SDK to the Clerk Vue SDK. - [Using M2M tokens](https://clerk.com/docs/guides/development/machine-auth/m2m-tokens.md): Learn how to use Clerk's M2M tokens feature to authenticate requests between machines. - [Using API keys](https://clerk.com/docs/guides/development/machine-auth/api-keys.md): Learn how to use Clerk's API keys feature to let your application's users create API keys that delegate access to your application's API on their behalf. - [Machine Authentication](https://clerk.com/docs/guides/development/machine-auth/overview.md): Learn what machine authentication is, why it's used, and how it works with Clerk. - [Token formats](https://clerk.com/docs/guides/development/machine-auth/token-formats.md): Learn about the differences between JWT and opaque token formats for machine authentication. - [Integrations](https://clerk.com/docs/guides/development/integrations/overview.md): Learn about the available integrations with Clerk. - [Integrate Shopify with Clerk](https://clerk.com/docs/guides/development/integrations/platforms/shopify.md): Learn how to integrate Clerk into your Shopify store. - [Integrate Clerk through the Vercel Marketplace](https://clerk.com/docs/guides/development/integrations/platforms/vercel-marketplace.md): Learn how to integrate Clerk into your Vercel projects through the Vercel Marketplace. - [Enable Google Analytics for Clerk](https://clerk.com/docs/guides/development/integrations/analytics/google-analytics.md): Enable Clerk with Google Analytics to authenticate requests to your application. - [Integrate Encore with Clerk](https://clerk.com/docs/guides/development/integrations/frameworks/encore.md): Learn how to integrate Clerk for secure authentication and user management into your Encore backend application. - [Integrate InstantDB with Clerk](https://clerk.com/docs/guides/development/integrations/databases/instantdb.md): Learn how to integrate Clerk into your InstantDB application. - [Integrate Neon Postgres with Clerk](https://clerk.com/docs/guides/development/integrations/databases/neon.md): Learn how to integrate Clerk into your Neon application. - [Integrate Nhost with Clerk](https://clerk.com/docs/guides/development/integrations/databases/nhost.md): Learn how to integrate Clerk into your Nhost project. - [Integrate Prisma Postgres with Clerk](https://clerk.com/docs/guides/development/integrations/databases/prisma-postgres.md): Learn how to integrate Clerk into your Prisma Postgres application. - [Integrate Supabase with Clerk](https://clerk.com/docs/guides/development/integrations/databases/supabase.md): Learn how to integrate Clerk into your Supabase application. - [Integrate Hasura with Clerk](https://clerk.com/docs/guides/development/integrations/databases/hasura.md): Learn how to integrate Clerk into your Hasura application. - [Integrate Convex with Clerk](https://clerk.com/docs/guides/development/integrations/databases/convex.md): Learn how to integrate Clerk into your Convex application. - [Integrate Grafbase with Clerk](https://clerk.com/docs/guides/development/integrations/databases/grafbase.md): Learn how to integrate Clerk and Grafbase into your application - [Integrate Firebase with Clerk](https://clerk.com/docs/guides/development/integrations/databases/firebase.md): Learn how to integrate Clerk into your Firebase application. - [Agent Tasks](https://clerk.com/docs/guides/development/testing/agent-tasks.md): Use Agent Tasks to create authenticated sessions on behalf of users in your tests and AI agent workflows. - [Testing](https://clerk.com/docs/guides/development/testing/overview.md): Learn about testing with Clerk. - [Testing with Postman or Insomnia](https://clerk.com/docs/guides/development/testing/postman-or-insomnia.md): Learn about generating and using a long-lived JWT Token with Postman or Insomnia. - [Test emails and phones](https://clerk.com/docs/guides/development/testing/test-emails-and-phones.md): Write end-to-end tests for email and phone verification flows, including OTPs and email verification links. - [Test Organization domains](https://clerk.com/docs/guides/development/testing/test-organization-domains.md): Verify Organization domain ownership in local development and end-to-end tests without publishing a real DNS record. - [Testing with Playwright](https://clerk.com/docs/guides/development/testing/playwright/overview.md): Use Playwright to write end-to-end tests with Clerk. - [Reuse auth state across tests](https://clerk.com/docs/guides/development/testing/playwright/test-authenticated-flows.md): Learn how to save and reuse authenticated state across Playwright tests. - [Test the sign-up form](https://clerk.com/docs/guides/development/testing/playwright/test-sign-up-flows.md): Learn how to test the sign-up form with Playwright, including additional fields like first and last name. - [Test helpers](https://clerk.com/docs/guides/development/testing/playwright/test-helpers.md): Use test helpers to sign in/sign out with Clerk in your Playwright tests. - [Custom commands](https://clerk.com/docs/guides/development/testing/cypress/custom-commands.md): Use custom commands to sign in and out with Clerk in your Cypress tests. - [Testing with Cypress](https://clerk.com/docs/guides/development/testing/cypress/overview.md): Use Cypress to write end-to-end tests with Clerk. - [Test Account Portal flows](https://clerk.com/docs/guides/development/testing/cypress/test-account-portal.md): Learn how to test the Account Portal flow with Cypress. - [SDK development](https://clerk.com/docs/guides/development/sdk-development/overview.md): A reference for implementing a new Clerk SDK from scratch. - [Philosophy](https://clerk.com/docs/guides/development/sdk-development/philosophy.md): The guiding principle for building a Clerk SDK. - [Terminology](https://clerk.com/docs/guides/development/sdk-development/terminology.md): A list of common terms and their explanations used inside Clerk's SDKs. - [SDK types](https://clerk.com/docs/guides/development/sdk-development/types.md): Learn about the three different types of SDKs: frontend-only, backend-only, and fullstack. - [Fullstack SDK](https://clerk.com/docs/guides/development/sdk-development/fullstack.md): A reference for implementing a fullstack Clerk SDK - [Frontend-only SDK](https://clerk.com/docs/guides/development/sdk-development/frontend-only.md): A reference for implementing a frontend-only Clerk SDK - [Conventions](https://clerk.com/docs/guides/development/sdk-development/conventions.md): A set of agreed standards for building Clerk SDKs. - [Backend-only SDK](https://clerk.com/docs/guides/development/sdk-development/backend-only.md): A reference for implementing a backend-only Clerk SDK - [Upgrade guides overview](https://clerk.com/docs/guides/development/upgrading/overview.md): Learn how to upgrade your application to use the latest Clerk features and SDKs. - [Versioning overview](https://clerk.com/docs/guides/development/upgrading/versioning.md): A brief guide on how versioning works in Clerk. - [Upgrade from Clerk's Node SDK to the Express SDK](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/node-to-express.md): Learn how to upgrade from the Clerk's Node SDK to the Express SDK. - [Upgrading to Clerk Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2.md): Learn how to upgrade to the latest version of Clerk's SDKs - [Upgrade to API version 2026-05-12](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/2026-05-12.md): Learn how to upgrade to version 2026-05-12 of Clerk's API. - [Upgrade to API version 2026-08-20](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/2026-08-20.md): Learn how to upgrade to version 2026-08-20 of Clerk's API. - [Upgrading to Clerk Core 3](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-3.md): Learn how to upgrade to Clerk Core 3 across all SDKs. - [Upgrade to API version 2025-11-10](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/2025-11-10.md): Learn how to upgrade to version 2025-11-10 of Clerk's API. - [Migrate away from Middleware-based auth checks](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/migrate-from-create-route-matcher.md): Learn how to migrate away from Middleware-based auth checks with createRouteMatcher to resource-based auth checks. - [Upgrade to @clerk/nextjs v6](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/nextjs-v6.md): Learn how to upgrade your application to use the latest Clerk Next.js SDK with support for Next.js 15. - [Upgrade to @clerk/clerk-expo v2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/expo-v2.md): Learn how to upgrade your application to use the latest Clerk Expo SDK. - [Migrate from Clerk Android SDK v0 to v1](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/android-v1.md): Update to v1 of the Clerk Android SDK. - [Migrate from Clerk iOS SDK v0 to v1](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/ios-v1.md): Update imports, configuration, environment wiring, and sign-in code when moving to v1. - [Upgrading `@clerk/clerk-expo` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/expo.md): Learn how to upgrade Clerk's Expo SDK to the latest version. - [Upgrading `@clerk/clerk-sdk-node` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/node.md): Learn how to upgrade Clerk's Node SDK to the latest version. - [Upgrading `@clerk/clerk-react` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/react.md): Learn how to upgrade Clerk's React SDK to the latest version. - [Upgrading `@clerk/remix` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/remix.md): Learn how to upgrade from the Clerk Remix SDK to the latest version. - [Upgrading `@clerk/chrome-extension` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/chrome-extension.md): Learn how to upgrade Clerk's Chrome Extension SDK to the latest version. - [Upgrading `@clerk/backend` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/backend.md): Learn how to upgrade the @clerk/backend package to the latest version. - [Upgrading `@clerk/fastify` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/fastify.md): Learn how to upgrade Clerk's Fastify SDK to the latest version. - [Upgrading `@clerk/clerk-js` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/javascript.md): Learn how to upgrade Clerk's Javascript SDK to the latest version. - [Upgrading `@clerk/nextjs` to Core 2](https://clerk.com/docs/guides/development/upgrading/upgrade-guides/core-2/nextjs.md): Learn how to upgrade Clerk's Next.js SDK to the latest version. - [Webhooks overview](https://clerk.com/docs/guides/development/webhooks/overview.md): Clerk webhooks allow you to receive event notifications from Clerk. - [Sync Clerk data to your app with webhooks](https://clerk.com/docs/guides/development/webhooks/syncing.md): Learn how to sync Clerk data to your app with webhooks. - [Debug your webhooks](https://clerk.com/docs/guides/development/webhooks/debugging.md): Understand how to debug your webhooks while developing your application - [Handling webhooks with Inngest](https://clerk.com/docs/guides/development/webhooks/inngest.md): Learn how to integrate Clerk with Inngest. - [Integrate Loops with Clerk](https://clerk.com/docs/guides/development/webhooks/loops.md): Learn how to add your Clerk users to your Loops audience, and send automated email sequences. - [Script loading](https://clerk.com/docs/guides/development/troubleshooting/script-loading.md): Troubleshooting strategies for cases when Clerk doesn't successfully load - [Email deliverability](https://clerk.com/docs/guides/development/troubleshooting/email-deliverability.md): A lot goes into making sure verification emails make it to your customers as quickly as possible. Clerk uses every best practice, and is proactive about monitoring verification email deliverability and speed. - [New domain reputation and email warm-up](https://clerk.com/docs/guides/development/troubleshooting/email-domain-name-warmup.md): Learn how email providers evaluate new domains, how to warm up your domain for reliable verification email delivery, and what metrics to monitor as a Clerk customer. - [Email suppression lists](https://clerk.com/docs/guides/development/troubleshooting/email-suppression-lists.md): Learn why email addresses are added to suppression lists, how suppression affects Clerk email delivery, and when to remove an address from a suppression list. - [Troubleshooting](https://clerk.com/docs/guides/development/troubleshooting/overview.md): Learn how to troubleshoot common issues with Clerk and contact support for additional assistance. - [Decode Clerk JWTs](https://clerk.com/docs/guides/development/troubleshooting/jwt-decoder.md): Decode JWTs and inspect claims. - [Using production keys in local development](https://clerk.com/docs/guides/development/troubleshooting/using-production-keys-in-development.md): Learn how to use your production Clerk instance locally for debugging. - [Create a browser replay](https://clerk.com/docs/guides/development/troubleshooting/help-support/browser-replay.md): Learn how to record replays and share them with Clerk Support. - [Create a minimal reproduction](https://clerk.com/docs/guides/development/troubleshooting/help-support/create-a-minimal-reproduction.md): Learn how to create a minimal reproduction in order to help the Clerk Support team debug and resolve issues specific to your application. - [Backend API errors](https://clerk.com/docs/guides/development/errors/backend-api.md): An index of Clerk Backend API errors. - [Frontend API errors](https://clerk.com/docs/guides/development/errors/frontend-api.md): An index of Clerk Frontend API errors. - [Platform API errors](https://clerk.com/docs/guides/development/errors/platform-api.md): An index of Clerk Platform API errors. - [Errors overview](https://clerk.com/docs/guides/development/errors/overview.md): Find more information about a Clerk error. ### Next.js - [Next.js Quickstart (App Router)](https://clerk.com/docs/nextjs/getting-started/quickstart.md): Add authentication and user management to your Next.js app with Clerk. - [Authorization checks](https://clerk.com/docs/nextjs/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Protect content from unauthenticated users](https://clerk.com/docs/nextjs/guides/secure/protect-content.md): Learn how to protect pages, Route Handlers, and Server Actions from unauthenticated users in your Clerk + Next.js application. - [Build a custom waitlist page](https://clerk.com/docs/nextjs/guides/secure/waitlist.md): Learn how to build a custom waitlist page for your application. - [Get started with Organizations](https://clerk.com/docs/nextjs/guides/organizations/getting-started.md): Learn how to create and manage Organizations in your application. - [Check Roles and Permissions with Authorization Checks](https://clerk.com/docs/nextjs/guides/organizations/control-access/check-access.md): Limit access to content or entire routes based on a user's Organization Role or Permissions. - [Read user data](https://clerk.com/docs/nextjs/guides/users/reading.md): Learn how to use Clerk's hooks and helpers to read user data in your Next.js application. - [Verify API keys in your Next.js application with Clerk](https://clerk.com/docs/nextjs/guides/development/verifying-api-keys.md): Learn how to use Clerk's helpers to verify API keys in your Next.js application. - [Verify OAuth access tokens in your Next.js application with Clerk](https://clerk.com/docs/nextjs/guides/development/verifying-oauth-access-tokens.md): Learn how to use Clerk's helpers to verify OAuth access tokens in your Next.js application. - [Build your own sign-in-or-up page for your Next.js app with Clerk](https://clerk.com/docs/nextjs/guides/development/custom-sign-in-or-up-page.md): Learn how to add a custom sign-in-or-up page to your Next.js app with Clerk's prebuilt components. - [Build your own sign-up page for your Next.js app with Clerk](https://clerk.com/docs/nextjs/guides/development/custom-sign-up-page.md): Learn how to add a custom sign-up page to your Next.js app with Clerk's prebuilt components. - [Clerk Billing webhooks](https://clerk.com/docs/nextjs/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/nextjs/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom checkout flow with an existing payment method](https://clerk.com/docs/nextjs/guides/development/custom-flows/billing/checkout-existing-payment-method.md): Learn how to use the Clerk API to build a custom checkout flow that allows users to checkout with an existing payment method. - [Build a custom checkout flow with a new payment method](https://clerk.com/docs/nextjs/guides/development/custom-flows/billing/checkout-new-payment-method.md): Learn how to use the Clerk API to build a custom checkout flow that allows users to add a new payment method during checkout. - [Build a custom flow for adding a new payment method](https://clerk.com/docs/nextjs/guides/development/custom-flows/billing/add-new-payment-method.md): Learn how to use the Clerk API to build a custom flow for adding a new payment method to a user's account. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/nextjs/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom flow for handling email links](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Build a custom waitlist form](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Build a custom flow for handling email links](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [`Appearance` prop](https://clerk.com/docs/nextjs/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Bring your own CSS](https://clerk.com/docs/nextjs/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [Themes](https://clerk.com/docs/nextjs/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`captcha` prop](https://clerk.com/docs/nextjs/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Variables` prop](https://clerk.com/docs/nextjs/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [`Options` prop](https://clerk.com/docs/nextjs/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [Add custom items and links to the `` component](https://clerk.com/docs/nextjs/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/nextjs/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom pages and links to the `` component](https://clerk.com/docs/nextjs/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Social connections (OAuth)](https://clerk.com/docs/nextjs/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Set up a custom OAuth consent page](https://clerk.com/docs/nextjs/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/nextjs/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/nextjs/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Build an MCP server in your application with Clerk](https://clerk.com/docs/nextjs/guides/ai/mcp/build-mcp-server.md): Learn how to build an MCP server using Clerk's OAuth server in your application. - [`` component](https://clerk.com/docs/nextjs/reference/components/clerk-provider.md): The component provides session and user context to Clerk's hooks and components. - [`` component](https://clerk.com/docs/nextjs/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [Component Reference](https://clerk.com/docs/nextjs/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/nextjs/reference/components/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`` component](https://clerk.com/docs/nextjs/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/nextjs/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/nextjs/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/nextjs/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/nextjs/reference/components/unstyled/sign-in-with-metamask.md): The component is used to complete a one-click, cryptographically-secure sign-in flow using MetaMask. - [`` component](https://clerk.com/docs/nextjs/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/nextjs/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/redirect-to-user-profile.md): The component will navigate to the user profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/redirect-to-create-organization.md): The component will navigate to the create Organization flow which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/clerk-failed.md): The component indicates that the Clerk object has failed to load. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/redirect-to-organization-profile.md): The component will navigate to the Organization profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nextjs/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nextjs/reference/components/billing/subscription-details-button.md): Clerk's component renders a button that opens the Subscription details drawer. - [`` component](https://clerk.com/docs/nextjs/reference/components/billing/plan-details-button.md): Clerk's component renders a button that opens the Plan details drawer. - [`` component](https://clerk.com/docs/nextjs/reference/components/billing/checkout-button.md): Clerk's component renders a button that opens the checkout drawer for Subscription Plans. - [`` component](https://clerk.com/docs/nextjs/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/task-choose-organization.md): Clerk's component renders a UI for resolving the choose-organization task. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/task-setup-mfa.md): Clerk's component renders a UI for resolving the setup-mfa task. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/task-reset-password.md): Clerk's component renders a UI for resolving the reset-password task. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/nextjs/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [``](https://clerk.com/docs/nextjs/reference/components/organization/invite-members-button.md): Clerk's component is used to render a button that opens a modal for inviting new members to an Organization. - [`` component](https://clerk.com/docs/nextjs/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/nextjs/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/nextjs/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/nextjs/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`User` object](https://clerk.com/docs/nextjs/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`SignUpFuture` object](https://clerk.com/docs/nextjs/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignUp` object](https://clerk.com/docs/nextjs/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`Organization` object](https://clerk.com/docs/nextjs/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [`Clerk` class](https://clerk.com/docs/nextjs/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Billing` object](https://clerk.com/docs/nextjs/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`Client` object](https://clerk.com/docs/nextjs/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`SignIn` object](https://clerk.com/docs/nextjs/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`SignInFuture` object](https://clerk.com/docs/nextjs/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`Session` object](https://clerk.com/docs/nextjs/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [Key Clerk objects](https://clerk.com/docs/nextjs/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`APIKeys` object](https://clerk.com/docs/nextjs/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [Hooks Reference](https://clerk.com/docs/nextjs/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`useAPIKeys()`](https://clerk.com/docs/nextjs/reference/hooks/use-api-keys.md): Access and manage API keys in your React application with Clerk's useAPIKeys() hook. - [`useAuth()`](https://clerk.com/docs/nextjs/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [`useCheckout()`](https://clerk.com/docs/nextjs/reference/hooks/use-checkout.md): Clerk's useCheckout() hook provides state and methods to manage a Subscription checkout flow. - [`useSignUp()`](https://clerk.com/docs/nextjs/reference/hooks/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useSession()`](https://clerk.com/docs/nextjs/reference/hooks/use-session.md): Access and manage the current user's session in your React application with Clerk's useSession() hook. - [`usePaymentAttempts()`](https://clerk.com/docs/nextjs/reference/hooks/use-payment-attempts.md): Access and manage payment attempts in your React application with Clerk's usePaymentAttempts() hook. - [`useSignIn()`](https://clerk.com/docs/nextjs/reference/hooks/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`usePaymentElement()`](https://clerk.com/docs/nextjs/reference/hooks/use-payment-element.md): Clerk's usePaymentElement() hook provides methods and state for interacting with a payment form. - [`useStatements()`](https://clerk.com/docs/nextjs/reference/hooks/use-statements.md): Access and manage statements in your React application with Clerk's useStatements() hook. - [`useOrganizationList()`](https://clerk.com/docs/nextjs/reference/hooks/use-organization-list.md): Access and manage the current user's Organization list in your React application with Clerk's useOrganizationList() hook. - [`useUser()`](https://clerk.com/docs/nextjs/reference/hooks/use-user.md): Access and manage the current user's data in your React application with Clerk's useUser() hook. - [`useWaitlist()`](https://clerk.com/docs/nextjs/reference/hooks/use-waitlist.md): Access and manage the waitlist state in your React application with Clerk's useWaitlist() hook. - [`useOrganization()`](https://clerk.com/docs/nextjs/reference/hooks/use-organization.md): Access and manage the currently active Organization in your React application with Clerk's useOrganization() hook. - [`useSubscription()`](https://clerk.com/docs/nextjs/reference/hooks/use-subscription.md): Access Subscription information in your React application with Clerk's useSubscription() hook. - [`useOrganizationCreationDefaults()`](https://clerk.com/docs/nextjs/reference/hooks/use-organization-creation-defaults.md): Retrieve Organization creation defaults for the current user in your React application with Clerk's useOrganizationCreationDefaults() hook. - [`usePaymentMethods()`](https://clerk.com/docs/nextjs/reference/hooks/use-payment-methods.md): Access and manage payment methods in your React application with Clerk's usePaymentMethods() hook. - [`useReverification()`](https://clerk.com/docs/nextjs/reference/hooks/use-reverification.md): Clerk's useReverification() hook enhances a fetcher function to handle a session's reverification flow. - [`useSessionList()`](https://clerk.com/docs/nextjs/reference/hooks/use-session-list.md): Access and manage the current user's session list in your React application with Clerk's useSessionList() hook. - [`usePlans()`](https://clerk.com/docs/nextjs/reference/hooks/use-plans.md): Access Plans in your React application with Clerk's usePlans() hook. - [`useClerk()`](https://clerk.com/docs/nextjs/reference/hooks/use-clerk.md): Access and manage the Clerk object in your React application with Clerk's useClerk() hook. - [`useOAuthConsent()`](https://clerk.com/docs/nextjs/reference/hooks/use-oauth-consent.md): Load OAuth consent metadata for an authenticated user with Clerk's useOAuthConsent() hook. - [`useSignIn()`](https://clerk.com/docs/nextjs/reference/hooks/legacy/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useSignUp()`](https://clerk.com/docs/nextjs/reference/hooks/legacy/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingPayerResource`](https://clerk.com/docs/nextjs/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`OrganizationCreationDefaults`](https://clerk.com/docs/nextjs/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`OAuthConsentScope`](https://clerk.com/docs/nextjs/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`OrganizationDomainResource`](https://clerk.com/docs/nextjs/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationInvitation`](https://clerk.com/docs/nextjs/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`BillingPaymentMethodResource`](https://clerk.com/docs/nextjs/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/nextjs/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OAuthApplication`](https://clerk.com/docs/nextjs/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/nextjs/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`OrganizationSuggestion`](https://clerk.com/docs/nextjs/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`ClerkPaginatedResponse`](https://clerk.com/docs/nextjs/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingCreditBalanceResource`](https://clerk.com/docs/nextjs/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`LastAuthenticationStrategy`](https://clerk.com/docs/nextjs/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`CustomPage`](https://clerk.com/docs/nextjs/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingSubscriptionResource`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingPaymentResource`](https://clerk.com/docs/nextjs/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`BillingStatementResource`](https://clerk.com/docs/nextjs/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingCreditLedgerResource`](https://clerk.com/docs/nextjs/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`OAuthConsentInfo`](https://clerk.com/docs/nextjs/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`BillingPaymentTotals`](https://clerk.com/docs/nextjs/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingTotals`](https://clerk.com/docs/nextjs/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`BillingCredits`](https://clerk.com/docs/nextjs/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BillingPerUnitTotal`](https://clerk.com/docs/nextjs/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/nextjs/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/nextjs/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`CustomMenuItem`](https://clerk.com/docs/nextjs/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`BillingDiscountRedemption`](https://clerk.com/docs/nextjs/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`OrganizationMembershipRequest`](https://clerk.com/docs/nextjs/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`BillingAppliedDiscount`](https://clerk.com/docs/nextjs/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [Metadata](https://clerk.com/docs/nextjs/reference/types/metadata.md): Types related to metadata. - [`BillingStatementTotals`](https://clerk.com/docs/nextjs/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingMoneyAmount`](https://clerk.com/docs/nextjs/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`ClerkError`](https://clerk.com/docs/nextjs/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`BillingDiscounts`](https://clerk.com/docs/nextjs/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`ClerkAPIError`](https://clerk.com/docs/nextjs/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkAPIResponseError`](https://clerk.com/docs/nextjs/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`BillingPayerCredit`](https://clerk.com/docs/nextjs/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingPeriodTotals`](https://clerk.com/docs/nextjs/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`BackupCodeResource`](https://clerk.com/docs/nextjs/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingPlanPrice`](https://clerk.com/docs/nextjs/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`BillingCheckoutResource`](https://clerk.com/docs/nextjs/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`APIKeyResource`](https://clerk.com/docs/nextjs/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BillingCheckoutTotals`](https://clerk.com/docs/nextjs/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`PasskeyResource`](https://clerk.com/docs/nextjs/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`TOTPResource`](https://clerk.com/docs/nextjs/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`SetActiveParams`](https://clerk.com/docs/nextjs/reference/types/set-active-params.md): The parameters for the setActive() method. - [`UserOrganizationInvitation`](https://clerk.com/docs/nextjs/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`SignInFirstFactor`](https://clerk.com/docs/nextjs/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`BillingProrationCreditDetail`](https://clerk.com/docs/nextjs/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`Web3Wallet`](https://clerk.com/docs/nextjs/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/nextjs/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`PermissionResource`](https://clerk.com/docs/nextjs/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`SessionVerification`](https://clerk.com/docs/nextjs/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`Waitlist`](https://clerk.com/docs/nextjs/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`VerificationResource`](https://clerk.com/docs/nextjs/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`SignInInitialValues`](https://clerk.com/docs/nextjs/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`SessionTask`](https://clerk.com/docs/nextjs/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`ProtectCheckResource`](https://clerk.com/docs/nextjs/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [SSO Types](https://clerk.com/docs/nextjs/reference/types/sso.md): Types related to SSO providers and strategies. - [`FeatureResource`](https://clerk.com/docs/nextjs/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`BillingPlanUnitPrice`](https://clerk.com/docs/nextjs/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`SignedInSessionResource`](https://clerk.com/docs/nextjs/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`SessionStatus`](https://clerk.com/docs/nextjs/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`EnterpriseAccountConnection`](https://clerk.com/docs/nextjs/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`SignUpVerificationResource`](https://clerk.com/docs/nextjs/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`EmailLinkError`](https://clerk.com/docs/nextjs/reference/types/email-link-error.md): Custom error for email links. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/nextjs/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`SignUpInitialValues`](https://clerk.com/docs/nextjs/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`RoleResource`](https://clerk.com/docs/nextjs/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`ExternalAccount`](https://clerk.com/docs/nextjs/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`EmailAddress`](https://clerk.com/docs/nextjs/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`BillingPlanResource`](https://clerk.com/docs/nextjs/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`RedirectOptions`](https://clerk.com/docs/nextjs/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`SignInSecondFactor`](https://clerk.com/docs/nextjs/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`DeletedObjectResource`](https://clerk.com/docs/nextjs/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`Errors`](https://clerk.com/docs/nextjs/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`SignUpRedirectOptions`](https://clerk.com/docs/nextjs/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`PublicUserData`](https://clerk.com/docs/nextjs/reference/types/public-user-data.md): Information about that user that's publicly available. - [`EnterpriseAccount`](https://clerk.com/docs/nextjs/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`SignInRedirectOptions`](https://clerk.com/docs/nextjs/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`ImageResource`](https://clerk.com/docs/nextjs/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`PhoneNumber`](https://clerk.com/docs/nextjs/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`BillingStatementGroup`](https://clerk.com/docs/nextjs/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`OrganizationMembership`](https://clerk.com/docs/nextjs/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`IdentificationLinkResource`](https://clerk.com/docs/nextjs/reference/types/identification-link-resource.md): An interface representing an identification link. - [`BillingProrationDiscount`](https://clerk.com/docs/nextjs/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`SessionWithActivities`](https://clerk.com/docs/nextjs/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [Clerk types](https://clerk.com/docs/nextjs/reference/types/overview.md): Explore the different types available for typing your application. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/nextjs/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/nextjs/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`@clerk/eslint-plugin`](https://clerk.com/docs/nextjs/reference/eslint-plugin.md): Learn how to use Clerk's ESLint plugin to find unprotected Next.js resources. - [Clerk Next.js SDK](https://clerk.com/docs/nextjs/reference/overview.md): The Clerk Next.js SDK gives you access to prebuilt components, React hooks, and helpers to make user authentication easier. - [clerkMiddleware()](https://clerk.com/docs/nextjs/reference/clerk-middleware.md): The clerkMiddleware() helper integrates Clerk authentication into your Next.js application through Middleware. - [`getAuth()`](https://clerk.com/docs/nextjs/reference/pages-router/get-auth.md): The getAuth() helper retrieves authentication state from the request object. - [`buildClerkProps`](https://clerk.com/docs/nextjs/reference/pages-router/build-clerk-props.md): Clerk uses buildClerkProps to inform the client-side helpers of the authentication state of the user. This function is used SSR in the getServerSideProps function of your Next.js application. - [Server Actions](https://clerk.com/docs/nextjs/reference/app-router/server-actions.md): Learn how to use Clerk with Server Actions. - [Route Handlers](https://clerk.com/docs/nextjs/reference/app-router/route-handlers.md): Learn how to use Clerk with your Route Handlers. - [`auth()`](https://clerk.com/docs/nextjs/reference/app-router/auth.md): Access minimal authentication data for managing sessions and data fetching. - [`currentUser()`](https://clerk.com/docs/nextjs/reference/app-router/current-user.md): Use the currentUser() helper to access information about your user inside of your Server Components, Route Handlers, and Server Actions. - [Clerk: `` is not available in @clerk/nextjs Core 3](https://clerk.com/docs/nextjs/reference/errors/protect-is-not-available-in-clerk-nextjs.md): Learn why Protect was removed from @clerk/nextjs in Core 3 and how to replace it with the Show component. - [Clerk: `` is not available in @clerk/nextjs Core 3](https://clerk.com/docs/nextjs/reference/errors/signedout-is-not-available-in-clerk-nextjs.md): Learn why SignedOut was removed from @clerk/nextjs in Core 3 and how to replace it with the Show component. - [Clerk: `` is not available in @clerk/nextjs Core 3](https://clerk.com/docs/nextjs/reference/errors/signedin-is-not-available-in-clerk-nextjs.md): Learn why SignedIn was removed from @clerk/nextjs in Core 3 and how to replace it with the Show component. - [Clerk: auth() was called but Clerk can't detect usage of clerkMiddleware()](https://clerk.com/docs/nextjs/reference/errors/auth-was-called.md): Learn how to handle auth() was called but Clerk can't detect usage of clerkMiddleware() when getting 404 errors in Next.js. ### React - [React Quickstart](https://clerk.com/docs/react/getting-started/quickstart.md): Add authentication and user management to your React app with Clerk. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/react/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/react/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Set up a custom OAuth consent page](https://clerk.com/docs/react/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Social connections (OAuth)](https://clerk.com/docs/react/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Add custom pages and links to the `` component](https://clerk.com/docs/react/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/react/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/react/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [`Options` prop](https://clerk.com/docs/react/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`Variables` prop](https://clerk.com/docs/react/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Themes](https://clerk.com/docs/react/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`captcha` prop](https://clerk.com/docs/react/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Appearance` prop](https://clerk.com/docs/react/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Bring your own CSS](https://clerk.com/docs/react/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [Build your own sign-in-or-up page for your React app with Clerk](https://clerk.com/docs/react/guides/development/custom-sign-in-or-up-page.md): Learn how to add a custom sign-in-or-up page to your React app with Clerk's prebuilt components. - [Build your own sign-up page for your React app with Clerk](https://clerk.com/docs/react/guides/development/custom-sign-up-page.md): Learn how to add a custom sign-up page to your React app with Clerk's prebuilt components. - [Add React Router to your Clerk + React application](https://clerk.com/docs/react/guides/development/declarative-mode.md): Learn how to add React Router to your Clerk + React application. - [Clerk Billing webhooks](https://clerk.com/docs/react/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/react/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/react/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/react/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom waitlist form](https://clerk.com/docs/react/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/react/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/react/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/react/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/react/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Build a custom flow for handling email links](https://clerk.com/docs/react/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Build a custom flow for adding a new payment method](https://clerk.com/docs/react/guides/development/custom-flows/billing/add-new-payment-method.md): Learn how to use the Clerk API to build a custom flow for adding a new payment method to a user's account. - [Build a custom checkout flow with an existing payment method](https://clerk.com/docs/react/guides/development/custom-flows/billing/checkout-existing-payment-method.md): Learn how to use the Clerk API to build a custom checkout flow that allows users to checkout with an existing payment method. - [Build a custom checkout flow with a new payment method](https://clerk.com/docs/react/guides/development/custom-flows/billing/checkout-new-payment-method.md): Learn how to use the Clerk API to build a custom checkout flow that allows users to add a new payment method during checkout. - [Read user data](https://clerk.com/docs/react/guides/users/reading.md): Learn how to use Clerk's hooks and helpers to read user data in your React application. - [Get started with Organizations](https://clerk.com/docs/react/guides/organizations/getting-started.md): Learn how to create and manage Organizations in your application. - [Check Roles and Permissions with Authorization Checks](https://clerk.com/docs/react/guides/organizations/control-access/check-access.md): Limit access to content or entire routes based on a user's Organization Role or Permissions. - [Authorization checks](https://clerk.com/docs/react/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Build a custom waitlist page](https://clerk.com/docs/react/guides/secure/waitlist.md): Learn how to build a custom waitlist page for your application. - [`` component](https://clerk.com/docs/react/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` component](https://clerk.com/docs/react/reference/components/clerk-provider.md): The component provides session and user context to Clerk's hooks and components. - [Component Reference](https://clerk.com/docs/react/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/react/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/react/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/react/reference/components/authentication/task-choose-organization.md): Clerk's component renders a UI for resolving the choose-organization task. - [`` component](https://clerk.com/docs/react/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/react/reference/components/authentication/task-reset-password.md): Clerk's component renders a UI for resolving the reset-password task. - [`` component](https://clerk.com/docs/react/reference/components/authentication/task-setup-mfa.md): Clerk's component renders a UI for resolving the setup-mfa task. - [`` component](https://clerk.com/docs/react/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/react/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/react/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/react/reference/components/billing/subscription-details-button.md): Clerk's component renders a button that opens the Subscription details drawer. - [`` component](https://clerk.com/docs/react/reference/components/billing/plan-details-button.md): Clerk's component renders a button that opens the Plan details drawer. - [`` component](https://clerk.com/docs/react/reference/components/billing/checkout-button.md): Clerk's component renders a button that opens the checkout drawer for Subscription Plans. - [`` component](https://clerk.com/docs/react/reference/components/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`` component](https://clerk.com/docs/react/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/react/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/react/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/react/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/react/reference/components/unstyled/sign-in-with-metamask.md): The component is used to complete a one-click, cryptographically-secure sign-in flow using MetaMask. - [`` component](https://clerk.com/docs/react/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/react/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/react/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/react/reference/components/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` component](https://clerk.com/docs/react/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/react/reference/components/control/clerk-failed.md): The component indicates that the Clerk object has failed to load. - [`` component](https://clerk.com/docs/react/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/react/reference/components/control/redirect-to-organization-profile.md): The component will navigate to the Organization profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react/reference/components/control/redirect-to-create-organization.md): The component will navigate to the create Organization flow which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react/reference/components/control/redirect-to-user-profile.md): The component will navigate to the user profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/react/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [``](https://clerk.com/docs/react/reference/components/organization/invite-members-button.md): Clerk's component is used to render a button that opens a modal for inviting new members to an Organization. - [`` component](https://clerk.com/docs/react/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/react/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/react/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`SignUpFuture` object](https://clerk.com/docs/react/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignUp` object](https://clerk.com/docs/react/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [Key Clerk objects](https://clerk.com/docs/react/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`SignIn` object](https://clerk.com/docs/react/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`User` object](https://clerk.com/docs/react/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`Clerk` class](https://clerk.com/docs/react/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Client` object](https://clerk.com/docs/react/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`APIKeys` object](https://clerk.com/docs/react/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`Session` object](https://clerk.com/docs/react/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`Billing` object](https://clerk.com/docs/react/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`Organization` object](https://clerk.com/docs/react/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [`SignInFuture` object](https://clerk.com/docs/react/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`usePaymentAttempts()`](https://clerk.com/docs/react/reference/hooks/use-payment-attempts.md): Access and manage payment attempts in your React application with Clerk's usePaymentAttempts() hook. - [`useOrganization()`](https://clerk.com/docs/react/reference/hooks/use-organization.md): Access and manage the currently active Organization in your React application with Clerk's useOrganization() hook. - [`useClerk()`](https://clerk.com/docs/react/reference/hooks/use-clerk.md): Access and manage the Clerk object in your React application with Clerk's useClerk() hook. - [`useOAuthConsent()`](https://clerk.com/docs/react/reference/hooks/use-oauth-consent.md): Load OAuth consent metadata for an authenticated user with Clerk's useOAuthConsent() hook. - [`useCheckout()`](https://clerk.com/docs/react/reference/hooks/use-checkout.md): Clerk's useCheckout() hook provides state and methods to manage a Subscription checkout flow. - [`useOrganizationCreationDefaults()`](https://clerk.com/docs/react/reference/hooks/use-organization-creation-defaults.md): Retrieve Organization creation defaults for the current user in your React application with Clerk's useOrganizationCreationDefaults() hook. - [`useAuth()`](https://clerk.com/docs/react/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [`useOrganizationList()`](https://clerk.com/docs/react/reference/hooks/use-organization-list.md): Access and manage the current user's Organization list in your React application with Clerk's useOrganizationList() hook. - [Hooks Reference](https://clerk.com/docs/react/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`useAPIKeys()`](https://clerk.com/docs/react/reference/hooks/use-api-keys.md): Access and manage API keys in your React application with Clerk's useAPIKeys() hook. - [`usePaymentMethods()`](https://clerk.com/docs/react/reference/hooks/use-payment-methods.md): Access and manage payment methods in your React application with Clerk's usePaymentMethods() hook. - [`usePlans()`](https://clerk.com/docs/react/reference/hooks/use-plans.md): Access Plans in your React application with Clerk's usePlans() hook. - [`useReverification()`](https://clerk.com/docs/react/reference/hooks/use-reverification.md): Clerk's useReverification() hook enhances a fetcher function to handle a session's reverification flow. - [`useSessionList()`](https://clerk.com/docs/react/reference/hooks/use-session-list.md): Access and manage the current user's session list in your React application with Clerk's useSessionList() hook. - [`usePaymentElement()`](https://clerk.com/docs/react/reference/hooks/use-payment-element.md): Clerk's usePaymentElement() hook provides methods and state for interacting with a payment form. - [`useSession()`](https://clerk.com/docs/react/reference/hooks/use-session.md): Access and manage the current user's session in your React application with Clerk's useSession() hook. - [`useSignIn()`](https://clerk.com/docs/react/reference/hooks/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useSignUp()`](https://clerk.com/docs/react/reference/hooks/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useStatements()`](https://clerk.com/docs/react/reference/hooks/use-statements.md): Access and manage statements in your React application with Clerk's useStatements() hook. - [`useSubscription()`](https://clerk.com/docs/react/reference/hooks/use-subscription.md): Access Subscription information in your React application with Clerk's useSubscription() hook. - [`useUser()`](https://clerk.com/docs/react/reference/hooks/use-user.md): Access and manage the current user's data in your React application with Clerk's useUser() hook. - [`useWaitlist()`](https://clerk.com/docs/react/reference/hooks/use-waitlist.md): Access and manage the waitlist state in your React application with Clerk's useWaitlist() hook. - [`useSignIn()`](https://clerk.com/docs/react/reference/hooks/legacy/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useSignUp()`](https://clerk.com/docs/react/reference/hooks/legacy/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/react/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`BillingPlanResource`](https://clerk.com/docs/react/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingProrationDiscount`](https://clerk.com/docs/react/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/react/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingPlanUnitPrice`](https://clerk.com/docs/react/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`BillingPerUnitTotal`](https://clerk.com/docs/react/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/react/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingStatementResource`](https://clerk.com/docs/react/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingProrationCreditDetail`](https://clerk.com/docs/react/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`BillingPeriodTotals`](https://clerk.com/docs/react/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`BillingSubscriptionResource`](https://clerk.com/docs/react/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/react/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingPaymentTotals`](https://clerk.com/docs/react/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingStatementTotals`](https://clerk.com/docs/react/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingTotals`](https://clerk.com/docs/react/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`BillingPlanPrice`](https://clerk.com/docs/react/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`BillingStatementGroup`](https://clerk.com/docs/react/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`APIKeyResource`](https://clerk.com/docs/react/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/react/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingAppliedDiscount`](https://clerk.com/docs/react/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`ClerkAPIError`](https://clerk.com/docs/react/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`BackupCodeResource`](https://clerk.com/docs/react/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`ClerkAPIResponseError`](https://clerk.com/docs/react/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`BillingDiscounts`](https://clerk.com/docs/react/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`ClerkError`](https://clerk.com/docs/react/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/react/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`ClerkPaginatedResponse`](https://clerk.com/docs/react/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`Web3Wallet`](https://clerk.com/docs/react/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`BillingDiscountRedemption`](https://clerk.com/docs/react/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`SignInInitialValues`](https://clerk.com/docs/react/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`CustomMenuItem`](https://clerk.com/docs/react/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`BillingMoneyAmount`](https://clerk.com/docs/react/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`PhoneNumber`](https://clerk.com/docs/react/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`ProtectCheckResource`](https://clerk.com/docs/react/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`OrganizationMembershipRequest`](https://clerk.com/docs/react/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`OrganizationInvitation`](https://clerk.com/docs/react/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`CustomPage`](https://clerk.com/docs/react/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`BillingCredits`](https://clerk.com/docs/react/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`SignInRedirectOptions`](https://clerk.com/docs/react/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`PublicUserData`](https://clerk.com/docs/react/reference/types/public-user-data.md): Information about that user that's publicly available. - [`OrganizationMembership`](https://clerk.com/docs/react/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`SignInSecondFactor`](https://clerk.com/docs/react/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`DeletedObjectResource`](https://clerk.com/docs/react/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`RedirectOptions`](https://clerk.com/docs/react/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`BillingPayerResource`](https://clerk.com/docs/react/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`EnterpriseAccount`](https://clerk.com/docs/react/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`RoleResource`](https://clerk.com/docs/react/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`OrganizationSuggestion`](https://clerk.com/docs/react/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`SignUpInitialValues`](https://clerk.com/docs/react/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`EmailAddress`](https://clerk.com/docs/react/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`SessionStatus`](https://clerk.com/docs/react/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [Clerk types](https://clerk.com/docs/react/reference/types/overview.md): Explore the different types available for typing your application. - [`SignUpRedirectOptions`](https://clerk.com/docs/react/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`SessionTask`](https://clerk.com/docs/react/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`BillingPaymentMethodResource`](https://clerk.com/docs/react/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`PasskeyResource`](https://clerk.com/docs/react/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`EnterpriseAccountConnection`](https://clerk.com/docs/react/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`BillingPayerCredit`](https://clerk.com/docs/react/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`SessionVerification`](https://clerk.com/docs/react/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SignUpVerificationResource`](https://clerk.com/docs/react/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`Errors`](https://clerk.com/docs/react/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`SessionWithActivities`](https://clerk.com/docs/react/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`BillingPaymentResource`](https://clerk.com/docs/react/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`SignedInSessionResource`](https://clerk.com/docs/react/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`PermissionResource`](https://clerk.com/docs/react/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`FeatureResource`](https://clerk.com/docs/react/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`SetActiveParams`](https://clerk.com/docs/react/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/react/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`BillingCheckoutTotals`](https://clerk.com/docs/react/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`ExternalAccount`](https://clerk.com/docs/react/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`SignInFirstFactor`](https://clerk.com/docs/react/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [SSO Types](https://clerk.com/docs/react/reference/types/sso.md): Types related to SSO providers and strategies. - [`BillingCheckoutResource`](https://clerk.com/docs/react/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/react/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`TOTPResource`](https://clerk.com/docs/react/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`IdentificationLinkResource`](https://clerk.com/docs/react/reference/types/identification-link-resource.md): An interface representing an identification link. - [`BillingCreditLedgerResource`](https://clerk.com/docs/react/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`UserOrganizationInvitation`](https://clerk.com/docs/react/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/react/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`BillingCreditBalanceResource`](https://clerk.com/docs/react/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`ImageResource`](https://clerk.com/docs/react/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`EmailLinkError`](https://clerk.com/docs/react/reference/types/email-link-error.md): Custom error for email links. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/react/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [Metadata](https://clerk.com/docs/react/reference/types/metadata.md): Types related to metadata. - [`OAuthApplication`](https://clerk.com/docs/react/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`LastAuthenticationStrategy`](https://clerk.com/docs/react/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`OAuthConsentInfo`](https://clerk.com/docs/react/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`OAuthConsentScope`](https://clerk.com/docs/react/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`OrganizationCreationDefaults`](https://clerk.com/docs/react/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`VerificationResource`](https://clerk.com/docs/react/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/react/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`Waitlist`](https://clerk.com/docs/react/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/react/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationDomainResource`](https://clerk.com/docs/react/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [Clerk React SDK](https://clerk.com/docs/react/reference/overview.md): The Clerk React SDK gives you access to prebuilt components, React hooks, and helpers to make user authentication easier. ### JavaScript - [JavaScript Quickstart](https://clerk.com/docs/js-frontend/getting-started/quickstart.md): Add authentication and user management to your JavaScript app with Clerk. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/js-frontend/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/js-frontend/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Set up a custom OAuth consent page](https://clerk.com/docs/js-frontend/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Social connections (OAuth)](https://clerk.com/docs/js-frontend/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Add custom pages and links to the `` component](https://clerk.com/docs/js-frontend/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom pages and links to the `` component](https://clerk.com/docs/js-frontend/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/js-frontend/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [`captcha` prop](https://clerk.com/docs/js-frontend/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [Bring your own CSS](https://clerk.com/docs/js-frontend/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`Appearance` prop](https://clerk.com/docs/js-frontend/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Themes](https://clerk.com/docs/js-frontend/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/js-frontend/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [`Options` prop](https://clerk.com/docs/js-frontend/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [Clerk Billing webhooks](https://clerk.com/docs/js-frontend/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/js-frontend/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/js-frontend/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom flow for handling email links](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Build a custom waitlist form](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Authorization checks](https://clerk.com/docs/js-frontend/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [`` component](https://clerk.com/docs/js-frontend/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [Component Reference](https://clerk.com/docs/js-frontend/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/task-setup-mfa.md): Clerk's component renders a UI for resolving the setup-mfa task. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/task-reset-password.md): Clerk's component renders a UI for resolving the reset-password task. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/task-choose-organization.md): Clerk's component renders a UI for resolving the choose-organization task. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/js-frontend/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/js-frontend/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/js-frontend/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/js-frontend/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/js-frontend/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/js-frontend/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/js-frontend/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/js-frontend/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/js-frontend/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/js-frontend/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/js-frontend/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`User` object](https://clerk.com/docs/js-frontend/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`SignUp` object](https://clerk.com/docs/js-frontend/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignUpFuture` object](https://clerk.com/docs/js-frontend/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignIn` object](https://clerk.com/docs/js-frontend/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`SignInFuture` object](https://clerk.com/docs/js-frontend/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [Key Clerk objects](https://clerk.com/docs/js-frontend/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`Session` object](https://clerk.com/docs/js-frontend/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`Organization` object](https://clerk.com/docs/js-frontend/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [`Clerk` class](https://clerk.com/docs/js-frontend/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Client` object](https://clerk.com/docs/js-frontend/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`Billing` object](https://clerk.com/docs/js-frontend/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`APIKeys` object](https://clerk.com/docs/js-frontend/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`BillingCheckoutResource`](https://clerk.com/docs/js-frontend/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`BillingPlanResource`](https://clerk.com/docs/js-frontend/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingPlanUnitPrice`](https://clerk.com/docs/js-frontend/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`BillingStatementGroup`](https://clerk.com/docs/js-frontend/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingDiscountRedemption`](https://clerk.com/docs/js-frontend/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`EnterpriseAccount`](https://clerk.com/docs/js-frontend/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`EnterpriseAccountConnection`](https://clerk.com/docs/js-frontend/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`BillingPaymentTotals`](https://clerk.com/docs/js-frontend/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/js-frontend/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`BillingMoneyAmount`](https://clerk.com/docs/js-frontend/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`EmailAddress`](https://clerk.com/docs/js-frontend/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`BillingProrationDiscount`](https://clerk.com/docs/js-frontend/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingPaymentMethodResource`](https://clerk.com/docs/js-frontend/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`EmailLinkError`](https://clerk.com/docs/js-frontend/reference/types/email-link-error.md): Custom error for email links. - [`DeletedObjectResource`](https://clerk.com/docs/js-frontend/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`BillingDiscounts`](https://clerk.com/docs/js-frontend/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingCheckoutTotals`](https://clerk.com/docs/js-frontend/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`RoleResource`](https://clerk.com/docs/js-frontend/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/js-frontend/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`RedirectOptions`](https://clerk.com/docs/js-frontend/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`PhoneNumber`](https://clerk.com/docs/js-frontend/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`PublicUserData`](https://clerk.com/docs/js-frontend/reference/types/public-user-data.md): Information about that user that's publicly available. - [`BillingCreditBalanceResource`](https://clerk.com/docs/js-frontend/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`ProtectCheckResource`](https://clerk.com/docs/js-frontend/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`PasskeyResource`](https://clerk.com/docs/js-frontend/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`BillingPeriodTotals`](https://clerk.com/docs/js-frontend/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`PermissionResource`](https://clerk.com/docs/js-frontend/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`APIKeyResource`](https://clerk.com/docs/js-frontend/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [Clerk types](https://clerk.com/docs/js-frontend/reference/types/overview.md): Explore the different types available for typing your application. - [`OrganizationSuggestion`](https://clerk.com/docs/js-frontend/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`BillingPlanPrice`](https://clerk.com/docs/js-frontend/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`SessionStatus`](https://clerk.com/docs/js-frontend/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`OrganizationMembership`](https://clerk.com/docs/js-frontend/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`BackupCodeResource`](https://clerk.com/docs/js-frontend/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`OrganizationMembershipRequest`](https://clerk.com/docs/js-frontend/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`BillingProrationCreditDetail`](https://clerk.com/docs/js-frontend/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/js-frontend/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`OrganizationInvitation`](https://clerk.com/docs/js-frontend/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`BillingCreditLedgerResource`](https://clerk.com/docs/js-frontend/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`CustomPage`](https://clerk.com/docs/js-frontend/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`BillingPayerResource`](https://clerk.com/docs/js-frontend/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/js-frontend/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`BillingAppliedDiscount`](https://clerk.com/docs/js-frontend/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`CustomMenuItem`](https://clerk.com/docs/js-frontend/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`BillingPayerCredit`](https://clerk.com/docs/js-frontend/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingPerUnitTotal`](https://clerk.com/docs/js-frontend/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`OrganizationDomainResource`](https://clerk.com/docs/js-frontend/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`ClerkPaginatedResponse`](https://clerk.com/docs/js-frontend/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`BillingPaymentResource`](https://clerk.com/docs/js-frontend/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/js-frontend/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`ClerkAPIError`](https://clerk.com/docs/js-frontend/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`OrganizationCreationDefaults`](https://clerk.com/docs/js-frontend/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/js-frontend/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`ClerkAPIResponseError`](https://clerk.com/docs/js-frontend/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`OAuthConsentScope`](https://clerk.com/docs/js-frontend/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`ClerkError`](https://clerk.com/docs/js-frontend/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`BillingSubscriptionResource`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingStatementTotals`](https://clerk.com/docs/js-frontend/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`OAuthConsentInfo`](https://clerk.com/docs/js-frontend/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`BillingTotals`](https://clerk.com/docs/js-frontend/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`OAuthApplication`](https://clerk.com/docs/js-frontend/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`BillingStatementResource`](https://clerk.com/docs/js-frontend/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [Metadata](https://clerk.com/docs/js-frontend/reference/types/metadata.md): Types related to metadata. - [`ExternalAccount`](https://clerk.com/docs/js-frontend/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`FeatureResource`](https://clerk.com/docs/js-frontend/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/js-frontend/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`IdentificationLinkResource`](https://clerk.com/docs/js-frontend/reference/types/identification-link-resource.md): An interface representing an identification link. - [`BillingCredits`](https://clerk.com/docs/js-frontend/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`ImageResource`](https://clerk.com/docs/js-frontend/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`LastAuthenticationStrategy`](https://clerk.com/docs/js-frontend/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`Errors`](https://clerk.com/docs/js-frontend/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`Web3Wallet`](https://clerk.com/docs/js-frontend/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`Waitlist`](https://clerk.com/docs/js-frontend/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`VerificationResource`](https://clerk.com/docs/js-frontend/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`UserOrganizationInvitation`](https://clerk.com/docs/js-frontend/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`TOTPResource`](https://clerk.com/docs/js-frontend/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [SSO Types](https://clerk.com/docs/js-frontend/reference/types/sso.md): Types related to SSO providers and strategies. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/js-frontend/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`SignedInSessionResource`](https://clerk.com/docs/js-frontend/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`SignUpVerificationResource`](https://clerk.com/docs/js-frontend/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`SignUpRedirectOptions`](https://clerk.com/docs/js-frontend/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`SignUpInitialValues`](https://clerk.com/docs/js-frontend/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`SignInSecondFactor`](https://clerk.com/docs/js-frontend/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`SignInRedirectOptions`](https://clerk.com/docs/js-frontend/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`SignInInitialValues`](https://clerk.com/docs/js-frontend/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`SignInFirstFactor`](https://clerk.com/docs/js-frontend/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`SetActiveParams`](https://clerk.com/docs/js-frontend/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SessionWithActivities`](https://clerk.com/docs/js-frontend/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`SessionVerification`](https://clerk.com/docs/js-frontend/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SessionTask`](https://clerk.com/docs/js-frontend/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [Clerk JavaScript SDK](https://clerk.com/docs/js-frontend/reference/overview.md): The Clerk JavaScript SDK is Clerk's foundational library for building user management and authentication. ### Chrome Extension - [Chrome Extension Quickstart (Plasmo)](https://clerk.com/docs/chrome-extension/getting-started/quickstart.md): Add authentication and user management to your Chrome Extension with Clerk using Plasmo. - [Error handling](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom waitlist form](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Build a custom flow for handling email links](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Social connections (OAuth)](https://clerk.com/docs/chrome-extension/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Add custom pages and links to the `` component](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [`captcha` prop](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Options` prop](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`Appearance` prop](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Themes](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Bring your own CSS](https://clerk.com/docs/chrome-extension/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [Authorization checks](https://clerk.com/docs/chrome-extension/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Component Reference](https://clerk.com/docs/chrome-extension/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/clerk-provider.md): The component provides session and user context to Clerk's hooks and components. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/control/clerk-failed.md): The component indicates that the Clerk object has failed to load. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/chrome-extension/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`useWaitlist()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-waitlist.md): Access and manage the waitlist state in your React application with Clerk's useWaitlist() hook. - [`useUser()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-user.md): Access and manage the current user's data in your React application with Clerk's useUser() hook. - [`useSignUp()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useSignIn()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useSessionList()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-session-list.md): Access and manage the current user's session list in your React application with Clerk's useSessionList() hook. - [`useSession()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-session.md): Access and manage the current user's session in your React application with Clerk's useSession() hook. - [`useReverification()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-reverification.md): Clerk's useReverification() hook enhances a fetcher function to handle a session's reverification flow. - [`useOrganization()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-organization.md): Access and manage the currently active Organization in your React application with Clerk's useOrganization() hook. - [`useOrganizationCreationDefaults()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-organization-creation-defaults.md): Retrieve Organization creation defaults for the current user in your React application with Clerk's useOrganizationCreationDefaults() hook. - [`useClerk()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-clerk.md): Access and manage the Clerk object in your React application with Clerk's useClerk() hook. - [`useOrganizationList()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-organization-list.md): Access and manage the current user's Organization list in your React application with Clerk's useOrganizationList() hook. - [`useAuth()`](https://clerk.com/docs/chrome-extension/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [Hooks Reference](https://clerk.com/docs/chrome-extension/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`useSignUp()`](https://clerk.com/docs/chrome-extension/reference/hooks/legacy/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useSignIn()`](https://clerk.com/docs/chrome-extension/reference/hooks/legacy/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`User` object](https://clerk.com/docs/chrome-extension/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`SignUp` object](https://clerk.com/docs/chrome-extension/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignUpFuture` object](https://clerk.com/docs/chrome-extension/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignInFuture` object](https://clerk.com/docs/chrome-extension/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`SignIn` object](https://clerk.com/docs/chrome-extension/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`Clerk` class](https://clerk.com/docs/chrome-extension/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Client` object](https://clerk.com/docs/chrome-extension/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`Organization` object](https://clerk.com/docs/chrome-extension/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [Key Clerk objects](https://clerk.com/docs/chrome-extension/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`Session` object](https://clerk.com/docs/chrome-extension/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`Billing` object](https://clerk.com/docs/chrome-extension/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`APIKeys` object](https://clerk.com/docs/chrome-extension/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`BillingPaymentMethodResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingCheckoutResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`BillingDiscountRedemption`](https://clerk.com/docs/chrome-extension/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BillingAppliedDiscount`](https://clerk.com/docs/chrome-extension/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`BackupCodeResource`](https://clerk.com/docs/chrome-extension/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingPlanUnitPrice`](https://clerk.com/docs/chrome-extension/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`BillingMoneyAmount`](https://clerk.com/docs/chrome-extension/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BillingPayerResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`APIKeyResource`](https://clerk.com/docs/chrome-extension/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BillingCreditBalanceResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`BillingDiscounts`](https://clerk.com/docs/chrome-extension/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingPaymentTotals`](https://clerk.com/docs/chrome-extension/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingPerUnitTotal`](https://clerk.com/docs/chrome-extension/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`BillingCredits`](https://clerk.com/docs/chrome-extension/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/chrome-extension/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`BillingCreditLedgerResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`BillingCheckoutTotals`](https://clerk.com/docs/chrome-extension/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`Web3Wallet`](https://clerk.com/docs/chrome-extension/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`Waitlist`](https://clerk.com/docs/chrome-extension/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`VerificationResource`](https://clerk.com/docs/chrome-extension/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`TOTPResource`](https://clerk.com/docs/chrome-extension/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`UserOrganizationInvitation`](https://clerk.com/docs/chrome-extension/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`SignUpVerificationResource`](https://clerk.com/docs/chrome-extension/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [SSO Types](https://clerk.com/docs/chrome-extension/reference/types/sso.md): Types related to SSO providers and strategies. - [`SignedInSessionResource`](https://clerk.com/docs/chrome-extension/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/chrome-extension/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`SignUpRedirectOptions`](https://clerk.com/docs/chrome-extension/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`SignUpInitialValues`](https://clerk.com/docs/chrome-extension/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`SignInSecondFactor`](https://clerk.com/docs/chrome-extension/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`SignInRedirectOptions`](https://clerk.com/docs/chrome-extension/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`SignInInitialValues`](https://clerk.com/docs/chrome-extension/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`SignInFirstFactor`](https://clerk.com/docs/chrome-extension/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`SetActiveParams`](https://clerk.com/docs/chrome-extension/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SessionWithActivities`](https://clerk.com/docs/chrome-extension/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`SessionVerification`](https://clerk.com/docs/chrome-extension/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SessionTask`](https://clerk.com/docs/chrome-extension/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionStatus`](https://clerk.com/docs/chrome-extension/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`RoleResource`](https://clerk.com/docs/chrome-extension/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`RedirectOptions`](https://clerk.com/docs/chrome-extension/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`PublicUserData`](https://clerk.com/docs/chrome-extension/reference/types/public-user-data.md): Information about that user that's publicly available. - [`PermissionResource`](https://clerk.com/docs/chrome-extension/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`ProtectCheckResource`](https://clerk.com/docs/chrome-extension/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`PhoneNumber`](https://clerk.com/docs/chrome-extension/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`PasskeyResource`](https://clerk.com/docs/chrome-extension/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [Clerk types](https://clerk.com/docs/chrome-extension/reference/types/overview.md): Explore the different types available for typing your application. - [`OrganizationSuggestion`](https://clerk.com/docs/chrome-extension/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`OrganizationMembership`](https://clerk.com/docs/chrome-extension/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`OrganizationMembershipRequest`](https://clerk.com/docs/chrome-extension/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/chrome-extension/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationInvitation`](https://clerk.com/docs/chrome-extension/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/chrome-extension/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/chrome-extension/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OrganizationDomainResource`](https://clerk.com/docs/chrome-extension/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationCreationDefaults`](https://clerk.com/docs/chrome-extension/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`OAuthApplication`](https://clerk.com/docs/chrome-extension/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`OAuthConsentScope`](https://clerk.com/docs/chrome-extension/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`OAuthConsentInfo`](https://clerk.com/docs/chrome-extension/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [Metadata](https://clerk.com/docs/chrome-extension/reference/types/metadata.md): Types related to metadata. - [`LastAuthenticationStrategy`](https://clerk.com/docs/chrome-extension/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`ImageResource`](https://clerk.com/docs/chrome-extension/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/chrome-extension/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`IdentificationLinkResource`](https://clerk.com/docs/chrome-extension/reference/types/identification-link-resource.md): An interface representing an identification link. - [`FeatureResource`](https://clerk.com/docs/chrome-extension/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`ExternalAccount`](https://clerk.com/docs/chrome-extension/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`Errors`](https://clerk.com/docs/chrome-extension/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`EnterpriseAccount`](https://clerk.com/docs/chrome-extension/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`EnterpriseAccountConnection`](https://clerk.com/docs/chrome-extension/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`EmailLinkError`](https://clerk.com/docs/chrome-extension/reference/types/email-link-error.md): Custom error for email links. - [`EmailAddress`](https://clerk.com/docs/chrome-extension/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`ClerkAPIError`](https://clerk.com/docs/chrome-extension/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`DeletedObjectResource`](https://clerk.com/docs/chrome-extension/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`CustomPage`](https://clerk.com/docs/chrome-extension/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`ClerkAPIResponseError`](https://clerk.com/docs/chrome-extension/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`CustomMenuItem`](https://clerk.com/docs/chrome-extension/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`ClerkPaginatedResponse`](https://clerk.com/docs/chrome-extension/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`BillingSubscriptionResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingProrationDiscount`](https://clerk.com/docs/chrome-extension/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingPayerCredit`](https://clerk.com/docs/chrome-extension/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/chrome-extension/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`BillingStatementTotals`](https://clerk.com/docs/chrome-extension/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingProrationCreditDetail`](https://clerk.com/docs/chrome-extension/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingPaymentResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`BillingStatementResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingPlanPrice`](https://clerk.com/docs/chrome-extension/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingStatementGroup`](https://clerk.com/docs/chrome-extension/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingPeriodTotals`](https://clerk.com/docs/chrome-extension/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`BillingPlanResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingTotals`](https://clerk.com/docs/chrome-extension/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`ClerkError`](https://clerk.com/docs/chrome-extension/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [Clerk Chrome Extension SDK](https://clerk.com/docs/chrome-extension/reference/overview.md): The Clerk Chrome Extension SDK gives you access to prebuilt components, React hooks, and helpers to make user authentication easier. - [`createClerkClient()`](https://clerk.com/docs/chrome-extension/reference/create-clerk-client.md): createClerkClient() allows Chrome Extension developers to initialize Clerk in popups, side panels, and background service workers without React. ### Electron - [Electron Quickstart](https://clerk.com/docs/electron/getting-started/quickstart.md): Add authentication and user management to your Electron app with Clerk. - [Add custom pages and links to the `` component](https://clerk.com/docs/electron/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/electron/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/electron/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [`Appearance` prop](https://clerk.com/docs/electron/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [`Variables` prop](https://clerk.com/docs/electron/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Themes](https://clerk.com/docs/electron/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`captcha` prop](https://clerk.com/docs/electron/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [Bring your own CSS](https://clerk.com/docs/electron/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`Options` prop](https://clerk.com/docs/electron/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [Social connections (OAuth)](https://clerk.com/docs/electron/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Error handling](https://clerk.com/docs/electron/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom waitlist form](https://clerk.com/docs/electron/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/electron/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/electron/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Build a custom waitlist page](https://clerk.com/docs/electron/guides/secure/waitlist.md): Learn how to build a custom waitlist page for your application. - [Authorization checks](https://clerk.com/docs/electron/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Component Reference](https://clerk.com/docs/electron/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/electron/reference/components/clerk-provider.md): The component provides session and user context to Clerk's hooks and components. - [`` component](https://clerk.com/docs/electron/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` component](https://clerk.com/docs/electron/reference/components/authentication/task-reset-password.md): Clerk's component renders a UI for resolving the reset-password task. - [`` component](https://clerk.com/docs/electron/reference/components/authentication/task-choose-organization.md): Clerk's component renders a UI for resolving the choose-organization task. - [`` component](https://clerk.com/docs/electron/reference/components/authentication/task-setup-mfa.md): Clerk's component renders a UI for resolving the setup-mfa task. - [`` component](https://clerk.com/docs/electron/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/electron/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/electron/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/electron/reference/components/control/redirect-to-user-profile.md): The component will navigate to the user profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/electron/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/electron/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/electron/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/electron/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/electron/reference/components/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` component](https://clerk.com/docs/electron/reference/components/control/clerk-failed.md): The component indicates that the Clerk object has failed to load. - [`` component](https://clerk.com/docs/electron/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/electron/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/electron/reference/components/control/redirect-to-create-organization.md): The component will navigate to the create Organization flow which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/electron/reference/components/control/redirect-to-organization-profile.md): The component will navigate to the Organization profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/electron/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/electron/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [``](https://clerk.com/docs/electron/reference/components/organization/invite-members-button.md): Clerk's component is used to render a button that opens a modal for inviting new members to an Organization. - [`` component](https://clerk.com/docs/electron/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/electron/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/electron/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/electron/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/electron/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/electron/reference/components/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`` component](https://clerk.com/docs/electron/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/electron/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/electron/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [Hooks Reference](https://clerk.com/docs/electron/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`useWaitlist()`](https://clerk.com/docs/electron/reference/hooks/use-waitlist.md): Access and manage the waitlist state in your React application with Clerk's useWaitlist() hook. - [`useUser()`](https://clerk.com/docs/electron/reference/hooks/use-user.md): Access and manage the current user's data in your React application with Clerk's useUser() hook. - [`useSession()`](https://clerk.com/docs/electron/reference/hooks/use-session.md): Access and manage the current user's session in your React application with Clerk's useSession() hook. - [`useSignIn()`](https://clerk.com/docs/electron/reference/hooks/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useSignUp()`](https://clerk.com/docs/electron/reference/hooks/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useSessionList()`](https://clerk.com/docs/electron/reference/hooks/use-session-list.md): Access and manage the current user's session list in your React application with Clerk's useSessionList() hook. - [`useAuth()`](https://clerk.com/docs/electron/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [`useClerk()`](https://clerk.com/docs/electron/reference/hooks/use-clerk.md): Access and manage the Clerk object in your React application with Clerk's useClerk() hook. - [`useOrganizationCreationDefaults()`](https://clerk.com/docs/electron/reference/hooks/use-organization-creation-defaults.md): Retrieve Organization creation defaults for the current user in your React application with Clerk's useOrganizationCreationDefaults() hook. - [`useOrganizationList()`](https://clerk.com/docs/electron/reference/hooks/use-organization-list.md): Access and manage the current user's Organization list in your React application with Clerk's useOrganizationList() hook. - [`useOrganization()`](https://clerk.com/docs/electron/reference/hooks/use-organization.md): Access and manage the currently active Organization in your React application with Clerk's useOrganization() hook. - [`useReverification()`](https://clerk.com/docs/electron/reference/hooks/use-reverification.md): Clerk's useReverification() hook enhances a fetcher function to handle a session's reverification flow. - [`useAPIKeys()`](https://clerk.com/docs/electron/reference/hooks/use-api-keys.md): Access and manage API keys in your React application with Clerk's useAPIKeys() hook. - [`SignUpFuture` object](https://clerk.com/docs/electron/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`User` object](https://clerk.com/docs/electron/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`Session` object](https://clerk.com/docs/electron/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`APIKeys` object](https://clerk.com/docs/electron/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`Clerk` class](https://clerk.com/docs/electron/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [Key Clerk objects](https://clerk.com/docs/electron/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`Client` object](https://clerk.com/docs/electron/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`SignUp` object](https://clerk.com/docs/electron/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`Organization` object](https://clerk.com/docs/electron/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [`SignIn` object](https://clerk.com/docs/electron/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`SignInFuture` object](https://clerk.com/docs/electron/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`SignUpInitialValues`](https://clerk.com/docs/electron/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/electron/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [SSO Types](https://clerk.com/docs/electron/reference/types/sso.md): Types related to SSO providers and strategies. - [`TOTPResource`](https://clerk.com/docs/electron/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`UserOrganizationInvitation`](https://clerk.com/docs/electron/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`VerificationResource`](https://clerk.com/docs/electron/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`Waitlist`](https://clerk.com/docs/electron/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`ClerkError`](https://clerk.com/docs/electron/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`APIKeyResource`](https://clerk.com/docs/electron/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`CustomPage`](https://clerk.com/docs/electron/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`EnterpriseAccount`](https://clerk.com/docs/electron/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`CustomMenuItem`](https://clerk.com/docs/electron/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`EnterpriseAccountConnection`](https://clerk.com/docs/electron/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`Errors`](https://clerk.com/docs/electron/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`DeletedObjectResource`](https://clerk.com/docs/electron/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`ClerkPaginatedResponse`](https://clerk.com/docs/electron/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`ExternalAccount`](https://clerk.com/docs/electron/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`EmailAddress`](https://clerk.com/docs/electron/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`ImageResource`](https://clerk.com/docs/electron/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/electron/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`LastAuthenticationStrategy`](https://clerk.com/docs/electron/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`FeatureResource`](https://clerk.com/docs/electron/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`IdentificationLinkResource`](https://clerk.com/docs/electron/reference/types/identification-link-resource.md): An interface representing an identification link. - [`OAuthApplication`](https://clerk.com/docs/electron/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`OAuthConsentInfo`](https://clerk.com/docs/electron/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [Metadata](https://clerk.com/docs/electron/reference/types/metadata.md): Types related to metadata. - [`OAuthConsentScope`](https://clerk.com/docs/electron/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`OrganizationCreationDefaults`](https://clerk.com/docs/electron/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/electron/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/electron/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationDomainResource`](https://clerk.com/docs/electron/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`BackupCodeResource`](https://clerk.com/docs/electron/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`SessionStatus`](https://clerk.com/docs/electron/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SessionTask`](https://clerk.com/docs/electron/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionVerification`](https://clerk.com/docs/electron/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SessionWithActivities`](https://clerk.com/docs/electron/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`SetActiveParams`](https://clerk.com/docs/electron/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SignInFirstFactor`](https://clerk.com/docs/electron/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`SignInInitialValues`](https://clerk.com/docs/electron/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`SignInRedirectOptions`](https://clerk.com/docs/electron/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`SignInSecondFactor`](https://clerk.com/docs/electron/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`SignUpRedirectOptions`](https://clerk.com/docs/electron/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`SignUpVerificationResource`](https://clerk.com/docs/electron/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`SignedInSessionResource`](https://clerk.com/docs/electron/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`RoleResource`](https://clerk.com/docs/electron/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`OrganizationInvitation`](https://clerk.com/docs/electron/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`OrganizationMembershipRequest`](https://clerk.com/docs/electron/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`OrganizationMembership`](https://clerk.com/docs/electron/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`OrganizationSuggestion`](https://clerk.com/docs/electron/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [Clerk types](https://clerk.com/docs/electron/reference/types/overview.md): Explore the different types available for typing your application. - [`PasskeyResource`](https://clerk.com/docs/electron/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`PermissionResource`](https://clerk.com/docs/electron/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`PhoneNumber`](https://clerk.com/docs/electron/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`ProtectCheckResource`](https://clerk.com/docs/electron/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`PublicUserData`](https://clerk.com/docs/electron/reference/types/public-user-data.md): Information about that user that's publicly available. - [`RedirectOptions`](https://clerk.com/docs/electron/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/electron/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`ClerkAPIResponseError`](https://clerk.com/docs/electron/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkAPIError`](https://clerk.com/docs/electron/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`createClerkBridge()`](https://clerk.com/docs/electron/reference/create-clerk-bridge.md): createClerkBridge() sets up Clerk in the Electron main process, owning IPC handlers, token persistence, and OAuth deep-link transport. - [`exposeClerkBridge()`](https://clerk.com/docs/electron/reference/expose-clerk-bridge.md): exposeClerkBridge() publishes the Clerk bridge from the preload script to the renderer. - [Clerk Electron SDK](https://clerk.com/docs/electron/reference/overview.md): The Clerk Electron SDK adds authentication to Electron apps with the same prebuilt components and React hooks you use on the web. - [Configure passkeys for Electron](https://clerk.com/docs/electron/reference/passkeys.md): Learn how passkeys work in Electron apps with Clerk, in the renderer and natively on macOS and Windows. - [`storage()`](https://clerk.com/docs/electron/reference/storage.md): storage() creates the default encrypted token storage adapter for the Clerk Electron SDK, backed by electron-store and Electron's safeStorage. ### Expo - [Expo Quickstart](https://clerk.com/docs/expo/getting-started/quickstart.md): Add authentication and user management to your Expo app with Clerk. - [Sign in with Google](https://clerk.com/docs/expo/guides/configure/auth-strategies/sign-in-with-google.md): Learn how to use Clerk to natively sign in with Google in your Expo app. - [Sign in with Apple](https://clerk.com/docs/expo/guides/configure/auth-strategies/sign-in-with-apple.md): Learn how to use Clerk to natively sign in with Apple in your Expo app. - [Social connections (OAuth)](https://clerk.com/docs/expo/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Add custom pages and links to the `` component](https://clerk.com/docs/expo/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/expo/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/expo/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Bring your own CSS](https://clerk.com/docs/expo/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`Appearance` prop](https://clerk.com/docs/expo/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [`captcha` prop](https://clerk.com/docs/expo/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Options` prop](https://clerk.com/docs/expo/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [Themes](https://clerk.com/docs/expo/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/expo/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/expo/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/expo/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Use hosted authentication in native apps](https://clerk.com/docs/expo/guides/account-portal/hosted-auth.md): Use Clerk's Account Portal to sign users in and sign users up from Expo, iOS, and Android apps. - [Clerk Billing webhooks](https://clerk.com/docs/expo/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/expo/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom authentication flow using biometric sign-in](https://clerk.com/docs/expo/guides/development/custom-flows/authentication/biometric-sign-in.md): Learn how to enroll a biometric credential and let returning users sign in to a native app with biometrics. - [Build a custom waitlist form](https://clerk.com/docs/expo/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/expo/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/expo/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/expo/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Authorization checks](https://clerk.com/docs/expo/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Read user data](https://clerk.com/docs/expo/guides/users/reading.md): Learn how to use Clerk's hooks to read user data in your Expo application. - [Component Reference](https://clerk.com/docs/expo/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your Expo application. - [`` component](https://clerk.com/docs/expo/reference/components/clerk-provider.md): The component provides session and user context to Clerk's hooks and components. - [`` component](https://clerk.com/docs/expo/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/expo/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/expo/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/expo/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/expo/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/expo/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/expo/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/expo/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/expo/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/expo/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/expo/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/expo/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/expo/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/expo/reference/components/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`` component](https://clerk.com/docs/expo/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/expo/reference/components/unstyled/sign-in-with-metamask.md): The component is used to complete a one-click, cryptographically-secure sign-in flow using MetaMask. - [`` component](https://clerk.com/docs/expo/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/expo/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/expo/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/expo/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/expo/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`useWaitlist()`](https://clerk.com/docs/expo/reference/hooks/use-waitlist.md): Access and manage the waitlist state in your React application with Clerk's useWaitlist() hook. - [`useUser()`](https://clerk.com/docs/expo/reference/hooks/use-user.md): Access and manage the current user's data in your React application with Clerk's useUser() hook. - [`useSignUp()`](https://clerk.com/docs/expo/reference/hooks/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useSignIn()`](https://clerk.com/docs/expo/reference/hooks/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useOrganization()`](https://clerk.com/docs/expo/reference/hooks/use-organization.md): Access and manage the currently active Organization in your React application with Clerk's useOrganization() hook. - [`useSessionList()`](https://clerk.com/docs/expo/reference/hooks/use-session-list.md): Access and manage the current user's session list in your React application with Clerk's useSessionList() hook. - [`useSession()`](https://clerk.com/docs/expo/reference/hooks/use-session.md): Access and manage the current user's session in your React application with Clerk's useSession() hook. - [`useOrganizationList()`](https://clerk.com/docs/expo/reference/hooks/use-organization-list.md): Access and manage the current user's Organization list in your React application with Clerk's useOrganizationList() hook. - [`useAuth()`](https://clerk.com/docs/expo/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [`useClerk()`](https://clerk.com/docs/expo/reference/hooks/use-clerk.md): Access and manage the Clerk object in your React application with Clerk's useClerk() hook. - [`useOrganizationCreationDefaults()`](https://clerk.com/docs/expo/reference/hooks/use-organization-creation-defaults.md): Retrieve Organization creation defaults for the current user in your React application with Clerk's useOrganizationCreationDefaults() hook. - [Hooks Reference](https://clerk.com/docs/expo/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`useSignUp()`](https://clerk.com/docs/expo/reference/hooks/legacy/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useSignIn()`](https://clerk.com/docs/expo/reference/hooks/legacy/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`Clerk` class](https://clerk.com/docs/expo/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Client` object](https://clerk.com/docs/expo/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`Organization` object](https://clerk.com/docs/expo/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [`User` object](https://clerk.com/docs/expo/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [Key Clerk objects](https://clerk.com/docs/expo/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`APIKeys` object](https://clerk.com/docs/expo/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`Billing` object](https://clerk.com/docs/expo/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`SignIn` object](https://clerk.com/docs/expo/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`Session` object](https://clerk.com/docs/expo/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`SignInFuture` object](https://clerk.com/docs/expo/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`SignUpFuture` object](https://clerk.com/docs/expo/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignUp` object](https://clerk.com/docs/expo/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`PhoneNumber`](https://clerk.com/docs/expo/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`VerificationResource`](https://clerk.com/docs/expo/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`ProtectCheckResource`](https://clerk.com/docs/expo/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [SSO Types](https://clerk.com/docs/expo/reference/types/sso.md): Types related to SSO providers and strategies. - [`SignUpRedirectOptions`](https://clerk.com/docs/expo/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`PublicUserData`](https://clerk.com/docs/expo/reference/types/public-user-data.md): Information about that user that's publicly available. - [`RedirectOptions`](https://clerk.com/docs/expo/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`Waitlist`](https://clerk.com/docs/expo/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`RoleResource`](https://clerk.com/docs/expo/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`Web3Wallet`](https://clerk.com/docs/expo/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`SessionStatus`](https://clerk.com/docs/expo/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SessionTask`](https://clerk.com/docs/expo/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionVerification`](https://clerk.com/docs/expo/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SessionWithActivities`](https://clerk.com/docs/expo/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`SignInFirstFactor`](https://clerk.com/docs/expo/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`SetActiveParams`](https://clerk.com/docs/expo/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SignInInitialValues`](https://clerk.com/docs/expo/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`SignInSecondFactor`](https://clerk.com/docs/expo/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`SignInRedirectOptions`](https://clerk.com/docs/expo/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`SignUpInitialValues`](https://clerk.com/docs/expo/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`SignUpVerificationResource`](https://clerk.com/docs/expo/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/expo/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`SignedInSessionResource`](https://clerk.com/docs/expo/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`UserOrganizationInvitation`](https://clerk.com/docs/expo/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`TOTPResource`](https://clerk.com/docs/expo/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`PermissionResource`](https://clerk.com/docs/expo/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`PasskeyResource`](https://clerk.com/docs/expo/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [Clerk types](https://clerk.com/docs/expo/reference/types/overview.md): Explore the different types available for typing your application. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/expo/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`OrganizationMembership`](https://clerk.com/docs/expo/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`OrganizationSuggestion`](https://clerk.com/docs/expo/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`OrganizationMembershipRequest`](https://clerk.com/docs/expo/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/expo/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/expo/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OrganizationDomainResource`](https://clerk.com/docs/expo/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationInvitation`](https://clerk.com/docs/expo/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`OrganizationCreationDefaults`](https://clerk.com/docs/expo/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`Errors`](https://clerk.com/docs/expo/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`ExternalAccount`](https://clerk.com/docs/expo/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`FeatureResource`](https://clerk.com/docs/expo/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/expo/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`IdentificationLinkResource`](https://clerk.com/docs/expo/reference/types/identification-link-resource.md): An interface representing an identification link. - [`ImageResource`](https://clerk.com/docs/expo/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`LastAuthenticationStrategy`](https://clerk.com/docs/expo/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [Metadata](https://clerk.com/docs/expo/reference/types/metadata.md): Types related to metadata. - [`OAuthApplication`](https://clerk.com/docs/expo/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`OAuthConsentInfo`](https://clerk.com/docs/expo/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`OAuthConsentScope`](https://clerk.com/docs/expo/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`EnterpriseAccount`](https://clerk.com/docs/expo/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`BillingCreditBalanceResource`](https://clerk.com/docs/expo/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`BillingDiscounts`](https://clerk.com/docs/expo/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingPayerCredit`](https://clerk.com/docs/expo/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingAppliedDiscount`](https://clerk.com/docs/expo/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`BillingPaymentMethodResource`](https://clerk.com/docs/expo/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingPayerResource`](https://clerk.com/docs/expo/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`BillingDiscountRedemption`](https://clerk.com/docs/expo/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BillingMoneyAmount`](https://clerk.com/docs/expo/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/expo/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`BackupCodeResource`](https://clerk.com/docs/expo/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingPlanPrice`](https://clerk.com/docs/expo/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`BillingPeriodTotals`](https://clerk.com/docs/expo/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/expo/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`BillingPerUnitTotal`](https://clerk.com/docs/expo/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`BillingPlanResource`](https://clerk.com/docs/expo/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingPaymentTotals`](https://clerk.com/docs/expo/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingPlanUnitPrice`](https://clerk.com/docs/expo/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/expo/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`BillingProrationCreditDetail`](https://clerk.com/docs/expo/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`BillingProrationDiscount`](https://clerk.com/docs/expo/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingStatementGroup`](https://clerk.com/docs/expo/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingPaymentResource`](https://clerk.com/docs/expo/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`BillingStatementResource`](https://clerk.com/docs/expo/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingStatementTotals`](https://clerk.com/docs/expo/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/expo/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/expo/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/expo/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingSubscriptionResource`](https://clerk.com/docs/expo/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/expo/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingTotals`](https://clerk.com/docs/expo/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`ClerkAPIError`](https://clerk.com/docs/expo/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkAPIResponseError`](https://clerk.com/docs/expo/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkPaginatedResponse`](https://clerk.com/docs/expo/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`CustomMenuItem`](https://clerk.com/docs/expo/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`ClerkError`](https://clerk.com/docs/expo/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`CustomPage`](https://clerk.com/docs/expo/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`DeletedObjectResource`](https://clerk.com/docs/expo/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`EmailAddress`](https://clerk.com/docs/expo/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`EmailLinkError`](https://clerk.com/docs/expo/reference/types/email-link-error.md): Custom error for email links. - [`EnterpriseAccountConnection`](https://clerk.com/docs/expo/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`APIKeyResource`](https://clerk.com/docs/expo/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BillingCheckoutTotals`](https://clerk.com/docs/expo/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`BillingCreditLedgerResource`](https://clerk.com/docs/expo/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`BillingCredits`](https://clerk.com/docs/expo/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BillingCheckoutResource`](https://clerk.com/docs/expo/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [Configure passkeys for Expo](https://clerk.com/docs/expo/reference/passkeys.md): Learn how to configure passkeys for your Expo application. - [Clerk Expo SDK](https://clerk.com/docs/expo/reference/overview.md): The Clerk Expo SDK gives you access to prebuilt components, React hooks, and helpers to make user authentication easier. - [`` component](https://clerk.com/docs/expo/reference/native-components/user-button.md): A native avatar button component that displays the user's profile image and opens a profile management interface. - [`` component](https://clerk.com/docs/expo/reference/native-components/user-profile-view.md): A native profile management component providing complete account settings for iOS and Android. - [Theming Expo native components](https://clerk.com/docs/expo/reference/native-components/theming.md): Customize the appearance of Clerk's native iOS and Android components with a JSON theme file. - [Expo Native Components](https://clerk.com/docs/expo/reference/native-components/overview.md): Pre-built native authentication and user management components for iOS and Android. - [`` component](https://clerk.com/docs/expo/reference/native-components/auth-view.md): A native authentication component that provides complete sign-in and sign-up flows for iOS and Android. - [`useUserProfileCustomPageNavigation()`](https://clerk.com/docs/expo/reference/native-hooks/use-user-profile-custom-page-navigation.md): Clerk's useUserProfileCustomPageNavigation() hook controls navigation from custom Expo native user profile pages. - [`useSSO()`](https://clerk.com/docs/expo/reference/native-hooks/use-sso.md): Clerk's useSSO() hook is used to create a new SSO flow. - [`useSignInWithGoogle()`](https://clerk.com/docs/expo/reference/native-hooks/use-sign-in-with-google.md): Clerk's useSignInWithGoogle() hook provides native Sign in with Google functionality for iOS and Android devices. - [`useLocalCredentials()`](https://clerk.com/docs/expo/reference/native-hooks/use-local-credentials.md): Clerk's useLocalCredentials() hook enables you to store and access a user's password credentials on their device. - [`useOAuth()`](https://clerk.com/docs/expo/reference/native-hooks/use-oauth.md): Clerk's useOAuth() hook is used to create a new OAuth flow. - [`useSignInWithApple()`](https://clerk.com/docs/expo/reference/native-hooks/use-sign-in-with-apple.md): Clerk's useSignInWithApple() hook provides native Sign in with Apple functionality for iOS devices. - [`useHostedAuth()`](https://clerk.com/docs/expo/reference/native-hooks/use-hosted-auth.md): Clerk's useHostedAuth() hook opens Account Portal and activates the session created there. - [`useAuthViewState()`](https://clerk.com/docs/expo/reference/native-hooks/use-auth-view-state.md): Clerk's useAuthViewState() hook reports when a native authentication flow and Clerk-owned post-authentication steps are complete. - [`useBiometricCredentials()`](https://clerk.com/docs/expo/reference/native-hooks/use-biometric-credentials.md): Clerk's useBiometricCredentials() hook provides biometric credential enrollment, sign-in, and session reverification for Expo apps. ### Android - [Android Quickstart](https://clerk.com/docs/android/getting-started/quickstart.md): Add authentication and user management to your Android app with Clerk. - [Authorization checks](https://clerk.com/docs/android/guides/secure/authorization-checks.md): Learn how to check user Roles, Permissions, Plans, Features, and reverification in your Android application. - [Error handling](https://clerk.com/docs/android/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom authentication flow using biometric sign-in](https://clerk.com/docs/android/guides/development/custom-flows/authentication/biometric-sign-in.md): Learn how to enroll a biometric credential and let returning users sign in to a native app with biometrics. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/android/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [`ClerkTheme`](https://clerk.com/docs/android/guides/customizing-clerk/clerk-theme.md): Utilize Clerk's ClerkTheme to adjust the general styles of the Android views, like colors, fonts, and design properties. - [Sign in with Google](https://clerk.com/docs/android/guides/configure/auth-strategies/sign-in-with-google.md): Learn how to use Clerk to natively sign in with Google in your Android app. - [Social connections (OAuth)](https://clerk.com/docs/android/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Use hosted authentication in native apps](https://clerk.com/docs/android/guides/account-portal/hosted-auth.md): Use Clerk's Account Portal to sign users in and sign users up from Expo, iOS, and Android apps. - [Billing](https://clerk.com/docs/android/reference/native-mobile/billing.md): Read Billing Plans, Subscriptions, statements, payment attempts, payment methods, and credits with the Clerk Android SDK. - [Organization management](https://clerk.com/docs/android/reference/native-mobile/organizations.md): Manage Organizations, memberships, invitations, requests, suggestions, and domains with the Clerk Android SDK. - [Welcome](https://clerk.com/docs/android/reference/native-mobile/overview.md): Add native authentication and user management to your app. - [Share sessions across apps](https://clerk.com/docs/android/reference/native-mobile/shared-session-sync.md): Keep Clerk sessions synchronized across trusted Android apps on the same device. - [User management](https://clerk.com/docs/android/reference/native-mobile/user.md): Manage the signed-in user with the Clerk Android SDK. - [Configure the SDK](https://clerk.com/docs/android/reference/native-mobile/configuration.md): Configure the Clerk Android SDK with your publishable key. - [Clerk](https://clerk.com/docs/android/reference/native-mobile/clerk.md): Use Clerk in your Android app with global access and reactive state flows. - [Install the SDK](https://clerk.com/docs/android/reference/native-mobile/installation.md): Install the Clerk Android SDK with Gradle. - [Authentication flows](https://clerk.com/docs/android/reference/native-mobile/auth.md): Learn how to handle sign-in, sign-up, MFA, password reset, and session management with the Clerk Android SDK. - [Integrate Convex with Clerk](https://clerk.com/docs/android/reference/native-mobile/integrations/convex.md): Learn how to integrate Clerk with Convex in your native app. - [View Reference](https://clerk.com/docs/android/reference/views/overview.md): A list of Clerk's comprehensive suite of views designed to seamlessly integrate authentication and multi-tenancy into your application. - [`AuthView`](https://clerk.com/docs/android/reference/views/authentication/auth-view.md): Clerk's AuthView renders a UI for signing in and signing up users on your app. - [`OrganizationSwitcher`](https://clerk.com/docs/android/reference/views/organization/organization-switcher.md): Clerk's OrganizationSwitcher renders an account switcher interface that lets signed-in users switch between their Personal and Organization accounts. - [`OrganizationListView`](https://clerk.com/docs/android/reference/views/organization/organization-list-view.md): Clerk's OrganizationListView renders a standalone account picker for choosing between the user's Personal Account and Organization accounts. - [`OrganizationProfileView`](https://clerk.com/docs/android/reference/views/organization/organization-profile-view.md): Clerk's OrganizationProfileView renders the Active Organization's management interface, including members, domains, and other Organization settings. - [`UserButton`](https://clerk.com/docs/android/reference/views/user/user-button.md): Clerk's UserButton renders a circular button that displays the current user's profile image and opens the user profile when tapped. - [`UserProfileView`](https://clerk.com/docs/android/reference/views/user/user-profile-view.md): Clerk's UserProfileView renders a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [Configure passkeys for Android](https://clerk.com/docs/android/reference/passkeys.md): Learn how to configure passkeys for your Android application. ### iOS - [iOS Quickstart](https://clerk.com/docs/ios/getting-started/quickstart.md): Add authentication and user management to your iOS app with Clerk. - [`ClerkTheme`](https://clerk.com/docs/ios/guides/customizing-clerk/clerk-theme.md): Utilize Clerk's ClerkTheme to adjust the general styles of the iOS views, like colors, fonts, and design properties. - [Sign in with Apple](https://clerk.com/docs/ios/guides/configure/auth-strategies/sign-in-with-apple.md): Learn how to use Clerk to natively sign in with Apple in your iOS app. - [Social connections (OAuth)](https://clerk.com/docs/ios/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Use hosted authentication in native apps](https://clerk.com/docs/ios/guides/account-portal/hosted-auth.md): Use Clerk's Account Portal to sign users in and sign users up from Expo, iOS, and Android apps. - [Authorization checks](https://clerk.com/docs/ios/guides/secure/authorization-checks.md): Learn how to check user Roles, Permissions, Plans, Features, and reverification in your iOS application. - [Error handling](https://clerk.com/docs/ios/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom authentication flow using biometric sign-in](https://clerk.com/docs/ios/guides/development/custom-flows/authentication/biometric-sign-in.md): Learn how to enroll a biometric credential and let returning users sign in to a native app with biometrics. - [Clerk](https://clerk.com/docs/ios/reference/native-mobile/clerk.md): Use Clerk in your iOS app with shared access and SwiftUI integration. - [User management](https://clerk.com/docs/ios/reference/native-mobile/user.md): Manage the signed-in user with the Clerk iOS SDK. - [Welcome](https://clerk.com/docs/ios/reference/native-mobile/overview.md): Add native authentication and user management to your app. - [Organization management](https://clerk.com/docs/ios/reference/native-mobile/organizations.md): Manage Organizations, memberships, invitations, requests, suggestions, and domains with the Clerk iOS SDK. - [Install the SDK](https://clerk.com/docs/ios/reference/native-mobile/installation.md): Install the Clerk iOS SDK with Swift Package Manager. - [Configure the SDK](https://clerk.com/docs/ios/reference/native-mobile/configuration.md): Configure the Clerk iOS SDK with your publishable key and options. - [Share sessions across apps](https://clerk.com/docs/ios/reference/native-mobile/shared-session-sync.md): Share one Clerk session across trusted iOS apps and extensions on the same device. - [Billing](https://clerk.com/docs/ios/reference/native-mobile/billing.md): Read Billing Plans, Subscriptions, statements, payment attempts, payment methods, and credits with the Clerk iOS SDK. - [Authentication flows](https://clerk.com/docs/ios/reference/native-mobile/auth.md): Learn how to handle sign-in, sign-up, MFA, password reset, and session management with the Clerk iOS SDK. - [Integrate Convex with Clerk](https://clerk.com/docs/ios/reference/native-mobile/integrations/convex.md): Learn how to integrate Clerk with Convex in your native app. - [View Reference](https://clerk.com/docs/ios/reference/views/overview.md): A list of Clerk's comprehensive suite of views designed to seamlessly integrate authentication and multi-tenancy into your application. - [`AuthView`](https://clerk.com/docs/ios/reference/views/authentication/auth-view.md): Clerk's AuthView renders a UI for signing in and signing up users on your app. - [`UserProfileView`](https://clerk.com/docs/ios/reference/views/user/user-profile-view.md): Clerk's UserProfileView renders a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`UserButton`](https://clerk.com/docs/ios/reference/views/user/user-button.md): Clerk's UserButton renders a circular button that displays the current user's profile image and opens the user profile when tapped. - [`OrganizationListView`](https://clerk.com/docs/ios/reference/views/organization/organization-list-view.md): Clerk's OrganizationListView renders a standalone account picker for choosing between the user's Personal Account and Organization accounts. - [`OrganizationSwitcher`](https://clerk.com/docs/ios/reference/views/organization/organization-switcher.md): Clerk's OrganizationSwitcher renders an account switcher interface that lets signed-in users switch between their Personal and Organization accounts. - [`OrganizationProfileView`](https://clerk.com/docs/ios/reference/views/organization/organization-profile-view.md): Clerk's OrganizationProfileView renders the Active Organization's management interface, including members, domains, and other Organization settings. - [Watch Connectivity](https://clerk.com/docs/ios/reference/watch-connectivity.md): Sync Clerk auth state between an iOS app and its companion watchOS app. - [SwiftUI previews](https://clerk.com/docs/ios/reference/swiftui-previews.md): Use Clerk.preview() and ClerkEnvironment.json to render iOS previews with realistic Clerk configuration. ### Express - [Express Quickstart](https://clerk.com/docs/expressjs/getting-started/quickstart.md): Learn how to use Clerk to quickly and easily add secure authentication and user management to your Express server. - [Component Reference](https://clerk.com/docs/expressjs/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`captcha` prop](https://clerk.com/docs/expressjs/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [Bring your own CSS](https://clerk.com/docs/expressjs/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`Options` prop](https://clerk.com/docs/expressjs/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`Appearance` prop](https://clerk.com/docs/expressjs/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Themes](https://clerk.com/docs/expressjs/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/expressjs/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Social connections (OAuth)](https://clerk.com/docs/expressjs/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/expressjs/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/expressjs/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Build an MCP server in your application with Clerk](https://clerk.com/docs/expressjs/guides/ai/mcp/build-mcp-server.md): Learn how to build an MCP server using Clerk's OAuth server in your application. - [Verify API keys in your Express application with Clerk](https://clerk.com/docs/expressjs/guides/development/verifying-api-keys.md): Learn how to use Clerk's helpers to verify API keys in your Express application. - [Clerk Billing webhooks](https://clerk.com/docs/expressjs/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/expressjs/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/expressjs/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Build a custom waitlist form](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom flow for handling email links](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Build a custom flow for handling email links](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Authorization checks](https://clerk.com/docs/expressjs/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Clerk Express SDK](https://clerk.com/docs/expressjs/reference/overview.md): The Clerk Express SDK provides a powerful set of tools and utilities to seamlessly integrate authentication, user management, and Organization management into your Express application. - [`clerkMiddleware()`](https://clerk.com/docs/expressjs/reference/clerk-middleware.md): The clerkMiddleware() function checks the request's cookies and headers for a session JWT and if found, attaches the Auth object to the request object under the auth key. - [`getAuth()`](https://clerk.com/docs/expressjs/reference/get-auth.md): The getAuth() helper retrieves authentication state from the request object. - [`requireAuth()`](https://clerk.com/docs/expressjs/reference/require-auth.md): The requireAuth() middleware protects your routes by redirecting unauthenticated users to the homepage. ### Fastify - [Component Reference](https://clerk.com/docs/fastify/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [Fastify Quickstart](https://clerk.com/docs/fastify/getting-started/quickstart.md): Learn how to integrate Clerk for secure authentication and user management into your application using a Fastify backend. - [Authorization checks](https://clerk.com/docs/fastify/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Bring your own CSS](https://clerk.com/docs/fastify/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`captcha` prop](https://clerk.com/docs/fastify/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Options` prop](https://clerk.com/docs/fastify/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`Appearance` prop](https://clerk.com/docs/fastify/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Themes](https://clerk.com/docs/fastify/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/fastify/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Social connections (OAuth)](https://clerk.com/docs/fastify/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/fastify/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/fastify/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Verify API keys in your Fastify application with Clerk](https://clerk.com/docs/fastify/guides/development/verifying-api-keys.md): Learn how to use Clerk's helpers to verify API keys in your Fastify application. - [Clerk Billing webhooks](https://clerk.com/docs/fastify/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/fastify/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom waitlist form](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom flow for handling email links](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom flow for handling email links](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/fastify/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Clerk Fastify SDK](https://clerk.com/docs/fastify/reference/overview.md): The Clerk Fastify SDK provides a powerful set of tools and utilities to seamlessly integrate authentication, user management, and Organization management into your Fastify application. - [`clerkPlugin()`](https://clerk.com/docs/fastify/reference/clerk-plugin.md): The clerkPlugin() function is a Fastify plugin that integrates Clerk's authentication into your application. - [`getAuth()`](https://clerk.com/docs/fastify/reference/get-auth.md): The getAuth() helper retrieves the current user's authentication state from the request object. ### React Router - [React Router Quickstart](https://clerk.com/docs/react-router/getting-started/quickstart.md): Learn how to use Clerk to quickly and easily add secure authentication and user management to your React Router application. - [Social connections (OAuth)](https://clerk.com/docs/react-router/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Set up a custom OAuth consent page](https://clerk.com/docs/react-router/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/react-router/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/react-router/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Bring your own CSS](https://clerk.com/docs/react-router/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`Options` prop](https://clerk.com/docs/react-router/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`captcha` prop](https://clerk.com/docs/react-router/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Appearance` prop](https://clerk.com/docs/react-router/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [`Variables` prop](https://clerk.com/docs/react-router/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Themes](https://clerk.com/docs/react-router/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [Add custom items and links to the `` component](https://clerk.com/docs/react-router/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/react-router/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom pages and links to the `` component](https://clerk.com/docs/react-router/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Get started with Organizations](https://clerk.com/docs/react-router/guides/organizations/getting-started.md): Learn how to create and manage Organizations in your application. - [Check Roles and Permissions with Authorization Checks](https://clerk.com/docs/react-router/guides/organizations/control-access/check-access.md): Limit access to content or entire routes based on a user's Organization Role or Permissions. - [Verify OAuth access tokens in your React Router application with Clerk](https://clerk.com/docs/react-router/guides/development/verifying-oauth-access-tokens.md): Learn how to use Clerk's helpers to verify OAuth access tokens in your React Router application. - [Build your own sign-in-or-up page for your React Router app with Clerk](https://clerk.com/docs/react-router/guides/development/custom-sign-in-or-up-page.md): Learn how to add a custom sign-in-or-up page to your React Router app with Clerk's prebuilt components. - [Verify API keys in your React Router application with Clerk](https://clerk.com/docs/react-router/guides/development/verifying-api-keys.md): Learn how to use Clerk's helpers to verify API keys in your React Router application. - [Add React Router to your Clerk + React application](https://clerk.com/docs/react-router/guides/development/declarative-mode.md): Learn how to add React Router to your Clerk + React application. - [Build your own sign-up page for your React Router app with Clerk](https://clerk.com/docs/react-router/guides/development/custom-sign-up-page.md): Learn how to add a custom sign-up page to your React Router app with Clerk's prebuilt components. - [Clerk Billing webhooks](https://clerk.com/docs/react-router/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/react-router/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/react-router/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Build a custom waitlist form](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom flow for handling email links](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Build a custom waitlist page](https://clerk.com/docs/react-router/guides/secure/waitlist.md): Learn how to build a custom waitlist page for your application. - [Authorization checks](https://clerk.com/docs/react-router/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Read user data](https://clerk.com/docs/react-router/guides/users/reading.md): Learn how to use Clerk's hooks and helpers to read user data in your React Router application. - [`` component](https://clerk.com/docs/react-router/reference/components/clerk-provider.md): The component provides session and user context to Clerk's hooks and components. - [`` component](https://clerk.com/docs/react-router/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [Component Reference](https://clerk.com/docs/react-router/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/task-choose-organization.md): Clerk's component renders a UI for resolving the choose-organization task. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/task-setup-mfa.md): Clerk's component renders a UI for resolving the setup-mfa task. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/task-reset-password.md): Clerk's component renders a UI for resolving the reset-password task. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/react-router/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/react-router/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/react-router/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/react-router/reference/components/control/redirect-to-user-profile.md): The component will navigate to the user profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react-router/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react-router/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react-router/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react-router/reference/components/control/redirect-to-organization-profile.md): The component will navigate to the Organization profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react-router/reference/components/control/redirect-to-create-organization.md): The component will navigate to the create Organization flow which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/react-router/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/react-router/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/react-router/reference/components/control/clerk-failed.md): The component indicates that the Clerk object has failed to load. - [`` component](https://clerk.com/docs/react-router/reference/components/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` component](https://clerk.com/docs/react-router/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/react-router/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/react-router/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [``](https://clerk.com/docs/react-router/reference/components/organization/invite-members-button.md): Clerk's component is used to render a button that opens a modal for inviting new members to an Organization. - [`` component](https://clerk.com/docs/react-router/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/react-router/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/react-router/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/react-router/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/react-router/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/react-router/reference/components/unstyled/sign-in-with-metamask.md): The component is used to complete a one-click, cryptographically-secure sign-in flow using MetaMask. - [`` component](https://clerk.com/docs/react-router/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/react-router/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/react-router/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/react-router/reference/components/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`useClerk()`](https://clerk.com/docs/react-router/reference/hooks/use-clerk.md): Access and manage the Clerk object in your React application with Clerk's useClerk() hook. - [`useWaitlist()`](https://clerk.com/docs/react-router/reference/hooks/use-waitlist.md): Access and manage the waitlist state in your React application with Clerk's useWaitlist() hook. - [Hooks Reference](https://clerk.com/docs/react-router/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`useUser()`](https://clerk.com/docs/react-router/reference/hooks/use-user.md): Access and manage the current user's data in your React application with Clerk's useUser() hook. - [`useAuth()`](https://clerk.com/docs/react-router/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [`useOrganization()`](https://clerk.com/docs/react-router/reference/hooks/use-organization.md): Access and manage the currently active Organization in your React application with Clerk's useOrganization() hook. - [`useSessionList()`](https://clerk.com/docs/react-router/reference/hooks/use-session-list.md): Access and manage the current user's session list in your React application with Clerk's useSessionList() hook. - [`useSignUp()`](https://clerk.com/docs/react-router/reference/hooks/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useReverification()`](https://clerk.com/docs/react-router/reference/hooks/use-reverification.md): Clerk's useReverification() hook enhances a fetcher function to handle a session's reverification flow. - [`useSession()`](https://clerk.com/docs/react-router/reference/hooks/use-session.md): Access and manage the current user's session in your React application with Clerk's useSession() hook. - [`useSignIn()`](https://clerk.com/docs/react-router/reference/hooks/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useOrganizationList()`](https://clerk.com/docs/react-router/reference/hooks/use-organization-list.md): Access and manage the current user's Organization list in your React application with Clerk's useOrganizationList() hook. - [`useOAuthConsent()`](https://clerk.com/docs/react-router/reference/hooks/use-oauth-consent.md): Load OAuth consent metadata for an authenticated user with Clerk's useOAuthConsent() hook. - [`useOrganizationCreationDefaults()`](https://clerk.com/docs/react-router/reference/hooks/use-organization-creation-defaults.md): Retrieve Organization creation defaults for the current user in your React application with Clerk's useOrganizationCreationDefaults() hook. - [`useSignUp()`](https://clerk.com/docs/react-router/reference/hooks/legacy/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useSignIn()`](https://clerk.com/docs/react-router/reference/hooks/legacy/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`SignUp` object](https://clerk.com/docs/react-router/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignUpFuture` object](https://clerk.com/docs/react-router/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`User` object](https://clerk.com/docs/react-router/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`SignIn` object](https://clerk.com/docs/react-router/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`Organization` object](https://clerk.com/docs/react-router/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [`Client` object](https://clerk.com/docs/react-router/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`SignInFuture` object](https://clerk.com/docs/react-router/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`Session` object](https://clerk.com/docs/react-router/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [Key Clerk objects](https://clerk.com/docs/react-router/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`APIKeys` object](https://clerk.com/docs/react-router/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`Clerk` class](https://clerk.com/docs/react-router/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Billing` object](https://clerk.com/docs/react-router/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`BillingStatementResource`](https://clerk.com/docs/react-router/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingStatementGroup`](https://clerk.com/docs/react-router/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingStatementTotals`](https://clerk.com/docs/react-router/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/react-router/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`APIKeyResource`](https://clerk.com/docs/react-router/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BackupCodeResource`](https://clerk.com/docs/react-router/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`CustomMenuItem`](https://clerk.com/docs/react-router/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`BillingCreditBalanceResource`](https://clerk.com/docs/react-router/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`BillingCheckoutResource`](https://clerk.com/docs/react-router/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`OrganizationCreationDefaults`](https://clerk.com/docs/react-router/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`ClerkError`](https://clerk.com/docs/react-router/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`ClerkAPIResponseError`](https://clerk.com/docs/react-router/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`BillingAppliedDiscount`](https://clerk.com/docs/react-router/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`BillingDiscountRedemption`](https://clerk.com/docs/react-router/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`OAuthConsentScope`](https://clerk.com/docs/react-router/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`SignUpVerificationResource`](https://clerk.com/docs/react-router/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`ClerkAPIError`](https://clerk.com/docs/react-router/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`BillingCheckoutTotals`](https://clerk.com/docs/react-router/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`UserOrganizationInvitation`](https://clerk.com/docs/react-router/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`BillingTotals`](https://clerk.com/docs/react-router/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`BillingMoneyAmount`](https://clerk.com/docs/react-router/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/react-router/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`OAuthConsentInfo`](https://clerk.com/docs/react-router/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/react-router/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingCredits`](https://clerk.com/docs/react-router/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`SignUpInitialValues`](https://clerk.com/docs/react-router/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/react-router/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingPayerCredit`](https://clerk.com/docs/react-router/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`PublicUserData`](https://clerk.com/docs/react-router/reference/types/public-user-data.md): Information about that user that's publicly available. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/react-router/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingPaymentMethodResource`](https://clerk.com/docs/react-router/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`RedirectOptions`](https://clerk.com/docs/react-router/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`BillingSubscriptionResource`](https://clerk.com/docs/react-router/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingDiscounts`](https://clerk.com/docs/react-router/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`RoleResource`](https://clerk.com/docs/react-router/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`OAuthApplication`](https://clerk.com/docs/react-router/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/react-router/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingCreditLedgerResource`](https://clerk.com/docs/react-router/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`SessionStatus`](https://clerk.com/docs/react-router/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [Metadata](https://clerk.com/docs/react-router/reference/types/metadata.md): Types related to metadata. - [`SessionTask`](https://clerk.com/docs/react-router/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`BillingPaymentResource`](https://clerk.com/docs/react-router/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`LastAuthenticationStrategy`](https://clerk.com/docs/react-router/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`SessionVerification`](https://clerk.com/docs/react-router/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`BillingPeriodTotals`](https://clerk.com/docs/react-router/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`SessionWithActivities`](https://clerk.com/docs/react-router/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`ImageResource`](https://clerk.com/docs/react-router/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`SetActiveParams`](https://clerk.com/docs/react-router/reference/types/set-active-params.md): The parameters for the setActive() method. - [`Errors`](https://clerk.com/docs/react-router/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`BillingPayerResource`](https://clerk.com/docs/react-router/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`SignInFirstFactor`](https://clerk.com/docs/react-router/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`SignInInitialValues`](https://clerk.com/docs/react-router/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`BillingPlanPrice`](https://clerk.com/docs/react-router/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`BillingPaymentTotals`](https://clerk.com/docs/react-router/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`SignInRedirectOptions`](https://clerk.com/docs/react-router/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`ExternalAccount`](https://clerk.com/docs/react-router/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`SignInSecondFactor`](https://clerk.com/docs/react-router/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/react-router/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`BillingPlanResource`](https://clerk.com/docs/react-router/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`FeatureResource`](https://clerk.com/docs/react-router/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`BillingPerUnitTotal`](https://clerk.com/docs/react-router/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`ProtectCheckResource`](https://clerk.com/docs/react-router/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`PhoneNumber`](https://clerk.com/docs/react-router/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/react-router/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/react-router/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`IdentificationLinkResource`](https://clerk.com/docs/react-router/reference/types/identification-link-resource.md): An interface representing an identification link. - [`PermissionResource`](https://clerk.com/docs/react-router/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`BillingPlanUnitPrice`](https://clerk.com/docs/react-router/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`EnterpriseAccount`](https://clerk.com/docs/react-router/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`BillingProrationCreditDetail`](https://clerk.com/docs/react-router/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`BillingProrationDiscount`](https://clerk.com/docs/react-router/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`PasskeyResource`](https://clerk.com/docs/react-router/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [Clerk types](https://clerk.com/docs/react-router/reference/types/overview.md): Explore the different types available for typing your application. - [`EnterpriseAccountConnection`](https://clerk.com/docs/react-router/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`EmailLinkError`](https://clerk.com/docs/react-router/reference/types/email-link-error.md): Custom error for email links. - [`OrganizationSuggestion`](https://clerk.com/docs/react-router/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`OrganizationMembership`](https://clerk.com/docs/react-router/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`OrganizationMembershipRequest`](https://clerk.com/docs/react-router/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`OrganizationInvitation`](https://clerk.com/docs/react-router/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/react-router/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationDomainResource`](https://clerk.com/docs/react-router/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/react-router/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/react-router/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`DeletedObjectResource`](https://clerk.com/docs/react-router/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`EmailAddress`](https://clerk.com/docs/react-router/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`ClerkPaginatedResponse`](https://clerk.com/docs/react-router/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`CustomPage`](https://clerk.com/docs/react-router/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`SignedInSessionResource`](https://clerk.com/docs/react-router/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`Waitlist`](https://clerk.com/docs/react-router/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`VerificationResource`](https://clerk.com/docs/react-router/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`Web3Wallet`](https://clerk.com/docs/react-router/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`TOTPResource`](https://clerk.com/docs/react-router/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`SignUpRedirectOptions`](https://clerk.com/docs/react-router/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [SSO Types](https://clerk.com/docs/react-router/reference/types/sso.md): Types related to SSO providers and strategies. - [Clerk React Router SDK](https://clerk.com/docs/react-router/reference/overview.md): The Clerk React Router SDK gives you access to prebuilt components, React hooks, and helpers to make user authentication easier. - [`rootAuthLoader()`](https://clerk.com/docs/react-router/reference/root-auth-loader.md): The rootAuthLoader() function configures Clerk to handle authentication state for React Router routes. - [`getAuth()`](https://clerk.com/docs/react-router/reference/get-auth.md): Access and manage the current user's authentication state in your React application with Clerk's getAuth() helper. - [`clerkMiddleware()` | React Router](https://clerk.com/docs/react-router/reference/clerk-middleware.md): The clerkMiddleware() function allows you to protect your React Router application using middleware. ### TanStack React Start - [TanStack React Start Quickstart](https://clerk.com/docs/tanstack-react-start/getting-started/quickstart.md): Learn how to use Clerk to quickly and easily add secure authentication and user management to your TanStack React Start application. - [Authorization checks](https://clerk.com/docs/tanstack-react-start/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Build a custom waitlist page](https://clerk.com/docs/tanstack-react-start/guides/secure/waitlist.md): Learn how to build a custom waitlist page for your application. - [Get started with Organizations](https://clerk.com/docs/tanstack-react-start/guides/organizations/getting-started.md): Learn how to create and manage Organizations in your application. - [Check Roles and Permissions with Authorization Checks](https://clerk.com/docs/tanstack-react-start/guides/organizations/control-access/check-access.md): Limit access to content or entire routes based on a user's Organization Role or Permissions. - [Build your own sign-up page for your TanStack React Start app with Clerk](https://clerk.com/docs/tanstack-react-start/guides/development/custom-sign-up-page.md): Learn how to add a custom sign-up page to your TanStack React Start app with Clerk's prebuilt components. - [Build your own sign-in-or-up page for your TanStack React Start app with Clerk](https://clerk.com/docs/tanstack-react-start/guides/development/custom-sign-in-or-up-page.md): Learn how to add a custom sign-in-or-up page to your TanStack React Start app with Clerk's prebuilt components. - [Verify API keys in your TanStack React Start application with Clerk](https://clerk.com/docs/tanstack-react-start/guides/development/verifying-api-keys.md): Learn how to use Clerk's helpers to verify API keys in your TanStack React Start application. - [Verify OAuth access tokens in your TanStack React Start application with Clerk](https://clerk.com/docs/tanstack-react-start/guides/development/verifying-oauth-access-tokens.md): Learn how to use Clerk's helpers to verify OAuth access tokens in your TanStack React Start application. - [Clerk Billing webhooks](https://clerk.com/docs/tanstack-react-start/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Build a custom waitlist form](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Build a custom flow for handling email links](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Social connections (OAuth)](https://clerk.com/docs/tanstack-react-start/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Set up a custom OAuth consent page](https://clerk.com/docs/tanstack-react-start/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/tanstack-react-start/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/tanstack-react-start/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Add custom pages and links to the `` component](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [`captcha` prop](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Options` prop](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`Appearance` prop](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Themes](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Bring your own CSS](https://clerk.com/docs/tanstack-react-start/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [Read user data](https://clerk.com/docs/tanstack-react-start/guides/users/reading.md): Learn how to use Clerk's hooks and helpers to read user data in your TanStack React Start application. - [`APIKeys` object](https://clerk.com/docs/tanstack-react-start/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`Billing` object](https://clerk.com/docs/tanstack-react-start/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`Clerk` class](https://clerk.com/docs/tanstack-react-start/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Client` object](https://clerk.com/docs/tanstack-react-start/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`Organization` object](https://clerk.com/docs/tanstack-react-start/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [Key Clerk objects](https://clerk.com/docs/tanstack-react-start/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`Session` object](https://clerk.com/docs/tanstack-react-start/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`SignInFuture` object](https://clerk.com/docs/tanstack-react-start/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`SignIn` object](https://clerk.com/docs/tanstack-react-start/reference/objects/sign-in.md): The SignIn object holds all the state of the current sign in and provides helper methods to navigate and complete the sign in process. - [`SignUpFuture` object](https://clerk.com/docs/tanstack-react-start/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignUp` object](https://clerk.com/docs/tanstack-react-start/reference/objects/sign-up.md): The SignUp object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`User` object](https://clerk.com/docs/tanstack-react-start/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [Hooks Reference](https://clerk.com/docs/tanstack-react-start/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`useAuth()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [`useOAuthConsent()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-oauth-consent.md): Load OAuth consent metadata for an authenticated user with Clerk's useOAuthConsent() hook. - [`useClerk()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-clerk.md): Access and manage the Clerk object in your React application with Clerk's useClerk() hook. - [`useOrganizationCreationDefaults()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-organization-creation-defaults.md): Retrieve Organization creation defaults for the current user in your React application with Clerk's useOrganizationCreationDefaults() hook. - [`useOrganizationList()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-organization-list.md): Access and manage the current user's Organization list in your React application with Clerk's useOrganizationList() hook. - [`useOrganization()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-organization.md): Access and manage the currently active Organization in your React application with Clerk's useOrganization() hook. - [`useReverification()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-reverification.md): Clerk's useReverification() hook enhances a fetcher function to handle a session's reverification flow. - [`useSessionList()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-session-list.md): Access and manage the current user's session list in your React application with Clerk's useSessionList() hook. - [`useSession()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-session.md): Access and manage the current user's session in your React application with Clerk's useSession() hook. - [`useSignIn()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useSignUp()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`useUser()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-user.md): Access and manage the current user's data in your React application with Clerk's useUser() hook. - [`useWaitlist()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/use-waitlist.md): Access and manage the waitlist state in your React application with Clerk's useWaitlist() hook. - [`useSignIn()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/legacy/use-sign-in.md): Access and manage the current user's sign-in state in your React application with Clerk's useSignIn() hook. - [`useSignUp()`](https://clerk.com/docs/tanstack-react-start/reference/hooks/legacy/use-sign-up.md): Access and manage the current user's sign-up state in your React application with Clerk's useSignUp() hook. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [Component Reference](https://clerk.com/docs/tanstack-react-start/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/clerk-provider.md): The component provides session and user context to Clerk's hooks and components. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/unstyled/sign-in-with-metamask.md): The component is used to complete a one-click, cryptographically-secure sign-in flow using MetaMask. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [``](https://clerk.com/docs/tanstack-react-start/reference/components/organization/invite-members-button.md): Clerk's component is used to render a button that opens a modal for inviting new members to an Organization. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/clerk-failed.md): The component indicates that the Clerk object has failed to load. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/redirect-to-create-organization.md): The component will navigate to the create Organization flow which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/redirect-to-organization-profile.md): The component will navigate to the Organization profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/redirect-to-user-profile.md): The component will navigate to the user profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/billing/checkout-button.md): Clerk's component renders a button that opens the checkout drawer for Subscription Plans. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/billing/plan-details-button.md): Clerk's component renders a button that opens the Plan details drawer. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/billing/subscription-details-button.md): Clerk's component renders a button that opens the Subscription details drawer. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/task-choose-organization.md): Clerk's component renders a UI for resolving the choose-organization task. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/task-reset-password.md): Clerk's component renders a UI for resolving the reset-password task. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/task-setup-mfa.md): Clerk's component renders a UI for resolving the setup-mfa task. - [`` component](https://clerk.com/docs/tanstack-react-start/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`OAuthApplication`](https://clerk.com/docs/tanstack-react-start/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [Metadata](https://clerk.com/docs/tanstack-react-start/reference/types/metadata.md): Types related to metadata. - [`LastAuthenticationStrategy`](https://clerk.com/docs/tanstack-react-start/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`ImageResource`](https://clerk.com/docs/tanstack-react-start/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/tanstack-react-start/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`IdentificationLinkResource`](https://clerk.com/docs/tanstack-react-start/reference/types/identification-link-resource.md): An interface representing an identification link. - [`FeatureResource`](https://clerk.com/docs/tanstack-react-start/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`ClerkError`](https://clerk.com/docs/tanstack-react-start/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`ClerkPaginatedResponse`](https://clerk.com/docs/tanstack-react-start/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`CustomMenuItem`](https://clerk.com/docs/tanstack-react-start/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`EmailAddress`](https://clerk.com/docs/tanstack-react-start/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`CustomPage`](https://clerk.com/docs/tanstack-react-start/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`DeletedObjectResource`](https://clerk.com/docs/tanstack-react-start/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`EmailLinkError`](https://clerk.com/docs/tanstack-react-start/reference/types/email-link-error.md): Custom error for email links. - [`EnterpriseAccountConnection`](https://clerk.com/docs/tanstack-react-start/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`VerificationResource`](https://clerk.com/docs/tanstack-react-start/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`Waitlist`](https://clerk.com/docs/tanstack-react-start/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`Errors`](https://clerk.com/docs/tanstack-react-start/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`Web3Wallet`](https://clerk.com/docs/tanstack-react-start/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`EnterpriseAccount`](https://clerk.com/docs/tanstack-react-start/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`ExternalAccount`](https://clerk.com/docs/tanstack-react-start/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`ClerkAPIResponseError`](https://clerk.com/docs/tanstack-react-start/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`BillingPayerResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`BillingPaymentTotals`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingPaymentResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`BillingPaymentMethodResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingPerUnitTotal`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`BillingPlanPrice`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`BillingPeriodTotals`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`BillingPlanResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingPlanUnitPrice`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`UserOrganizationInvitation`](https://clerk.com/docs/tanstack-react-start/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`BillingProrationCreditDetail`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`BillingProrationDiscount`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingStatementGroup`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingStatementTotals`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingStatementResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingSubscriptionResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingTotals`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`ClerkAPIError`](https://clerk.com/docs/tanstack-react-start/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`APIKeyResource`](https://clerk.com/docs/tanstack-react-start/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BackupCodeResource`](https://clerk.com/docs/tanstack-react-start/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingCreditLedgerResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`BillingAppliedDiscount`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`BillingCredits`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BillingCheckoutResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`BillingCheckoutTotals`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`BillingMoneyAmount`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BillingPayerCredit`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingDiscounts`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingDiscountRedemption`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BillingCreditBalanceResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationDomainResource`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OAuthConsentScope`](https://clerk.com/docs/tanstack-react-start/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OrganizationCreationDefaults`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`OAuthConsentInfo`](https://clerk.com/docs/tanstack-react-start/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`OrganizationMembershipRequest`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`OrganizationMembership`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`OrganizationSuggestion`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [Clerk types](https://clerk.com/docs/tanstack-react-start/reference/types/overview.md): Explore the different types available for typing your application. - [`SetActiveParams`](https://clerk.com/docs/tanstack-react-start/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SignUpInitialValues`](https://clerk.com/docs/tanstack-react-start/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`PasskeyResource`](https://clerk.com/docs/tanstack-react-start/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`SignedInSessionResource`](https://clerk.com/docs/tanstack-react-start/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`RedirectOptions`](https://clerk.com/docs/tanstack-react-start/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`SignInFirstFactor`](https://clerk.com/docs/tanstack-react-start/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`RoleResource`](https://clerk.com/docs/tanstack-react-start/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`PermissionResource`](https://clerk.com/docs/tanstack-react-start/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`SignUpVerificationResource`](https://clerk.com/docs/tanstack-react-start/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`SessionStatus`](https://clerk.com/docs/tanstack-react-start/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SignInInitialValues`](https://clerk.com/docs/tanstack-react-start/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`PhoneNumber`](https://clerk.com/docs/tanstack-react-start/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`SessionTask`](https://clerk.com/docs/tanstack-react-start/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SignInRedirectOptions`](https://clerk.com/docs/tanstack-react-start/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`TOTPResource`](https://clerk.com/docs/tanstack-react-start/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`ProtectCheckResource`](https://clerk.com/docs/tanstack-react-start/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`SessionVerification`](https://clerk.com/docs/tanstack-react-start/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SignInSecondFactor`](https://clerk.com/docs/tanstack-react-start/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [SSO Types](https://clerk.com/docs/tanstack-react-start/reference/types/sso.md): Types related to SSO providers and strategies. - [`PublicUserData`](https://clerk.com/docs/tanstack-react-start/reference/types/public-user-data.md): Information about that user that's publicly available. - [`SessionWithActivities`](https://clerk.com/docs/tanstack-react-start/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`SignUpRedirectOptions`](https://clerk.com/docs/tanstack-react-start/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/tanstack-react-start/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`OrganizationInvitation`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`auth()`](https://clerk.com/docs/tanstack-react-start/reference/auth.md): The auth() helper retrieves the authentication state allowing you to protect your API routes or gather relevant data. - [`clerkMiddleware()`](https://clerk.com/docs/tanstack-react-start/reference/clerk-middleware.md): The clerkMiddleware() helper integrates Clerk authentication into your TanStack Start application through middleware. - [Clerk TanStack React Start SDK](https://clerk.com/docs/tanstack-react-start/reference/overview.md): The Clerk TanStack React Start SDK gives you access to prebuilt components, React hooks, and helpers to make user authentication easier. ### Go - [Component Reference](https://clerk.com/docs/go/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [Authorization checks](https://clerk.com/docs/go/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Error handling](https://clerk.com/docs/go/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/go/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/go/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/go/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/go/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Build a custom waitlist form](https://clerk.com/docs/go/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/go/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom flow for handling email links](https://clerk.com/docs/go/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/go/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Social connections (OAuth)](https://clerk.com/docs/go/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Bring your own CSS](https://clerk.com/docs/go/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`captcha` prop](https://clerk.com/docs/go/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Options` prop](https://clerk.com/docs/go/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`Appearance` prop](https://clerk.com/docs/go/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Themes](https://clerk.com/docs/go/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/go/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Clerk Go SDK](https://clerk.com/docs/go/getting-started/quickstart.md): Learn how to integrate Clerk into your Go application using the Clerk Go SDK. - [Clerk Go SDK](https://clerk.com/docs/go/reference/overview.md): The Clerk Go SDK provides a powerful set of tools and utilities to seamlessly integrate authentication, user management, and Organization management into your Go application. ### Astro - [Astro Quickstart](https://clerk.com/docs/astro/getting-started/quickstart.md): Add authentication and user management to your Astro app with Clerk. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/astro/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/astro/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Add custom pages and links to the `` component](https://clerk.com/docs/astro/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/astro/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/astro/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [`Appearance` prop](https://clerk.com/docs/astro/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Bring your own CSS](https://clerk.com/docs/astro/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`Variables` prop](https://clerk.com/docs/astro/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [`Options` prop](https://clerk.com/docs/astro/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [Themes](https://clerk.com/docs/astro/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`captcha` prop](https://clerk.com/docs/astro/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [Social connections (OAuth)](https://clerk.com/docs/astro/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Set up a custom OAuth consent page](https://clerk.com/docs/astro/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Clerk Billing webhooks](https://clerk.com/docs/astro/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/astro/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/astro/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom waitlist form](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Build a custom flow for handling email links](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom flow for handling email links](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Authorization checks](https://clerk.com/docs/astro/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Get started with Organizations](https://clerk.com/docs/astro/guides/organizations/getting-started.md): Learn how to create and manage Organizations in your application. - [Check Roles and Permissions with Authorization Checks](https://clerk.com/docs/astro/guides/organizations/control-access/check-access.md): Limit access to content or entire routes based on a user's Organization Role or Permissions. - [Read user data](https://clerk.com/docs/astro/guides/users/reading.md): Learn how to use Clerk's helpers to read user data in your Astro application. - [`Billing` object](https://clerk.com/docs/astro/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`Clerk` class](https://clerk.com/docs/astro/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Client` object](https://clerk.com/docs/astro/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`Organization` object](https://clerk.com/docs/astro/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [Key Clerk objects](https://clerk.com/docs/astro/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`Session` object](https://clerk.com/docs/astro/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`SignInFuture` object](https://clerk.com/docs/astro/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`SignUpFuture` object](https://clerk.com/docs/astro/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`User` object](https://clerk.com/docs/astro/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`APIKeys` object](https://clerk.com/docs/astro/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`useAuth()`](https://clerk.com/docs/astro/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() hook. - [Hooks Reference](https://clerk.com/docs/astro/reference/hooks/overview.md): A list of Clerk's comprehensive suite of hooks for managing authentication, sessions, sign-in and sign-up flows, Organizations, and reverification. - [`` component](https://clerk.com/docs/astro/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [Component Reference](https://clerk.com/docs/astro/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/astro/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/astro/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/astro/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/astro/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/astro/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/astro/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/astro/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/astro/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/astro/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/astro/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/astro/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/astro/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/astro/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/astro/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/astro/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/astro/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/astro/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/astro/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/astro/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/astro/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`BillingCredits`](https://clerk.com/docs/astro/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/astro/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`BillingCreditBalanceResource`](https://clerk.com/docs/astro/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`BillingMoneyAmount`](https://clerk.com/docs/astro/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BillingPayerCredit`](https://clerk.com/docs/astro/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingPayerResource`](https://clerk.com/docs/astro/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`BillingPaymentMethodResource`](https://clerk.com/docs/astro/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingPaymentResource`](https://clerk.com/docs/astro/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`BillingPaymentTotals`](https://clerk.com/docs/astro/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingPeriodTotals`](https://clerk.com/docs/astro/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [SSO Types](https://clerk.com/docs/astro/reference/types/sso.md): Types related to SSO providers and strategies. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/astro/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/astro/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`BillingPerUnitTotal`](https://clerk.com/docs/astro/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`BillingPlanPrice`](https://clerk.com/docs/astro/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`TOTPResource`](https://clerk.com/docs/astro/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`BillingPlanUnitPrice`](https://clerk.com/docs/astro/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`UserOrganizationInvitation`](https://clerk.com/docs/astro/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`Waitlist`](https://clerk.com/docs/astro/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/astro/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`VerificationResource`](https://clerk.com/docs/astro/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`Web3Wallet`](https://clerk.com/docs/astro/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`BillingPlanResource`](https://clerk.com/docs/astro/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingProrationDiscount`](https://clerk.com/docs/astro/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingProrationCreditDetail`](https://clerk.com/docs/astro/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`BillingStatementGroup`](https://clerk.com/docs/astro/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingStatementResource`](https://clerk.com/docs/astro/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingStatementTotals`](https://clerk.com/docs/astro/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/astro/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/astro/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/astro/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/astro/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingTotals`](https://clerk.com/docs/astro/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`BillingSubscriptionResource`](https://clerk.com/docs/astro/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`ClerkAPIError`](https://clerk.com/docs/astro/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkAPIResponseError`](https://clerk.com/docs/astro/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkError`](https://clerk.com/docs/astro/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`ClerkPaginatedResponse`](https://clerk.com/docs/astro/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`CustomMenuItem`](https://clerk.com/docs/astro/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`CustomPage`](https://clerk.com/docs/astro/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`DeletedObjectResource`](https://clerk.com/docs/astro/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`EmailAddress`](https://clerk.com/docs/astro/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`EmailLinkError`](https://clerk.com/docs/astro/reference/types/email-link-error.md): Custom error for email links. - [`EnterpriseAccountConnection`](https://clerk.com/docs/astro/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`EnterpriseAccount`](https://clerk.com/docs/astro/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`Errors`](https://clerk.com/docs/astro/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`ExternalAccount`](https://clerk.com/docs/astro/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`FeatureResource`](https://clerk.com/docs/astro/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/astro/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [Metadata](https://clerk.com/docs/astro/reference/types/metadata.md): Types related to metadata. - [`IdentificationLinkResource`](https://clerk.com/docs/astro/reference/types/identification-link-resource.md): An interface representing an identification link. - [`LastAuthenticationStrategy`](https://clerk.com/docs/astro/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`ImageResource`](https://clerk.com/docs/astro/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`OAuthApplication`](https://clerk.com/docs/astro/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`OrganizationCreationDefaults`](https://clerk.com/docs/astro/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/astro/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OAuthConsentScope`](https://clerk.com/docs/astro/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`OAuthConsentInfo`](https://clerk.com/docs/astro/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/astro/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationDomainResource`](https://clerk.com/docs/astro/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/astro/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`OrganizationInvitation`](https://clerk.com/docs/astro/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`OrganizationMembershipRequest`](https://clerk.com/docs/astro/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`OrganizationMembership`](https://clerk.com/docs/astro/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [Clerk types](https://clerk.com/docs/astro/reference/types/overview.md): Explore the different types available for typing your application. - [`OrganizationSuggestion`](https://clerk.com/docs/astro/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`SignedInSessionResource`](https://clerk.com/docs/astro/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`PasskeyResource`](https://clerk.com/docs/astro/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`SignInSecondFactor`](https://clerk.com/docs/astro/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`PermissionResource`](https://clerk.com/docs/astro/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`SignUpInitialValues`](https://clerk.com/docs/astro/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`PhoneNumber`](https://clerk.com/docs/astro/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`SignUpRedirectOptions`](https://clerk.com/docs/astro/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`ProtectCheckResource`](https://clerk.com/docs/astro/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`SignUpVerificationResource`](https://clerk.com/docs/astro/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`PublicUserData`](https://clerk.com/docs/astro/reference/types/public-user-data.md): Information about that user that's publicly available. - [`SignInFirstFactor`](https://clerk.com/docs/astro/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`RedirectOptions`](https://clerk.com/docs/astro/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`SignInInitialValues`](https://clerk.com/docs/astro/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`SessionStatus`](https://clerk.com/docs/astro/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SignInRedirectOptions`](https://clerk.com/docs/astro/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`RoleResource`](https://clerk.com/docs/astro/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`SessionTask`](https://clerk.com/docs/astro/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionVerification`](https://clerk.com/docs/astro/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SessionWithActivities`](https://clerk.com/docs/astro/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`SetActiveParams`](https://clerk.com/docs/astro/reference/types/set-active-params.md): The parameters for the setActive() method. - [`BillingDiscounts`](https://clerk.com/docs/astro/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingAppliedDiscount`](https://clerk.com/docs/astro/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`APIKeyResource`](https://clerk.com/docs/astro/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BillingCheckoutTotals`](https://clerk.com/docs/astro/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`BillingCreditLedgerResource`](https://clerk.com/docs/astro/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`BackupCodeResource`](https://clerk.com/docs/astro/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingDiscountRedemption`](https://clerk.com/docs/astro/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BillingCheckoutResource`](https://clerk.com/docs/astro/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`updateClerkOptions()`](https://clerk.com/docs/astro/reference/update-clerk-options.md): The updateClerkOptions() function allows you to update Clerk's options at runtime. - [`clerkMiddleware()` | Astro](https://clerk.com/docs/astro/reference/clerk-middleware.md): The clerkMiddleware() helper integrates Clerk authentication into your Astro application through middleware. - [Integration](https://clerk.com/docs/astro/reference/integration.md): The Astro integration provides session and user context to Clerk's hooks and components. - [Locals](https://clerk.com/docs/astro/reference/locals.md): Learn how to authenticate your Astro application with Clerk using locals. - [Clerk Astro SDK](https://clerk.com/docs/astro/reference/overview.md): The Clerk Astro SDK gives you access to prebuilt components, stores, and helpers to make user authentication easier. - [Use Clerk with Astro and React](https://clerk.com/docs/astro/reference/react.md): Learn how to user Clerk inside an Astro app with React - [`$organizationStore`](https://clerk.com/docs/astro/reference/client-side-helpers/organization-store.md): Clerk's $organizationStore store retrieves the currently active Organization. - [`$clerkStore`](https://clerk.com/docs/astro/reference/client-side-helpers/clerk-store.md): Clerk's $clerkStore nanostore provides a convenient way to access the Clerk object. This provides access to some methods that are not available in other stores. - [`$authStore`](https://clerk.com/docs/astro/reference/client-side-helpers/auth-store.md): Clerk's $authStore nanostore provides a convenient way to access the current auth state and helper methods for managing the session. - [`$signInStore`](https://clerk.com/docs/astro/reference/client-side-helpers/sign-in-store.md): Clerk's $signInStore nanostore provides a convenient way to access the SignIn object, which allows you to check the current state of a sign-in. - [`$sessionListStore`](https://clerk.com/docs/astro/reference/client-side-helpers/session-list-store.md): Clerk's $sessionList store retrieves a list of sessions that have been registered on the client device. - [`$signUpStore`](https://clerk.com/docs/astro/reference/client-side-helpers/sign-up-store.md): Clerk's $signUpStore nanostore provides a convenient way to access the SignUp object, which allows you to check the current state of a sign-up. This is also useful for creating a custom sign-up flow. - [`$sessionStore`](https://clerk.com/docs/astro/reference/client-side-helpers/session-store.md): Clerk's $sessionStore nanostore provides a convenient way to access the current user Session object, as well as helpers to set the session. - [`$userStore`](https://clerk.com/docs/astro/reference/client-side-helpers/user-store.md): The $userStore store provides a convenient way to access current user data and helper methods for managing the active user. ### Nuxt - [Nuxt Quickstart](https://clerk.com/docs/nuxt/getting-started/quickstart.md): Add authentication and user management to your Nuxt app with Clerk. - [`Options` prop](https://clerk.com/docs/nuxt/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [`Appearance` prop](https://clerk.com/docs/nuxt/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Themes](https://clerk.com/docs/nuxt/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Variables` prop](https://clerk.com/docs/nuxt/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [`captcha` prop](https://clerk.com/docs/nuxt/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [Bring your own CSS](https://clerk.com/docs/nuxt/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [Add custom pages and links to the `` component](https://clerk.com/docs/nuxt/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/nuxt/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Add custom pages and links to the `` component](https://clerk.com/docs/nuxt/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Social connections (OAuth)](https://clerk.com/docs/nuxt/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Set up a custom OAuth consent page](https://clerk.com/docs/nuxt/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/nuxt/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/nuxt/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Read user data](https://clerk.com/docs/nuxt/guides/users/reading.md): Learn how to use Clerk's composables to read user data in your Nuxt application. - [Authorization checks](https://clerk.com/docs/nuxt/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Protect content from unauthenticated users](https://clerk.com/docs/nuxt/guides/secure/protect-content.md): Learn how to protect content from unauthenticated users in your Clerk + Nuxt application. - [Build a custom waitlist page](https://clerk.com/docs/nuxt/guides/secure/waitlist.md): Learn how to build a custom waitlist page for your application. - [Get started with Organizations](https://clerk.com/docs/nuxt/guides/organizations/getting-started.md): Learn how to create and manage Organizations in your application. - [Check Roles and Permissions with Authorization Checks](https://clerk.com/docs/nuxt/guides/organizations/control-access/check-access.md): Limit access to content or entire routes based on a user's Organization Role or Permissions. - [Build your own sign-in-or-up page for your Nuxt app with Clerk](https://clerk.com/docs/nuxt/guides/development/custom-sign-in-or-up-page.md): Learn how to add a custom sign-in-or-up page to your Nuxt app with Clerk's prebuilt components. - [Build your own sign-up page for your Nuxt app with Clerk](https://clerk.com/docs/nuxt/guides/development/custom-sign-up-page.md): Learn how to add a custom sign-up page to your Nuxt app with Clerk's prebuilt components. - [Verify API keys in your Nuxt application with Clerk](https://clerk.com/docs/nuxt/guides/development/verifying-api-keys.md): Learn how to use Clerk's helpers to verify API keys in your Nuxt application. - [Clerk Billing webhooks](https://clerk.com/docs/nuxt/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/nuxt/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/nuxt/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom waitlist form](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Build a custom flow for handling email links](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [`Client` object](https://clerk.com/docs/nuxt/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`Organization` object](https://clerk.com/docs/nuxt/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [Key Clerk objects](https://clerk.com/docs/nuxt/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`Session` object](https://clerk.com/docs/nuxt/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [`SignInFuture` object](https://clerk.com/docs/nuxt/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`SignUpFuture` object](https://clerk.com/docs/nuxt/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`User` object](https://clerk.com/docs/nuxt/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`APIKeys` object](https://clerk.com/docs/nuxt/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`Billing` object](https://clerk.com/docs/nuxt/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`Clerk` class](https://clerk.com/docs/nuxt/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`useSessionList()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-session-list.md): Access and manage a list of sessions registered on the client device in your Vue application with Clerk's useSessionList() composable. - [`useSession()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-session.md): Access and manage the current user's session in your Vue application with Clerk's useSession() composable. - [`useSignUp()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-sign-up.md): Access and manage sign-up state in your Vue application with Clerk's useSignUp() composable. - [`useUser()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-user.md): Access and manage the current user's data in your Vue application with Clerk's useUser() composable. - [`useClerk()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-clerk.md): Access and manage the Clerk instance in your Vue application with Clerk's useClerk() composable. - [`useAuth()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-auth.md): Access and manage authentication state in your Vue application with Clerk's useAuth() composable. - [`useOrganization()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-organization.md): Access and manage the currently Active Organization in your Vue application with Clerk's useOrganization() composable. - [`useSignIn()` | Vue](https://clerk.com/docs/nuxt/reference/composables/use-sign-in.md): Access and manage sign-in state in your Vue application with Clerk's useSignIn() composable. - [Component Reference](https://clerk.com/docs/nuxt/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/nuxt/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` component](https://clerk.com/docs/nuxt/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/nuxt/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/nuxt/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/nuxt/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/redirect-to-create-organization.md): The component will navigate to the create Organization flow which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/redirect-to-organization-profile.md): The component will navigate to the Organization profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/redirect-to-user-profile.md): The component will navigate to the user profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/nuxt/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/nuxt/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/nuxt/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/nuxt/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/nuxt/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/nuxt/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/nuxt/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/nuxt/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` component](https://clerk.com/docs/nuxt/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/nuxt/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/nuxt/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/nuxt/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/nuxt/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/nuxt/reference/components/unstyled/sign-in-with-metamask.md): The component is used to complete a one-click, cryptographically-secure sign-in flow using MetaMask. - [`PhoneNumber`](https://clerk.com/docs/nuxt/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`ProtectCheckResource`](https://clerk.com/docs/nuxt/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`RoleResource`](https://clerk.com/docs/nuxt/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`PublicUserData`](https://clerk.com/docs/nuxt/reference/types/public-user-data.md): Information about that user that's publicly available. - [`RedirectOptions`](https://clerk.com/docs/nuxt/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`SessionStatus`](https://clerk.com/docs/nuxt/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SessionTask`](https://clerk.com/docs/nuxt/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`EmailLinkError`](https://clerk.com/docs/nuxt/reference/types/email-link-error.md): Custom error for email links. - [`EmailAddress`](https://clerk.com/docs/nuxt/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`SessionVerification`](https://clerk.com/docs/nuxt/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SessionWithActivities`](https://clerk.com/docs/nuxt/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`DeletedObjectResource`](https://clerk.com/docs/nuxt/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`SetActiveParams`](https://clerk.com/docs/nuxt/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SignInInitialValues`](https://clerk.com/docs/nuxt/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`CustomPage`](https://clerk.com/docs/nuxt/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`SignInFirstFactor`](https://clerk.com/docs/nuxt/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`CustomMenuItem`](https://clerk.com/docs/nuxt/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`SignInRedirectOptions`](https://clerk.com/docs/nuxt/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`ClerkPaginatedResponse`](https://clerk.com/docs/nuxt/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`SignInSecondFactor`](https://clerk.com/docs/nuxt/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`SignUpInitialValues`](https://clerk.com/docs/nuxt/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`ClerkError`](https://clerk.com/docs/nuxt/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`ClerkAPIResponseError`](https://clerk.com/docs/nuxt/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`BillingPaymentMethodResource`](https://clerk.com/docs/nuxt/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`SignUpRedirectOptions`](https://clerk.com/docs/nuxt/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`BillingPeriodTotals`](https://clerk.com/docs/nuxt/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`ClerkAPIError`](https://clerk.com/docs/nuxt/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`BillingPerUnitTotal`](https://clerk.com/docs/nuxt/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`BillingTotals`](https://clerk.com/docs/nuxt/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`SignUpVerificationResource`](https://clerk.com/docs/nuxt/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`BillingSubscriptionResource`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`SignedInSessionResource`](https://clerk.com/docs/nuxt/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/nuxt/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [`PasskeyResource`](https://clerk.com/docs/nuxt/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`BillingPaymentResource`](https://clerk.com/docs/nuxt/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`OAuthConsentScope`](https://clerk.com/docs/nuxt/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [SSO Types](https://clerk.com/docs/nuxt/reference/types/sso.md): Types related to SSO providers and strategies. - [`OAuthConsentInfo`](https://clerk.com/docs/nuxt/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`OrganizationMembership`](https://clerk.com/docs/nuxt/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`TOTPResource`](https://clerk.com/docs/nuxt/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`BillingStatementTotals`](https://clerk.com/docs/nuxt/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`OAuthApplication`](https://clerk.com/docs/nuxt/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`IdentificationLinkResource`](https://clerk.com/docs/nuxt/reference/types/identification-link-resource.md): An interface representing an identification link. - [`BillingCheckoutResource`](https://clerk.com/docs/nuxt/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`PermissionResource`](https://clerk.com/docs/nuxt/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`UserOrganizationInvitation`](https://clerk.com/docs/nuxt/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`FeatureResource`](https://clerk.com/docs/nuxt/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`BillingPayerCredit`](https://clerk.com/docs/nuxt/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`VerificationResource`](https://clerk.com/docs/nuxt/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [Clerk types](https://clerk.com/docs/nuxt/reference/types/overview.md): Explore the different types available for typing your application. - [`BillingStatementGroup`](https://clerk.com/docs/nuxt/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/nuxt/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`ExternalAccount`](https://clerk.com/docs/nuxt/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`Waitlist`](https://clerk.com/docs/nuxt/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`LastAuthenticationStrategy`](https://clerk.com/docs/nuxt/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingPaymentTotals`](https://clerk.com/docs/nuxt/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`EnterpriseAccount`](https://clerk.com/docs/nuxt/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`OrganizationSuggestion`](https://clerk.com/docs/nuxt/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [Metadata](https://clerk.com/docs/nuxt/reference/types/metadata.md): Types related to metadata. - [`BillingStatementResource`](https://clerk.com/docs/nuxt/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/nuxt/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`Web3Wallet`](https://clerk.com/docs/nuxt/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`Errors`](https://clerk.com/docs/nuxt/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`EnterpriseAccountConnection`](https://clerk.com/docs/nuxt/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`OrganizationInvitation`](https://clerk.com/docs/nuxt/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`BillingProrationDiscount`](https://clerk.com/docs/nuxt/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingDiscounts`](https://clerk.com/docs/nuxt/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/nuxt/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`BillingProrationCreditDetail`](https://clerk.com/docs/nuxt/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`OrganizationDomainResource`](https://clerk.com/docs/nuxt/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`BillingCheckoutTotals`](https://clerk.com/docs/nuxt/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/nuxt/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`ImageResource`](https://clerk.com/docs/nuxt/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`OrganizationMembershipRequest`](https://clerk.com/docs/nuxt/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`BillingCredits`](https://clerk.com/docs/nuxt/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`OrganizationCreationDefaults`](https://clerk.com/docs/nuxt/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/nuxt/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`APIKeyResource`](https://clerk.com/docs/nuxt/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`BillingCreditLedgerResource`](https://clerk.com/docs/nuxt/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`BillingAppliedDiscount`](https://clerk.com/docs/nuxt/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`BillingDiscountRedemption`](https://clerk.com/docs/nuxt/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BackupCodeResource`](https://clerk.com/docs/nuxt/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingPlanUnitPrice`](https://clerk.com/docs/nuxt/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/nuxt/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [`BillingMoneyAmount`](https://clerk.com/docs/nuxt/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BillingCreditBalanceResource`](https://clerk.com/docs/nuxt/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`BillingPlanResource`](https://clerk.com/docs/nuxt/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingPayerResource`](https://clerk.com/docs/nuxt/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/nuxt/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`BillingPlanPrice`](https://clerk.com/docs/nuxt/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [clerkMiddleware() | Nuxt](https://clerk.com/docs/nuxt/reference/clerk-middleware.md): The clerkMiddleware() helper integrates Clerk authentication into your Nuxt application through server middleware. - [`@clerk/nuxt` module](https://clerk.com/docs/nuxt/reference/integration.md): The @clerk/nuxt module provides session and user context to Clerk's composables and components. - [Clerk Nuxt SDK](https://clerk.com/docs/nuxt/reference/overview.md): The Clerk Nuxt SDK gives you access to prebuilt components, composables, and helpers to make user authentication easier. ### Vue - [Authorization checks](https://clerk.com/docs/vue/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Clerk Billing webhooks](https://clerk.com/docs/vue/guides/development/webhooks/billing.md): Clerk Billing webhooks allow you to track Subscription lifecycles and monitor payment attempts. - [Error handling](https://clerk.com/docs/vue/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom waitlist form](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Build a custom flow for handling email links](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/vue/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Social connections (OAuth)](https://clerk.com/docs/vue/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Set up a custom OAuth consent page](https://clerk.com/docs/vue/guides/configure/auth-strategies/oauth/custom-consent-page.md): Learn how to configure a custom OAuth consent page, and how to avoid common consent phishing and token grant risks. - [Bring your own CSS](https://clerk.com/docs/vue/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [`captcha` prop](https://clerk.com/docs/vue/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Options` prop](https://clerk.com/docs/vue/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [Themes](https://clerk.com/docs/vue/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`Appearance` prop](https://clerk.com/docs/vue/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [`Variables` prop](https://clerk.com/docs/vue/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [Add custom pages and links to the `` component](https://clerk.com/docs/vue/guides/customizing-clerk/adding-items/organization-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom pages and links to the `` component](https://clerk.com/docs/vue/guides/customizing-clerk/adding-items/user-profile.md): Learn how to add custom pages and include external links within the navigation sidenav of the component. - [Add custom items and links to the `` component](https://clerk.com/docs/vue/guides/customizing-clerk/adding-items/user-button.md): Learn how to add custom items and include external links within the menu. - [Clerk Billing for B2B SaaS](https://clerk.com/docs/vue/guides/billing/for-b2b.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Clerk Billing for B2C SaaS](https://clerk.com/docs/vue/guides/billing/for-b2c.md): Clerk Billing is a feature that allows you to create and manage Plans and Features for your application. - [Vue Quickstart](https://clerk.com/docs/vue/getting-started/quickstart.md): Add authentication and user management to your Vue app with Clerk. - [Component Reference](https://clerk.com/docs/vue/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`` component](https://clerk.com/docs/vue/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` component](https://clerk.com/docs/vue/reference/components/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` component](https://clerk.com/docs/vue/reference/components/authentication/waitlist.md): The component renders a waitlist form that allows users to join for early access to your application. - [`` component](https://clerk.com/docs/vue/reference/components/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` component](https://clerk.com/docs/vue/reference/components/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` component](https://clerk.com/docs/vue/reference/components/authentication/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`` component](https://clerk.com/docs/vue/reference/components/billing/pricing-table.md): Clerk's component displays a table of Plans and Features that users can subscribe to. - [`` component](https://clerk.com/docs/vue/reference/components/billing/plan-details-button.md): Clerk's component renders a button that opens the Plan details drawer. - [`` component](https://clerk.com/docs/vue/reference/components/billing/checkout-button.md): Clerk's component renders a button that opens the checkout drawer for Subscription Plans. - [`` component](https://clerk.com/docs/vue/reference/components/billing/subscription-details-button.md): Clerk's component renders a button that opens the Subscription details drawer. - [`` component](https://clerk.com/docs/vue/reference/components/control/redirect-to-tasks.md): The component will navigate to the tasks flow which has been configured in your application instance when users have pending session tasks. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/vue/reference/components/control/redirect-to-sign-up.md): The component will navigate to the sign up URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/vue/reference/components/control/redirect-to-sign-in.md): The component will navigate to the sign in URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/vue/reference/components/control/redirect-to-organization-profile.md): The component will navigate to the Organization profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/vue/reference/components/control/redirect-to-create-organization.md): The component will navigate to the create Organization flow which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/vue/reference/components/control/clerk-loaded.md): The component guarantees that the Clerk object has loaded and will be available under window.Clerk. This allows you to wrap child components to access the Clerk object without the need to check it exists. - [`` component](https://clerk.com/docs/vue/reference/components/control/clerk-loading.md): The renders its children while Clerk is loading, and is helpful for showing a custom loading state. - [`` component](https://clerk.com/docs/vue/reference/components/control/authenticate-with-redirect-callback.md): Clerk's component is used to implement custom OAuth flows. It handles the OAuth callback and completes the authentication process. - [`` component](https://clerk.com/docs/vue/reference/components/control/redirect-to-user-profile.md): The component will navigate to the user profile URL which has been configured in your application instance. The behavior will be just like a server-side (3xx) redirect, and will override the current location in the history stack. - [`` component](https://clerk.com/docs/vue/reference/components/control/show.md): The Show component protects content or even entire routes based on authentication, and optionally, authorization. - [`` component](https://clerk.com/docs/vue/reference/components/organization/organization-switcher.md): Clerk's component is used to enable the ability to switch between available Organizations the user may be part of in your application. - [`` component](https://clerk.com/docs/vue/reference/components/organization/organization-profile.md): Clerk's component is used to render a beautiful, full-featured Organization management UI that allows users to manage their Organization profile and security settings. - [`` component](https://clerk.com/docs/vue/reference/components/organization/organization-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` component](https://clerk.com/docs/vue/reference/components/organization/create-organization.md): Clerk's component is used to render an Organization creation UI that allows users to create brand new Organizations within your application. - [`` component](https://clerk.com/docs/vue/reference/components/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`` component](https://clerk.com/docs/vue/reference/components/unstyled/sign-up-button.md): The component is a button that links to the sign-up page or displays the sign-up modal. - [`` component](https://clerk.com/docs/vue/reference/components/unstyled/sign-out-button.md): The component is a button that signs a user out. - [`` component](https://clerk.com/docs/vue/reference/components/unstyled/sign-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`` component](https://clerk.com/docs/vue/reference/components/unstyled/sign-in-with-metamask.md): The component is used to complete a one-click, cryptographically-secure sign-in flow using MetaMask. - [`` component](https://clerk.com/docs/vue/reference/components/user/user-profile.md): Clerk's component is used to render a beautiful, full-featured account management UI that allows users to manage their profile and security settings. - [`` component](https://clerk.com/docs/vue/reference/components/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` component](https://clerk.com/docs/vue/reference/components/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`useSignUp()` | Vue](https://clerk.com/docs/vue/reference/composables/use-sign-up.md): Access and manage sign-up state in your Vue application with Clerk's useSignUp() composable. - [`useSession()` | Vue](https://clerk.com/docs/vue/reference/composables/use-session.md): Access and manage the current user's session in your Vue application with Clerk's useSession() composable. - [`useUser()` | Vue](https://clerk.com/docs/vue/reference/composables/use-user.md): Access and manage the current user's data in your Vue application with Clerk's useUser() composable. - [`useSessionList()` | Vue](https://clerk.com/docs/vue/reference/composables/use-session-list.md): Access and manage a list of sessions registered on the client device in your Vue application with Clerk's useSessionList() composable. - [`useSignIn()` | Vue](https://clerk.com/docs/vue/reference/composables/use-sign-in.md): Access and manage sign-in state in your Vue application with Clerk's useSignIn() composable. - [`useOrganization()` | Vue](https://clerk.com/docs/vue/reference/composables/use-organization.md): Access and manage the currently Active Organization in your Vue application with Clerk's useOrganization() composable. - [`useClerk()` | Vue](https://clerk.com/docs/vue/reference/composables/use-clerk.md): Access and manage the Clerk instance in your Vue application with Clerk's useClerk() composable. - [`useAuth()` | Vue](https://clerk.com/docs/vue/reference/composables/use-auth.md): Access and manage authentication state in your Vue application with Clerk's useAuth() composable. - [`Session` object](https://clerk.com/docs/vue/reference/objects/session.md): The Session object is an abstraction over an HTTP session. It models the period of information exchange between a user and the server. - [Key Clerk objects](https://clerk.com/docs/vue/reference/objects/overview.md): Learn about the key objects that power Clerk's SDKs, like the Clerk, User, and Session objects. - [`Organization` object](https://clerk.com/docs/vue/reference/objects/organization.md): The Organization object holds information about an Organization, as well as methods for managing it. - [`Clerk` class](https://clerk.com/docs/vue/reference/objects/clerk.md): The Clerk object contains a number of methods and properties for interacting with the Clerk API. - [`Client` object](https://clerk.com/docs/vue/reference/objects/client.md): The Client object keeps track of the authenticated sessions in the current device. The device can be a browser, a native application or any other medium that is usually the requesting part in a request/response architecture. - [`Billing` object](https://clerk.com/docs/vue/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`User` object](https://clerk.com/docs/vue/reference/objects/user.md): The User object holds all the information for a user of your application and provides a set of methods to manage their account. Users have a unique authentication identifier which might be their email address, phone number or a username. - [`APIKeys` object](https://clerk.com/docs/vue/reference/objects/api-keys.md): The APIKeys object provides methods for creating, listing, and revoking API keys that allow users to grant third-party services programmatic access to your application's API endpoints. - [`SignUpFuture` object](https://clerk.com/docs/vue/reference/objects/sign-up-future.md): The SignUpFuture object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up flow. - [`SignInFuture` object](https://clerk.com/docs/vue/reference/objects/sign-in-future.md): The SignInFuture object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. - [`VerificationResource`](https://clerk.com/docs/vue/reference/types/verification-resource.md): An interface that represents the state of the verification process for a sign-in or sign-up attempt. - [`UserOrganizationInvitation`](https://clerk.com/docs/vue/reference/types/user-organization-invitation.md): The UserOrganizationInvitation object is the model around a user's invitation to an Organization. - [`TOTPResource`](https://clerk.com/docs/vue/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`SSOBypassAllowlistResource`](https://clerk.com/docs/vue/reference/types/sso-bypass-allowlist-resource.md): An interface that defines the methods for managing an Organization's single sign-on (SSO) bypass allowlist. - [SSO Types](https://clerk.com/docs/vue/reference/types/sso.md): Types related to SSO providers and strategies. - [`BillingCheckoutTotals`](https://clerk.com/docs/vue/reference/types/billing-checkout-totals.md): The BillingCheckoutTotals type represents the total costs, taxes, and other pricing details for a checkout session. - [`SignedInSessionResource`](https://clerk.com/docs/vue/reference/types/signed-in-session-resource.md): A session for a logged-in user that is either fully active or waiting to complete additional verification steps. - [`BackupCodeResource`](https://clerk.com/docs/vue/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`SignUpVerificationResource`](https://clerk.com/docs/vue/reference/types/sign-up-verification-resource.md): An interface that represents the available verification strategies for a sign-up attempt. - [`BillingCreditLedgerResource`](https://clerk.com/docs/vue/reference/types/billing-credit-ledger-resource.md): An interface that represents a credit ledger entry for the current payer or given Organization. - [`SignUpRedirectOptions`](https://clerk.com/docs/vue/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`BillingCreditBalanceResource`](https://clerk.com/docs/vue/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`SignUpInitialValues`](https://clerk.com/docs/vue/reference/types/sign-up-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-up form. - [`APIKeyResource`](https://clerk.com/docs/vue/reference/types/api-key-resource.md): An interface that describes an API key used to authenticate requests to your application's API endpoints. - [`SignInSecondFactor`](https://clerk.com/docs/vue/reference/types/sign-in-second-factor.md): The SignInSecondFactor type represents the second factor verification strategy that can be used in the sign-in process. - [`BillingCheckoutResource`](https://clerk.com/docs/vue/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`SetActiveParams`](https://clerk.com/docs/vue/reference/types/set-active-params.md): The parameters for the setActive() method. - [`BillingMoneyAmount`](https://clerk.com/docs/vue/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`SignInFirstFactor`](https://clerk.com/docs/vue/reference/types/sign-in-first-factor.md): The SignInFirstFactor type represents the first factor verification strategy that can be used in the sign-in process. - [`BillingCredits`](https://clerk.com/docs/vue/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`SignInInitialValues`](https://clerk.com/docs/vue/reference/types/sign-in-initial-values.md): The type for the initialValues prop that is used to pre-populate the sign-in form. - [`BillingPayerCredit`](https://clerk.com/docs/vue/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`SignInRedirectOptions`](https://clerk.com/docs/vue/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`BillingAppliedDiscount`](https://clerk.com/docs/vue/reference/types/billing-applied-discount.md): The BillingAppliedDiscount type represents a catalog discount applied to a checkout or payment. - [`SessionWithActivities`](https://clerk.com/docs/vue/reference/types/session-with-activities.md): The SessionWithActivities object is a modified Session object. It contains most of the information that the Session object stores, adding extra information about the current session's latest activity. - [`BillingPayerResource`](https://clerk.com/docs/vue/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`BillingInitializedPaymentMethodResource`](https://clerk.com/docs/vue/reference/types/billing-initialized-payment-method-resource.md): The BillingInitializedPaymentMethodResource type represents a payment method that has been initialized for a checkout session. - [`OrganizationInvitation`](https://clerk.com/docs/vue/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`BillingDiscountRedemption`](https://clerk.com/docs/vue/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`PermissionResource`](https://clerk.com/docs/vue/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`BillingPaymentResource`](https://clerk.com/docs/vue/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`OrganizationMembership`](https://clerk.com/docs/vue/reference/types/organization-membership.md): The OrganizationMembership object is the model around an Organization membership entity and describes the relationship between users and Organizations. - [`BillingPaymentMethodResource`](https://clerk.com/docs/vue/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`PasskeyResource`](https://clerk.com/docs/vue/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`BillingDiscounts`](https://clerk.com/docs/vue/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [Clerk types](https://clerk.com/docs/vue/reference/types/overview.md): Explore the different types available for typing your application. - [`BillingPaymentTotals`](https://clerk.com/docs/vue/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingPerUnitTotalTier`](https://clerk.com/docs/vue/reference/types/billing-per-unit-total-tier.md): The BillingPerUnitTotalTier type represents a tiered pricing structure for billing based on unit usage. - [`PhoneNumber`](https://clerk.com/docs/vue/reference/types/phone-number.md): The PhoneNumber object describes a phone number. Phone numbers can be used as a proof of identification for users, or simply as a means of contacting users. - [`BillingPeriodTotals`](https://clerk.com/docs/vue/reference/types/billing-period-totals.md): The BillingPeriodTotals type represents the total costs, taxes, and other pricing details for a billing period. - [`BillingPerUnitTotal`](https://clerk.com/docs/vue/reference/types/billing-per-unit-total.md): The BillingPerUnitTotal type represents the total cost for a billing period based on unit usage. - [`PublicUserData`](https://clerk.com/docs/vue/reference/types/public-user-data.md): Information about that user that's publicly available. - [`BillingPlanPrice`](https://clerk.com/docs/vue/reference/types/billing-plan-price.md): The BillingPlanPrice type represents a specific possible price for a given Clerk Billing Plan. - [`BillingPlanResource`](https://clerk.com/docs/vue/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`ProtectCheckResource`](https://clerk.com/docs/vue/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`BillingPlanUnitPriceTier`](https://clerk.com/docs/vue/reference/types/billing-plan-unit-price-tier.md): The BillingPlanUnitPriceTier type represents a single pricing tier for a unit type on a plan. - [`BillingPlanUnitPrice`](https://clerk.com/docs/vue/reference/types/billing-plan-unit-price.md): The BillingPlanUnitPrice type represents unit pricing for a specific unit type (for example, seats) on a plan. - [`RedirectOptions`](https://clerk.com/docs/vue/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`Web3Wallet`](https://clerk.com/docs/vue/reference/types/web3-wallet.md): The Web3Wallet object describes a Web3 wallet address. The address can be used as a proof of identification for users. - [`BillingProrationCreditDetail`](https://clerk.com/docs/vue/reference/types/billing-proration-credit-detail.md): The BillingProrationCreditDetail type represents credit for the unused portion of a billing cycle. - [`RoleResource`](https://clerk.com/docs/vue/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`BillingStatementGroup`](https://clerk.com/docs/vue/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingProrationDiscount`](https://clerk.com/docs/vue/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`SessionStatus`](https://clerk.com/docs/vue/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SessionTask`](https://clerk.com/docs/vue/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionVerification`](https://clerk.com/docs/vue/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`OrganizationMembershipRequest`](https://clerk.com/docs/vue/reference/types/organization-membership-request.md): The OrganizationMembershipRequest object is the model that describes the request of a user to join an Organization. - [`BillingStatementResource`](https://clerk.com/docs/vue/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingStatementTotals`](https://clerk.com/docs/vue/reference/types/billing-statement-totals.md): The BillingStatementTotals type represents the total costs, taxes, and other pricing details for a statement. - [`BillingSubscriptionItemNextPayment`](https://clerk.com/docs/vue/reference/types/billing-subscription-item-next-payment.md): The BillingSubscriptionItemNextPayment type represents the upcoming payment for a subscription item. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/vue/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/vue/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/vue/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingSubscriptionResource`](https://clerk.com/docs/vue/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingTotals`](https://clerk.com/docs/vue/reference/types/billing-totals.md): The BillingTotals type represents the total costs and pricing details for a subscription, including taxes, credits, and discounts. - [`ClerkAPIError`](https://clerk.com/docs/vue/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkAPIResponseError`](https://clerk.com/docs/vue/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`ClerkError`](https://clerk.com/docs/vue/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`ClerkPaginatedResponse`](https://clerk.com/docs/vue/reference/types/clerk-paginated-response.md): An interface that describes the response of a method that returns a paginated list of resources. - [`CustomMenuItem`](https://clerk.com/docs/vue/reference/types/custom-menu-item.md): An interface that provides the ability to add custom menu item to the component. - [`CustomPage`](https://clerk.com/docs/vue/reference/types/custom-page.md): An interface that provides the ability to add custom pages to the or components. - [`DeletedObjectResource`](https://clerk.com/docs/vue/reference/types/deleted-object-resource.md): The DeletedObjectResource class represents an item that has been deleted from the database. - [`EmailAddress`](https://clerk.com/docs/vue/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`EmailLinkError`](https://clerk.com/docs/vue/reference/types/email-link-error.md): Custom error for email links. - [`EnterpriseAccountConnection`](https://clerk.com/docs/vue/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`EnterpriseAccount`](https://clerk.com/docs/vue/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`Errors`](https://clerk.com/docs/vue/reference/types/errors.md): An interface that represents the errors that occurred during the last API request, for use in custom flows. - [`ExternalAccount`](https://clerk.com/docs/vue/reference/types/external-account.md): The ExternalAccount object is a model around an identification obtained by an external provider (e.g., a social provider such as Google). - [`FeatureResource`](https://clerk.com/docs/vue/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/vue/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`IdentificationLinkResource`](https://clerk.com/docs/vue/reference/types/identification-link-resource.md): An interface representing an identification link. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/vue/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/vue/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`ImageResource`](https://clerk.com/docs/vue/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`LastAuthenticationStrategy`](https://clerk.com/docs/vue/reference/types/last-authentication-strategy.md): The LastAuthenticationStrategy enum is used to indicate the last authentication strategy used by a client. - [`OrganizationDomainResource`](https://clerk.com/docs/vue/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationDomainsBulkOwnershipVerificationResource`](https://clerk.com/docs/vue/reference/types/organization-domains-bulk-ownership-verification-resource.md): The OrganizationDomainsBulkOwnershipVerificationResource object is the result of a bulk ownership verification flow. - [Metadata](https://clerk.com/docs/vue/reference/types/metadata.md): Types related to metadata. - [`OrganizationSuggestion`](https://clerk.com/docs/vue/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`Waitlist`](https://clerk.com/docs/vue/reference/types/waitlist.md): The Waitlist object holds the state of a waitlist entry and provides methods to join the waitlist. - [`OAuthConsentInfo`](https://clerk.com/docs/vue/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`OAuthApplication`](https://clerk.com/docs/vue/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`OAuthConsentScope`](https://clerk.com/docs/vue/reference/types/oauth-consent-scope.md): An interface representing a single OAuth scope with its description and whether it requires consent. - [`OrganizationCreationDefaults`](https://clerk.com/docs/vue/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`clerkPlugin`](https://clerk.com/docs/vue/reference/clerk-plugin.md): The clerkPlugin provides session and user context to Clerk's composables and components. - [Clerk Vue SDK](https://clerk.com/docs/vue/reference/overview.md): The Clerk Vue SDK gives you access to prebuilt components, composables, and helpers to make user authentication easier. - [`updateClerkOptions()`](https://clerk.com/docs/vue/reference/update-clerk-options.md): The updateClerkOptions() function allows you to update Clerk's options at runtime. ### Ruby - [Ruby Quickstart](https://clerk.com/docs/ruby/getting-started/quickstart.md): Learn how to use Clerk to quickly and easily add secure authentication and user management to your Ruby application. - [Component Reference](https://clerk.com/docs/ruby/reference/components/overview.md): A list of Clerk's comprehensive suite of components designed to seamlessly integrate authentication and multi-tenancy into your application. - [`Variables` prop](https://clerk.com/docs/ruby/guides/customizing-clerk/appearance-prop/variables.md): Utilize Clerk's variables property in order to adjust the general styles of the component's base theme, like colors, backgrounds, typography. - [`Options` prop](https://clerk.com/docs/ruby/guides/customizing-clerk/appearance-prop/options.md): Utilize Clerk's options prop in order to change the layout and behavior of Clerk's prebuilt components, as well as set important links to your support, terms, and privacy pages. - [Themes](https://clerk.com/docs/ruby/guides/customizing-clerk/appearance-prop/themes.md): Clerk currently offers six prebuilt themes for you to customize the overall appearance of your Clerk app. - [`captcha` prop](https://clerk.com/docs/ruby/guides/customizing-clerk/appearance-prop/captcha.md): Utilize Clerk's captcha prop in order to change the appearance of the CAPTCHA widget. - [`Appearance` prop](https://clerk.com/docs/ruby/guides/customizing-clerk/appearance-prop/overview.md): Utilize Clerk's appearance property in order to share styles across every component or individually to any of the Clerk components. - [Bring your own CSS](https://clerk.com/docs/ruby/guides/customizing-clerk/appearance-prop/bring-your-own-css.md): Learn how to bring your own CSS to Clerk's prebuilt components. - [Social connections (OAuth)](https://clerk.com/docs/ruby/guides/configure/auth-strategies/social-connections/overview.md): Learn how to effortlessly add social connections to your application using popular social providers like Google, Facebook, GitHub and more. - [Authorization checks](https://clerk.com/docs/ruby/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Error handling](https://clerk.com/docs/ruby/guides/development/custom-flows/error-handling.md): Provide your users with useful information about the errors being returned from sign-up and sign-in requests. - [Build a custom flow for handling user impersonation](https://clerk.com/docs/ruby/guides/development/custom-flows/account-updates/user-impersonation.md): Learn how to build a custom flow using the Clerk API that handles user impersonation. - [Handle sign-up challenges in your custom flow](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to ensure your custom sign-up flow works with Challenge suspicious sign-ups. - [Build a custom flow for handling email links](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/email-links.md): Learn how to build a custom flow using Clerk's API to handle email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/embedded-email-links.md): Learn how to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMS's, and more. - [Build a custom Google One Tap authentication flow](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/google-one-tap.md): Learn how to build a custom Google One Tap authentication flow using the Clerk API. - [Build a custom waitlist form](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/waitlist.md): Learn how to use the Clerk API to build a custom waitlist form using Clerk's useWaitlist() hook. - [Build a custom flow for handling email links](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/legacy/email-links.md): Use the legacy Clerk API to build a custom flow for handling email links for sign-up, sign-in, and email address verification. - [Embeddable email links with sign-in tokens](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/legacy/embedded-email-links.md): Use the legacy Clerk API to build custom embeddable email link sign-in flows to increase user engagement and reduce drop off in transactional emails, SMSes, and more. - [Clerk Ruby SDK](https://clerk.com/docs/ruby/reference/overview.md): The Clerk Ruby SDK provides a range of backend utilities to simplify user authentication and management in your application. - [Ruby with Rack](https://clerk.com/docs/ruby/reference/rack.md): The Clerk Ruby SDK provides a Rack middleware to integrate Clerk into your Rack-based application. - [Ruby on Rails integration](https://clerk.com/docs/ruby/reference/rails.md): The Clerk Ruby SDK provides a Rack middleware and a gem to integrate Clerk into your Rails app. - [Upgrade to `clerk-sdk-ruby` v4](https://clerk.com/docs/ruby/reference/v4-upgrade-guide.md): Learn how to upgrade your application to use Clerk Ruby SDK v4. - [Sinatra integration](https://clerk.com/docs/ruby/reference/sinatra.md): The Clerk Ruby SDK provides a Sinatra extension to integrate Clerk into your Sinatra app. - [Upgrade to `clerk-sdk-ruby` v5](https://clerk.com/docs/ruby/reference/v5-upgrade-guide.md): Learn how to upgrade your application to use Clerk Ruby SDK v5.