API त्रुटियाँ और सीमाएँ
Rivya API के सार्वजनिक त्रुटि कोड, HTTP स्थिति मान, दर सीमाएं, आइडेम्पोटेंसी टकराव और दोबारा प्रयास के निर्णय संभालें।
अंतिम समीक्षा 2026/05/11 को
Rivya API JSON में स्थिर सार्वजनिक त्रुटि कोड लौटाता है। एकीकरण अनुबंध में error.code के मान का इस्तेमाल करें।
त्रुटि का स्वरूप
{
"error": {
"code": "api_key_missing",
"message": "A valid Bearer API key is required.",
"requestId": "req_..."
}
}विफल API अनुरोध की जांच के लिए Rivya सहायता से बात करते समय अपने लॉग में requestId रखें।
स्थिर त्रुटि कोड
| कोड | HTTP स्थिति | अर्थ | सुझाई गई कार्रवाई |
|---|---|---|---|
public_api_disabled | 503 | सार्वजनिक API अनुरोध अस्थायी रूप से बंद हैं। | बाद में दोबारा प्रयास करें या Studio का मैन्युअल रूप से इस्तेमाल करें। |
api_key_missing | 401 | अनुरोध में Bearer API कुंजी शामिल नहीं थी। | Authorization: Bearer rvya_sk_... भेजें। |
api_key_invalid | 401 | कुंजी की पुष्टि नहीं हो सकी। | कुंजी जांचें और जरूरत हो तो उसे बदलें। |
api_key_revoked | 401 | कुंजी को सेटिंग में रद्द कर दिया गया था। | नई कुंजी बनाएं। |
api_key_expired | 401 | कुंजी अब मान्य नहीं है। | नई कुंजी बनाएं। |
api_scope_denied | 403 | कुंजी के पास जरूरी अनुमति नहीं है। | जरूरी अनुमति वाली कुंजी बनाएं। |
rate_limited | 429 | मौजूदा अवधि में बहुत अधिक अनुरोध हुए हैं। | थोड़ी देर रुकें और बाद में दोबारा प्रयास करें। |
validation_failed | 400 | बॉडी, मॉडल, प्रॉम्प्ट या पैरामीटर अमान्य हैं। | अनुरोध की बॉडी की तुलना मॉडल संदर्भ से करें। |
not_found | 404 | मांगा गया कार्य मौजूद नहीं है या इस खाते के स्वामित्व में नहीं है। | सार्वजनिक कार्य ID और खाते की सीमा जांचें। |
webhook_url_rejected | 400 | वेबहुक एंडपॉइंट URL स्वीकार्य नहीं है। | प्रमाण, फ्रैगमेंट, localhost या निजी नेटवर्क पते के बिना सार्वजनिक HTTPS URL इस्तेमाल करें। |
chat_model_not_supported | 400 | चुना गया मॉडल Chat API के लिए उपलब्ध नहीं है। | /api/v1/models पढ़ें और उपलब्ध Chat मॉडल चुनें। |
chat_session_conflict | 409 | Chat सत्र इस अनुरोध के लिए इस्तेमाल नहीं हो सकता। | उसी खाते और मॉडल का API से बनाया गया सत्र इस्तेमाल करें। |
chat_attachment_not_supported | 400 | Chat संलग्नक समर्थित नहीं है। | Files API से इमेज अपलोड करें और उसकी file_id भेजें। |
idempotency_conflict | 409 | वही इडेम्पोटेंसी कुंजी अलग इनपुट के साथ दोबारा इस्तेमाल हुई। | नई कुंजी इस्तेमाल करें या ठीक वही बॉडी दोबारा भेजें। |
insufficient_credits | 402 | खाते में पर्याप्त क्रेडिट नहीं हैं। | क्रेडिट जोड़ें या कम लागत वाला अनुरोध चुनें। |
internal_error | 500 | अनुरोध पूरा नहीं हो सका। | इडेम्पोटेंसी के साथ दोबारा प्रयास करें या requestId देकर सहायता से संपर्क करें। |
अनुरोध दर की सीमाएँ
Rivya हर API कुंजी पर ऐप-स्तरीय सार्वजनिक API दर सीमा लागू करता है। उत्पादन की सामान्य सीमा PUBLIC_API_RATE_LIMIT_PER_MINUTE से विन्यस्त होती है।
जब आपको rate_limited मिले, तो प्रयासों के बीच तेजी से बढ़ता अंतराल रखें। बिना विराम लगातार अनुरोध दोबारा न करें।
सुरक्षित दोबारा प्रयास
हर उत्पादन अनुरोध के साथ Idempotency-Key भेजें: POST /api/v1/generations और POST /api/v1/chat/completions।
सुझाया गया ढांचा:
हर तार्किक जनरेशन अनुरोध के लिए अलग कुंजी बनाएं
वही अनुरोध सामग्री दोबारा भेजते समय ही वही कुंजी इस्तेमाल करें
लौटाई गई सार्वजनिक कार्य ID अपने कार्य रिकॉर्ड के साथ सहेजें
Chat API में उसी बातचीत को जारी रखने के लिए लौटाया गया
session_idसहेजेंअलग मॉडल, प्रॉम्प्ट या
paramsके लिए एक कुंजी दोबारा इस्तेमाल न करें
अगर अनुरोध भेजने के बाद नेटवर्क विफल हो जाए, तो वही अनुरोध सामग्री और वही Idempotency-Key दोबारा भेजें। Rivya दूसरा कार्य बनाने के बजाय सहेजा हुआ सार्वजनिक जवाब लौटा सकता है।
दोबारा प्रयास का निर्णय
इन त्रुटियों पर प्रयासों के बीच बढ़ते अंतराल के साथ दोबारा अनुरोध करें:
public_api_disabledrate_limitedinternal_errorअस्थायी नेटवर्क विफलताएं
इनपुट बदले बिना इन अनुरोधों को दोबारा न भेजें:
api_key_invalidapi_key_revokedapi_scope_deniedvalidation_failedwebhook_url_rejectedchat_model_not_supportedchat_session_conflictchat_attachment_not_supportedidempotency_conflictinsufficient_credits
