Esta é uma API experimental. Os formatos de requisição e resposta, limites de taxa e semântica de tokens podem mudar. Alterações incompatíveis são lançadas sob novas versões datadas do cabeçalho beta, e as duas versões anteriores do cabeçalho continuam funcionando para que os chamadores tenham tempo de migrar.
Claude Code é a ferramenta de codificação agêntica da Anthropic. Claude Code on the web executa sessões do Claude Code em infraestrutura de nuvem gerenciada pela Anthropic em claude.ai/code, e uma rotina é uma configuração salva lá: um prompt, um ou mais repositórios e conectores, empacotados para que possam ser executados sem supervisão em um cronograma, em resposta a eventos do GitHub ou quando chamados via HTTP.
Este endpoint é o ponto de entrada HTTP. Fazer um POST para ele inicia uma nova execução de uma rotina existente e retorna o ID e a URL da sessão resultante. Chamadores típicos são sistemas de alerta, pipelines de CI e ferramentas internas que precisam iniciar uma sessão do Claude Code programaticamente.
Chamar este endpoint requer uma conta claude.ai em um plano Pro, Max, Team ou Enterprise com Claude Code on the web habilitado. Autentique-se com um bearer token específico da rotina criado na interface web do Claude Code, em vez de uma chave de API do Claude.
O endpoint de acionamento de rotina pertence à superfície do produto Claude Code, que difere das APIs e SDKs da Claude Platform em alguns aspectos:
| Aspecto | Este endpoint | APIs da Claude Platform |
|---|---|---|
| Autenticação | Authorization: Bearer com um token específico da rotina (sk-ant-oat01-...) criado em claude.ai/code/routines | x-api-key com uma chave de API do Claude obtida no Claude Console |
| Escopo do token | Apenas uma rotina; sem acesso de leitura | Nível de workspace |
| Suporte a SDK | Nenhum | Disponível em todos os SDKs de cliente |
| Cobrança | Uso da assinatura do Claude Code em claude.ai | Uso da Claude Platform |
| Namespace do caminho | /v1/claude_code/... | /v1/... |
| Estabilidade | Experimental; requer anthropic-beta: experimental-cc-routine-2026-04-01 | Estável ou beta padrão |
Para chamar este endpoint, você precisa de:
Consulte Add an API trigger na documentação do Claude Code para o passo a passo completo de configuração.
POST https://api.anthropic.com/v1/claude_code/routines/{routine_id}/fireToda requisição deve incluir o cabeçalho anthropic-beta: experimental-cc-routine-2026-04-01. Requisições sem ele retornam 400 invalid_request_error.
A interface web do Claude Code fornece a URL completa junto com o token quando você adiciona um gatilho de API, então a maioria das integrações armazena ambos como segredos e chama o endpoint diretamente. Os exemplos abaixo mostram uma chamada de shell e uma etapa do GitHub Actions que aciona a rotina em caso de falha de CI.
curl -X POST https://api.anthropic.com/v1/claude_code/routines/$ROUTINE_ID/fire \
-H "Authorization: Bearer $ROUTINE_TOKEN" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: experimental-cc-routine-2026-04-01" \
-H "Content-Type: application/json" \
-d '{"text": "Sentry alert SEN-4521 fired in prod. Stack trace attached."}'- if: failure()
env:
ROUTINE_FIRE_URL: ${{ secrets.ROUTINE_FIRE_URL }}
ROUTINE_FIRE_TOKEN: ${{ secrets.ROUTINE_FIRE_TOKEN }}
run: |
curl -X POST "$ROUTINE_FIRE_URL" \
-H "Authorization: Bearer $ROUTINE_FIRE_TOKEN" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: experimental-cc-routine-2026-04-01" \
-H "Content-Type: application/json" \
-d "{\"text\": \"CI failed: $GITHUB_WORKFLOW run $GITHUB_RUN_ID on $GITHUB_REF\"}"A requisição retorna assim que a sessão é criada. Ela não faz streaming da saída da sessão nem espera a sessão ser concluída.
| Nome | Obrigatório | Descrição |
|---|---|---|
Authorization | Sim | Bearer <token>. O token específico da rotina criado na interface web do Claude Code, com prefixo sk-ant-oat01-. |
anthropic-beta | Sim | Deve incluir experimental-cc-routine-2026-04-01. |
anthropic-version | Sim | A versão da API, por exemplo 2023-06-01. |
Content-Type | Quando o corpo está presente | application/json. |
| Nome | Tipo | Descrição |
|---|---|---|
routine_id | string | O identificador da rotina. Apesar do nome do parâmetro, o valor tem prefixo trig_ em vez de routine_. Incluído na URL que o modal exibe quando você adiciona um gatilho de API. |
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
text | string | Não | Contexto inicial para esta execução, como o corpo de um alerta, uma linha de log com falha ou um git diff. O valor é texto livre e não é analisado; se você enviar JSON ou outro payload estruturado, a rotina o recebe como uma string literal. Passado para a rotina junto com seu prompt salvo. Máximo de 65.536 caracteres. |
O corpo é opcional. Campos desconhecidos no corpo são ignorados.
Uma requisição bem-sucedida retorna 200 OK com os detalhes da nova sessão:
{
"type": "routine_fire",
"claude_code_session_id": "session_01HJKLMNOPQRSTUVWXYZ",
"claude_code_session_url": "https://claude.ai/code/session_01HJKLMNOPQRSTUVWXYZ"
}| Campo | Tipo | Descrição |
|---|---|---|
type | string | Sempre routine_fire. |
claude_code_session_id | string | O ID da sessão do Claude Code criada para esta execução. |
claude_code_session_url | string | Um link para a sessão em claude.ai. Abra-o em um navegador para acompanhar a execução, revisar alterações ou continuar a conversa. |
Os erros usam o envelope de erro padrão da Anthropic:
{
"type": "error",
"error": {
"type": "not_found_error",
"message": "<string>"
}
}| Status HTTP | Tipo de erro | Causa |
|---|---|---|
| 400 | invalid_request_error | Cabeçalho anthropic-beta ausente ou inválido, text excede 65.536 caracteres, ou a rotina está pausada. |
| 401 | authentication_error | Nenhum bearer token no cabeçalho Authorization, ou o token não corresponde a esta rotina. |
| 403 | permission_error | A conta ou organização não tem acesso a este endpoint. |
| 404 | not_found_error | A rotina não existe. |
| 429 | rate_limit_error | O limite de execuções de rotina ou o limite de uso da conta foi atingido. A resposta inclui um cabeçalho Retry-After indicando quando a janela é redefinida. |
| 500 | api_error | Um erro inesperado do servidor. |
| 503 | overloaded_error | O serviço está temporariamente sobrecarregado. Tente novamente após um breve intervalo. A Claude Platform retorna 529 para este tipo de erro; este endpoint retorna 503. |
O bearer token tem escopo limitado a uma única rotina. Um token comprometido só pode acionar essa rotina; ele não concede acesso de leitura, acesso a outras rotinas nem acesso a dados da conta.
Gere e revogue tokens nas configurações de gatilho de API da rotina em claude.ai/code/routines. Não há API pública para gerenciamento de tokens. Gerar um novo token revoga o anterior.
Cada requisição bem-sucedida cria uma nova sessão. Não há chave de idempotência. Se um chamador de webhook fizer novas tentativas, o endpoint cria múltiplas sessões.
As execuções de rotina contam para uma cota diária por conta que varia conforme o plano, e as sessões resultantes consomem o mesmo uso de assinatura do Claude Code que as sessões interativas. Quando qualquer um dos limites é atingido, o endpoint retorna 429 rate_limit_error com um cabeçalho Retry-After. Organizações com uso extra habilitado continuam além da cota incluída com cobrança por excedente medido.
Suas execuções diárias restantes são exibidas em claude.ai/code/routines. Para saber como o uso de rotinas interage com os limites de assinatura e a cobrança de uso extra, consulte Usage and limits na documentação do Claude Code.
Este endpoint não está nos SDKs da Anthropic. Seu modelo de token difere da autenticação por chave de API, e chamadores típicos, como jobs de CI e webhooks de alerta, enviam a requisição diretamente.
Was this page helpful?