Flight information API

Public — no authentication required No personal data returned

Overview

This endpoint returns a public summary of a single flight, including links to its chart thumbnails in every size. Look a flight up either by its cloud flight id, or by the signature hash that the verifier returns as flight_unique_id (the same value a flyer can read from the log file itself).

It is a single indexed lookup and returns no user identifying information: no account, no device serial, no upload address, no notes, images or launch coordinates. The device tag and competitor tag are included, as they identify an entry rather than a person.

Endpoint

GET https://www.altimetercloud.com/api/flight_info/ Parameters: id or hash

Supply either the numeric id or the signature hash. If both are given, id takes precedence. Only publicly visible flights are returned.

Parameters

ParameterTypeDescription
idintegerThe numeric cloud flight id
hashstringThe flight's signature hash (64 or 128 hex characters), as returned by the verifier or written in the log file
sigstringAlias for hash

Response

The API returns JSON. Core barometric fields are present for every flight. IMU-capable flights (Mercury, or Nano hardware revision 4 and later) also include an imu object with acceleration, orientation, spin, stability and dual-deploy data. Mercury flights additionally include a mercury object with extra sensor and environment data (external temperature probe, battery, board temperature) that only that board records. Barometric-only flights omit the IMU and Mercury blocks.

✓ Found (IMU flight)
{
  "success": true,
  "flight": {
    "id": 1234,
    "url": "https://www.altimetercloud.com/flights/1234/",
    "csv_url": "https://www.altimetercloud.com/flightdata/4/1234.csv",
    "device": "nanov1",
    "firmware": "1.52",
    "revision": "4",
    "has_imu": 1,
    "tag": "MY-NANO",
    "competitor_tag": "C-07",
    "uploaddate": "10/06/26-14:22:01",
    "uploadstamp": 1781453721,
    "samples": 3210,
    "sps": 100,
    "apogee": 246.4,
    "apogee_time": 5210,
    "max_velocity": 98.3,
    "max_velocity_down": -12.4,
    "velocity_landing": 4.8,
    "landing_ms": 41800,
    "landing_m": 1.2,
    "flight_time": 41.8,
    "total_time": 44.2,
    "lockouts": 0,
    "not_real_flight": 0,
    "settings": {
      "sealevel": 1013.25,
      "samplerate": 100,
      "recordingstop": 1,
      "oversampling": 1,
      "iirfilter": 0,
      "pressurefilter": 1,
      "startuplock": 0,
      "usetemp": 1,
      "fixedtemp": 15,
      "launchdetect": 1,
      "sampleratio": 1,
      "maintainpower": 0,
      "maxsamples": 0,
      "recording_alt": 0,
      "units": 0,
      "units_velocity": 0,
      "units_acceleration": 0,
      "lockout_time": 0,
      "lockout_change": 0,
      "output_enable": 0,
      "orientation": 0,
      "launchprotection": 1
    },
    "imu": {
      "burnout": 1400,
      "ejection": 5600,
      "max_acceleration": 11.6,
      "acceleration": {
        "max_ascent": 11.6,
        "max_descent": 2.3,
        "max_burn": 11.6,
        "avg_ascent": 4.2,
        "avg_burn": 9.8
      },
      "velocity": {
        "burnout": 96.2,
        "descent": 5.1,
        "up_imu": 96.2,
        "down_imu": -11.8
      },
      "orientation": {
        "launch_pitch": 2,
        "launch_roll": 1,
        "launch_yaw": 0,
        "launch_tilt": 3,
        "max_tilt": 7
      },
      "spin": {
        "max": 540.5,
        "average": 120.2,
        "roll_rate": 33,
        "coning_rate": 4,
        "coning_power": 2
      },
      "stability": {
        "score": 92,
        "launch": 88,
        "coning": 95,
        "straight": 90,
        "confidence": 1,
        "thrust_straight": 97,
        "launch_tilt": 3
      },
      "dual_deploy": {
        "detected": 1,
        "drogue_velocity": 18.2,
        "main_velocity": 6.4,
        "main_altitude": 120.5,
        "main_time": 30200
      }
    },
    "thumbnails": {
      "meters_small": "https://www.altimetercloud.com/flightdata/4/1234.webp",
      "meters_large": "https://www.altimetercloud.com/flightdata/4/1234_l.webp",
      "feet_small":   "https://www.altimetercloud.com/flightdata/4/1234_ft.webp",
      "feet_large":   "https://www.altimetercloud.com/flightdata/4/1234_l_ft.webp",
      "miles_small":  "https://www.altimetercloud.com/flightdata/4/1234_mi.webp",
      "miles_large":  "https://www.altimetercloud.com/flightdata/4/1234_l_mi.webp",
      "km_small":     "https://www.altimetercloud.com/flightdata/4/1234_km.webp",
      "km_large":     "https://www.altimetercloud.com/flightdata/4/1234_l_km.webp"
    }
  }
}

A barometric-only flight (for example a Nano below revision 4) returns the same core fields with has_imu set to 0 and no imu block:

ⓘ Found (barometric flight)
{
  "success": true,
  "flight": {
    "id": 980,
    "device": "nanov1",
    "firmware": "1.52",
    "revision": "2",
    "has_imu": 0,
    "apogee": 312.7,
    "apogee_time": 6120,
    "max_velocity": 104.5,
    "...": "core fields and settings, but no imu block"
  }
}

If no public flight matches the supplied id or hash:

✗ Not found
{
  "success": false,
  "error": {
    "code": "404",
    "message": "No public flight found for that id or signature hash"
  }
}

Response fields

All measurements are returned in base SI units: heights in metres, velocities in metres per second, accelerations in g, angles in degrees, spin and rates in degrees per second, and times in milliseconds unless noted. The flight page may display these converted to your chosen units, but the API is always SI.

Core (every flight)

FieldTypeDescription
id / urlinteger / stringCloud flight id and its public flight page
csv_urlstringDirect download link for the raw CSV log
device / firmware / revisionstringModel (nanov1, mercuryv1), firmware version, hardware revision
has_imuinteger1 if this model and revision has an IMU (Mercury, or Nano revision 4+). Determines whether the imu block is present
tag / competitor_tagstringDevice tag and competitor tag
uploaddate / uploadstampstring / integerUpload date string and unix timestamp
samples / spsintegerRecorded sample count and samples per second
apogeefloatPeak height in metres
apogee_timeintegerTime of apogee in milliseconds
max_velocity / max_velocity_downfloatPeak ascent and descent velocity (m/s), barometric
velocity_landingfloatVelocity at landing (m/s)
landing_ms / landing_mnumberLanding time (milliseconds) and landing height (metres)
flight_time / total_timefloatRecording duration and total duration including pre-launch, in seconds
lockoutsintegerNumber of apogee lockout events
not_real_flightinteger1 if flagged as not a genuine flight (for example a bench test)
settingsobjectRecording settings from the log header (sea level pressure, sample rate, filters, units, lockouts, output, orientation, launch protection and more)
thumbnailsobjectChart image URLs: metres, feet, miles and kilometres, each in a small and large size

imu (IMU-capable flights only)

Present only when has_imu is 1. Absent for barometric-only flights.

FieldTypeDescription
burnout / ejectionintegerMotor burnout and ejection times in milliseconds
max_accelerationfloatPeak acceleration in g
accelerationobjectmax_ascent, max_descent, max_burn, avg_ascent, avg_burn, all in g
velocityobjectburnout, descent (m/s), plus up_imu / down_imu, the IMU-derived peak up and down velocities (m/s)
orientationobjectlaunch_pitch, launch_roll, launch_yaw, launch_tilt, max_tilt, all in degrees
spinobjectmax, average, roll_rate, coning_rate, coning_power, all in degrees per second
stabilityobjectscore and the launch / coning / straight / thrust_straight sub-scores (0–100), confidence (0–1), and launch_tilt (degrees)
dual_deployobjectdetected (0/1), drogue_velocity / main_velocity (m/s), main_altitude (metres), main_time (milliseconds)

mercury (Mercury flights only)

Present only for Mercury, which records an extra sensor and environment layer the Nano does not. Read best-effort from the flight's data file, so older Mercury firmware may return fewer fields, and any field that is absent is simply omitted.

"mercury": {
  "mt1_temp_c": 16,
  "battery_start_pct": 98,
  "battery_end_pct": 95,
  "board_temp_start_c": 13.02,
  "board_temp_end_c": 12.25,
  "recovered": 0
}
FieldTypeDescription
mt1_temp_cfloatExternal MT1 temperature probe reading at launch, in degrees Celsius
battery_start_pct / battery_end_pctintegerBattery charge at the start and end of the flight, as a percentage
board_temp_start_c / board_temp_end_cfloatOn-board temperature at the start and end of the flight, in degrees Celsius
recoveredinteger1 if the log was rebuilt from flash after a crash or brownout, otherwise 0

API Playground

Enter a public flight id (or a signature hash) and click Run to fetch its summary.

Flight id — or a signature hash
https://www.altimetercloud.com/api/flight_info/