DOKUMENTACJA API V2

API v2 JSON odpowiedzi i pewność

Zrozumienie danych i meta pól GenderAPI v2: płeć, nieznane przyczyny, pewność, dowód zbioru danych, wyniki AI, tryb dostępu i metadane rozliczeniowe.

Poznaj odpowiedź JSON

Pomyślne pojedyncze odpowiedzi zawierają data i meta. Poniższy zbiór danych jest przykładem ilustracyjnym, a nie pomiarem dokładności produktu ani obietnicą uzyskania tego samego wyniku na żywo. Pokazuje dostęp próbny IP. Żądania uwierzytelnione kluczem konta zwracają access.mode: api_key; pola, które dotyczą tylko wersji próbnej mają wartość null.

PoleZnaczenie
data.inputTyp wejścia, wartość i kraj. forceToGenderize jest dołączany do true.
data.nameDopasowane lub wyodrębnione imię; null, gdy żaden nie jest dostępny.
data.gendermale, female lub JSON null. To przepowiednia, a nie dowód tożsamości danej osoby.
data.result_status / reasonGdy result_status to identified, reason to null. Gdy status to unknown, przyczyną jest not_found, no_name_candidate, ambiguous lub insufficient_evidence.
data.confidenceWynik 0–1 lub null. Płeć zerowa ma pewność null.
data.confidence_kindobserved_frequency: liczba dominującej płci podzielona przez całkowitą liczbę w wybranym zbiorze danych. model_reported: wynik AI, a nie skalibrowane prawdopodobieństwo. Jeśli wartość jest niedostępna, to null.
data.sample_countRozmiar próbki zbioru danych lub null. Sztuczna inteligencja nie wymyśla liczby próbek.
data.sourcedataset, ai lub none.
data.country / country_sourcePowiązanie kraju ze zbioru danych lub ai_association, lub null. Nie ustala narodowości, miejsca zamieszkania ani pochodzenia etnicznego.
data.matchDopasowane imię w zbiorze danych, metoda (normalized, token, substring lub model_inference), zakres (country lub global) i dopasowany kraj. Brakujące informacje mają wartość null.
meta.request_id / duration_msIdentyfikator operacji i czas przetwarzania w milisekundach.
meta.accessJak przyznano dostęp i powód powrotu do wersji próbnej, jeśli taki miał miejsce.
meta.usageOpłata netto, saldo czasu realizacji, status rozliczeń i informacje o resetowaniu próbnym.
Przykładowa odpowiedź JSON
{
  "data": {
    "input": {
      "type": "name",
      "value": "Onur",
      "country": "TR"
    },
    "name": "onur",
    "gender": "male",
    "country": "TR",
    "confidence": 0.9,
    "confidence_kind": "observed_frequency",
    "sample_count": 100,
    "source": "dataset",
    "result_status": "identified",
    "reason": null,
    "country_source": "dataset",
    "match": {
      "name": "onur",
      "method": "normalized",
      "scope": "country",
      "country": "TR"
    }
  },
  "meta": {
    "request_id": "11111111-1111-4111-8111-111111111111",
    "duration_ms": 12,
    "access": {
      "mode": "ip_trial",
      "reason": "api_key_missing"
    },
    "usage": {
      "charged_credits": 1,
      "remaining_credits": 9,
      "billing_status": "confirmed",
      "resets_at": "2026-09-26T12:00:00.000Z",
      "limit": 10,
      "period_seconds": 86400
    }
  }
}

Pomyślny nieznany wynik

HTTP 200 oznacza, że operacja została zakończona; nie gwarantuje płci. Zachowaj JSON null zamiast konwertować go na male, female, pusty ciąg znaków lub zerową pewność. Sprawdź data.result_status i data.reason oddzielnie od błędów HTTP.

Ten przykład dotyczący tylko zestawu danych zwraca source: none i reason: not_found i nadal kosztuje 1 kredyt. Jeśli zbiory danych dla obu płci są równe, wynik może zawierać reason: ambiguous, zachowując jednocześnie sample_count. Nieznany wynik AI wykorzystuje source: ai i reason: insufficient_evidence.

Przykładowa odpowiedź JSON
{
  "data": {
    "input": {
      "type": "name",
      "value": "zzzxxyy",
      "country": null
    },
    "name": null,
    "gender": null,
    "country": null,
    "confidence": null,
    "confidence_kind": null,
    "sample_count": null,
    "source": "none",
    "result_status": "unknown",
    "reason": "not_found",
    "country_source": null,
    "match": {
      "name": null,
      "method": null,
      "scope": null,
      "country": null
    }
  },
  "meta": {
    "request_id": "11111111-1111-4111-8111-111111111111",
    "duration_ms": 12,
    "access": {
      "mode": "ip_trial",
      "reason": "api_key_missing"
    },
    "usage": {
      "charged_credits": 1,
      "remaining_credits": 8,
      "billing_status": "confirmed",
      "resets_at": "2026-09-26T12:00:00.000Z",
      "limit": 10,
      "period_seconds": 86400
    }
  }
}

Interpretuj pewność i pasujące dowody

Pewność 0,9 mieści się w skali 0–1. Dla observed_frequency oznacza to dominującą liczbę podzieloną przez sumę wybranego zbioru danych; nie jest mierzona kompleksowa dokładność produktu. Wynik model_reported jest dostarczany przez sztuczną inteligencję i nie jest kalibrowany względem częstotliwości zbioru danych.

Wybierz dowolny próg aplikacji, korzystając z własnych danych ewaluacyjnych i confidence_kind. Nie klasyfikuj bezpośrednio zbioru danych i wyników AI, tak jakby mierzyły to samo. AI match.name, match.scope i match.country to null, ponieważ nie wybrano żadnego wiersza zbioru danych; match.method to model_inference.

W przypadku pełnych nazw wynik zbioru danych może pochodzić z komponentu, a nie z pełnego ciągu znaków. data.input zachowuje przesłaną wartość; data.name opisuje zwróconą nazwę, a data.match opisuje zakres kandydata i wyszukiwania.

Powiązane poradniki