Query measurement data

Retrieve Global Navigation Satellite System (GNSS) measurement data for a given time range and set of stations.

Specify start_time and end_time as ISO 8601 timestamps, one or more station_ids (station UUIDs from GET /stations), and the data_vars you want returned.

By default, results are quality-filtered. Set raw: true to return unfiltered observations, including epochs that would normally be omitted.

All observations in the time range are returned in a single response. A query estimated to exceed the maximum size is rejected with 413 before it runs. A query that exceeds the processing deadline is rejected with 408. In both cases, narrow the time range or request fewer stations.

The default response format is NetCDF-4 (CF-1.8 conventions), suitable for use with Python xarray, MATLAB, or any NetCDF reader. To receive JSON instead, set the Accept header to application/json.

Body·
required
application/json
  • data_vars
    Type: array string[] 1…enum
    required

    Measurement variables to include in the response. Available variables:

    • ztd - Zenith Total Delay (mm)
    • ztd_sigma - Zenith Total Delay uncertainty, as the standard deviation of the estimate (mm)
    • pwv - Precipitable Water Vapour (mm)
    • snr - Carrier-to-noise density ratio (C/N0) in dB-Hz, per signal band (comma-delimited string in NetCDF)
    • el - Satellite elevation (degrees) (comma-delimited string in NetCDF)
    • az - Satellite azimuth (degrees) (comma-delimited string in NetCDF)
    • prn - Satellite pseudo-random noise (PRN) identifiers (comma-delimited string in NetCDF, automatically included when el, az, or snr is requested)
    values
    • ztd
    • ztd_sigma
    • snr
    • el
    • az
    • prn
    • pwv
  • end_time
    Type: string Format: date-time
    required

    End of the query time range (exclusive), in ISO 8601 format.

  • start_time
    Type: string Format: date-time
    required

    Start of the query time range (inclusive), in ISO 8601 format.

  • station_ids
    Type: array string[] 1…Format: uuid
    required

    Station ids (UUIDs) to query, from GET /stations. At least one station id is required.

  • raw
    Type: boolean

    When omitted or false, the response excludes observations that do not pass the default quality filter. Set to true to return unfiltered observations for diagnostics.

Responses
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for post/api/v1/measurements/query
curl https://api.skyfora.com/api/v1/measurements/query \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: YOUR_SECRET_TOKEN' \
  --data '{
  "start_time": "2026-03-20T00:00:00Z",
  "end_time": "2026-03-21T00:00:00Z",
  "station_ids": [
    "4f9b1c2e-6a70-4a3e-9a4f-2d8f5b7c0e11"
  ],
  "data_vars": [
    "ztd",
    "ztd_sigma"
  ]
}'
@filename