En este apartado, supondré que claramente ya saben que es la especificación JSON:API y conocen el objeto data. Así que si no lo han hecho deberían hacerlo!. Sin más en este ultimo post analizaremos los objetos faltantes siendo:
ErrorsLinks
Included#Errors
Posiblemente el segundo miembro más importante después de data, es errors. Ya que contiene como su nombre lo indica, todos los objetos de error y debe ser un array.
Como observamos en la imagen la estructura, seré breve explicado cada uno de los key's, empezando por:
status se recomienda usar un status http que haga referencia a el title del error, si no saben todos los estatus http, denle click a.k.a.
El detail puede ser una breve descripción de qué causa el error y el source que es un objeto que apunta al lugar dentro del documento que contiene dicho error.
De igual manera se puede utilizar otros miembros como links, meta, pero nunca data cuando se devuelve errors.
#LinksPor lo general este contiene los enlaces de una paginación, y es común complementar con el objeto meta para enviar más info relevante.
Como recordaran dentro del Resources Object, en relationships si mostramos el miembro links sería para conocer los url para manipular la relación y acceder a los datos de la misma, si quisiéramos incluir los datos y/o atributos de la relación es dónde usamos included, el cual contiene todos los Resources Object, que están relacionados con los datos primarios, y se le conoce como Compound Document.
Esto es una breve explicación de los elementos que forman parte de una respuesta con la especificación JSON:API, si tienen dudas comentarios, dejen sus comentarios, igual siempre es bueno consultar la documentación oficial.
~Happy Coding