وثائق Rivya AI

أخطاء 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_..."
  }
}

احتفظ بـ requestId في سجلاتك عندما تطلب من دعم Rivya التحقيق في طلب API فاشل.

رموز الأخطاء المستقرة

CodeHTTP statusالمعنىالإجراء المقترح
public_api_disabled503استدعاءات Public API معطلة مؤقتا.أعد المحاولة لاحقا أو استخدم Studio يدويا.
api_key_missing401لم يتضمن الطلب مفتاح Bearer API.أرسل Authorization: Bearer rvya_sk_....
api_key_invalid401لا يمكن التحقق من المفتاح.تحقق من المفتاح ودوّره إذا لزم الأمر.
api_key_revoked401تم إلغاء المفتاح في Settings.أنشئ مفتاحا جديدا.
api_key_expired401لم يعد المفتاح صالحا.أنشئ مفتاحا جديدا.
api_scope_denied403لا يملك المفتاح النطاق المطلوب.أنشئ مفتاحا بالنطاق المطلوب.
rate_limited429طلبات كثيرة جدا في النافذة الحالية.تراجع وأعد المحاولة لاحقا.
validation_failed400الجسم أو النموذج أو الموجه أو المعلمات غير صالحة.قارن جسم الطلب بمرجع النموذج.
not_found404المهمة المطلوبة غير موجودة أو لا يملكها الحساب.تحقق من معرف المهمة العام وحدود الحساب.
webhook_url_rejected400عنوان URL لنقطة webhook غير مسموح.استخدم عنوان HTTPS عاما من دون بيانات اعتماد أو fragments أو localhost أو عناوين شبكة خاصة.
chat_model_not_supported400النموذج المحدد غير متاح لـ Chat API.اقرأ /api/v1/models واختر نموذج دردشة متاحا.
chat_session_conflict409لا يمكن استخدام جلسة الدردشة لهذا الطلب.استخدم جلسة منشأة عبر API يملكها الحساب نفسه والنموذج نفسه.
chat_attachment_not_supported400مرفق الدردشة غير مدعوم.ارفع صورة عبر Files API ومرر file_id الخاص بها.
idempotency_conflict409أعيد استخدام مفتاح idempotency نفسه مع إدخال مختلف.استخدم مفتاحا جديدا أو أعد إرسال الجسم نفسه تماما.
insufficient_credits402لا يملك الحساب رصيدا كافيا.أضف رصيدا أو اختر طلبا أقل تكلفة.
internal_error500تعذر إكمال الطلب.أعد المحاولة مع idempotency أو تواصل مع الدعم باستخدام requestId.

حدود المعدل

تطبق Rivya حدود معدل Public API على مستوى التطبيق لكل مفتاح API. يضبط حد الإنتاج الافتراضي بواسطة PUBLIC_API_RATE_LIMIT_PER_MINUTE.

عندما تتلقى rate_limited، استخدم تراجعا أسيا. لا تعد المحاولة في حلقة ضيقة.

إعادة المحاولة المتطابقة

أرسل Idempotency-Key مع كل طلب إنتاج من نوع POST /api/v1/generations وPOST /api/v1/chat/completions.

النمط الموصى به:

  • أنشئ مفتاحا فريدا لكل طلب توليد منطقي
  • أعد استخدام المفتاح نفسه فقط عند إعادة محاولة الجسم نفسه
  • خزّن معرف المهمة العام العائد مع سجل المهمة الخاص بك
  • بالنسبة إلى Chat API، خزّن session_id العائد عندما تريد متابعة المحادثة نفسها
  • لا تعيد استخدام مفتاح واحد لنموذج أو موجه أو معلمات مختلفة

إذا فشلت الشبكة بعد الإرسال، أعد المحاولة بالجسم نفسه وIdempotency-Key نفسه. يمكن لـ Rivya إعادة الاستجابة العامة المخزنة بدلا من إنشاء مهمة مكررة.

قرارات إعادة المحاولة

أعد محاولة هذه الأخطاء مع تراجع:

  • public_api_disabled
  • rate_limited
  • internal_error
  • أعطال الشبكة المؤقتة

لا تعد محاولة هذه الأخطاء من دون تغيير الإدخال:

  • api_key_invalid
  • api_key_revoked
  • api_scope_denied
  • validation_failed
  • webhook_url_rejected
  • chat_model_not_supported
  • chat_session_conflict
  • chat_attachment_not_supported
  • idempotency_conflict
  • insufficient_credits

صفحات ذات صلة

جدول المحتويات