Providing Location Data

Base endpoint: https://ibonav.aero/telemetry-bridge
Reference documents: none
Attribution: none
Data sources: none
Last updated: 18 OCT 2026

The ibonav.aero Interactive Map can show a live position from an external source: a flight simulator, a GNSS receiver or any other positioning device. The Ibosoft Telemetry Bridge desktop application does this for common simulators and devices; it sends the position to a relay on the ibonav.aero website, and the map reads it from there.

Your own software can send positions to the same relay instead of the Ibosoft Telemetry Bridge. On the map side nothing changes: the user matches and sets up the source the same way as with the Ibosoft Telemetry Bridge.

How it works

  1. Your software creates a match code: 6 characters, lowercase letters and digits (^[a-z0-9]{6}$), e.g. k3x9q2. Use a new random code for each user or session, and show it to the user.
  2. Your software sends the position to the relay with this code, about every 0.5 seconds.
  3. In the Interactive Map, the user opens the location settings, selects Ibosoft Telemetry Bridge as the position source and enters the same code as Match Code. The map then shows the position.

How the user sets up and uses the position source in the map (source selection, match code, following, range rings, trails …) is explained in the ibonav.aero User Guide.

Sending a position

POST https://ibonav.aero/telemetry-bridge/push.php
Content-Type: application/json
{
  "code": "k3x9q2",
  "lat": 39.12345,
  "lon": 32.98765,
  "alt": 1067,
  "hdg": 274.5,
  "spd": 62.3,
  "ts": 1760781600
}
Field Required Value Description
code yes 6 characters, a-z, 0-9 Match code
lat yes −90 … 90 Latitude, decimal degrees (WGS 84)
lon yes −180 … 180 Longitude, decimal degrees (WGS 84)
alt no −2999 … 999999 Altitude, metres
hdg no 0 … 360 Heading, degrees true
spd no 0 … 3999 Ground speed, metres per second
ts no Unix time, seconds Time of the position; must be within 24 hours of the server time

No token is needed. The answer is {"ok": true}, or {"ok": false, "error": "…"} with:

Code Meaning
400 Invalid body, JSON, code or field value (the error text names it)
405 Method other than POST
429 More than 40 requests in 10 seconds for the same code from the same IP address
500 The position could not be stored; try again

Notes

  • Update rate: about every 0.5 seconds, which is also how often the map reads the position. Sending faster does not make the map smoother and may hit the limit.
  • Lifetime: the relay keeps the last position of a code for 15 minutes. After that the code has to send again before the map shows a position.
  • Privacy: anyone who knows the code can see the position. Use random codes, do not reuse them, and do not show them publicly.
  • Speed and heading: send spd if you can; the map uses it to tell whether the position is moving and to show the track.