Upload a flight via API (CSV log verified method)

Účet není nutný Ověří, uloží a vytvoří grafy

Přehled

Toto je programová verze webového nástroje pro nahrávání. Přijme letový záznam, ověří jej přesně jako koncový bod Ověření CSV, a pokud je záznam pravý a dosud neuložený, přidá let do cloudu, vygeneruje náhledy grafů a vrátí nový let.

Pokud byl stejný let již nahrán, nepřidá se znovu. Místo toho se vrátí existující let s nastaveným příznakem duplicate. To odpovídá chování webového nástroje, takže opětovné odeslání záznamu je vždy bezpečné.

Koncový bod

POST https://www.altimetercloud.com/cz/api/upload/ Parametr: csv

Ověřování

Žádné. Nahrávání je anonymní, stejně jako u webového nástroje. Branou je kryptografické ověření: projít mohou jen pravé, neupravené záznamy ze skutečného Nano, a duplicity se ignorují, takže otevřený koncový bod ukládá pouze legitimní záznamy. Let je přiřazen ke svému zařízení a vlastník zařízení si jej může později nárokovat přidáním tohoto zařízení do svého účtu Altimeter Cloud.

Požadavek

Odešlete letový záznam, neupravený, jako multipart souborové pole s názvem csv (nebo flightlog), případně jako prostý textový POST parametr csv.

curl -X POST https://www.altimetercloud.com/cz/api/upload/ \
  -F "csv=@flight_1234.csv"

Odpověď

API vrací JSON. Když je let nově přidán, duplicate je false a náhledy byly právě vygenerovány:

✓ Ověřeno a nahráno
{
  "success": true,
  "verified": true,
  "duplicate": false,
  "verify_method": "Ed25519",
  "flight": {
    "id": 1234,
    "url": "https://www.altimetercloud.com/cz/flights/1234/",
    "firmware": "1.52",
    "hardware": "4",
    "device_tag": "MY-NANO",
    "competitor_tag": "C-07",
    "apogee": 246.4,
    "apogee_time": 5.21,
    "max_velocity": 98.3,
    "samples": 3210,
    "flight_unique_id": "a1b2c3...",
    "thumbnails": {
      "meters_small": "https://www.altimetercloud.com/cz/flightdata/4/1234.webp",
      "meters_large": "https://www.altimetercloud.com/cz/flightdata/4/1234_l.webp",
      "feet_small":   "https://www.altimetercloud.com/cz/flightdata/4/1234_ft.webp",
      "feet_large":   "https://www.altimetercloud.com/cz/flightdata/4/1234_l_ft.webp",
      "miles_small":  "https://www.altimetercloud.com/cz/flightdata/4/1234_mi.webp",
      "miles_large":  "https://www.altimetercloud.com/cz/flightdata/4/1234_l_mi.webp",
      "km_small":     "https://www.altimetercloud.com/cz/flightdata/4/1234_km.webp",
      "km_large":     "https://www.altimetercloud.com/cz/flightdata/4/1234_l_km.webp"
    }
  }
}

Když stejný let již existuje, vrátí se beze změny, s duplicate rovným true a bez opětovného generování náhledů:

↻ Již uloženo
{
  "success": true,
  "verified": true,
  "duplicate": true,
  "verify_method": "Ed25519",
  "flight": { "id": 1234, "url": "https://www.altimetercloud.com/cz/flights/1234/", "...": "..." }
}

Pokud záznam neprojde ověřením, neuloží se:

✗ Ověření selhalo
{
  "success": false,
  "verified": false,
  "error": { "code": "400", "message": "Flight log failed verification" }
}

Zacházení s duplicitami

Let se považuje za již uložený, když jeho zařízení a hash podpisu odpovídají již nahranému letu. V takovém případě se nic znovu nepřidá a žádné grafy se nepřebudují; jednoduše obdržíte ID existujícího letu s duplicate rovným true.

Pole odpovědi

PoleTypPopis
successbooleanPravda, pokud byl záznam přijat (nově uložen nebo již přítomen)
verifiedbooleanZda záznam prošel kryptografickým ověřením
duplicatebooleanPravda, pokud let již existoval a nebyl znovu přidán
verify_methodstringPoužitá metoda: Ed25519, HMAC-SHA256 nebo SHA-256
flight.idintegerID letu v cloudu (nové nebo existující)
flight.flight_unique_idstringHash podpisu, použitelný s koncovým bodem Informace o letu
flight.thumbnailsobjectURL adresy obrázků grafů ve všech velikostech
error.code / error.messagestringKód chyby a popis (při selhání)

Chyby

KódVýznam
400 (ověření)Záznam neprošel kryptografickým ověřením a nebyl uložen
400 (tlak)Záznam neprošel doplňkovou křížovou kontrolou tlaku a nebyl uložen
412V požadavku nebyl poskytnut žádný letový záznam

Nárokování letu

Protože je nahrávání anonymní, let je propojen pouze se zařízením, které jej zaznamenalo. Chcete-li převzít lety z určitého zařízení, přidejte toto zařízení do svého účtu Altimeter Cloud; jeho lety, včetně nahraných přes toto API, se pak nárokují automaticky.

Poznámky

Ověření je zde totožné s koncovým bodem ověření CSV, takže jakýkoli záznam, který se tam ověří, lze nahrát i zde. Jediným rozdílem je, že tento koncový bod let navíc uloží a sestaví jeho grafy. Chcete-li záznam zkontrolovat bez uložení, použijte místo toho koncový bod Ověření CSV. Na této stránce není živé testovací prostředí, protože každé úspěšné volání vytvoří skutečný uložený let.