تقييد معدلات الاستدعاء في واجهة API التسويق

تحتوي واجهة API التسويق على منطق تقييد معدلات الاستدعاء الخاص بها ويتم استثنائها من كل تقييدات معدلات الاستدعاء في واجهة Graph API. لذلك إذا أجريت استدعاءً لواجهة API التسويق، فلن يتم احتسابه ضمن تقييد Graph API.

الميزة التي تؤثر على حصة تقييد معدلات استدعاء واجهة API التسويق هي الوصول القياسي لإدارة الإعلانات. عندما تضيف منتج واجهة API التسويق في لوحة معلومات التطبيق، ستحصل على صلاحية الوصول القياسي من ميزة الوصول القياسي لإدارة الإعلانات افتراضيًا. سيمنحك هذا إمكانية الوصول للتطوير في API التسويق. إذا كنت بحاجة إلى الترقية لزيادة حصة تقييد معدلات الاستدعاء، فقم بالترقية إلى الوصول المتقدم من ميزة الوصول القياسي لإدارة الإعلانات في مراجعة التطبيقات.

الحصص

الوصول إلى واجهة API التسويقالوصول القياسي لإدارة الإعلاناتالسعة

الوصول للتطوير

الوصول القياسي

حصة تقييد معدلات الاستدعاء الأساسية

الوصول القياسي

الوصول المتقدم

المزيد من حصص تقييد معدلات الاستدعاء

تخضع معظم طلبات واجهة API التسويق وطلبات واجهة API الصفحات إلى تقييدات معدلات الاستدعاء لحالة استخدام النشاط التجاري (BUC)، وتعتمد على نقاط النهاية التي تستعلم عنها. يجب أن تكون قادرًا على اكتشاف ذلك عن طريق التحقق مما إذا كان طلب HTTP يحتوي على عنوان X-Business-Use-Case. استعرض المزيد من التفاصيل في تقييدات معدلات استدعاء حالة استخدام النشاط التجاري.

تقييدات مستوى API على مستوى الحساب الإعلاني

  • يتم تحديد تقييد معدلات الاستدعاء على مستوى الحساب الإعلاني.
  • تحدث تقييد معدلات الاستدعاء في الوقت الفعلي بناءً على إطار زمني محدد.
  • ويتم تعيين عدد من النقاط لكل استدعاء لواجهة API التسويق. يشير مجموع النقاط إلى عدد عمليات استدعاء API.
  • يتم فرض أقصى عدد من النقاط. بشكل عام، يساوي استدعاء API القراءة نقطة واحدة، ويساوي استدعاء API الكتابة 3 نقاط، وعندما تصل إلى أقصى عدد نقاط، يتم عرض خطأ يتعلق بالتقييد.
    • إذا كان تطبيقك في مستوى التطوير لواجهة API التسويق، فسيحدث ما يلي:
      • سيكون الحد الأقصى للنقاط هو 60.
      • سيكون معدل التناقص هو 300 ثانية.
      • سيتم حظرك لمدة 300 ثانية إذا وصلت إلى الحد الأقصى للنقاط.
    • إذا كان تطبيقك في المستوى القياسي لواجهة API التسويق، فسيحدث ما يلي:
      • سيكون الحد الأقصى للنقاط هو 9000.
      • سيكون معدل التناقص هو 300 ثانية.
      • سيتم حظرك لمدة 60 ثانية إذا وصلت إلى الحد الأقصى للنقاط.

رمز الخطأ ذو الصلة:17, Error subcode: 2446079, Message: User request limit reached. 613, Error subcode: 1487742, Message: There have been too many calls from this ad-account. Please wait a bit and try again.

تقييدات معدلات الاستعلام في الثانية على مستوى الحساب الإعلاني

للحد من تأثير فترات الارتفاع المفاجئة في هدف الزيارات على أنظمتنا، نقوم بفرض تقييدات المعدلات في الوقت الفعلي على نقاط نهاية تغيير واجهة API التسويق بما يشمل (عمليات الإنشاء والتعديل الخاصة بالحملات الإعلانية والمجموعات الإعلانية والإعلانات).

  • يتم تحديد تقييد معدلات الاستدعاء على مستوى الحساب الإعلاني، لكل تطبيق.
  • الحد الأقصى: 100 استدعاء في الثانية (QPS) لكل مجموعة تجمع بين التطبيق والحساب الإعلاني.
  • يُطبَّق على: عمليات الإنشاء والتحرير الخاصة بالحملات الإعلانية والمجموعات الإعلانية والإعلانات.
  • يعمل هذا الحد في الوقت الفعلي، وقد صُمِّم لرصد فترات الارتفاع اللحظية في هدف الزيارات التي قد لا تكتشفها نافذة تقييد معدلات الاستدعاء القياسية.

ستتأثر نقاط النهاية التالية:

إذا تجاوزت الحد المسموح، فيُرجى توزيع الطلبات بشكل متساوٍ على فترة زمنية بدلاً من إرسالها في دفعات مفاجئة.

رمز الخطأ ذو الصلة:613، رمز الخطأ الفرعي: 5044001، الرسالة: لقد تجاوز حسابك الإعلاني {ad_account_id} الحد الأقصى المسموح به لطلبات التبديل. لحل هذه المشكلة، قلِّل من معدل تكرار عمليات إنشاء وتعديل الحملات الإعلانية والمجموعات الإعلانية والإعلانات.

عند ظهور هذا الخطأ، طبِّق تقييد الطلبات لضمان عدم تجاوز 100 استعلام في الثانية لكل حساب إعلاني.

تقييد معدل الاستدعاء لمنصة رؤى الإعلانات

  • يتم تحديد تقييد معدلات الاستدعاء على مستوى التطبيق.
  • يتم تحديد تقييد معدلات الاستدعاء حسب سعة بنية الواجهة الخلفية وخدمات استقبال البيانات.
  • عندما يخضع تطبيقك إلى تقييد معدلات الاستدعاء، تكون كل استدعاءات واجهة API رؤى الإعلانات التي يجريها التطبيق مقيدة بحدود.
  • يتم فرض تقييد معدلات الاستدعاء على مستوى التطبيق.

رمز الخطأ ذو الصلة:4, Error subcode: 1504022 or 1504039, Message: There have been too many calls from this app. Wait a bit and try again.

عندما يظهر هذا الخطأ، احرص على خفض عدد الاستدعاءات.

التقييدات على مستوى التطبيق

  • يتم تحديد تقييد معدلات الاستدعاء على مستوى التطبيق.
  • يتم تحديد تقييد معدلات الاستدعاء حسب إجمالي مستخدمي التطبيق.
  • عندما يخضع تطبيقك إلى تقييد معدلات الاستدعاء، تكون جميع الاستدعاءات التي يجريها التطبيق مقيدة بحدود.
  • يتم فرض تقييد معدلات الاستدعاء على مستوى التطبيق.

رمز الخطأ ذو الصلة:4, Message: Application request limit reached

عندما يظهر هذا الخطأ، احرص على خفض عدد الاستدعاءات.

تقييدات معدلات الاستدعاء لحالة استخدام النشاط التجاري على مستوى الحساب الإعلاني

يتم احتساب حصة تقييد معدلات الاستدعاء بناءً على تطبيقك وطبقة الوصول لواجهة API التسويق.

  • يتم تحديد تقييد معدلات الاستدعاء على مستوى الحساب الإعلاني، ويتم احتساب حصة التقييدات بناءً على طبقة الوصول إلى API إعلانات التطبيقات.
  • ads_management - لكل حساب إعلاني خلال فترة زمنية مدتها ساعة واحدة: (100000 إذا كان تطبيقك في طبقة واجهة API التسويق القياسية أو 300 إذا كان تطبيقك ضمن طبقة التطوير) + 40 مضروبًا في عدد الإعلانات النشطة.
  • custom_audience - لكل حساب إعلاني خلال فترة زمنية مدتها ساعة واحدة: لا يزيد عن 700000. ما لا يقل عن 190000 إذا كان تطبيقك في طبقة واجهة API التسويق القياسية أو 5000 إذا كان تطبيقك ضمن طبقة التطوير + 40 مضروبًا في عدد الجماهير المخصصة النشطة.
  • ads_insights - لكل حساب إعلاني خلال فترة زمنية مدتها ساعة واحدة: (190000 إذا كان تطبيقك في طبقة API الإعلانات القياسية أو 600 إذا كان التطبيق في طبقة التطوير) + 400 مضروبًا في عدد الإعلانات النشطة - 0.001 مضروبًا في عدد أخطاء المستخدم.
  • إدارة الكتالوج - لكل حساب إعلاني خلال فترة زمنية مدتها ساعة واحدة: 20000 + 20000 مضروبًا في قيمة الدالة log2(المستخدمون الفريدون).
  • تجميع الكتالوج - لكل حساب إعلاني خلال فترة زمنية مدتها ساعة واحدة: 200 + 200 مضروبًا في قيمة الدالة log2(المستخدمون الفريدون).
  • قد يتم أيضًا تحديد الحد الأقصى لمعدلات تقييد استدعاءات واجهة API التسويق لديك حسب إجمالي وقت وحدة المعالجة المركزية وإجمالي وقت التشغيل الفعلي في حسابك الإعلاني. سيكون لديك حصة أكبر إذا كان تطبيقك تتوفر لديه صلاحية الوصول القياسي إلى واجهة API التسويق، لمزيد من التفاصيل، راجع عنوان HTTP [X-Business-Use-Case](/docs/graph-api/overview/rate-limiting/#headers-2) وتقييد معدلات الاستدعاء لحالة استخدام النشاط التجاري.

رمز الخطأ ذو الصلة:80000, 80003, 80004, 80014, Message: There have been too many calls from this ad-account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.

تحقق من نقطة نهاية API وعنوان HTTP X-Business-Use-Case لتأكيد نوع التقييد. استعرض المزيد من التفاصيل في تقييدات معدلات استدعاء حالة استخدام النشاط التجاري. عندما يظهر هذا الخطأ، احرص على خفض عدد التغييرات التي تتم في الحساب الإعلاني.

تقييد معدلات استدعاء الإنفاق الإعلاني على مستوى الحساب الإعلاني

يتم تقييد إمكانية تغيير حدود الإنفاق في حسابك عند 10 مرات يوميًا لضمان أفضل أداء عند عرض الإعلانات.

  • يتم تقييد عدد التغييرات التي تتم على معدل إنفاق الحساب الإعلاني مثل حقول spend_cap وspend_cap_action

رمز الخطأ ذو الصلة:17, Error subcode: 1885172, Message: You can only change your account spending limit 10 times per day. Please wait to make more changes.

التقييدات على مستوى المجموعة الإعلانية

يتم تقييد عدد التغييرات التي تتم على حقول المجموعة الإعلانية daily_budget وlifetime_budget. بالنسبة لكل مجموعة إعلانية، يُسمح بتغيير الميزانية 4 مرات فقط في الساعة، وإذا تجاوزت الحد، فسيتم حظر تغيير الميزانية لتلك المجموعة الإعلانية لمدة ساعة.

رمز الخطأ ذو الصلة:613, Error subcode: 1487632, Message: You can only change your ad set budget 4 times per hour. Please wait to make more changes.

عندما يظهر هذا الخطأ، احرص على خفض عدد التغييرات التي تتم في الحساب الإعلاني.

التقييد على مستوى الإعلان

يتم تقييد إنشاء الإعلان ليقتصر على حساب إعلاني معين استنادًا إلى حد الإنفاق اليومي.

رمز الخطأ ذو الصلة:613, Error subcode: 1487225, Message: User request limit reached.

تحقق من الرمز الفرعي لخطأ (1487225) ونقطة نهاية API لتأكيد نوع التقييد. عندما يظهر هذا الخطأ، احرص على خفض عدد التغييرات. لزيادة حدود التقييد، يمكنك أيضًا زيادة حد الإنفاق اليومي.

تقييد معدلات استدعاء منع سوء الاستخدام

عندما يكتشف النظام أن بعض الحسابات الإعلانية تنشئ قدرًا كبيرًا من معدلات الزيارات غير الطبيعية، ومن أجل حماية استقرار النظام وضمان تجربة المستخدمين الآخرين، سنقوم مؤقتًا بتقليل حصة تقييد معدلات استدعاء API بالنسبة للحسابات التي تُظهر نشاطًا غير طبيعي. يرجى محاولة الاتصال بفريق دعم Meta للحصول على المساعدة.

رمز الخطأ ذو الصلة:613, Error subcode: null, Message: (#613) Calls to this api have exceeded the rate limit.

الفرق بين هذا الخطأ وتقييد مستوى API على مستوى الحساب الإعلاني هو أن هذا الخطأ لا يحتوي على رموز فرعية للأخطاء. عندما يظهر هذا الخطأ، تحقق مما إذا كان هناك أي إجراء يؤدي إلى تنفيذ طلبات API زائدة واتصل بفريق دعم Meta للحصول على المساعدة.

معالجة أخطاء التقييد

التقييم الأولي

تحقق من طبقة الوصول إلى واجهة API التسويق:

افتراضيًا، ستتوفر لدى التطبيقات صلاحية development_access في API التسويق. لمعرفة الطبقة التي تنتمي إليها، يمكنك الانتقال إلى لوحة معلومات "مراجعة التطبيقات". أنت تنتمي إلى طبقة الوصول للتطوير في واجهة API التسويق إذا كانت تتوفر لديك صلاحية الوصول القياسي إلى ميزة الوصول القياسي لإدارة الإعلانات. أنت تنتمي إلى طبقة الوصول القياسي في واجهة API التسويق إذا كانت تتوفر لديك صلاحية الوصول المتقدم إلى ميزة الوصول القياسي لإدارة الإعلانات. يمكنك أيضًا التحقق من عنوان HTTP والبحث عن ads_api_access_tier في X-Ad-Account-Usage أو X-Business-Use-Case أو عنوان X-FB-Ads-Insights-Throttle.

إذا استمر ظهور أخطاء تتعلق بتقييد معدلات الاستدعاء، فحاول الترقية إلى standard_access في ميزة الوصول القياسي لإدارة الإعلانات. للوصول إلى الطبقة القياسية والحصول على حصة أعلى لتقييد معدلات الاستدعاء، يمكنك تقديم طلب للحصول على صلاحية الوصول المتقدم إلى ميزة الوصول القياسي لإدارة الإعلانات في لوحة معلومات "مراجعة التطبيقات".

  • التحقق من رموز الأخطاء: حدد رموز الأخطاء المحددة المتعلقة بالتقييد في استجابة API.
  • التحقق من عناوين HTTP:
    • يحتوي X-Ad-Account-Usage على acc_id_util_pct وreset_time_duration وads_api_access_tier.
    • يحتوي X-Business-Use-Case على call_count وtotal_cputime وtotal_time وestimated_time_to_regain_access، وغير ذلك من المعلومات الخاصة بنقطة نهاية حالة استخدام النشاط التجاري.
    • يحتوي X-FB-Ads-Insights-Throttle على app_id_util_pct وacc_id_util_pct وads_api_access_tier لنقاط نهاية واجهة API رؤى الإعلانات.
  • التحقق من "لوحة معلومات التطبيق": نوفر وحدات تحكم في لوحة معلومات التطبيق والتي توفر للمطوّرين رؤية متعمقة حول نظام تقييد معدلات الاستدعاء وتساعدهم في تشخيص مشكلات تقييد معدلات الاستدعاء ومنعها.

تحديد السبب

  • تقييدات معدلات الاستدعاء: احرص على فهم تقييدات معدلات الاستدعاء في واجهة API التسويق من Meta بالنسبة لنقاط النهاية المختلفة المستخدمة وتحقق مما إذا كان عدد طلبات API يقع ضمن معدل التقييدات المسموح بها للتطبيق.
  • تقييدات الحد الأقصى للإرسال: تحقق مما إذا كانت تقييدات الحد الأقصى للإرسال تسبب مشكلات أثناء أوقات ذروة الاستخدام. عادةً ما تتسبب الزيارات نتيجة إرسال أقصى حد من الطلبات في فرض تقييدات مستوى API على مستوى الحساب الإعلاني ( رموز الأخطاء ذات الصلة:17، 613).
  • عمليات التشغيل الخاطئة: تحقق مما إذا كانت هناك أي عمليات تشغيل خاطئة تؤدي إلى إرسال طلبات API زائدة.

خطوات تخفيف آثار المشكلة

  • منع الزيارات نتيجة إرسال الحد الأقصى من الطلبات: قم بتوزيع طلبات API بالتساوي لتجنب فرض التقييد نتيجة وجود عدد كبير من عمليات الوصول خلال فترة زمنية قصيرة.
  • تحسين الطلبات: قم بدمج عدة طلبات أصغر ضمن طلبات مجمّعة، سواء مجموعة معرفات أو طلب غير متزامن لتقليل العدد الإجمالي لاستدعاءات API.
  • استراتيجية التراجع: قم بتنفيذ خوارزمية التراجع الأسي عند استلام أخطاء التقييد، ما يؤدي تدريجيًا إلى زيادة الوقت بين عمليات إعادة المحاولة. يمكنك أيضًا التحقق من عناوين HTTP لتقدير وقت إعادة التعيين.

نصائح أخرى لتخفيف المشكلات

  • حاول فهم إذا ما كانت هناك حاجة لهذه الاستدعاءات وقلل منها إذا كانت غير ضرورية.
  • بالنسبة لنقاط النهاية التي تدعم طلبات غير متزامنة، مثل واجهة API رؤى الإعلانات، استخدِم الطلبات غير المتزامنة للاستعلام عن عدد كبير من البيانات.
  • يمكنك أيضًا محاولة إرسال قائمة بالمعرفات إذا كنت بحاجة إلى الاستعلام عن أنواع متعددة من الكائنات الإعلانية.
  • بالنسبة لواجهة API الرؤى، استخدم معلمات المستوى أو الفلترة لتقليل عدد الاستدعاءات.