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

# API Reference Overview

> The Verlon API is OpenAI-format — call it with the SDK you already have

Verlon's API speaks the formats the ecosystem already standardized on. There is no proprietary request shape to learn: point the official OpenAI SDK (or Anthropic, Mistral, Gemini) at Verlon and you have the full API.

## Base URL

```
https://api.verlon.ai
```

All routes authenticate with your Verlon API key as a Bearer token (`Authorization: Bearer sk-vrln-...`), except where noted.

## Inference

| Route                                              | Format                     | Official SDK                                      |
| -------------------------------------------------- | -------------------------- | ------------------------------------------------- |
| `POST /v1/chat/completions`                        | OpenAI Chat Completions    | `openai` (`baseURL: .../v1`)                      |
| `POST /v1/responses`                               | OpenAI Responses           | `openai`                                          |
| `POST /v1/embeddings`                              | OpenAI Embeddings          | `openai`                                          |
| `POST /v1/images/generations`                      | OpenAI Images              | `openai`                                          |
| `POST /v1/audio/speech`                            | OpenAI Speech              | `openai`                                          |
| `POST /v1/messages`                                | Anthropic Messages         | `@anthropic-ai/sdk` (`baseURL: ...`, no `/v1`)    |
| `POST /mistral/v1/chat/completions`                | Mistral Chat               | `@mistralai/mistralai` (`serverURL: .../mistral`) |
| `POST /mistral/v1/fim/completions`                 | Mistral FIM (Codestral)    | `@mistralai/mistralai`                            |
| `POST /v1beta/models/{model}:generateContent`      | Gemini                     | `@google/genai`                                   |
| `POST /v1/videos` (+ retrieve/content/list/delete) | OpenAI Videos (async jobs) | `openai`                                          |
| `POST /mistral/v1/ocr`                             | Mistral OCR                | `@mistralai/mistralai` (`serverURL: .../mistral`) |

Address your gate on any inference route in one of three ways: a `gateId` body field, an `X-Verlon-Gate-Id` header, or the gate UUID in the `model` string — optionally `<gate-uuid>/<task>` to attribute a named task. With a real model name and no gate reference, Verlon auto-creates a passthrough gate on first use.

Error responses mirror the format you're calling with: OpenAI-shape routes return OpenAI's error envelope, `/v1/messages` returns Anthropic's, so your SDK's error handling works unchanged.

## Platform

Gates, tasks, models, the public registry, usage, traces, and OAuth device flow are documented in the sidebar — generated from the live OpenAPI spec. Dashboard-only and internal routes are not part of the public API surface.

## Guides

<CardGroup cols={2}>
  <Card title="OpenAI SDK Integration" icon="plug" href="/integrations/openai-sdk">
    Setup, streaming, tool calling, migration
  </Card>

  <Card title="Anthropic SDK Integration" icon="plug" href="/integrations/anthropic-sdk">
    The same two-line swap for Claude-first apps
  </Card>

  <Card title="Provider Compatibility" icon="circle-check" href="/provider-compatibility/models">
    Every supported model and route
  </Card>

  <Card title="Agent Tracing" icon="chart-gantt" href="/platform/agent-gates">
    Traces, tasks, and sessions via @verlon-ai/sdk
  </Card>
</CardGroup>
