GET /usage
Devuelve métricas de uso del tenant agregadas por día. Útil para dashboards de monitoreo y análisis de tendencias.
GET /api/v1/fe/usage?days=30
Authorization: Bearer <JWT>Scope requerido: usage:read
Query params
| Param | Tipo | Default | Max | Descripción |
|---|---|---|---|---|
days | number | 30 | 180 | Cuántos días atrás incluir |
Response — 200 OK
{
"from": "2026-05-16",
"to": "2026-06-15",
"items": [
{
"date": "2026-05-16",
"environment": "ecf",
"requestsTotal": 1247,
"requestsSuccess": 1198,
"requestsError": 49,
"emissionsSubmitted": 1247,
"emissionsAccepted": 1180,
"emissionsAcceptedConditional": 18,
"emissionsRejected": 29,
"emissionsPending": 20,
"bytesIn": "62350000",
"bytesOut": "8920000",
"avgLatencyMs": 1850,
"p95LatencyMs": 3200
},
{
"date": "2026-05-16",
"environment": "testecf",
"requestsTotal": 45,
/* ... */
}
/* ... más entries — una por (date, environment) ... */
]
}| Campo | Descripción |
|---|---|
date | YYYY-MM-DD del día |
environment | "ecf" | "testecf" | "certecf" |
requestsTotal | Llamadas HTTP totales del día |
requestsSuccess | HTTP 2xx |
requestsError | HTTP 4xx/5xx |
emissionsSubmitted | POSTs a /invoices |
emissionsAccepted | DGII estado='Aceptado' |
emissionsAcceptedConditional | DGII estado='Aceptado Condicional' |
emissionsRejected | DGII estado='Rechazado' |
emissionsPending | Aún no procesados al cierre del día |
bytesIn | Bytes recibidos (string para evitar overflow JS) |
bytesOut | Bytes enviados |
avgLatencyMs | Latencia promedio (incluye DGII roundtrip) |
p95LatencyMs | Percentil 95 |
Notas
- Los datos del día actual se agregan a la medianoche UTC siguiente.
Para el contador real-time del día en curso, usa
GET /billing/current-period. bytesInybytesOutvienen como strings porque pueden excederNumber.MAX_SAFE_INTEGERen períodos largos. Convierte aBigIntoDecimalen tu cliente.- Sin datos para un (date, environment) → no aparece esa entry en
items. No es un error.