Configuración
Parámetros del motor de evaluación que se pueden ajustar sin desplegar.
Radios de búsqueda, umbrales y tolerancias que usa el motor. Un cambio aplica a las
evaluaciones siguientes, no a las que ya terminaron. Requieren config:read o
config:write.
/v1/configuracionesconfig:readParámetros operativos vigentes
/v1/configuraciones/{clave}config:writeCambia el valor de un parámetro
/v1/configuraciones/{clave}/resetconfig:writeRestablece un parámetro a su valor de fábrica
/v1/configuraciones/{clave}/historialconfig:readBitácora de cambios de un parámetro
Los parámetros de la certificación
Dos parámetros deciden cuándo se puede emitir el certificado:
| Clave | Por defecto | Efecto |
|---|---|---|
evaluacion.max_criticos_certificacion | 0 | Hallazgos críticos sin justificar que se toleran. Por encima: 409 CRITICOS_PENDIENTES. |
evaluacion.max_pendientes_certificacion | 0 | Hallazgos de cualquier severidad sin justificar que se toleran. Por encima: 409 HALLAZGOS_PENDIENTES. |
El segundo siempre cuenta también los críticos: subir sólo el primero no relaja nada si el
segundo sigue en 0.
Consultar
Listar parámetros
/v1/configuracionesconfig:readParámetros operativos vigentes
Parámetros que el motor lee al inicio de cada evaluación: el radio de cobertura, los umbrales de población, las tolerancias y los criterios de certificación.
| Campo | Tipo | Descripción |
|---|---|---|
?grupo | string | En la query. Sólo los parámetros de ese grupo (texto libre, p. ej. mercado, antecedentes o evaluacion). Un grupo desconocido devuelve una lista vacía. |
curl "$API_URL/v1/configuraciones?grupo=mercado" \
-H "x-api-key: $API_KEY"200 — Parámetros vigentes.
{
"configuraciones": [
{
"clave": "mercado.radio_km_default",
"grupo": "mercado",
"etiqueta": "Radio de cobertura por defecto",
"descripcion": "Radio inicial de búsqueda de comparables de mercado alrededor del sujeto.",
"tipo": "numero",
"valor": 8,
"valor_default": 5,
"unidad": "km",
"min": 0.5,
"max": 50,
"editable": true,
"actualizado_por": "Ana Pérez",
"updated_at": "2026-09-14T16:20:00.000Z"
},
{
"clave": "evaluacion.max_pendientes_certificacion",
"grupo": "evaluacion",
"etiqueta": "Hallazgos sin justificar permitidos para certificar",
"descripcion": "Máximo de hallazgos de cualquier severidad sin justificar que aún permiten emitir el certificado.",
"tipo": "numero",
"valor": 0,
"valor_default": 0,
"unidad": null,
"min": 0,
"max": 100,
"editable": true,
"actualizado_por": null,
"updated_at": "2026-09-05T10:00:00.000Z"
}
]
}| HTTP | Cuándo ocurre |
|---|---|
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). |
Historial de un parámetro
/v1/configuraciones/{clave}/historialconfig:readBitácora de cambios de un parámetro
Los últimos 20 cambios de la clave, del más reciente al más antiguo. Una clave desconocida devuelve una lista vacía.
| Campo | Tipo | Descripción |
|---|---|---|
claverequerido | string | En la ruta. Clave del parámetro, p. ej. mercado.radio_km_default. |
curl "$API_URL/v1/configuraciones/mercado.radio_km_default/historial" \
-H "x-api-key: $API_KEY"200 — Últimos cambios registrados.
{
"historial": [
{
"valor_anterior": 5,
"valor_nuevo": 8,
"actor_id": "usr_12",
"actor_nombre": "Ana Pérez",
"created_at": "2026-09-14T16:20:00.000Z"
}
]
}| HTTP | Cuándo ocurre |
|---|---|
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). |
Modificar
Cada cambio queda en el historial con el actor que envíes: indícalo siempre para saber
quién cambió qué.
Cambiar un valor
/v1/configuraciones/{clave}config:writeCambia el valor de un parámetro
Valida el valor contra el tipo y los límites min/max de la clave y registra el cambio en el historial. Los cambios aplican a las evaluaciones nuevas: nada recalcula resultados ya almacenados.
| Campo | Tipo | Descripción |
|---|---|---|
claverequerido | string | En la ruta. Clave del parámetro, p. ej. mercado.radio_km_default. |
| Campo | Tipo | Descripción |
|---|---|---|
valorrequerido | number | string | boolean | object | Nuevo valor; debe cuadrar con el tipo de la clave (numero, texto, booleano o json). No puede ser null. |
actor | object | Persona que hace el cambio, para el historial. |
actor.id | string | Id del usuario en tu aplicación. (máx. 120 caracteres) |
actor.nombre | string | (máx. 160 caracteres) |
curl -X PUT "$API_URL/v1/configuraciones/mercado.radio_km_default" \
-H "x-api-key: $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"valor": 8,
"actor": {
"id": "usr_12",
"nombre": "Ana Pérez"
}
}'200 — Parámetro actualizado.
{
"clave": "mercado.radio_km_default",
"grupo": "mercado",
"etiqueta": "Radio de cobertura por defecto",
"descripcion": "Radio inicial de búsqueda de comparables de mercado alrededor del sujeto.",
"tipo": "numero",
"valor": 8,
"valor_default": 5,
"unidad": "km",
"min": 0.5,
"max": 50,
"editable": true,
"actualizado_por": "Ana Pérez",
"updated_at": "2026-09-14T16:20:00.000Z"
}| HTTP | Cuándo ocurre |
|---|---|
400 | Cuerpo o parámetros inválidos. message es un arreglo con un texto por problema (campo faltante, tipo incorrecto o campo no permitido). valor es obligatorio y no puede ser null; actor.id admite hasta 120 caracteres y actor.nombre hasta 160. |
401 | API Key ausente, inválida, revocada o expirada. |
403 | La API Key es válida pero le faltan permisos: Faltan scopes: <scope>. |
404 | La clave no existe: La configuración '<clave>' no existe. |
409 | El parámetro no es editable (CONFIGURACION_NO_EDITABLE). |
422 | El valor no cuadra con la clave: '<clave>' espera un número, no puede ser menor que <min>, no puede ser mayor que <max>, espera true o false, espera texto o espera un objeto JSON. |
429 | Se superó el límite de peticiones (rate limit). |
Volver al valor por defecto
/v1/configuraciones/{clave}/resetconfig:writeRestablece un parámetro a su valor de fábrica
Vuelve a poner valor_default como valor vigente y registra el cambio en el historial. El cuerpo es opcional.
| Campo | Tipo | Descripción |
|---|---|---|
claverequerido | string | En la ruta. Clave del parámetro, p. ej. mercado.radio_km_default. |
| Campo | Tipo | Descripción |
|---|---|---|
actor | object | Persona que hace el cambio, para el historial. |
actor.id | string | Id del usuario en tu aplicación. (máx. 120 caracteres) |
actor.nombre | string | (máx. 160 caracteres) |
curl -X POST "$API_URL/v1/configuraciones/mercado.radio_km_default/reset" \
-H "x-api-key: $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"actor": {
"id": "usr_12",
"nombre": "Ana Pérez"
}
}'201 — Parámetro restablecido.
{
"clave": "mercado.radio_km_default",
"grupo": "mercado",
"etiqueta": "Radio de cobertura por defecto",
"descripcion": "Radio inicial de búsqueda de comparables de mercado alrededor del sujeto.",
"tipo": "numero",
"valor": 5,
"valor_default": 5,
"unidad": "km",
"min": 0.5,
"max": 50,
"editable": true,
"actualizado_por": "Ana Pérez",
"updated_at": "2026-09-14T16:20:00.000Z"
}| HTTP | Cuándo ocurre |
|---|---|
400 | Cuerpo o parámetros inválidos. message es un arreglo con un texto por problema (campo faltante, tipo incorrecto o campo no permitido). actor.id admite hasta 120 caracteres y actor.nombre hasta 160. |
401 | API Key ausente, inválida, revocada o expirada. |
403 | La API Key es válida pero le faltan permisos: Faltan scopes: <scope>. |
404 | La clave no existe: La configuración '<clave>' no existe. |
429 | Se superó el límite de peticiones (rate limit). |