Background - API1Created with Sketch.

Custom Response

¿Qué es Custom Response?

Custom Response permite la personalización del retorno de nuestras APIs para que puedas atender mejor tu negocio.

Usando el abordaje de selección de atributos, puedes escoger los datos que deseas recibir, haciendo la integración más ágil y fácil de comprender.

Esto se efectúa pasando un query param de nombre select, que te permite escoger qué atributos estarán presentes en el body de la respuesta de tu solicitud HTTP. Este puede ser usado en cualqiuer verbo HTTP (GET, POST, PUT, PATCH, DELETE) disponible en nuestros endpoints.

Recibirás los datos solo de los atributos que informes, desconsiderándose los demás. Si ningún atributo es encontrado, el retorno será un JSON vacío.

Parámetros de la solicitud

  • selectString

    Lista de atributos que se desea seleccionar, sus valores están separados por coma.

    Si el atributo que necesitas seleccionar está dentro de un Objeto, como por ejemplo el país del domicilio de un Productor, puedes atribuir el valor address.country al query param select.

    Si el atributo que necesitas seleccionar está dentro de un Array, como por ejemplo el nombre de los productos de un Productor, puedes atribuirle el valor products.nome al query param select.

    En endpoints de Paginação , puedes simplemente atribuirle al query param select los atributos contenidos en los items, pudiendo solo estos atributos ser personalizados.

Selección de Dados

El ejemplo de respuesta informado posee diferentes tipos de datos, en este caso tenemos id y name de tipo simple, address como un objeto y products como un array de objetos. Para seleccionar cada uno de estos diferentes tipos de datos, deberás hacerlo de la siguiente forma:

TipoQuery paramRetorno
simplesselect=id,nameDados de id e name
objetosselect=addressDados do Objeto de address
arraysselect=productsDados do Arrays de products

Para seleccionar atributos de estructuras más complejas, tales como objetos y arrays, deberás hacerlo de la siguiente forma:

AtributosQuery paramRetorno
objetosselect=address.countryDados de country do address
arraysselect=products.nameDados de name do products
Response
{
  "id": 123,
  "name": "Producer 01",
  "address": {
    "country": "Brazil",
    "city": "Belo Horizonte"
  },
  "products": [
    {
      "id": 1,
      "name": "Product Name 01"
    },
    {
      "id": 2,
      "name": "Product Name 02"
    },
    {
      "id": 3,
      "name": "Product Name 03"
    }
  ]
}

isPageUseful.question