What a route is
The core of a route is itsstops array, which lists the locations to visit in order. Each stop details:
- The kind of stop (
stopType) - Associated items (
objectIds) - Timing estimates (
arrivalTime,departTime,serviceTime) - Travel details from the prior stop (
distanceFromPrevious,durationFromPrevious) - The physical coordinates (
location)
GET /v1/routes/{id}).
Creating & updating routes
Use Create or Update Route (POST /v1/routes) to create a new route or update an existing one by providing the route configuration and its stop details. This is the manual path: you supply the ordered stops yourself.
You can recalculate timing for a route with POST /v1/routes/{id}/calculate-timing, which computes per-stop ETAs and a polyline using truck routing, updating each stop’s arrival and departure times and returning the route polyline.
You don’t have to build routes by hand. Route optimization generates routes for you from a set of orders, and can save them as route objects you then dispatch.
Dispatching routes
Once a route is planned, dispatch it with Dispatch Routes (POST /v1/routes/dispatch). This creates jobs for each route and assigns them based on your organization’s dispatch strategy.
Pass the route IDs to dispatch:
When
autoDispatch is true, the resulting jobs are sent to a provider immediately according to your dispatch strategy. Set it to false to create the jobs without dispatching them right away.
Remove an order from dispatch
You can remove a dispatched, route-based order by either identifier:- Remove by external ID:
POST /v1/orders/external-identifier/{external_id}/undispatch - Remove by Nash order ID:
POST /v1/orders/{order_id}/undispatch
status: valid. The request has no body.
These operations apply only to an order that is currently dispatched and associated with a route. A standalone order or an order that has not been dispatched returns an error.
Routes vs. route optimization
It’s worth separating two related concepts:- A route is the data object — a defined, ordered sequence of stops. You can author routes directly via the API.
- Route optimization is the engine that produces routes. Given a set of orders and your fleet constraints, the optimizer solves the Vehicle Routing Problem (VRP) — balancing capacity, time windows, driver shifts and breaks, vehicle profiles, traffic, and cost — and returns efficient routes.
Next steps
Create or update route
Build or modify a route and its stops.
Get route
Retrieve a route’s stops, metrics, and orders.
Dispatch routes
Turn routes into jobs and dispatch them.
Remove an order from dispatch
Return a route-based order to a valid, pre-dispatch state.
Route optimization
Generate optimized routes from a set of orders.