SK SHMU ALADIN API

SHMU ALADIN API

JSON API nad dátami numerického modelu ALADIN. Vyhľadávanie staníc a hodinové predpovede na nasledujúce 3 dni.

Rýchly štart

Služba sťahuje dáta zo SHMÚ a sprístupňuje ich cez HTTP. Základná adresa API:

Base URL
https://shmu.bmikuska.com/api/v1
StaniceViac ako 1 000 lokalít. Vyhľadávanie funguje aj bez diakritiky.
PredpoveďHodinové kroky na nasledujúce 3 dni (horizont modelu ALADIN): teplota, vietor, oblačnosť, zrážky a tlak.
Tip: Vyhľadávanie je bez diakritiky — zilina nájde aj „Žilina“.

Endpointy

Všetky endpointy používajú metódu GET. Chybové odpovede majú tvar {"code": 400, "message": "…"}.

GET/api/v1

Zoznam dostupných endpointov API (JSON).

curl
curl "https://shmu.bmikuska.com/api/v1"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1" |
  ConvertTo-Json -Depth 5
Ukážka odpovede
{
  "name": "SHMU ALADIN API",
  "version": "v1",
  "base_url": "https://shmu.bmikuska.com/api/v1",
  "documentation": "https://shmu.bmikuska.com/",
  "endpoints": [
    {
      "method": "GET",
      "path": "/api/v1/stations",
      "description": "Paginated station list with search"
    }
  ]
}
GET/api/v1/stations

Zoznam staníc so stránkovaním a vyhľadávaním.

ParameterPopis
q, searchTextový filter, podporuje vyhľadávanie bez diakritiky.
pageČíslo stránky. Predvolená hodnota je 1.
page_size, limitVeľkosť stránky. Predvolená hodnota je 50, maximum 200.
curl
curl "https://shmu.bmikuska.com/api/v1/stations?q=zilina&page_size=5"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1/stations?q=zilina&page_size=5" |
  ConvertTo-Json -Depth 5
Ukážka odpovede
{
  "stations": [
    {
      "id": 32801,
      "name": "Žilina",
      "lat": 49.223,
      "lon": 18.739
    }
  ],
  "total": 1,
  "page": 1,
  "page_size": 5,
  "total_pages": 1,
  "query": "zilina"
}
GET/api/v1/stations/{id}

Detail stanice podľa ID. Napríklad 32737 označuje Bratislavu centrum.

curl
curl "https://shmu.bmikuska.com/api/v1/stations/32737"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1/stations/32737" |
  ConvertTo-Json -Depth 5
Ukážka odpovede
{
  "id": 32737,
  "name": "Bratislava (centrum)",
  "lat": 48.156,
  "lon": 17.105
}
GET/api/v1/forecast

Najnovšia predpoveď ALADIN na nasledujúce 3 dni. Zadajte buď station (ID stanice), alebo lat a lon (najbližšia stanica). Voliteľný parameter hours určuje počet hodinových krokov.

Pri súradniciach odpoveď obsahuje location_match (vzdialenosť a nadmorská výška stanice). Voliteľne max_distance_km (max. 500) odmietne príliš vzdialenú zhodu.

Alias: /api/v1/weather s rovnakými parametrami.

ParameterPopis
stationID stanice. Alternatíva k lat + lon.
latZemepisná šírka (−90 až 90). Použite spolu s lon.
lonZemepisná dĺžka (−180 až 180). Použite spolu s lat.
hoursPočet hodinových krokov v odpovedi.
max_distance_kmMaximálna vzdialenosť k najbližšej stanici (iba s lat/lon).
curl
curl "https://shmu.bmikuska.com/api/v1/forecast?station=32737&hours=6"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1/forecast?station=32737&hours=6" |
  ConvertTo-Json -Depth 6
Ukážka odpovede
{
  "code": "200",
  "hours": 2,
  "list": [
    {
      "dt": 1786082400,
      "dt_txt": "2026-08-07 06:00:00",
      "date": "2026-08-07",
      "date_index": 4,
      "main": { "temp": 25.82, "pressure": 1016.9 },
      "wind": { "speed": 3.94, "deg": 316.6 },
      "clouds": { "all": 97.2 },
      "weather": [
        { "code": "overcast_clouds", "description": "overcast clouds" }
      ]
    }
  ],
  "city": {
    "name": "Bratislava (centrum)",
    "coord": { "lat": 48.156, "lon": 17.105 },
    "country": "SK"
  },
  "meta": {
    "model": "ALADIN SHMU/SK 4.5km …",
    "source": "SHMU ALADIN",
    "runtime": "2026-08-07T06:00:00Z"
  }
}
GET/api/v1/forecast/daily

Denné súhrny z hodinovej predpovede ALADIN (kalendárne dni Europe/Bratislava): min/max teplota, zrážky, vietor, dominantné počasie, východ/západ Slnka.

ParameterPopis
station / lat+lonRovnaké pravidlá ako pri hodinovej predpovedi.
daysPočet dní (1 až dostupný horizont). Bez parametra vráti všetky dostupné dni.
max_distance_kmMaximálna vzdialenosť pri súradniciach.
curl
curl "https://shmu.bmikuska.com/api/v1/forecast/daily?station=32737&days=3"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1/forecast/daily?station=32737&days=3" |
  ConvertTo-Json -Depth 6
Ukážka odpovede
{
  "code": "200",
  "cnt": 1,
  "list": [
    {
      "date": "2026-08-07",
      "date_index": 4,
      "temp_min": 18.4,
      "temp_max": 27.1,
      "precipitation_total": 1.2,
      "rain_total": 1.2,
      "snow_total": 0,
      "precipitation_hours": 2,
      "wind_speed_max": 8.9,
      "wind_gust_max": 19.4,
      "cloud_cover_mean": 62.5,
      "weather": {
        "code": "light_rain",
        "description": "light rain"
      },
      "sunrise": "2026-08-07T05:32:00+02:00",
      "sunset": "2026-08-07T20:11:00+02:00",
      "is_partial": false
    }
  ],
  "city": {
    "name": "Bratislava (centrum)",
    "coord": { "lat": 48.156, "lon": 17.105 },
    "country": "SK"
  }
}
GET/api/v1/now

Aktuálne počasie ako hodinový krok ALADIN najbližší k momentu požiadavky. Nie je to živé meranie zo stanice — ide o modelovú predpoveď pre „teraz“. Zadajte buď station / stationId, alebo lat a lon.

ParameterPopis
station / stationId / lat+lonRovnaké pravidlá ako pri hodinovej predpovedi.
max_distance_kmMaximálna vzdialenosť pri súradniciach.
curl
curl "https://shmu.bmikuska.com/api/v1/now?station=32737"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1/now?lat=48.15&lon=17.11" |
  ConvertTo-Json -Depth 6
Ukážka odpovede
{
  "code": "200",
  "as_of": "2026-08-10T17:19:00Z",
  "offset_seconds": -1140,
  "current": {
    "dt": 1786377600,
    "dt_txt": "2026-08-10 17:00:00",
    "date": "2026-08-10",
    "date_index": 0,
    "main": { "temp": 24.1, "pressure": 1014.2 },
    "weather": [{ "code": "few_clouds", "description": "few clouds" }],
    "clouds": { "all": 22.5 },
    "wind": { "speed": 3.4, "deg": 280.1 }
  },
  "city": {
    "name": "Bratislava (centrum)",
    "coord": { "lat": 48.156, "lon": 17.105 },
    "country": "SK"
  },
  "source_meta": {
    "source": "SHMU ALADIN",
    "kind": "forecast",
    "is_stale": false
  }
}
GET/api/v1/weather/codes

Katalóg enumov počasia. Každá položka má stabilný code a ľudsky čitateľný description. Rovnaké hodnoty vracia aj pole weather v hodinovej a dennej predpovedi. Index dňa date_index je 0 = pondelok … 6 = nedeľa (Europe/Bratislava).

curl
curl "https://shmu.bmikuska.com/api/v1/weather/codes"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1/weather/codes" |
  ConvertTo-Json -Depth 5
Ukážka odpovede
{
  "codes": [
    { "code": "clear", "description": "clear sky" },
    { "code": "few_clouds", "description": "few clouds" },
    { "code": "scattered_clouds", "description": "scattered clouds" },
    { "code": "broken_clouds", "description": "broken clouds" },
    { "code": "overcast_clouds", "description": "overcast clouds" },
    { "code": "light_rain", "description": "light rain" },
    { "code": "moderate_rain", "description": "moderate rain" },
    { "code": "heavy_rain", "description": "heavy intensity rain" },
    { "code": "light_snow", "description": "light snow" },
    { "code": "rain_and_snow", "description": "rain and snow" }
  ]
}
GET/api/v1/indicators

Indikátory odvodené z hodinovej predpovede (mráz, horúčava, vietor, intenzívny dážď, sneh, zmiešané zrážky, nízka oblačnosť v horách). Nie sú oficiálnymi výstrahami SHMÚ — každá položka má official: false a source_kind: "forecast".

ParameterPopis
station / lat+lonRovnaké pravidlá ako pri predpovedi.
typeFiltrovanie typov oddelených čiarkou, napr. frost,wind,heavy_rain.
curl
curl "https://shmu.bmikuska.com/api/v1/indicators?lat=49.12&lon=20.06&type=frost,wind"
PowerShell
Invoke-RestMethod "https://shmu.bmikuska.com/api/v1/indicators?lat=49.12&lon=20.06&type=frost,wind" |
  ConvertTo-Json -Depth 6
Ukážka odpovede
{
  "code": "200",
  "cnt": 1,
  "list": [
    {
      "type": "wind",
      "level": "moderate",
      "valid_from": "2026-08-07T12:00:00Z",
      "valid_to": "2026-08-07T18:00:00Z",
      "summary": "Elevated wind gusts in the forecast period",
      "source_kind": "forecast",
      "rule_version": "v1",
      "official": false,
      "available": true
    }
  ],
  "location_match": {
    "method": "nearest_aladin_station",
    "requested_coord": { "lat": 49.12, "lon": 20.06 },
    "matched_coord": { "lat": 49.08, "lon": 20.12 },
    "distance_km": 6.2,
    "matched_station_id": 12345,
    "matched_station_name": "Example station"
  }
}

Limity a aktualizácie

Obmedzenie požiadaviek

Predvolený limit je 10 požiadaviek za minútu pre každý endpoint a IP adresu. Pri prekročení API vráti stav 429 a hlavičku Retry-After. Dokumentácia nie je limitovaná.