-
Notifications
You must be signed in to change notification settings - Fork 741
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Prebid Server OpenRTB 2.6 support #2139
Comments
Thank you for kicking this off @bretg.
I am interested in what the rest of the committee and the community feels about this. I prefer to choose a standard and stick with it rather than creating our own hybrid model. The removed fields in 2.6 (in 2022) were marked as deprecated in 2.5 (2016). and I can find no usage of them in any adapter. This doesn't mean an adapter's bidding server doesn't use them, but I think 6 years is long enough of a deprecated period and am supportive of removing them in PBS. This would allow us to use the true OpenRTB 2.6 model throughout the app and put us in a cleaner position for a future 2.7 version.
It's the intention of the IAB for the ecosystem to support both the new promoted locations alongside the existing extension locations, where the newer promoted locations are preferred. This brings up the question of how PBS should behave if both the new and old locations are present? A good topic for discussion.
I consider this a decision required for each adapter, rather than for the host company. If an adapter's server supports only 2.5 and the bid request is using the newer 2.6 fields, I propose PBS moves the 2.6 fields back to extensions before invoking the adapter and possibly remove the newer 2.6 fields if they're populated. This would be powered by a per-adapter config option which over time we can encourage adapters to add 2.6 support.
I propose we keep the transition period indefinite while PBS remains on the 2.x data model unless the IAB provides guidance to the contrary. We absolutely need to upgrade the core and the adapters listed (thank you for compiling the list). Perhaps we can make helper methods to locate those fields for adapters (and the core) to use.
Completely agree, which should be no surprise as I've brought this up for discussion in the committee before :). Can we track this in a separate story? This seems like a large enough effort to track and design independently. I've ensured the new 2.6 video fields are compatible with our custom PBS pod model, but I'd also like this opportunity to go back and re-evaluate our previous design decisions. I expect this would ultimately lead to the deprecation of the /video endpoint.
I propose we add validation to this field and reject bids with unknown mtypes. For PBS-Go, adapters should not have to provide the BidType if their bidding server populates this field. I would also like to discuss how we approach adapters which specify the OpenRTB version as 2.5 in the header to their bidding servers - there are a lot (aceex, acuityads, adkernel, adkernelAdn, adoppler, adpone, advangelists, adyoulike, algorix, apacdex, facebook, bidmachine, bidmyadz, bizzclick, brightroll, coinzilla, gamma, impactify, kidoz, krushmedia, lockerdome, lunamedia, madvertise, marsmedia, nanointeractive, nextmillenium, ninthdecimal, richaudience, silvermob, smartrtb, smartyads, smilewanted, somoaudience, telaria, unicorn, vidoomy, yahoossp). Perhaps this can go hand-in-hand with per-adapter config options for how to handle the transition. |
I am mostly worried about these: New object: New object: Moving the location sounds breaking, copying it sounds better. However, perhaps adapters could somehow say where they want it? |
re @SyntaxNode 's point on if removed fields are being used; we see very different bidder behavior when we pass different values on protocols field for video. I would be quite nervous to deprecate it. |
Agree. FWIW: I conveyed to the IAB the problem the ecosystem would encounter if the group decided to promote the extensions, but most members were adamant in providing extensions a path for inclusion into the next spec iteration. I can understand both views. It's less ideal for Prebid, putting more work on our systems to make adapters happy. |
@patmmccann , note about your statement
Note that the |
Discussed in committee. Notes:
Will continue to discuss in future meetings. |
FYI: $.imp[].rewarded was actually written in the spec as "reward" and will be changing to "rwdd". |
rwdd? ugh. updated the description |
Really. Designed by committee. :-/ |
Discussed in committee. The goal is to have PBS-Go and PBS-Java releases in June to support the transition approach. |
The IAB has blessed 2.6. Went back through the doc and reviewed. rwdd is still there. Also added device.sua. |
Discussed in committee.
|
Discussed in the video committee. We agreed it would be fine for the PBS 2.6 effort to be delivered in two phases:
|
Added
|
Added
|
The team has noted "none of listed removed fields has been in PBJ since initial commit." If that's the case, I don't see a need to add old fields as part of this effort. |
More clarifications coming from implementation:
|
The tactic id is not new in OpenRTB 2.6. It was introduced in 2.5. |
Removed 'tactic' from the list. Also added this item as discussed in committee
We ought to discuss this. My preference is that the bidder-specific FPD code just handles 'All The Fields' so that I don't have to update the PBS FPD doc with an enumerated list of all fields. But if you all tell me there's no way around this, will submit. |
Discussed again in committee, specifically the topic of new ORTB fields. We agreed to communication to PBS adapters about new 2.6 fields and note that they should remove fields in their adapter if it's a problem for them |
Discussed ORTB 2.6 again in committee today What does ORTB version support really mean with the more frequent updates, e.g. ORTB 2.6-YYYYMMDD?
|
@SyntaxNode @bretg |
@Pubmatic-Dhruv-Sonone - this issue serves as the requirements. What aspect do you think may be missing? If anything, I can see a benefit in adding a reference document on docs.prebid.org summarizing what fields are supported, downgraded, etc.
Do you mean video podding? /auction is the main endpoint where all 2.6 support has been created. No committed timeline on getting rid of /video and moving podding into /auction |
@bretg I was asking about changes related to using new ORTB 2.6 fields in core auction logic and conversion of bidder request (2.5 to 2.6 and vice versa) based on bidder level config (ortb version). |
The auction endpoint has supported some 2.6 fields for many months now. It's rather confusing because there's no such thing as "2.6". We now live in a world where the IAB adds fields every couple of months. I'll draft a docs page that describes which fields are supported by Go/Java and the "downgrade" behavior. |
Note that #3613 has changed the downgrade-to-2.5 procedure. |
Full upgrade/downgrade feature set implemented in PBS-Go v3.0.0. |
OpenRTB 2.6 is open for comment at https://iabtechlab.com/wp-content/uploads/2022/04/OpenRTB-2-6_FINAL.pdf
A field-by-field list of changes below, but here are the high-level changes for Prebid Server:
a. The committee has agreed to move extended locations to the new locations. e.g. source.ext.schain to source.schain.
b. If both new and old locations are seen in a request (e.g. post SRID merge), prefer the new location.
These changes don't all have to come at once.
BidRequest changes in 2.6
imp.ext.prebid.is_rewarded_inventory
. PBS-core and/or several bid adapters will need to be updated to support a transition period where either value could be present. Adapters looking for the extension flag: algorix, bidmachine, pangle, openx, rubicon, unicorn.BidResponse changes in 2.6
The text was updated successfully, but these errors were encountered: