# Clerk ## Docs - [Pin a Clerk SDK](https://clerk.com/docs/pinning.md): Learn how to pin a Clerk SDK to a specific version. - [Maintenance Mode](https://clerk.com/docs/maintenance-mode.md): Learn about Clerk's Maintenance Mode. - [Welcome to Clerk Docs](https://clerk.com/docs.md): Add complete user management to your application in minutes. - [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. - [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. - [Quickstarts](https://clerk.com/docs/getting-started/quickstart/overview.md): See the getting started guides and tutorials. - [Set up your Clerk account](https://clerk.com/docs/getting-started/quickstart/setup-clerk.md): Set up a new Clerk account and integrate it into a new application. - [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 and backend API reference documentation. - [`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. - [`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. - [`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. - [`deleteAllowlistIdentifier()`](https://clerk.com/docs/reference/backend/allowlist/delete-allowlist-identifier.md): Use the deleteAllowlistIdentifier() method to delete an allowlist identifier. - [`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. - [`revokeToken()`](https://clerk.com/docs/reference/backend/oauth-applications/revoke-token.md): Use the revokeToken() method to revoke an OAuth application token. - [`create()`](https://clerk.com/docs/reference/backend/oauth-applications/create.md): Use the create() method to create 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. - [`delete()`](https://clerk.com/docs/reference/backend/oauth-applications/delete.md): Use the delete() method to delete an OAuth application. - [`get()`](https://clerk.com/docs/reference/backend/oauth-applications/get.md): Use the get() method to get an OAuth application. - [`update()`](https://clerk.com/docs/reference/backend/oauth-applications/update.md): Use the update() method to update an OAuth application. - [`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. - [`deleteScope()`](https://clerk.com/docs/reference/backend/machines/delete-scope.md): Use the deleteScope() method to delete a machine scope. - [`delete()`](https://clerk.com/docs/reference/backend/machines/delete.md): Use the delete() method to delete a machine. - [`getSecretKey()`](https://clerk.com/docs/reference/backend/machines/get-secret-key.md): Use the getSecretKey() method to get a machine secret key. - [`get()`](https://clerk.com/docs/reference/backend/machines/get.md): Use the get() method to get the given machine. - [`list()`](https://clerk.com/docs/reference/backend/machines/list.md): Use the list() method to get a list of machines for the instance. - [`rotateSecretKey()`](https://clerk.com/docs/reference/backend/machines/rotate-secret-key.md): Use the rotateSecretKey() method to rotate a machine's secret key. - [`update()`](https://clerk.com/docs/reference/backend/machines/update.md): Use the update() method to update 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. - [`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. - [`revokeToken()`](https://clerk.com/docs/reference/backend/m2m-tokens/revoke-token.md): Use the revokeToken() method to revoke a M2M token. - [`verify()`](https://clerk.com/docs/reference/backend/m2m-tokens/verify.md): Use the verify() method to verify an M2M token. - [`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. - [`revokeInvitation()`](https://clerk.com/docs/reference/backend/invitations/revoke-invitation.md): Use the revokeInvitation() method to revoke an invitation. - [`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. - [`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. - [`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. - [`get()`](https://clerk.com/docs/reference/backend/instance/get.md): Use the get() method to get the given 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. - [`updateRestrictions()`](https://clerk.com/docs/reference/backend/instance/update-restrictions.md): Use the updateRestrictions() method to update the restriction settings of the current instance. - [`update()`](https://clerk.com/docs/reference/backend/instance/update.md): Use the update() method to update the current instance. - [`createEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/create-enterprise-connection.md): Use the createEnterpriseConnection() method to create an enterprise connection. - [`deleteEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/delete-enterprise-connection.md): Use the deleteEnterpriseConnection() method to delete 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. - [`getEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/get-enterprise-connection.md): Use the getEnterpriseConnection() method to get an enterprise connection. - [`updateEnterpriseConnection()`](https://clerk.com/docs/reference/backend/enterprise-connections/update-enterprise-connection.md): Use the updateEnterpriseConnection() method to update an enterprise connection. - [`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. - [`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. - [`updateEmailAddress()`](https://clerk.com/docs/reference/backend/email-addresses/update-email-address.md): Use the updateEmailAddress() method to update an email address. - [`add()`](https://clerk.com/docs/reference/backend/domains/add.md): Use the add() method to add a new domain to the instance. - [`deleteDomain()`](https://clerk.com/docs/reference/backend/domains/delete-domain.md): Use the deleteDomain() method to delete a satellite domain for the instance. - [`delete()`](https://clerk.com/docs/reference/backend/domains/delete.md): Use the delete() method to delete a satellite domain for the instance. - [`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. - [`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. - [`getClientList()`](https://clerk.com/docs/reference/backend/client/get-client-list.md): Retrieves the list of clients. - [`getClient()`](https://clerk.com/docs/reference/backend/client/get-client.md): Use the getClient() method to get a single client by its ID. - [`cancelSubscriptionItem()`](https://clerk.com/docs/reference/backend/billing/cancel-subscription-item.md): Use the cancelSubscriptionItem() method to cancel a Subscription Item. - [`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. - [`getOrganizationBillingSubscription()`](https://clerk.com/docs/reference/backend/billing/get-organization-billing-subscription.md): Use the getOrganizationBillingSubscription() method to get an Organization'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. - [`getUserBillingSubscription()`](https://clerk.com/docs/reference/backend/billing/get-user-billing-subscription.md): Use the getUserBillingSubscription() method to get a user's Billing Subscription. - [`create()`](https://clerk.com/docs/reference/backend/api-keys/create.md): Use the create() method to create an API key. - [`verify()`](https://clerk.com/docs/reference/backend/api-keys/verify.md): Use the verify() method to verify an API key secret. - [`update()`](https://clerk.com/docs/reference/backend/api-keys/update.md): Use the update() method to update an API key. - [`get()`](https://clerk.com/docs/reference/backend/api-keys/get.md): Use the get() method to get 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. - [`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. - [`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. - [`delete()`](https://clerk.com/docs/reference/backend/waitlist-entries/delete.md): Use the delete() method to delete a pending waitlist entry. - [`invite()`](https://clerk.com/docs/reference/backend/waitlist-entries/invite.md): Use the invite() method to invite a 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. - [`getUserList()`](https://clerk.com/docs/reference/backend/user/get-user-list.md): Use the getUserList() method to get a list of users. - [`createUser()`](https://clerk.com/docs/reference/backend/user/create-user.md): Use the createUser() method to create a user. - [`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. - [`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. - [`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. - [`deleteUserProfileImage()`](https://clerk.com/docs/reference/backend/user/delete-user-profile-image.md): Use the deleteUserProfileImage() method to delete a user's profile image. - [`deleteUserTOTP()`](https://clerk.com/docs/reference/backend/user/delete-user-totp.md): Use the deleteUserTOTP() method to delete all of a user's TOTPs. - [`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. - [`deleteUser()`](https://clerk.com/docs/reference/backend/user/delete-user.md): Use the deleteUser() method to delete a user. - [`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. - [`getCount()`](https://clerk.com/docs/reference/backend/user/get-count.md): Use the getCount() method to get the total number of users. - [`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. - [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. - [`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. - [`getUser()`](https://clerk.com/docs/reference/backend/user/get-user.md): Use the getUser() method to get a single user by their ID. - [`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. - [`removePassword()`](https://clerk.com/docs/reference/backend/user/remove-password.md): Use the removePassword() method to remove a user's password credential. - [`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. - [`setPasswordCompromised()`](https://clerk.com/docs/reference/backend/user/set-password-compromised.md): Use the setPasswordCompromised() method to set a user's password as compromised. - [`unbanUser()`](https://clerk.com/docs/reference/backend/user/unban-user.md): Use the unbanUser() method to remove the ban mark from a user. - [`unlockUser()`](https://clerk.com/docs/reference/backend/user/unlock-user.md): Use the unlockUser() method to remove a sign-in lock from a 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. - [`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. - [`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. - [`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. - [`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. - [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 `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 `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 `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 `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 `Web3Wallet` object](https://clerk.com/docs/reference/backend/types/backend-web3-wallet.md): The Backend Web3Wallet object describes a Web3 wallet 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 `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. - [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. - [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. - [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. - [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. - [`Feature`](https://clerk.com/docs/reference/backend/types/feature.md): The Feature type represents a Feature that a Plan can offer. - [`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. - [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 `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. - [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 `Instance` object](https://clerk.com/docs/reference/backend/types/backend-instance.md): The Backend Instance object holds information about the current instance. - [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 `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 `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 `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. - [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 `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 `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 `Machine` object](https://clerk.com/docs/reference/backend/types/backend-machine.md): The Backend Machine object holds information about a Machine. - [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 `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 `OauthAccessToken` object](https://clerk.com/docs/reference/backend/types/backend-oauth-access-token.md): The Backend OAuthAccessToken object describes an OAuth Access Token. - [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 `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 `OAuthApplication` object](https://clerk.com/docs/reference/backend/types/backend-oauth-application.md): The Backend OAuthApplication object describes an OAuth Application. - [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. - [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 `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 `AgentTask` object](https://clerk.com/docs/reference/backend/types/backend-agent-task.md): The Backend AgentTask object represents an Agent Task. - [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 `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 `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 `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 `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 `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 `PhoneNumber` object](https://clerk.com/docs/reference/backend/types/backend-phone-number.md): The Backend PhoneNumber object describes a phone number. - [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 `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 `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 `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. - [`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. - [`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. - [`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. - [`getSessionList()`](https://clerk.com/docs/reference/backend/sessions/get-session-list.md): Use the getSessionList() method to get a list of sessions. - [`getSession()`](https://clerk.com/docs/reference/backend/sessions/get-session.md): Use the getSession() method to get a single session by 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. - [`revokeSession()`](https://clerk.com/docs/reference/backend/sessions/revoke-session.md): Use the revokeSession() method to revoke a session given its ID. - [`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. - [`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. - [`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. - [`getSamlConnection()`](https://clerk.com/docs/reference/backend/saml-connections/get-saml-connection.md): Use the getSamlConnection() method to get 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. - [`createRedirectUrl()`](https://clerk.com/docs/reference/backend/redirect-urls/create-redirect-url.md): Use the createRedirectUrl() method to create a redirect URL. - [`deleteRedirectUrl()`](https://clerk.com/docs/reference/backend/redirect-urls/delete-redirect-url.md): Use the deleteRedirectUrl() method to delete 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. - [`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. - [`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. - [`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. - [`updatePhoneNumber()`](https://clerk.com/docs/reference/backend/phone-numbers/update-phone-number.md): Use the updatePhoneNumber() method to update a phone number. - [`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. - [`updateOrganizationMembership()`](https://clerk.com/docs/reference/backend/organization/update-organization-membership.md): Use the updateOrganizationMembership() method to update a user's Organization membership. - [`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. - [`updateOrganization()`](https://clerk.com/docs/reference/backend/organization/update-organization.md): Use the updateOrganization() method to update an Organization's name. - [`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. - [`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. - [`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. - [`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). - [`createOrganization()`](https://clerk.com/docs/reference/backend/organization/create-organization.md): Use the createOrganization() method to create an Organization. - [`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. - [`deleteOrganizationLogo()`](https://clerk.com/docs/reference/backend/organization/delete-organization-logo.md): Use the deleteOrganizationLogo() method to delete an Organization's logo. - [`deleteOrganizationMembership()`](https://clerk.com/docs/reference/backend/organization/delete-organization-membership.md): Use the deleteOrganizationMembership() method to remove a user from the specified Organization. - [`deleteOrganization()`](https://clerk.com/docs/reference/backend/organization/delete-organization.md): Use the deleteOrganization() method to delete an Organization. - [`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. - [`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. - [`getOrganizationInvitationList()`](https://clerk.com/docs/reference/backend/organization/get-organization-invitation-list.md): Use the getOrganizationInvitationList() method to get a list of Organization invitations. - [`getOrganizationInvitation()`](https://clerk.com/docs/reference/backend/organization/get-organization-invitation.md): Use the getOrganizationInvitation() method to get an Organization invitation. - [`getOrganizationList()`](https://clerk.com/docs/reference/backend/organization/get-organization-list.md): Use the getOrganizationList() method to get a list of Organizations. - [`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. - [`getOrganization()`](https://clerk.com/docs/reference/backend/organization/get-organization.md): Use the getOrganization() method to get a single Organization. - [`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. - [`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. - [`updateOrganizationLogo()`](https://clerk.com/docs/reference/backend/organization/update-organization-logo.md): Use the updateOrganizationLogo() method to update an Organization's logo. - [`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. - [`AgentTask`](https://clerk.com/docs/reference/types/agent-task.md): The AgentTask interface represents an Agent Task. - [Component Changelog](https://clerk.com/docs/reference/components/changelog.md): Keep track of the changes to Clerk's components. - [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. - [Users](https://clerk.com/docs/guides/users/managing.md): Learn how to manage your users in your Clerk application. - [Invite users to your application](https://clerk.com/docs/guides/users/inviting.md): Learn how to invite users to 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. - [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. - [Session tokens](https://clerk.com/docs/guides/sessions/session-tokens.md): Learn about session tokens and how to validate them in your backend. - [Manual JWT verification](https://clerk.com/docs/guides/sessions/manual-jwt-verification.md): Learn how to manually verify Clerk-generated session tokens (JWTs). - [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. - [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. - [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. - [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. - [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. - [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. - [Authorization checks](https://clerk.com/docs/guides/secure/authorization-checks.md): Learn how to verify and validate user Roles and Permissions within Clerk to maintain secure access control. - [Bot protection](https://clerk.com/docs/guides/secure/bot-protection.md): Protect your sign-ups from bots. - [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. - [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. - [Session options](https://clerk.com/docs/guides/secure/session-options.md): Clerk provides session management options for fine-tuning user visits to your application. - [Features](https://clerk.com/docs/guides/secure/features.md): Grant access to your privileged content and data using features. - [User enumeration protection](https://clerk.com/docs/guides/secure/user-enumeration-protection.md): Learn how to protect your users from user enumeration attacks. - [Legal compliance](https://clerk.com/docs/guides/secure/legal-compliance.md): Learn how to configure your legal compliance settings in the Clerk Dashboard. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [Unauthorized sign-in](https://clerk.com/docs/guides/secure/best-practices/unauthorized-sign-in.md): Notify users of unauthorized sign-ins to their accounts - [XSS leak protection](https://clerk.com/docs/guides/secure/best-practices/xss-leak-protection.md): Learn how Clerk prevents and mitigates XSS attacks. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [Cookies](https://clerk.com/docs/guides/how-clerk-works/cookies.md): Learn how cookies enable secure authentication and manage browser-server interactions. - [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. - [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. - [Routing in Clerk](https://clerk.com/docs/guides/how-clerk-works/routing.md): Learn how Clerk handles routing in your application. - [Rate limits](https://clerk.com/docs/guides/how-clerk-works/system-limits.md): Learn about rate limiting on the Clerk APIs. - [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. - [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. - [Vulnerability disclosure policy](https://clerk.com/docs/guides/how-clerk-works/security/vulnerability-disclosure-policy.md): Clerk's vulnerability disclosure policy. - [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. - [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. - [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, and transferring applications. - [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. - [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. - [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. - [Dashboard Logs](https://clerk.com/docs/guides/dashboard/logs/overview.md): Learn how to use Application Logs and Admin Logs in the Clerk Dashboard — investigate authentication activity across your instances and audit admin changes across your workspace. - [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. - [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. - [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. - [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. - [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. - [Common components](https://clerk.com/docs/guides/customizing-clerk/elements/reference/common.md): Reference documentation for common Clerk Elements components. - [Sign-in components](https://clerk.com/docs/guides/customizing-clerk/elements/reference/sign-in.md): Reference documentation for Clerk Elements sign-in components. - [Sign-up components](https://clerk.com/docs/guides/customizing-clerk/elements/reference/sign-up.md): Reference documentation for Clerk Elements sign-up components. - [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. - [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. - [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-in](https://clerk.com/docs/guides/customizing-clerk/elements/examples/sign-in.md): Examples of prebuilt sign-in flows with Clerk Elements. - [Sign-up](https://clerk.com/docs/guides/customizing-clerk/elements/examples/sign-up.md): Examples of prebuilt sign-up flows with Clerk Elements. - [Account credits](https://clerk.com/docs/guides/billing/account-credits.md): Add and manage account credits for Users and Organizations. - [Custom Plans and prices](https://clerk.com/docs/guides/billing/custom-plans.md): Transition Subscriptions between Plans and create custom pricing for your customers - [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. - [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. - [Free trials](https://clerk.com/docs/guides/billing/free-trials.md): Let users try paid Features before subscribing - [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. - [Seat-based Plans](https://clerk.com/docs/guides/billing/seat-based-plans.md): Configure Plans with seat limits, per-seat pricing, or both. - [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. - [Clerk Skills](https://clerk.com/docs/guides/ai/skills.md): Install Clerk Skills to enhance AI coding agents with authentication expertise. - [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. - [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. - [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. - [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. - [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. - [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 access SDK snippets and implementation patterns. - [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 - [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. - [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. - [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. - [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. - [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. - [Coinbase Wallet](https://clerk.com/docs/guides/configure/auth-strategies/web3/coinbase-wallet.md): Learn how to set up Web3 authentication with Coinbase Wallet. - [MetaMask](https://clerk.com/docs/guides/configure/auth-strategies/web3/metamask.md): Learn how to set up Web3 authentication with MetaMask. - [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 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. - [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. - [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. - [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 Client ID Metadata Documents, dynamic client registration, consent screens, PKCE, public clients, and scopes. - [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. - [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. - [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. - [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 IdP groups to Clerk Roles. - [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. - [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. - [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. - [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. - [Add a custom Identity Provider (IdP) 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 (IdP) 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 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 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 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 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 app with their Google 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 app with their HubSpot account using OAuth. - [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 app with their Hugging Face 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 app with their LINE 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 app with their Linear account using OAuth. - [Add LinkedIn Open ID 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 app with their LinkedIn Open ID Connect (OIDC) account. - [Add Microsoft Azure 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 app with their Microsoft account using OAuth. - [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 app with their Notion account 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 app with their Slack 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 app with their Spotify 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 app with their TikTok account using OAuth. - [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 app with their Twitch account with 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 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 app with their Vercel account using OAuth. - [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 app 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 app with their Xero account using OAuth. - [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 app with their GitHub 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 app with their GitLab 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 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 app with their Apple ID 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 app with their Atlassian 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 app with their Facebook 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 app with their Discord account with 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 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 app with their Dropbox 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 app with their Bitbucket account with 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 app 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 app with their Box account using OAuth. - [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. - [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. - [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. - [Clerk environment variables](https://clerk.com/docs/guides/development/clerk-environment-variables.md): Learn which Clerk environment variables are necessary to configure your projects. - [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 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. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [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). - [Web support](https://clerk.com/docs/guides/development/web-support/overview.md): Add web support to your Expo project with Clerk. - [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. - [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. - [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. - [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. - [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. - [Upgrading from v2 to v3](https://clerk.com/docs/guides/development/upgrading/upgrading-from-v2-to-v3.md): Learn how to upgrade from version 2 to version 3 of the Clerk JavaScript libraries. - [Versioning overview](https://clerk.com/docs/guides/development/upgrading/versioning.md): A brief guide on how versioning works in Clerk. - [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. - [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. - [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 - [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 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. - [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. - [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. - [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. - [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/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/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/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. - [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. - [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. - [Troubleshooting](https://clerk.com/docs/guides/development/troubleshooting/overview.md): Learn how to troubleshoot common issues with Clerk and contact support for additional assistance. - [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. - [Script loading](https://clerk.com/docs/guides/development/troubleshooting/script-loading.md): Troubleshooting strategies for cases when Clerk doesn't successfully load - [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. - [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. - [Decode Clerk JWTs](https://clerk.com/docs/guides/development/troubleshooting/jwt-decoder.md): Decode JWTs and inspect claims. - [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. - [Testing](https://clerk.com/docs/guides/development/testing/overview.md): Learn about testing with Clerk. - [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. - [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 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. - [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. - [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. - [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 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. - [Fullstack SDK](https://clerk.com/docs/guides/development/sdk-development/fullstack.md): A reference for implementing a fullstack Clerk SDK - [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. - [Backend-only SDK](https://clerk.com/docs/guides/development/sdk-development/backend-only.md): A reference for implementing a backend-only Clerk SDK - [Conventions](https://clerk.com/docs/guides/development/sdk-development/conventions.md): A set of agreed standards for building Clerk SDKs. - [Frontend-only SDK](https://clerk.com/docs/guides/development/sdk-development/frontend-only.md): A reference for implementing a frontend-only Clerk SDK - [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. - [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. - [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. - [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. - [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. - [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. - [Change domain](https://clerk.com/docs/guides/development/deployment/changing-domains.md): Learn how to change your Clerk production instance's primary domain. - [Deploy your Clerk app to production](https://clerk.com/docs/guides/development/deployment/production.md): Learn how to deploy your Clerk app to production. - [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. - [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 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 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 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. - [Integrations](https://clerk.com/docs/guides/development/integrations/overview.md): Learn about the available integrations with Clerk. - [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 Convex with Clerk](https://clerk.com/docs/guides/development/integrations/databases/convex.md): Learn how to integrate Clerk into your Convex application. - [Integrate Firebase with Clerk](https://clerk.com/docs/guides/development/integrations/databases/firebase.md): Learn how to integrate Clerk into your Firebase 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 Hasura with Clerk](https://clerk.com/docs/guides/development/integrations/databases/hasura.md): Learn how to integrate Clerk into your Hasura 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. - [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 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. - [Integrate Shopify with Clerk](https://clerk.com/docs/guides/development/integrations/platforms/shopify.md): Learn how to integrate Clerk into your Shopify store. - [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 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 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 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 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 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 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 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. - [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 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. - [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 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 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 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 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 (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 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. - [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. - [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 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 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. - [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 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 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. - [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 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 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. - [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 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. - [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. - [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 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 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-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 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 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 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 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. - [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. - [Errors overview](https://clerk.com/docs/guides/development/errors/overview.md): Find more information about a Clerk error. ### Next.js - [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. - [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. - [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. - [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. - [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. - [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 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 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 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. - [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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/nextjs/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [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 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. - [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. - [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. - [AI prompts](https://clerk.com/docs/nextjs/guides/ai/prompts.md): Curated prompts for working with Clerk using AI-powered IDE tools like Cursor, GitHub Copilot, and Claude. - [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. - [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/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/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. - [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. - [`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. - [`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. - [`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. - [`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. - [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. - [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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`useSubscription()`](https://clerk.com/docs/nextjs/reference/hooks/use-subscription.md): Access Subscription information in your React application with Clerk's useSubscription() 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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`usePlans()`](https://clerk.com/docs/nextjs/reference/hooks/use-plans.md): Access Plans in your React application with Clerk's usePlans() 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. - [`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. - [`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. - [`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. - [`useAuth()`](https://clerk.com/docs/nextjs/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() 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. - [`useStatements()`](https://clerk.com/docs/nextjs/reference/hooks/use-statements.md): Access and manage statements in your React application with Clerk's useStatements() 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. - [`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. - [`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. - [`` 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 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/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` 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/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/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-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-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/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-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/user/user-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [``](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/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-list.md): Clerk's component is used to display Organization related memberships, invitations, and suggestions for the user. - [`` 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/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/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/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-degraded.md): The component indicates that Clerk is partially operational. - [`` 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-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/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/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-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/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/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-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/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/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/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/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/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/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` 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-reset-password.md): Clerk's component renders a UI for resolving the reset-password 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/sign-in.md): Clerk's component renders a UI for signing in users. - [`` 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. - [`RoleResource`](https://clerk.com/docs/nextjs/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`SessionTask`](https://clerk.com/docs/nextjs/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionStatus`](https://clerk.com/docs/nextjs/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`BillingPayerResource`](https://clerk.com/docs/nextjs/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`SetActiveParams`](https://clerk.com/docs/nextjs/reference/types/set-active-params.md): The parameters for the setActive() method. - [`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. - [`BillingPayerCredit`](https://clerk.com/docs/nextjs/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`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. - [`RedirectOptions`](https://clerk.com/docs/nextjs/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`PublicUserData`](https://clerk.com/docs/nextjs/reference/types/public-user-data.md): Information about that user that's publicly available. - [`BillingPaymentTotals`](https://clerk.com/docs/nextjs/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`ProtectCheckResource`](https://clerk.com/docs/nextjs/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`BillingMoneyAmount`](https://clerk.com/docs/nextjs/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`SignInRedirectOptions`](https://clerk.com/docs/nextjs/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`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. - [`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. - [`BillingPaymentResource`](https://clerk.com/docs/nextjs/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`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. - [`SessionVerification`](https://clerk.com/docs/nextjs/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [Clerk types](https://clerk.com/docs/nextjs/reference/types/overview.md): Explore the different types available for typing your application. - [`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. - [`BillingPaymentMethodResource`](https://clerk.com/docs/nextjs/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`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. - [`OrganizationSuggestion`](https://clerk.com/docs/nextjs/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`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. - [`OrganizationInvitation`](https://clerk.com/docs/nextjs/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`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. - [`PermissionResource`](https://clerk.com/docs/nextjs/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`OrganizationCreationDefaults`](https://clerk.com/docs/nextjs/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`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. - [`OAuthApplication`](https://clerk.com/docs/nextjs/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [Metadata](https://clerk.com/docs/nextjs/reference/types/metadata.md): Types related to metadata. - [`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. - [`ClerkError`](https://clerk.com/docs/nextjs/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`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. - [`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. - [`ClerkAPIError`](https://clerk.com/docs/nextjs/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`BillingDiscounts`](https://clerk.com/docs/nextjs/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`ClerkAPIResponseError`](https://clerk.com/docs/nextjs/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`ImageResource`](https://clerk.com/docs/nextjs/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`BillingDiscountRedemption`](https://clerk.com/docs/nextjs/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BillingSubscriptionResource`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingCredits`](https://clerk.com/docs/nextjs/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`IdentificationLinkResource`](https://clerk.com/docs/nextjs/reference/types/identification-link-resource.md): An interface representing an identification link. - [`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. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingCreditBalanceResource`](https://clerk.com/docs/nextjs/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/nextjs/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`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. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/nextjs/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingCheckoutResource`](https://clerk.com/docs/nextjs/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about 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. - [`FeatureResource`](https://clerk.com/docs/nextjs/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`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. - [`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. - [`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). - [`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. - [`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. - [`BackupCodeResource`](https://clerk.com/docs/nextjs/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingStatementResource`](https://clerk.com/docs/nextjs/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`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. - [`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. - [SSO Types](https://clerk.com/docs/nextjs/reference/types/sso.md): Types related to SSO providers and strategies. - [`BillingStatementGroup`](https://clerk.com/docs/nextjs/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`EnterpriseAccount`](https://clerk.com/docs/nextjs/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [`BillingProrationDiscount`](https://clerk.com/docs/nextjs/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`EnterpriseAccountConnection`](https://clerk.com/docs/nextjs/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`TOTPResource`](https://clerk.com/docs/nextjs/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`EmailLinkError`](https://clerk.com/docs/nextjs/reference/types/email-link-error.md): Custom error for email links. - [`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. - [`EmailAddress`](https://clerk.com/docs/nextjs/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingPlanResource`](https://clerk.com/docs/nextjs/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`SignUpRedirectOptions`](https://clerk.com/docs/nextjs/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`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. - [`OrganizationDomainResource`](https://clerk.com/docs/nextjs/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/nextjs/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/nextjs/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`OAuthConsentInfo`](https://clerk.com/docs/nextjs/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`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. - [Use Clerk with Next.js 12 and older](https://clerk.com/docs/nextjs/reference/usage-with-older-versions.md): Learn how to use Clerk with older versions of Next.js. - [clerkMiddleware()](https://clerk.com/docs/nextjs/reference/clerk-middleware.md): The clerkMiddleware() helper integrates Clerk authentication into your Next.js application through Middleware. - [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. - [`@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. - [`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. - [`getAuth()`](https://clerk.com/docs/nextjs/reference/pages-router/get-auth.md): The getAuth() helper retrieves authentication state from the request object. - [Server Actions](https://clerk.com/docs/nextjs/reference/app-router/server-actions.md): Learn how to use Clerk with Server Actions. - [`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. - [`auth()`](https://clerk.com/docs/nextjs/reference/app-router/auth.md): Access minimal authentication data for managing sessions and data fetching. - [Route Handlers](https://clerk.com/docs/nextjs/reference/app-router/route-handlers.md): Learn how to use Clerk with your Route Handlers. - [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. - [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/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: `` 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. ### React - [React Quickstart](https://clerk.com/docs/react/getting-started/quickstart.md): Add authentication and user management to your React app with Clerk. - [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. - [`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. - [`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. - [`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. - [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. - [`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. - [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. - [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/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/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. - [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. - [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. - [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. - [AI prompts](https://clerk.com/docs/react/guides/ai/prompts.md): Curated prompts for working with Clerk using AI-powered IDE tools like Cursor, GitHub Copilot, and Claude. - [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. - [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. - [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. - [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. - [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. - [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. - [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 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. - [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 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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/react/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [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. - [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. - [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. - [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. - [`useAuth()`](https://clerk.com/docs/react/reference/hooks/use-auth.md): Access and manage authentication state in your application with Clerk's useAuth() 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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`useStatements()`](https://clerk.com/docs/react/reference/hooks/use-statements.md): Access and manage statements in your React application with Clerk's useStatements() 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. - [`usePlans()`](https://clerk.com/docs/react/reference/hooks/use-plans.md): Access Plans in your React application with Clerk's usePlans() hook. - [`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. - [`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. - [`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. - [`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. - [`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. - [`` 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/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-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`` 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-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/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/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-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/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/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-failed.md): The component indicates that the Clerk object has failed to load. - [`` 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-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-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-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-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/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/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/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/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/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/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated 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/sign-up.md): Clerk's component renders a UI for signing up users. - [`` 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/google-one-tap.md): Clerk's component renders a UI for authenticating users with Google's One Tap API. - [`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. - [`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. - [`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. - [SSO Types](https://clerk.com/docs/react/reference/types/sso.md): Types related to SSO providers and strategies. - [`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. - [`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. - [`TOTPResource`](https://clerk.com/docs/react/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`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. - [`BillingCreditBalanceResource`](https://clerk.com/docs/react/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/react/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`SignUpRedirectOptions`](https://clerk.com/docs/react/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`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. - [`BillingCredits`](https://clerk.com/docs/react/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`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. - [`BackupCodeResource`](https://clerk.com/docs/react/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`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. - [`BillingPaymentResource`](https://clerk.com/docs/react/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`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. - [`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. - [`BillingProrationDiscount`](https://clerk.com/docs/react/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingPaymentMethodResource`](https://clerk.com/docs/react/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingPaymentTotals`](https://clerk.com/docs/react/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingStatementResource`](https://clerk.com/docs/react/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingPayerResource`](https://clerk.com/docs/react/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`BillingStatementGroup`](https://clerk.com/docs/react/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`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. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/react/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingPayerCredit`](https://clerk.com/docs/react/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/react/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`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. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/react/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingMoneyAmount`](https://clerk.com/docs/react/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`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. - [`BillingPlanResource`](https://clerk.com/docs/react/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`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. - [`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. - [`BillingSubscriptionResource`](https://clerk.com/docs/react/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`ClerkAPIError`](https://clerk.com/docs/react/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`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. - [`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. - [`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. - [`EnterpriseAccount`](https://clerk.com/docs/react/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [`BillingDiscountRedemption`](https://clerk.com/docs/react/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`ClerkAPIResponseError`](https://clerk.com/docs/react/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`EnterpriseAccountConnection`](https://clerk.com/docs/react/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`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. - [`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. - [`FeatureResource`](https://clerk.com/docs/react/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`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). - [`EmailLinkError`](https://clerk.com/docs/react/reference/types/email-link-error.md): Custom error for email links. - [`EmailAddress`](https://clerk.com/docs/react/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/react/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`IdentificationLinkResource`](https://clerk.com/docs/react/reference/types/identification-link-resource.md): An interface representing an identification link. - [`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. - [`ImageResource`](https://clerk.com/docs/react/reference/types/image-resource.md): The ImageResource type represents an image resource. - [Metadata](https://clerk.com/docs/react/reference/types/metadata.md): Types related to metadata. - [`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. - [`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. - [`OAuthApplication`](https://clerk.com/docs/react/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`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. - [`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. - [`OrganizationCreationDefaults`](https://clerk.com/docs/react/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/react/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`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. - [`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. - [`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. - [`OrganizationInvitation`](https://clerk.com/docs/react/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`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. - [`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. - [`OrganizationSuggestion`](https://clerk.com/docs/react/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`PasskeyResource`](https://clerk.com/docs/react/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [Clerk types](https://clerk.com/docs/react/reference/types/overview.md): Explore the different types available for typing your application. - [`PermissionResource`](https://clerk.com/docs/react/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`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. - [`SessionVerification`](https://clerk.com/docs/react/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`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. - [`SetActiveParams`](https://clerk.com/docs/react/reference/types/set-active-params.md): The parameters for the setActive() method. - [`ProtectCheckResource`](https://clerk.com/docs/react/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`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. - [`PublicUserData`](https://clerk.com/docs/react/reference/types/public-user-data.md): Information about that user that's publicly available. - [`SignInRedirectOptions`](https://clerk.com/docs/react/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`RedirectOptions`](https://clerk.com/docs/react/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`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. - [`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. - [`RoleResource`](https://clerk.com/docs/react/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`SessionStatus`](https://clerk.com/docs/react/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SessionTask`](https://clerk.com/docs/react/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`Billing` object](https://clerk.com/docs/react/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`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. - [`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. - [`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. - [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. - [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. - [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. - [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 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 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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/js-frontend/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [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. - [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. - [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. - [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. - [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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`` 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/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-button.md): Clerk's component is used to render the familiar user button UI popularized by Google. - [`` 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/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/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/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/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/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/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/sign-up.md): Clerk's component renders a UI for signing up users. - [`` 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/sign-in.md): Clerk's component renders a UI for signing in users. - [`` 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. - [`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. - [`BillingPaymentTotals`](https://clerk.com/docs/js-frontend/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`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. - [`BillingCredits`](https://clerk.com/docs/js-frontend/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or 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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/js-frontend/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`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. - [`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. - [`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. - [`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. - [`BillingMoneyAmount`](https://clerk.com/docs/js-frontend/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BackupCodeResource`](https://clerk.com/docs/js-frontend/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingPayerResource`](https://clerk.com/docs/js-frontend/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`ClerkAPIError`](https://clerk.com/docs/js-frontend/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`BillingSubscriptionResource`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`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. - [`ClerkError`](https://clerk.com/docs/js-frontend/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`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. - [`BillingDiscounts`](https://clerk.com/docs/js-frontend/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`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. - [`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. - [`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. - [`BillingPlanResource`](https://clerk.com/docs/js-frontend/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`EmailAddress`](https://clerk.com/docs/js-frontend/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`BillingDiscountRedemption`](https://clerk.com/docs/js-frontend/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`EmailLinkError`](https://clerk.com/docs/js-frontend/reference/types/email-link-error.md): Custom error for email links. - [`EnterpriseAccountConnection`](https://clerk.com/docs/js-frontend/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`EnterpriseAccount`](https://clerk.com/docs/js-frontend/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [`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. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/js-frontend/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`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. - [`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. - [Metadata](https://clerk.com/docs/js-frontend/reference/types/metadata.md): Types related to metadata. - [`OAuthConsentInfo`](https://clerk.com/docs/js-frontend/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`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. - [`ImageResource`](https://clerk.com/docs/js-frontend/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`OrganizationCreationDefaults`](https://clerk.com/docs/js-frontend/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`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. - [`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. - [`OrganizationDomainResource`](https://clerk.com/docs/js-frontend/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`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. - [`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. - [`OrganizationSuggestion`](https://clerk.com/docs/js-frontend/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`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. - [Clerk types](https://clerk.com/docs/js-frontend/reference/types/overview.md): Explore the different types available for typing your application. - [`OrganizationInvitation`](https://clerk.com/docs/js-frontend/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`PermissionResource`](https://clerk.com/docs/js-frontend/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`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. - [`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. - [`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. - [`PublicUserData`](https://clerk.com/docs/js-frontend/reference/types/public-user-data.md): Information about that user that's publicly available. - [`RedirectOptions`](https://clerk.com/docs/js-frontend/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`RoleResource`](https://clerk.com/docs/js-frontend/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`SessionStatus`](https://clerk.com/docs/js-frontend/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`SessionTask`](https://clerk.com/docs/js-frontend/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionVerification`](https://clerk.com/docs/js-frontend/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`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. - [`SetActiveParams`](https://clerk.com/docs/js-frontend/reference/types/set-active-params.md): The parameters for the setActive() method. - [`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. - [`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. - [`SignInRedirectOptions`](https://clerk.com/docs/js-frontend/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`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. - [`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. - [`SignUpRedirectOptions`](https://clerk.com/docs/js-frontend/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`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. - [`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. - [SSO Types](https://clerk.com/docs/js-frontend/reference/types/sso.md): Types related to SSO providers and strategies. - [`TOTPResource`](https://clerk.com/docs/js-frontend/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`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. - [`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. - [`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. - [`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. - [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. - [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. - [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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/chrome-extension/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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/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/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/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. - [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. - [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. - [`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. - [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. - [`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. - [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. - [`` 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 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/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/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/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/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/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/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-in.md): Clerk's component renders a UI for signing in users. - [`` 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/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/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-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/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/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/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/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-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-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`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. - [`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. - [`BackupCodeResource`](https://clerk.com/docs/chrome-extension/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`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. - [`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. - [`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. - [`BillingPlanResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`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. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`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. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`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. - [`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. - [`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. - [`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. - [`ClerkError`](https://clerk.com/docs/chrome-extension/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`OrganizationInvitation`](https://clerk.com/docs/chrome-extension/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`BillingSubscriptionResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`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. - [`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. - [`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. - [`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. - [`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. - [`OrganizationSuggestion`](https://clerk.com/docs/chrome-extension/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`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. - [Clerk types](https://clerk.com/docs/chrome-extension/reference/types/overview.md): Explore the different types available for typing your application. - [`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. - [`PasskeyResource`](https://clerk.com/docs/chrome-extension/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`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. - [`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. - [`ClerkAPIError`](https://clerk.com/docs/chrome-extension/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`EnterpriseAccountConnection`](https://clerk.com/docs/chrome-extension/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`PublicUserData`](https://clerk.com/docs/chrome-extension/reference/types/public-user-data.md): Information about that user that's publicly available. - [`RedirectOptions`](https://clerk.com/docs/chrome-extension/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`EmailLinkError`](https://clerk.com/docs/chrome-extension/reference/types/email-link-error.md): Custom error for email links. - [`RoleResource`](https://clerk.com/docs/chrome-extension/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`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. - [`SessionStatus`](https://clerk.com/docs/chrome-extension/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`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. - [`EmailAddress`](https://clerk.com/docs/chrome-extension/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`SessionTask`](https://clerk.com/docs/chrome-extension/reference/types/session-task.md): The SessionTask interface represents the current pending task of a 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. - [`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. - [`SessionVerification`](https://clerk.com/docs/chrome-extension/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`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). - [`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. - [`FeatureResource`](https://clerk.com/docs/chrome-extension/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`SetActiveParams`](https://clerk.com/docs/chrome-extension/reference/types/set-active-params.md): The parameters for the setActive() method. - [`IdentificationLinkResource`](https://clerk.com/docs/chrome-extension/reference/types/identification-link-resource.md): An interface representing an identification link. - [`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. - [`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. - [`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. - [`BillingPayerResource`](https://clerk.com/docs/chrome-extension/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`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. - [`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. - [`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. - [`ImageResource`](https://clerk.com/docs/chrome-extension/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`SignUpRedirectOptions`](https://clerk.com/docs/chrome-extension/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`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. - [`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. - [`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. - [`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. - [SSO Types](https://clerk.com/docs/chrome-extension/reference/types/sso.md): Types related to SSO providers and strategies. - [`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. - [`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. - [`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. - [`BillingPaymentTotals`](https://clerk.com/docs/chrome-extension/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingMoneyAmount`](https://clerk.com/docs/chrome-extension/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`EnterpriseAccount`](https://clerk.com/docs/chrome-extension/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [Metadata](https://clerk.com/docs/chrome-extension/reference/types/metadata.md): Types related to metadata. - [`OAuthConsentInfo`](https://clerk.com/docs/chrome-extension/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`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. - [`BillingDiscounts`](https://clerk.com/docs/chrome-extension/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`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. - [`BillingDiscountRedemption`](https://clerk.com/docs/chrome-extension/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`OrganizationCreationDefaults`](https://clerk.com/docs/chrome-extension/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`BillingCredits`](https://clerk.com/docs/chrome-extension/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. ### 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. - [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. - [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. - [`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. - [`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. - [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. - [`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. - [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 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. - [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. - [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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/expo/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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 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. - [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. - [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/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/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-out-button.md): The component is a button that signs a user out. - [`` 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/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-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/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/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/authentication/sign-in.md): Clerk's component renders a UI for signing in users. - [`` 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/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/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/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/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/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/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/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. - [`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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`Billing` object](https://clerk.com/docs/expo/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`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. - [`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. - [`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. - [`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. - [`EnterpriseAccount`](https://clerk.com/docs/expo/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [`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. - [`OrganizationCreationDefaults`](https://clerk.com/docs/expo/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`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. - [`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. - [`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. - [`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. - [`BillingPaymentTotals`](https://clerk.com/docs/expo/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingPaymentResource`](https://clerk.com/docs/expo/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`BillingPaymentMethodResource`](https://clerk.com/docs/expo/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingPlanResource`](https://clerk.com/docs/expo/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`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. - [`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. - [`BillingStatementResource`](https://clerk.com/docs/expo/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`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. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/expo/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingStatementGroup`](https://clerk.com/docs/expo/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/expo/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`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. - [`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. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/expo/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingProrationDiscount`](https://clerk.com/docs/expo/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`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. - [`BillingMoneyAmount`](https://clerk.com/docs/expo/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [Clerk types](https://clerk.com/docs/expo/reference/types/overview.md): Explore the different types available for typing your application. - [`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. - [`ProtectCheckResource`](https://clerk.com/docs/expo/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`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. - [`SessionTask`](https://clerk.com/docs/expo/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SessionStatus`](https://clerk.com/docs/expo/reference/types/session-status.md): The SessionStatus enum is used to indicate the status 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. - [`RoleResource`](https://clerk.com/docs/expo/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`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. - [`SetActiveParams`](https://clerk.com/docs/expo/reference/types/set-active-params.md): The parameters for the setActive() method. - [`OrganizationSuggestion`](https://clerk.com/docs/expo/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`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. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/expo/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/expo/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`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. - [`OrganizationDomainResource`](https://clerk.com/docs/expo/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`SignInRedirectOptions`](https://clerk.com/docs/expo/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`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. - [`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. - [`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. - [`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. - [`SignUpRedirectOptions`](https://clerk.com/docs/expo/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`OrganizationInvitation`](https://clerk.com/docs/expo/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`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. - [`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. - [`ImageResource`](https://clerk.com/docs/expo/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`BillingCredits`](https://clerk.com/docs/expo/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`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. - [`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. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/expo/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`BillingDiscountRedemption`](https://clerk.com/docs/expo/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [SSO Types](https://clerk.com/docs/expo/reference/types/sso.md): Types related to SSO providers and strategies. - [`BillingSubscriptionResource`](https://clerk.com/docs/expo/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to 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. - [`TOTPResource`](https://clerk.com/docs/expo/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`BackupCodeResource`](https://clerk.com/docs/expo/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`ClerkAPIError`](https://clerk.com/docs/expo/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`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. - [`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. - [`BillingPayerCredit`](https://clerk.com/docs/expo/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`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. - [`ClerkAPIResponseError`](https://clerk.com/docs/expo/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`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. - [`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. - [`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. - [`BillingPayerResource`](https://clerk.com/docs/expo/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`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. - [`ClerkError`](https://clerk.com/docs/expo/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`BillingCreditBalanceResource`](https://clerk.com/docs/expo/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`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. - [`BillingDiscounts`](https://clerk.com/docs/expo/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`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 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. - [Configure passkeys for Expo](https://clerk.com/docs/expo/reference/passkeys.md): Learn how to configure passkeys for your Expo application. - [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/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. - [`` 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. - [`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. - [`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. - [`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. - [`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. - [`useBiometricCredentials()`](https://clerk.com/docs/expo/reference/native-hooks/use-biometric-credentials.md): Clerk's useBiometricCredentials() hook provides biometric credential enrollment and sign-in for Expo apps. - [`useSSO()`](https://clerk.com/docs/expo/reference/native-hooks/use-sso.md): Clerk's useSSO() hook is used to create a new SSO 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. - [`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. ### Android - [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. - [Android Quickstart](https://clerk.com/docs/android/getting-started/quickstart.md): Add authentication and user management to your Android app with Clerk. - [Clerk](https://clerk.com/docs/android/reference/native-mobile/clerk.md): Use Clerk in your Android app with global access and reactive state flows. - [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. - [Welcome](https://clerk.com/docs/android/reference/native-mobile/overview.md): Add native authentication and user management to your app. - [Install the SDK](https://clerk.com/docs/android/reference/native-mobile/installation.md): Install the Clerk Android SDK with Gradle. - [Configure the SDK](https://clerk.com/docs/android/reference/native-mobile/configuration.md): Configure the Clerk Android SDK with your publishable key. - [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. - [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. - [User management](https://clerk.com/docs/android/reference/native-mobile/user.md): Manage the signed-in user 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. - [`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. - [`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. - [`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. - [`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. - [Configure passkeys for Android](https://clerk.com/docs/android/reference/passkeys.md): Learn how to configure passkeys for your Android application. ### iOS - [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. - [`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. - [iOS Quickstart](https://clerk.com/docs/ios/getting-started/quickstart.md): Add authentication and user management to your iOS app with Clerk. - [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. - [`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. - [`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. - [`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. - [Configure the SDK](https://clerk.com/docs/ios/reference/native-mobile/configuration.md): Configure the Clerk iOS SDK with your publishable key and options. - [Welcome](https://clerk.com/docs/ios/reference/native-mobile/overview.md): Add native authentication and user management to your app. - [Share sessions across apps](https://clerk.com/docs/ios/reference/native-mobile/shared-session-sync.md): Keep Clerk sessions synchronized across trusted iOS apps on the same device. - [Install the SDK](https://clerk.com/docs/ios/reference/native-mobile/installation.md): Install the Clerk iOS SDK with Swift Package Manager. - [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. - [User management](https://clerk.com/docs/ios/reference/native-mobile/user.md): Manage the signed-in user 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. - [Clerk](https://clerk.com/docs/ios/reference/native-mobile/clerk.md): Use Clerk in your iOS app with shared access and SwiftUI integration. - [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. - [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 - [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. - [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. - [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. - [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. - [`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. - [`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. - [`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. - [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. - [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. - [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. - [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/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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/expressjs/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [`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. - [`requireAuth()`](https://clerk.com/docs/expressjs/reference/require-auth.md): The requireAuth() middleware protects your routes by redirecting unauthenticated users to the homepage. - [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. - [`getAuth()`](https://clerk.com/docs/expressjs/reference/get-auth.md): The getAuth() helper retrieves authentication state from the request object. ### Fastify - [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. - [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. - [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. - [`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. - [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. - [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. - [`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. - [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 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. - [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 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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/fastify/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [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 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. - [`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. - [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. - [`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 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. - [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. - [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. - [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. - [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. - [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. - [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. - [`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. - [`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. - [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. - [`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. - [`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. - [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. - [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. - [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. - [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. - [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. - [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. - [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 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 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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/react-router/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [`` component](https://clerk.com/docs/react-router/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` 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 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/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/authentication/sign-up.md): Clerk's component renders a UI for signing up users. - [`` 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/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/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/sign-in.md): Clerk's component renders a UI for signing in users. - [`` 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-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/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/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-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/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-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/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/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/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/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-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/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/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` 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-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-failed.md): The component indicates that the Clerk object has failed to load. - [`` 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-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-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-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-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/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-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/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-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/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/utilities/portal-provider.md): Clerk's component is used to render Clerk floating UI elements inside custom containers instead of document.body. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/react-router/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingPayerResource`](https://clerk.com/docs/react-router/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`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. - [`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. - [`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. - [`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. - [`EnterpriseAccountConnection`](https://clerk.com/docs/react-router/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`ClerkError`](https://clerk.com/docs/react-router/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`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. - [`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. - [`EmailAddress`](https://clerk.com/docs/react-router/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`EnterpriseAccount`](https://clerk.com/docs/react-router/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`EmailLinkError`](https://clerk.com/docs/react-router/reference/types/email-link-error.md): Custom error for email links. - [`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). - [`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. - [`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. - [`IdentificationLinkResource`](https://clerk.com/docs/react-router/reference/types/identification-link-resource.md): An interface representing an identification link. - [`ImageResource`](https://clerk.com/docs/react-router/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`OAuthConsentInfo`](https://clerk.com/docs/react-router/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`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. - [Metadata](https://clerk.com/docs/react-router/reference/types/metadata.md): Types related to metadata. - [`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. - [`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. - [`FeatureResource`](https://clerk.com/docs/react-router/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`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. - [`OrganizationDomainResource`](https://clerk.com/docs/react-router/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationCreationDefaults`](https://clerk.com/docs/react-router/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`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. - [`BillingPaymentTotals`](https://clerk.com/docs/react-router/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`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. - [`OrganizationInvitation`](https://clerk.com/docs/react-router/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`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. - [`SessionVerification`](https://clerk.com/docs/react-router/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`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. - [`OrganizationSuggestion`](https://clerk.com/docs/react-router/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [Clerk types](https://clerk.com/docs/react-router/reference/types/overview.md): Explore the different types available for typing your application. - [`RedirectOptions`](https://clerk.com/docs/react-router/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`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. - [`PublicUserData`](https://clerk.com/docs/react-router/reference/types/public-user-data.md): Information about that user that's publicly available. - [SSO Types](https://clerk.com/docs/react-router/reference/types/sso.md): Types related to SSO providers and strategies. - [`PermissionResource`](https://clerk.com/docs/react-router/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`RoleResource`](https://clerk.com/docs/react-router/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`TOTPResource`](https://clerk.com/docs/react-router/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`ProtectCheckResource`](https://clerk.com/docs/react-router/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`SignUpRedirectOptions`](https://clerk.com/docs/react-router/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`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. - [`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. - [`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. - [`PasskeyResource`](https://clerk.com/docs/react-router/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`SessionTask`](https://clerk.com/docs/react-router/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`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. - [`SignInRedirectOptions`](https://clerk.com/docs/react-router/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`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. - [`SetActiveParams`](https://clerk.com/docs/react-router/reference/types/set-active-params.md): The parameters for the setActive() method. - [`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. - [`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. - [`SessionStatus`](https://clerk.com/docs/react-router/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingMoneyAmount`](https://clerk.com/docs/react-router/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/react-router/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/react-router/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`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. - [`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. - [`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. - [`BillingDiscounts`](https://clerk.com/docs/react-router/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingSubscriptionResource`](https://clerk.com/docs/react-router/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`ClerkAPIError`](https://clerk.com/docs/react-router/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`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. - [`BillingPlanResource`](https://clerk.com/docs/react-router/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`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. - [`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. - [`BillingCredits`](https://clerk.com/docs/react-router/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BackupCodeResource`](https://clerk.com/docs/react-router/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`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. - [`BillingDiscountRedemption`](https://clerk.com/docs/react-router/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied 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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. ### 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. - [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. - [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. - [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. - [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. - [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. - [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/organization-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. - [`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. - [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. - [`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. - [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. - [`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. - [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. - [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 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. - [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 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. - [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. - [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. - [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. - [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/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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/tanstack-react-start/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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 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. - [`` 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 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/api-keys.md): Clerk's component renders a UI to manage API keys. - [`` 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. - [`` 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/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/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/sign-in.md): Clerk's component renders a UI for signing in users. - [`` 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/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/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/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/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/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-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-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-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/control/clerk-degraded.md): The component indicates that Clerk is partially operational. - [`` 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/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-failed.md): The component indicates that the Clerk object has failed to load. - [`` 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/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/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-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-out-button.md): The component is a button that signs a user out. - [``](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-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/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/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/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/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/user/user-avatar.md): Clerk's component is used to render the familiar user avatar on its own. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [SSO Types](https://clerk.com/docs/tanstack-react-start/reference/types/sso.md): Types related to SSO providers and strategies. - [`TOTPResource`](https://clerk.com/docs/tanstack-react-start/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`SessionVerification`](https://clerk.com/docs/tanstack-react-start/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SetActiveParams`](https://clerk.com/docs/tanstack-react-start/reference/types/set-active-params.md): The parameters for the setActive() method. - [`SessionTask`](https://clerk.com/docs/tanstack-react-start/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`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. - [`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. - [`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. - [`RedirectOptions`](https://clerk.com/docs/tanstack-react-start/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`PublicUserData`](https://clerk.com/docs/tanstack-react-start/reference/types/public-user-data.md): Information about that user that's publicly available. - [`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. - [`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. - [`OrganizationCreationDefaults`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`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. - [`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. - [`OrganizationInvitation`](https://clerk.com/docs/tanstack-react-start/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`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. - [`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. - [`PasskeyResource`](https://clerk.com/docs/tanstack-react-start/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`OAuthConsentInfo`](https://clerk.com/docs/tanstack-react-start/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`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. - [`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. - [`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. - [Metadata](https://clerk.com/docs/tanstack-react-start/reference/types/metadata.md): Types related to metadata. - [`ImageResource`](https://clerk.com/docs/tanstack-react-start/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`IdentificationLinkResource`](https://clerk.com/docs/tanstack-react-start/reference/types/identification-link-resource.md): An interface representing an identification link. - [`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. - [`FeatureResource`](https://clerk.com/docs/tanstack-react-start/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`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). - [`EmailAddress`](https://clerk.com/docs/tanstack-react-start/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`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. - [`EnterpriseAccount`](https://clerk.com/docs/tanstack-react-start/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingSubscriptionResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingDiscounts`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingMoneyAmount`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BackupCodeResource`](https://clerk.com/docs/tanstack-react-start/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`BillingPaymentTotals`](https://clerk.com/docs/tanstack-react-start/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a 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. - [`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. - [`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. - [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 - [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. - [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. - [`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. - [`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. - [`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. - [`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. - [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. - [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. - [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 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/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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/go/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [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. - [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. - [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. - [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. - [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. - [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 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 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 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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/astro/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [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. - [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. - [`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. - [`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. - [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. - [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. - [`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. - [`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. - [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. - [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. - [AI prompts](https://clerk.com/docs/astro/guides/ai/prompts.md): Curated prompts for working with Clerk using AI-powered IDE tools like Cursor, GitHub Copilot, and Claude. - [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. - [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. - [`` 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/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/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-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/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/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/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/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/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/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-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/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-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-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/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/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-in-button.md): The component is a button that links to the sign-in page or displays the sign-in modal. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/astro/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`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. - [`ClerkAPIResponseError`](https://clerk.com/docs/astro/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`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. - [`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. - [`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. - [`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. - [`SessionStatus`](https://clerk.com/docs/astro/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`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. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/astro/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`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. - [`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. - [`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. - [`RoleResource`](https://clerk.com/docs/astro/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`TOTPResource`](https://clerk.com/docs/astro/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`ClerkError`](https://clerk.com/docs/astro/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`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. - [`ClerkAPIError`](https://clerk.com/docs/astro/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`BillingStatementGroup`](https://clerk.com/docs/astro/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [SSO Types](https://clerk.com/docs/astro/reference/types/sso.md): Types related to SSO providers and strategies. - [`PublicUserData`](https://clerk.com/docs/astro/reference/types/public-user-data.md): Information about that user that's publicly available. - [`BillingCreditBalanceResource`](https://clerk.com/docs/astro/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/astro/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`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. - [`ProtectCheckResource`](https://clerk.com/docs/astro/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`BillingSubscriptionResource`](https://clerk.com/docs/astro/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`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. - [`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. - [`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. - [`PasskeyResource`](https://clerk.com/docs/astro/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`BillingMoneyAmount`](https://clerk.com/docs/astro/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`SignInRedirectOptions`](https://clerk.com/docs/astro/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`BillingStatementResource`](https://clerk.com/docs/astro/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/astro/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`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. - [`BillingPlanResource`](https://clerk.com/docs/astro/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [Clerk types](https://clerk.com/docs/astro/reference/types/overview.md): Explore the different types available for typing your application. - [`SignUpRedirectOptions`](https://clerk.com/docs/astro/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`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. - [`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. - [`OrganizationSuggestion`](https://clerk.com/docs/astro/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`BillingProrationDiscount`](https://clerk.com/docs/astro/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`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. - [`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. - [`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. - [`BillingPayerCredit`](https://clerk.com/docs/astro/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`OrganizationInvitation`](https://clerk.com/docs/astro/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`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. - [`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. - [`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. - [`BillingPayerResource`](https://clerk.com/docs/astro/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`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. - [`OrganizationDomainResource`](https://clerk.com/docs/astro/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`BillingDiscountRedemption`](https://clerk.com/docs/astro/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/astro/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`BillingPaymentResource`](https://clerk.com/docs/astro/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`OrganizationCreationDefaults`](https://clerk.com/docs/astro/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`BillingPaymentTotals`](https://clerk.com/docs/astro/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`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. - [`BillingPaymentMethodResource`](https://clerk.com/docs/astro/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingCredits`](https://clerk.com/docs/astro/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`OrganizationCustomPermissionKey`](https://clerk.com/docs/astro/reference/types/organization-custom-permission-key.md): A type that represents a user's Permission in an Organization. - [`BackupCodeResource`](https://clerk.com/docs/astro/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`OAuthConsentInfo`](https://clerk.com/docs/astro/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`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. - [`BillingDiscounts`](https://clerk.com/docs/astro/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`OAuthApplication`](https://clerk.com/docs/astro/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [Metadata](https://clerk.com/docs/astro/reference/types/metadata.md): Types related to metadata. - [`ImageResource`](https://clerk.com/docs/astro/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`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. - [`IdentificationLinkResource`](https://clerk.com/docs/astro/reference/types/identification-link-resource.md): An interface representing an identification link. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/astro/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`FeatureResource`](https://clerk.com/docs/astro/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`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). - [`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. - [`EnterpriseAccountConnection`](https://clerk.com/docs/astro/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`EmailLinkError`](https://clerk.com/docs/astro/reference/types/email-link-error.md): Custom error for email links. - [`EnterpriseAccount`](https://clerk.com/docs/astro/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`EmailAddress`](https://clerk.com/docs/astro/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`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. - [`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. - [`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. - [`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. - [`SetActiveParams`](https://clerk.com/docs/astro/reference/types/set-active-params.md): The parameters for the setActive() method. - [`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. - [`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. - [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. - [`updateClerkOptions()`](https://clerk.com/docs/astro/reference/update-clerk-options.md): The updateClerkOptions() function allows you to update Clerk's options at runtime. - [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 - [`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. - [`$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. - [`$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. - [`$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. - [`$organizationStore`](https://clerk.com/docs/astro/reference/client-side-helpers/organization-store.md): Clerk's $organizationStore store retrieves the currently active Organization. - [`$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. - [`$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. - [`$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. ### Nuxt - [Nuxt Quickstart](https://clerk.com/docs/nuxt/getting-started/quickstart.md): Add authentication and user management to your Nuxt app with Clerk. - [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. - [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. - [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. - [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. - [`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. - [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. - [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. - [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. - [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/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/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. - [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 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 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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/nuxt/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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. - [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. - [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. - [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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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/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/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/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/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/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/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/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-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-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/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/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/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. - [`` 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-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/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/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. - [`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. - [`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. - [`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. - [`Billing` object](https://clerk.com/docs/nuxt/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`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. - [`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. - [`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. - [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. - [`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. - [`ClerkError`](https://clerk.com/docs/nuxt/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`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. - [`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. - [`ClerkAPIResponseError`](https://clerk.com/docs/nuxt/reference/types/clerk-api-response-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/nuxt/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`BackupCodeResource`](https://clerk.com/docs/nuxt/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`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. - [`BillingCredits`](https://clerk.com/docs/nuxt/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`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. - [`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. - [`BillingCreditBalanceResource`](https://clerk.com/docs/nuxt/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`OAuthApplication`](https://clerk.com/docs/nuxt/reference/types/oauth-application.md): The OAuthApplication object provides helpers for building custom OAuth consent flows in Clerk. - [`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. - [`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. - [Metadata](https://clerk.com/docs/nuxt/reference/types/metadata.md): Types related to metadata. - [`OAuthConsentInfo`](https://clerk.com/docs/nuxt/reference/types/oauth-consent-info.md): An interface representing OAuth consent information. - [`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. - [`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. - [`EmailAddress`](https://clerk.com/docs/nuxt/reference/types/email-address.md): The EmailAddress object is a model around an email address. - [`EmailLinkError`](https://clerk.com/docs/nuxt/reference/types/email-link-error.md): Custom error for email links. - [`EnterpriseAccountConnection`](https://clerk.com/docs/nuxt/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`EnterpriseAccount`](https://clerk.com/docs/nuxt/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [`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). - [`FeatureResource`](https://clerk.com/docs/nuxt/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/nuxt/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`IdentificationLinkResource`](https://clerk.com/docs/nuxt/reference/types/identification-link-resource.md): An interface representing an identification link. - [`ImageResource`](https://clerk.com/docs/nuxt/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`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. - [`BillingDiscounts`](https://clerk.com/docs/nuxt/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingMoneyAmount`](https://clerk.com/docs/nuxt/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BillingPlanResource`](https://clerk.com/docs/nuxt/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`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. - [`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. - [`BillingDiscountRedemption`](https://clerk.com/docs/nuxt/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BillingPaymentTotals`](https://clerk.com/docs/nuxt/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`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. - [`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. - [`BillingPaymentMethodResource`](https://clerk.com/docs/nuxt/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`BillingProrationDiscount`](https://clerk.com/docs/nuxt/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`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. - [`BillingPayerResource`](https://clerk.com/docs/nuxt/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`BillingStatementGroup`](https://clerk.com/docs/nuxt/reference/types/billing-statement-group.md): The BillingStatementGroup type represents a group of payment items within a statement. - [`BillingPaymentResource`](https://clerk.com/docs/nuxt/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or Organization. - [`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. - [`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. - [`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. - [`BillingPayerCredit`](https://clerk.com/docs/nuxt/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingStatementResource`](https://clerk.com/docs/nuxt/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingSubscriptionResource`](https://clerk.com/docs/nuxt/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`ClerkAPIError`](https://clerk.com/docs/nuxt/reference/types/clerk-api-error.md): An interface that represents an error returned by the Clerk API. - [`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. - [`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. - [`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. - [`SessionVerification`](https://clerk.com/docs/nuxt/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`SessionTask`](https://clerk.com/docs/nuxt/reference/types/session-task.md): The SessionTask interface represents the current pending task of a 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. - [`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. - [`OrganizationCustomRoleKey`](https://clerk.com/docs/nuxt/reference/types/organization-custom-role-key.md): A type that represents the user's Role in an Organization. - [`ProtectCheckResource`](https://clerk.com/docs/nuxt/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [`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. - [`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. - [`PublicUserData`](https://clerk.com/docs/nuxt/reference/types/public-user-data.md): Information about that user that's publicly available. - [`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. - [`RedirectOptions`](https://clerk.com/docs/nuxt/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`OrganizationSuggestion`](https://clerk.com/docs/nuxt/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`OrganizationDomainResource`](https://clerk.com/docs/nuxt/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`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. - [`TOTPResource`](https://clerk.com/docs/nuxt/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`OrganizationInvitation`](https://clerk.com/docs/nuxt/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`SetActiveParams`](https://clerk.com/docs/nuxt/reference/types/set-active-params.md): The parameters for the setActive() method. - [`OrganizationCreationDefaults`](https://clerk.com/docs/nuxt/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [Clerk types](https://clerk.com/docs/nuxt/reference/types/overview.md): Explore the different types available for typing your application. - [`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. - [`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. - [`PasskeyResource`](https://clerk.com/docs/nuxt/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`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. - [`SessionStatus`](https://clerk.com/docs/nuxt/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`RoleResource`](https://clerk.com/docs/nuxt/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`SignInRedirectOptions`](https://clerk.com/docs/nuxt/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`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. - [`PermissionResource`](https://clerk.com/docs/nuxt/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`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. - [`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. - [`SignUpRedirectOptions`](https://clerk.com/docs/nuxt/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [SSO Types](https://clerk.com/docs/nuxt/reference/types/sso.md): Types related to SSO providers and strategies. - [`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. - [`@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. - [clerkMiddleware() | Nuxt](https://clerk.com/docs/nuxt/reference/clerk-middleware.md): The clerkMiddleware() helper integrates Clerk authentication into your Nuxt application through server middleware. ### Vue - [Vue Quickstart](https://clerk.com/docs/vue/getting-started/quickstart.md): Add authentication and user management to your Vue app with Clerk. - [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. - [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. - [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 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. - [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. - [`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. - [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. - [`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. - [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. - [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 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. - [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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/vue/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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 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. - [`` component](https://clerk.com/docs/vue/reference/components/api-keys.md): Clerk's component renders a UI to manage API keys. - [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/authentication/sign-up.md): Clerk's component renders a UI for signing up 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/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/authentication/oauth-consent.md): Clerk's component renders an OAuth consent screen for authenticated users. - [`` 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/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/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/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/plan-details-button.md): Clerk's component renders a button that opens the Plan details drawer. - [`` 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/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/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/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/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/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/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/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/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-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-out-button.md): The component is a button that signs a user out. - [`` 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/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/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/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/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. - [`` 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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [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. - [`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. - [`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. - [`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. - [`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. - [`Billing` object](https://clerk.com/docs/vue/reference/objects/billing.md): The Billing object provides methods for managing billing for a user or Organization. - [`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. - [`RoleResource`](https://clerk.com/docs/vue/reference/types/role-resource.md): An interface that represents a Role in an Organization. - [`SessionTask`](https://clerk.com/docs/vue/reference/types/session-task.md): The SessionTask interface represents the current pending task of a session. - [`SetActiveParams`](https://clerk.com/docs/vue/reference/types/set-active-params.md): The parameters for the setActive() method. - [`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. - [`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. - [`SessionVerification`](https://clerk.com/docs/vue/reference/types/session-verification.md): The SessionVerification interface represents the state of a session reverification process. - [`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. - [`SignInRedirectOptions`](https://clerk.com/docs/vue/reference/types/sign-in-redirect-options.md): An interface that provides options for sign-in redirect methods. - [`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. - [`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. - [`SignUpRedirectOptions`](https://clerk.com/docs/vue/reference/types/sign-up-redirect-options.md): An interface that provides options for sign-up redirect methods. - [`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. - [`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. - [SSO Types](https://clerk.com/docs/vue/reference/types/sso.md): Types related to SSO providers and strategies. - [`TOTPResource`](https://clerk.com/docs/vue/reference/types/totp-resource.md): An interface that represents a TOTP secret. - [`PublicUserData`](https://clerk.com/docs/vue/reference/types/public-user-data.md): Information about that user that's publicly available. - [`SessionStatus`](https://clerk.com/docs/vue/reference/types/session-status.md): The SessionStatus enum is used to indicate the status of a session. - [`RedirectOptions`](https://clerk.com/docs/vue/reference/types/redirect-options.md): An interface that provides options for a range of redirect methods. - [`ProtectCheckResource`](https://clerk.com/docs/vue/reference/types/protect-check-resource.md): An interface that represents a pending Clerk Protect mid-flow challenge. - [Clerk types](https://clerk.com/docs/vue/reference/types/overview.md): Explore the different types available for typing your application. - [`OrganizationSuggestion`](https://clerk.com/docs/vue/reference/types/organization-suggestion.md): An interface representing an Organization suggestion. - [`PasskeyResource`](https://clerk.com/docs/vue/reference/types/passkey-resource.md): An interface that describes a passkey associated with a user response. - [`PermissionResource`](https://clerk.com/docs/vue/reference/types/permission-resource.md): An interface that represents a Permission in an Organization. - [`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. - [`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. - [Metadata](https://clerk.com/docs/vue/reference/types/metadata.md): Types related to metadata. - [`HandleOAuthCallbackParams`](https://clerk.com/docs/vue/reference/types/handle-o-auth-callback-params.md): A type representing the parameters for an OAuth-related callback. - [`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. - [`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. - [`OrganizationCreationDefaults`](https://clerk.com/docs/vue/reference/types/organization-creation-defaults.md): An interface representing an Organization creation defaults. - [`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. - [`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. - [`OrganizationDomainResource`](https://clerk.com/docs/vue/reference/types/organization-domain-resource.md): The OrganizationDomainResource object is the model around an Organization domain. - [`OrganizationInvitation`](https://clerk.com/docs/vue/reference/types/organization-invitation.md): The OrganizationInvitation object is the model around an Organization invitation. - [`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. - [`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. - [`ImageResource`](https://clerk.com/docs/vue/reference/types/image-resource.md): The ImageResource type represents an image resource. - [`EnterpriseAccount`](https://clerk.com/docs/vue/reference/types/enterprise-account.md): An interface that represents an enterprise account. - [`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. - [`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). - [`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. - [`IdentificationLinkResource`](https://clerk.com/docs/vue/reference/types/identification-link-resource.md): An interface representing an identification link. - [`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. - [`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. - [`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. - [`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. - [`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. - [`BillingCheckoutResource`](https://clerk.com/docs/vue/reference/types/billing-checkout-resource.md): The BillingCheckoutResource type represents information about a checkout session. - [`EnterpriseAccountConnection`](https://clerk.com/docs/vue/reference/types/enterprise-account-connection.md): An interface that represents an enterprise account connection. - [`FeatureResource`](https://clerk.com/docs/vue/reference/types/feature-resource.md): The FeatureResource type represents a Feature of a Subscription Plan. - [`BackupCodeResource`](https://clerk.com/docs/vue/reference/types/backup-code-resource.md): An interface that represents a backup code. - [`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. - [`BillingDiscountRedemption`](https://clerk.com/docs/vue/reference/types/billing-discount-redemption.md): The BillingDiscountRedemption type represents a discount applied to a subscription item. - [`BillingPayerResource`](https://clerk.com/docs/vue/reference/types/billing-payer-resource.md): The BillingPayerResource class represents a payer associated with a Billing Subscription. - [`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. - [`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. - [`BillingCredits`](https://clerk.com/docs/vue/reference/types/billing-credits.md): The BillingCredits type represents the credits applied to a checkout or payment. - [`BillingProrationDiscount`](https://clerk.com/docs/vue/reference/types/billing-proration-discount.md): The BillingProrationDiscount type represents a prorated discount applied during a billing cycle. - [`BillingPaymentResource`](https://clerk.com/docs/vue/reference/types/billing-payment-resource.md): The BillingPaymentResource type represents a payment attempt for a user or 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. - [`BillingPayerCredit`](https://clerk.com/docs/vue/reference/types/billing-payer-credit.md): The BillingPayerCredit type represents the available and applied credit for a payer. - [`BillingStatementResource`](https://clerk.com/docs/vue/reference/types/billing-statement-resource.md): The BillingStatementResource type represents a billing statement for a user or Organization. - [`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. - [`BillingPaymentMethodResource`](https://clerk.com/docs/vue/reference/types/billing-payment-method-resource.md): The BillingPaymentMethodResource type represents a payment source for a checkout session. - [`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. - [`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. - [`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. - [`BillingMoneyAmount`](https://clerk.com/docs/vue/reference/types/billing-money-amount.md): The BillingMoneyAmount type represents a monetary value with currency information. - [`BillingSubscriptionItemResource`](https://clerk.com/docs/vue/reference/types/billing-subscription-item-resource.md): The BillingSubscriptionItemResource type represents an item in a Subscription. - [`BillingPaymentTotals`](https://clerk.com/docs/vue/reference/types/billing-payment-totals.md): The BillingPaymentTotals type represents the cost breakdown for a payment. - [`BillingCreditBalanceResource`](https://clerk.com/docs/vue/reference/types/billing-credit-balance-resource.md): An interface that represents a credit balance for the current payer. - [`BillingSubscriptionItemSeats`](https://clerk.com/docs/vue/reference/types/billing-subscription-item-seats.md): The BillingSubscriptionItemSeats type represents seat entitlements attached to a subscription item. - [`BillingDiscounts`](https://clerk.com/docs/vue/reference/types/billing-discounts.md): The BillingDiscounts type represents discounts applied to a checkout or payment. - [`BillingSubscriptionResource`](https://clerk.com/docs/vue/reference/types/billing-subscription-resource.md): The BillingSubscriptionResource type represents a Subscription to a Plan. - [`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. - [`BillingPlanResource`](https://clerk.com/docs/vue/reference/types/billing-plan-resource.md): The BillingPlanResource type represents a Subscription Plan with its details. - [`BillingSubscriptionNextPayment`](https://clerk.com/docs/vue/reference/types/billing-subscription-next-payment.md): The BillingSubscriptionNextPayment type represents the upcoming payment for a subscription. - [`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. - [`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. - [`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. - [`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. - [`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. - [`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. - [`ClerkError`](https://clerk.com/docs/vue/reference/types/clerk-error.md): Type used for all errors generated by the Clerk SDK. - [`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. - [`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. - [`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. - [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. - [`clerkPlugin`](https://clerk.com/docs/vue/reference/clerk-plugin.md): The clerkPlugin provides session and user context to Clerk's composables and components. - [`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. - [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. - [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. - [Add bot protection to your custom sign-up flow](https://clerk.com/docs/ruby/guides/development/custom-flows/authentication/bot-sign-up-protection.md): Learn how to add Clerk's bot protection to your custom sign-up flow. - [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 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. - [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 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. - [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. - [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. - [`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. - [`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. - [`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. - [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. - [`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. - [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 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. - [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. - [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.