micronav

micronav APIs

Geocoding, routing, map tiles and trip reconstruction on OpenStreetMap data. Plain REST over HTTPS, one API key, JSON in and out. The pilot is hosted in Sydney. Regional self-hosting can be scoped separately.

On this page
Authentication Geocoding / search Routing Map tiles Trip reconstruction Fair use

Authentication

Search, routing and trip reconstruction carry your key in the X-API-Key header. Keys look like mk_…. Base URL for all endpoints:

https://georide.co.in

To get a key during the pilot, email daanish1sharma@gmail.com — we issue it the same day. Self-hosting? You run the stack and mint your own keys.

Routing Live

A driving route between two points: the line to draw, distance, time, and turn-by-turn instructions. Routes use the local engine where covered and an on-demand online fallback elsewhere. Online availability and OSM road coverage are not guaranteed.

GET /api/nav/route?start=<lat,lon>&end=<lat,lon>

curl "https://georide.co.in/api/nav/route?start=30.34,76.39&end=30.74,76.79" \
  -H "X-API-Key: mk_your_key"

{
  "distance_m": 67100,
  "time_s": 4260,
  "points": [[30.3401, 76.3912], [30.3408, 76.3920], ...],   // [lat, lon] along the route
  "instructions": [
    {"text": "Head toward NH-7", "distance_m": 320, "time_s": 40, "sign": 0, "at": [30.3401, 76.3912]},
    {"text": "Turn right onto Rajpura Road", "distance_m": 2100, "time_s": 180, "sign": 2, "at": [30.3429, 76.3951]}
  ]
}

sign is the turn direction (negative = left, positive = right, 0 = straight, 4 = arrive). at is where the instruction applies.

Map tiles Live

Tiles and style are currently public endpoints; the search, routing and reconstruction APIs require authentication. Tile availability outside the local archive depends on the upstream source. No production SLA is offered during the pilot.

Vector map tiles (Mapbox Vector Tile format, gzip-encoded) and a ready-made light map style. Drop them straight into MapLibre.

GET /tiles/{z}/{x}/{y}.mvt  ·  GET /api/nav/style.json

const map = new maplibregl.Map({
  container: 'map',
  style: 'https://georide.co.in/api/nav/style.json',
  center: [76.39, 30.34], zoom: 13
});

Tiles for your area are fetched and cached on demand, so any city works without a separate download. Map data © OpenStreetMap contributors — keep the attribution visible.

Trip reconstruction Live

Send the raw GPS points of a trip; get a clean track, true distance, duration, top speed, harsh-braking events and GPS gaps. Optionally include phone motion samples for accuracy through GPS outages. Nothing you send is stored.

POST /v1/trips/reconstruct

curl https://georide.co.in/v1/trips/reconstruct \
  -H "X-API-Key: mk_your_key" -H "Content-Type: application/json" \
  -d '{"points": [
        {"t": 1792238425, "lat": 30.3583, "lon": 76.3854, "acc": 5},
        {"t": 1792238426, "lat": 30.3584, "lon": 76.3855, "acc": 5},
        {"t": 1792238427, "lat": 30.3585, "lon": 76.3856, "acc": 6}
      ]}'

{"distance_km": 4.15, "duration_min": 11.6, "max_speed_kmh": 67.3,
 "harsh_braking": 0, "gps_gaps": 0, "precise": false,
 "track": [[30.35831, 76.38543], ...]}

t is Unix time in seconds, acc the reported GPS accuracy in metres (optional). precise is true when motion sensors were used.

Fair use

The pilot runs on shared infrastructure, so keep request rates reasonable and cache what you can. Need higher volume, an SLA, or a dedicated or self-hosted deployment? Talk to us — that's the paid tier.