> ## Documentation Index
> Fetch the complete documentation index at: https://docs.2501.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Providers

> Register the LLM endpoints the engine can call

A **Provider** is an LLM endpoint the engine talks to. One provider can expose many [Models](/0.8/configure/models). Providers are managed in **Command Center → Settings → Providers**, scoped to your tenant.

<Note>
  Viewing the catalog is open to any tenant user; only **tenant-level** users can add, edit, or delete providers. See [Users & Organizations](/0.8/deployment/users-organizations).
</Note>

<Frame caption="Settings → Providers: each row is an endpoint the engine can call.">
  <img src="https://mintcdn.com/2501/kr0HtinaCJPsc_vr/images/settings_providers.png?fit=max&auto=format&n=kr0HtinaCJPsc_vr&q=85&s=52709fa8de84a0debac5414eed6ee358" alt="Providers catalog" width="2880" height="1800" data-path="images/settings_providers.png" />
</Frame>

## Fields

| Field                | Required                    | Description                                                                                                                                                                                                                                                                                     |
| -------------------- | --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Key**              | Yes                         | Short identifier, unique within your tenant. Example: `openai`, `cloudtemple`                                                                                                                                                                                                                   |
| **Provider type**    | Yes                         | Integration used to reach the provider — see [Provider types](#provider-types)                                                                                                                                                                                                                  |
| **Base URL**         | Compatible & Azure types    | Endpoint root. Required for compatible/Azure types; leave empty for native types                                                                                                                                                                                                                |
| **API Key Var Name** | When auth is required       | Name 2501 resolves to find the secret — see [API key resolution](#api-key-resolution)                                                                                                                                                                                                           |
| **Auth Header Name** | Compatible types (optional) | Override the HTTP header used to send the API key. Defaults to each type's native header — `Authorization` (Bearer) for `openai-compatible`, `x-api-key` for `anthropic-compatible`. Set to e.g. `api-key` for Azure API Management or other proxy gateways that require a non-standard header. |
| **Organization**     | No                          | Scope this provider to a specific organization. When set, only agents in that organization use this provider and its credentials. Leave unset to make the provider available tenant-wide.                                                                                                       |
| **Requires auth**    | —                           | On by default. Turn off for endpoints with no key (e.g. self-hosted on a private network)                                                                                                                                                                                                       |
| **Enabled**          | —                           | Disabling makes all of its models unavailable without deleting anything                                                                                                                                                                                                                         |

## Provider types

| Family         | Types                                                                              | Notes                                                   |
| -------------- | ---------------------------------------------------------------------------------- | ------------------------------------------------------- |
| **Native**     | `openai`, `anthropic`, `mistral`, `deepseek`, `cohere`, `openrouter`, `togetherai` | Built-in integrations. No endpoint URL needed.          |
| **Compatible** | `openai-compatible`, `anthropic-compatible`, `azure`                               | Point at any API-compatible endpoint via a **Base URL** |

Use a **compatible** type to register a self-hosted model server (vLLM, Ollama, LM Studio) or any vendor exposing an OpenAI- or Anthropic-style API.

<Note>
  Adding a new endpoint of an existing type is pure configuration. Adding a brand-new *type* (a vendor with its own API shape) requires a 2501 release — contact your Account Executive.
</Note>

## API key resolution

The API key is resolved at runtime in two steps:

1. 2501 looks for a [Credential](/0.8/configure/credentials) matching the **API Key Var Name** — for an **org-scoped** provider, one scoped to that organization first, then a tenant-wide one; for a **tenant-wide** provider, only a tenant-wide credential.
2. If none exists, it falls back to an environment variable of the same name on the engine.

This lets you rotate keys in the UI without touching the engine environment. When you save the provider, the dialog checks that the key resolves and warns if it cannot be found.

<Warning>
  For a **tenant-wide** provider (no Organization set), the matching Credential must be **tenant-scoped** — a credential restricted to a specific organization will not be found. For an **org-scoped** provider, the credential may be scoped to that organization or tenant-wide.
</Warning>

<Note>
  Providers that do not need a key (e.g. a self-hosted model on a private network) can turn off **Requires auth**.
</Note>

## Azure settings

For the `azure` type, two extra fields appear:

| Field           | Default              | Description                                                     |
| --------------- | -------------------- | --------------------------------------------------------------- |
| **API Version** | `2025-04-01-preview` | The Azure OpenAI API version to target                          |
| **API Mode**    | `chat`               | Which API surface to call: `chat`, `responses`, or `completion` |

Azure API Management (APIM) gateways are supported as the endpoint: set the **Base URL** to your APIM gateway URL to route model traffic through it for centralized policy, rate limiting, and logging.

## Deletion rule

<Note>
  A provider that still has models cannot be deleted. Remove or reassign its models first, or simply disable the provider instead.
</Note>

## Deploy-time seeding

On deploy, the installer seeds providers from API keys detected in the engine environment. After that, management moves to Command Center — no engine restart needed for additions or edits.
