Weather Forecast API
Current conditions, a 48-hour hourly forecast and a 7-day daily forecast for the world's 1,000 most-populated cities, served from a database in milliseconds. Updated every few hours.
Quick start
curl "https://weather.quiply.net/v1/current?city=London" \
-H "X-API-Key: YOUR_KEY"
Authentication
Every request must include your key in the X-API-Key header. You get your key instantly on the pricing section. Keep it secret — don't put it in public front-end code.
Base URL: https://weather.quiply.net
Units: temperature °C, wind km/h, precipitation mm, pressure hPa. Times are the city's local time; utc_offset_seconds is included in every response.
GET/v1/cities
List covered cities, largest first.
| Parameter | Type | Description |
|---|---|---|
search | string | Match on city name |
country | string | 2-letter country code, e.g. JM |
limit | integer | 1–1000 (default 50) |
GET/v1/current
Current conditions.
| Parameter | Type | Description |
|---|---|---|
city | string | City name or numeric city id (from /v1/cities) |
lat, lon | number | Alternative to city: returns the nearest covered city (distance_km included) |
country | string | Optional 2-letter code to disambiguate a name, e.g. PK |
{
"city": { "id": 2643743, "name": "London", "country": "GB", "lat": 51.50853, "lon": -0.12574, "timezone": "Europe/London", "population": 8961989 },
"utc_offset_seconds": 0,
"updated_at": "2026-10-30T00:03:12+00:00",
"current": {
"time": "2026-10-30T00:00", "temperature_2m": 12.0, "apparent_temperature": 11.3,
"relative_humidity_2m": 86, "precipitation": 0.0, "weather_code": 0, "cloud_cover": 0,
"pressure_msl": 1030.1, "wind_speed_10m": 4.3, "wind_direction_10m": 80, "is_day": 0
}
}
GET/v1/forecast/hourly
Hour-by-hour forecast, starting from the current hour.
| Parameter | Type | Description |
|---|---|---|
city | string | City name or numeric city id (from /v1/cities) |
lat, lon | number | Alternative to city: returns the nearest covered city (distance_km included) |
country | string | Optional 2-letter code to disambiguate a name, e.g. PK |
hours | integer | 1–48 (default 48) |
GET/v1/forecast/daily
Daily highs and lows, precipitation, wind, sunrise and sunset.
| Parameter | Type | Description |
|---|---|---|
city | string | City name or numeric city id (from /v1/cities) |
lat, lon | number | Alternative to city: returns the nearest covered city (distance_km included) |
country | string | Optional 2-letter code to disambiguate a name, e.g. PK |
days | integer | 1–7 (default 7) |
curl "https://weather.quiply.net/v1/forecast/daily?city=Tokyo&days=2" -H "X-API-Key: YOUR_KEY"
GET/v1/health
Service status, number of cities covered and data freshness. No key needed.
Errors
| Status | Meaning |
|---|---|
| 401 | Missing or invalid X-API-Key |
| 403 | Subscription inactive (cancelled or payment failed) |
| 404 | City not found |
| 422 | Bad parameter (e.g. no city or lat/lon, days over 7) |
| 429 | Quota reached for your plan |
Pricing
Free trial: 5 requests/day. All APIs plan: $9.95/month gives you every Quiply API, 250,000 requests a month.
Get your API key