تسرد هذه الصفحة ما تجيب به واجهة REST حين يكون في الطلب خطأ، بترتيب تنفيذ الفحوص، وكل حد يسري على المفاتيح والطلبات. استخدمها لتقرر أي الأخطاء تعيد محاولتها وأيها تصلحه.
شكل الخطأ
كل خطأ بصيغة JSON وفيه message مقروءة:
{
"message": "Invalid API key."
}
وأخطاء التحقق تضيف كائن errors، كل مفتاح فيه اسم حقل، وكل قيمة قائمة رسائل:
{
"message": "The Name field is required.",
"errors": {
"name": ["The Name field is required."]
}
}
الرسائل بالإنجليزية وقد تتغير صياغتها. قرر ما تفعله من رمز الحالة ومفاتيح errors، لا من نص الرسالة.
ترتيب الفحوص
يُفحص كل طلب بهذا الترتيب، وأول فشل هو الذي يجيب:
- حد العنوان المُرسِل، 600 طلب في الدقيقة للمسار. وما زاد يتلقى
429 Too Many Attempts. - HTTPS. الطلب عبر HTTP العادي يتلقى
403 HTTPS is required. - المفتاح. المفتاح المفقود أو الخاطئ أو الملغى، أو الذي لم يعد منشئه أو شركته نشطًا، يتلقى
401 Invalid API key. - الباقة والدور المخصص للمنشئ. ومن دون واجهة API يكون الرد
403 API access is not in this plan. - في
POSTوDELETE: المفتاح بصلاحية قراءة فقط يتلقى403 This key is read only. - في
POSTوDELETE: الجسم غير المعلن أنه JSON يتلقى415 Send JSON. - حد المفتاح، 120 طلبًا في الدقيقة. وما زاد يتلقى
429 Too many requests. - المسار نفسه: الدور والتحقق والسجلات.
رموز الحالة
| الحالة | المعنى | ما تفعله |
|---|---|---|
200 |
نجاح | |
201 |
أُنشئ سجل | احفظ id العائد |
401 |
المفتاح غير صالح | لا تُعد المحاولة. افحص المفتاح أو أنشئ غيره |
403 |
HTTPS غائب، أو الباقة لا تشمل الميزة، أو المفتاح للقراءة فقط، أو دور المنشئ لا يسمح بالإجراء (This action is unauthorized.) |
لا تُعد المحاولة. أصلح المفتاح أو الدور أو الباقة |
404 |
Not found. المسار غير موجود، أو المعرف ليس UUID، أو السجل ليس في هذه الشركة. والجهات الممحوة والمدمجة ترد 404 أيضًا |
لا تُعد المحاولة. ابحث عن السجل مجددًا |
405 |
الطريقة غير مدعومة في هذا المسار | أصلح الطلب |
409 |
جهة مكررة محتملة، مع matches |
استخدم الجهة الموجودة، أو أعد الإرسال مع confirm_duplicate |
415 |
POST أو DELETE دون Content-Type: application/json |
أضف الترويسة |
422 |
بيانات غير صالحة، وغالبًا مع errors. والبحث أو الصفحة أو معرف الجهة أو المرحلة غير الصالح يرد 422 دون errors |
أصلح البيانات، فإعادة الجسم نفسه تفشل مجددًا |
429 |
بلغت حد الطلبات | انتظر الدقيقة التالية ثم أعد المحاولة |
500 |
Server Error. فشل شيء من جهتنا |
أعد المحاولة لاحقًا مع مهلة بين المحاولات |
إعادة المحاولة بأمان
أعد محاولة 429 و500 فقط، والطلبات التي لم يصل لها رد. انتظر قبل كل محاولة وأطل الانتظار في كل مرة. وتذكر أن إنشاء فرصة أو إضافة ملاحظة مرتين ينشئ سجلين، فتحقق قبل إعادتهما. راجع تكرار الطلب.
الحدود
| الحد | القيمة |
|---|---|
| المفاتيح النشطة لكل شركة | 10 |
| الطلبات لكل مفتاح | 120 في الدقيقة، تُعد من بداية كل دقيقة |
| الطلبات لكل عنوان مُرسِل | 600 في الدقيقة لكل مسار |
| جهات الاتصال في الصفحة | 25 |
نص البحث q |
120 حرفًا |
| الصفحات | من 1 إلى 99999 |
| اسم الجهة | 160 حرفًا |
| الملاحظة | 5000 حرف |
| عنوان الفرصة | 160 حرفًا |
| المسارات والمراحل المعروضة | 20 مسارًا، في كل منها 12 مرحلة |
| طلبات الجهة المعروضة | أحدث 10 |
| وسوم الجهة المعروضة | 20 |
| الجهات المطابقة العائدة عند التكرار | 5 |
| صفوف الإنفاق في الطلب | 1000 |
| أيام الإنفاق | اليوم و399 يومًا قبله |
| عناوين الإشعارات الصادرة لكل شركة | 5 |
وقد تحدد باقتك أيضًا عدد جهات الاتصال في الشركة. فإن بلغته فإنشاء جهة يرد 422 والخطأ تحت limit.
حل المشكلات
| العَرَض | السبب المرجح |
|---|---|
كل طلب يرد 401 مع أن المفتاح صحيح |
أُوقف منشئ المفتاح أو أُزيل، أو أُوقفت الشركة |
القراءة تعمل والكتابة ترد 403 |
المفتاح بصلاحية قراءة فقط، أو صار منشئه مشاهدًا |
POST /hooks أو POST /ad-spend يرد 403 This action is unauthorized. والكتابات الأخرى تعمل |
منشئ المفتاح عضو، وهذان يحتاجان مالكًا أو مسؤولًا |
POST /ad-spend يرد 403 Campaign returns are not allowed for this role. |
يمنع دور مخصص منشئ المفتاح من عائد الحملات |
DELETE /hooks/HOOK_ID يرد 415 |
أضف Content-Type: application/json حتى دون جسم |
429 قبل بلوغ 120 طلبًا بكثير |
عدة أنظمة تتشارك مفتاحًا واحدًا. أعطِ كل نظام مفتاحه |
آخر تحديث 2026-11-08