DEV Community

Cover image for Como Usar a API Claude Haiku 5.5?
Lucas
Lucas

Posted on Originally published at apidog.com

Como Usar a API Claude Haiku 5.5?

Para usar a API do Claude Haiku 5.5, envie uma requisição POST para https://api.anthropic.com/v1/messages com "model": "claude-haiku-5-5", sua chave no cabeçalho x-api-key e anthropic-version: 2023-06-01. O modelo custa US$ 0,10/US$ 0,50 por milhão de tokens de entrada/saída para prompts de até 100 mil tokens (US$ 0,50/US$ 2,50 acima disso), aceita até 1 milhão de tokens de contexto, gera até 128 mil tokens e usa medium como esforço padrão com pensamento adaptativo ativado.

Experimente o Apidog hoje

A Anthropic lançou o Haiku 5.5 em 7 de outubro de 2026. Ele é o primeiro Haiku com níveis de esforço. O artigo o que é Claude Haiku 5.5 cobre as especificações e o posicionamento do modelo.

Neste guia, você vai configurar a primeira chamada em cURL, Python e TypeScript, além de trabalhar com esforço, pensamento, cache, lotes, recusas e conjuntos de ferramentas para agentes. Você pode salvar e validar cada requisição no Apidog.

API Claude Haiku 5.5 em resumo

Parâmetro Comportamento do Haiku 5.5
ID do modelo claude-haiku-5-5 (Bedrock: anthropic.claude-haiku-5-5); sem alias separado
Preço por MTok, prompts de até 100K tokens US$ 0,10 entrada, US$ 0,50 saída, US$ 0,01 leituras de cache
Preço por MTok, prompts acima de 100K tokens US$ 0,50 entrada, US$ 2,50 saída, US$ 0,05 leituras de cache
Contexto / saída máxima 1M / 128K; 300K em Lotes com o cabeçalho beta output-300k-2026-03-24
output_config.effort low, medium (padrão), high, xhigh, max
thinking adaptive por padrão; disabled apenas em esforço high ou inferior
thinking.display O campo thinking fica vazio por padrão; summarized retorna texto legível
temperature, top_p, top_k Valores não padrão retornam 400
Preenchimento prévio do assistente Retorna 400, mesmo com pensamento desativado
Prompt mínimo armazenável em cache 512 tokens, contra 4.096 no Haiku 4.5

Fontes: a página do modelo Haiku 5.5 e a documentação de preços da API Claude.

Sua primeira chamada à API Claude Haiku 5.5

Crie uma chave no Console Claude e exporte-a como ANTHROPIC_API_KEY. O guia de chave de API da Anthropic explica esse processo.

Nunca inclua a chave diretamente no código ou no repositório.

Chamada com cURL

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-haiku-5-5",
    "max_tokens": 4096,
    "output_config": {"effort": "medium"},
    "thinking": {"type": "adaptive", "display": "summarized"},
    "messages": [
      {
        "role": "user",
        "content": "Classify this ticket as billing, bug, or feature request: The export button times out on large projects."
      }
    ]
  }'
Enter fullscreen mode Exit fullscreen mode

Chamada com Python

O SDK Python lê ANTHROPIC_API_KEY automaticamente do ambiente:

import anthropic

client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-haiku-5-5",
    max_tokens=4096,
    output_config={"effort": "medium"},
    thinking={"type": "adaptive", "display": "summarized"},
    messages=[
        {
            "role": "user",
            "content": "Classify this ticket as billing, bug, or feature request: The export button times out on large projects."
        }
    ],
)

for block in response.content:
    if block.type == "thinking":
        print("[thinking]", block.thinking)
    elif block.type == "text":
        print(block.text)

print(response.stop_reason, response.usage)
Enter fullscreen mode Exit fullscreen mode

Chamada com TypeScript

import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic();

const response = await client.messages.create({
  model: "claude-haiku-5-5",
  max_tokens: 4096,
  output_config: { effort: "medium" },
  thinking: { type: "adaptive", display: "summarized" },
  messages: [
    {
      role: "user",
      content:
        "Classify this ticket as billing, bug, or feature request: The export button times out on large projects.",
    },
  ],
});

for (const block of response.content) {
  if (block.type === "text") {
    console.log(block.text);
  }
}

console.log(response.stop_reason, response.usage);
Enter fullscreen mode Exit fullscreen mode

Ao integrar a resposta, siga estas regras:

  1. Filtre blocos por type. Uma resposta pode começar com um bloco thinking, portanto content[0].text pode falhar.
  2. Reserve margem em max_tokens. Tokens de pensamento também contam para esse limite.
  3. Não envie parâmetros incompatíveis. Neste modelo, temperature, top_p, top_k, budget_tokens e preenchimento prévio do assistente retornam erro 400.

Se você está migrando código existente, o guia Haiku 5.5 vs Haiku 4.5 lista as alterações que afetam a compatibilidade de requisições JSON.

Escolha um nível de esforço

Defina o esforço em output_config.effort. Esse é o principal controle de qualidade, latência e custo.

O guia de prompting sugere estes pontos de partida:

  • low: mais rápido e barato; adequado para chat, chamadas curtas de ferramentas e alto volume.
  • medium: padrão recomendado para a maioria dos casos, incluindo codificação agêntica.
  • high: tarefas de conhecimento, agentes mais longos e instruções rigorosas.
  • xhigh e max: use apenas quando suas avaliações demonstrarem ganho mensurável. A Anthropic recomenda comparar os mesmos testes com Claude Sonnet 5.5.

As execuções da Anthropic no OSWorld 2.1, subconjunto offline, mostram a relação entre esforço, pontuação e custo por tentativa:

Esforço Pontuação Custo por tentativa
low 42,0% US$ 0,0695
medium 53,3% US$ 0,1257
high 61,3% US$ 0,1827
xhigh 67,6% US$ 0,2792
max 72,4% US$ 0,6111

Passar de xhigh para max mais que dobra o custo por menos de cinco pontos percentuais nessa avaliação. Consulte o detalhamento dos benchmarks do Haiku 5.5 para os demais gráficos.

Em chats com múltiplas interações, xhigh pode ocasionalmente colocar toda a resposta no pensamento e encerrar a execução sem texto visível. Antes de renderizar a resposta para o usuário, valide se há ao menos um bloco text.

Controlar o pensamento

O pensamento adaptativo está ativado por padrão. Em relação ao Haiku 4.5, há dois comportamentos importantes:

  • Por padrão, blocos thinking retornam o campo thinking vazio e apenas uma signature.
  • Para receber resumos legíveis em logs ou na interface, use "display": "summarized".

Para reduzir o pensamento, diminua o esforço. Pedir que o modelo “responda diretamente” não impede o pensamento adaptativo nos testes da Anthropic.

Você pode desativar o pensamento somente em high ou níveis inferiores:

{
  "model": "claude-haiku-5-5",
  "max_tokens": 1024,
  "thinking": {
    "type": "disabled"
  },
  "output_config": {
    "effort": "low"
  },
  "messages": [
    {
      "role": "user",
      "content": "Extract the invoice number from: INV-2291, due Nov 3."
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

O mesmo corpo com xhigh ou max retorna 400.

Um tool_choice forçado — any ou uma ferramenta específica — é aceito, mas a resposta começa com a chamada da ferramenta e não inclui um bloco de pensamento.

Para loops multi-turno ou agentes:

  • Reenvie cada bloco de pensamento exatamente como foi retornado.
  • Mantenha o histórico apenas por adição.
  • Não altere system, tools ou mensagens anteriores antes de um bloco de pensamento retornado.

Alterar esse contexto pode gerar erro 400. Além disso, blocos de pensamento só funcionam na conta que os produziu, ou em uma conta vinculada.

Armazenar prompts em cache e executar trabalhos em lote

O cache reduz significativamente o custo de prompts repetitivos.

Para prompts de até 100 mil tokens:

  • Leitura de cache: US$ 0,01 por milhão de tokens.
  • Entrada nova: US$ 0,10 por milhão de tokens.
  • Escrita de cache de 5 minutos: US$ 0,125 por milhão de tokens.
  • Escrita de cache de 1 hora: US$ 0,20 por milhão de tokens.

O tamanho mínimo de um prompt armazenável em cache é de 512 tokens, contra 4.096 no Haiku 4.5. Isso permite armazenar prompts de sistema menores e listas de ferramentas.

Marque o prefixo estável com cache_control:

{
  "model": "claude-haiku-5-5",
  "max_tokens": 1024,
  "system": [
    {
      "type": "text",
      "text": "You are a support triage assistant. <long, stable policy text here>",
      "cache_control": {
        "type": "ephemeral"
      }
    }
  ],
  "messages": [
    {
      "role": "user",
      "content": "Ticket: refund not received after 10 days."
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Alterar o effort de nível superior entre requisições invalida o cache. O esforço por mensagem, usando o cabeçalho beta mid-conversation-output-config-2026-07-01 na API Claude e no Google Cloud, preserva o cache.

Consulte a documentação de cache de prompt para detalhes sobre TTLs e o explicador de cache de prompt para o conceito.

Use Lotes para cargas que podem esperar

A API de Lotes de Mensagens reduz em 50% os preços de entrada e saída:

Faixa de prompt Entrada Saída
Até 100K tokens US$ 0,05 / MTok US$ 0,25 / MTok
Acima de 100K tokens US$ 0,25 / MTok US$ 1,25 / MTok

O processamento em lote também é a única rota para 300 mil tokens de saída, usando o cabeçalho beta output-300k-2026-03-24.

Atenção ao limite de 100 mil tokens: um prompt acima desse valor usa a tabela de preços mais alta. O guia de preços do Haiku 5.5 mostra exemplos dos dois cenários.

Lidar com stop_reason: "refusal"

O Haiku 5.5 executa classificadores de segurança e não possui fallback no lado do servidor. Quando uma solicitação é recusada, a resposta contém:

{
  "stop_reason": "refusal"
}
Enter fullscreen mode Exit fullscreen mode

As categorias possíveis são:

  • cyber
  • frontier_llm
  • bio
  • general_harms

Essas recusas são novas para quem está migrando do Haiku 4.5. Reenviar a mesma requisição normalmente resulta em outra recusa, então evite retentativas cegas.

Implemente uma ramificação explícita:

def run(client, messages):
    response = client.messages.create(
        model="claude-haiku-5-5",
        max_tokens=4096,
        messages=messages,
    )

    if response.stop_reason == "refusal":
        details = getattr(response, "stop_details", None)
        category = getattr(details, "category", "unknown")

        log_refusal(category, messages)  # seu mecanismo de logs

        return {
            "status": "refused",
            "category": category,
        }

    text = "".join(
        block.text
        for block in response.content
        if block.type == "text"
    )

    return {
        "status": "ok",
        "text": text,
    }
Enter fullscreen mode Exit fullscreen mode

Verifique stop_reason antes de ler content. Em seguida, encaminhe recusas para uma pessoa ou outro modelo conforme a lógica da sua aplicação.

Equipes que executam trabalhos legítimos em segurança ou ciências da vida, mas são bloqueadas pelos classificadores cyber ou bio, podem solicitar acesso aos Programas de Verificação Cibernética ou de Ciências da Vida da Anthropic.

Uso de computador e uso de navegador

Na API Claude e no Google Cloud, o Haiku 5.5 oferece suporte a uso de computador somente pelo conjunto de ferramentas:

computer_toolset_20260801
Enter fullscreen mode Exit fullscreen mode

Esse conjunto não exige cabeçalho beta. Declarar a ferramenta antiga abaixo retorna 400:

computer_20250124
Enter fullscreen mode Exit fullscreen mode

O uso de navegador é disponibilizado por:

browser_toolset_20260801
Enter fullscreen mode Exit fullscreen mode

O Haiku 4.5 não oferece suporte a esse conjunto. Os SDKs Python e TypeScript receberam classes beta para ambos no lançamento.

Consulte a documentação da ferramenta de uso de computador para conferir as ferramentas-membro.

Limites de taxa

O Haiku 5.5 possui os mesmos limites de taxa do Haiku 4.5:

Nível Requisições por minuto Tokens de entrada por minuto Tokens de saída por minuto
Start 1.000 2M 400K
Scale 10.000 10M 2M

O Nível de Prioridade não é suportado.

Para tratar respostas 429, implemente backoff e limite a concorrência. Consulte também o guia de limite de taxa excedido.

Teste a API Claude Haiku 5.5 no Apidog

Salvar requisições permite comparar níveis de esforço e depurar recusas de forma repetível. Configure a chamada no Apidog:

Configuração da API Claude Haiku 5.5 no Apidog

  1. Crie um ambiente e adicione ANTHROPIC_API_KEY como variável secreta.
  2. No cabeçalho x-api-key, use {{ANTHROPIC_API_KEY}}. Adicione também:
    • anthropic-version: 2023-06-01
    • content-type: application/json
  3. Crie uma requisição POST para https://api.anthropic.com/v1/messages.
  4. Cole o corpo da primeira chamada e salve a requisição.
  5. Adicione asserções:
    • Status igual a 200
    • $.stop_reason igual a end_turn
    • $.usage.output_tokens maior que 0
    • $.content[*].type contém text
  6. Duplique a requisição para testar low, high, xhigh e max.
  7. Execute a pasta e compare o objeto usage em cada nível de esforço.
  8. Adicione uma variante com prompt de sistema armazenado em cache e valide que $.usage.cache_read_input_tokens é maior que 0 na segunda execução.

Essas validações impedem que recusas ou respostas xhigh sem texto passem despercebidas.

Para estratégias mais amplas, consulte teste de aplicações LLM.

FAQ

Qual é o ID do modelo Claude Haiku 5.5?

Use claude-haiku-5-5, sem sufixo de data e sem alias separado, na API Claude, Google Cloud, Microsoft Foundry e Plataforma Claude na AWS.

No Amazon Bedrock, use:

anthropic.claude-haiku-5-5
Enter fullscreen mode Exit fullscreen mode

Existe uma API gratuita para o Claude Haiku 5.5?

Não há um nível gratuito contínuo, mas novos usuários da API recebem uma pequena quantidade de crédito gratuito para testar a API.

Usuários gratuitos do Claude.ai podem selecionar Haiku 5.5 no chat, mas isso não fornece uma chave de API. Os planos Max e Team incluem créditos mensais de API.

Consulte o guia de acesso gratuito para entender o que conta como acesso gratuito.

Por que minha requisição do Haiku 4.5 retorna 400?

Verifique se a requisição contém algum destes itens:

  • budget_tokens
  • temperature não padrão
  • top_p não padrão
  • qualquer valor de top_k
  • preenchimento prévio do assistente
  • a ferramenta antiga computer_20250124

Essas são as causas mais comuns de erro 400 na migração.

Posso usar o Haiku 5.5 no Claude Code?

Sim, a partir da versão v2.1.293.

Na API da Anthropic, o alias haiku resolve para Haiku 5.5. Veja Claude Haiku 5.5 no Claude Code.

Devo usar Haiku 5.5 ou Sonnet 5.5 para codificação agêntica?

A Anthropic afirma que Sonnet 5.5 e Opus 5.5 continuam sendo escolhas melhores para tarefas complexas de codificação agêntica.

Use Haiku 5.5 para trabalhos de escopo restrito, como:

  • classificação;
  • sumarização;
  • compactação;
  • subagentes;
  • uso de navegador.

Próximo passo

Envie a requisição inicial com medium. Em seguida, execute o mesmo prompt da sua carga de trabalho com low e high.

Compare:

  • usage.output_tokens;
  • custo;
  • latência;
  • qualidade da resposta.

Baixe o Apidog para salvar as três execuções com asserções. Assim, a próxima atualização de modelo pode ser testada alterando apenas um campo.

Top comments (0)