يُرجى مراعاة أفضل الممارسات التالية عند استخدام Data Manager API.
إرسال جميع معرّفات المستخدمين
سواء كنت ترسل أعضاء في الجمهور أو أحداثًا باستخدام UserData، عليك تضمين أكبر عدد ممكن من
user_identifiers، بما في ذلك إرسال معرّفات متعددة من
النوع نفسه.
على سبيل المثال، إذا كان لديك عدة عناوين بريد إلكتروني لمستخدم، يمكنك تضمين عنصر UserIdentifier منفصل لكل عنوان بريد إلكتروني. وبالمثل، إذا كانت لديك معرّفات من أنواع مختلفة لمستخدم معيّن، مثل عناوين البريد الإلكتروني وأرقام الهواتف والعناوين، أضِف UserIdentifier منفصلاً لكل معرّف، بحدّ أقصى يساوي العدد الأقصى للمعرّفات.
تحسين الطلبات
لتقليل احتمالية تجاوز حدود الطلبات اليومية، يمكنك تجميع أكبر عدد ممكن من العناصر في كل طلب، بما يصل إلى الحدود القصوى لكل طلب.
على سبيل المثال، إذا أردت إضافة 10,000 عضو في الجمهور إلى جمهور معيّن، أضِف جميع الأعضاء البالغ عددهم 10,000 في قائمة audience_members في IngestAudienceMembersRequest واحدة. إنّ تجميع كل الأعضاء البالغ عددهم 10,000 في طلب واحد أكثر كفاءة من إرسال طلب منفصل لإضافة كل عضو في الجمهور.
إرسال طلبات متزامنة
لتقليل الوقت الإجمالي المطلوب لنقل البيانات، أرسِل طلبات متزامنة إلى IngestionService. ننصح بإرسال ما يصل إلى 10 طلبات في الوقت نفسه لتقليل احتمالية تجاوز الحدّ الأقصى لعدد الطلبات في الدقيقة.
يمكنك إرسال طلبات متزامنة حتى إذا كانت الطلبات تحتوي على نفس
destinations.
التحقّق من صحة البيانات من جهة العميل
تستخدم واجهة Data Manager API نموذج الفشل السريع. إذا تعذّر التحقّق من صحة أي سجلّ في طلب متزامن، سيتعذّر تنفيذ الطلب بالكامل ولن تتم معالجة أي من السجلّات. بالإضافة إلى ذلك، تتحقّق واجهة برمجة التطبيقات من صحة الطلبات في مراحل متسلسلة، لذا قد يؤدي إصلاح خطأ واحد إلى الكشف عن خطأ من مرحلة تحقّق لاحقة.
لتجنُّب تكرار عمليات الذهاب والعودة ورفض الطلبات، عليك التحقّق من صحة بياناتك وتنقيحها قبل إرسالها:
إزالة القيم الفارغة قبل التجزئة: تحقَّق من الحقول، مثل
email_addressوphone_number، بحثًا عن سلاسل فارغة أو سلاسل تحتوي على مسافات بيضاء فقط قبل احتساب تجزئات SHA-256. تؤدي تجزئة سلسلة فارغة إلى إنشاء تجزئة صالحة تجتاز عمليات التحقّق من البنية ولكنّها تضرّ بنِسب المطابقة.إسقاط العناصر المركّبة غير المكتملة: تأكَّد من أنّ العناصر المركّبة تحتوي على جميع الحقول المطلوبة قبل إضافتها إلى سجلّ. على سبيل المثال، إذا كان عنصر
AddressInfoلا يتضمّن أيًا من حقوله الأربعة المطلوبة (given_nameأوfamily_nameأوregion_codeأوpostal_code)، يجب حذف معرّفaddressبالكامل لتجنُّب أخطاءREQUIRED_FIELD_MISSING.التحقّق من صحة حقول الترميز والنص العادي: تأكَّد من أنّ الحقول المجزّأة تتطابق مع
encodingالمعلَن عنه بدلاً من إرسال نص عادي أولي، وتأكَّد من أنّ الحقول التي يجب أن تظل نصًا عاديًا (مثلmobile_ids) غير مجزّأة.فلترة الطوابع الزمنية خارج النطاق: تأكَّد من أنّ الطوابع الزمنية ليست في المستقبل أو أقدم من فترة معاينة الإعلان في الوجهة.
إذا كنت ترسل الطلبات باستخدام JSON، تأكَّد من أنّ سلاسل الطوابع الزمنية تستخدم تنسيق RFC 3339 مع إزاحة المنطقة الزمنية.
تنظيف أرقام الهواتف: تأكَّد من أنّ أرقام الهواتف تتضمّن رمز البلد وتستخدم تنسيق E.164 قبل التجزئة.
إزالة السجلات الفارغة أو الكبيرة الحجم: يمكنك وضع حد أقصى لسمة
user_identifiersعند الحد الأقصى لكل سجل (10 معرّفات)، وإسقاط المَعلمات المخصّصة الفارغة، وحذف أي سجل لا يحتوي على معرّفات صالحة.التحقّق من متطلبات حالات الاستخدام: تأكَّد من أنّ كل حدث يتضمّن جميع الحقول الإلزامية لوجهته وحالة استخدامه (مثل
transaction_idللإحالات الناجحة الإلكترونية في "إعلانات Google"). للاطّلاع على قائمة كاملة بالحقول المطلوبة حسب حالة الاستخدام، يُرجى مراجعة دليل إرسال الأحداث لوجهتك في نظرة عامة على الأحداث.استخدام
validateOnlyلاختبار الطلبات: يمكنك إرسال الطلبات مع ضبطvalidateOnlyعلىtrueلرصد أخطاء الفشل السريع بدون نقل البيانات أو إزالتها. لا يضمن نجاح طلب التحقّق من الصحة فقط عدم حدوث أخطاء أثناء المعالجة غير المتزامنة، لذا يُرجى مواصلة التحقّق من حالة الطلب وبيانات التشخيص بعد إرسال طلب عادي.
للاطّلاع على قواعد التسوية والتجزئة المفصّلة، يُرجى مراجعة مقالة تنسيق بيانات المستخدمين.
الاطّلاع على حالة الطلب وبيانات التشخيص
احصل على request_id من كل
IngestAudienceMembersResponse أو
IngestEventsResponse، واستخدِم معرّفات الطلبات
للاطّلاع على حالة الطلب وبيانات التشخيص.
مراقبة الحصص وإرسال تنبيهات بشأنها
لتجنُّب رفض الطلبات بشكل غير متوقّع، يمكنك إعداد تنبيهات الحصص ومراقبتها في وحدة تحكّم Google Cloud. تساعدك مراقبة استخدام الحصة في تتبُّع أنماط الاستهلاك وتحسين تجميع الطلبات قبل أن يصل تطبيقك إلى الحدود اليومية أو الحدود لكل دقيقة.
النشر في قناة الإصدار العلني
عند الانتقال من الاختبار المحلي إلى أعباء العمل في مرحلة الإنتاج، استخدِم بيانات الاعتماد التلقائية للتطبيق مع حساب خدمة مرفق أو Workload Identity Federation للمصادقة بشكل غير تفاعلي وآمن.
لمعرفة تفاصيل حول ضبط المصادقة لبيئات التشغيل الفعلي المختلفة، يُرجى الاطّلاع على النشر في بيئة التشغيل الفعلي.