La devolución del orden de rutas por API, devuelve las rutas con sus clientes y su orden.
La exportación de contenido mediante API requiere de la creación por parte del usuario de un token de acceso. Este token es un string que identifica a un usuario dentro de una aplicación o servicio, para realizar llamadas a la API.
1. Creación del token #
Para obtener este token de acceso tendrá que tener un usuario creado en nuestra plataforma con el rol de técnico. En el momento de la creación de la cuenta en Polpoo se creará automáticamente un usuario técnico. Las credenciales de dicho usuario serán enviadas en el correo de bienvenida. En caso de querer crear otra cuenta de usuario de tipo técnico, hay que ir a la sección de Gestión y en la pestaña de Usuarios clicar en + Crear usuario y rellenar todos los campos; indicando el rol de usuario como técnico.
Los parámetros de conexión de la conexión API son los siguientes:
URL: https://v2.restapi.polpoo.com/api/oauth/token_integrator
MÉTODO: POST
CONTENIDO: application/json
Para obtener el token de acceso se deberá hacer una petición API con el siguiente esquema de código
{
"client_id": 1,
"client_secret": "tT96kecNtYVf92dvRfQ1Ikj6sjsx5tKZzaCCpHun",
"username": "integration@company.com",
"password": "secret_password",
"grant_type": "password"
}
Los campos client_id, client_secret y grant_type son constantes, es decir, no deben modificarse en ningún caso. Por otra parte, los campos username y password sí que son modificables, y deberán rellenarse con los datos del usuario creado anteriormente como técnico. Este usuario os lo facilitará Polpoo.
2. Respuesta de la API #
Una vez establecida la conexión y hecha la petición a la API, se recibirá la respuesta por parte de nuestro sistema con el token de acceso.
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiI",
"refresh_token": "def50200388a50a45925d65",
"expires_in": 86400,
"token_type": "Bearer",
"username": "integration@company.com"
}
3. Recoger el orden de las rutas #
Los parámetros de conexión de la conexión API son los siguientes:
URL: https://v2.restapi.polpoo.com/api/integration/route/planified
MÉTODO: POST
CONTENIDO: application/json
4. Especificaciones del campo #
date datetime – obligatorio
Fecha de las rutas que quieras recoger.
5. Ejemplos y descargables #
{
"date":"2024-11-08"
}
6. Respuesta de la API #
La API responderá con la información de todas las rutas que haya para la fecha indicada.
{
"data": [
{
"ruta": "U-1",
"totalKg": 1595,
"totalVolumen": 12.2,
"departureDayTime": 2,
"vehicles": [
{
"id": 1612,
"registration": "9724MBJ",
"idERP": "1",
"user": {
"id": 4359,
"name": "Joel",
"surname": "Digon Martinez",
"idERP": "020"
}
}
],
"deliveryZoneId": "U-1",
"deliveryPoints": [
{
"id": "01884949",
"name": "prueba particular",
"order": 1,
"estimatedArrivalTime": 21600,
"orderNumber": null,
"coordinates": {
"latitude": 0,
"longitude": 0
},
"address": "Avinguda del Mil·lenari, 5E, 08840 Barcelona",
"deliveryType": "pickup"
},
{
"id": "4023113",
"name": "Bar PAU",
"order": 2,
"estimatedArrivalTime": 21720,
"orderNumber": null,
"coordinates": {
"latitude": 41.309885,
"longitude": 2.000365
},
"address": "Av. de Llorenç Puig, 58, 08840 Viladecans, Barcelona",
"deliveryType": "shipment"
}
]
}
]
}
4. Especificaciones de los campos #
uta string
Nombre de la ruta.
totalKg integer
Sumatorio del total de kilogramos de todos los elementos de la ruta.
totalVolumen float
Sumatorio del total del volumen de todos los elementos de la ruta.
departureDayTime integer
Hora de inicio de la ruta.
vehicle.id integer
Id del vehículo.
vehicle.registration string
Matrícula del vehículo.
vehicle.idERP string
Id del ERP del vehículo.
vehicle.user.id integer
Id del chofer.
vehicle.user.name string
Nombre del chofer.
vehicle.user.surname string
Apellidos del chofer.
vehicle.user.idERP string
Id del ERP del chofer.
deliveryZoneId string
Id de zona.
deliveryPoints.Id string
Identificador del punto de entrega.
deliveryPoints.name string
Identificador del punto de entrega.
deliveryPoints.order integer
Orden del cliente en la ruta.
deliveryPoints.estimatedArrivalTime integer
Tiempo de llegada estimada a ese punto de entrega.
deliveryPoints.orderNumber integer
Número del pedido referente al punto de entrega.
deliveryPoints.coordinates.laitutde integer
Coordenada de latitud de la dirección de entrega.
deliveryPoints.coordinates.longitude integer
Coordenada de longitud de la dirección de entrega.
deliveryPoints.address string
Dirección del cliente.
deliveryPoints.deliveryType string
Tipo de envío (shipment/pickup)