Obter Gênero pelo Nome – Múltiplas Requisições

O endpoint Multiple Names permite que você analise o gênero de até 100 nomes em uma única requisição. Isso é útil para processamento em lote e integrações de alta performance. Todos os parâmetros são enviados via requisição POST como JSON. Você deve autenticar usando o método Bearer token no cabeçalho Authorization.

Ao adicionar o filtro country para cada nome, você pode obter previsões de gênero específicas para determinado país. Se não houver resultado para o país informado, a API fornecerá um resultado global para o nome.

Você também pode passar um campo opcional id para cada nome. Esse valor pode ser qualquer string ou inteiro do seu próprio banco de dados. A API retornará o mesmo id na resposta, para que você possa associar seus dados de entrada aos resultados.

Aviso: Requisições múltiplas não suportam modelos de inferência baseados em IA. Parâmetros como askToAI não estão disponíveis em operações em lote.

Se seus dados frequentemente incluem nomes escritos com caracteres não latinos (ex: chinês), recomendamos fortemente que envie requisições únicas usando o parâmetro askToAI para obter resultados mais precisos.

URL da Requisição

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

Cabeçalhos HTTP Requeridos

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

Parâmetros do Corpo da Requisição

Campo Tipo Obrigatório Descrição
data Array de Objetos Sim Array de nomes e seus parâmetros opcionais. Máximo de 100 registros por requisição.
name String Sim (em cada objeto) O primeiro nome que deseja analisar.
country String Não Código de país com duas letras (ISO 3166-1 alpha-2) para melhorar a precisão da previsão. Exemplo: TR para Turquia.
id String ou Inteiro Não ID opcional que você define para associar os resultados aos registros do seu próprio banco de dados. O mesmo id será retornado na resposta para mapeamento.

Exemplo de Corpo da Requisição

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

Exemplos de Requisição


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

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

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

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

Exemplo de Resposta 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 Resposta

Campo Tipo Descrição
status Boolean Indica se a requisição foi bem-sucedida.
used_credits Integer Número de créditos consumidos para esta requisição.
remaining_credits Integer Créditos restantes em sua conta após esta requisição.
expires Integer (timestamp) Data de expiração do pacote como timestamp UNIX.
names Array de objetos Lista de resultados para cada nome enviado.
names[].name String Versão normalizada do nome (minúsculas).
names[].q String Consulta original enviada por você (case sensitive).
names[].gender Enum[String] Gênero previsto: male, female ou null.
names[].country String Código de país considerado durante a previsão.
names[].total_names Integer Número de amostras usadas para essa previsão.
names[].probability Integer Porcentagem de confiança para a previsão de gênero.
names[].id String / Integer O mesmo id enviado na requisição. Usado para associar seus registros.
duration String Tempo total de processamento da requisição (ex: 5ms).
Aviso: Se você enviar vários nomes, certifique-se de que seu array JSON está formatado corretamente e não exceda 100 nomes. Use o campo id para associar seus próprios registros aos resultados retornados pela API.