Vælg en pakke
De officielle SDK'er med åben kildekode kalder det samme V2-API, som beskrives i disse vejledninger. Version 2.x af hver pakke bruger API V2. Installér 2.x-versionen i nye projekter.
| Sprog | Pakke | Installation | Krav |
|---|---|---|---|
| Python | genderapi (PyPI) | pip install "genderapi>=2,<3" | Python 3.9+ |
| JavaScript / TypeScript | genderapi (npm) | npm install genderapi@2 | Node.js 18+ |
| PHP | genderapi/genderapi (Packagist) | composer require "genderapi/genderapi:^2.0" | PHP 8.1+ |
| Ruby | genderapi (RubyGems) | gem install genderapi -v "~> 2.0" | Ruby 3.0+ |
| Java | com.github.GenderAPI:genderapi-java (JitPack) | implementation 'com.github.GenderAPI:genderapi-java:v2.0.0' | Java 11+ |
| R | genderapi (GitHub) | remotes::install_github("GenderAPI/genderapi-R", ref = "v2.0.0") | R 4.1+ |
| C# / .NET | GenderAPI (NuGet) | dotnet add package GenderAPI | .NET 8 eller .NET Standard 2.0 |
Bemærkninger om pakkeregistre
- Java: Tilføj https://jitpack.io til dine repositories. Den samme udgivelse er også publiceret på GitHub Packages som io.genderapi:genderapi, hvilket kræver et GitHub-token med read:packages.
- R: CRAN leverer stadig 1.x-pakken, mens version 2.0.0 er under gennemgang hos CRAN. Installér 2.0.0 fra GitHub-tagget, indtil CRAN publicerer den.
- JavaScript: Pakken er beregnet til kørselsmiljøer på serversiden. Brug den ikke i browserkode, da det ville afsløre din API-nøgle.
Fælles adfærd
- Hver klient læser API-nøglen fra GENDERAPI_API_KEY eller tager imod den i konstruktøren. Opbevar nøglen på din server.
- Uden en API-nøgle bruger forespørgslerne den delte IP-prøveadgang: 10 kreditter pr. IP-adresse pr. 24 timer.
- Når du importerer en pakke eller opretter en klient, sendes der ingen forespørgsel. Hvert metodekald sender præcis én forespørgsel.
- Ingen SDK gentager en forespørgsel automatisk. Et nyt forsøg er en ny handling, der opkræves efter de normale regler, så kontrollér først fejlen og opkrævningsstatussen.
- SDK'erne følger ikke omdirigeringer, og standardtimeouten er 10 sekunder.
- Et ukendt resultat er et gennemført svar: gender er null, og forespørgslen opkræves efter de normale regler.
- Fejl angiver HTTP-status, fejlkode, forespørgsels-ID og, når den findes, værdien af Retry-After.
Eksempler til hurtig start
Hvert eksempel sender én navneforudsigelse og koster 1 kredit. Angiv først GENDERAPI_API_KEY i servermiljøet. README-filen i hvert repository beskriver batchforespørgsler, kontrol af forbrug og fejlhåndtering.
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)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
require __DIR__ . '/vendor/autoload.php';
use GenderApi\Client;
$client = new Client(); // reads GENDERAPI_API_KEY
$result = $client->name('Mads', country: 'DK');
echo $result->data->gender ?? 'unknown', ' ', $result->meta->usage->chargedCredits, "\n";require "genderapi"
client = GenderAPI::Client.new # reads ENV["GENDERAPI_API_KEY"]
result = client.name("Andrea", country: "IT")
puts result.data.gender, result.usage.charged_creditsimport 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());library(genderapi)
res <- genderapi_name("Ida", country = "DK") # reads GENDERAPI_API_KEY
res$data$gender
res$meta$usage$charged_creditsusing 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-integration på 1.x
Pakkerne i version 1.x er fortsat tilgængelige til eksisterende V1-integrationer og er ikke udfasede. Fastlås hovedversionen, så en opdatering ikke installerer 2.x, og migrér derefter hver integration, når du er klar.
| Sprog | Installation af 1.x |
|---|---|
| Python | pip install "genderapi<2" |
| JavaScript / TypeScript | npm install genderapi@1 |
| PHP | composer require "genderapi/genderapi:^1.0" |
| Ruby | gem install genderapi -v "~> 1.0" |
| Java | implementation 'com.github.GenderAPI:genderapi-java:v1.0.3' |
| R | remotes::install_version("genderapi", "1.0.3") |
Kildekode og fejlrapporter
Hver SDK er open source. Rapportér fejl eller foreslå funktioner i det tilhørende GitHub-repository.