Esta es una API experimental. Las estructuras de solicitud y respuesta, los límites de velocidad y la semántica de los tokens pueden cambiar. Los cambios incompatibles se publican bajo nuevas versiones de encabezado beta con fecha, y las dos versiones de encabezado anteriores siguen funcionando para que quienes llaman a la API tengan tiempo de migrar.
Claude Code es la herramienta de codificación agéntica de Anthropic. Claude Code en la web ejecuta sesiones de Claude Code en infraestructura en la nube gestionada por Anthropic en claude.ai/code, y una rutina es una configuración guardada allí: un prompt, uno o más repositorios y conectores, empaquetados para que pueda ejecutarse sin supervisión según un cronograma, en respuesta a eventos de GitHub o cuando se invoca por HTTP.
Este endpoint es el punto de entrada HTTP. Enviar una solicitud POST a él inicia una nueva ejecución de una rutina existente y devuelve el ID y la URL de la sesión resultante. Los llamadores típicos son sistemas de alertas, pipelines de CI y herramientas internas que necesitan iniciar una sesión de Claude Code de forma programática.
Llamar a este endpoint requiere una cuenta de claude.ai en un plan Pro, Max, Team o Enterprise con Claude Code en la web habilitado. Autentícate con un "bearer token" (token de portador) específico de la rutina creado en la interfaz web de Claude Code, en lugar de una clave de API de Claude.
El endpoint de activación de rutinas pertenece a la superficie del producto Claude Code, que difiere de las API y SDK de Claude Platform en varios aspectos:
| Aspecto | Este endpoint | API de Claude Platform |
|---|---|---|
| Autenticación | Authorization: Bearer con un token específico de la rutina (sk-ant-oat01-...) creado en claude.ai/code/routines | x-api-key con una clave de API de Claude desde Claude Console |
| Alcance del token | Solo una rutina; sin acceso de lectura | A nivel de workspace |
| Compatibilidad con SDK | Ninguna | Disponible en todos los SDK de cliente |
| Facturación | Uso de la suscripción de Claude Code en claude.ai | Uso de Claude Platform |
| Espacio de nombres de la ruta | /v1/claude_code/... | /v1/... |
| Estabilidad | Experimental; requiere anthropic-beta: experimental-cc-routine-2026-04-01 | Estable o beta estándar |
Para llamar a este endpoint, necesitas:
Consulta Add an API trigger en la documentación de Claude Code para ver el recorrido completo de configuración.
POST https://api.anthropic.com/v1/claude_code/routines/{routine_id}/fireCada solicitud debe incluir el encabezado anthropic-beta: experimental-cc-routine-2026-04-01. Las solicitudes sin él devuelven 400 invalid_request_error.
La interfaz web de Claude Code proporciona la URL completa junto con el token cuando agregas un activador de API, por lo que la mayoría de las integraciones almacenan ambos como secretos y llaman al endpoint directamente. Los ejemplos a continuación muestran una llamada desde la shell y un paso de GitHub Actions que activa la rutina ante un fallo 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\"}"La solicitud retorna una vez que se crea la sesión. No transmite la salida de la sesión mediante streaming ni espera a que la sesión se complete.
| Nombre | Obligatorio | Descripción |
|---|---|---|
Authorization | Sí | Bearer <token>. El token específico de la rutina creado en la interfaz web de Claude Code, con prefijo sk-ant-oat01-. |
anthropic-beta | Sí | Debe incluir experimental-cc-routine-2026-04-01. |
anthropic-version | Sí | La versión de la API, por ejemplo 2023-06-01. |
Content-Type | Cuando hay cuerpo | application/json. |
| Nombre | Tipo | Descripción |
|---|---|---|
routine_id | string | El identificador de la rutina. A pesar del nombre del parámetro, el valor tiene el prefijo trig_ en lugar de routine_. Se incluye en la URL que muestra el modal cuando agregas un activador de API. |
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
text | string | No | Contexto inicial para esta ejecución, como el cuerpo de una alerta, una línea de log con un fallo o un git diff. El valor es texto libre y no se analiza; si envías JSON u otra carga útil estructurada, la rutina lo recibe como una cadena literal. Se pasa a la rutina junto con su prompt guardado. Máximo 65.536 caracteres. |
El cuerpo es opcional. Los campos desconocidos en el cuerpo se ignoran.
Una solicitud exitosa devuelve 200 OK con los detalles de la nueva sesión:
{
"type": "routine_fire",
"claude_code_session_id": "session_01HJKLMNOPQRSTUVWXYZ",
"claude_code_session_url": "https://claude.ai/code/session_01HJKLMNOPQRSTUVWXYZ"
}| Campo | Tipo | Descripción |
|---|---|---|
type | string | Siempre routine_fire. |
claude_code_session_id | string | El ID de la sesión de Claude Code creada para esta ejecución. |
claude_code_session_url | string | Un enlace a la sesión en claude.ai. Ábrelo en un navegador para observar la ejecución, revisar los cambios o continuar la conversación. |
Los errores usan el formato de error estándar de Anthropic:
{
"type": "error",
"error": {
"type": "not_found_error",
"message": "<string>"
}
}| Estado HTTP | Tipo de error | Causa |
|---|---|---|
| 400 | invalid_request_error | Encabezado anthropic-beta ausente o no válido, text supera los 65.536 caracteres, o la rutina está pausada. |
| 401 | authentication_error | No hay bearer token en el encabezado Authorization, o el token no coincide con esta rutina. |
| 403 | permission_error | La cuenta u organización no tiene acceso a este endpoint. |
| 404 | not_found_error | La rutina no existe. |
| 429 | rate_limit_error | Se ha alcanzado el límite de ejecuciones de rutinas o el límite de uso de la cuenta. La respuesta incluye un encabezado Retry-After que indica cuándo se restablece la ventana. |
| 500 | api_error | Un error inesperado del servidor. |
| 503 | overloaded_error | El servicio está temporalmente sobrecargado. Reintenta después de una breve espera. Claude Platform devuelve 529 para este tipo de error; este endpoint devuelve 503. |
El bearer token está limitado a una sola rutina. Un token comprometido solo puede activar esa rutina; no otorga acceso de lectura, ni acceso a otras rutinas, ni acceso a los datos de la cuenta.
Genera y revoca tokens desde la configuración del activador de API de la rutina en claude.ai/code/routines. No existe una API pública para la gestión de tokens. Generar un nuevo token revoca el anterior.
Cada solicitud exitosa crea una nueva sesión. No hay clave de idempotencia. Si un llamador de webhook reintenta, el endpoint crea múltiples sesiones.
Las ejecuciones de rutinas cuentan contra una asignación diaria por cuenta que varía según el plan, y las sesiones resultantes consumen el mismo uso de suscripción de Claude Code que las sesiones interactivas. Cuando se alcanza cualquiera de los límites, el endpoint devuelve 429 rate_limit_error con un encabezado Retry-After. Las organizaciones con uso adicional habilitado continúan más allá de la asignación incluida con excedente medido.
Tus ejecuciones diarias restantes se muestran en claude.ai/code/routines. Para saber cómo interactúa el uso de rutinas con los límites de suscripción y la facturación de uso adicional, consulta Usage and limits en la documentación de Claude Code.
Este endpoint no está en los SDK de Anthropic. Su modelo de token difiere de la autenticación con clave de API, y los llamadores típicos, como jobs de CI y webhooks de alertas, envían la solicitud directamente.
Was this page helpful?