Skip to main content
Formato de error Lerian Consignado devuelve los errores como detalles de problema RFC 9457 con el tipo de contenido application/problem+json:
Definiciones de campos
  • type – Un URI que identifica el error en el catálogo de errores de Lerian. Se construye como https://errors.lerian.studio/v1/<code>.
  • title – El texto del estado HTTP (por ejemplo, Unprocessable Entity).
  • status – El código de estado HTTP.
  • detail – Una explicación legible de esta ocurrencia. En una respuesta 5xx, Consignado sanea el detail a internal error, de modo que una causa interna no queda expuesta en el cuerpo. Distingue por code y por el estado en su lugar.
  • code – Un identificador estable para el error. Las tablas siguientes muestran los códigos CLT-NNNN. Algunas operaciones responden con un código propio, como CURSOR_EXPIRED en el barrido del inventario de registros.
  • errors – Lista opcional de detalles de error individuales, cada uno con un location, un message y un value.
  • upstream – El error propio de Dataprev, cuando el gateway retransmite uno. Contiene el code y el message de Dataprev, y sobrevive al saneamiento 5xx que borra detail. Consulta Códigos de motivo de Dataprev.

400: Solicitud incorrecta


401: No autorizado


403: Prohibido


404: No encontrado


409: Conflicto


CLT-0007 con el detail an identical request is already in flight marca una solicitud que el gateway no ha terminado. Reintenta esa solicitud con la misma clave de idempotencia. Los conflictos de comando responden con un código propio en lugar de CLT-0007, de modo que un cliente pueda distinguirlos. Lee code y detail juntos antes de reintentar. Estas grafías de código son parte del contrato de transmisión y no cambian.

410: Ya no disponible


El barrido paginado del inventario de registros emite un cursor con una ventana de reintento limitada.

413: Entidad de la solicitud demasiado grande


422: Entidad no procesable


500: Error interno del servidor


501: No implementado


Un 501 responde a una operación que tu implementación no habilitó. Las rutas permanecen montadas, de modo que la respuesta llega por solicitud en lugar de como una ruta ausente. Las descargas de artefactos de contrato, las correcciones de contrato, la confirmación de desembolso, el registro de cessão y el envío de ofertas responden 501 hasta que tu implementación los habilite. El detail muestra internal error, porque Consignado sanea el detail en una respuesta 5xx. Distingue por el estado.

503: Servicio no disponible


Cuando Dataprev produjo el fallo, la respuesta también lleva upstream con el código y el mensaje propios de Dataprev.

Códigos de motivo de Dataprev


Consignado retransmite los códigos de motivo de Dataprev en lugar de asignarlos a códigos propios. Esto mantiene un rechazo legible frente a lo que Dataprev dijo realmente. Lee cada código de motivo contra la especificación de Dataprev, no contra esta página. Dataprev puede publicar un código que esta página no incluye, y el gateway igual te lo entrega. Te llegan en dos lugares. En un rechazo. El miembro upstream lleva el code y el message propios de Dataprev, ambos literales. El gateway acota cada campo en la transmisión, de modo que el miembro contiene un código y una frase, no un cuerpo de respuesta. Un 422 lo lleva para un rechazo determinístico, y un 503 lo lleva para un fallo de reintentar más tarde. En las respuestas de contrato y margen. Varios campos de respuesta emparejan un código de motivo de Dataprev con la etiqueta propia de Dataprev para él. Una lectura de margen publica blockType y ineligibilityReason, que forman el par code y description. Una lectura de contrato publica motivo_exclusao, origem_averbacao, origem_exclusao, portabilidade_situacao, y situacao_bloqueio_garantia, que lo forman como codigo y descricao. Cada campo contiene un código numérico y el texto que Dataprev devolvió junto a él. Trata el conjunto como abierto. Asigna los códigos de motivo sobre los que actúa tu integración, y transmite el resto con sus etiquetas, de modo que un código que aún no hayas asignado siga siendo legible para un operador.