- Your database as the source of truth
- Your identity provider (JWT) — your sole IdP
- Your SMS, email & push — you do the sending
- Your UIs and your map library — fully headless
NIKA Routing Engine
Optimize, dispatch, and track every delivery — from one headless API
A developer-first route optimization API for last-mile and fleet operations: optimize multi-stop routes, ingest live GPS, compute ETAs from a travel-time model that learns your roads, and stream map-ready data and signed webhooks into your own apps. You build the UI — NIKA runs the delivery brain.
Built for fleets, field teams, and delivery networks — identity-free by design.
Route optimization
Optimization, not manual assignment.
Post your riders and stops with their real constraints — shift windows, vehicle capacity and cold-chain, delivery windows, per-stop service time, priority. The solver returns balanced trips and the time and distance you saved, in well under a second.
- Every limit is a per-request parameter — never a hidden system cap
- Choose the objective: minimize time, distance, or balanced
- Re-optimize the remainder live when a rider drops or traffic hits
- Drive time9.4 h
- Distance142 km
- Routes1 · crosses
One rider, backtracking, no time-window respect.
Live tracking
One stream, scoped to every audience.
Ingest rider GPS at the edge and fan it back out as GeoJSON over WebSocket. Ops sees the whole fleet; each recipient gets a tokenized link that reveals the rider only on its active leg — never while it serves someone else.
- Capability tokens scope each link to a single delivery
- Per-leg gating — the rider appears only when it's your stop
- WebSocket or SSE, with map-ready GeoJSON frames
Events out
Events out — your stack sends the messages.
NIKA emits signed delivery.* events carrying a tracking link; your existing messaging maps them to its own SMS, WhatsApp, or push templates and sends. You keep full control of channels, language, and consent — and we never touch a phone number.
- HMAC-SHA256 signed, retried with backoff for 24 h
- Identity-free — events carry an opaque route_id, never your order
- Drop-in receiver if your CRM has no webhook pattern yet
ETAs that learn your roads
The map is wrong. Your deliveries fix it.
Off-the-shelf routing is only as good as its map — and in most of the world, local roads, informal routes, and real traffic aren’t in it. Every tracked delivery produces de-identified, k-anonymized segment travel-times that train a model unique to your operation. ETA and route quality compound, corridor by corridor, with volume.
The data flywheel
- 1
- 2
- 3
- 4
Where the world’s map is wrong, your own deliveries become the map. You own the learning loop — not a vendor’s.
Built for developers
Three calls from zero to live tracking.
JSON over HTTPS, versioned under /v1. The optimization request models Google’s Route Optimization API shapes, so it’s familiar from the first call.
Optimize riders + deliveries into trips
Post your vehicles and stops with their constraints. Every limit is a parameter, never a system cap.
POST /v1/route-optimization X-API-Key: ‹key›
{
"optimize_for": "time", // time | distance | balanced
"riders": [
{ "ref": "r_204", "shift": {"start":"08:00","end":"16:00"},
"max_stops": 20, "capacity": { "cold_chain": 4 } }
],
"deliveries": [
{ "dropoff": {"lat":5.6037,"lng":-0.1870},
"window": {"start":"08:00","end":"16:00"},
"service_time_min": 4, "priority": "normal" }
]
}
200 { "trips":[ {"rider_ref":"r_204","drive_min":312,"km":58} ],
"savings": {"hours": 5.2, "km": 54} }Bring your own map
Headless geometry that drops into any map library.
Everything geometric leaves the API as GeoJSON or encoded polylines — basemap-independent overlay data that renders unchanged over your tiles, with stable feature IDs so the client updates layers in place instead of redrawing.
- Leaflet
- MapLibre GL
- Mapbox GL JS
- Google Maps JS
- deck.gl
Headless by design
You keep the platform. NIKA runs the routing brain.
A decoupled service that never touches your order database — two inbound calls and one signed outbound webhook contract. Drop it in beside what you already run.
- On-demand route optimization
- GPS ingestion & real-time fan-out
- Routing, ETA & geocoding
- Signed webhooks out — your messaging consumes
Identity-free by default — portable to HIPAA.
No NIKA component holds identity — only an opaque route_id, coordinates, and derived travel-time matrices. TLS everywhere, capability tokens for public links, an append-only audit log, and raw GPS purged on completion. When a BAA or HIPAA applies, the same component design redeploys into a BAA-eligible region — only the hosting target changes, never the design.
Integrations
Have a fleet, a clinic network, or a delivery operation? Let’s scope it.
See it at work in logistics & supply chain