Technológie

API menín

API – prepojenie aplikácií

Pre jeden svoj hobby projekt som potreboval jednoduché API na slovenské a české meniny. Rozhodol som sa oň podeliť, a preto tu nájdete aj dokumentáciu k jeho používaniu.

API je voľne dostupné, bez obmedzenia počtu volaní a bez API kľúča. Verím, že poslúži aj vám.

API menín – rýchly štart

Základná adresa: https://hurtis.sk/api/namedays

Dnešné meniny

Bez parametrov dostaneš slovenské meniny. Pre český kalendár pridaj country=cz.

GET https://hurtis.sk/api/namedays
GET https://hurtis.sk/api/namedays?country=cz
Vyskúšať české meniny

Meniny podľa dátumu

GET https://hurtis.sk/api/namedays?date=2026-03-19&country=sk

Príklad odpovede:

{
  "date": "2026-03-19",
  "name": "Jozef"
}

Dátum podľa mena

GET https://hurtis.sk/api/namedays?name=Josef&country=cz

Príklad odpovede:

{
  "name": "Josef",
  "date": "03-19"
}

Dátum podľa mena má formát MM-DD, bez roka. Vyhľadáva sa celé meno, bez rozlišovania veľkých a malých písmen, ale s diakritikou. Fungujú aj jednotlivé mená v spoločnom zázname, napríklad Peter a Pavol. Ak má meno viac dátumov, vráti sa prvý v kalendárnom poradí.

Parametre požiadavky

ParameterHodnotaVýznam
countrysk / czKalendár. Predvolená hodnota je sk.
dateYYYY-MM-DDPlatný dátum. Hľadá sa podľa dňa a mesiaca, rok sa zachová v odpovedi.
nameNajviac 256 znakovMeno, ktorého dátum menín hľadáš. Pri tvorbe URL ho zakóduj.

Použi buď date, alebo name. Ak vynecháš oba, API použije dnešný dátum v pásme Europe/Bratislava, aj pre český kalendár. Prázdne hodnoty parametrov nie sú platné.

Odpovede a chyby

API vždy vracia JSON. Zvolený kalendár určuje parameter country; názvy polí v odpovedi zostávajú rovnaké.

  • 200 Meniny alebo dátum sa našli.
  • 404 Záznam chýba. Hľadaná hodnota zostáva v odpovedi, výsledok je null a pole message vysvetľuje chybu.
  • 422 Neplatný dátum, meno či krajina alebo súčasné použitie date a name. Podrobnosti sú v poli errors.
{
  "name": "Neznáme",
  "date": null,
  "message": "Dátum menín pre toto meno nepoznám."
}

Príklad v JavaScripte

Takto vyhľadáš dátum českých menín podľa mena:

const params = new URLSearchParams({
  country: 'cz',
  name: 'Josef'
});
const response = await fetch(
  `https://hurtis.sk/api/namedays?${params}`
);
const data = await response.json();

if (response.ok) {
  console.log(data.date); // "03-19"
} else {
  console.error(data.message);
}