Skip to content

Client libraries

There are small client packages for Python and TypeScript/JavaScript. Both send the request, check the response against it and raise a typed error with the problem code when something goes wrong. You can also call the HTTP API directly; the packages add no features the API doesn’t have.

Terminal window
pip install vertical-weather
import os
from vertical_weather import get_profile
profile = get_profile(os.environ["VERTICAL_WEATHER_API_KEY"], {
"latitude": 35.052,
"longitude": -117.985,
"time": "2026-10-03T18:00:00Z",
"altitudes_m": [1000, 2000, 5000],
"altitude_reference": "agl",
})
print(profile.levels[0].wind_speed_ms)

Python 3.11 or later. In async code, use await async_get_profile(...). Package page.

Terminal window
npm install vertical-weather
import { getProfile } from "vertical-weather";
const profile = await getProfile(process.env.VERTICAL_WEATHER_API_KEY!, {
latitude: 35.052,
longitude: -117.985,
time: "2026-10-03T18:00:00Z",
altitudes_m: [1000, 2000, 5000],
altitude_reference: "agl",
});
console.log(profile.levels[0].wind_speed_ms);

Node 22.18 or later, no dependencies, types included. Package page.

  • One attempt by default. Pass max_attempts / maxAttempts (up to 5) to retry 429 and 503 responses, waiting for Retry-After. Timeouts and network errors are never retried.
  • A 30-second time limit, which you can change.
  • Errors carry the problem code, the HTTP status, the request ID and, for a height outside the column, the available coverage.

Both packages are MIT licensed. Keep your key on a server.