# Key Clerk objects

Clerk's SDKs are built on top of many key objects, like the `Clerk`, `User`, and `Session` objects. As you're building your application, you'll likely interact with these objects, either directly or through hooks and helpers.

## `Clerk`

The [Clerk](https://clerk.com/docs/expo/reference/objects/clerk.md) class is the main entry point for the Clerk JavaScript SDK. All other objects are accessible from the `Clerk` object.

## `Client`

A client represents the current device or software accessing an application such as your web browser, native application, or Chrome Extension. It is represented by the [Client](https://clerk.com/docs/expo/reference/objects/client.md) object.

## `Session`

A session is a secure representation of the authentication state of the current user. Each client can hold multiple sessions on the same device. It is represented by the [Session](https://clerk.com/docs/expo/reference/objects/session.md) object.

## `User`

The [User](https://clerk.com/docs/expo/reference/objects/user.md) object represents the current user of the session. It holds all the basic user information such as the user's name, email addresses, and phone numbers, and including their public, private, and unsafe metadata.

## `SignIn`

The [SignIn](https://clerk.com/docs/expo/reference/objects/sign-in.md) object holds the state of the current sign-in and provides helper methods to navigate and complete the sign-in process. It is used to manage the sign-in lifecycle, including the first factor and second factor verification, and the creation of a new session.

## `SignInFuture`

The [SignInFuture](https://clerk.com/docs/expo/reference/objects/sign-in-future.md) object is the recommended version of the `SignIn` object, with an improved API for building custom sign-in flows.

## `SignUp`

The [SignUp](https://clerk.com/docs/expo/reference/objects/sign-up.md) object holds the state of the current sign-up and provides helper methods to navigate and complete the sign-up process. Once a sign-up is complete, a new user is created.

## `SignUpFuture`

The [SignUpFuture](https://clerk.com/docs/expo/reference/objects/sign-up-future.md) object is the recommended version of the `SignUp` object, with an improved API for building custom sign-up flows.

## `Organization`

Organizations are a flexible and scalable way to manage users and their access to resources within your Clerk application. With Organizations, you can assign specific Roles and Permissions to users, making them useful for managing projects, coordinating teams, or facilitating partnerships. Users can belong to many Organizations. One of them will be the Active Organization of the session. It is represented by the [Organization](https://clerk.com/docs/expo/reference/objects/organization.md) object. To learn about Organizations, see the [dedicated guide](https://clerk.com/docs/guides/organizations/overview.md?sdk=expo).

## `APIKeys`

The [APIKeys](https://clerk.com/docs/expo/reference/objects/api-keys.md) object provides methods for managing API keys that allow your application's users to grant third-party services programmatic access to your application's API endpoints on their behalf. API keys are long-lived, opaque tokens that can be instantly revoked.

## `Billing`

The [Billing](https://clerk.com/docs/expo/reference/objects/billing.md) object provides methods for managing billing for a user or Organization. It allows you to retrieve Billing Plans, payment attempts, and manage Subscriptions.

---

## Sitemap

[Overview of all docs pages](https://clerk.com/docs/llms.txt)
