API-DOCUMENTATIE V2

Officiële SDK's voor GenderAPI.io V2

Installeer de officiële SDK's voor GenderAPI.io V2 voor Python, JavaScript, PHP, Ruby, Java, R en C#. Vergelijk pakketten, vereisten en het gedeelde gedrag van verzoeken.

Kies een pakket

De officiële opensource-SDK's roepen dezelfde V2-API aan die in deze handleidingen wordt beschreven. Versie 2.x van elk pakket gebruikt API V2. Installeer voor nieuwe projecten de 2.x-versie.

TaalPakketInstallerenVereist
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 of .NET Standard 2.0

Opmerkingen over registers

  • Java: voeg https://jitpack.io toe aan uw repositories. Dezelfde release wordt ook op GitHub Packages gepubliceerd als io.genderapi:genderapi; daarvoor is een GitHub-token met read:packages nodig.
  • R: CRAN biedt nog het 1.x-pakket aan terwijl versie 2.0.0 door CRAN wordt beoordeeld. Installeer 2.0.0 vanaf de GitHub-tag totdat CRAN deze publiceert.
  • JavaScript: het pakket is bedoeld voor runtimes aan de serverzijde. Gebruik het niet in browsercode, want dan wordt uw API-sleutel zichtbaar.

Gedeeld gedrag

  • Elke client leest de API-sleutel uit GENDERAPI_API_KEY of accepteert deze in de constructor. Houd de sleutel op uw server.
  • Zonder API-sleutel gebruiken verzoeken de gedeelde IP-proefperiode: 10 credits per IP-adres per 24 uur.
  • Een pakket importeren of een client aanmaken verstuurt geen verzoek. Elke methodeaanroep verstuurt precies één verzoek.
  • Geen enkele SDK herhaalt een verzoek automatisch. Een nieuwe poging is een nieuwe bewerking die normaal wordt afgeschreven, dus controleer eerst de fout en de afschrijvingsstatus.
  • De SDK's volgen geen omleidingen en de standaardtime-out is 10 seconden.
  • Een onbekend resultaat is een geslaagd antwoord: gender is null en het verzoek wordt normaal afgeschreven.
  • Fouten bevatten de HTTP-status, de foutcode, het verzoek-ID en, indien aanwezig, de waarde van Retry-After.

Snelstartvoorbeelden

Elk voorbeeld verstuurt één naamvoorspelling en kost 1 credit. Stel eerst GENDERAPI_API_KEY in de serveromgeving in. De README van elke repository behandelt batchverzoeken, gebruikscontroles en foutafhandeling.

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('Daan', country: 'NL');
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("Lotte", country = "NL")  # 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);

Een V1-integratie op 1.x houden

Pakketten van versie 1.x blijven beschikbaar voor bestaande V1-integraties en zijn niet verouderd. Zet de hoofdversie vast zodat een update geen 2.x installeert, en migreer daarna elke integratie wanneer u er klaar voor bent.

TaalInstallatie van 1.x
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")

Broncode en issues

Elke SDK is open source. Meld bugs of vraag functies aan in de bijbehorende GitHub-repository.