SkyBack Developer Platform

Weather APIs for real-world dispatch

Backed by Node.js, PostgreSQL, and redundant NOAA/IEM feeds, the SkyBack API streams fresh METARs, delivers precise historical lookups, and exposes station search so you can embed aviation-grade awareness anywhere.

<50 ms Median Latency Redundant NOAA / IEM sourcing API key auth planned

Multi-source ingestion

Smart METAR routing

Requests with time are resolved via PostgreSQL and IEM archives. Live calls lean on Aviation Weather Center with automatic retries.

  • Local cache handles hot storage through 2025.
  • IEM fetchers backfill older years, then persist back into Postgres.
  • Live NOAA pulls honor an hours look-back window.

Spatial intelligence

Nearest station search

Great-circle math inside PostgreSQL surfaces alternates fast, with optional METAR lookups per station so you can build locator widgets or fallback routing.

  • Haversine query with configurable limit.
  • Historical mode shares the same ingestion logic as primary METAR requests.
  • Station metadata includes elevation, runway bearings, and iso-country.

Endpoints

REST interface overview

The public surface mirrors the reference in docs/API_DOCUMENTATION.md. Below is the production contract.

GET /api/metar

Primary METAR endpoint

Fetch the latest METAR or pin a historical timestamp. Requests without time fallback to live NOAA pulls with a configurable look-back window.

Parameter Type Notes
icao* string 4-letter ICAO. Required.
time ISO 8601 string Search the PostgreSQL cache; prior to 2025 falls back to IEM before persisting.
hours integer (1–12) Only for live lookups. Sets NOAA look-back window. Defaults to 1 hour.

Latest METAR

curl -s https://skyback.io/api/metar?icao=LFPG

Historical METAR

curl -s "https://skyback.io/api/metar?icao=LFPG&time=2023-07-20T10:00:00Z"
GET /api/stations/nearest

Nearest stations endpoint

Locate alternates from coordinates. When time is present, each station inherits the same historical lookup path as /api/metar.

  • lat / lon (required): Decimal degrees.
  • limit (optional): Defaults to 5 stations.
  • time (optional): Attach historical METAR data.
curl -s "https://skyback.io/api/stations/nearest?lat=48.85&lon=2.35&limit=3"
GET /api/metar/local

Direct local cache

Bypasses remote sourcing and pulls the freshest cached report for an ICAO straight from PostgreSQL. Perfect for high-frequency polling.

curl -s https://skyback.io/api/metar/local?icao=KJFK

Hands-on

Try the METAR endpoint

Queries run against your local SkyBack dev server (`/api/metar`). Historical lookups route through the same caching stack described above.

No API key required (yet)

Supplying only a date defaults to 12:00Z. Leave both fields blank to retrieve the latest METAR via NOAA.

Roadmap & resources

Authentication track

Public endpoints remain keyless today. API key provisioning (Bearer token header) mirrors our internal `/api/update-cache` flow and will land soon for production partners.

  • Unique key issuance per organization.
  • Usage metering & throttling.
  • Per-key revocation + rotation.

Reference material

Deep dive into parsing, caching, and deployment: