prebid / prebid-server

Open-source solution for running real-time advertising auctions in the cloud.
https://prebid.org/product-suite/prebid-server/
Apache License 2.0
436 stars 744 forks source link

Passing userIds to Prebid Server using AMP #1404

Open ian-lr opened 4 years ago

ian-lr commented 4 years ago

It is not currently possible to pass userIds (e.g. user.ext.eids) to Prebid Server via AMP. While cookie-based syncs are enabled with the amp-iframe, this limits the information available to bidders processing requests from AMP pages. Given the growing popularity of both userIds and AMP, this seems like a good opportunity to extend Prebid Server capability.

Acceptance Criteria

Note, as AMP-RTC does not support eids , userIDs will likely need to be added to the query string or through some other Prebid-specific interface. A potential strawman follows.

<amp-iframe width="1" title="User Sync with eids"
  height="1"
  sandbox="allow-scripts"
  frameborder="0"
  src="https://<PBSERVER_DOMAIN>/load-cookie.html?endpoint=appnexus&max_sync_count=5&eids=%5B%7B%22source%22%3A%22liveramp.com%22%2C%22uids%22%3A%5B%7B%22id%22%3A%22AovIJXGIWHHMhHyOeQiDk0_rtTQ--fVkmWU7xftkAh9rxgUeLHBcsoUE6gdZwFFYmvAJXw%22%2C%22atype%22%3A1%7D%5D%7D%5D">
  <amp-img layout="fill" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" placeholder></amp-img>
</amp-iframe>
bretg commented 11 months ago

You're right, it goes under user, not user.data. Fixed.

As for timeline, we'll discuss in this week's Prebid Server committee meeting with the aim to mark as 'ready-for-dev'. Then anyone in the community could contribute the code to either code base.

Otherwise, this is not likely to be a high priority for any of the main project teams to build, so might take a while unless the Prebid Publisher committee makes a special request.

jdelhommeau commented 11 months ago

Hi @bretg ,

I see this was moved to "ready for dev" which I take it as good news :) To clarify what you said last time, now that it is "ready to dev" it means that either someone from community (for example me) does the dev and make a pull request, which will be reviewed and eventually validated and it is done. If nobody form community volounteer to do the code, then main projects teams could evaluate doing it, but it is unlikely to take priority compared to other projects already in scope.

Correct?

bretg commented 11 months ago

@jdelhommeau - correct. Your pull request would be welcome.