> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.mixlayer.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mixlayer.com/_mcp/server.

# Inference APIs

> Run open-source models through Mixlayer's OpenAI-compatible inference APIs

Mixlayer provides OpenAI-compatible APIs for chat, text generation, responses, embeddings, and model discovery.

See [Choosing an Inference API](/choosing-an-inference-api) for guidance on when to use Chat Completions or Responses.

The base URL is:

```text
https://models.mixlayer.ai/v1
```

> **Info**
>
> **Use your preferred OpenAI-compatible client.** Point it at the base URL
> above, provide your Mixlayer API key, and keep using the methods you already
> know.

## Connect with an OpenAI-compatible client

```python
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["MIXLAYER_API_KEY"],
    base_url="https://models.mixlayer.ai/v1",
)

response = client.chat.completions.create(
    model="qwen/qwen3.5-4b-free",
    messages=[{"role": "user", "content": "Hello!"}],
)

print(response.choices[0].message.content)
```

Existing applications can usually switch to Mixlayer by changing only the API key and base URL. See [Client Libraries](/client-libraries) for TypeScript, Rust, streaming, and curl examples.

## Authentication

Create an API key in the [Mixlayer console](https://console.mixlayer.com/app/api-keys) and provide it as a Bearer token:

```text
Authorization: Bearer $MIXLAYER_API_KEY
```

## Available Inference APIs

| API                                                                                                                                         | Endpoint                    |
| ------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- |
| [Responses](/api-reference/inference-ap-is/responses/responses) Generate model responses from text or typed input items.                    | `POST /v1/responses`        |
| [Responses WebSocket](/api-reference/inference-ap-is/responses/responses-websocket) Run multi-turn Responses API generation over WebSocket. | `GET /v1/responses`         |
| [Chat Completions](/api-reference/inference-ap-is/chat-completions/chat-completions) Generate assistant messages from a conversation.       | `POST /v1/chat/completions` |
| [Embeddings](/api-reference/inference-ap-is/embeddings/embeddings) Create embedding vectors from text or token input.                       | `POST /v1/embeddings`       |

Use a model identifier from the [Models](/models) catalog in inference requests. For a guided first request, follow the [Quickstart](/quickstart).