Skip to main content
Formato de error SILOC 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, construido como https://errors.lerian.studio/v1/<code>. Este URI repite code, por lo que no separa dos estados que comparten un código. Una solicitud que falla la validación de esquema lleva en su lugar el valor predeterminado de RFC about:blank.
  • title – El texto del estado HTTP (por ejemplo, Not Found).
  • status – El código de estado HTTP.
  • detail – Una explicación legible para esta ocurrencia. Una respuesta 500 reemplaza el texto por internal error, de modo que la causa interna permanece dentro del riel. El texto varía según la ocurrencia, y un 403 puede llevar el mensaje que reportó el servicio de autorización. No distingas por él.
  • code – El código estable y procesable por máquina (SILOC-NNNN). Distingue por el par de status y code, no solo por code. Un código puede aparecer bajo más de un estado, y cada estado necesita una acción diferente. El código SILOC-0002 lleva un 401, un 403 y un 503, cada uno con su propia acción. Una solicitud que falla la validación de esquema omite el campo, y errors nombra los campos con el fallo.
  • errors – Una lista opcional de detalles en el nivel de campo, cada uno con el location que leyó, un message y el value encontrado allí.
Las tablas siguientes listan los códigos que devuelve SILOC, agrupados por estado HTTP.

401: Solicitante no identificado


403: Solicitante rechazado


404: No encontrado


409: Conflictos


422: Errores de validación


500: Errores del servidor


503: El riel no puede responder


Un 503 que lleva SILOC-0002 no te dice que el comando fue rechazado. El riel responde con él tanto antes de que el comando se ejecute como después de que se confirme, de modo que el comando ya podría haber surtido efecto. Concilia primero la solicitud original. Cuando reintentes, envía la misma Idempotency-Key, y nunca reintentes bajo una nueva.