Receiver range

After 2026-10-R1, Kismet records the receiver range: how far away devices which report their own position are heard, in each direction.

Ranges are kept by kind of device, the phy name (such as ADSB or AIS), with UAV for drones. Each kind has a record for all data sources together, and one for each data source which heard it.

Distances are kept in bins of kismet.range.bin_degrees degrees of bearing from Kismet, starting at north and going clockwise; bin 0 covers 0 up to 1 degree. Distances are in meters, and are 0 in directions nothing has been heard from.

Range records

FieldContent
kismet.range.kindKind of device
kismet.range.source_uuidData source UUID; only in a data source’s record
kismet.range.source_nameData source name
kismet.range.samplesPositions counted
kismet.range.hull_samplesPositions counted while Kismet’s location was unknown
kismet.range.rejectedPositions rejected as bad decodes
kismet.range.first_time, kismet.range.last_timeFirst and last position counted (unix time)
kismet.range.centerKismet’s average location, [lon, lat]; only once Kismet’s location has been known
kismet.range.movedFurthest Kismet has been from its average location, in meters
kismet.range.bin_degreesDegrees of bearing in each bin
kismet.range.furthest, kismet.range.furthest_bearingFurthest distance, and its bearing in degrees

The full record of one kind or data source also has:

FieldContent
kismet.range.distanceFurthest distance in each bin, over all time
kismet.range.altitudeAltitude, in meters, of the furthest position in each bin
kismet.range.timeTime (unix time) of the furthest position in each bin
kismet.range.signalSignal, in dBm, of the furthest position in each bin, or 0 if unknown
kismet.range.day_distanceFurthest distance in each bin over the last day
kismet.range.bandsBy altitude: a list of bands, each with kismet.range.band.min_alt and kismet.range.band.max_alt in meters (0 for no upper limit), and kismet.range.band.distance, the furthest distance in each bin for positions in the band
kismet.range.hullThe area positions were heard over while Kismet’s location was unknown: a convex hull, counterclockwise, as a list of [lon, lat] corners

All ranges

DESC
The summary of every range record: each kind of device, for all data sources together and for each data source, without the distances in each direction.
ROLES
readonly
ADDED
API added after 2026-10-R1
URI
/range/all_ranges.json
/range/all_ranges.ekjson
/range/all_ranges.prettyjson
METHODS
GET POST
JSON
PARAMETERS

This endpoint takes additional parameters by using a `POST` request and supplying a JSON document or json form variable.

You can find more information about API parameters here.

fields field simplification OPTIONAL

Kismet can reduce the amount of information being processed and returned by an API by simplifying the fields to only return the data needed by the caller.

You can read more about the field simplification API and how to use it here.

RETURN
Dictionary with kismet.range.records, a list of range record summaries
RESPONSES
200
Success

Range by kind

DESC
The full range record for a kind of device, from all data sources together.
ROLES
readonly
ADDED
API added after 2026-10-R1
URI
/range/by-kind/{KIND}/range.json
/range/by-kind/{KIND}/range.ekjson
/range/by-kind/{KIND}/range.prettyjson
METHODS
GET POST
URI
PARAMETERS
KIND string REQUIRED

Kind of device, such as ADSB

JSON
PARAMETERS

This endpoint takes additional parameters by using a `POST` request and supplying a JSON document or json form variable.

You can find more information about API parameters here.

fields field simplification OPTIONAL

Kismet can reduce the amount of information being processed and returned by an API by simplifying the fields to only return the data needed by the caller.

You can read more about the field simplification API and how to use it here.

RETURN
Range record
RESPONSES
200
Success
404
No range for this kind

Range by kind and data source

DESC
The full range record for a kind of device, from one data source.
ROLES
readonly
ADDED
API added after 2026-10-R1
URI
/range/by-kind/{KIND}/by-source/{UUID}/range.json
/range/by-kind/{KIND}/by-source/{UUID}/range.ekjson
/range/by-kind/{KIND}/by-source/{UUID}/range.prettyjson
METHODS
GET POST
URI
PARAMETERS
KIND string REQUIRED

Kind of device, such as ADSB

UUID string REQUIRED

Datasource UUID

JSON
PARAMETERS

This endpoint takes additional parameters by using a `POST` request and supplying a JSON document or json form variable.

You can find more information about API parameters here.

fields field simplification OPTIONAL

Kismet can reduce the amount of information being processed and returned by an API by simplifying the fields to only return the data needed by the caller.

You can read more about the field simplification API and how to use it here.

RETURN
Range record
RESPONSES
200
Success
404
No range for this kind and data source
500
Invalid UUID

Reset range

DESC
Clear the receiver range, and save the result.
ROLES
admin
ADDED
API added after 2026-10-R1
URI
/range/reset.cmd
METHODS
POST
JSON
PARAMETERS

This endpoint takes additional parameters by using a `POST` request and supplying a JSON document or json form variable.

You can find more information about API parameters here.

kind string OPTIONAL

Kind of device to clear; without it, every kind is cleared

source string OPTIONAL

Data source UUID; only that data source’s record is cleared. Without it, the records for all data sources together and for each data source are cleared.

RETURN
{"ok": true, "removed": N}, with the number of records cleared
RESPONSES
200
Range cleared
400
Invalid `kind` or `source`