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

Add ability to append multiple impression trackers as pixels instead of just one (burl) #12216

Open
seanwendt opened this issue Nov 10, 2021 · 6 comments
Assignees

Comments

@seanwendt
Copy link

Is your feature request related to a problem? Please describe.
The OpenRTB specification restricts billable impression notification URLs to a single field "burl", a string which means a single URL. However, many exchanges support multiple URLs, passed via an extension field in the bid response, e.g. seatbid[].bid[].ext.imptrackers:["url1","url2",etc]`. This can be used to ensure that all impression trackers all receive notifications via the same method, in order to avoid discrepancies in measurement.

Describe the solution you'd like
Add the ability to pass multiple (e.g. more than 2) billable impression tracking urls instead of just a single url: https://github.com/prebid/prebid-universal-creative/blob/2e1cbeb7c60a7de11cd6ff54d2b64c2d409237be/src/renderingManager.js#L217-L218

Describe alternatives you've considered
It appears that we could possibly use nurl + burl to inject up to two impression pixels into the adm, but this seems like a poor workaround, especially as "nurl" is a misnomer for how it's used in this context and may not be compatible with all use cases.

@patmmccann
Copy link
Collaborator

#4494

@patmmccann
Copy link
Collaborator

@seanwendt is ext.imptrackers anywhere on the IAB board? Does anyone else know about this location or is it a proposal location?

@patmmccann patmmccann transferred this issue from prebid/prebid-universal-creative Sep 9, 2024
@patmmccann patmmccann moved this from Needs Req to Ready for Dev in Prebid.js Tactical Issues table Sep 9, 2024
@patmmccann
Copy link
Collaborator

Looks like we can do this for the prebid server adapter, if we find additional burls in the proposed location, we can fire them as part of the onBidBillable method.

@dgirardi dgirardi self-assigned this Sep 10, 2024
@lcorrigall
Copy link

lcorrigall commented Sep 11, 2024

PMC: This should be brought to the IAB as a community extension.
seatbid[].bid[].ext.imptrackers is a good name
We should look at other events from Prebid Server and Native and potentially include those as well (e.g. render events )

@dgirardi
Copy link
Collaborator

@bretg
Copy link
Collaborator

bretg commented Sep 19, 2024

How about instead of seatbid[].bid[].ext.imptrackers, we consider seatbid[].bid[].ext.eventtrackers, conforming to how Native 1.2 handles events? This would allow for more flexibility in the future, supporting imps, different flavors of viewable imps, clicks, or other events.

With this model, I would propose changing how Prebid Server registers events. If the PUC supported firing events appropriately, instead of:

seatbid[].bid[].ext.prebid.events: {
   "win":"https://PBSDOMAIN/event?t=win&b=BID&a=22312&aid=AUCTION&ts=1726779089912&bidder=BIDDER&f=i",
   "imp":"https://PBSDOMAIN/event?t=imp&b=BID&a=22312&aid=AUCTION&ts=1726779089912&bidder=BIDDER&f=i"
}

PBS could append them to the eventtrackers array:

seatbid[].bid[].ext.eventtrackers: [{
    type: 500, // win event
    method: 1, // 1x1
    url: "https://PBSDOMAIN/event?t=win&b=BID&a=22312&aid=AUCTION&ts=1726779089912&bidder=BIDDER&f=i"
},{
    type: 1, // imp event
    method: 1, // 1x1
    url: "https://PBSDOMAIN/event?t=imp&b=BID&a=22312&aid=AUCTION&ts=1726779089912&bidder=BIDDER&f=i"
}]

PBS would probably want to support an account-level transitionary config for this. We would open a separate issue in that repo if approved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Ready for Dev
Development

No branches or pull requests

5 participants