Před odesláním požadavku
Posílejte JSON na POST https://api.genderapi.io/api/v2/gender. Použijte svůj stávající API klíč v Authorization: Bearer YOUR_API_KEY a Content-Type: application/json. Každý požadavek se zpracovává samostatně.
V příkladu kódu vyberte programovací jazyk. Před spuštěním nastavte GENDERAPI_API_KEY v prostředí procesu. Chybějící nebo nerozpoznané klíče mohou použít sdílený zkušební režim podle IP, proto při integraci účtu ověřte, že meta.access.mode je api_key.
Pohlaví podle e-mailové adresy
| Parametr | Typ | Povinné | Výchozí hodnota | Popis |
|---|---|---|---|---|
type | string | Ano | — | Kategorie vstupu: name, email nebo username. |
value | string | Ano | — | Povinné. 1–254 znaků; nesmí být prázdné ani obsahovat řídicí znaky. E-mailové hodnoty musí mít platnou syntaxi e-mailové adresy. |
country | string | Ne | — | Volitelný kód ISO 3166-1 alpha-2 velkými písmeny, například TR nebo US. Vyhledávání pro konkrétní zemi může přejít na globální datovou sadu. |
forceToGenderize | boolean | Ne | false | Nejprve se prohledá datová sada, a pokud nepřinese výsledek, použije se AI s analýzou přezdívek. Podporováno pro name, email a username. |
options | object | Ne | — | Objekt s možnostmi AI pro daný vstup. |
options.ai_mode | string | Ne | fallback | Povolené hodnoty: off, fallback, always. Při forceToGenderize: true toto pole vynechte nebo použijte fallback. |
id | string | Ne | — | Volitelný identifikátor o délce 1–64 znaků v těle JSON u POST. Vrací se u každého výsledku dávky; v rámci dávky musí být jedinečný. U jednotlivých odhadů se přijme, ale v odpovědi se nevrací. V dotazech GET není podporován. |
Použijte type: email. API hledá v adrese použitelný jmenný signál. Sdílené schránky a neprůhledné lokální části mohou vést k neznámému výsledku. forceToGenderize je i zde volitelné; umožňuje odhad pomocí AI z aliasu i bez skutečného křestního jména.
Vyberte programovací jazyk. Nastavte API klíč, potom spusťte příklad na svém serveru.
Každý požadavek na odhad je nová zpoplatněná operace, včetně opakování. Tyto příklady požadavky automaticky neopakují. Před odesláním dalšího požadavku zkontrolujte stav účtování.
Před spuštěním: přístup a zpracování chyb
Tyto příklady spouštějte na svém serveru. V prostředí procesu nastavte GENDERAPI_API_KEY na svůj stávající API klíč. Ověřte, že meta.access.mode je api_key: nerozpoznaný klíč může přejít na zkušební režim podle IP.
U odpovědí JSON s HTTP 4xx a 5xx příklady zachovají tělo chyby a skončí s nenulovým návratovým kódem. Před opakováním požadavku zkontrolujte code, action a meta.usage.billing_status.
Průvodce chybami a opakováním požadavků →cURL 7.76+ v shellu POSIX. Spusťte v terminálu. Dokumentace běhového prostředí
Node.js 22+; vestavěné fetch. Uložte jako example.mjs a spusťte node example.mjs. Dokumentace běhového prostředí
Python 3.10+; standardní knihovna. Uložte jako example.py a spusťte python3 example.py. Dokumentace běhového prostředí
PHP 8+ s rozšířením cURL. Uložte jako example.php a spusťte php example.php. Dokumentace běhového prostředí
Java 17+; standardní HTTP klient. Uložte jako GenderApiExample.java a spusťte java GenderApiExample.java. Dokumentace běhového prostředí
Konzolová aplikace .NET 8+. Použijte jako Program.cs v konzolovém projektu a potom spusťte dotnet run. Dokumentace běhového prostředí
Go 1.22+; standardní knihovna. Uložte jako main.go a spusťte go run main.go. Dokumentace běhového prostředí
Příklad odpovědi
Jde o skutečnou odpověď získanou 1. října 2026 s API klíčem; nahrazen byl pouze zůstatek účtu. Nejde o míru přesnosti a požadavek v reálném čase může vrátit jiný výsledek. Požadavky s API klíčem vracejí meta.access.mode: api_key a pole kvót platná jen pro zkušební režim mají hodnotu null; požadavky ve zkušebním režimu podle IP vracejí ip_trial. Odhad najdete v data, výsledek účtování operace v meta.usage.
{
"data": {
"input": {
"type": "email",
"value": "alice.smith@example.com",
"country": "US"
},
"name": "alice",
"gender": "female",
"country": "US",
"confidence": 0.9932550587059705,
"confidence_kind": "observed_frequency",
"sample_count": 4003,
"source": "dataset",
"result_status": "identified",
"reason": null,
"country_source": "dataset",
"match": {
"name": "alice",
"method": "token",
"scope": "country",
"country": "US"
}
},
"meta": {
"request_id": "7c22993d-454f-4f61-8b4b-d1154d3b89ff",
"duration_ms": 13,
"access": {
"mode": "api_key",
"reason": null
},
"usage": {
"charged_credits": 1,
"remaining_credits": 49999,
"billing_status": "confirmed",
"resets_at": null,
"limit": null,
"period_seconds": null
}
}
}Pole odpovědi s odhadem
| Pole | Typ | Může být null | Příklad | Popis |
|---|---|---|---|---|
data.input | object | Ne | {"type":"name","value":"Tomáš","country":"CZ"} | Typ vstupu, hodnota a země. forceToGenderize se uvádí, pokud má hodnotu true. |
data.name | string | Ano | "tomáš" | Nalezené nebo získané křestní jméno; null, pokud není k dispozici. |
data.gender | string | Ano | "male" | male, female nebo JSON null. Jde o odhad, nikoli o ověřenou osobní identitu. |
data.result_status | string | Ne | "identified" | identified, pokud je vráceno pohlaví; jinak unknown. |
data.reason | string | Ano | null | null u výsledků identified. Důvody neznámého výsledku: not_found, no_name_candidate, ambiguous nebo insufficient_evidence. |
data.confidence | number | Ano | 0.95 | Skóre 0–1 nebo null. Pohlaví null má spolehlivost null. |
data.confidence_kind | string | Ano | "observed_frequency" | observed_frequency: počet dominantního pohlaví v datové sadě / celkový počet. model_reported: skóre AI, nikoli kalibrovaná pravděpodobnost. null, pokud není k dispozici. |
data.sample_count | integer | Ano | 1200 | Velikost vzorku v datové sadě nebo null. AI si počet vzorků nevymýšlí. |
data.source | string | Ne | "dataset" | dataset, ai nebo none. |
data.country | string | Ano | "CZ" | Přiřazení země z dataset nebo ai_association, případně null. Neurčuje státní příslušnost, bydliště ani etnickou příslušnost. |
data.country_source | string | Ano | "dataset" | Původ přiřazení země: dataset, ai_association nebo null. |
data.match | object | Ne | {"name":"tomáš","method":"normalized","scope":"country","country":"CZ"} | Nalezené jméno v datové sadě, metoda (normalized, token, substring nebo model_inference), rozsah country/global a nalezená země. Nedostupné podklady mají hodnotu null. |
Metadata přístupu, účtování a požadavku
| Pole | Typ | Může být null | Příklad | Popis |
|---|---|---|---|---|
meta.request_id | string | Ne | "550e8400-e29b-41d4-a716-446655440000" | Jedinečný identifikátor tohoto pokusu HTTP; posílá se také v X-Request-ID. |
meta.duration_ms | integer | Ne | 42 | Doba zpracování požadavku v milisekundách. |
meta.access.mode | string | Ne | "api_key" | api_key, ip_trial nebo unauthenticated. U placeného účtu ověřte api_key. |
meta.access.reason | string | Ano | null | Důvod přechodu na zkušební režim: api_key_missing, api_key_invalid nebo api_key_not_found; jinak null. |
meta.usage.charged_credits | integer | Ano | 1 | Čistý počet odečtených kreditů. Nula před odečtením nebo po úplném potvrzeném vrácení; null, pokud účtování není potvrzeno. |
meta.usage.remaining_credits | integer | Ano | 99 | Zůstatek po dokončení operace. Může být záporný; null, pokud není k dispozici nebo účtování není potvrzeno. |
meta.usage.billing_status | string | Ne | "confirmed" | not_charged, confirmed nebo unconfirmed. Zkontrolujte před opakováním neúspěšného odhadu. |
meta.usage.resets_at | string | Ano | "2026-09-27T12:00:00.000Z" | Čas obnovení zkušebního režimu podle IP v UTC (ISO 8601); null u účtů s API klíčem nebo pokud není znám. |
meta.usage.limit | integer | Ano | 10 | Limit kreditů zkušebního režimu podle IP; null u účtů s API klíčem. |
meta.usage.period_seconds | integer | Ano | 86400 | Délka období zkušebního režimu podle IP v sekundách; null u účtů s API klíčem. |
Validace e-mailu a jmenné signály
value musí být syntakticky platná e-mailová adresa. Neplatná syntaxe vrátí HTTP 422 ještě před účtováním. Kontrola syntaxe nepotvrzuje, že schránka existuje nebo patří určité osobě.
Rozpoznatelné osobní jméno v adrese se může shodovat s datovou sadou. Sdílené schránky, rolové adresy a neprůhledné lokální části mohou vrátit gender: null. Ve výchozím nastavení použije nevyřešené jednotlivé vyhledání běžnou záložní AI za celkem 1 kredit, a to i při úspěšném neznámém výsledku.
Použijte forceToGenderize: true, pokud chcete odhad pomocí AI s analýzou přezdívek, když datová sada nepřinese výsledek. Výsledek z datové sady stojí 1 kredit, při použití AI celkem 2 kredity. API může i tak vrátit null. E-mailová doména nedokazuje, kde se osoba nachází; zemi uvádějte jen tehdy, když znáte relevantní kontext.