Pobierz płeć na podstawie nazwy użytkownika – Zapytanie zbiorcze

Endpoint Multiple Username pozwala analizować płeć nawet 50 nazw użytkowników w pojedynczym zapytaniu. Jest to przydatne do przetwarzania danych masowych oraz integracji o wysokiej wydajności. Wszystkie parametry są przesyłane w żądaniu POST w formacie JSON. Musisz uwierzytelnić się za pomocą tokenu Bearer w nagłówku Authorization.

API spróbuje wyodrębnić najbardziej prawdopodobne imię z każdej nazwy użytkownika, co może pomóc w poprawie dokładności przewidywania płci. Możesz również przekazać opcjonalny filtr country oraz własne pole id dla każdego rekordu, aby móc powiązać wyniki ze swoją bazą danych.

Uwaga: Nazwy użytkowników zazwyczaj powinny być zapisane znakami łacińskimi. Często jednak zawierają słowa lub kombinacje, które nie są prawdziwymi imionami, np. cool_boy123.

Jeśli Twoim głównym celem jest jak najdokładniejsze przewidzenie płci, zalecamy korzystanie z pojedynczych zapytań z włączonym parametrem forceToGenderize.

Jeśli Twoim priorytetem jest jedynie wyodrębnienie potencjalnych imion z nazw użytkowników, możesz skorzystać z zapytań zbiorczych.

URL zapytania

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

Wymagane nagłówki HTTP

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

Parametry w ciele zapytania

Pole Typ Wymagane Opis
data Tablica obiektów Tak Tablica nazw użytkowników oraz ich opcjonalnych parametrów. Maksymalnie 50 wpisów na zapytanie.
username String Tak (w każdym obiekcie) Nazwa użytkownika do analizy. Może zawierać podkreślenia, cyfry itd.
country String Nie Dwuliterowy kod kraju (ISO 3166-1 alpha-2) w celu zwiększenia dokładności przewidywania płci. Przykład: TR dla Turcji.
id String lub Integer Nie Opcjonalne ID, które definiujesz, aby powiązać wyniki z Twoimi rekordami w bazie danych. To samo id zostanie zwrócone w odpowiedzi w celu mapowania.

Przykładowe ciało zapytania

{
  "data": [
    { "username": "anna_smith88", "country": "US", "id": "123" },
    { "username": "michael_bauer", "country": "DE", "id": "456" },
    { "username": "giulia_rossi", "country": "IT", "id": "789" }
  ]
}

Przykłady zapytań


Przykład cURL

curl -X POST "https://api.genderapi.io/api/username/multi/country" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer YOUR_API_KEY" \
     -d '{"data":[{"username":"anna_smith88","country":"US","id":"123"},{"username":"michael_bauer","country":"DE","id":"456"},{"username":"giulia_rossi","country":"IT","id":"789"}]}'

Przykład PHP cURL

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

$data = array(
    "data" => array(
        array(
            "username" => "anna_smith88",
            "country" => "US",
            "id" => "123"
        ),
        array(
            "username" => "michael_bauer",
            "country" => "DE",
            "id" => "456"
        ),
        array(
            "username" => "giulia_rossi",
            "country" => "IT",
            "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;
?>

Przykład JavaScript fetch

fetch("https://api.genderapi.io/api/username/multi/country", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
  },
  body: JSON.stringify({
    data: [
      { username: "anna_smith88", country: "US", id: "123" },
      { username: "michael_bauer", country: "DE", id: "456" },
      { username: "giulia_rossi", country: "IT", id: "789" }
    ]
  })
})
.then(response => response.json())
.then(data => console.log(data));

Przykład Python requests

import requests

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

payload = {
    "data": [
        { "username": "anna_smith88", "country": "US", "id": "123" },
        { "username": "michael_bauer", "country": "DE", "id": "456" },
        { "username": "giulia_rossi", "country": "IT", "id": "789" }
    ]
}

headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
}

response = requests.post(url, headers=headers, json=payload)

print(response.json())

Przykładowa odpowiedź JSON

{
  "status": true,
  "used_credits": 3,
  "remaining_credits": 7265,
  "expires": 1717069765,
  "names": [
    {
      "name": "Anna",
      "q": "anna_smith88",
      "gender": "female",
      "country": "US",
      "total_names": 1234,
      "probability": 92,
      "id": "123"
    },
    {
      "name": "Michael",
      "q": "michael_bauer",
      "gender": "male",
      "country": "DE",
      "total_names": 5678,
      "probability": 89,
      "id": "456"
    },
    {
      "name": "Giulia",
      "q": "giulia_rossi",
      "gender": "female",
      "country": "IT",
      "total_names": 4321,
      "probability": 95,
      "id": "789"
    }
  ],
  "duration": "5ms"
}

Pola odpowiedzi

Pole Typ Opis
status Boolean Określa, czy zapytanie zakończyło się sukcesem.
used_credits Integer Liczba kredytów zużytych dla tego zapytania.
remaining_credits Integer Środki pozostałe na koncie po tym zapytaniu.
expires Integer (timestamp) Data wygaśnięcia pakietu w formacie UNIX timestamp.
names Tablica obiektów Lista wyników dla każdego przesłanego username.
names[].name String Wykryte imię, jeśli zostało wyodrębnione z nazwy użytkownika.
names[].q String Twoje oryginalne zapytanie z nazwą użytkownika.
names[].gender Enum[String] Przewidziana płeć: male, female lub null.
names[].country String Kod kraju brany pod uwagę przy przewidywaniu płci.
names[].total_names Integer Liczba próbek wykorzystanych do przewidywania płci.
names[].probability Integer Procent pewności przewidywania płci.
names[].id String / Integer To samo id, które przesłałeś w zapytaniu, używane do powiązania wyników z Twoimi danymi.
duration String Całkowity czas przetwarzania zapytania (np. 5ms).