Pedidos dentro. Rutas fuera.
Envíe trabajos desde el sistema que ya utiliza y reciba una ruta secuenciada con sus propios identificadores intactos. Tres endpoints, sin necesidad de SDK.
Tres llamadas, y esa es toda la superficie
| Verbo | Ruta | Propósito |
|---|---|---|
| POST | /v1/integration-token | Canjear credenciales de cliente por un token bearer, válido una hora |
| POST | /v1/integration-import | Importar un trabajo con sus paradas, geocodificar las direcciones, optimizar la ruta y asignar el conductor — en una sola petición |
| GET | /v1/integration-jobs | Estado del trabajo y de las paradas: recuentos de progreso, estado por parada, el orden optimizado |
Importar, geocodificar, optimizar, asignar
POST /v1/integration-import HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/json
{
"external_job_id": "WMS-2026-07-30-A",
"driver_email": "driver@fleet.com.au",
"optimize": true,
"stops": [
{ "external_stop_id": "SO-88214",
"address": "3/216 Brunswick St, Fitzroy VIC 3065",
"parcel_count": 2,
"duration_minutes": 4 }
]
}{
"job_id": "job_7Yq2c",
"external_job_id": "WMS-2026-07-30-A",
"assigned_to": "driver@fleet.com.au",
"optimized": true,
"stops_imported": 142,
"stops": [
{ "external_stop_id": "SO-88214",
"stop_id": "stp_9f2",
"sequence": 38,
"status": "pending" }
],
"warnings": []
}Sus identificadores se conservan
Cada identificador que envía vuelve a la salida, en el trabajo y en cada parada. Nunca tiene que mantener una tabla de correspondencias entre sus números de pedido y los nuestros.
| external_job_id | Su propia referencia de lote — vuelve en cada parada, así que no necesita una tabla de correspondencias |
| external_stop_id | Su número de pedido o de envío, arrastrado hasta el estado y la finalización |
| address | Una sola línea de dirección; se geocodifica al importar y los fallos vuelven como avisos |
| parcel_count | Se usa para las hipótesis de carga y manipulación en la parada |
| duration_minutes | Tiempo de servicio en la puerta — se gasta en el modelo, no se da por supuesto |
| driver_email | Asigna la ruta terminada a un conductor que ya está en la cuenta |
Qué hace cuando algo va mal
Escrituras idempotentes
Reimportar el mismo external_job_id actualiza el trabajo en lugar de crear un segundo. Reintentar tras un timeout es seguro.
Éxito parcial
Una parada que no puede geocodificarse vuelve en warnings[] con el resto del trabajo importado. La petición no falla entera porque una dirección esté mal.
Versionado
La versión va en la ruta. Dentro de una versión se añaden campos, pero nunca se eliminan ni se reutilizan para otra cosa, así que una integración escrita hoy sigue funcionando.
Las claves de sandbox son gratuitas
Desarrolle contra un sandbox antes de comprometerse a nada. Pídanoslo y le enviaremos credenciales y un ejemplo resuelto con su propio formato de datos.