Magyar keresztnevek tára

Nyilvános API

A magyarnevek.hu nyilvános REST API lehetővé teszi, hogy az adatbázisban tárolt névadatokat saját alkalmazásokban is felhasználd. Minden kéréshez érvényes ügyfél-azonosító és API-kulcs szükséges.


Hitelesítés

Minden kérésnek tartalmaznia kell a következő fejléceket:

HeaderDescription
x-client-idA regisztrált ügyfél-azonosítód
x-api-keyAz ügyfélhez tartozó API-kulcs

Sebességkorlát (rate limit)

Az API ügyfelenként és IP-címenként percenként korlátozza a kérések számát. Az alapértelmezett korlát 60 kérés/perc. Túllépés esetén a válasz 429 Too Many Requests.


Végpontok

Alap URL: https://magyarnevek.hu/api/v1

GET

/api/v1/names

Visszaadja a magyar utónevek lapozható listáját.

Paraméterek
NévTípusKötelezőLeírás
firstLetterstringSzűrés kezdőbetű szerint (pl. A, Á)
sex1 | 2 | 3Szűrés nem szerint (1=férfi, 2=női, 3=uniszex)
certificatetrue | falseSzűrés anyakönyvezhetőség szerint
groupnumberSzűrés eredet-csoport szerint (0–4, 100, 200)
searchstringSzabad szöveges szűrő névre és leírásra
limitnumberOldal mérete, max 20 (alapértelmezett: 20)
pageTokenstringLapozási token az előző válaszból
fieldsstringVesszővel elválasztott mezők (alapértelmezett: csak name). * az összes mezőhöz. Elérhető: sex, description, descriptionEnglish, phonetic, certificate, group, namedays.
Példa kérés
curl -X GET "/api/v1/names?sex=male&limit=5" \
  -H "x-client-id: YOUR_CLIENT_ID" \
  -H "x-api-key: YOUR_API_KEY"
Példa válasz
{
  "data": [
    {
      "name": "Attila",
      "sex": 1,
      "description": "Egyes kutatók szerint hun–türk szó...",
      "descriptionEnglish": "Some researchers believe it derives from a Hunnic–Turkic word...",
      "phonetic": "at-ti-la",
      "certificate": true,
      "group": 1,
      "namedays": "https://magyarnevek.hu/api/v1/namedays/Attila"
    }
  ],
  "nextPageToken": "https://magyarnevek.hu/api/v1/names?sex=male&limit=5&pageToken=Attila"
}
GET

/api/v1/names/:name

Visszaadja egy magyar utónév részleteit.

Paraméterek
NévTípusKötelezőLeírás
:namestringA keresett pontos név (URL-kódolva)
fieldsstringVesszővel elválasztott mezők (alapértelmezett: csak name). * az összes elérhető mezőhöz.
Példa kérés
curl -X GET "/api/v1/names/Attila" \
  -H "x-client-id: YOUR_CLIENT_ID" \
  -H "x-api-key: YOUR_API_KEY"
Példa válasz
{
  "name": "Attila",
  "sex": 1,
  "description": "Egyes kutatók szerint hun–türk szó...",
  "descriptionEnglish": "Some researchers believe it derives from a Hunnic–Turkic word...",
  "phonetic": "at-ti-la",
  "certificate": true,
  "group": 1,
  "namedays": "https://magyarnevek.hu/api/v1/namedays/Attila"
}
GET

/api/v1/namedays/:name

Visszaadja egy adott névhez tartozó névnap-dátumokat.

Paraméterek
NévTípusKötelezőLeírás
:namestringA keresett pontos név (URL-kódolva)
Példa kérés
curl -X GET "/api/v1/namedays/Istv%C3%A1n" \
  -H "x-client-id: YOUR_CLIENT_ID" \
  -H "x-api-key: YOUR_API_KEY"
Példa válasz
{
  "name": "István",
  "dates": [
    {
      "hu": "aug. 20.",
      "en": "Aug 20",
      "iso": "08-20",
      "main": true
    },
    {
      "hu": "dec. 26.",
      "en": "Dec 26",
      "iso": "12-26",
      "main": false
    }
  ]
}
GET

/api/v1/name-forms/:name

Visszaadja egy adott név történelmi névformáit (latin, cirill, görög).

Paraméterek
NévTípusKötelezőLeírás
:namestringA keresett pontos név (URL-kódolva)
Példa kérés
curl -X GET "/api/v1/name-forms/Istv%C3%A1n" \
  -H "x-client-id: YOUR_CLIENT_ID" \
  -H "x-api-key: YOUR_API_KEY"
Példa válasz
{
  "baseName": "István",
  "forms": {
    "latin": [
      "Stephanus"
    ],
    "cyrillic": [
      "Стефан"
    ],
    "greek": [
      "Στέφανος"
    ]
  }
}
GET

/api/v1/stats

Visszaadja a névnépszerűségi statisztikákat a hivatalos magyar anyakönyvi adatok alapján.

Paraméterek
NévTípusKötelezőLeírás
namestringNév vagy vesszővel elválasztott lista (pl. Anna,Péter). Évszűrővel elhagyva az adott év összes nevét adja vissza.
yearstringPontos év (pl. 2020) vagy tartomány (pl. 1995-1999)
comparestringVesszővel elválasztott évek egymás melletti összehasonlításhoz (pl. 2020,2021)
sex1 | 2 | 3Szűrés nem szerint (1=férfi, 2=női, 3=uniszex)
limitnumberMax eredmény, legfeljebb 20 (alapértelmezett: 20)
Példa kérés
curl -X GET "/api/v1/stats?name=Anna&sex=2" \
  -H "x-client-id: YOUR_CLIENT_ID" \
  -H "x-api-key: YOUR_API_KEY"
Példa válasz
{
  "data": [
    {
      "name": "Anna",
      "year": "2023",
      "first": 312,
      "middle": 88,
      "sex": 2
    },
    {
      "name": "Anna",
      "year": "2022",
      "first": 298,
      "middle": 91,
      "sex": 2
    }
  ]
}
GET

/api/v1/search

Visszaadja az egyező neveket. Legalább egy szűrőparamétert kötelező megadni (a `limit` és `fields` önmagában nem elegendő). A `q` opcionális — megadva kis-nagybetű-érzéketlen tartalom-keresést végez a `name`, `description` és `descriptionEnglish` mezőkön. Az összes szűrő AND logikával kombinálódik.

Paraméterek
NévTípusKötelezőLeírás
qstringKeresési kifejezés — kis-nagybetű-érzéketlen tartalom-keresés névre, leírásra és angol leírásra. Elhagyható szövegszűrő nélküli böngészéshez.
sex1 | 2 | 3Szűrés nem szerint (1=férfi, 2=női, 3=uniszex)
certificatetrue | falseSzűrés anyakönyvezhetőség szerint
groupnumberSzűrés csoport azonosító szerint
nameStartstringCsak az ezzel a karakterlánccal kezdődő neveket adja vissza (kis-nagybetű-érzéketlen)
nameEndstringCsak az ezzel a karakterlánccal végződő neveket adja vissza (kis-nagybetű-érzéketlen)
descContainsstringCsak azokat a neveket adja vissza, amelyek leírása (magyar vagy angol) tartalmazza ezt a szöveget
vhLowtrueMély magánhangzó-harmóniájú nevek szűréséhez — pass "true" az aktiváláshoz
vhMixedtrueVegyes magánhangzó-harmóniájú nevek szűréséhez — pass "true" az aktiváláshoz
vhHightrueMagas magánhangzó-harmóniájú nevek szűréséhez — pass "true" az aktiváláshoz
containVowelsstringVesszővel elválasztott magyar magánhangzók, amelyeket a névnek tartalmaznia kell (pl. "a,e")
containVowelsOnlytrue"true" esetén a név csak a containVowels-ben felsorolt magánhangzókat tartalmazhatja
containConsonantsstringVesszővel elválasztott mássalhangzók, amelyeket a névnek tartalmaznia kell (pl. "r,cs,ty")
containConsonantsOnlytrue"true" esetén a név csak a containConsonants-ban felsorolt mássalhangzókat tartalmazhatja
syllableMinnumberSzótagok minimális száma
syllableMaxnumberSzótagok maximális száma
namedayFromstringNévnap-tartomány kezdete hónap-nap formátumban (pl. "3-15" = március 15.)
namedayTostringNévnap-tartomány vége hónap-nap formátumban (pl. "8-20" = augusztus 20.)
limitnumberMax eredmény, legfeljebb 20 (alapértelmezett: 20)
pageTokenstringLapozási token az előző válasz nextPageToken mezőjéből
fieldsstringVesszővel elválasztott mezők (alapértelmezett: csak name). * az összes elérhető mezőhöz.
Példa kérés
curl -X GET "/api/v1/search?q=" \
  -H "x-client-id: YOUR_CLIENT_ID" \
  -H "x-api-key: YOUR_API_KEY"
Példa válasz
{
  "data": [
    {
      "name": "Attila",
      "sex": 1,
      "description": "Egyes kutatók szerint hun–türk szó...",
      "descriptionEnglish": "Some researchers believe it derives from a Hunnic–Turkic word...",
      "phonetic": "at-ti-la",
      "certificate": true,
      "group": 1,
      "namedays": "https://magyarnevek.hu/api/v1/namedays/Attila"
    }
  ]
}