N-Ways
Developer docsTracker forwarding

Forward from your tracking platform

Your trackers keep reporting where they do today. Your platform forwards their positions here: no SMS, no visit to the vehicles.

On this page

Turn it on in the console: Fleet → GPS trackers → More → Connect your platform. You get your organisation’s token and the addresses below with it filled in. Units your platform sends are matched to your trackers by their IMEI or unit id; the ones you haven’t added are listed there, each added in one tap.

Warning:

The token in these addresses is the key: keep it secret. If it leaks, give forwarding a new token in the same sheet; the old one stops at once.

Traccar (and GPSWox)

In traccar.xml, forward positions and events as JSON:

traccar.xml
<entry key='forward.enable'>true</entry>
<entry key='forward.url'>https://nways.ng/v1/trackers/forward/YOUR_TOKEN/traccar</entry>
<entry key='forward.json'>true</entry>
<entry key='event.forward.enable'>true</entry>
<entry key='event.forward.url'>https://nways.ng/v1/trackers/forward/YOUR_TOKEN/traccar</entry>

N-Ways reads the device’s uniqueId, the position (speed in knots), and ignition, power, battery, batteryLevel, sat, totalDistance and alarm from its attributes; events ignitionOn, ignitionOff, alarm and deviceOverspeed. Without JSON, a URL template works too:

cURL
https://nways.ng/v1/trackers/forward/YOUR_TOKEN/osmand?id={uniqueId}&lat={latitude}&lon={longitude}&timestamp={fixTime}&speed={speed}&bearing={course}

Wialon and Navixy (Wialon IPS)

Add a retranslator (Wialon) or a forwarding target (Navixy) in the Wialon IPS protocol, to server trk.nways.ng, port 5039. Each unit’s unique id is its IMEI, and its password is your token.

flespi

Add a stream of type HTTP to https://nways.ng/v1/trackers/forward/YOUR_TOKEN/flespi, in flespi’s default message format. N-Ways reads ident, timestamp, position.*, engine.ignition.status, external.powersource.voltage, battery.* and vehicle.mileage.

Any other platform: the webhook

POST JSON to https://nways.ng/v1/trackers/forward/YOUR_TOKEN/webhook, or to https://nways.ng/v1/trackers/forward/webhook with Authorization: Bearer YOUR_TOKEN. One position, an array, or {"positions": [...]}, at most 500 a request and 2 MB.

A position
{"positions": [{
  "unitId": "356307042441013",
  "name": "Hiace 2",
  "lat": 6.6018, "lng": 3.3515,
  "time": "2026-10-23T09:41:00Z",
  "speedKmh": 42, "heading": 90,
  "ignition": true, "extVoltage": 12.6, "batteryPct": 88,
  "alarms": ["sos"]
}]}
FieldWhat it is
unitId (or imei)Required. 4 to 40 letters, digits, - or _: how the unit is matched to your trackers.
lat, lng (or lon)Degrees, WGS 84. Leave both out for an event with no position.
time (or timestamp)ISO 8601, or epoch seconds or milliseconds. Default: now.
speedKmh, heading, altitude, accuracy, satskm/h, degrees, metres, metres, satellites.
ignition, extVoltage, batteryV, batteryPct, odometerKmThe vehicle’s ignition, external power (V), battery and odometer.
alarmssos, power_cut, overspeed, low_battery, tow, crash, vibration, geofence, removal.
validfalse: kept in the device log, never on the map.
nameThe unit’s name on your platform (it names the vehicle when you add it).

The answer is {"taken": 1, "unknown": ["<unit ids not added yet>"]}. Errors: 401 INVALID_FORWARDING_TOKEN, 400 with what’s wrong in which position, 403 TRACKERS_OFF while N-Ways has your trackers switched off, 413 above 2 MB or 500 positions.

How units are matched

  • A unit whose IMEI or unit id is one of your trackers moves its vehicle, and its alarms raise your alerts.
  • A unit you haven’t added is listed in the console, with what it sent last. Add it in one tap: a vehicle named after it is made.
  • Positions at 0, 0 or outside West Africa, and ones from the future (a clock on the wrong time zone), are kept in the device log and never move a vehicle.