application/problem+json:
type– Un URI que identifica el error en el catálogo de errores de Lerian, construido comohttps://errors.lerian.studio/v1/<code>. Este URI repitecode, 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 RFCabout: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 respuesta500reemplaza el texto porinternal error, de modo que la causa interna permanece dentro del riel. El texto varía según la ocurrencia, y un403puede 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 destatusycode, no solo porcode. Un código puede aparecer bajo más de un estado, y cada estado necesita una acción diferente. El códigoSILOC-0002lleva 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, yerrorsnombra los campos con el fallo.errors– Una lista opcional de detalles en el nivel de campo, cada uno con ellocationque leyó, unmessagey elvalueencontrado allí.
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.
