Protected Audience API: دليل المطوّرين

دليل المطوِّر لمزادات الإعلانات على الجهاز فقط لعرض قوائم تجديد النشاط التسويقي وشرائح الجمهور المخصّصة بدون تتبُّع الجهات الخارجية على مواقع إلكترونية متعددة

بالنسبة إلى المستخدمين الجدد الذين يستخدمون Protected Audience API، يُرجى الاطّلاع على مقالة نظرة عامة حول Protected Audience API للحصول على شرح مفصَّل.

تمّت كتابة هذه المشاركة للمطوّرين كمرجع فني لأحدث تكرار من Protected Audience API التجريبية. يتوفّر عرض توضيحي حول عملية نشر Protected Audience API الأساسية، بالإضافة إلى مراجع واجهة برمجة التطبيقات للمشترين والبائعين.

حالة التنفيذ

لتلقّي إشعارات بشأن تغييرات الحالة في واجهة برمجة التطبيقات، يمكنك الانضمام إلى القائمة البريدية لمطوّري البرامج.

ما هي Protected Audience API؟

Protected Audience API هي واجهة برمجة تطبيقات في مبادرة حماية الخصوصية تمّ تصميمها لعرض حالات استخدام تجديد النشاط التسويقي والجمهور المخصّص كي لا تستخدمها الجهات الخارجية لتتبُّع سلوك تصفُّح المستخدمين على المواقع الإلكترونية. تتيح واجهة برمجة التطبيقات إمكانية إجراء مزادات على الجهاز فقط من خلال المتصفّح، واختيار الإعلانات الملائمة للمواقع الإلكترونية التي زارها المستخدم من قبل.

Protected Audience API هي أوّل تجربة يتم تنفيذها في Chromium ضمن مجموعة الاقتراحات TURTLEDOVE.

تجربة Protected Audience API

مرجع واجهة برمجة التطبيقات المتاح

يقدّم هذا المستند نظرة عامة على Protected Audience API. إذا كنت تبحث عن طُرق ومَعلمات محدَّدة لواجهة برمجة التطبيقات:

ويمكنك أيضًا الاطّلاع على أفضل الممارسات المتعلقة بوقت استجابة مزاد الإعلانات في Protected Audience API.

عرض توضيحي لواجهة برمجة التطبيقات Protected Audience API

تتوفّر إرشادات مفصَّلة حول عملية نشر Protected Audience API الأساسية على المواقع الإلكترونية للمعلِنين والناشرين على الرابط Protect-audience-demo.web.app/.

ننصحك بمشاهدة هذا النشر الشامل للتعرّف على طريقة عمل الرمز التجريبي Protected Audience API وكيفية استخدام "أدوات مطوري البرامج في Chrome" لتصحيح الأخطاء.

الاختبار باستخدام علامة chrome://flags أو علامات الميزات

يمكنك اختبار Protected Audience API لمستخدم واحد في الإصدار التجريبي 101.0.4951.26 أو الإصدارات الأحدث من Chrome على الكمبيوتر المكتبي باتّباع الخطوات التالية:

عرض الإعلانات في إطارات iframe أو إطارات مضمّنة

يمكن عرض الإعلانات في <iframe> أو <fencedframe>، بناءً على العلامات التي تم ضبطها.

لاستخدام <fencedframe> لعرض الإعلانات، اتّبِع الخطوات التالية:

--enable-features=InterestGroupStorage,AdInterestGroupAPI,Fledge,FencedFrames

لاستخدام <iframe> لعرض الإعلانات، اتّبِع الخطوات التالية:

--enable-features=InterestGroupStorage,AdInterestGroupAPI,Fledge,AllowURNsInIframes --disable-features=FencedFrames

ضمِّن العلامة BiddingAndScoringDebugReportingAPI لتفعيل الطرق المؤقتة لإعداد تقارير الخسارة/الفوز وتصحيح الأخطاء.

الميزات المتاحة

إنّ Protected Audience API المستندة إلى ميزة الإبلاغ عن الميزات في Chromium هي تجربة أولى لاختبار الميزات التالية Protected Audience API:

  • مجموعات الاهتمامات: يخزّنها المتصفّح مع البيانات الوصفية المرتبطة بها لضبط عروض أسعار الإعلانات وعرضها.
  • عروض الأسعار على الجهاز فقط حسب المشترين (DSP أو المعلِن): استنادًا إلى مجموعات الاهتمامات والإشارات المخزَّنة من البائع.
  • اختيار البائع للإعلانات على الجهاز فقط (SSP أو الناشر): استنادًا إلى عروض أسعار المزاد والبيانات الوصفية من المشترين
  • عرض الإعلانات في نسخة مريحة مؤقتة من الإطارات Fenced Frames: مع السماح بالوصول إلى الشبكة والتسجيل لعرض الإعلانات

يمكنك الاطّلاع على مزيد من المعلومات حول إتاحة الميزات والقيود المفروضة عليها في الشرح التوضيحي Protected Audience API.

أذونات مجموعة الاهتمامات

إنّ الإعداد التلقائي للتنفيذ الحالي لـ Protected Audience API هو السماح باستدعاء واجهة joinAdInterestGroup() من أي مكان في الصفحة، حتى من إطارات iframe في جميع النطاقات.

في المستقبل، عندما يتوفّر لمالكي المواقع الإلكترونية الوقت لتعديل سياسات أذونات إطارات iframe في جميع النطاقات، ستكون الخطة هي منع الطلبات الواردة من إطارات iframe عبر النطاقات.

خدمة المفتاح/القيمة

لإتاحة مزاد إعلانات Protected Audience API، يمكن للمتصفّح الوصول إلى خدمة المفتاح/القيمة لاسترداد المعلومات في الوقت الفعلي التي تتوافق مع مزاد الإعلانات في Protected Audience API. يمكن استخدام هذه المعلومات بعدة طرق:

  • قد يرغب المشترون في حساب الميزانية المتبقية في حملة إعلانية.
  • قد يُطلب من البائعين التحقّق من توافق تصاميم الإعلانات مع سياسات الناشر.

أصبح رمز خدمة/قيمة Protected Audience API متاحًا الآن. يمكنك مراجعة مشاركة مدونة الإعلان لمعرفة معلومات عن تحديث الحالة.

لأغراض الاختبار الأولي، تم تقديم نموذج "إحضار خادمك". على المدى الطويل، ستحتاج تقنيات الإعلانات إلى استخدام خدمات المفاتيح/القيمة المفتوحة المصدر Protected Audience API التي تعمل في بيئات تنفيذ موثوقة.

يُرجى الرجوع إلى مشاركة المدوّنة حول خدمات Protected Audience API للاطّلاع على آخر الأخبار حول المخطط الزمني وسنقدم إشعارًا مهمًا للمطورين لبدء الاختبار والاعتماد قبل تنفيذ هذا الانتقال.

اكتشاف دعم الميزات

قبل استخدام واجهة برمجة التطبيقات، تحقق مما إذا كانت متوافقة مع المتصفح ومتاحة في المستند:

'joinAdInterestGroup' in navigator &&
  document.featurePolicy.allowsFeature('join-ad-interest-group') &&
  document.featurePolicy.allowsFeature('run-ad-auction') ?
  console.log('navigator.joinAdInterestGroup() is supported on this page') :
  console.log('navigator.joinAdInterestGroup() is not supported on this page');

ما هي آلية عمل Protected Audience API؟

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

وستتم إضافة ميزات Protected Audience API بمرور الوقت بينما نعمل على تطويرها.

1- يزور أحد المستخدِمين أحد المواقع الإلكترونية لأحد المعلِنين.

شخص يزور موقعًا مخصصًا لتصنيع الدراجات في متصفح على كمبيوتر محمول

تخيل أن مستخدمًا يزور الموقع الإلكتروني لصانع دراجة مخصص (المعلِن) في هذا المثال) ويقضي بعض الوقت على صفحة المنتج لدراجة فولاذية مصنوعة يدويًا. يوفر هذا لصانع الدراجة فرصة تجديد النشاط التسويقي.

2- يُطلب من متصفّح المستخدم إضافة مجموعة اهتمامات.

أحد المستخدمين يفتح متصفّحًا على الكمبيوتر المحمول ويزور موقعًا إلكترونيًا. يعمل رمز JavaScript
  للانضمام إلى مجموعات اهتمامات الإعلانات في المتصفح.

تطلب منصة المعلن على جانب الطلب (أو المعلن نفسه) navigator.joinAdInterestGroup() لتطلب من المتصفّح إضافة مجموعة اهتمامات إلى قائمة المجموعات التي ينتمي إليها المتصفّح.

في هذا المثال، تُسمى المجموعة custom-bikes والمالك هو dsp.example. سيكون مالك مجموعة الاهتمامات (في هذه الحالة، وسيط عرض الطلب) مشتريًا في مزاد إعلانات Protected Audience API. يخزّن المتصفح أو على جهاز المستخدم عضوية مجموعة الاهتمامات، ولا تتم مشاركتها مع مورّد المتصفّح أو أي جهة أخرى.

تحديد إعلانات لمجموعة اهتمامات

يتضمّن عنصرا ads وadComponents عنوان URL لتصميم الإعلان، وبيانات وصفية عشوائية يمكن استخدامها في وقت تقديم عروض الأسعار اختياريًا. مثال:

{
  renderUrl: 'https://cdn.example/.../bikeAd1.html',
  metadata: bikeAd1metadata // optional
}

كيف يقدّم المشترون عروض الأسعار؟

يتم استدعاء generateBid() لكل مجموعة اهتمام يكون المتصفّح عضوًا فيها، في حال دعوة مالك المجموعة ذات الاهتمامات المشتركة لتقديم عرض سعر.

اطّلِع على مستندات مطوّري برامج "generatedBid()".

3. زيارة المستخدم لموقع إلكتروني يبيع مساحة إعلانية

امرأة تزور موقعًا إلكترونيًا إخباريًا في متصفّح على الكمبيوتر المحمول يحتوي الموقع الإلكتروني على شريحة إعلانية فارغة.

وفي وقت لاحق، يزور المستخدِم موقعًا إلكترونيًا يبيع مساحة إعلانية، في هذا المثال موقع إلكتروني إخباري. يحتوي الموقع على مستودع إعلانات يبيعه آليًا باستخدام عروض الأسعار في الوقت الفعلي.

4- يتم إجراء مزاد إعلانات في المتصفح

شخص يشاهد موقعًا إلكترونيًا إخباريًا في متصفّح على كمبيوتر محمول يتمّ إجراء مزاد إعلانات Protected Audience API من أجل اختيار إعلان للمساحة الإعلانية المتوفّرة.

من المرجَّح أن يتم إجراء مزاد الإعلانات من قِبل موفّر جهة المورّد لدى الناشر أو الناشر نفسه. الغرض من المزاد هو اختيار الإعلان الأنسب لشريحة إعلانية واحدة متاحة على الصفحة الحالية. يأخذ المزاد في الاعتبار مجموعات الاهتمامات التي ينتمي إليها المتصفّح، إلى جانب بيانات من المشترين في المساحات الإعلانية والبائعين من خدمات المفاتيح/القيمة.

5- يطلب البائع والمشترين المشاركون بيانات في الوقت الفعلي من خدمة المفتاح/القيمة.

يشاهد المستخدم موقعًا إلكترونيًا إخباريًا في متصفح على الكمبيوتر المحمول. يتم إجراء مزاد إعلانات باستخدام Protected Audience API، ويحصل أحد المشاركين على بيانات من خدمة &quot;المفتاح/القيمة&quot;.

خلال مزاد الإعلانات، يمكن للبائع طلب بيانات في الوقت الفعلي حول مواد إبداعية معيَّنة من خلال تقديم طلب إلى خدمة المفتاح/القيمة. يمكن للبائع طلب هذه المعلومات خلال runAdAuction() من خلال السمة trustedScoringSignalsUrl، بالإضافة إلى المفاتيح من السمات renderUrl لكل الإدخالات في الحقلين ads وadComponents لكل مجموعات الاهتمامات في المزاد.

يمكن للمشتري طلب بيانات في الوقت الفعلي من خدمة "المفتاح/القيمة" باستخدام السمتَين trustedBiddingSignalsUrl وtrustedBiddingSignalsKeys لوسيطة مجموعة الاهتمامات التي تم تمريرها إلى navigator.joinAdInterestGroup().

عند استدعاء runAdAuction()، يقدم المتصفح طلبًا إلى الخادم الموثوق به لكل مشتري الإعلان. قد يبدو عنوان URL للطلب كما يلي:

https://kv-service.example/getvalues?hostname=publisher.example&keys=key1,key2
  • يأتي عنوان URL الأساسي من trustedBiddingSignalsUrl.
  • يوفّر المتصفّح hostname.
  • القيمة keys مأخوذة من trustedBiddingSignalsKeys.

والاستجابة لهذا الطلب هي كائن JSON يوفر قيمًا لكل مفتاح.

6- يتم عرض الإعلان الفائز.

شخص يشاهد موقعًا إلكترونيًا إخباريًا في متصفّح على كمبيوتر محمول يتم عرض إعلان
  بخصم% 20 على دراجة في إطار مسيّج آمن.

يتم تحويل الوعد الذي يعرضه runAdAuction() إلى عنصر إعدادات إطار مضمّن مستقل (FencedFrameConfig) عند ضبط العلامةresolveToConfig على true في إعدادات المزاد. يتم استخدام تهيئة الإطار بواسطة إطار مضمّن لنقل الإطار إلى الإعلان الفائز، غير أن عنوان URL للإعلان لا يظهر للأداة المضمَّنة في الإطار.

يتوفّر عنصر ضبط الإطار المسموح له باستخدام الإصدار M114 بدءًا من الإصدار M114. لمزيد من المعلومات حول الكائن FencedFrameConfig، يُرجى الاطّلاع على مقالة مدونة Chrome.

7- يتم الإبلاغ عن نتيجة المزاد

تتمثل الخطة طويلة الأجل في السماح للمتصفّح بالإبلاغ عن نتائج المزاد للبائع والمشترين باستخدام واجهات برمجة التطبيقات الخاصة للتجميع الخاص.

كآلية إعداد تقارير مؤقتة على مستوى الحدث، يمكن للرمز الذي ينفّذ reportResult() للبائع والرمز reportWin() لمقدّم عروض الأسعار الفائز استدعاء الدالة sendReportTo(). ويستعين هذا بوسيطة واحدة: سلسلة تمثِّل عنوان URL الذي يتم جلبه بعد اكتمال المزاد، والتي تشفّر المعلومات على مستوى الحدث المطلوب الإبلاغ عنها.

8- يتم الإبلاغ عن نقرة على إعلان

ينقر شخص على إعلان لدراجة مضمَّنة بإطار مسيّج، في موقع إلكتروني إخباري. يتم إرسال بيانات التقرير إلى البائع والمشترين.

يتم الإبلاغ عن نقرة على إعلان يتم عرضه في إطار مضمّن. للاطّلاع على مزيد من المعلومات عن طريقة تنفيذ ذلك، اطّلِع على إعداد تقارير حول إعلانات الإطارات المضمّنة.


نظرة عامة على كل مرحلة من مراحل مزاد الإعلانات في Protected Audience API
يوضِّح هذا المخطّط البياني كلّ مرحلة من مراحل مزاد Protected Audience API.

ما الفرق بين Protected Audience API وTURTLEDOVE؟

Protected Audience API هي أوّل تجربة يتم تنفيذها في Chromium ضمن مجموعة اقتراحات TURTLEDOVE.

تتّبع Protected Audience API مبادئ TURTLEDOVE العالية المستوى. استندت بعض الإعلانات عبر الإنترنت إلى عرض إعلان على شخص يُحتمل أن يكون مهتمًا به سبق له التفاعل مع المعلن أو شبكة المواقع الإعلانية. في السابق، تمكّن المعلِن من التعرّف على شخص معيّن أثناء تصفحه للمواقع الإلكترونية، وهي مشكلة أساسية متعلّقة بالخصوصية في عالم الويب اليوم.

تتمحور مبادرة TURTLEDOVE حول توفير واجهة برمجة تطبيقات جديدة لمعالجة حالة الاستخدام هذه مع تقديم بعض التطورات الرئيسية في الخصوصية:

  • أما المتصفح، وليس المعلن، فهو يحتفظ بالمعلومات المتعلقة بما يعتقد المعلن أنه يهتم به.
  • يمكن للمعلنين عرض الإعلانات استنادًا إلى أحد الاهتمامات، ولكن لا يمكنهم الجمع بين هذا الاهتمام والمعلومات الأخرى عن شخص، وبشكل خاص، عن هويته، أو الصفحة التي يزورها.

نشأ Protected Audience API من TURTLEDOVE ومجموعة من الاقتراحات ذات الصلة بالتعديلات بهدف تقديم خدمة أفضل للمطوّرين الذين سيستخدمون واجهة برمجة التطبيقات:

  • في SPARROW: اقترح Criteo إضافة نموذج خدمة ("Gatekeeper") يعمل في بيئة تنفيذ موثوق بها (TEE). تشمل Protected Audience API استخدامًا محدودًا بشكل أكبر لواجهات برمجة التطبيقات (TEE) من أجل البحث عن البيانات في الوقت الفعلي وإعداد التقارير المجمَّعة.
  • وصفت اقتراحات TERN وPARRROT من NextRoll الأدوار المختلفة للمشترين والبائعين في المزاد على الجهاز فقط. ويستند مسار عروض أسعار أو نتائج الإعلانات في Protected Audience API إلى هذا العمل.
  • تم تحسين إمكانات التخصيص ونموذج إخفاء الهوية في المزاد على الجهاز فقط بفضل التعديلات المستندة إلى النتائج وعلى مستوى المنتج في RTB House
  • PARAKEET هي اقتراح من Microsoft لخدمة إعلانية شبيهة بـ TURTLEDOVE تعتمد على خادم وكيل يعمل على بيئة التنفيذ الموثوقة (TEE) بين المتصفح ومزوّدي تقنية الإعلان، وذلك لإخفاء هوية طلبات الإعلان وفرض خصائص الخصوصية. لم تستخدِم Protected Audience API نموذج الخادم الوكيل هذا. نحن بصدد دمج واجهات برمجة تطبيقات JavaScript لـ PARAKEET وProtected Audience API، لدعم العمل المستقبلي لدمج أفضل ميزات كلا الاقتراحين.

لم تمنع بعد Protected Audience API شبكة المواقع الإعلانية الخاصة بالمواقع الإلكترونية من التعرّف على الإعلانات التي يراها المستخدم. نتوقع تعديل واجهة برمجة التطبيقات لتصبح أكثر خصوصية بمرور الوقت.

هل يمكن استخدام Topics API مع Protected Audience API؟

نعم. موضوع يتم تتبّعه وتابع للمستخدم الحالي بواسطة Topics API. ويمكن استخدامه كمعلومات سياقية من قِبل البائع أو مقدّم عروض الأسعار. يمكن تضمين موضوع في السمات التالية:

  • auctionSignals، وهي خاصية لعنصر إعداد المزاد الذي تم تمريره إلى navigator.runAdAuction()
  • userBiddingSignals، وهي خاصية لكائن إعداد مجموعة الاهتمامات تم تمريرها إلى navigator.joinAdInterestGroup()

إعدادات المتصفِّح المتاحة

يمكن للمستخدمين تعديل مشاركتهم في الفترات التجريبية من "مبادرة حماية الخصوصية" في Chrome من خلال تفعيل إعداد المستوى الأعلى أو إيقافه في chrome://settings/adPrivacy.

أثناء الاختبار الأوّلي، سيتمكّن المستخدمون من استخدام إعداد "مبادرة حماية الخصوصية" العالي المستوى لإيقاف Protected Audience API. يخطط Chrome للسماح للمستخدمين برؤية وإدارة قائمة المجموعات ذات الاهتمامات المشتركة التي تمت إضافتهم إليها عبر مواقع الويب التي زاروها. كما هو الحال مع تقنيات "مبادرة حماية الخصوصية" نفسها، قد يتم تطوير إعدادات المستخدمين بالاستناد إلى ملاحظات المستخدمين والهيئات التنظيمية وغيرهم.

سنواصل تعديل الإعدادات المتاحة في Chrome بناءً على الاختبارات والملاحظات. ونخطّط في المستقبل لتوفير إعدادات أكثر دقة لإدارة Protected Audience API والبيانات المرتبطة بها.

لا يمكن لمتصلي واجهة برمجة التطبيقات الوصول إلى الانتساب في المجموعة عند تصفُّح المستخدمين في "وضع التصفّح المتخفي"، وتتمّ إزالة الاشتراك عندما يمحو المستخدمون بيانات الموقع الإلكتروني.

هل يخزّن المتصفِّح وظائف "الجمهور المحمي" الصغيرة؟

يُخزن المتصفّح مؤقتًا الموارد التي تحتوي على وظائف Protected Audience الرئيسية، وهي الوظائف المصغّرة لإنشاء عروض الأسعار وإعداد التقارير والخاصة بالمشتري، ومجموعات بيانات نتائج الإعلانات وإعداد التقارير لدى البائع. يمكنك استخدام عنوان Cache-Control للتحكّم في سلوك التخزين المؤقت.

التفاعل ومشاركة الملاحظات

الحصول على الدعم

لطرح أسئلة والحصول على الدعم بشأن عملية التنفيذ أو العرض التوضيحي أو الوثائق:

لمزيد من الأسئلة العامة حول تلبية احتياجاتك باستخدام Protected Audience API، يمكنك الإبلاغ عن مشكلة في مستودع واجهة برمجة التطبيقات. يمكنك أيضًا مناقشة حالات الاستخدام في هذا المجال من خلال الانتقال إلى مجموعة أعمال تحسين الإعلانات على الويب التابعة لـ W3C.

استخدِم نموذج الملاحظات الخاص بـ "مبادرة حماية الخصوصية" لمشاركة الملاحظات بشكل خاص مع فريق Chrome خارج المنتديات العامة.

إيقاف

هل تريد إيقاف Protected Audience API؟ تعرَّف على كيفية حظر الوصول إلى Protected Audience API بصفتك مالك موقع إلكتروني أو مستخدِم فردي.

البقاء على اطّلاع