הגדרת נתוני קהל היעד

כאן מוסבר איך להגדיר קהל על ידי יצירת קבוצת אינטרס באמצעות Protected Audience API. כדי לקבל מידע על מחזור החיים המלא של Protected Audience API, אפשר לעיין במדריך למפתחים. כדי לקבל הסבר מפורט על האופן שבו דפדפנים מתעדים קבוצות של תחומי עניין, אפשר לעיין במאמר Protected Audience API explainer.

אתם לא מפתחים? מידע נוסף מופיע בסקירה הכללית על Protected Audience API.

קבוצות אינטרס של Protected Audience API

קבוצת אינטרס של Protected Audience API מייצגת קבוצה של אנשים עם עניין משותף, שתואמת לרשימת רימרקטינג. לכל קבוצת אינטרס ב-Protected Audience API יש בעלים.

הבעלים של קבוצות האינטרס פועלים כקונים במכרז המודעות של Protected Audience API. אם המשתמש חבר בקבוצת אינטרס, הפרט הזה שמור בדפדפן שמותקן במכשיר שלו, ולא משותף עם הספק של הדפדפן או כל גורם אחר.

פונקציות API

joinAdInterestGroup()

הפלטפורמה למפרסמים (DSP) של המפרסם או המפרסם עצמו קוראים לפונקציה navigator.joinAdInterestGroup() כדי לבקש מהדפדפן להוסיף קבוצת אינטרס לרשימת החברים של הדפדפן.

המקור של הקשר לקריאה של joinAdInterestGroup() צריך להיות זהה למקור של הבעלים של קבוצת האינטרס, ולכן צריך לקרוא ל-joinAdInterestGroup() מתוך iframe (לדוגמה, מתוך DSP), אלא אם המקור של הבעלים של קבוצת האינטרס זהה למקור של המסמך הנוכחי (לדוגמה, אתר עם קבוצות אינטרס משלו).

נדרשת הרשאה מ: joinAdInterestGroup()

כלומר, malicious.example לא יכול להתקשר אל joinAdInterestGroup() בשם קבוצת אינטרס שבבעלות dsp.example.com, בלי ש-dsp.example.com ייתן הרשאה.

הרשאה מהאתר שבו ביקרתם

אפשר להעניק הרשאה מאותו מקור או ממקורות שונים. כברירת מחדל, ההרשאה ניתנת לקריאות של joinAdInterestGroup() מאותו מקור כמו האתר שבו מבקרים (במילים אחרות, מאותו מקור כמו המסגרת ברמה העליונה של הדף הנוכחי).

דוגמה לשימוש

הנה דוגמה לאופן שבו אפשר להגדיר קבוצת אינטרס ולבקש מהדפדפן להצטרף לקבוצה.

const interestGroup = {
  owner: 'https://dsp.example',
  name: 'custom-bikes',
  biddingLogicUrl: ...,
  biddingWasmHelperUrl: ...,
  updateUrl: ...,
  trustedBiddingSignalsUrl: ...,
  trustedBiddingSignalsKeys: ['key1', 'key2'],
  userBiddingSignals: {...},
  ads: [bikeAd1, bikeAd2, bikeAd3],
  adComponents: [customBike1, customBike2, bikePedal, bikeFrame1, bikeFrame2],
};

navigator.joinAdInterestGroup(interestGroup, 7 * kSecsPerDay);

הגודל של אובייקט interestGroup שמועבר לפונקציה לא יכול להיות יותר מ-50KiB, אחרת הקריאה תיכשל. הפרמטר השני מציין את משך הזמן של קבוצת הנושאים, עד 30 יום. קריאות עוקבות מחליפות ערכים שאוחסנו קודם.

מאפיינים נדרשים

מאפייני החובה היחידים של קבוצות עניין הם owner ו-name:

נכס דוגמה תפקיד
owner https://dsp.example המקור של הבעלים של קבוצת האינטרסים.
name custom-bikes השם של קבוצת המתעניינים.

מאפיינים אופציונליים

המאפיינים הנותרים הם אופציונליים:

biddingLogicUrl1, 2
דוגמה: https://dsp.example/bid/custom-bikes/bid.js
תפקיד: כתובת URL להפעלת JavaScript להגשת הצעות מחיר ב-worklet.
biddingWasmHelperUrl1, 2
דוגמה: https://dsp.example/bid/custom-bikes/bid.wasm
תפקיד: כתובת URL לקוד WebAssembly שמופעל מ-biddingLogicUrl.
updateUrl2
דוגמה: https://dsp.example/bid/custom-bikes/update
תפקיד: כתובת URL שמחזירה JSON כדי לעדכן מאפיינים של קבוצת נושאים. (ראו עדכון נתוני הקהלים ורענון המודעות).
trustedBiddingSignalsUrl2
דוגמה: https://dsp.example/trusted/bidding-signals
תפקיד: כתובת ה-URL הבסיסית לבקשות של צמדי מפתח/ערך לשירות המפתח/ערך המהימן של המגיש.
trustedBiddingSignalsKeys
דוגמה: ['key1', 'key2' ...]
תפקיד: מפתחות לבקשות לשירות מפתח/ערך מהימן.
userBiddingSignals
דוגמה: {...}
תפקיד: מטא-נתונים נוספים שהבעלים יכול להשתמש בהם במהלך הבידינג.
ads1
דוגמה: [bikeAd1, bikeAd2, bikeAd3]
תפקיד: מודעות שעשויות להיות מוצגות לקבוצת האינטרס הזו.
adComponents
דוגמה: [customBike1, customBike2, bikePedal, bikeFrame1, bikeFrame2]
תפקיד: רכיבים של מודעות שמורכבות מכמה חלקים.

1 המאפיינים biddingLogicUrl ו-ads הם אופציונליים, אבל הם נדרשים כדי להשתתף במכרז. יכולים להיות מקרים שבהם כדאי ליצור קבוצת עניין בלי המאפיינים האלה: לדוגמה, בעלים של קבוצת עניין יכולים לרצות להוסיף דפדפן לקבוצת עניין עבור קמפיין שעדיין לא פועל, או לשימוש עתידי אחר, או שאולי נגמר להם זמנית התקציב לפרסום.

2 בהטמעה הנוכחית של Protected Audience API,‏ biddingLogicUrl,‏ biddingWasmHelperUrl,‏ updateUrl ו-trustedBiddingSignalsUrl צריכים להיות מאותו מקור כמו הבעלים. יכול להיות שזו לא מגבלה לטווח ארוך, ובכתובות ה-URL‏ ads ו-adComponents אין מגבלה כזו.

ציון מודעות לקבוצה של תחומי עניין

אובייקטים מסוג ads ו-adComponents כוללים כתובת URL של קריאייטיב למודעה, ואפשרות להוסיף מטא-נתונים שרירותיים שאפשר להשתמש בהם בזמן הגשת הצעות מחיר.

לדוגמה:

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

leaveAdInterestGroup()

הבעלים של קבוצת העניין יכול לבקש להסיר דפדפן מקבוצת עניין. הדפדפן מסיר את קבוצת הנושאים מרשימת החברים שלה.

navigator.leaveAdInterestGroup({
  owner: 'https://dsp.example',
  name: 'custom-bikes'
});

אם משתמש חוזר לאתר שביקש מהדפדפן להוסיף קבוצת אינטרס, הבעלים של קבוצת האינטרס יכול להפעיל את הפונקציה navigator.leaveAdInterestGroup() כדי לבקש מהדפדפן להסיר את קבוצת האינטרס.

קוד של מודעה יכול גם לקרוא לפונקציה הזו עבור קבוצת המתעניינים שלה.

שאלות נפוצות

מהו המספר המקסימלי של קבוצות אינטרסים שבעלי קבוצה יכולים ליצור עבור משתמש יחיד?

ב-Chrome אפשר ליצור עד 1,000 קבוצות אינטרס לכל בעלים, ועד 1,000 בעלים של קבוצות אינטרס. התקרות האלה נועדו לשמש כהגנה, ולא אמורות להתרחש במהלך פעולה רגילה.

איך אפשר להגדיל את מספר המודעות לקבוצות של משתמשים עם תחומי עניין שעומדות בסף של k-אנונימיות?

כפי שמצוין בהסבר לציבור, קבוצת עניין אחת יכולה לכלול כמה מודעות אפשריות שהיא עשויה להציג, ולכן בכל פעם שהבחירה המועדפת ביותר שלה נמוכה מהסף, לקבוצה תהיה הזדמנות להגיש הצעת מחיר חוזרת על אחת מהמודעות שלה כדי שתשמש כ "מודעת חלופה". המשמעות היא שמודעה קטנה וממוקדת שעדיין לא עומדת בסף האנונימיות יכולה להשתתף במכרזים, ולקבוצת העניין שלה יש דרך לחזור למודעה כללית יותר עד שיהיה לה קהל גדול מספיק.

מבחינה טקטית, כדאי לשקול את הפעולות הבאות:

  • כדי שמודעה חדשה תתחיל להופיע, פשוט מתחילים להגיש הצעות מחיר לגביה במקרים שבהם רוצים שהיא תוצג. לא נדרשת פעולה נוספת מצידך.
  • אפשר להגדיר מודעת גיבוי שתשמש אתכם אם מודעות חדשות לא יהיו אנונימיות ברמה 𝑘. יש סיכון מסוים לכך שמודעת ברירת המחדל עצמה לא תהיה אנונימית (k-anon), ולכן כדאי לשקול להגיש הצעת מחיר עם מודעת ברירת המחדל מלכתחילה. לדוגמה, אפשר לעשות את זה ב-1% מהמקרים, אם זהו שיעור טוב שיבטיח שהחזרה למצב הקודם תישאר מעל הסף.

לאחרונה התקיים דיון על דרכים אחרות שבהן אפשר להשתמש ב-API, לכן אם יש לכם תרחיש שימוש שבו המנגנון הזה עלול לגרום לבעיה, אתם מוזמנים להשתתף בדיון הציבורי על דרכים לשיפור ה-API.

כל חומרי העזר בנושא Protected Audience API

תוכלו להיעזר במדריכים הבאים עם ה-API:

הסבר על Protected Audience API כולל גם פרטים על התמיכה בתכונות והאילוצים.