Back to Publisher API Reference
pbjs.adServers.dfp.buildVideoUrl(options)
The Google Ad Manager implementation of this function requires including the dfpAdServerVideo
module in your Prebid.js build.
This method combines publisher-provided parameters with Prebid.js targeting parameters to build a Google Ad Manager video ad tag URL that can be used by a video player.
Argument Reference
The options
object
Field | Type | Description |
---|---|---|
adUnit |
object | Required. The Prebid ad unit to which the returned URL will map. |
params |
object | Optional. Querystring parameters that will be used to construct the Google Ad Manager video ad tag URL. Publisher-supplied values will override values set by Prebid.js. See below for fields. |
url |
string | Optional. The video ad server URL. When given alongside params, the parsed URL will be overwritten with any matching components of params. |
bid |
object | Optional. The Prebid bid for which targeting will be set. If this is not defined, Prebid will use the bid with the highest CPM for the adUnit. |
One or both of options.params and options.url is required. In other words, you may pass in one, the other, or both, but not neither.
The options.params
object
Field | Type | Description | Example |
---|---|---|---|
iu |
string | Required. Google Ad Manager ad unit ID. | /19968336/prebid_cache_video_adunit |
cust_params |
object | Optional. Key-value pairs merged with Prebid’s targeting values and sent to Google Ad Manager on the video ad tag URL. | {section: "blog", anotherKey: "anotherValue"} |
description_url |
string | Optional. Describes the video. Required for Ad Exchange. Prebid.js will build this for you unless you pass it explicitly. | https://www.example.com |
For more information on any of these params, see the Google Ad Manager video tag documentation.
Examples
There are several different ways to build up your video URL, as shown in the examples below:
Using options.params
only:
pbjs.requestBids({
bidsBackHandler: function(bids) {
var videoUrl = pbjs.adServers.dfp.buildVideoUrl({
adUnit: videoAdUnit,
params: {
iu: '/19968336/prebid_cache_video_adunit',
cust_params: {
section: "blog",
anotherKey: "anotherValue"
},
hl: "en",
output: "xml_vast2",
url: "https://www.example.com",
}
});
invokeVideoPlayer(videoUrl);
}
});
Using options.url
only:
var adserverTag = 'https://pubads.g.doubleclick.net/gampad/ads?'
+ 'sz=640x480&iu=/19968336/prebid_cache_video_adunit&impl=s&gdfp_req=1'
+ '&env=vp&output=xml_vast2&unviewed_position_start=1&hl=en&url=https://www.example.com'
+ '&cust_params=section%3Dblog%26anotherKey%3DanotherValue';
var videoUrl = pbjs.adServers.dfp.buildVideoUrl({
adUnit: videoAdUnit,
url: adserverTag
});
In the event of collisions, querystring values passed via options.params
take precedence over those passed via options.url
.