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

# Integrações de provedores

> Selecione uma integração de provedor do workspace por solicitação com o header x-toqan-integration-<provider>. Informe o id da integração ou o nome de exibição exato.

Envie `x-toqan-integration-<provider>` para escolher qual integração conectada o **AI Gateway** usa para aquele provedor. O valor é o id da integração ou o nome de exibição exato. Um modelo que já fixa uma integração mantém essa integração.

## Visão geral

Cada provedor pode ter mais de uma integração em um workspace. Sem esse header, uma solicitação usa o id de integração definido na própria solicitação, quando houver, e depois a integração padrão do provedor. O header se aplica quando o modelo não fixa uma integração e a solicitação não inclui uma credencial própria do provedor.

O segmento `<provider>` é o identificador da integração, como `anthropic`, `openai`, `google` ou `google-ai`. Ele corresponde ao provedor do modelo chamado. Um header para um provedor não altera a integração usada para outro provedor na mesma solicitação, incluindo fallbacks.

Os nomes são únicos por provedor dentro de um workspace. Duas integrações do mesmo provedor não podem ter o mesmo nome de exibição.

## Exemplo

```bash cURL theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST https://router.toqan.ai/eu/v3/router/chat/completions \
  -H "Authorization: Bearer $TOQAN_API_KEY" \
  -H "Content-Type: application/json" \
  -H "x-toqan-integration-openai: Production" \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [{ "role": "user", "content": "Summarize the repository." }]
  }'
```

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.TOQAN_API_KEY,
  baseURL: "https://router.toqan.ai/eu/v3/router",
  defaultHeaders: {
    "x-toqan-integration-openai": "Production",
  },
});

const response = await client.chat.completions.create({
  model: "openai/gpt-4o",
  messages: [{ role: "user", content: "Summarize the repository." }],
});
```

```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["TOQAN_API_KEY"],
    base_url="https://router.toqan.ai/eu/v3/router",
    default_headers={"x-toqan-integration-openai": "Production"},
)

response = client.chat.completions.create(
    model="openai/gpt-4o",
    messages=[{"role": "user", "content": "Summarize the repository."}],
)
```

## Configuração

| Header | Valor | Descrição |
| - | - | - |
| `x-toqan-integration-<provider>` | Id da integração ou nome de exibição exato | Seleciona a integração do workspace para aquele provedor. |

Um header por provedor. `x-toqan-integration-anthropic` e `x-toqan-integration-google` podem ser enviados na mesma solicitação. Um header para um provedor que a solicitação não chama é ignorado.

| Resultado | Quando |
| - | - |
| `400` | O header de um provedor da solicitação está vazio, ou nenhuma integração do workspace tem esse id ou nome de exibição exato. |
| `409` | Mais de uma integração desse provedor tem o mesmo nome de exibição. Envie o id da integração. |

## Claude Code

O **Claude Code** encaminha headers extras por meio de `ANTHROPIC_CUSTOM_HEADERS`. Mantenha `x-toqan-api-key` quando a sessão usar uma credencial da Anthropic e adicione o header de integração em uma linha separada:

```bash Shell theme={"theme":{"light":"github-light","dark":"github-dark"}}
export ANTHROPIC_BASE_URL="https://router.toqan.ai/eu/v3/anthropic"
export ANTHROPIC_MODEL="anthropic/claude-sonnet-4-6"
export ANTHROPIC_CUSTOM_HEADERS="x-toqan-api-key: $TOQAN_API_KEY"$'\n'"x-toqan-integration-anthropic: Production"
```

Quando a chave do **Toqan Router** é a credencial do cliente Anthropic, o header de integração é suficiente:

```bash Shell theme={"theme":{"light":"github-light","dark":"github-dark"}}
export ANTHROPIC_BASE_URL="https://router.toqan.ai/eu/v3/anthropic"
export ANTHROPIC_AUTH_TOKEN="$TOQAN_API_KEY"
export ANTHROPIC_API_KEY=""
export ANTHROPIC_MODEL="anthropic/claude-sonnet-4-6"
export ANTHROPIC_CUSTOM_HEADERS="x-toqan-integration-anthropic: Production"
```

Uma chave de API da Anthropic ou uma credencial de assinatura do Claude na solicitação continua sendo a credencial dessa chamada. O header seleciona uma integração do workspace quando a solicitação usa a integração da Anthropic do workspace.

## generateContent

IDs simples de modelos Gemini em `https://router.toqan.ai/eu/v3/google` são resolvidos como `google/<model>`; portanto, o header é `x-toqan-integration-google`. As integrações do Google AI Studio usam o identificador `google-ai` e o header `x-toqan-integration-google-ai` quando o provedor do modelo é `google-ai`.

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
import { GoogleGenAI } from "@google/genai";

const client = new GoogleGenAI({
  apiKey: process.env.TOQAN_API_KEY,
  httpOptions: {
    baseUrl: "https://router.toqan.ai/eu/v3/google",
    headers: {
      "x-toqan-integration-google": "Production",
    },
  },
});

const response = await client.models.generateContent({
  model: "gemini-2.5-flash",
  contents: "Explain the repository structure.",
});
```

```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
import os
from google import genai
from google.genai import types

client = genai.Client(
    api_key=os.environ["TOQAN_API_KEY"],
    http_options=types.HttpOptions(
        base_url="https://router.toqan.ai/eu/v3/google",
        headers={"x-toqan-integration-google": "Production"},
    ),
)

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="Explain the repository structure.",
)
```

## Limitações

| Limitação | Impacto | Solução alternativa |
| - | - | - |
| Um modelo fixa uma integração | O header desse provedor é ignorado para esse modelo | Altere a integração no modelo ou chame um modelo que não fixe uma integração |
| A solicitação inclui uma credencial do provedor | Essa credencial é usada na chamada | Omita a credencial do provedor para selecionar uma integração do workspace |
| Os nomes de exibição precisam corresponder exatamente | `Production` não corresponde a `production` | Envie o id da integração ou o nome de exibição exatamente como está armazenado |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.