Métricas
Indicadores agregados de volumen, tiempos y flujo de los avalúos.
Datos agregados para tableros e informes. Requieren metrics:read.
GET
/v1/metricasmetrics:readIndicadores agregados del sistema
GET
/v1/metricas/flujometrics:readEstado de cada avalúo dentro del proceso
Indicadores
GET
/v1/metricasmetrics:readIndicadores agregados del sistema
Volumen, tiempos promedio (en segundos; null si no hay datos en el rango), embudo del flujo, series temporales, reglas más incumplidas, documentos normativos más citados y actividad por perito y por controlador.
- Las series traen todos los buckets del rango, con ceros en los periodos sin actividad.
- Límites:
reglastop 15,normativastop 10,por_peritoypor_controladortop 25.
Parámetros
| Campo | Tipo | Descripción |
|---|---|---|
?desde | fecha ISO 8601 | En la query. Inicio del rango (ISO 8601). Por defecto: 90 días antes de hasta. |
?hasta | fecha ISO 8601 | En la query. Fin del rango (ISO 8601). Por defecto: ahora. |
?granularidad | dia | semana | mes | En la query. Tamaño de cada bucket de series. (por defecto "dia") |
Petición
curl "$API_URL/v1/metricas" \
-H "x-api-key: $API_KEY"Respuesta
200 — Indicadores del rango.
{
"rango": {
"desde": "2026-06-16T00:00:00.000Z",
"hasta": "2026-09-14T00:00:00.000Z",
"granularidad": "semana"
},
"volumen": {
"avaluos_creados": 42,
"evaluaciones_ejecutadas": 51,
"certificados_emitidos": 30,
"reprocesos": 6,
"dictamenes_emitidos": 25,
"tasa_aprobacion_ia_pct": 71.4,
"tasa_aprobacion_control_pct": 88
},
"tiempos": {
"procesamiento_documento_seg": 94,
"evaluacion_ia_seg": 310,
"correccion_perito_seg": 86400,
"verificacion_a_dictamen_seg": 1800,
"certificado_a_dictamen_seg": null,
"job_latency_ms": 1200
},
"flujo": {
"pendiente_validacion": 5,
"en_correccion": 6,
"validado": 8,
"aprobado_revision_interna": 22,
"rechazado_control": 3,
"error": 1
},
"series": [
{
"bucket": "2026-06-15T00:00:00.000Z",
"creados": 3,
"aprobados": 2,
"correccion": 1,
"certificados": 2,
"dictamenes": 1
}
],
"reglas": [
{
"codigo_regla": "MER-005",
"titulo": "Diferencia vs mercado",
"severidad": "tecnico",
"seccion_avaluo": "mercado",
"total": 12,
"justificados": 4,
"pendientes": 8
}
],
"normativas": [
{
"documento": "Metodología SHF",
"institucion": "SHF",
"veces": 9
}
],
"por_perito": [
{
"perito_id": "usr_7",
"avaluos": 10,
"aprobados": 7,
"correccion": 2,
"reprocesos": 1,
"criticos": 3
}
],
"por_controlador": [
{
"controlador_id": "ctl_2",
"controlador_nombre": "Luis R.",
"dictamenes": 12,
"aprobados": 11,
"rechazados": 1,
"verificaciones_fallidas": 0,
"tiempo_medio_seg": 2400
}
]
}Errores
| HTTP | Cuándo ocurre |
|---|---|
400 | desde o hasta no son fechas ISO 8601, granularidad no es dia, semana o mes, o se envió un parámetro no permitido. |
401 | API Key ausente, inválida, revocada o expirada. |
403 | La API Key es válida pero le faltan permisos: Faltan scopes: <scope>. |
429 | Se superó el límite de peticiones (rate limit). |
Avalúos por etapa del flujo
GET
/v1/metricas/flujometrics:readEstado de cada avalúo dentro del proceso
Tabla paginada del flujo global, ordenada por última actualización (más reciente primero): pendiente de validación, en corrección, validado, aprobado para revisión interna, rechazado por control o error.
Parámetros
| Campo | Tipo | Descripción |
|---|---|---|
?etapa | pendiente_validacion | en_correccion | validado | aprobado_revision_interna | rechazado_control | error | En la query. Sólo los avalúos en esa etapa del flujo. Un valor desconocido responde 400. |
?desde | string | En la query. Creados a partir de esta fecha, ISO 8601 (2026-06-24 o 2026-06-24T18:30:00Z). |
?hasta | string | En la query. Creados hasta esta fecha, ISO 8601 (2026-06-24 o 2026-06-24T18:30:00Z). |
?search | string | En la query. Filtra por folio: coincidencias que lo contengan, sin distinguir mayúsculas. |
?page | integer | En la query. Página a devolver (desde 1). (mín. 1) (por defecto 1) |
?page_size | integer | En la query. Elementos por página. (mín. 1) (máx. 100) (por defecto 20) |
Petición
curl "$API_URL/v1/metricas/flujo?desde=2026-06-01&hasta=2026-06-30&search=000123" \
-H "x-api-key: $API_KEY"Respuesta
200 — Página del flujo global.
{
"data": [
{
"folio": "AVL-2026-000123",
"estado": "approved",
"etapa": "validado",
"perito_id": "usr_7",
"institucion": "BBVA",
"tipo_inmueble": "CASA_HABITACION",
"documento_version": 2,
"certificado_emitido_at": "2026-09-01T18:00:00.000Z",
"dictamen": null,
"dictamen_at": null,
"controlador_nombre": null,
"created_at": "2026-08-30T15:00:00.000Z",
"updated_at": "2026-09-01T18:00:00.000Z"
}
],
"page": 1,
"page_size": 20,
"total": 57,
"total_pages": 3
}Errores
| HTTP | Cuándo ocurre |
|---|---|
400 | etapa no es una de las etapas del flujo, desde o hasta no son fechas ISO 8601, page es menor que 1, page_size está fuera de 1–100 o se envió un parámetro no permitido. |
401 | API Key ausente, inválida, revocada o expirada. |
403 | La API Key es válida pero le faltan permisos: Faltan scopes: <scope>. |
429 | Se superó el límite de peticiones (rate limit). |