बैच के नाम, ईमेल और उपयोगकर्ता नाम
POST /लिंग/बैच एक items सरणी स्वीकार करता है जिसमें एपीआई-कुंजी एक्सेस के साथ 1-50 प्रविष्टियाँ, या आईपी परीक्षण के साथ अधिकतम 10 प्रविष्टियाँ होती हैं। नाम, ईमेल पता, उपयोगकर्ता नाम, या तीनों का मिश्रण भेजें। प्रत्येक प्रविष्टि में अलग-अलग country, forceToGenderize और options फ़ील्ड हैं। आईडी वैकल्पिक हैं लेकिन बैच के भीतर अद्वितीय होनी चाहिए।
परिणाम इनपुट क्रम का पालन करते हैं। प्रत्येक परिणाम में index, charged_credits, और data या error में से एक शामिल है। यदि आपने id की आपूर्ति की है, तो उसे भी वापस कर दिया जाता है। HTTP 200 प्रतिक्रिया में व्यक्तिगत प्रविष्टियों के लिए विफलताएँ हो सकती हैं, इसलिए प्रत्येक परिणाम की जाँच करें। meta.summary में total, succeeded, identified, unknown और failed शामिल हैं। ज्ञात लिंग के बिना पूरी की गई भविष्यवाणी अभी भी सफल मानी जाती है और इसकी कीमत चुकानी पड़ती है।
यदि अनुरोध सत्यापन या योजना विफल हो जाती है, तो किसी भी क्रेडिट की कटौती से पहले पूरे बैच को अस्वीकार कर दिया जाता है। यदि निष्पादन के दौरान सभी प्रविष्टियाँ विफल हो जाती हैं, तो एपीआई data सरणी और लीगेसी उपनाम results के साथ एक गैर-2xx समस्या प्रतिक्रिया देता है। पुष्ट धनवापसी के बाद विफल प्रविष्टियों की लागत शून्य क्रेडिट होती है। यदि बिलिंग अपुष्ट है, तो यह न मानें कि प्रत्येक प्रविष्टि के लिए रिपोर्ट की गई लागत अंतिम है।
प्रोग्रामिंग भाषा चुनें। अपनी API कुंजी सेट करें, फिर अपने सर्वर पर उदाहरण चलाएँ।
प्रत्येक पूर्वानुमान अनुरोध एक नया बिल योग्य ऑपरेशन है, जिसमें पुनर्प्रयास भी शामिल है। ये उदाहरण स्वचालित रूप से पुनः प्रयास नहीं करते हैं. दूसरा अनुरोध भेजने से पहले बिलिंग स्थिति जांचें।
चलाने से पहले: पहुंच और त्रुटि प्रबंधन
इन उदाहरणों को अपने सर्वर पर चलाएँ। प्रक्रिया परिवेश में GENDERAPI_API_KEY को अपनी मौजूदा API कुंजी पर सेट करें। पुष्टि करें कि meta.access.mode api_key है: एक अपरिचित कुंजी IP परीक्षण में वापस आ सकती है।
HTTP 4xx और 5xx JSON प्रतिक्रियाओं के लिए, उदाहरण त्रुटि निकाय को संरक्षित करते हैं और एक गैर-शून्य स्थिति के साथ बाहर निकलते हैं। पुनः प्रयास करने से पहले code, action और meta.usage.billing_status की जाँच करें। HTTP 200 बैच प्रतिक्रिया के लिए, प्रत्येक परिणाम में data या error का भी निरीक्षण करें।
त्रुटि और पुनः प्रयास मार्गदर्शिका →POSIX शेल में cURL 7.76+. अपने टर्मिनल में चलाएँ. रनटाइम दस्तावेज़ीकरण
Node.js 22+; अंतर्निर्मित फ़ेच. example.mjs के रूप में सहेजें और node example.mjs चलाएँ। रनटाइम दस्तावेज़ीकरण
Python 3.10+; मानक पुस्तकालय. example.py के रूप में सहेजें और python3 example.py चलाएँ। रनटाइम दस्तावेज़ीकरण
PHP 8+ cURL एक्सटेंशन के साथ. example.php के रूप में सहेजें और php example.php चलाएँ। रनटाइम दस्तावेज़ीकरण
Java 17+; मानक HTTP क्लाइंट. GenderApiExample.java के रूप में सहेजें और java GenderApiExample.java चलाएँ। रनटाइम दस्तावेज़ीकरण
.NET 8+ कंसोल एप्लिकेशन. कंसोल प्रोजेक्ट में Program.cs के रूप में उपयोग करें, फिर dotnet run चलाएँ। रनटाइम दस्तावेज़ीकरण
Go 1.22+; मानक पुस्तकालय. main.go के रूप में सहेजें और go run main.go चलाएँ। रनटाइम दस्तावेज़ीकरण
एक बैच प्रतिक्रिया पढ़ें
इस स्वतंत्र सिंथेटिक उदाहरण में एक डेटासेट मिलान, एक अज्ञात परिणाम और एक प्रदाता विफलता शामिल है। यह आंशिक सफलता HTTP 200 प्रतिक्रिया को दर्शाता है, न कि उपरोक्त बैच अनुरोध के अपेक्षित आउटपुट को। दो सफल वस्तुओं में से प्रत्येक की कीमत 1 क्रेडिट है; विफल आइटम पर शून्य शुल्क की पुष्टि की गई है।
{
"data": [
{
"index": 0,
"id": "known",
"charged_credits": 1,
"data": {
"input": {
"type": "name",
"value": "Onur",
"country": "TR"
},
"name": "onur",
"gender": "male",
"country": "TR",
"confidence": 0.9,
"confidence_kind": "observed_frequency",
"sample_count": 100,
"source": "dataset",
"result_status": "identified",
"reason": null,
"country_source": "dataset",
"match": {
"name": "onur",
"method": "normalized",
"scope": "country",
"country": "TR"
}
}
},
{
"index": 1,
"id": "missing",
"charged_credits": 1,
"data": {
"input": {
"type": "name",
"value": "zzzxxyy",
"country": null
},
"name": null,
"gender": null,
"country": null,
"confidence": null,
"confidence_kind": null,
"sample_count": null,
"source": "none",
"result_status": "unknown",
"reason": "not_found",
"country_source": null,
"match": {
"name": null,
"method": null,
"scope": null,
"country": null
}
}
},
{
"index": 2,
"id": "failed",
"charged_credits": 0,
"error": {
"type": "urn:genderapi:problem:ai_upstream_error",
"title": "ai upstream error",
"status": 502,
"detail": "The AI provider could not complete the request.",
"instance": "urn:uuid:11111111-1111-4111-8111-111111111111",
"code": "ai_upstream_error",
"request_id": "11111111-1111-4111-8111-111111111111",
"documentation": "https://api.genderapi.io/api/v2/errors",
"action": "inspect_billing_before_retry"
}
}
],
"meta": {
"request_id": "11111111-1111-4111-8111-111111111111",
"duration_ms": 12,
"access": {
"mode": "ip_trial",
"reason": "api_key_missing"
},
"usage": {
"charged_credits": 2,
"remaining_credits": 6,
"billing_status": "confirmed",
"resets_at": "2026-09-26T12:00:00.000Z",
"limit": 10,
"period_seconds": 86400
},
"summary": {
"total": 3,
"succeeded": 2,
"identified": 1,
"unknown": 1,
"failed": 1
}
}
}बैच क्रेडिट और पुनः प्रयास की योजना बनाएं
अपनी मौजूदा Bearer API कुंजी से प्रमाणित करें और Content-Type: application/json भेजें। प्रत्येक सबमिट किया गया बैच एक नया ऑपरेशन है। यदि आंशिक विफलता का पुन: प्रयास किया जा रहा है, तो बिलिंग की जांच करने के बाद केवल विफल आइटम सबमिट करें; सफल आइटम को दोबारा भेजने पर उन पर दोबारा शुल्क लगता है।
डिफ़ॉल्ट रूप से, बैच प्रविष्टियाँ off का उपयोग करती हैं और प्रति पूर्ण पूर्वानुमान पर 1 क्रेडिट खर्च होता है। fallback का चयन करने पर AI सहित कुल 1 क्रेडिट खर्च होता है। always का चयन करने पर 2 क्रेडिट का खर्च आता है। forceToGenderize के साथ, डेटासेट में पाए गए लिंग की कीमत 1 क्रेडिट है; AI का उपयोग करने पर कुल 2 क्रेडिट खर्च होते हैं। अज्ञात लिंग के साथ पूर्ण की गई भविष्यवाणियों पर भी क्रेडिट खर्च होता है। एक बैच शुरू करने के लिए 1 क्रेडिट का शुरुआती बैलेंस पर्याप्त है। अंतिम कटौती शेष को नकारात्मक छोड़ सकती है।