Geslacht ophalen op basis van naam – Meerdere aanvragen

Het Multiple Names endpoint stelt je in staat om het geslacht van maximaal 100 namen in één verzoek te analyseren. Dit is handig voor bulkverwerking en integraties met hoge prestaties. Alle parameters worden verzonden via een POST-verzoek als JSON. Je moet authenticeren met de Bearer-tokenmethode in de Authorization-header.

Door het country-filter aan elke naam toe te voegen, kun je geslachtsvoorspellingen krijgen die specifiek zijn voor een bepaald land. Als er geen resultaat is voor het opgegeven land, geeft de API een wereldwijd resultaat terug.

Je kunt ook een optioneel id-veld meegeven bij elke naam. Deze waarde kan een willekeurige string of een geheel getal uit je eigen database zijn. De API retourneert dezelfde id in de respons, zodat je je input kunt matchen met de resultaten.

Let op: Meervoudige aanvragen ondersteunen geen AI-gebaseerde inferentiemodellen. Parameters zoals askToAI zijn niet beschikbaar bij bulkbewerkingen.

Als je data vaak namen bevat die in niet-Latijnse tekens zijn geschreven (bijv. Chinees), raden we sterk aan om enkele aanvragen te sturen met de askToAI-parameter voor nauwkeurigere resultaten.

Request URL

POST https://api.genderapi.io/api/name/multi/country

Vereiste HTTP-headers

  • Content-Type: application/json
  • Authorization: Bearer YOUR_API_KEY

Request Body Parameters

Veld Type Verplicht Beschrijving
data Array van objecten Ja Array van namen en hun optionele parameters. Maximaal 100 items per verzoek.
name String Ja (in elk object) De voornaam die je wilt analyseren.
country String Nee Een tweeletterige landcode (ISO 3166-1 alpha-2) om de nauwkeurigheid van de voorspelling te verbeteren. Voorbeeld: TR voor Turkije.
id String of Integer Nee Optionele ID die je definieert om de resultaten te koppelen aan je eigen database. Dezelfde id wordt geretourneerd in de response voor matching.

Voorbeeld van Request Body

{
  "data": [
    { "name": "Andrea", "country": "DE", "id": "123" },
    { "name": "andrea", "country": "IT", "id": "456" },
    { "name": "james", "country": "US", "id": "789" }
  ]
}

Voorbeelden van aanvragen


cURL Voorbeeld

curl -X POST "https://api.genderapi.io/api/name/multi/country" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer YOUR_API_KEY" \
     -d '{"data":[{"name":"Andrea","country":"DE","id":"123"},{"name":"andrea","country":"IT","id":"456"},{"name":"james","country":"US","id":"789"}]}'

PHP cURL Voorbeeld

<?php
$url = "https://api.genderapi.io/api/name/multi/country";

$data = array(
    "data" => array(
        array(
            "name" => "Andrea",
            "country" => "DE",
            "id" => "123"
        ),
        array(
            "name" => "andrea",
            "country" => "IT",
            "id" => "456"
        ),
        array(
            "name" => "james",
            "country" => "US",
            "id" => "789"
        )
    )
);

$payload = json_encode($data);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: application/json",
    "Authorization": "Bearer YOUR_API_KEY"
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
?>

JavaScript fetch Voorbeeld

fetch("https://api.genderapi.io/api/name/multi/country", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
  },
  body: JSON.stringify({
    data: [
      { name: "Andrea", country: "DE", id: "123" },
      { name: "andrea", country: "IT", id: "456" },
      { name: "james", country: "US", id: "789" }
    ]
  })
})
.then(response => response.json())
.then(data => console.log(data));

Python requests Voorbeeld

import requests

url = "https://api.genderapi.io/api/name/multi/country"

payload = {
    "data": [
        { "name": "Andrea", "country": "DE", "id": "123" },
        { "name": "andrea", "country": "IT", "id": "456" },
        { "name": "james", "country": "US", "id": "789" }
    ]
}

headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
}

response = requests.post(url, headers=headers, json=payload)

print(response.json())

Voorbeeld van JSON Response

{
  "status": true,
  "used_credits": 3,
  "remaining_credits": 7265,
  "expires": 1717069765,
  "names": [
    {
      "name": "andrea",
      "q": "Andrea",
      "gender": "female",
      "country": "DE",
      "total_names": 644,
      "probability": 88,
      "id": "optional"
    },
    {
      "name": "andrea",
      "q": "andrea",
      "gender": "male",
      "country": "IT",
      "total_names": 13537,
      "probability": 98,
      "id": "optional"
    },
    {
      "name": "james",
      "q": "james",
      "gender": "male",
      "country": "US",
      "total_names": 45274,
      "probability": 100,
      "id": "optional"
    }
  ],
  "duration": "5ms"
}

Response Velden

Veld Type Beschrijving
status Boolean Geeft aan of het verzoek succesvol was.
used_credits Integer Aantal gebruikte credits voor dit verzoek.
remaining_credits Integer Credits die nog over zijn in je account na dit verzoek.
expires Integer (timestamp) Vervaldatum van je pakket als een UNIX timestamp.
names Array van objecten Lijst met resultaten voor elke ingevoerde naam.
names[].name String Genormaliseerde versie van de naam (kleine letters).
names[].q String Originele query zoals door jou verzonden (hoofdlettergevoelig).
names[].gender Enum[String] Voorspeld geslacht: male, female of null.
names[].country String Landcode gebruikt bij de voorspelling.
names[].total_names Integer Aantal gebruikte voorbeelden voor deze voorspelling.
names[].probability Integer Betrouwbaarheidspercentage van de geslachtsvoorspelling.
names[].id String / Integer Dezelfde id die je bij de aanvraag hebt meegestuurd. Voor het matchen van je eigen records.
duration String Totale verwerkingstijd van het verzoek (bijv. 5ms).
Let op: Als je meerdere namen verstuurt, zorg er dan voor dat je JSON-array correct is geformatteerd en niet meer dan 100 namen bevat. Gebruik het id-veld om je eigen records te koppelen aan de resultaten van de API.