format: md
Event Logging
Endpoints para telemetria e logging de eventos do Claude Desktop. Inclui batch de eventos OpenTelemetry, logging OTLP e feedback bundles.
format: md
POST /api/event_logging/v2/batch
POST /api/event_logging/v2/batch
Envia um lote de eventos de telemetria para o serviço de logging.
Headers
| Header | Valor | Obrigatório |
|---|---|---|
Authorization | Bearer <token> | Sim |
x-service-name | claude_desktop | Sim |
content-type | application/json | Sim |
Limites
| Parâmetro | Valor |
|---|---|
| Max batch | 50 eventos |
| Flush interval | 60s |
| HTTP Client | electron.net.request |
Request Body
{
"events": [
{
"timeUnixNano": "1720000000000000000",
"observedTimeUnixNano": "1720000000000000000",
"severityNumber": 9,
"severityText": "info",
"body": {
"stringValue": "event description"
},
"attributes": [
{
"key": "event_type",
"value": {
"stringValue": "message_sent"
}
}
]
}
]
}
Severity Levels
| Nível | severityNumber | severityText | Descrição |
|---|---|---|---|
| Info | 9 | info | Evento informacional |
| Error | 17 | error | Erro ou exceção |
Formato de Atributos
Cada atributo segue o formato OpenTelemetry:
{
"key": "event_type",
"value": {
"stringValue": "message_sent"
}
}
Tipos de valor suportados: stringValue, intValue, doubleValue, boolValue, arrayValue, kvlistValue.
Exemplo curl
curl -X POST https://api.anthropic.com/api/event_logging/v2/batch \
-H "Authorization: Bearer $ANTHROPIC_API_KEY" \
-H "x-service-name: claude_desktop" \
-H "content-type: application/json" \
-d '{
"events": [
{
"timeUnixNano": "1720000000000000000",
"observedTimeUnixNano": "1720000000000000000",
"severityNumber": 9,
"severityText": "info",
"body": {"stringValue": "session started"},
"attributes": [
{"key": "event_type", "value": {"stringValue": "session_start"}}
]
}
]
}'
Códigos de Erro
| Código | Significado |
|---|---|
400 | Evento mal formatado |
401 | Não autorizado |
413 | Payload excede limite (max 50 eventos) |
429 | Rate limit excedido |
500 | Erro interno |
format: md
POST /v1/logs
POST /v1/logs
Endpoint de logging no formato OpenTelemetry Protocol (OTLP). Aceita dados de telemetria estruturados conforme especificação OTLP.
Headers
| Header | Valor | Obrigatório |
|---|---|---|
Authorization | Bearer <token> | Sim |
content-type | application/x-protobuf ou application/json | Sim |
Request Body (JSON)
{
"resourceLogs": [
{
"resource": {
"attributes": [
{"key": "service.name", "value": {"stringValue": "claude_desktop"}}
]
},
"scopeLogs": [
{
"scope": {},
"logRecords": [
{
"timeUnixNano": "1720000000000000000",
"severityNumber": 9,
"severityText": "info",
"body": {"stringValue": "log message"}
}
]
}
]
}
]
}
Códigos de Erro
| Código | Significado |
|---|---|
400 | Formato OTLP inválido |
401 | Não autorizado |
500 | Erro interno |
format: md
POST /api/claude_cli_feedback/bundle
POST /api/claude_cli_feedback/bundle
Envia um bundle de feedback para a Anthropic. Usado pelo Claude Code para reportar logs, diagnósticos e metadados de sessão.
Headers
| Header | Valor | Obrigatório |
|---|---|---|
Authorization | Bearer <token> | Sim |
Limites
| Parâmetro | Valor |
|---|---|
| Timeout | 60s |
| Max payload | ~50MB |
| Content-Type | multipart/form-data |
Campos do Formulário
| Campo | Tipo | Descrição | Limite |
|---|---|---|---|
description | string | Descrição textual do feedback | 20000 caracteres |
bundle | file | Arquivo ZIP com logs e diagnósticos | ~50MB |
Response (200)
{
"feedback_id": "fb_abc"
}
Exemplo curl
curl -X POST https://api.anthropic.com/api/claude_cli_feedback/bundle \
-H "Authorization: Bearer $ANTHROPIC_API_KEY" \
-F "description=Erro ao processar comando X no projeto Y" \
-F "bundle=@feedback-logs.zip"
Respostas de Erro
413 — Payload Too Large
{
"error": "payload_too_large"
}
403 — ZDR Organization
{
"error": "zdr_org"
}
Códigos de Erro
| Código | Significado |
|---|---|
400 | Campos obrigatórios ausentes ou inválidos |
403 | Proibido (organização ZDR, sem permissão) |
413 | Payload muito grande (excede ~50MB) |
429 | Rate limit excedido |
500 | Erro interno |