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

# Integração drop-in com o SDK da Anthropic

> Roteie as chamadas do SDK da Anthropic pelo AI Gateway do Toqan Router. Tenha fallbacks, cache, balanceamento de carga e rastreamento de custos para todos os modelos Claude.

> [card] [AI Gateway](#ai-gateway)
>
> Roteie as chamadas ao Claude pelo **AI Gateway** alterando apenas a URL base. Sem dependência de fornecedor: rode sempre no melhor modelo, com o menor custo para o caso de uso.

> [card] [Claude Agent SDK](/docs/pt-BR/ai-studio/integrations/frameworks/claude-agent-sdk.md)
>
> Criando agentes programáveis com conversas de múltiplos turnos, uso de ferramentas e servidores MCP? Use o Claude Agent SDK.

> [card] [Anthropic Messages API](/docs/pt-BR/ai-gateway/features/anthropic-messages-api.md)
>
> Detalhes do endpoint, autenticação e breakpoints de cache\_control no endpoint compatível com a Anthropic.

## AI Gateway

### Visão geral

O SDK da Anthropic (`@anthropic-ai/sdk` e `anthropic`) é o cliente nativo da Claude Messages API. Conecte-o ao **AI Gateway** do **Toqan Router** alterando apenas a `base_url`, sem nenhuma outra modificação no código existente, e tenha acesso a mais de 500 modelos de mais de 30 provedores, fallbacks, cache e rastreamento de custos.

> [!NOTE]
>
> Para agentes programáveis com conversas de múltiplos turnos, uso de ferramentas e servidores MCP, consulte a integração com o [Claude Agent SDK](/docs/pt-BR/ai-studio/integrations/frameworks/claude-agent-sdk.md).

### Principais benefícios

O **AI Gateway** do Toqan Router aprimora o SDK da Anthropic com:

> [card] Observabilidade completa
>
> Acompanhe cada chamada de API, uso de tokens e interação com modelos com traces e analytics detalhados

> [card] Confiabilidade integrada
>
> Fallbacks, novas tentativas e balanceamento de carga automáticos para resiliência em produção

> [card] Otimização de custos
>
> Rastreamento de custos em tempo real e gestão de gastos em todas as operações de IA

> [card] Acesso a múltiplos provedores
>
> Acesse mais de 500 LLMs e mais de 30 provedores por meio de uma única integração unificada

### Pré-requisitos

Antes de integrar o SDK da Anthropic ao **Toqan Router**, verifique se você tem:

* Uma conta do Toqan Router e uma chave de API
* Python 3.8+ ou Node.js 18+ com suporte a TypeScript
* SDK da Anthropic instalado

> [!NOTE]
>
> Para configurar uma chave de API, consulte Chaves de API e endpoints.

### Instalação

```bash TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
npm install @anthropic-ai/sdk
```

```bash Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
pip install anthropic
```

### Configuração

Defina a **Base URL** como o [AI Gateway](/docs/pt-BR/ai-gateway/using-the-router.md) e autentique-se com uma chave de API do **Toqan Router** para rotear as chamadas pela API sem alterar nenhuma outra parte do código.

> **base\_url**: `https://router.toqan.ai/eu/v3/anthropic`

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: process.env.TOQAN_API_KEY,
  baseURL: 'https://router.toqan.ai/eu/v3/anthropic',
});
```

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

client = anthropic.Anthropic(
    api_key=os.environ["TOQAN_API_KEY"],
    base_url="https://router.toqan.ai/eu/v3/anthropic",
)
```

### Geração de texto

Geração de texto básica com o SDK da Anthropic pelo Toqan Router:

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: process.env.TOQAN_API_KEY,
  baseURL: 'https://router.toqan.ai/eu/v3/anthropic',
});

const message = await client.messages.create({
  model: 'anthropic/claude-sonnet-5',
  max_tokens: 1024,
  messages: [
    { role: 'user', content: 'Explain the Toqan Router AI Gateway in one paragraph.' },
  ],
});

const block = message.content[0];
if (block.type === 'text') {
  console.log(block.text);
}
```

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

client = anthropic.Anthropic(
    api_key=os.environ["TOQAN_API_KEY"],
    base_url="https://router.toqan.ai/eu/v3/anthropic",
)

message = client.messages.create(
    model="anthropic/claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Explain the Toqan Router AI Gateway in one paragraph."}],
)

print(message.content[0].text)
```

### Streaming

Faça streaming das respostas para obter saída em tempo real:

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: process.env.TOQAN_API_KEY,
  baseURL: 'https://router.toqan.ai/eu/v3/anthropic',
});

const stream = client.messages.stream({
  model: 'anthropic/claude-sonnet-5',
  max_tokens: 1024,
  messages: [
    { role: 'user', content: 'Write a haiku about AI routing.' },
  ],
});

stream.on('text', (text) => {
  process.stdout.write(text);
});

await stream.finalMessage();
```

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

client = anthropic.Anthropic(
    api_key=os.environ["TOQAN_API_KEY"],
    base_url="https://router.toqan.ai/eu/v3/anthropic",
)

with client.messages.stream(
    model="anthropic/claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Write a haiku about AI routing."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
```

### Uso de ferramentas

Defina ferramentas e deixe o modelo decidir quando chamá-las. O **AI Gateway** encaminha as definições de ferramentas e retorna os blocos `tool_use` sem alterações:

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: process.env.TOQAN_API_KEY,
  baseURL: 'https://router.toqan.ai/eu/v3/anthropic',
});

const message = await client.messages.create({
  model: 'anthropic/claude-sonnet-5',
  max_tokens: 1024,
  tools: [
    {
      name: 'get_weather',
      description: 'Get the current weather for a location',
      input_schema: {
        type: 'object',
        properties: {
          location: { type: 'string', description: 'City name, e.g. Amsterdam' },
        },
        required: ['location'],
      },
    },
  ],
  messages: [
    { role: 'user', content: 'What is the weather in Amsterdam?' },
  ],
});

for (const block of message.content) {
  if (block.type === 'tool_use') {
    console.log(`Tool: ${block.name}`, block.input);
  }
}
```

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

client = anthropic.Anthropic(
    api_key=os.environ["TOQAN_API_KEY"],
    base_url="https://router.toqan.ai/eu/v3/anthropic",
)

message = client.messages.create(
    model="anthropic/claude-sonnet-5",
    max_tokens=1024,
    tools=[
        {
            "name": "get_weather",
            "description": "Get the current weather for a location",
            "input_schema": {
                "type": "object",
                "properties": {
                    "location": {"type": "string", "description": "City name, e.g. Amsterdam"},
                },
                "required": ["location"],
            },
        }
    ],
    messages=[{"role": "user", "content": "What is the weather in Amsterdam?"}],
)

for block in message.content:
    if block.type == "tool_use":
        print(f"Tool: {block.name}", block.input)
```

### Seleção de modelo

O prefixo `anthropic/` roteia para os modelos Claude. Troque para qualquer modelo suportado de mais de 30 provedores alterando o valor de `model`:

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
const message = await client.messages.create({
  model: 'openai/gpt-5.6-sol',
  max_tokens: 1024,
  messages: [{ role: 'user', content: 'Explain machine learning' }],
});
```

```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
message = client.messages.create(
    model="openai/gpt-5.6-sol",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Explain machine learning"}],
)
```

> [!NOTE]
>
> Veja todos os modelos disponíveis em [Modelos suportados](/docs/pt-BR/ai-gateway/supported-models.md).


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