# Authentication Options

Some API requests require authentication using a Bearer token in the request header.

Ellipsis Drive supports multiple authentication mechanisms, depending on your integration type and required access scope.

**Note**: Public and Link-shared layers do [not require authentication](https://docs.ellipsis-drive.com/getting-started/quick-start/5.-data-sharing-and-user-access).

***

### Token types

#### 👤 1. User Token

A User Token grants access to all resources that the authenticated user has permission to access.

It is typically used for user-driven applications or personal integrations.

👉 [Learn how to generate a User Token](https://docs.ellipsis-drive.com/developers/api-v3/account/login-to-your-account)

#### 🔗 2. Access Token

An Access Token provides scoped access to specific folders or layers defined during token creation.

It is commonly used for secure, limited-scope integrations such as client-specific data access or embedded applications.

👉 [Learn more about Access Tokens](https://docs.ellipsis-drive.com/developers/api-v3/account/access-tokens)

#### 🔐 3. OAuth Token

OAuth is the recommended authentication method for production applications.

It allows users to grant your application delegated access to their Ellipsis Drive account without sharing credentials.

OAuth tokens inherit the user’s permissions while enabling secure application-level control.

👉 [Learn how to set up OAuth](https://docs.ellipsis-drive.com/developers/api-v3/oauth)

***

{% hint style="success" %}

#### Token generation options

Tokens can be generated via:

* API
* Python package
* R library

Depending on your implementation preferences and system architecture.
{% endhint %}

***

{% hint style="info" %}

### Quick authentication flow

For simpler integrations, you can redirect users to:

[https://app.ellipsis-drive.com/logIn?referer={your](https://app.ellipsis-drive.com/logIn?referer=%7Byour) app url}

After login, the user is redirected back to your application with a token included in the URL.

This approach is easier to implement, but less secure and less controllable than OAuth.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ellipsis-drive.com/developers/authentication-options.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
