Déterminer le genre par prénom – Requête multiple

Le point de terminaison Multiple Names vous permet d’analyser le genre de jusqu’à 100 prénoms dans une seule requête. Ceci est utile pour le traitement par lots et les intégrations à haute performance. Tous les paramètres sont envoyés via une requête POST au format JSON. Vous devez vous authentifier à l’aide d’un token Bearer dans l’en-tête Authorization.

En ajoutant le filtre country à chaque prénom, vous pouvez obtenir des prédictions de genre spécifiques à un pays. Si aucun résultat n’est trouvé pour le pays donné, l’API retournera un résultat global pour ce prénom.

Vous pouvez également ajouter un champ id optionnel pour chaque prénom. Cette valeur peut être n’importe quelle chaîne ou entier provenant de votre propre base de données. L’API retournera le même id dans la réponse afin que vous puissiez faire correspondre vos entrées avec les résultats.

Attention : Les requêtes multiples ne prennent pas en charge les modèles d’inférence basés sur l’IA. Des paramètres comme askToAI ne sont pas disponibles pour les opérations par lots.

Si vos données contiennent souvent des prénoms écrits avec des caractères non latins (par exemple du chinois), nous vous recommandons fortement d’envoyer des requêtes individuelles en utilisant le paramètre askToAI pour obtenir des résultats plus précis.

URL de la requête

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

En-têtes HTTP requis

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

Paramètres du corps de la requête

Champ Type Obligatoire Description
data Tableau d’objets Oui Tableau de prénoms et de leurs paramètres optionnels. Maximum 100 entrées par requête.
name String Oui (dans chaque objet) Le prénom à analyser.
country String Non Un code pays à deux lettres (ISO 3166-1 alpha-2) pour améliorer la précision de la prédiction. Exemple : TR pour la Turquie.
id String ou Integer Non ID optionnel que vous définissez pour relier les résultats à vos propres enregistrements. Le même id sera retourné dans la réponse pour permettre la correspondance.

Exemple de corps de la requête

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

Exemples de requêtes


Exemple cURL

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"}]}'

Exemple PHP cURL

<?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;
?>

Exemple JavaScript fetch

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));

Exemple Python requests

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())

Exemple de réponse JSON

{
  "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"
}

Champs de la réponse

Champ Type Description
status Boolean Indique si la requête a réussi.
used_credits Integer Nombre de crédits utilisés pour cette requête.
remaining_credits Integer Crédits restants sur votre compte après cette requête.
expires Integer (timestamp) Date d’expiration du forfait sous forme de timestamp UNIX.
names Tableau d’objets Liste des résultats pour chaque prénom.
names[].name String Version normalisée du prénom (en minuscules).
names[].q String Requête originale telle qu’envoyée (sensible à la casse).
names[].gender Enum[String] Genre prédit : male, female ou null.
names[].country String Code pays pris en compte pour la prédiction.
names[].total_names Integer Nombre d’échantillons utilisés pour cette prédiction.
names[].probability Integer Pourcentage de confiance de la prédiction du genre.
names[].id String / Integer Le même id que vous avez envoyé dans la requête. Utilisé pour faire la correspondance avec vos propres données.
duration String Temps de traitement total de la requête (par exemple : 5ms).
Attention : Si vous envoyez plusieurs prénoms, assurez-vous que votre tableau JSON est correctement formaté et ne dépasse pas 100 prénoms. Utilisez le champ id pour faire correspondre vos propres données avec les résultats retournés par l’API.