Incluyendo entidades en la respuesta

Curso: JSON:API

Cuando trabajamos con una API rest, uno de los mayores inconvenientes es tener que realizar múltiples peticiones para obtener toda la información que necesitamos. Por ejemplo si estamos obteniendo una lista de artículos y queremos también la información del autor, tenemos que realizar una consulta extra por cada autor para poder obtener esa información en caso de que la necesitemos.

Pues bien, JSON:API llega a nuestro rescate para que nos evitemos esas consultas extra ya que nos permite en la misma consulta obtener la información de las entidades relacionadas.

Tenemos que usar “include” e indicarle que entidades queremos que relacione.

include=uid

De esta manera nos incluirá en la parte inferior esas entidades que le indiquemos que nos relacione, en este ejemplo estamos incluyendo el “uid” que es el campo que relaciona el nodo con su autor.

Podemos incluid varios campos separándolos con una coma:

include=uid,field_media_image

Así tendremos tanto la entidad usuario por ser el autor y la entidad media la cual es usada para almacenar la imagen.

Tambien podemos incluir entidades de las entidades incluidas, esto se hace separando los campos por un punto.

include=uid,field_media_image,field_media_image.field_media_image

En esta caso, field_media_image.field_media_image indica que del nodo se incluya la entidad del campo field_media_image y luego de la entidad Media se incluya también el valor del campo field_media_image el cual es una referencia a la entidad file, la cual es realmente la que contiene la información del archivo de la imagen.