Dostępne endpointy API
Twój lokalny serwer Open-Meteo API obsługuje następujące endpointy:
Endpoint |
Metoda |
Opis |
/v1/forecast |
GET POST |
Prognoza pogody |
/v1/archive |
GET POST |
Dane historyczne |
/v1/era5 |
GET POST |
Dane ERA5 |
/v1/air-quality |
GET POST |
Jakość powietrza |
/v1/marine |
GET POST |
Dane morskie |
/v1/elevation |
GET POST |
Wysokość nad poziomem morza |
/v1/flood |
GET POST |
Ryzyko powodzi |
/v1/seasonal |
GET POST |
Prognozy sezonowe |
/v1/ensemble |
GET POST |
Prognozy ensemble |
Podstawowe parametry
latitude (wymagane)
Szerokość geograficzna w stopniach dziesiętnych (-90 do 90)
longitude (wymagane)
Długość geograficzna w stopniach dziesiętnych (-180 do 180)
hourly (opcjonalne)
Lista zmiennych pogodowych do pobrania dla danych godzinowych
daily (opcjonalne)
Lista zmiennych pogodowych do pobrania dla danych dziennych
current_weather (opcjonalne)
Dodaje aktualną pogodę do odpowiedzi (true/false)
timezone (opcjonalne)
Strefa czasowa dla formatowania dat (np. "Europe/Warsaw", "GMT")
models (opcjonalne)
Określa model pogodowy do użycia
Przykłady użycia
Podstawowa prognoza pogody
GET /v1/forecast?latitude=52.52&longitude=13.41¤t_weather=true
Prognoza z danymi godzinowymi
GET /v1/forecast?latitude=52.52&longitude=13.41&hourly=temperature_2m,relative_humidity_2m,wind_speed_10m
Prognoza z określonym modelem
GET /v1/forecast?latitude=52.52&longitude=13.41&models=ecmwf_ifs025&hourly=temperature_2m&timezone=Europe/Warsaw
☀️ Prognoza z wschodem/zachodem słońca i UV
GET /v1/forecast?latitude=52.23&longitude=21.01&hourly=temperature_2m,uv_index&daily=sunrise,sunset&timezone=Europe/Warsaw
Jakość powietrza
GET /v1/air-quality?latitude=52.52&longitude=13.41&hourly=pm10,pm2_5,ozone
Wysokość nad poziomem morza
GET /v1/elevation?latitude=52.52&longitude=13.41
Dostępne modele pogodowe
Kod modelu |
Nazwa |
Rozdzielczość |
Opis |
Zalecenie dla Polski |
ecmwf_ifs025 |
🏆 ECMWF IFS 0.25° |
0.25° (~25km) |
Najdokładniejszy globalny model ECMWF |
ZALECANE ✅ |
best_match |
🎯 Najlepszy automatyczny |
Zmienne |
Może nie działać dla Polski - brak danych DMI |
⚠️ Unikaj |
dwd_icon |
🇩🇪 DWD ICON Global |
0.125° (~13km) |
Niemiecki model globalny |
⚠️ Wymaga danych |
dwd_icon_eu |
🇩🇪 DWD ICON EU |
0.0625° (~7km) |
Niemiecki model dla Europy |
⚠️ Wymaga danych |
ncep_gfs025 |
🇺🇸 GFS 0.25° |
0.25° (~25km) |
Globalny model NOAA |
⚠️ Wymaga danych |
🇵🇱 Zalecenia dla Polski
Najlepsze modele dla Polski:
- ecmwf_ifs025 - Najwyższa dokładność globalnie ✅ Działa teraz - ZALECANE
- dwd_icon_eu - Doskonały dla Europy, wysoka rozdzielczość ⚠️ Wymaga danych
- dwd_icon - Dobry globalny model ⚠️ Wymaga danych
- ncep_gfs025 - Backup globalny ⚠️ Wymaga danych
- best_match - ⚠️ Unikaj - może nie działać (brak danych DMI)
Uwaga: Aktualnie tylko ECMWF IFS ma pobrane dane. Inne modele wymagają pobrania danych.
🔧 Pobieranie dodatkowych danych:
Aby pobrać dane dla innych modeli, użyj komend sync z prawidłowymi nazwami domen:
swift run openmeteo-api sync dwd_icon temperature_2m
swift run openmeteo-api sync dwd_icon_eu temperature_2m
swift run openmeteo-api sync ncep_gfs025 temperature_2m
Pobieranie danych może zająć dużo czasu i miejsca na dysku.
Zmienne pogodowe
Temperatura
temperature_2m
- Temperatura na wysokości 2m (°C)
temperature_80m
- Temperatura na wysokości 80m (°C)
temperature_120m
- Temperatura na wysokości 120m (°C)
Wilgotność
relative_humidity_2m
- Wilgotność względna na 2m (%)
dew_point_2m
- Punkt rosy na 2m (°C)
Wiatr
wind_speed_10m
- Prędkość wiatru na 10m (km/h)
wind_direction_10m
- Kierunek wiatru na 10m (°)
wind_gusts_10m
- Porywy wiatru na 10m (km/h)
Opady
precipitation
- Opady (mm)
rain
- Deszcz (mm)
snowfall
- Opady śniegu (cm)
Ciśnienie i chmury
pressure_msl
- Ciśnienie na poziomie morza (hPa)
cloud_cover
- Zachmurzenie (%)
cloud_cover_low
- Chmury niskie (%)
cloud_cover_mid
- Chmury średnie (%)
cloud_cover_high
- Chmury wysokie (%)
☀️ Słońce i UV
uv_index
- Indeks UV (0-11+)
sunrise
- Wschód słońca (daily)
sunset
- Zachód słońca (daily)
daylight_duration
- Czas trwania dnia (sekundy, daily)
Przykładowa odpowiedź JSON
{
"latitude": 52.5,
"longitude": 13.5,
"generationtime_ms": 0.5179643630981445,
"utc_offset_seconds": 7200,
"timezone": "Europe/Berlin",
"timezone_abbreviation": "CEST",
"elevation": 44.0,
"current_weather": {
"time": "2025-07-04T18:45",
"interval": 900,
"temperature": 24.7,
"windspeed": 12.3,
"winddirection": 245,
"is_day": 1,
"weathercode": 1
},
"hourly_units": {
"time": "iso8601",
"temperature_2m": "°C"
},
"hourly": {
"time": ["2025-07-04T00:00", "2025-07-04T01:00", ...],
"temperature_2m": [18.4, 17.0, 15.9, ...]
}
}
API Geocoding
Frontend używa publicznego API geocoding Open-Meteo do wyszukiwania miejscowości.
Wyszukiwanie miejscowości
GET https://geocoding-api.open-meteo.com/v1/search?name=Warszawa&count=5&language=pl&format=json
Parametry geocoding
name (wymagane)
Nazwa miejscowości do wyszukania
count (opcjonalne)
Liczba wyników (domyślnie 10, maksymalnie 100)
language (opcjonalne)
Język wyników (np. "pl", "en", "de")
format (opcjonalne)
Format odpowiedzi (json lub protobuf)
Przykładowa odpowiedź geocoding
{
"results": [
{
"id": 756135,
"name": "Warszawa",
"latitude": 52.22977,
"longitude": 21.01178,
"elevation": 113.0,
"country": "Polska",
"admin1": "Województwo mazowieckie",
"timezone": "Europe/Warsaw",
"population": 1702139
}
]
}
Informacje dodatkowe
Adres serwera: http://localhost:8080
Format odpowiedzi: JSON
Metody HTTP: GET, POST
CORS: Włączone
Klucz API: Nie wymagany
Kody błędów
400
- Nieprawidłowe parametry
404
- Nie znaleziono
500
- Błąd serwera