Sinais de nome e significado de apelidos são coisas diferentes
Use type: username para um nome de usuário ou apelido. Um @ inicial opcional é removido na correspondência com o conjunto de dados. A extração de candidatos considera separadores e dígitos e pode verificar substrings limitadas. O modo de apelidos mantém a correspondência com partes inteiras, mas não acrescenta esses candidatos baseados em substrings. A entrada armazenada selecionada tem a maior contagem total entre os candidatos disponíveis; isso não indica o nome real da pessoa por trás da conta.
O fallback de IA comum procura um nome próprio reconhecível. forceToGenderize também permite uma associação por meio de um apelido pessoal quando não é possível extrair um nome real. Os dois caminhos podem retornar unknown; uma marca, um personagem fictício ou uma conta compartilhada não representam necessariamente uma única pessoa.
| Exemplo de entrada | Abordagem | O que verificar |
|---|---|---|
@alice.smith | Comece com o fallback comum, que consulta primeiro o conjunto de dados. | Verifique o nome selecionado e o método de correspondência; não presuma que a primeira parte foi escolhida. |
robert89 | Os dígitos podem ser removidos durante a extração de candidatos. | Um nome correspondente é uma associação, não uma identidade confirmada. |
prenses | Ative forceToGenderize para permitir uma tentativa da IA baseada no apelido quando não houver resultado. | gender pode ter um valor diferente de null enquanto name é null. Os valores da IA são model_reported. |
team_support | Trate contas de função e contas compartilhadas como contas que podem não pertencer a uma única pessoa. | Preserve unknown e não atribua uma identidade individual a uma conta compartilhada. |
Testar a interpretação de apelidos na sua integração
Esta requisição ativa a interpretação de apelidos. O conjunto de dados é consultado primeiro. Se ele não retornar um gênero, a IA pode usar o significado do alias. Omita forceToGenderize em uma consulta comum; as requisições individuais ainda usam o fallback de IA comum por padrão.
Neste exemplo, é informado o contexto de país TR. Use um contexto relevante da sua aplicação e verifique data.match.scope; um país informado não garante uma entrada específica desse país. Ele não indica nacionalidade nem residência.
Escolha uma linguagem de programação. Configure sua chave de API, depois execute o exemplo no seu servidor.
Cada requisição de previsão é uma nova operação cobrada, inclusive as novas tentativas. Estes exemplos não fazem novas tentativas automaticamente. Verifique o status da cobrança antes de enviar outra requisição.
Antes de executar: acesso e tratamento de erros
Execute estes exemplos no seu servidor. Defina GENDERAPI_API_KEY no ambiente do processo com a sua chave de API existente. Confirme que meta.access.mode é api_key: uma chave não reconhecida pode levar ao teste por IP.
Respostas JSON com HTTP 4xx e 5xx preservam o corpo do erro e retornam um código de saída diferente de zero. Verifique code, action e meta.usage.billing_status antes de fazer uma nova tentativa.
Guia de erros e novas tentativas →cURL 7.76+ em um shell POSIX. Execute no seu terminal. Documentação do ambiente de execução
Node.js 22+; fetch nativo. Salve como example.mjs e execute node example.mjs. Documentação do ambiente de execução
Python 3.10+; biblioteca padrão. Salve como example.py e execute python3 example.py. Documentação do ambiente de execução
PHP 8+ com a extensão cURL. Salve como example.php e execute php example.php. Documentação do ambiente de execução
Java 17+; cliente HTTP padrão. Salve como GenderApiExample.java e execute java GenderApiExample.java. Documentação do ambiente de execução
Aplicação de console .NET 8+. Use como Program.cs em um projeto de console e depois execute dotnet run. Documentação do ambiente de execução
Go 1.22+; biblioteca padrão. Salve como main.go e execute go run main.go. Documentação do ambiente de execução
Salvar o resultado junto com as evidências
Uma associação inferida não é o gênero declarado por uma pessoa. Salve separadamente a entrada original, as evidências retornadas e o que a pessoa declarou. Um resultado desconhecido é um resultado válido e não deve se transformar em uma categoria adivinhada na sua aplicação.
| Campo | Uso |
|---|---|
data.gender / data.result_status | Use male ou female somente com identified. Em um resultado desconhecido, preserve o valor null nativo do JSON. |
data.name / data.match | Verifique o nome retornado e o candidato selecionado. Uma correspondência com uma substring não comprova que a entrada pertence a uma pessoa com esse nome. |
data.confidence / data.confidence_kind | A confiança está em uma escala de 0 a 1 ou é null. observed_frequency se baseia em frequências armazenadas; model_reported é um valor fornecido pela IA. Avalie os limites separadamente para cada tipo. |
data.source / data.sample_count | Diferencie dataset, ai e none. Resultados da IA não têm um tamanho de amostra armazenado. Um tamanho de amostra não é um valor de precisão medido. |
meta.access.mode | Em uma integração com conta, verifique se o valor informado é api_key. Chaves ausentes ou não reconhecidas podem usar o teste por IP compartilhado. |
meta.usage | Leia charged_credits e billing_status. Um resultado desconhecido bem-sucedido é cobrado. Uma resposta perdida não comprova que a requisição foi gratuita. |
Decidir quando usar a IA
forceToGenderize é opcional para nomes, endereços de e-mail e nomes de usuário. Quando ativado, omita ai_mode ou use fallback; off e always não podem ser combinados com essa opção e retornam 422. Um saldo inicial positivo basta para iniciar uma requisição, mesmo que a cobrança final deixe o saldo negativo.
O modo de apelidos pode retornar um gênero junto com name: null. Ele também pode dar um resultado desconhecido. Nem o fallback de IA comum nem a interpretação de apelidos garantem uma resposta correta ou um valor diferente de null.
| Opção da requisição | Comportamento | Créditos por consulta bem-sucedida |
|---|---|---|
| options.ai_mode: off | Usa apenas o conjunto de dados. | 1, inclusive para um resultado desconhecido |
| options.ai_mode: fallback | Consulta primeiro o conjunto de dados e depois usa a IA comum se nenhum gênero for retornado. É o padrão das requisições individuais. | 1 no total, incluindo o fallback de IA |
| options.ai_mode: always | Usa a IA diretamente. | 2 |
| forceToGenderize: true | Consulta primeiro o conjunto de dados e depois deixa a IA interpretar um apelido pessoal ou um alias, mesmo sem um nome próprio real. | 1 para um resultado encontrado no conjunto de dados; 2 no total se a IA for usada |
Preservar o resultado de cada nome de usuário ao processar uma lista
Use POST /api/v2/gender/batch para listas de nomes de usuário ou listas mistas de nomes, endereços de e-mail e nomes de usuário. O limite é de 50 itens com uma chave de API ou 10 com o teste por IP. Cada item tem as próprias opções de país e de IA, e os IDs opcionais precisam ser únicos dentro do lote.
Por padrão, um lote usa apenas o conjunto de dados. Ative fallback por item se quiser usar a IA comum, ou defina forceToGenderize por item para interpretar apelidos. Verifique data ou error em cada resultado e use id ou index para associar o resultado à linha original. Itens desconhecidos bem-sucedidos são cobrados.
Saber o que você envia
A demonstração em tempo real envia o valor digitado à GenderAPI.io somente quando você o envia. Se a IA for usada, type, value e o contexto de país enviados são transmitidos ao serviço configurado para as previsões. Para uma previsão baseada apenas no conjunto de dados, defina options.ai_mode: off sem forceToGenderize na sua integração.
A política de privacidade, o acordo de processamento de dados e a lista de suboperadores descrevem as condições de tratamento publicadas. Um resultado é uma associação inferida, e o que uma pessoa declara tem prioridade. Não o use como base para decisões com consequências relevantes para uma pessoa.
Perguntas frequentes
Um nome de usuário precisa conter um primeiro nome real?
A previsão comum da IA exige um nome próprio utilizável. Com forceToGenderize, a API também pode tentar uma associação por meio de um apelido quando a consulta ao conjunto de dados não dá resultado. Esse modo não exige um nome próprio real e pode retornar name: null.
forceToGenderize garante um gênero?
Não. Ele permite a interpretação de apelidos, mas o resultado final ainda pode ser desconhecido. Preserve o valor null nativo do JSON e verifique result_status e reason.
A API consulta o perfil nas redes sociais?
Este endpoint interpreta o valor enviado. Ele não busca o perfil, as publicações ou as fotos da conta para descobrir quem é o titular.
Também posso usar forceToGenderize com nomes ou endereços de e-mail?
Sim. Ele é opcional para entradas do tipo name, email e username. Primeiro é usado o conjunto de dados e depois, se não houver resultado, a IA com interpretação de apelidos: 1 crédito para um resultado encontrado no conjunto de dados ou 2 no total se a IA for usada.