Formato de los datos y códigos HTTP

Los datos de respuesta de entrada y salida para cualquier llamada de API pueden verse en formato JSON. JSON (JavaScript Object Notation) es un formato de intercambio de datos ligero. Para recuperar la respuesta en el formato JSON, agregue el encabezado de aceptación de la solicitud con el valor de la aplicación/JSON.
cad140es
Formato de la respuesta de los datos
Los datos de respuesta de entrada y salida para cualquier llamada de API pueden verse en formato JSON. JSON (JavaScript Object Notation) es un formato de intercambio de datos ligero. Para recuperar la respuesta en el formato JSON, agregue el encabezado de aceptación de la solicitud con el valor de la aplicación/JSON.
Ejemplo de elementos en stock en formato JSON:
[{"item_id":"1","product_id":"1","stock_id":"1","qty":"99.0000","low_stock_date":null},{"item_id":"2","product_id":"2","stock_id":"1","qty":"100.0000","low_stock_date":null}]
Códigos de respuesta HTTP
Los estándares SCIM utilizan códigos de respuesta HTTP para indicar si las operaciones son correctas o erróneas. Los códigos de estado HTTP adecuados que describen el error y el cuerpo del mensaje se devuelven para todas las solicitudes en un formato JSON.
Las respuestas de error se identifican mediante el siguiente URI de "esquema": "urn:ietf:params:scim:api:messages:2.0:Error".
La siguiente tabla contiene posibles códigos de estado HTTP comunes.
Códigos de estado HTTP
Descripción
200 (Ok)
La operación se ha realizado correctamente.
201 (Created)
Cuando se crea correctamente un recurso mediante una solicitud POST o PUT. Devuelve el vínculo al recurso recién creado mediante el encabezado de ubicación.
307 (Temporary Redirect)
Cuando se solicita al cliente que repita la misma solicitud HTTP en la ubicación identificada. El cliente no debe utilizar la ubicación proporcionada en la respuesta como la referencia permanente para el recurso y debe continuar utilizando el URI de la solicitud original.
308 (Permanent Redirect)
Cuando se indica al cliente que repita la misma solicitud HTTP en la ubicación identificada. El cliente debe utilizar la ubicación proporcionada en la respuesta como la referencia permanente para el recurso.
204 (No Content)
Cuando el cuerpo de la respuesta está vacío. Por ejemplo, una solicitud DELETE.
400 (Bad Request)
Indica que se ha proporcionado una entrada no válida. Por ejemplo, un error de validación o una falta de datos. Para los tipos de errores específicos de SCIM, consulte RFC 7644.
401 (Unauthorized)
Indica que el usuario está utilizando un token de autenticación erróneo o no válido.
403 (Forbidden)
Indica que el usuario no tiene acceso al método que se está utilizando. Por ejemplo, suprimir el acceso sin derechos de administrador.
404 (Not Found)
Indica que el método no está disponible.
409 (Conflict)
Indica una situación de conflicto mientras se ejecuta el método. Por ejemplo, si se agrega una entrada duplicada.
412 (precondition Failed)
Se ha producido un error al realizar la actualización. El recurso ha cambiado en el servidor.
500 (Internal Server Error)
Indica que el servidor se ha producido una excepción al ejecutar el método.
501 (Not Implemented)
La operación solicitada no es compatible con el proveedor de servicios.
Ejemplo de un error en una respuesta a una solicitud GET inexistente, que se mostrará en formato JSON:
HTTP/1.1 404 Not Found
{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],
"detail":"Resource 2819c223-7f76-453a-919d-413861904646 not found",
"status": "404"
}
Ejemplo de un error en respuesta a una solicitud PUT:
HTTP/1.1 400 Bad Request
{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],
"scimType":"mutability"
"detail":"Attribute 'id' is readOnly",
"status": "400"
}