Listar Entregas
En Persat, se pueden listar todas las entregas, o las que corresponden a un cliente particular. La consulta a realizar para ambos casos se define aquí.
GET
https://api.persat.com.ar/v1/deliveries
Query Parameters
limit*
number
Mismo concepto de SQL para la paginación. Max: 100. Min: 1.
uid_client
String
Identificador del cliente, en caso de querer obtener las entregas de este cliente particular
next
number
cursor para la próxima página
Headers
Authorization*
String
Bearer API_KEY
Como obtener el listado completo de entregas
Para obtener el listado completo de entregas, hay que hacer una primer consulta sin el parámetro next, y luego sucesivas consultas usando el valor obtenido de next de la consulta anterior
Consulta Inicial
Resultado de la consulta
Más allá de los datos obtenidos en data, lo importante es entender como hacer la siguiente consulta.
paging.total: Es un número que indica la cantidad de Entregas a devolver. Con lo cual para el caso del ejemplo, debería haber devuelto 122 entregas, pero nos entregó 2 (delivery_1 y delivery_2). Esto es porque el limit era 2. Entonces nos quedan por recibir otras 120 entregas.
paging.next: Es un número que debemos enviar en la próxima consulta para obtener las siguientes entregas
data: Es un array de Objetos JSON, en donde cada item es una entrega. Los campos de ese objeto son los mismos que si hicieramos la consulta en Obtener Entrega. Las entregas recibidas vienen ordenadas por fecha de creación "created" de forma descendente. Con lo cual la primer entrega recibida (delivery_1) es la que fue creada recientemente.
Siguientes consultas
Usamos el next recibido en la consulta anterior
Ahora recibimos dos nuevas entregas (porque el limit es 2), y obtenemos un nuevo next.
Como saber si hay mas datos para obtener
Si recibimos next en null, significa que hemos llegado al final de la lista.
No utilizar total == 0 para definir el final de la lista. Ya que total puede tener un valor entero que sea igual al tamaño del array data[].
Por ejemplo, otro final de lista podría ser:
{ "success": true, "paging": { "total": 3, "next": null }, "data": [delivery_1, delivery_2, delivery_3] }
Last updated