Skip to content

Getting routes

Routes are built per day and warehouse: Orda assigns new orders to vehicles respecting weight and volume, delivery windows, the driver’s shift and lunch, the start point (warehouse or the driver’s home), and computes arrival times, kilometres and fuel.

Окно терминала
curl -s -X POST "$ORDA_API/plans" -H "X-Api-Key: $ORDA_KEY" -H "Content-Type: application/json" \
-d '{ "date": "2026-11-20", "warehouseId": "<warehouse uuid>", "quality": "best" }'

vehicleIds limits the vehicles; quality is fast or best. The result is a draft; building again for the same day replaces it. Usually the dispatcher builds and edits the plan, and your system only takes the approved result.

GET /plans?date=2026-11-20 lists the day’s plans; GET /plans/{id} returns the plan with totals, unassigned (no_location, does_not_fit) and routes[]: vehicle, driver, leaveAt, returnAt, distanceKm, durationMin, loadKg, loadPct, fuelL, fuelCost and a timeline of stops — kind (home, load, delivery, break, end), orderId, orderNumber, customerName, address, location, arriveAt, departAt, waitingMin, distanceKm. Times are in the company’s time zone.

POST /plans/{id}/approve (routes.approve) makes the plan final; its orders become assigned.

Recommended: subscribe to plan.approved (it lists the plan’s orders), then call GET /plans/{planId} once and create trip sheets on your side. Draft routes arrive as route.planned if you show forecasts before approval. Without webhooks, poll GET /plans?date=… at most once a minute and take plans with status: "approved".