API کی خرابیاں اور حدود
Rivya API کے عوامی خرابی کوڈز، HTTP حالت، درخواست کی رفتار کی حد، idempotency کے تضادات اور دوبارہ کوشش کے فیصلے سمجھیں۔
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 | متن، ماڈل، پرامپٹ یا params درست نہیں ہیں۔ | اپنی درخواست کا ماڈل حوالہ سے موازنہ کریں۔ |
not_found | 404 | مطلوبہ کام موجود نہیں یا اس اکاؤنٹ کی ملکیت نہیں۔ | عوامی کام کی شناخت اور اکاؤنٹ کی حد جانچیں۔ |
webhook_url_rejected | 400 | Webhook اختتامی نقطے کا URL قابلِ قبول نہیں۔ | شناختی معلومات، ٹکڑوں، مقامی میزبان یا نجی نیٹ ورک پتوں کے بغیر عوامی HTTPS URL استعمال کریں۔ |
chat_model_not_supported | 400 | منتخب ماڈل Chat API کے لیے دستیاب نہیں۔ | /api/v1/models پڑھیں اور دستیاب گفتگویی ماڈل منتخب کریں۔ |
chat_session_conflict | 409 | گفتگو کی نشست اس درخواست کے لیے استعمال نہیں ہو سکتی۔ | اسی اکاؤنٹ اور ماڈل کی ملکیت والی API سے بنائی گئی نشست استعمال کریں۔ |
chat_attachment_not_supported | 400 | گفتگو میں یہ منسلک مواد معاون نہیں۔ | فائلز API سے تصویر اپ لوڈ کریں اور اس کا file_id بھیجیں۔ |
idempotency_conflict | 409 | ایک ہی یکساں درخواست کی کلید مختلف ابتدائی مواد کے ساتھ دوبارہ استعمال ہوئی۔ | نئی کلید استعمال کریں یا بالکل وہی درخواست دوبارہ بھیجیں۔ |
insufficient_credits | 402 | اکاؤنٹ میں کافی کریڈٹس نہیں۔ | کریڈٹس شامل کریں یا کم لاگت والی درخواست منتخب کریں۔ |
internal_error | 500 | درخواست مکمل نہیں ہو سکی۔ | یکساں درخواست کی حفاظت کے ساتھ دوبارہ کوشش کریں یا requestId دے کر معاونت سے رابطہ کریں۔ |
درخواستوں کی حد
Rivya ہر API کلید پر ایپ کی سطح پر عوامی API درخواستوں کی حد لاگو کرتا ہے۔ عملی ماحول کی طے شدہ حد PUBLIC_API_RATE_LIMIT_PER_MINUTE سے مقرر ہوتی ہے۔
جب rate_limited ملے تو دوبارہ کوشش کے وقفے بتدریج بڑھائیں۔ بہت تیز چکر میں کوشش نہ دہرائیں۔
محفوظ دوبارہ کوشش
عملی ماحول کی ہر POST /api/v1/generations اور POST /api/v1/chat/completions درخواست کے ساتھ Idempotency-Key بھیجیں۔
تجویز کردہ طریقہ:
ہر منطقی تخلیقی درخواست کے لیے منفرد کلید بنائیں
وہی کلید صرف اسی درخواست کو دوبارہ بھیجتے وقت استعمال کریں
واپس آنے والی عوامی کام شناخت اپنے کام کے ریکارڈ کے ساتھ محفوظ کریں
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
