The Konduit Accelerate module applies the Konduit video acceleration optimization to a publisher’s existing Prebid setup. This optimization provides publishers with tools to monetize previously lost revenue and drive higher fill rates on their video inventory.
To install the module, follow these instructions:
Build your Prebid.js package in one of two ways:
Receive an email package from the Prebid Download page.
From the command line, run
gulp build --modules=konduitWrapper,...
Add konduitId as config using setConfig
prebid method (pbjs.setConfig({ konduit: { konduitId: your_konduit_id } })
)
Insert the Konduit module code in the source code of your page.
The module exposes the pbjs.adServers.konduit.processBids
function.
Provide input parameters to the function. (All parameters are shown in the following table.)
Param | Type | Description | Default |
---|---|---|---|
bid | object | Prebid object with VAST URL that should be cached | If the bid parameter is not passed then first winning bid will be used |
bids | array | An array of Prebid objects with VAST URL that should be cached | If the bids parameter is not passed then all received bids will be used |
adUnitCode | string | adUnitCode where a winner bid can be found | - |
timeout | number | Max time to wait for Konduit response with cache key and kCpm data | 1000 |
callback | function | The callback function is called once Konduit caches data for the bid. Arguments of this function are error and bids (error should be null if Konduit request is successful). |
- |
Konduit Accelerate module respects the Prebid enableSendAllBids
flag and supports both ‘Send All Bids’ and ‘Use only the winning bid’ scenarios.
Prebid set the enableSendAllBids
flag to true by default and it can be explicitly disabled in Prebid config if needed.
pbjs.setConfig({
enableSendAllBids: false
});
Please refer to Publisher API Reference (Send All Bids) for more information on the Send All Bids settings.
In order for Konduit’s module to be completely integrated, line item creatives need to be adjusted in GAM. Please contact support@konduit.me for assistance.
In most cases it will be enough to update a creative VAST URL in related GAM line items.
Konduit platform supports the ‘Send all bids’ scenario, but the GAM configuration can differ slightly depending on whether or not this feature is enabled.
If Send all bids is disabled (a single winning bid is used), update the GAM line item creative URL as follows:
https://p.konduit.me/api/vastProxy?konduit_hb=1&konduit_hb_awarded=1&konduit_cache_key=%%PATTERN:k_cache_key%%&konduit_id=%%PATTERN:k_id%%
If Send all bids is enabled, update the GAM line item creative URL as shown here:
https://p.konduit.me/api/vastProxy?konduit_hb=1&konduit_hb_awarded=1&konduit_cache_key=%%PATTERN:k_cache_key_BIDDERCODE%%&konduit_id=%%PATTERN:k_id%%
k_cache_key_BIDDERCODE
is a bidder-specific macro. Replace ‘BIDDERCODE’ with an actual bidder code, such as k_cache_key_appnexus
.
Note that the creative URL contains a few custom macros that allow Konduit platform to combine different data for predictive insights functionality.
Macro name | Example | Comment |
---|---|---|
k_id | %%PATTERN:k_id%% | The macro passes Konduit client id provided in a publisher call back to Konduit platform. Should be used as is. |
konduit_id | %%PATTERN:konduit_id%% | This macro is deprecated and k_id should be used instead |
k_cache_key | %%PATTERN:k_cache_key%% | The macro is passing a cache key so that Konduit platform is able to fetch current bid tag for processing. This macro is recommended for use in a ‘single bid’ mode. In ‘send all bids’ mode it always represents a winning bid. |
konduit_cache_key | %%PATTERN:konduit_cache_key%% | This macro is deprecated and k_cache_key should be used instead |
k_cache_key_BIDDERCODE | %%PATTERN:k_cache_key_rubicon%% | The macro is passing a cache key so that Konduit platform is able to fetch a bidder tag for processing. This macro should be used in a ‘send all bids’ mode. |
Refer to the following documentation for more information on Google Ad Manager setup:
Step By Step Guide to Google Ad Manager Setup
We recommended using the Konduit module function call in the bidsBackHandler
callback function.
pbjs.que.push(function() {
pbjs.setConfig({
konduit: {
konduitId: your_konduit_id,
}
});
pbjs.addAdUnits(videoAdUnits);
pbjs.requestBids({
bidsBackHandler: function(bids) {
var winnerBid = pbjs.getHighestCpmBids('videoAd')[0];
pbjs.adServers.konduit.processBids({
bid: winnerBid,
adUnitCode: videoAdUnit[0].code,
timeout: 1500,
callback: function (error, bids) {
var videoUrl = pbjs.adServers.dfp.buildVideoUrl({
...
});
invokeVideoPlayer(videoUrl);
}
});
}
});
});