Obtener género por nombre - Solicitud múltiple

El endpoint de Múltiples Nombres te permite analizar el género de hasta 100 nombres en una sola solicitud. Esto es útil para procesamiento masivo e integraciones de alto rendimiento. Todos los parámetros se envían a través de una solicitud POST como JSON. Debes autenticarte utilizando el método de token Bearer en el encabezado Authorization.

Al agregar el filtro country a cada nombre, puedes obtener predicciones de género específicas de un país. Si no hay resultado para el país proporcionado, la API devolverá un resultado global para el nombre.

También puedes enviar un campo id opcional para cada nombre. Este valor puede ser cualquier cadena o número de tu propia base de datos. La API devolverá el mismo id en la respuesta, para que puedas relacionar tus entradas con los resultados.

Advertencia: Las solicitudes múltiples no admiten modelos de inferencia basados en IA. Parámetros como askToAI no están disponibles en operaciones masivas.

Si tus datos incluyen a menudo nombres escritos en caracteres no latinos (por ejemplo, chino), te recomendamos enviar solicitudes individuales usando el parámetro askToAI para lograr resultados más precisos.

URL de solicitud

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

Encabezados HTTP requeridos

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

Parámetros del cuerpo de la solicitud

Campo Tipo Requerido Descripción
data Arreglo de objetos Arreglo de nombres y sus parámetros opcionales. Máximo 100 entradas por solicitud.
name String Sí (en cada objeto) El primer nombre que deseas analizar.
country String No Un código de país de dos letras (ISO 3166-1 alpha-2) para mejorar la precisión de la predicción. Ejemplo: TR para Turquía.
id String o Integer No ID opcional que defines para relacionar los resultados con los registros de tu propia base de datos. El mismo id se devolverá en la respuesta para fines de mapeo.

Ejemplo de cuerpo de la solicitud

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

Ejemplos de solicitudes


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

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

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

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

Ejemplo de respuesta 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"
}

Campos de respuesta

Campo Tipo Descripción
status Boolean Indica si la solicitud fue exitosa.
used_credits Integer Número de créditos usados para esta solicitud.
remaining_credits Integer Créditos restantes en tu cuenta después de esta solicitud.
expires Integer (timestamp) Fecha de expiración del paquete como timestamp UNIX.
names Arreglo de objetos Lista de resultados para cada nombre ingresado.
names[].name String Versión normalizada del nombre (minúsculas).
names[].q String Consulta original enviada por ti (respetando mayúsculas/minúsculas).
names[].gender Enum[String] Género predicho: male, female o null.
names[].country String Código de país considerado durante la predicción.
names[].total_names Integer Cantidad de muestras usadas para esta predicción.
names[].probability Integer Porcentaje de confianza de la predicción de género.
names[].id String / Integer El mismo id que enviaste en la solicitud. Útil para relacionar tus registros.
duration String Tiempo total de procesamiento de la solicitud (por ejemplo, 5ms).
Advertencia: Si envías varios nombres, asegúrate de que tu arreglo JSON esté correctamente formateado y no exceda los 100 nombres. Usa el campo id para relacionar tus propios registros con los resultados de la API.