prebid / Prebid.js

Setup and manage header bidding advertising partners without writing code or confusing line items. Prebid.js is open source and free.
http://prebid.org
Apache License 2.0
1.26k stars 2.02k forks source link

Targeting: set pps to GAM display #10997

Open patmmccann opened 5 months ago

patmmccann commented 5 months ago

Type of issue

Feature

Description

in #10977 (closing #10687) we set PPS Json for video for IAB segtax 4 (users) and 6 (content). Turns out there is a new gpt.js function as well

googletag.setConfig({ pps: { taxonomies: { 'IAB_AUDIENCE_1_1': {values: ['12', '13', '14']}, 'IAB_CONTENT_2_2': {values: ['22', '25', '57']}, } } });

Subsequent calls with new data should include all previous data to resurface, as they overwrite, not append googletag.setConfig({ pps: { taxonomies: { 'IAB_AUDIENCE_1_1': {values: ['12', '13', '14','4', '5', '6']}, 'IAB_CONTENT_2_2': {values: ['22', '25', '57']}, } } });

Should we provide a single API call similar to setTargeting, set PPID, or handoff auction configs; perhaps setAdServerFPD(), or should we just always set it? I can't think of a reason people wouldn't want to set it, so I would be in favor of always setting it and perhaps offering a do not set config flag.

patmmccann commented 5 months ago

Some quirks: setAdServerFPD seems preferred so we don't introduce a dependency on GPT and break parallel loading of gpt and auctions. For us, FPD is an auction property, should we use the latest auction? Should we take an ad unit as an argument or an auction id? Could we offer all three depending on the arguments? () -> use latest, (auctionId =) -> use latest on the auctionid, (adunitcode = ), look up latest auction on this adunit.

Let's make a module for it and call it the GAM FPD Sync Module.

muuki88 commented 4 months ago

Related resources

dgirardi commented 1 month ago

It's not clear how this should be done:

patmmccann commented 2 weeks ago

GPT accepts a global setConfig, but in Prebid taxonomy data is potentially different for each bid. Which one do we pick? (different bids can win concurrent auctions)

when setTargeting is called for mulitple ad units, if they have conflicting site.content.data or user.data, abort setting pps (pub provided segments).

Does the global setConfig also set taxonomy data for video?

My understanding is they are independent. gpt.js is not used for the video call