Obtener género por correo electrónico – Solicitud múltiple

El endpoint de correo electrónico múltiple te permite analizar el género de hasta 50 direcciones de correo electrónico en una sola solicitud. Esto es útil para procesamiento por lotes e integraciones de alto rendimiento. Todos los parámetros se envían mediante una solicitud POST en formato JSON. Debes autenticarte usando el método Bearer token en el encabezado Authorization.

La API extrae el probable primer nombre de cada correo electrónico y determina el género para cada uno. También puedes agregar un filtro opcional country y un campo personalizado id para cada registro, para que puedas emparejar los resultados con tu propia base de datos.

URL de solicitud

POST https://api.genderapi.io/api/email/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 Array de objetos Array de correos electrónicos y sus parámetros opcionales. Máximo 50 elementos por solicitud.
email String Sí (en cada objeto) La dirección de correo electrónico a analizar. La API extraerá el probable primer nombre.
country String No 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 emparejar resultados con tus propios registros. El mismo id será devuelto en la respuesta.

Ejemplo de cuerpo de solicitud

{
  "data": [
    { "email": "andrea.schmidt@example.com", "country": "DE", "id": "123" },
    { "email": "andrea.rossi@example.it", "country": "IT", "id": "456" },
    { "email": "james.brown@example.com", "country": "US", "id": "789" }
  ]
}

Ejemplos de solicitudes


Ejemplo con cURL

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

Ejemplo PHP cURL

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

$data = array(
    "data" => array(
        array(
            "email" => "andrea.schmidt@example.com",
            "country" => "DE",
            "id" => "123"
        ),
        array(
            "email" => "andrea.rossi@example.it",
            "country" => "IT",
            "id" => "456"
        ),
        array(
            "email" => "james.brown@example.com",
            "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 con fetch de JavaScript

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

Ejemplo con requests de Python

import requests

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

payload = {
    "data": [
        { "email": "andrea.schmidt@example.com", "country": "DE", "id": "123" },
        { "email": "andrea.rossi@example.it", "country": "IT", "id": "456" },
        { "email": "james.brown@example.com", "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.schmidt@example.com",
      "gender": "female",
      "country": "DE",
      "total_names": 644,
      "probability": 88,
      "id": "123"
    },
    {
      "name": "Andrea",
      "q": "andrea.rossi@example.it",
      "gender": "male",
      "country": "IT",
      "total_names": 13537,
      "probability": 98,
      "id": "456"
    },
    {
      "name": "James",
      "q": "james.brown@example.com",
      "gender": "male",
      "country": "US",
      "total_names": 45274,
      "probability": 100,
      "id": "789"
    }
  ],
  "duration": "5ms"
}

Campos de la respuesta

Campo Tipo Descripción
status Boolean Indica si la solicitud fue exitosa.
used_credits Integer Cantidad 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 Array de objetos Lista de resultados para cada correo electrónico procesado.
names[].name String El primer nombre extraído del correo electrónico.
names[].q String Tu correo electrónico original enviado en la solicitud.
names[].gender Enum[String] Género predicho: male, female o null.
names[].country String Código de país considerado en la predicción.
names[].total_names Integer Cantidad de muestras usadas para la predicción.
names[].probability Integer Porcentaje de confianza de la predicción.
names[].id String / Integer El mismo id que enviaste en la solicitud, útil para emparejar registros.
duration String Tiempo total de procesamiento de la solicitud (ejemplo: 5ms).