API DOKÜMANTASYONU V2

Resmi GenderAPI.io V2 SDK'ları

Python, JavaScript, PHP, Ruby, Java, R ve C# için resmi GenderAPI.io V2 SDK'larını kurun. Paketleri, gereksinimleri ve ortak istek davranışını karşılaştırın.

Paket seçin

Resmi açık kaynak SDK'lar, bu kılavuzlarda anlatılan aynı V2 API’sini çağırır. Her paketin 2.x sürümü API V2’yi kullanır. Yeni projelerde 2.x serisini kurun.

DilPaketKurulumGereksinim
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 veya .NET Standard 2.0

Paket deposu notları

  • Java: Depolarınıza https://jitpack.io adresini ekleyin. Aynı sürüm GitHub Packages’a da io.genderapi:genderapi olarak yayımlanır; bunun için read:packages iznine sahip bir GitHub token’ı gerekir.
  • R: 2.0.0 sürümü CRAN incelemesindeyken CRAN hâlâ 1.x paketini sunar. CRAN yayımlayana kadar 2.0.0 sürümünü GitHub etiketinden kurun.
  • JavaScript: Paket sunucu tarafı çalışma ortamları içindir. API anahtarınızı açığa çıkaracağı için tarayıcı kodunda kullanmayın.

Ortak davranış

  • Her istemci API anahtarını GENDERAPI_API_KEY değişkeninden okur veya oluşturucu (constructor) üzerinden kabul eder. Anahtarı sunucunuzda tutun.
  • API anahtarı olmadan istekler ortak IP denemesini kullanır: IP adresi başına 24 saatte 10 kredi.
  • Paketi içe aktarmak veya istemci oluşturmak istek göndermez. Her metot çağrısı tam olarak bir istek gönderir.
  • Hiçbir SDK isteği otomatik olarak yeniden denemez. Yeniden deneme normal şekilde ücretlendirilen yeni bir işlemdir; bu nedenle önce hatayı ve ücretlendirme durumunu kontrol edin.
  • SDK'lar yönlendirmeleri takip etmez ve varsayılan zaman aşımı 10 saniyedir.
  • Belirsiz sonuç başarılı bir yanıttır: gender null olur ve istek normal şekilde ücretlendirilir.
  • Hatalar HTTP durum kodunu, hata kodunu, istek kimliğini ve varsa Retry-After değerini sunar.

Hızlı başlangıç örnekleri

Her örnek tek bir isim tahmini gönderir ve 1 kredi harcar. Önce sunucu ortamında GENDERAPI_API_KEY değişkenini ayarlayın. Toplu sorgular, kullanım kontrolleri ve hata yönetimi her deponun README dosyasında anlatılır.

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('Elif', country: 'TR');
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("Emre", country = "TR")  # 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 entegrasyonunu 1.x sürümünde tutun

1.x sürümü paketler mevcut V1 entegrasyonları için kullanılabilir olmaya devam eder ve kullanımdan kaldırılmamıştır. Bir güncellemenin 2.x sürümünü kurmaması için ana sürümü sabitleyin, ardından her entegrasyonu hazır olduğunuzda taşıyın.

Dil1.x kurulumu
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")

Kaynak kod ve sorun bildirimleri

Her SDK açık kaynaklıdır. Hata bildirmek veya özellik istemek için ilgili GitHub deposunu kullanın.