API-DOKUMENTASJON V2

Offisielle SDK-er for GenderAPI.io V2

Installer de offisielle SDK-ene for GenderAPI.io V2 for Python, JavaScript, PHP, Ruby, Java, R og C#. Sammenlign pakker, krav og felles forespørselsatferd.

Velg en pakke

De offisielle SDK-ene med åpen kildekode kaller det samme V2-API-et som beskrives i disse veiledningene. Versjon 2.x av hver pakke bruker API V2. Installer 2.x-serien i nye prosjekter.

SpråkPakkeInstallasjonKrav
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 eller .NET Standard 2.0

Merknader om pakkeregistre

  • Java: legg til https://jitpack.io i repositoriene dine. Den samme utgivelsen er også publisert i GitHub Packages som io.genderapi:genderapi, noe som krever et GitHub-token med read:packages.
  • R: CRAN leverer fortsatt 1.x-pakken mens versjon 2.0.0 er til gjennomgang hos CRAN. Installer 2.0.0 fra GitHub-taggen til CRAN publiserer den.
  • JavaScript: pakken er laget for kjøremiljøer på serversiden. Ikke bruk den i nettleserkode, fordi det ville eksponere API-nøkkelen din.

Felles atferd

  • Hver klient leser API-nøkkelen fra GENDERAPI_API_KEY eller tar den imot i konstruktøren. Hold nøkkelen på serveren din.
  • Uten API-nøkkel bruker forespørslene den delte IP-prøveperioden: 10 kreditter per IP-adresse per 24 timer.
  • Å importere en pakke eller opprette en klient sender ingen forespørsel. Hvert metodekall sender nøyaktig én forespørsel.
  • Ingen SDK prøver en forespørsel på nytt automatisk. Et nytt forsøk er en ny operasjon som belastes på vanlig måte, så sjekk feilen og belastningsstatusen først.
  • SDK-ene følger ikke omdirigeringer, og standard tidsavbrudd er 10 sekunder.
  • Et ukjent resultat er et vellykket svar: gender er null, og forespørselen belastes på vanlig måte.
  • Feil viser HTTP-statusen, feilkoden, forespørsels-ID-en og eventuelt Retry-After-verdien.

Eksempler for rask start

Hvert eksempel sender én navneprediksjon og koster 1 kreditt. Sett GENDERAPI_API_KEY i servermiljøet først. README-filen i hvert repositorium dekker samleforespørsler, forbrukskontroller og feilhåndtering.

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('Henrik', country: 'NO');
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("Emma", country = "NO")  # 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);

Behold en V1-integrasjon på 1.x

Pakkene i versjon 1.x er fortsatt tilgjengelige for eksisterende V1-integrasjoner og er ikke utfaset. Lås hovedversjonen slik at en oppdatering ikke installerer 2.x, og migrer deretter hver integrasjon når du er klar.

SpråkInstallasjon av 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")

Kildekode og saker

Hver SDK har åpen kildekode. Rapporter feil eller be om funksjoner i det tilhørende GitHub-repositoriet.