पैकेज चुनें
आधिकारिक ओपन-सोर्स SDK उसी V2 API को कॉल करते हैं जिसका वर्णन इन गाइड में किया गया है। हर पैकेज का 2.x संस्करण API V2 इस्तेमाल करता है। नए प्रोजेक्ट के लिए 2.x लाइन इंस्टॉल करें।
| भाषा | पैकेज | इंस्टॉल | ज़रूरतें |
|---|---|---|---|
| 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 या .NET Standard 2.0 |
रजिस्ट्री से जुड़ी बातें
- Java: अपनी रिपॉज़िटरी सूची में https://jitpack.io जोड़ें। यही रिलीज़ GitHub Packages पर io.genderapi:genderapi के रूप में भी प्रकाशित है, जिसके लिए read:packages वाला GitHub टोकन ज़रूरी है।
- R: संस्करण 2.0.0 की CRAN समीक्षा चलने तक CRAN पर अभी 1.x पैकेज ही मिलता है। CRAN पर प्रकाशित होने तक 2.0.0 को GitHub टैग से इंस्टॉल करें।
- JavaScript: यह पैकेज सर्वर-साइड रनटाइम के लिए है। इसे ब्राउज़र कोड में इस्तेमाल न करें, क्योंकि इससे आपकी API कुंजी उजागर हो जाएगी।
साझा व्यवहार
- हर क्लाइंट API कुंजी GENDERAPI_API_KEY से पढ़ता है या उसे कंस्ट्रक्टर में स्वीकार करता है। कुंजी अपने सर्वर पर ही रखें।
- API कुंजी के बिना अनुरोध साझा IP ट्रायल इस्तेमाल करते हैं: हर IP पते के लिए हर 24 घंटे में 10 क्रेडिट।
- पैकेज इंपोर्ट करने या क्लाइंट बनाने से कोई अनुरोध नहीं भेजा जाता। हर मेथड कॉल ठीक एक अनुरोध भेजता है।
- कोई भी SDK अनुरोध का अपने-आप दोबारा प्रयास नहीं करता। दोबारा प्रयास एक नई कार्रवाई है जिस पर सामान्य रूप से शुल्क लगता है, इसलिए पहले त्रुटि और बिलिंग की स्थिति जाँचें।
- SDK रीडायरेक्ट फ़ॉलो नहीं करते, और डिफ़ॉल्ट टाइमआउट 10 सेकंड है।
- अज्ञात परिणाम भी सफल रिस्पॉन्स है: gender का मान null होता है और अनुरोध पर सामान्य रूप से शुल्क लगता है।
- त्रुटियों में HTTP स्टेटस, त्रुटि कोड, अनुरोध ID और, मौजूद होने पर, Retry-After का मान मिलता है।
क्विक स्टार्ट उदाहरण
हर उदाहरण एक नाम का अनुमान भेजता है और 1 क्रेडिट लेता है। पहले सर्वर एनवायरनमेंट में GENDERAPI_API_KEY सेट करें। हर रिपॉज़िटरी के README में बैच अनुरोध, उपयोग की जाँच और त्रुटि प्रबंधन बताए गए हैं।
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('Rahul', country: 'IN');
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("Aditya", country = "IN") # 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);V1 इंटीग्रेशन को 1.x पर रखें
संस्करण 1.x के पैकेज मौजूदा V1 इंटीग्रेशन के लिए उपलब्ध बने हुए हैं और डिप्रिकेट नहीं किए गए हैं। मुख्य संस्करण पिन करें ताकि किसी अपडेट से 2.x इंस्टॉल न हो, फिर तैयार होने पर हर इंटीग्रेशन माइग्रेट करें।
| भाषा | 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") |
सोर्स कोड और इश्यू
हर SDK ओपन सोर्स है। बग की रिपोर्ट या नई सुविधा का अनुरोध संबंधित GitHub रिपॉज़िटरी में करें।