تصفّح التوثيق كاملًا

الأخطاء والحصة

تعامل مع مشكلات Narwhal حسب حالة HTTP ورمز ثابت قابل للقراءة آليًا.

تستخدم أخطاء REST application/problem+json. تحمل أخطاء أدوات MCP حقول تفاصيل الخطأ نفسها في المحتوى المنظم.

استجابة تتضمن تفاصيل الخطأ

تفرّع عند status الأولى و code ثانيًا. تعامل مع detail كنص تشخيصي مقروء للبشر، وليس قيمة برمجية ثابتة.

مشكلة RFC 9457
{
  "type": "https://narwhalapi.com/problems/series-not-found",
  "title": "Economics series not found",
  "status": 404,
  "detail": "No approved economics observations matched the request.",
  "code": "series_not_found",
  "request_id": "019d1af4-8f33-7b21-91af-ef535f2dcf50"
}

الحالات والرموز

الحالةرمز عامالمعنى
400invalid_queryالدولة أو الفترة أو أحد مدخلات الطلب الأخرى غير صالح.
400invalid_cursorمؤشر ترقيم الصفحات غير صحيح الصيغة أو يخص مرشحات مختلفة.
400invalid_pairعملتا from وto متطابقتان.
401invalid_api_keyمفتاح Bearer مفقود أو مشوّه أو غير معروف أو غير نشط.
403plan_upgrade_requiredيتجاوز السجل المطلوب المدة التي تتيحها خطتك: 12 شهرًا لخطة Free و5 سنوات لخطة Basic. يشمل هذا الرمز أيضًا ميزات السوق المدفوعة وتواريخ التنبؤ الأحدث مما تسمح به خطتك.
404series_not_foundلا توجد قراءات حالية أو تاريخية معتمدة تطابق الطلب.
404resource_not_foundمورد الأمر المطلوب غير متاح.
404event_not_foundلا يوجد حدث يطابق المعرّف.
404not_foundلا يوجد إصدار في التقويم يطابق المعرّف.
404route_not_foundمسار REST المطلوب غير موجود.
404tool_not_foundأداة MCP المطلوبة غير عامة أو غير موجودة.
404calendar_not_publishedلم يُنشر تقويم البلد والسنة المطلوبين.
404commodity_not_supportedرمز السلعة هذا غير متاح للأسعار الفورية أو أشرطة الأسعار.
404currency_not_supportedلا تُسعَّر هذه السلعة بالعملة المطلوبة.
404subscription_not_foundمعرّف اشتراك التقويم غير معروف أو لا يخصك.
404physical_series_not_foundلا توجد سلسلة أسعار فعلية تطابق المعرّف.
404palmoil_series_not_foundلا توجد سلسلة لزيت النخيل تطابق المعرّف.
404webhook_request_failedوجهة Webhook غير معروفة، أو لا يمكن إعادة إرسال التسليم.
405method_not_allowedالمسار موجود، لكنه لا يقبل طريقة HTTP المطلوبة.
409cursor_expiredانتهت صلاحية المؤشر أو لم تعد لقطته متاحة. تستخدم مؤشرات التقويم والأحداث هذا الخطأ أيضًا. ابدأ من جديد دون المؤشر.
409physical_series_ambiguousيطابق المحدد أكثر من سلسلة واحدة.
409limit_reachedبلغت الحد الأقصى لوجهات webhook في خطتك.
413request_too_largeنص الطلب كبير جدًا.
429rate_limit_exceededتم بلوغ حد الشبكة أو الحساب خلال الفترة الزمنية القصيرة؛ أعد المحاولة بعد المدة المحددة في Retry-After.
429quota_exhaustedاستخدم الحساب مخصصه الشهري من الطلبات.
500internal_errorتعذر على Narwhal إكمال الطلب.
503api_disabledالوصول إلى البيانات العامة مغلق مؤقتًا.
503economics_unavailableلا يستطيع Narwhal تلبية الطلب بأمان استنادًا إلى منشور رسمي مقبول.
503calendar_coverage_unavailableيتعذر تقديم التقويم بأمان حاليًا.
503database_unavailableمخزن البيانات غير متاح مؤقتًا.
503rights_state_changingتعذر على Narwhal تأكيد بقاء إذن المصدر دون تغيير أثناء إعداد الاستجابة.
503predictions_unavailableلا يمكن تقديم بيانات التنبؤ بأمان حاليًا.
503upstream_unavailableلا يمكن قراءة بيانات الأسعار أو أسعار الصرف الآن.
503palmoil_unavailableلا يمكن تقديم بيانات زيت النخيل بأمان الآن.
503physical_price_unavailableلا يمكن تقديم بيانات الأسعار الفعلية بأمان الآن.
503physical_reference_unavailableلا يمكن تقديم بيانات السلاسل الفعلية بأمان الآن.
503rate_limiter_unavailableلم تتمكن Narwhal من التحقق من حد معدل الطلبات. أعد المحاولة قريبًا.
503command_unavailableتعذر إكمال أمر الحساب الآن.
503webhook_unavailableلا يمكن تقديم Webhook الآن.

ترويسات الحصة

تستهلك كل استجابة بيانات ناجحة الحصة مرة واحدة بالضبط وتتضمن:

X-Request-IDX-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-ResetX-RateLimit-Short-LimitX-RateLimit-Short-RemainingX-RateLimit-Short-Reset

توضّح الترويسات المعتادة حصة الطلبات البالغة 5,000، لكل شهر بتوقيت UTC. في الاستجابات المصادق عليها، توضّح ترويسات الفترة الزمنية القصيرة حد حساب Free البالغ 30 طلبًا في الدقيقة. تسمح حاوية منفصلة للحماية من إساءة الاستخدام بـ120 طلبًا في الدقيقة، مع دفعة تصل إلى 20 طلبًا لهوية شبكة واحدة؛ لذلك قد تُقيَّد طلبات العملاء الذين يتشاركون عنوانًا واحدًا معًا. والخطأ 429 rate_limit_exceeded يتضمن Retry-After للفترة الزمنية القصيرة التي تفرض التقييد؛ أما الخطأ 429 quota_exhausted فيتطلب الانتظار حتى بداية الشهر التقويمي التالي بتوقيت UTC. ولا تستهلك أي من الاستجابتين الحصة الشهرية.

سلوك إعادة المحاولة

  • لا تُعد المحاولة عند تلقي 400 حتى تصحيح الطلب.
  • لا تُعد المحاولة عند تلقي 401 بالمفتاح المرفوض نفسه.
  • إعادة المحاولة 429 بعد ذلك فقط Retry-After أو X-RateLimit-Reset.
  • أعد محاولة الطلبات التي لا يتغير أثرها بتكرارها بعد 500 أو 503 مع زيادة أُسّية لفترات الانتظار ضمن حد أقصى وإضافة تفاوت عشوائي إليها.
  • A 404 series_not_found قد لا يصبح متاحاً إلا بعد نشر إصدار رسمي مدعوم.

اطلب المساعدة

أرسل نقطة النهاية والوقت بتوقيت UTC والحالة وcode و request_id إلى دعم Narwhal API. لا تُضمّن مفتاح API أبدًا.

العودة إلى البدء السريع أو راجع مرجع واجهة API للاقتصاد.