Gender API
Gender-API er AI-drevet og hjælper dig med at finde ud af, om et fornavn sandsynligvis bruges mere af mænd eller kvinder.
{
"name": "elizabeth",
"gender": "female",
"samples": 355,
"accuracy": 100,
"duration": "34ms"
}
GENDER-API FORKLARET
Tag en prøvetur
Prøv det selv. Indtast et navn for at se resultatet.
VI KAN OGSÅ BESTEMME KØNNET PÅ EN EMAILADRESSE
GENDER-API VS GENERIC AI
Hvorfor specialiseret kønsbestemmelse overgår generiske AI-modeller.
Lynhurtig
Hurtigere svartider sammenlignet med generiske AI
Mere omfattende
Flere navne i vores database
Højere nøjagtighed
Bedre nøjagtighed i bestemmelse af køn
API-KLIENTER & KODEEKSEMPLER
Vælg dit programmeringssprog for at se installationsvejledning og kodeeksempler
PHP with Composer
Official client library
PHP Legacy
Without Composer
TypeScript
Type-safe client
JavaScript
Node.js & Browser
Python
Data science ready
R
Statistical computing
Java
Enterprise ready
C#
.NET integration
Go / Golang
High performance
Ruby
Elegant syntax
PowerShell
Windows Automation
Rust
Memory safe
PHP with Composer
Vores officielle PHP-klientbibliotek giver dig en nem måde at integrere Gender API i dine PHP-applikationer ved hjælp af Composer-pakkemanageren.
Installer først vores bibliotek med Composer:
composer require gender-api/client
<?php
use GenderApi\Client as GenderApiClient;
$client = new GenderApiClient('your-api-key');
// Simple gender lookup
$result = $client->getByFirstName('Elisabeth');
if ($result->genderFound()) {
echo $result->getGender(); // "female"
echo $result->getAccuracy(); // 99
}
// First name with country (e.g., "Andrea" varies by country)
$result = $client->getByFirstNameAndCountry('Andrea', 'IT');
echo $result->getGender(); // "male" (in Italy)
// Full name with automatic first/last name splitting
$result = $client->getByFirstNameAndLastName('Sandra Miller');
echo $result->getFirstName(); // "Sandra"
echo $result->getLastName(); // "Miller"
echo $result->getGender(); // "female"
// Email address analysis
$result = $client->getByEmailAddress('elisabeth.smith@company.com');
echo $result->getGender(); // "female"
// Batch processing - multiple names in one call
$names = ['Michael', 'Sarah', 'Kim'];
$results = $client->getByMultipleNames($names);
foreach ($results as $result) {
printf(
"%s: %s (%d%% confidence)\n",
$result->getFirstName(),
$result->getGender(),
$result->getAccuracy()
);
}
Se fuld klientdokumentation her:
PHP Legacy
Selvstændig PHP-implementering uden Composer-afhængighed til legacy-projekter eller simple integrationer.
function getGender($firstname) {
$myKey = 'insert your server key here';
$data = json_decode(file_get_contents(
'https://gender-api.com/get?key=' .
$myKey .
'&name=' . urlencode($firstname)));
return $data->gender;
}
echo getGender('markus'); //Output: male
TypeScript
Typesikker klient til TypeScript-projekter med fuld IntelliSense-understøttelse og streng typekontrol.
Installer først vores bibliotek med npm:
npm install gender-api.com-client --save
import { Client } from 'gender-api.com-client';
const client = new Client('your-api-key');
// Simple gender lookup
const result = await client.getByFirstName('Theresa');
console.log(`${result.first_name} is ${result.gender} (Probability: ${result.probability}`);
// First name with country (e.g., "Andrea" varies by country)
const resultWithCountry = await client.getByFirstName('Andrea', { country: 'IT' });
console.log(`${resultWithCountry.first_name} in Italy is ${resultWithCountry.gender}`);
// Full name with automatic first/last name splitting
const fullResult = await client.getByFullName('John Smith');
console.log(`${fullResult.first_name} ${fullResult.last_name} is ${fullResult.gender}`);
// Email address analysis
const emailResult = await client.getByEmailAddress('marie.curie@example.com');
console.log(`Email gender: ${emailResult.gender}`);
// Batch processing - multiple names in one call
const names = [
{ id: '1', first_name: 'Theresa', country: 'US' },
{ id: '2', first_name: 'John', country: 'US' }
];
const batchResults = await client.getByFirstNameMultiple(names);
batchResults.forEach(r => {
console.log(`ID: ${r.input.id}, Gender: ${r.gender}`);
});
// Account statistics
const stats = await client.getStatistics();
console.log(`Credits Remaining: ${stats.remaining_credits}`);
Se fuld klientdokumentation her:
JavaScript
Brugervenlig JavaScript‑klient til Node.js og browsermiljøer med Promise‑baseret API.
Installer først vores bibliotek med npm:
npm install gender-api.com-client --save
const { Client } = require('gender-api.com-client');
const client = new Client('your-api-key');
// Simple gender lookup
client.getByFirstName('Theresa').then(result => {
console.log(`${result.first_name} is ${result.gender} (Probability: ${result.probability}`);
}).catch(error => {
console.error('Error:', error);
});
// First name with country (e.g., "Andrea" varies by country)
client.getByFirstName('Andrea', { country: 'IT' }).then(result => {
console.log(`${result.first_name} in Italy is ${result.gender}`);
}).catch(error => {
console.error('Error:', error);
});
// Full name with automatic first/last name splitting
client.getByFullName('John Smith').then(result => {
console.log(`${result.first_name} ${result.last_name} is ${result.gender}`);
}).catch(error => {
console.error('Error:', error);
});
// Email address analysis
client.getByEmailAddress('marie.curie@example.com').then(result => {
console.log(`Email gender: ${result.gender}`);
}).catch(error => {
console.error('Error:', error);
});
// Batch processing - multiple names in one call
const names = [
{ id: '1', first_name: 'Theresa', country: 'US' },
{ id: '2', first_name: 'John', country: 'US' }
];
client.getByFirstNameMultiple(names).then(results => {
results.forEach(r => {
console.log(`ID: ${r.input.id}, Gender: ${r.gender}`);
});
}).catch(error => {
console.error('Error:', error);
});
// Account statistics
client.getStatistics().then(stats => {
console.log(`Credits Remaining: ${stats.remaining_credits}`);
}).catch(error => {
console.error('Error:', error);
});
Se fuld klientdokumentation her:
Python
Python‑agtig API‑klient med ren, læsbar kode – perfekt til data science, machine learning og webapplikationer.
Installer først vores bibliotek med pip:
# Install: pip install gender-api-client
from gender_api import Client
client = Client(api_key="insert your server key here")
# Simple gender lookup
result = client.get_by_first_name("kevin")
if result.result_found:
print(f"Gender: {result.gender}") #Gender: male
print(f"Accuracy: {result.accuracy}%") #Accuracy: 99%
Python 3.*
import json
from urllib.request import urlopen
myKey = "insert your server key here"
url = "https://gender-api.com/get?key=" + myKey + "&name=kevin"
response = urlopen(url)
decoded = response.read().decode('utf-8')
data = json.loads(decoded)
print( "Gender: " + data["gender"]); #Gender: male
Se fuld klientdokumentation her:
https://github.com/markus-perl/gender-api-client-python
https://pypi.org/project/gender-api-client/
R
Ideel til statistisk analyse og data science‑workflows i R med problemfri integration.
install.packages(c("httr2", "dplyr", "tibble", "jsonlite"))
#' Gender API Client (single name only)
#'
#' Gets gender by a first name, optionally filtered by country.
#'
#' @param name A character string containing a single first name.
#' @param country Optional two-letter country code, see: https://gender-api.com/en/api-docs
#' @param api_key Your Gender-API.com API key.
#'
#' @return A tibble containing the estimated gender, number of samples,
#' accuracy (0–100), and the request duration in ms.
#' @export
#'
#' @examples
#' \dontrun{
#' gender("Andrea", country="US", api_key="YOUR_KEY")
#' gender("Andrea", country="IT")
#' }
#'
library(httr2)
library(dplyr)
gender <- function(name, country = NULL, api_key = Sys.getenv("GENDER_API_KEY")) {
if (missing(name) || length(name) != 1) {
stop("`name` must be a single string.")
}
if (is.null(api_key) || api_key == "") {
stop("API key is required. Set with `Sys.setenv(GENDER_API_KEY='your_key')` or pass via `api_key`.")
}
args <- list(
key = api_key,
name = name
)
if (!is.null(country)) args$country <- country
resp <- request("https://gender-api.com/get") %>%
req_url_query(!!!args) %>%
req_perform()
if (resp_status(resp) >= 400) {
stop("Request failed: ", resp_status_desc(resp))
}
out <- resp_body_json(resp, simplifyVector = TRUE)
tibble::as_tibble(out)
}
gender("Andrea", country="US", api_key="<YOUR API KEY>") Java
Enterprise‑klar Java‑implementering til robuste, skalerbare applikationer med ordentlig fejlhåndtering.
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.io.IOException;
import com.google.gson.Gson;
import com.google.gson.JsonObject;
public class Main {
public static void main(String[] args) {
String apiKey = "YOUR_API_KEY";
String url = "https://gender-api.com/v2/gender/by-first-name";
String payload = "{\"first_name\":\"Theresa\"}";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "application/json")
.header("Authorization", "Bearer " + apiKey)
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
try {
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
Gson gson = new Gson();
JsonObject json = gson.fromJson(response.body(), JsonObject.class);
System.out.println("Gender: " + json.get("gender").getAsString());
System.out.println("Probability: " + json.get("probability").getAsFloat());
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
} .NET‑integration til C#‑applikationer med fuld async/await‑understøttelse og moderne C#‑funktioner.
using System;
using System.Net.Http;
using System.Text;
using System.Text.Json;
using System.Text.Json.Serialization;
using System.Threading.Tasks;
public record GenderResponse(
[property: JsonPropertyName("first_name")] string FirstName,
[property: JsonPropertyName("gender")] string Gender,
[property: JsonPropertyName("probability")] double Probability
);
public class Program
{
public static async Task Main()
{
var apiKey = "YOUR_API_KEY"; // Get your key at https://gender-api.com/en/account/auth-tokens
using var client = new HttpClient();
var requestBody = new { first_name = "Theresa" };
var jsonContent = new StringContent(
JsonSerializer.Serialize(requestBody),
Encoding.UTF8,
"application/json");
// Add Authorization header
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {apiKey}");
try
{
// Send POST request to API V2
var response = await client.PostAsync("https://gender-api.com/v2/gender/by-first-name", jsonContent);
response.EnsureSuccessStatusCode();
// Parse response
var jsonResponse = await response.Content.ReadAsStringAsync();
var result = JsonSerializer.Deserialize<GenderResponse>(jsonResponse);
Console.WriteLine($"Gender: {result.Gender}");
Console.WriteLine($"Probability: {result.Probability}");
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
} Go
Højtydende Go-klient der bruger standardbiblioteker for problemfri integration.
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
// Response defines the structure of the JSON response from Gender-API.com
type Response struct {
ResultFound bool `json:"result_found"`
FirstName string `json:"first_name"`
Gender string `json:"gender"`
Probability float64 `json:"probability"`
}
func main() {
// Determine the gender of a first name using API V2
// ---------------------------------------------------
apiKey := "YOUR_API_KEY" // Get your key at https://gender-api.com/en/account/auth-tokens
firstName := "Theresa"
// Construct the JSON payload
requestBody, _ := json.Marshal(map[string]string{
"first_name": firstName,
})
// Create the request
req, err := http.NewRequest("POST", "https://gender-api.com/v2/gender/by-first-name", bytes.NewBuffer(requestBody))
if err != nil {
fmt.Printf("Error creating request: %s\n", err)
return
}
// Set headers
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer "+apiKey)
// Perform the request
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
fmt.Printf("Error making request: %s\n", err)
return
}
defer resp.Body.Close()
// Read the response body
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Printf("Error reading response: %s\n", err)
return
}
// Parse the JSON response
var result Response
if err := json.Unmarshal(body, &result); err != nil {
fmt.Printf("Error parsing JSON: %s\n", err)
return
}
// Output the result
fmt.Printf("Name: %s\n", result.FirstName)
fmt.Printf("Gender: %s\n", result.Gender)
fmt.Printf("Probability: %.2f\n", result.Probability)
} Ruby
Simpel og elegant Ruby-klient til nem API integration.
require 'net/http'
require 'json'
require 'uri'
# Determine the gender of a first name using API V2
# ---------------------------------------------------
api_key = 'YOUR_API_KEY' # Get your key at https://gender-api.com/en/account/auth-tokens
uri = URI('https://gender-api.com/v2/gender/by-first-name')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = "Bearer #{api_key}"
request.body = JSON.dump({ first_name: 'Theresa' })
begin
response = http.request(request)
# Parse the JSON response
result = JSON.parse(response.read_body)
puts "Gender: #{result['gender']}"
puts "Probability: #{result['probability']}"
rescue StandardError => e
puts "Error: #{e.message}"
end
PowerShell
Automatiser dine Windows-arbejdsgange med vores direkte PowerShell integration.
# Determine the gender of a first name using API V2
# ---------------------------------------------------
$apiKey = "YOUR_API_KEY" # Get your key at https://gender-api.com/en/account/auth-tokens
$url = "https://gender-api.com/v2/gender/by-first-name"
$body = @{
first_name = "Theresa"
} | ConvertTo-Json
$headers = @{
"Content-Type" = "application/json"
"Authorization" = "Bearer $apiKey"
}
try {
$response = Invoke-RestMethod -Uri $url -Method Post -Headers $headers -Body $body
Write-Host "Name: $($response.first_name)"
Write-Host "Gender: $($response.gender)"
Write-Host "Probability: $($response.probability)"
}
catch {
Write-Host "Error: $_"
}
Rust
Lynhurtig og hukommelseseffektiv klient til højtydende applikationer.
use reqwest::header::AUTHORIZATION;
use serde::{Deserialize, Serialize};
use std::error::Error;
// Add to Cargo.toml:
// [dependencies]
// reqwest = { version = "0.11", features = ["json"] }
// tokio = { version = "1", features = ["full"] }
// serde = { version = "1.0", features = ["derive"] }
#[derive(Serialize)]
struct Request<'a> {
first_name: &'a str,
}
#[derive(Deserialize, Debug)]
struct Response {
gender: String,
probability: f64,
}
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
let api_key = "YOUR_API_KEY"; // Get your key at https://gender-api.com/en/account/auth-tokens
let client = reqwest::Client::new();
let resp: Response = client
.post("https://gender-api.com/v2/gender/by-first-name")
.header(AUTHORIZATION, format!("Bearer {api_key}"))
.json(&Request { first_name: "Theresa" })
.send()
await?
.json()
await?;
println!("Gender: {}", resp.gender);
println!("Probability: {}", resp.probability);
Ok(())
}
PÅLIDELIGE INTEGRATIONER
Gender-API fungerer problemfrit med de værktøjer, du allerede bruger. Udforsk vores voksende økosystem af integrationer.
Og mange flere integrationer tilgængelige!
Se Alle IntegrationerCSV OG EXCEL FILUPLOAD
Upload CSV-filer med op til 10.000.000 datasæt eller Excel-filer med op til 100.000 datasæt pr. fil.
Gratis Plan Tilgængelig
Bliv medlem i dag og modtag op til 100 anmodninger gratis hver måned.
PRISSÆTNING
DOWNLOAD VORES PRÆSENTATION
Lær mere om Gender API og hvordan det kan hjælpe din forretning.