Skip to main content
Todos los errores de la Facade API tienen la misma forma, sin importar el recurso o el endpoint. Esto hace que tu integración sea predecible: parseas la respuesta de error una sola vez y la reutilizas en toda la API.

Estructura uniforme

string
Código estable y legible por máquina. Úsalo para ramificar tu lógica de manejo de errores (no parsees el message).
string
Mensaje legible para personas. Puede cambiar con el tiempo: no lo uses para tomar decisiones en tu código.
array
Presente en errores de validación. Lista de { field, issue } que indica qué campo falló y por qué.
string
Identificador único de la petición. Compártelo con soporte para rastrear exactamente qué pasó.

Catálogo de códigos

RESOLUTION_ERROR indica que la organización asociada a tu token no está bien configurada en el sistema (por ejemplo, le faltan modalidades activas). Si lo ves de forma persistente, contacta a soporte con el requestId.
El 401 puede llegar en dos formas. Si la falla ocurre en el API Gateway (falta la x-api-key o el token, o son inválidos), la respuesta es {"message":"Unauthorized"}, sin el objeto error. Si la petición pasa el gateway pero la Facade rechaza la autenticación, usa la forma estándar con error.code: AUTHENTICATION_FAILED.

Recomendaciones

Rama por code

Decide tu lógica con error.code, nunca con el texto de message.

Guarda el requestId

Registra el requestId en tus logs: es la forma más rápida de que soporte rastree una petición.

Reintenta con idempotencia

Ante 429, 500 o 502, reintenta con la misma Idempotency-Key para evitar duplicados.

Valida antes de enviar

Usa error.details para mostrar a tus usuarios qué campo corregir en errores 400.