Skip to content
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

Major protocol change -- move bidders to imp[].ext.prebid.bidder #1478

Closed
bretg opened this issue Sep 4, 2020 · 7 comments
Closed

Major protocol change -- move bidders to imp[].ext.prebid.bidder #1478

bretg opened this issue Sep 4, 2020 · 7 comments
Labels
breaking change - callers Has breaking API changes for those calling Prebid Server endpoints External API impact Tag for issues and PRs which affect the external API PBS-Java pinned

Comments

@bretg
Copy link
Contributor

bretg commented Sep 4, 2020

The Prebid Server Committee proposes fixing a design flaw from the original Prebid Server:

Request bidder data is currently in imp[].ext.BIDDER. This makes bidder code validations difficult because there may be other attributes in imp[].ext

We propose beginning to shift bidder data to imp[].ext.prebid.bidder.BIDDER. PBS-Go already supports this. Once PBS-Java supports it, we would do the following:

  1. update PBJS's pbsBidAdapter to place bidder data in the revised location
  2. update documentation for storedrequests and storedresponses so host companies start placing the bidder data in the revised location
  3. wait a year and see whether there's stomach to start warning about the original location
  4. wait another year and consider dropping the original location. It will probably take at least that long for people to get off older versions of PBJS.
@bretg bretg added needs review External API impact Tag for issues and PRs which affect the external API breaking change - callers Has breaking API changes for those calling Prebid Server endpoints pinned labels Sep 4, 2020
@SyntaxNode
Copy link
Contributor

SyntaxNode commented Sep 4, 2020

For now, I opened #1479 to add a special case in PBS-Go for parsing imp[].ext.context for the first party data feature and not as a bidder. As a consequence, PBS-Go will not allow 'context' as a bidder/adapter name.

@laurb9
Copy link
Contributor

laurb9 commented Sep 8, 2020

Our mobile team also pointed out the proposed new ext imp[].ext.skadn which, if approved, will need similar treatment. https://github.com/InteractiveAdvertisingBureau/openrtb/blob/c1cec6089b880e5c76c2d9647367a526e4f7d747/extensions/community_extensions/skadnetwork.md

The SDK I expect might take longer to propagate under normal circumstances, but significant change like this could trigger a sea change to take advantage of.

@bretg
Copy link
Contributor Author

bretg commented Feb 11, 2021

This has been done in PBS-Java now. We'll wait a couple of months and then update the PBJS PBS bidadapter to make use of it.

@SyntaxNode
Copy link
Contributor

Discussed in the Prebid Server Committee we will be changing the PBJS side to use the new location starting in version 7.0.

@dgirardi
Copy link
Contributor

dgirardi commented Jun 3, 2022

Validation error messages refer to the "old" location. I get this:

Invalid request: request.imp[0].ext.appnexus failed validation.
(root): Must validate one and only one schema (oneOf)(root): Must validate one and only one schema (oneOf)(root): placementId is required

with this request (to https://prebid.adnxs.com/pbs/v1/openrtb2/auction)

{
  "id": "afe6e9b4-c1ff-490e-b219-b73239f153e3",
  "source": {
    "tid": "af03b69f-b5ca-4d62-b0ea-6d5be08540bb"
  },
  "tmax": 10000,
  "imp": [
    {
      "ext": {
        "data": {
          "adserver": {
            "name": "gam",
            "adslot": "/19968336/header-bid-tag-0"
          },
          "pbadslot": "/19968336/header-bid-tag-0"
        },
        "gpid": "/19968336/header-bid-tag-0",
        "prebid": {
          "bidder": {
            "appnexus": {
              "use_pmt_rule": false
            },
            "rubicon": {}
          }
        }
      },
      "id": "div-gpt-ad-1460505748561-0",
      "banner": {
        "format": [
          {
            "w": 728,
            "h": 90
          },
          {
            "w": 300,
            "h": 250
          }
        ]
      }
    }
  ],
  "test": 0,
  "ext": {
    "prebid": {
      "auctiontimestamp": 1654280199745,
      "targeting": {
        "includewinners": true,
        "includebidderkeys": false
      },
      "channel": {
        "name": "pbjs",
        "version": "v6.29.0-pre"
      },
      "debug": true
    }
  },
  "site": {
    "publisher": {
      "id": "1"
    },
    "page": "http://dgirardi.prebid.org:9999/integrationExamples/gitignored/prebidServer_example.html"
  },
  "device": {
    "w": 1920,
    "h": 215
  }
}

@bretg
Copy link
Contributor Author

bretg commented Nov 18, 2022

Discussed in committee. We'll leave this issue open until the debug/warning/error messages are updated in both platforms.

@bretg
Copy link
Contributor Author

bretg commented Sep 8, 2023

This warning doesn't exist in PBS-Java. Closing.

@bretg bretg closed this as completed Sep 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking change - callers Has breaking API changes for those calling Prebid Server endpoints External API impact Tag for issues and PRs which affect the external API PBS-Java pinned
Projects
Status: Done
Development

No branches or pull requests

4 participants