API-DOKUMENTATION V2

Offizielle SDKs für GenderAPI.io V2

Installieren Sie die offiziellen GenderAPI.io-V2-SDKs für Python, JavaScript, PHP, Ruby, Java, R und C#. Vergleichen Sie Pakete, Voraussetzungen und das gemeinsame Anfrageverhalten.

Paket auswählen

Die offiziellen Open-Source-SDKs rufen dieselbe V2-API auf, die in diesen Leitfäden beschrieben ist. Version 2.x jedes Pakets verwendet API V2. Installieren Sie für neue Projekte die 2.x-Linie.

SprachePaketInstallationVoraussetzung
Pythongenderapi (PyPI)pip install "genderapi>=2,<3"Python 3.9+
JavaScript / TypeScriptgenderapi (npm)npm install genderapi@2Node.js 18+
PHPgenderapi/genderapi (Packagist)composer require "genderapi/genderapi:^2.0"PHP 8.1+
Rubygenderapi (RubyGems)gem install genderapi -v "~> 2.0"Ruby 3.0+
Javacom.github.GenderAPI:genderapi-java (JitPack)implementation 'com.github.GenderAPI:genderapi-java:v2.0.0'Java 11+
Rgenderapi (GitHub)remotes::install_github("GenderAPI/genderapi-R", ref = "v2.0.0")R 4.1+
C# / .NETGenderAPI (NuGet)dotnet add package GenderAPI.NET 8 oder .NET Standard 2.0

Hinweise zu Paket-Registries

  • Java: Fügen Sie https://jitpack.io zu Ihren Repositories hinzu. Dasselbe Release wird auch in GitHub Packages als io.genderapi:genderapi veröffentlicht; dafür ist ein GitHub-Token mit read:packages erforderlich.
  • R: CRAN stellt weiterhin das 1.x-Paket bereit, während Version 2.0.0 von CRAN geprüft wird. Installieren Sie 2.0.0 über den GitHub-Tag, bis CRAN die Version veröffentlicht.
  • JavaScript: Das Paket ist für serverseitige Laufzeitumgebungen gedacht. Verwenden Sie es nicht in Browsercode, da dies Ihren API-Schlüssel offenlegen würde.

Gemeinsames Verhalten

  • Jeder Client liest den API-Schlüssel aus GENDERAPI_API_KEY oder nimmt ihn im Konstruktor entgegen. Bewahren Sie den Schlüssel auf Ihrem Server auf.
  • Ohne API-Schlüssel nutzen Anfragen den gemeinsamen IP-Testzugang: 10 Credits pro IP-Adresse innerhalb von 24 Stunden.
  • Das Importieren eines Pakets oder das Erstellen eines Clients sendet keine Anfrage. Jeder Methodenaufruf sendet genau eine Anfrage.
  • Kein SDK wiederholt eine Anfrage automatisch. Eine Wiederholung ist ein neuer Vorgang, der normal berechnet wird; prüfen Sie daher zuerst den Fehler und den Abrechnungsstatus.
  • Die SDKs folgen keinen Weiterleitungen, und das Standard-Timeout beträgt 10 Sekunden.
  • Ein unbekanntes Ergebnis ist eine erfolgreiche Antwort: gender ist null und die Anfrage wird normal berechnet.
  • Fehler enthalten den HTTP-Status, den Fehlercode, die Anfrage-ID und, sofern vorhanden, den Wert von Retry-After.

Schnellstart-Beispiele

Jedes Beispiel sendet eine Namensvorhersage und kostet 1 Credit. Setzen Sie zuerst GENDERAPI_API_KEY in der Serverumgebung. Die README des jeweiligen Repositorys behandelt Batch-Anfragen, Nutzungsabfragen und Fehlerbehandlung.

Python
from genderapi import GenderAPI

client = GenderAPI()  # reads GENDERAPI_API_KEY
result = client.name("Alice", country="US")
print(result.data.gender, result.data.result_status)
print(result.meta.usage.charged_credits)
JavaScript / TypeScript
import { GenderAPI } from "genderapi";

const client = new GenderAPI(); // reads GENDERAPI_API_KEY
const { data, meta } = await client.name("Andrea", { country: "IT" });
console.log(data.gender, data.result_status, meta.usage.charged_credits);
PHP
<?php
require __DIR__ . '/vendor/autoload.php';

use GenderApi\Client;

$client = new Client(); // reads GENDERAPI_API_KEY
$result = $client->name('Anna', country: 'DE');
echo $result->data->gender ?? 'unknown', ' ', $result->meta->usage->chargedCredits, "\n";
Ruby
require "genderapi"

client = GenderAPI::Client.new # reads ENV["GENDERAPI_API_KEY"]
result = client.name("Andrea", country: "IT")
puts result.data.gender, result.usage.charged_credits
Java
import io.genderapi.GenderApiClient;
import io.genderapi.model.GenderResponse;

GenderApiClient client = new GenderApiClient(); // reads GENDERAPI_API_KEY
GenderResponse response = client.name("Andrea", "IT");
System.out.println(response.getData().getGender());
System.out.println(response.getMeta().getUsage().getChargedCredits());
R
library(genderapi)

res <- genderapi_name("Lena", country = "DE")  # reads GENDERAPI_API_KEY
res$data$gender
res$meta$usage$charged_credits
C# / .NET
using GenderApi;

using var client = new GenderApiClient(); // reads GENDERAPI_API_KEY
GenderResponse res = await client.NameAsync("Alice", country: "US");
Console.WriteLine(res.Data!.Gender ?? "unknown");
Console.WriteLine(res.Meta!.Usage!.ChargedCredits);

V1-Integration auf 1.x belassen

Pakete der Version 1.x bleiben für bestehende V1-Integrationen verfügbar und sind nicht veraltet. Fixieren Sie die Hauptversion, damit ein Update nicht 2.x installiert, und migrieren Sie jede Integration, sobald Sie bereit sind.

Sprache1.x-Installation
Pythonpip install "genderapi<2"
JavaScript / TypeScriptnpm install genderapi@1
PHPcomposer require "genderapi/genderapi:^1.0"
Rubygem install genderapi -v "~> 1.0"
Javaimplementation 'com.github.GenderAPI:genderapi-java:v1.0.3'
Rremotes::install_version("genderapi", "1.0.3")

Quellcode und Issues

Jedes SDK ist Open Source. Melden Sie Fehler oder wünschen Sie Funktionen im jeweiligen GitHub-Repository.