diff --git a/_posts/2017-09-25-announcing-prebid-1.0.md b/_posts/2017-09-25-announcing-prebid-1.0.md index 930377474d..06047bbf88 100644 --- a/_posts/2017-09-25-announcing-prebid-1.0.md +++ b/_posts/2017-09-25-announcing-prebid-1.0.md @@ -33,7 +33,7 @@ As a **publisher**, you can look forward to the following when adopting Prebid.j ## What's next -We have already created the [1.0 branch](https://github.com/prebid/Prebid.js/tree/prebid-1.0). We expect to merge this to master once we have enough support from demand adapters. The tentative date to *release to master is October 23rd 2017.* +We've released [Prebid 1.0!](https://github.com/prebid/Prebid.js/releases/tag/1.0.0) Download or build it now from master! ## How to get involved @@ -48,4 +48,4 @@ Prebid 1.0 Documentation: As always, we love PRs. Thanks for contributing. -By [Matt Kendall](https://github.com/mkendall07), Engineer Manager @ AppNexus. \ No newline at end of file +By [Matt Kendall](https://github.com/mkendall07), PMC Chair, Prebid.js & Engineering Manager, AppNexus. diff --git a/_posts/2017-12-11-prebid-1-is-released.md b/_posts/2017-12-11-prebid-1-is-released.md new file mode 100644 index 0000000000..364133bd24 --- /dev/null +++ b/_posts/2017-12-11-prebid-1-is-released.md @@ -0,0 +1,25 @@ +--- +layout: post +title: Prebid.js 1.0 is Released! +head_title: Announcing the release of Prebid.js 1.0 +description: This week, we're pleased to announce the release of Prebid.js 1.0 +permalink: /blog/prebid-1-is-released +--- + +We're pleased to announce the release of [Prebid.js 1.0!](https://github.com/prebid/Prebid.js/releases/tag/1.0.0) [Download it]({{site.baseurl}}/download.html) or [build it from master](https://github.com/prebid/Prebid.js/blob/master/README.md#Build)! + +As a publisher, you can look forward to the following improvements when adopting Prebid.js 1.0: + +- Universal ad unit type support for [native](http://prebid.org/dev-docs/show-native-ads.html), [video](http://prebid.org/dev-docs/show-video-with-a-dfp-video-tag.html), and banner +- Faster performance due to using fewer JS libraries and simplifying adapter code +- Module integrations that support things like: + - [*Multiple currencies*]({{site.baseurl}}/dev-docs/modules/currency.html) + - [*User syncing*]({{site.baseurl}}/dev-docs/publisher-api-reference.html#setConfig-Configure-User-Syncing) + - [*Simplified config APIs*]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.setConfig) +- Better support for single page applications/sites (concurrency) +- Better [size mapping and responsive site support](http://prebid.org/dev-docs/publisher-api-reference.html#setConfig-Configure-Responsive-Ads) + +For more information, see: + +- [Prebid 1.0 Publisher API Changes]({{site.baseurl}}/dev-docs//prebid-1.0-API.html): A complete list of all 1.0 API changes +- [Publisher API Reference]({{site.baseurl}}/dev-docs/publisher-api-reference.html): Updated to mark all deprecated methods that are no longer available in version 1.0 diff --git a/dev-docs/bidders.md b/dev-docs/bidders.md index a9e7807955..a07a3ec0cb 100644 --- a/dev-docs/bidders.md +++ b/dev-docs/bidders.md @@ -66,6 +66,7 @@ The following parameters in the `bidResponse` object are common across all bidde | `height` | Integer | Height of the bid creative in pixels | `250` | | `adTag` | String | Creative's payload in HTML | `""` | + ## Bidders with Video and Native Demand @@ -74,6 +75,7 @@ The following parameters in the `bidResponse` object are common across all bidde {: .table .table-bordered .table-striped } | Bidder | Supported Media Types | |-----------------+-----------------------| +| adkernelAdn | 'video' | | adkernel | 'video' | | admixer | 'video' | | adxcg | 'video', 'native' | @@ -84,9 +86,12 @@ The following parameters in the `bidResponse` object are common across all bidde | conversant | 'video' | | getintent | 'video' | | indexExchange | 'video' | +| optimatic | 'video' | | pulsepointLite | 'native' | +| readpeak | 'native' | | rhythmone | 'video' | | rubicon | 'video' | +| sekindoUM | 'video' | | spotx | 'video' | | tremor | 'video' | | unruly | 'video' | @@ -99,15 +104,15 @@ The following parameters in the `bidResponse` object are common across all bidde Demand from the bidders listed below is available via the [Prebid Server integration]({{site.baseurl}}/dev-docs/get-started-with-prebid-server.html). -- [appnexus](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L598) -- [districtm](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L599) -- [indexExchange](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L600) -- [pubmatic](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L601) -- [pulsepoint](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L602) -- [rubicon](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L603) -- [audienceNetwork](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L605) -- [lifestreet](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L606) - +- [appnexus](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L740) +- [districtm](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L741) +- [indexExchange](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L742) +- [pubmatic](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L743) +- [pulsepoint](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L744) +- [rubicon](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L745) +- [audienceNetwork](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L747) +- [lifestreet](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L748) +- [conversant](https://github.com/prebid/prebid-server/blob/master/pbs_light.go#L749) {% for page in bidder_pages %} diff --git a/dev-docs/bidders/33across.md b/dev-docs/bidders/33across.md index a33c274d6d..d01440782e 100644 --- a/dev-docs/bidders/33across.md +++ b/dev-docs/bidders/33across.md @@ -2,16 +2,12 @@ layout: bidder title: 33Across description: Prebid 33Across Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: 33across - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/a4g.md b/dev-docs/bidders/a4g.md index 0bac3120ae..a5f714bfde 100644 --- a/dev-docs/bidders/a4g.md +++ b/dev-docs/bidders/a4g.md @@ -7,6 +7,7 @@ nav_section: reference hide: true biddercode: a4g biddercode_longer_than_12: false +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/adbutler.md b/dev-docs/bidders/adbutler.md index 9441fc5a33..c6e63c59f3 100644 --- a/dev-docs/bidders/adbutler.md +++ b/dev-docs/bidders/adbutler.md @@ -2,16 +2,12 @@ layout: bidder title: AdButler description: Prebid AdButler Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: adbutler - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/adkernel.md b/dev-docs/bidders/adkernel.md index c01fee649f..7108f1dcce 100644 --- a/dev-docs/bidders/adkernel.md +++ b/dev-docs/bidders/adkernel.md @@ -7,6 +7,7 @@ nav_section: reference hide: true biddercode: adkernel biddercode_longer_than_12: false +prebid_1_0_supported : true --- ### Note: diff --git a/dev-docs/bidders/adxcg.md b/dev-docs/bidders/adxcg.md index b4619bce8a..089a6f72ce 100644 --- a/dev-docs/bidders/adxcg.md +++ b/dev-docs/bidders/adxcg.md @@ -7,6 +7,7 @@ nav_section: reference hide: true biddercode: adxcg biddercode_longer_than_12: false +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/appnexus-ast.md b/dev-docs/bidders/appnexus-ast.md index 7b31921ea2..82f6973090 100644 --- a/dev-docs/bidders/appnexus-ast.md +++ b/dev-docs/bidders/appnexus-ast.md @@ -7,6 +7,7 @@ nav_section: reference hide: true biddercode: appnexusAst biddercode_longer_than_12: false +prebid_1_0_supported : false --- Advantages of using the `appnexusAst` adapter over the `appnexus` diff --git a/dev-docs/bidders/appnexus.md b/dev-docs/bidders/appnexus.md index a658f863a0..2a6ed65135 100644 --- a/dev-docs/bidders/appnexus.md +++ b/dev-docs/bidders/appnexus.md @@ -7,6 +7,7 @@ nav_section: reference biddercode: appnexus biddercode_longer_than_12: false hide: true +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/arteebee.md b/dev-docs/bidders/arteebee.md new file mode 100644 index 0000000000..d5450262f0 --- /dev/null +++ b/dev-docs/bidders/arteebee.md @@ -0,0 +1,21 @@ +--- +layout: bidder +title: Arteebee +description: Prebid Arteebee Bidder Adaptor +top_nav_section: dev_docs +nav_section: reference +hide: true +biddercode: arteebee +biddercode_longer_than_12: false +prebid_1_0_supported : true +--- + +### bid params + +{: .table .table-bordered .table-striped } + +| Name | Scope | Description | Example | +| :--- | :---- | :---------- | :------ | +| pub | required | RTB publisher id | `'prebidtest'` | +| source | required | RTB traffic source id | `'prebidtest'` | +| coppa | optional | flag this request subject to COPPA | `1` | \ No newline at end of file diff --git a/dev-docs/bidders/audienceNetwork.md b/dev-docs/bidders/audienceNetwork.md index fa23fbbda2..b87bfae57f 100644 --- a/dev-docs/bidders/audienceNetwork.md +++ b/dev-docs/bidders/audienceNetwork.md @@ -7,7 +7,7 @@ nav_section: reference hide: true biddercode: audienceNetwork biddercode_longer_than_12: true - +prebid_1_0_supported : true --- #### send all bids ad server keys diff --git a/dev-docs/bidders/beachfront.md b/dev-docs/bidders/beachfront.md index b2bc9f200d..470d1a26fb 100644 --- a/dev-docs/bidders/beachfront.md +++ b/dev-docs/bidders/beachfront.md @@ -7,6 +7,7 @@ nav_section: reference hide: true biddercode: beachfront biddercode_longer_than_12: false +prebid_1_0_supported : true --- ### Note: diff --git a/dev-docs/bidders/bridgewell.md b/dev-docs/bidders/bridgewell.md new file mode 100644 index 0000000000..71b3df7b23 --- /dev/null +++ b/dev-docs/bidders/bridgewell.md @@ -0,0 +1,19 @@ +--- +layout: bidder +title: Bridgewell +description: Prebid Bridgewell Bidder Adaptor +top_nav_section: dev_docs +nav_section: reference +hide: true +biddercode: bridgewell +biddercode_longer_than_12: false +prebid_1_0_supported : true +--- + +### bid params + +{: .table .table-bordered .table-striped } + +| Name | Scope | Description | Example | +| :--- | :---- | :---------- | :------ | +| `ChannelID` | required | The channel ID from Bridgewell. | `CgUxMjMzOBIBNiIFcGVubnkqCQisAhD6ARoBOQ` | \ No newline at end of file diff --git a/dev-docs/bidders/conversant.md b/dev-docs/bidders/conversant.md index 979d74c4a2..a4ee52709c 100644 --- a/dev-docs/bidders/conversant.md +++ b/dev-docs/bidders/conversant.md @@ -2,15 +2,12 @@ layout: bidder title: Conversant description: Prebid Conversant Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: conversant biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/featureforward.md b/dev-docs/bidders/featureforward.md index 367a1906d1..e463c67b80 100644 --- a/dev-docs/bidders/featureforward.md +++ b/dev-docs/bidders/featureforward.md @@ -10,11 +10,7 @@ hide: true biddercode: featureforward -aliasCode : appnexus - biddercode_longer_than_12: true - - --- ### bid params @@ -22,6 +18,7 @@ biddercode_longer_than_12: true {: .table .table-bordered .table-striped } | Name | Scope | Description | Example | |:-----------|:---------|:------------|:-----------------| -| `placementId` | required | | | +| `pubId` | required | unique identifier per publisher, number range 1-999 | '32' | +| `siteId` | required | unique identifier per publisher site, number range 1-999 | '01' | +| `placementId` | required | unique identifier per placement per publisher site, ranges from 0-9 | '3' | -Feature Forward is an aliased bidder for AppNexus diff --git a/dev-docs/bidders/fidelity.md b/dev-docs/bidders/fidelity.md index 2e348b6cd5..4689ffd556 100644 --- a/dev-docs/bidders/fidelity.md +++ b/dev-docs/bidders/fidelity.md @@ -7,6 +7,7 @@ nav_section: reference hide: true biddercode: fidelity biddercode_longer_than_12: false +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/getintent.md b/dev-docs/bidders/getintent.md index aef5329d71..0abb6fca04 100644 --- a/dev-docs/bidders/getintent.md +++ b/dev-docs/bidders/getintent.md @@ -2,16 +2,12 @@ layout: bidder title: GetIntent description: Prebid GetIntent Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: getintent - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/huddledmasses.md b/dev-docs/bidders/huddledmasses.md index 1894317a2f..4cce6cc8d7 100644 --- a/dev-docs/bidders/huddledmasses.md +++ b/dev-docs/bidders/huddledmasses.md @@ -7,6 +7,7 @@ nav_section: reference hide: true biddercode: huddledmasses biddercode_longer_than_12: false +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/jcartermarketing.md b/dev-docs/bidders/jcartermarketing.md index 0b94f43d37..db2c396e76 100644 --- a/dev-docs/bidders/jcartermarketing.md +++ b/dev-docs/bidders/jcartermarketing.md @@ -2,17 +2,12 @@ layout: bidder title: J Carter Marketing description: Prebid J Carter Marketing Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: jcm - biddercode_longer_than_12: false - - +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/justpremium.md b/dev-docs/bidders/justpremium.md index 53059f1b9d..474f56200e 100644 --- a/dev-docs/bidders/justpremium.md +++ b/dev-docs/bidders/justpremium.md @@ -2,16 +2,12 @@ layout: bidder title: Justpremium description: Prebid Justpremium Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: justpremium - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/kargo.md b/dev-docs/bidders/kargo.md index b90c58fbed..783346145a 100644 --- a/dev-docs/bidders/kargo.md +++ b/dev-docs/bidders/kargo.md @@ -2,17 +2,12 @@ layout: bidder title: Kargo description: Prebid Kargo Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: kargo - biddercode_longer_than_12: false - - +prebid_1_0_supported : true --- ### Note: diff --git a/dev-docs/bidders/komoona.md b/dev-docs/bidders/komoona.md index 6837b57c85..0cee659dbf 100644 --- a/dev-docs/bidders/komoona.md +++ b/dev-docs/bidders/komoona.md @@ -2,16 +2,12 @@ layout: bidder title: Komoona description: Prebid Komoona Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: komoona - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/kumma.md b/dev-docs/bidders/kumma.md index 9933bd2232..d9cdeb4fca 100644 --- a/dev-docs/bidders/kumma.md +++ b/dev-docs/bidders/kumma.md @@ -1,24 +1,21 @@ ---- -layout: bidder -title: Kumma -description: Prebid Kumma Bidder Adapter - -top_nav_section: dev_docs -nav_section: reference - -hide: true - -biddercode: kumma - -biddercode_longer_than_12: false - - ---- - -### bid params - -{: .table .table-bordered .table-striped } -| Name | Scope | Description | Example | -| :------------- | :------- | :---------------------------------- | :------ | -| `pubId` | required | The publisher account ID | `37054` | -| `siteId` | required | The publisher site ID | `123` | \ No newline at end of file +--- +layout: bidder +title: Kumma +description: Prebid Kumma Bidder Adapter +top_nav_section: dev_docs +nav_section: reference +hide: true +biddercode: kumma +biddercode_longer_than_12: false +prebid_1_0_supported : true +--- + +### bid params + +{: .table .table-bordered .table-striped } +| Name | Scope | Description | Example | +| :------------- | :------- | :---------------------------------- | :------ | +| `pubId` | required | The publisher account ID | `55879` | +| `siteId` | required | The publisher site ID | `26047` | +| `placementId` | optional | The publisher placement ID | `17394` | +| `bidFloor` | optional | The bid floor | `0.001` | \ No newline at end of file diff --git a/dev-docs/bidders/mobfox.md b/dev-docs/bidders/mobfox.md index cb61238937..c329b481d6 100644 --- a/dev-docs/bidders/mobfox.md +++ b/dev-docs/bidders/mobfox.md @@ -2,17 +2,12 @@ layout: bidder title: MobFox description: Prebid MobFox Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: mobfox - biddercode_longer_than_12: false - - +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/openx.md b/dev-docs/bidders/openx.md index a1e18a54e7..40d591163e 100644 --- a/dev-docs/bidders/openx.md +++ b/dev-docs/bidders/openx.md @@ -2,16 +2,12 @@ layout: bidder title: OpenX description: Prebid OpenX Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: openx - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/optimatic.md b/dev-docs/bidders/optimatic.md new file mode 100644 index 0000000000..7ac7377143 --- /dev/null +++ b/dev-docs/bidders/optimatic.md @@ -0,0 +1,24 @@ +--- +layout: bidder +title: Optimatic +description: Prebid Optimatic Bidder Adaptor +top_nav_section: dev_docs +nav_section: reference +hide: true +biddercode: optimatic +biddercode_longer_than_12: false +prebid_1_0_supported : true +--- + +### Note: + +Optimatic adapter only supports video ads. + +### bid params + +{: .table .table-bordered .table-striped } + +| Name | Scope | Description | Example | +| :------- | :------- | :---------------------- | :--------------- | +| placement | required | Optimatic Placement ID | `'2chy7Gc2eSQL'` | +| bidfloor | required | Bid floor | `2.00` | diff --git a/dev-docs/bidders/platformio.md b/dev-docs/bidders/platformio.md index cd7c60734f..0cdcf08dc5 100644 --- a/dev-docs/bidders/platformio.md +++ b/dev-docs/bidders/platformio.md @@ -2,17 +2,12 @@ layout: bidder title: Platform.io description: Prebid Platform.io Bidder Adapter - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: platformio - biddercode_longer_than_12: false - - +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/pollux.md b/dev-docs/bidders/pollux.md index 57735f66e5..619cbc2b0d 100644 --- a/dev-docs/bidders/pollux.md +++ b/dev-docs/bidders/pollux.md @@ -2,16 +2,12 @@ layout: bidder title: Pollux Network description: Prebid Pollux Network Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: pollux - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/prebidServer.md b/dev-docs/bidders/prebidServer.md index 50b5e53479..5f0039489a 100644 --- a/dev-docs/bidders/prebidServer.md +++ b/dev-docs/bidders/prebidServer.md @@ -7,6 +7,7 @@ nav_section: reference biddercode: prebidServer biddercode_longer_than_12: true hide: true +prebid_1_0_supported : true --- ### Sign up diff --git a/dev-docs/bidders/pulsepoint.md b/dev-docs/bidders/pulsepoint.md index 00e5bd3426..d1f08016bd 100644 --- a/dev-docs/bidders/pulsepoint.md +++ b/dev-docs/bidders/pulsepoint.md @@ -2,16 +2,12 @@ layout: bidder title: PulsePoint description: Prebid PulsePoint Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: pulsepoint - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/pulsepointlite.md b/dev-docs/bidders/pulsepointlite.md index 80ee6ec8be..c4a00ccc31 100644 --- a/dev-docs/bidders/pulsepointlite.md +++ b/dev-docs/bidders/pulsepointlite.md @@ -8,7 +8,7 @@ nav_section: reference hide: true -biddercode: pulseLite +biddercode: pulsepointLite biddercode_longer_than_12: true diff --git a/dev-docs/bidders/quantcast.md b/dev-docs/bidders/quantcast.md index da3c91f6be..6aaae3085e 100644 --- a/dev-docs/bidders/quantcast.md +++ b/dev-docs/bidders/quantcast.md @@ -2,16 +2,12 @@ layout: bidder title: Quantcast description: Prebid Quantcast Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: quantcast - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/readpeak.md b/dev-docs/bidders/readpeak.md new file mode 100644 index 0000000000..8f361f1363 --- /dev/null +++ b/dev-docs/bidders/readpeak.md @@ -0,0 +1,24 @@ +--- +layout: bidder +title: ReadPeak +description: ReadPeak Bidder Adaptor + +top_nav_section: dev_docs +nav_section: reference + +hide: true + +biddercode: readpeak + +biddercode_longer_than_12: false + +--- + + +### bid params + +{: .table .table-bordered .table-striped } +| Name | Scope | Description | Example | +| :--- | :---- | :---------- | :------ | +| `publisherId` | required | Publisher ID provided by ReadPeak | `11bc5dd5-7421-4dd8-c926-40fa653bec76` | +| `bidfloor` | optional | CPM Bid Floor | `0.5` | diff --git a/dev-docs/bidders/rhythmone.md b/dev-docs/bidders/rhythmone.md index 0086f541e2..210cc069c1 100644 --- a/dev-docs/bidders/rhythmone.md +++ b/dev-docs/bidders/rhythmone.md @@ -2,16 +2,12 @@ layout: bidder title: RhythmOne description: Prebid RhythmOne Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: rhythmone - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/rtbdemand.md b/dev-docs/bidders/rtbdemand.md new file mode 100644 index 0000000000..6824ede652 --- /dev/null +++ b/dev-docs/bidders/rtbdemand.md @@ -0,0 +1,20 @@ +--- +layout: bidder +title: Rtbdemand bidder +description: Prebid Rtbdemand Media Bidder Adapter +top_nav_section: dev_docs +nav_section: reference +hide: true +biddercode: rtbdemand +biddercode_longer_than_12: false +--- + +### bid params + +{: .table .table-bordered .table-striped } + +| Name | Scope | Description | Example | +| :------| :--------| :--------------------------------------------------| :------------------------------------| +| zoneid | required | The ad zone or tag specific ID | `"9999"` | +| floor | optional | The floor CPM price for the request | `0.1234` | +| server | optional | Bidder domain | `"bidding.rtbdemand.com" by default` | diff --git a/dev-docs/bidders/rubicon.md b/dev-docs/bidders/rubicon.md index 7f5a32fb7a..937faa355a 100644 --- a/dev-docs/bidders/rubicon.md +++ b/dev-docs/bidders/rubicon.md @@ -2,16 +2,12 @@ layout: bidder title: Rubicon description: Prebid Rubicon Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: rubicon - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/sekindo.md b/dev-docs/bidders/sekindo.md index f39daac20f..78dd301ee5 100644 --- a/dev-docs/bidders/sekindo.md +++ b/dev-docs/bidders/sekindo.md @@ -2,17 +2,12 @@ layout: bidder title: Sekindo description: Prebid Sekindo Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: sekindoUM - biddercode_longer_than_12: false - - +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/serverbid.md b/dev-docs/bidders/serverbid.md index c3c9511db4..94e47aa884 100644 --- a/dev-docs/bidders/serverbid.md +++ b/dev-docs/bidders/serverbid.md @@ -2,16 +2,13 @@ layout: bidder title: Serverbid description: Prebid Serverbid Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: serverbid - biddercode_longer_than_12: false -prebid_1_0_supported: true + +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/sharethrough.md b/dev-docs/bidders/sharethrough.md index 2959b4a98e..4c6023447c 100644 --- a/dev-docs/bidders/sharethrough.md +++ b/dev-docs/bidders/sharethrough.md @@ -2,16 +2,12 @@ layout: bidder title: Sharethrough description: Prebid Sharethrough Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: sharethrough - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- ### Note: diff --git a/dev-docs/bidders/somoaudience.md b/dev-docs/bidders/somoaudience.md new file mode 100644 index 0000000000..ec4aee6653 --- /dev/null +++ b/dev-docs/bidders/somoaudience.md @@ -0,0 +1,23 @@ +--- +layout: bidder +title: Somo Audience +description: Somo Audience Bidder Adapter + +top_nav_section: dev_docs +nav_section: reference + +hide: true + +biddercode: somoaudience + +biddercode_longer_than_12: false + +--- + + +### bid params + +{: .table .table-bordered .table-striped } +| Name | Scope | Description | Example | +| :--- | :---- | :---------- | :------ | +| `placementId` | required | Placement ID provided by Somo Audience | `22a58cfb0c9b656bff713d1236e930e8` | diff --git a/dev-docs/bidders/sovrn.md b/dev-docs/bidders/sovrn.md index 79028501d6..ba4a0d5921 100644 --- a/dev-docs/bidders/sovrn.md +++ b/dev-docs/bidders/sovrn.md @@ -2,16 +2,12 @@ layout: bidder title: Sovrn description: Prebid Sovrn Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: sovrn - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/trion.md b/dev-docs/bidders/trion.md index 0295552634..0d924a560a 100644 --- a/dev-docs/bidders/trion.md +++ b/dev-docs/bidders/trion.md @@ -2,16 +2,12 @@ layout: bidder title: Trion Interactive description: Prebid Trion Interactive Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: trion - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/trustx.md b/dev-docs/bidders/trustx.md index 598424fd1c..1e559ac147 100755 --- a/dev-docs/bidders/trustx.md +++ b/dev-docs/bidders/trustx.md @@ -2,16 +2,12 @@ layout: bidder title: TrustX description: Prebid Trustx Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: trustx - biddercode_longer_than_12: false - +prebid_1_0_supported : true --- diff --git a/dev-docs/bidders/underdogmedia.md b/dev-docs/bidders/underdogmedia.md index f757efcdaa..0dc3c411bb 100644 --- a/dev-docs/bidders/underdogmedia.md +++ b/dev-docs/bidders/underdogmedia.md @@ -2,17 +2,12 @@ layout: bidder title: Underdog Media description: Prebid Underdog Media Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: underdogmedia - biddercode_longer_than_12: true - - +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/bidders/undertone.md b/dev-docs/bidders/undertone.md new file mode 100644 index 0000000000..9e06cb6f99 --- /dev/null +++ b/dev-docs/bidders/undertone.md @@ -0,0 +1,21 @@ +--- +layout: bidder +title: Undertone +description: Prebid undertone Bidder Adaptor +top_nav_section: dev_docs +nav_section: reference +hide: true +biddercode: undertone +biddercode_longer_than_12: false +prebid_1_0_supported : true +--- + + + +### bid params + +{: .table .table-bordered .table-striped } +| Name | Scope | Description | Example | +| :--- | :---- | :---------- | :------ | +| `placementId` | required | Your placement ID (provided by undertone) | `10433394` | +| `publisherId` | required | publisher ID (provided by undertone) | 12345 | diff --git a/dev-docs/bidders/vertamedia.md b/dev-docs/bidders/vertamedia.md index 8413fcd164..40b5b70ed6 100644 --- a/dev-docs/bidders/vertamedia.md +++ b/dev-docs/bidders/vertamedia.md @@ -2,17 +2,12 @@ layout: bidder title: Vertamedia description: Prebid Vertamedia Bidder Adaptor - top_nav_section: dev_docs nav_section: reference - hide: true - biddercode: vertamedia - biddercode_longer_than_12: false - - +prebid_1_0_supported : true --- ### bid params diff --git a/dev-docs/get-started-with-prebid-server.md b/dev-docs/get-started-with-prebid-server.md index 9a41d46097..f54b76679c 100644 --- a/dev-docs/get-started-with-prebid-server.md +++ b/dev-docs/get-started-with-prebid-server.md @@ -109,6 +109,9 @@ We recommend that users leave `cookieSet` enabled since it's essential for serve If you are using Prebid Server and you want to show video ads, you must use [OpenRTB video parameters](https://www.iab.com/guidelines/real-time-bidding-rtb-project/) in your Prebid ad unit as shown below. +{: .alert.alert-warning :} +The `mimes` parameter is required by OpenRTB. For all other parameters, check with your server-side header bidding partner. + ```javascript var adUnit1 = { code: 'videoAdUnit', diff --git a/dev-docs/modules/currency.md b/dev-docs/modules/currency.md index c1df99eea9..f6aad9f2a8 100644 --- a/dev-docs/modules/currency.md +++ b/dev-docs/modules/currency.md @@ -4,6 +4,8 @@ title: Module - Currency description: Converts bids to the ad server currency top_nav_section: dev_docs nav_section: modules +module_code : currency +display_name : Currency ---
diff --git a/dev-docs/modules/dfp_express.md b/dev-docs/modules/dfp_express.md index fed5476cfc..7e36a5a71f 100644 --- a/dev-docs/modules/dfp_express.md +++ b/dev-docs/modules/dfp_express.md @@ -4,6 +4,8 @@ title: Module - DFP Express description: Simplified installation mechanism for publishers that have DFP in their pages top_nav_section: dev_docs nav_section: modules +module_code : express +display_name : DFP Express ---
diff --git a/dev-docs/modules/dfp_video.md b/dev-docs/modules/dfp_video.md new file mode 100644 index 0000000000..b802951188 --- /dev/null +++ b/dev-docs/modules/dfp_video.md @@ -0,0 +1,33 @@ +--- +layout: page +title: Module - DFP Video +description: Addition of DFP Video to the Prebid package +top_nav_section: dev_docs +nav_section: modules +module_code : dfpAdServerVideo +display_name : DFP Video +--- + +
+ +# DFP Video +{:.no_toc} + +This module is required to use the Prebid Instream video examples with DFP Adserver. For instructions showing how to add this module to Prebid.js, see below. + +### Step 1: Prepare the base Prebid file as usual + +The standard options: + +- Build from a locally-cloned git repo +- Receive the email package from the Prebid [Download]({{site.baseurl}}/download.html) page + +### Step 2: Integrate into your prebid.js configuration + +The method exposes the [`pbjs.adServers.dfp.buildVideoUrl`]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.adServers.dfp.buildVideoUrl) method to use. For an example, see the DFP video guide linked below. + +## Further Reading + ++ [Show Video Ads with DFP]({{site.baseurl}}/dev-docs/show-video-with-a-dfp-video-tag.html) + +
\ No newline at end of file diff --git a/dev-docs/modules/digitrust.md b/dev-docs/modules/digitrust.md index f9b44340f8..d86cec35fd 100644 --- a/dev-docs/modules/digitrust.md +++ b/dev-docs/modules/digitrust.md @@ -4,6 +4,8 @@ title: Module - DigiTrust description: Addition of DigiTrust to the Prebid package top_nav_section: dev_docs nav_section: modules +module_code : digitTrust +display_name : DigiTrust ---
diff --git a/dev-docs/modules/index.md b/dev-docs/modules/index.md index bb2d53bd12..17ffa2e2cf 100644 --- a/dev-docs/modules/index.md +++ b/dev-docs/modules/index.md @@ -37,6 +37,7 @@ If you are looking for bidder adapter parameters, see [Bidders' Params]({{site.b | [**DFP Express**]({{site.baseurl}}/dev-docs/modules/dfp_express.html) | A simplified installation mechanism for publishers that have DoubleClick Google Publisher Tag (GPT) ad calls in their pages. | | [**DigiTrust**]({{site.baseurl}}/dev-docs/modules/digitrust.html) | A method of including the standard cross-domain ID in a DigiTrust package. | | [**Server-to-Server Testing**]({{site.baseurl}}/dev-docs/modules/s2sTesting.html) | Adds A/B test support for easing into server-side header bidding. | +| [**DFP Video**]({{site.baseurl}}/dev-docs/modules/dfp_video.html) | Required for serving instream video through DFP. | ## Further Reading diff --git a/dev-docs/modules/s2sTesting.md b/dev-docs/modules/s2sTesting.md index 5ec61b98f3..ab5696760e 100644 --- a/dev-docs/modules/s2sTesting.md +++ b/dev-docs/modules/s2sTesting.md @@ -1,9 +1,11 @@ --- layout: page -title: Module - Prebid Server Testing +title: Module - Server-to-Server Testing description: Adds A/B test support to ease analysis of server-side header bidding top_nav_section: dev_docs nav_section: modules +module_code : s2sTesting +display_name : Server-to-Server Testing ---
@@ -19,20 +21,20 @@ additional options for controlling how requests are sent: * Global A/B control - defines what percent of requests should be satisfied via the server and which by the traditional client-based method. This is cross AdUnit-configuration. * AdUnit A/B control - the ratio of server-to-client requests can be overridden at the AdUnit level. -The package is built by specifying the s2sTesting module on the build command. For example: +The package is built by specifying the `s2sTesting` module on the build command. For example: ``` gulp build --modules=rubiconBidAdapter,appnexusAstBidAdapter,prebidServerBidAdapter,s2sTesting ``` -The expectation is the s2sTesting module will used for a limited period. +The expectation is the Server-to-Server Testing module will used for a limited period. During the test period, the publisher analyzes metrics from various places to gauge the impact of moving header bidding to the server. After the test period is complete, regardless of outcome, A/B testing would be turned off and this module no longer included in the PrebidJS build. ## Features -With the s2sTesting module, the following enhancements are provided: +With the Server-to-Server Testing module, the following enhancements are provided: New 'bidderControl' options in s2sConfig. E.g. diff --git a/dev-docs/prebid-1.0-API.md b/dev-docs/prebid-1.0-API.md index d6a4f6b0c4..6f2eb44d69 100644 --- a/dev-docs/prebid-1.0-API.md +++ b/dev-docs/prebid-1.0-API.md @@ -12,91 +12,111 @@ hide: false # Prebid 1.0 Publisher API Changes {:.no_toc} -This document describes the changes to the Publisher API for version 1.0. +This document describes the changes to the Publisher API for Prebid.js version 1.0. * TOC {:toc} -## Deprecations -The following functions/variables are removed as part of 1.0. +## Removed Functions and Variables -- All `pbjs._*` varaibles will be depracated as part of 1.0. This includes the following +The following functions and variables will be removed in 1.0: + +- All `pbjs._*` variables, including: - `pbjs._winningBids` - `pbjs._bidsReceived` - `pbjs._bidsRequested` - `pbjs._adUnitCodes` - `pbjs._adsReceived` - `pbjs.cbTimeout` -- `pbjs.addCallback` & `pbjs.removeCallback` in favor of [onEvent API](http://prebid.org/dev-docs/publisher-api-reference.html#module_pbjs.onEvent). +- `pbjs.addCallback` and `pbjs.removeCallback` in favor of the [onEvent API]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.onEvent) - `pbjs.allBidsAvailable` -- `pbjs.buildMasterVideoTagFromAdserverTag` in favor of `pbjs.adServers.dfp.buildVideoUrl` -- `adUnit.sizeMapping` - see below for [details on sizeConfig]({{site.baseurl}}/dev-docs/prebid-1.0-API.html#size-mapping-changes) - -Other methods are removed as part of the `setConfig` API - see below `pbjs.setConfig` for details. +- `pbjs.buildMasterVideoTagFromAdserverTag` in favor of [`pbjs.adServers.dfp.buildVideoUrl`]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.adServers.dfp.buildVideoUrl) +- `adUnit.sizeMapping` in favor of [`pbjs.setConfig({sizeConfig:[ ... ]})`]({{site.baseurl}}/dev-docs/prebid-1.0-API.html#size-mapping-changes) -## New API - `pbjs.setConfig` +Other methods are being removed as part of the [new `setConfig` API]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.setConfig) - for details, see [the section below describing the new `pbjs.setConfig` API](#pbjs.setConfig). -For 1.0, we're **deprecating** the following APIs in favor of a generic "options" param object passed to the [`pbjs.setConfig`]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.setConfig) method: +{: .alert.alert-success :} +For a complete list of methods that will be removed, see the [Publisher API Reference]({{site.baseurl}}/dev-docs/publisher-api-reference.html). -- `pbjs.bidderTimeout` -- `pbjs.logging` (* [1](#options-footnotes)) -- `pbjs.publisherDomain` -- `pbjs.cookieSyncDelay` -- `pbjs.setPriceGranularity` -- `pbjs.enableSendAllBids` (* [2](#options-footnotes)) -- `pbjs.setBidderSequence` -- `pbjs.setS2SConfig` -- `pbjs.timeoutBuffer` + -Mapping will be straightforward with the name of the param being the same, except dropping the `set` prefix where appropriate. +## Legacy APIs replaced by `pbjs.setConfig` - +For 1.0, the following APIs will be removed in favor of a generic "options" param object passed to [`pbjs.setConfig`]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.setConfig): -1. Renamed to `debug` -2. `pbjs.enableSendAllBids` will default to `true` in 1.0 +- `pbjs.bidderTimeout` - use `pbjs.setConfig({bidderTimeout})` instead +- `pbjs.logging` - use `pbjs.setConfig({debug})` instead +- `pbjs.publisherDomain` - use `pbjs.setConfig({publisherDomain})` instead +- `pbjs.setPriceGranularity` - use `pbjs.setConfig({priceGranularity})` instead +- `pbjs.enableSendAllBids`- use `pbjs.setConfig({enableSendAllBids})` instead. Now defaults to `true`. +- `pbjs.setBidderSequence` - use `pbjs.setConfig({bidderSequence})` instead +- `pbjs.setS2SConfig` - use `pbjs.setConfig({s2sConfig})` instead -### `pbjs.setConfig` example +### `pbjs.setConfig` Example {:.no_toc} {: .alert.alert-warning :} -The input to `pbjs.setConfig` must be JSON (no JavaScript functions allowed). +The input to `pbjs.setConfig` must be JSON (no JavaScript functions are allowed). {% highlight js %} pbjs.setConfig({ - "currency": { - "adServerCurrency": "JPY", /* Enables currency feature -- loads the rate file */ - "conversionRateFile": "url" // Allows the publisher to override the default rate file + currency: { + "adServerCurrency": "JPY", + "conversionRateFile": "" }, - "debug" : true, // Previously `logging` - "s2sConfig" : {...}, - "priceGranularity": "medium", - "enableSendAllBids": false, // Default will be `true` as of 1.0 - "bidderSequence": "random", - "bidderTimeout" : 700, // Default for all requests. - "publisherDomain" : "abc.com", // Used for SafeFrame creative. - "pageOptions" : {...}, - "sizeConfig" : {...} + debug: true, // Previously `logging` + s2sConfig: { ... }, + priceGranularity: "medium", + enableSendAllBids: false, // Default will be `true` as of 1.0 + bidderSequence: "random", // Default is random + bidderTimeout: 700, // Default for all requests. + publisherDomain: "abc.com", // Used for SafeFrame creative. + pageOptions: { ... }, + cache: {url: ""} +}); + +{% endhighlight %} + +## No More Default Endpoints + +In Prebid 0.x there were defaults for the Prebid Server endpoints and the video cache URL. With 1.0, these defaults have been removed to be vendor neutral, so all publisher pages must define them via pbjs.setConfig(). The same functionality as 0.x may be achieved as shown below: + +{% highlight js %} + +pbjs.setConfig({ + cache: {url: "https://prebid.adnxs.com/pbc/v1/cache"}, + s2sConfig: { + ... + endpoint: "https://prebid.adnxs.com/pbs/v1/auction", + syncEndpoint: "https://prebid.adnxs.com/pbs/v1/cookie_sync", + ... + } }); {% endhighlight %} ## Size Mapping Changes -The previous `sizeMapping` functionality will be deprecated in favor of a more powerful way to describe types of devices and screens that uses the `pbjs.setConfig` method. +The previous [`sizeMapping` functionality]({{site.baseurl}}/dev-docs/examples/size-mapping.html) will be removed and replaced by a `sizeConfig` parameter to the `pbjs.setConfig` method that provides a more powerful way to describe types of devices and +screens. + +If `sizeConfig` is passed to `pbjs.setConfig`: + +- Before `requestBids` sends bids requests to adapters, it will evaluate and pick the appropriate label(s) based on the `sizeConfig.mediaQuery` and device properties and then filter the `adUnit.bids` based on the `labels` defined (by dropping those ad units that don't match the label definition). -**Rules if `sizeConfig` is present** + - The `sizeConfig.mediaQuery` property allows media queries in the form described [here](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Using_media_queries). They are tested using the [`window.matchMedia` API](https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia). -- Before `requestBids` sends bids requests to adapters, it will evaluate and pick the appropriate `label(s)` based on the `sizeConfig.mediaQuery` and device properties and then filter the `adUnit.bids` based on the `labels` defined (by dropping those adUnits that don't match the label definition). - - The `sizeConfig.mediaQuery` property allows media queries in the form described [here](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Using_media_queries). They are tested using the [`window.matchMedia`](https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia) API. -- If a label doesn't exist on an adUnit, it is automatically included in all requests for bids -- If multiple rules match, the sizes will be filtered to the intersection of all matching rules' `sizeConfig.sizesSupported` arrays. -- The `adUnit.sizes` selected will be filtered based on the `sizesSupported` of the matched `sizeConfig`. So the `adUnit.sizes` is a subset of the sizes defined from the resulting intersection of `sizesSupported` sizes and `adUnit.sizes`. +- If a label doesn't exist on an ad unit, it is automatically included in all requests for bids. + +- If multiple rules match, the sizes will be filtered to the intersection of all matching rules' `sizeConfig.sizesSupported` arrays. + +- The `adUnit.sizes` selected will be filtered based on the `sizesSupported` property of the matched `sizeConfig`. So the `adUnit.sizes` is a subset of the sizes defined from the resulting intersection of `sizesSupported` sizes and `adUnit.sizes`. ### `sizeConfig` Example {:.no_toc} -To set size configuration rules, you can use `pbjs.setConfig` as follows: +To set size configuration rules, you can pass `sizeConfig` into `pbjs.setConfig` as follows: {% highlight js %} @@ -131,73 +151,75 @@ pbjs.setConfig({ ### Labels {:.no_toc} -Labels can now be specified as a property on either an `adUnit` or on `adUnit.bids[]`. The presence of a label will disable the adUnit or bidder unless a sizeConfig rule has matched and enabled the label or the label has been enabled manually through `pbjs.setConfig({labels:[]})`. Defining labels on the adUnit looks like the following: +Labels can be specified as a property on either an `adUnit` or on `adUnit.bids[]`. The presence of a label will disable the ad unit or bidder unless a `sizeConfig` rule has matched and enabled the label or the label has been enabled manually through `pbjs.setConfig({labels:[]})`. Defining labels on the ad unit looks like the following: {% highlight js %} pbjs.addAdUnits([{ - "code": "ad-slot-1", - "sizes": [ [ 970,90 ], [ 728,90 ], [ 300,250 ], [ 300,100 ] ], - "labels": ["visitor-uk"] - "bids": [ // the full set of bids, not all of which are relevant on all devices - { - "bidder": "pulsepoint", - "labels": [ "desktop", "tablet" ], // flags this bid as relevant only on these screen sizes - "params": { - "cf": "728X90", - "cp": 123456, - "ct": 123456 - } - }, - { - "bidder": "pulsepoint", - "labels": [ "desktop", "phone" ], - "params": { - "cf": "300x250", - "cp": 123456, - "ct": 123456 - } - }, - { - "bidder": "sovrn", - "labels": [ "desktop", "tablet" ], - "params": { - "tagid": "123456" - } - }, - { - "bidder": "sovrn", - "labels": [ "phone" ], - "params": { - "tagid": "111111" - } - } - ] -}]; + "code": "ad-slot-1", + "sizes": [ + [970, 90], + [728, 90], + [300, 250], + [300, 100] + ], + "labels": ["visitor-uk"] + "bids": [ // the full set of bids, not all of which are relevant on all devices + { + "bidder": "pulsepoint", + "labels": ["desktop", "tablet"], // flags this bid as relevant only on these screen sizes + "params": { + "cf": "728X90", + "cp": 123456, + "ct": 123456 + } + }, + { + "bidder": "pulsepoint", + "labels": ["desktop", "phone"], + "params": { + "cf": "300x250", + "cp": 123456, + "ct": 123456 + } + }, + { + "bidder": "sovrn", + "labels": ["desktop", "tablet"], + "params": { + "tagid": "123456" + } + }, + { + "bidder": "sovrn", + "labels": ["phone"], + "params": { + "tagid": "111111" + } + } + ] +}]); {% endhighlight %} ### Manual Label Configuration {:.no_toc} -If an adUnit and/or adUnit.bids[] bidder has labels defined, they will be disabled by default. Manually setting active labels using `pbjs.setConfig` will re-enable the selected adUnits and/or bidders. +If an ad unit and/or `adUnit.bids[]` bidder has labels defined, they will be disabled by default. Manually setting active labels using `pbjs.setConfig` will re-enable the selected ad units and/or bidders. -You can manually turn on labels using the following: +You can manually turn on labels using the following code: {% highlight js %} pbjs.setConfig({ - labels: ['visitor-uk'] + labels: ['visitor-uk'] }); {% endhighlight %} -## AdUnit Changes - -The `mediaType` attribute is **deprecated** in favor of a `mediaTypes` object. This will accept multiple items (i.e. `video`, `banner`, `native` etc) with a optional key-value pair object nested inside. +## Ad Unit Changes -### AdUnit Example -{:.no_toc} +The `mediaType` attribute is being removed in favor of a `mediaTypes` object. This will accept multiple properties (i.e. `video`, `banner`, `native` etc) with a optional key-value pair object nested inside, e.g., {% highlight js %} @@ -221,4 +243,4 @@ adUnit = { ## Further Reading -[Publisher API Reference]({{site.baseurl}}/dev-docs/publisher-api-reference.html) ++ [Publisher API Reference]({{site.baseurl}}/dev-docs/publisher-api-reference.html) diff --git a/dev-docs/publisher-api-reference.md b/dev-docs/publisher-api-reference.md index be007a1b1d..daacfdf96e 100644 --- a/dev-docs/publisher-api-reference.md +++ b/dev-docs/publisher-api-reference.md @@ -40,7 +40,6 @@ After a transition period, documentation for these methods will be removed from * [.addAdUnits(Array)](#module_pbjs.addAdUnits) * [.addBidResponse(adUnitCode, bid)](#module_pbjs.addBidResponse) Deprecated; will be removed in 1.0 * [.bidderSettings](#module_pbjs.bidderSettings) - * [userSync](#module_pbjs.userSync) * [.addCallback(event, func)](#module_pbjs.addCallback) Deprecated; will be removed in 1.0 * [.removeCallback(cbId)](#module_pbjs.removeCallback) Deprecated; will be removed in 1.0 * [.buildMasterVideoTagFromAdserverTag(adserverTag, options)](#module_pbjs.buildMasterVideoTagFromAdserverTag) Deprecated; will be removed in 1.0 @@ -561,22 +560,21 @@ Define ad units and their corresponding header bidding bidders' tag IDs. For us **adUnit** {: .table .table-bordered .table-striped } -| Name | Scope | Type | Description | -| :---- | :-------- | :------- | :----------- | -| `code` | required | string | A unique identifier that you create and assign to this ad unit. This identifier will be used to set query string targeting on the ad. If you're using GPT, we recommend setting this to the slot element ID. | -| `sizes` | required | array | All the sizes that this ad unit can accept. | -| `bids` | required | array | An array of bid objects. Find the [complete reference here](bidders.html). | -| `sizeMapping` | optional | array | Declaratively specifies ad sizes to be shown when device's screen is greater than or equal to a given size. For more information, see [the example]({{site.github.url}}/dev-docs/examples/size-mapping.html). | - -{% include sizemapping-and-screen-widths.md %} +| Name | Scope | Type | Description | +| :---- | :-------- | :------- | :----------- | +| `code` | required | string | A unique identifier that you create and assign to this ad unit. This identifier will be used to set query string targeting on the ad. If you're using GPT, we recommend setting this to the slot element ID. | +| `sizes` | required | array | All the sizes that this ad unit can accept. | +| `bids` | required | array | An array of bid objects. Find the [complete reference here](bidders.html). | +| `labels` | optional | array | An array of string labels, used for showing responsive ads. Works with the `sizeConfig` object passed in to [pbjs.setConfig]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.setConfig). | **bid** {: .table .table-bordered .table-striped } -| Name | Scope | Type | Description | -| :---- |:--------| :-------| :----------- | -| `bidder` | required | string | The bidder code. Find the [complete list here](bidders.html). | -| `params` | required | object | The bidder's preferred way of identifying a bid request. Find the [complete reference here](bidders.html). | +| Name | Scope | Type | Description | +| :---- | :-------- | :------- | :----------- | +| `bidder` | required | string | The bidder code. Find the [complete list here](bidders.html). | +| `params` | required | object | The bidder's preferred way of identifying a bid request. Find the [complete reference here](bidders.html). | +| `labels` | optional | array | An array of string labels, used for showing responsive ads. Works with the `sizeConfig` object passed in to [pbjs.setConfig]({{site.baseurl}}/dev-docs/publisher-api-reference.html#module_pbjs.setConfig). |
@@ -807,89 +805,6 @@ If a custom adServerTargeting function can return an empty value, this boolean f
-
- -### UserSync - -UserSync configuration allows Publishers to control how adapters behave with respect to dropping pixels or scripts to cookie users with IDs. -This practice is called 'userSync' because the aim is to let the bidders match IDs between their cookie space and the DSP cookie space. -There's a good reason for bidders to be doing this -- DSPs are more likely to bid on impressions where they know something about the history of a user. -However, there are also good reasons why Publishers may want to control the use of these practices: - -* page performance - Publishers may wish to move ad-related cookie work to much later in the page load after ads and content have loaded. -* user privacy - Some publishers may want to opt out of these practices even though it limits their user's values on the open market. -* security - Publishers may want to control which bidders are trusted to inject images and javascript into their pages. - -The default behavior of the platform is to allow every adapter to drop up to 5 image-based user syncs. The sync images will be dropped 3 seconds after the auction starts. Here are some examples of config that will change the default behavior. - -Push the user syncs to later in the page load: -{% highlight js %} -pbjs.setConfig({ userSync: { - syncDelay: 5000 // write image pixels 5 seconds after the auction -}}); -{% endhighlight %} - -Turn off userSync entirely: -{% highlight js %} -pbjs.setConfig({ userSync: { - syncEnabled: false -}}); -{% endhighlight %} - -Allow iframe-based syncs: -{% highlight js %} -pbjs.setConfig({ userSync: { - iframeEnabled: true -}}); -{% endhighlight %} - -Only certain adapters are allowed to sync, either images or iframes: -{% highlight js %} -pbjs.setConfig({ userSync: { - enabledBidders: ['abc','xyz'], // only these bidders are allowed to sync - iframeEnabled: true, - syncsPerBidder: 3, // and no more than 3 syncs at a time - syncDelay: 6000, // 6 seconds after the auction -}}); -{% endhighlight %} - -The same bidders can drop sync pixels, but the timing will be controlled by the page: -{% highlight js %} -pbjs.setConfig({ userSync: { - enabledBidders: ['abc','xyz'], // only these bidders are allowed to sync, and only image pixels - enableOverride: true // publisher will call pbjs.triggerUserSyncs() -}}); -{% endhighlight %} - -Here are all the options for userSync control: - -{: .table .table-bordered .table-striped } -| Attribute | Type | Description | -| --- | --- | --- | -| syncEnabled | boolean | Enables/disables the userSync feature. Defaults to true. | -| iframeEnabled | boolean | Enables/disables the use of iframes for syncing. Defaults to false. | -| syncDelay | integer | The delay in milliseconds for autosyncing once the first auction is run. 3000 by default. | -| syncsPerBidder | integer | Number of registered syncs allowed per adapter. Default is 5. Set to 0 to allow all. | -| enabledBidders | array | Array of names of trusted adapters which are allowed to sync users. | -| enableOverride | boolean | Allows the publisher to manually trigger the user syncs to fire by calling pbjs.triggerUserSyncs(). | - -As noted, there's a function available to give the page control of when registered userSyncs are added. -{% highlight js %} -pbjs.triggerUserSyncs() -{% endhighlight %} - -#### How it works - -The [userSync.registerSync()]({{site.baseurl}}/dev-docs/bidder-adaptor.html#step-6-register-user-sync-pixels) function called by the adapter keeps a queue of valid userSync requests. It prevents unwanted sync entries from being placed on the queue: - -* Removes undesired sync types. (i.e. enforces the iframeEnabled flag) -* Removes undesired adapter registrations. (i.e. enforces the enabledBidders option) -* Makes sure there's not too many queue entries from a given adapter. (i.e. enforces syncsPerBidder) - -When user syncs are run, regardless of whether they are invoked by the platform or by the page calling pbjs.triggerUserSyncs(), the queue entries are randomized and appended to the bottom of the HTML head tag. If there's no head tag, then they're appended to the end of the body tag. - -
- ### pbjs.addCallback(event, func) ⇒ `String` @@ -1024,17 +939,18 @@ Currently, `bidWon` is the only event that accepts the `id` parameter. The available events are: {: .table .table-bordered .table-striped } -| Event | Description | -|---------------+----------------------------------------| -| auctionInit | The auction has started | -| auctionEnd | The auction has ended | -| bidAdjustment | A bid was adjusted | -| bidTimeout | A bid timed out | -| bidRequested | A bid was requested | -| bidResponse | A bid response has arrived | -| bidWon | A bid has won | -| setTargeting | Targeting has been set | -| requestBids | Bids have been requested from adapters | +| Event | Description | +|---------------+-----------------------------------------| +| auctionInit | The auction has started | +| auctionEnd | The auction has ended | +| bidAdjustment | A bid was adjusted | +| bidTimeout | A bid timed out | +| bidRequested | A bid was requested | +| bidResponse | A bid response has arrived | +| bidWon | A bid has won | +| setTargeting | Targeting has been set | +| requestBids | Bids have been requested from adapters | +| addAdUnits | Ad units have been added to the auction | The example below shows how to use these methods: @@ -1135,6 +1051,7 @@ See below for usage examples. + [Set a delay before requesting cookie sync](#setConfig-Cookie-Sync-Delay) + [Set price granularity](#setConfig-Price-Granularity) + [Configure server-to-server header bidding](#setConfig-Server-to-Server) ++ [Configure user syncing](#setConfig-Configure-User-Syncing) + [Configure responsive ad units with `sizeConfig` and `labels`](#setConfig-Configure-Responsive-Ads) + [Generic Configuration](#setConfig-Generic-Configuration) + [Troubleshooting your configuration](#setConfig-Troubleshooting-your-configuration) @@ -1256,6 +1173,125 @@ pbjs.setConfig({ }) {% endhighlight %} + + +#### Configure User Syncing + +The user sync configuration options described in this section give publishers control over how adapters behave with respect to dropping pixels or scripts to cookie users with IDs. +This practice is called "user syncing" because the aim is to let the bidders match IDs between their cookie space and the DSP's cookie space. +There's a good reason for bidders to be doing this -- DSPs are more likely to bid on impressions where they know something about the history of the user. +However, there are also good reasons why publishers may want to control the use of these practices: + +- *Page performance*: Publishers may wish to move ad-related cookie work to much later in the page load after ads and content have loaded. +- *User privacy*: Some publishers may want to opt out of these practices even though it limits their users' values on the open market. +- *Security*: Publishers may want to control which bidders are trusted to inject images and JavaScript into their pages. + +{: .alert.alert-info :} +**User syncing default behavior** +If you don't tweak any of the settings described in this section, the default behavior of Prebid.js is to wait 3 seconds after the auction ends, and then allow every adapter to drop up to 5 image-based user syncs. + +For more information, see the sections below. + +- [User Sync Properties](#setConfig-ConfigureUserSyncing-UserSyncProperties) +- [User Sync Examples](#setConfig-ConfigureUserSyncing-UserSyncExamples) +- [How User Syncing Works](#setConfig-ConfigureUserSyncing-HowUserSyncingWorks) + + + +##### User Sync Properties + +For descriptions of all the properties that control user syncs, see the table below. + +{: .table .table-bordered .table-striped } +| Attribute | Type | Description | +|------------------+---------+---------------------------------------------------------------------------------------------------------| +| `syncEnabled` | Boolean | Enable/disable the user syncing feature. Default: `true`. | +| `pixelEnabled` | Boolean | Enable/disable the use of pixels for user syncing. Default: `true`. | +| `iframeEnabled` | Boolean | Enable/disable the use of iFrames for syncing. Default: `false`. | +| `syncsPerBidder` | Integer | Number of registered syncs allowed per adapter. Default: `5`. To allow all, set to `0`. | +| `syncDelay` | Integer | Delay in milliseconds for syncing after the auction ends. Default: `3000`. | +| `enabledBidders` | Array | Trusted adapters which are allowed to do user syncing. | +| `enableOverride` | Boolean | Enable/disable publisher to trigger user syncs by calling `pbjs.triggerUserSyncs()`. Default: `false`. | + + + +##### User Sync Examples + +For examples of configurations that will change the default behavior, see below. + +Push the user syncs to later in the page load: + +{% highlight js %} +pbjs.setConfig({ + userSync: { + syncDelay: 5000 // write image pixels 5 seconds after the auction + } +}); +{% endhighlight %} + +Turn off user syncing entirely: + +{% highlight js %} +pbjs.setConfig({ + userSync: { + syncEnabled: false + } +}); +{% endhighlight %} + +Allow iFrame-based syncs: + +{% highlight js %} +pbjs.setConfig({ + userSync: { + iframeEnabled: true + } +}); +{% endhighlight %} + +Only certain adapters are allowed to sync -- either images or iFrames: + +{% highlight js %} +pbjs.setConfig({ + userSync: { + enabledBidders: ['abc', 'xyz'], // only these bidders are allowed to sync + iframeEnabled: true, + syncsPerBidder: 3, // and no more than 3 syncs at a time + syncDelay: 6000, // 6 seconds after the auction + } +}); +{% endhighlight %} + +The same bidders can drop sync pixels, but the timing will be controlled by the page: + +{% highlight js %} +pbjs.setConfig({ + userSync: { + /* only these bidders are allowed to sync, and only image pixels */ + enabledBidders: ['abc', 'xyz'], + enableOverride: true // publisher will call `pbjs.triggerUserSyncs()` + } +}); +{% endhighlight %} + +As noted, there's a function available to give the page control of when registered user syncs are added. + +{% highlight js %} +pbjs.triggerUserSyncs(); +{% endhighlight %} + + + +##### How User Syncing Works + +The [userSync.registerSync()]({{site.baseurl}}/dev-docs/bidder-adaptor.html#step-6-register-user-sync-pixels) function called by the adapter keeps a queue of valid userSync requests. It prevents unwanted sync entries from being placed on the queue: + +* Removes undesired sync types. (i.e. enforces the iframeEnabled flag) +* Removes undesired adapter registrations. (i.e. enforces the enabledBidders option) +* Makes sure there's not too many queue entries from a given adapter. (i.e. enforces syncsPerBidder) + +When user syncs are run, regardless of whether they are invoked by the platform or by the page calling pbjs.triggerUserSyncs(), the queue entries are randomized and appended to the bottom of the HTML head tag. If there's no head tag, then they're appended to the end of the body tag. + #### Configure Responsive Ads diff --git a/dev-docs/show-native-ads.md b/dev-docs/show-native-ads.md index b5f6480f2f..b54d404a66 100644 --- a/dev-docs/show-native-ads.md +++ b/dev-docs/show-native-ads.md @@ -52,7 +52,7 @@ The ad ops team will then reference these keys in the ad server to set up the ti Keep the following prerequisites in mind during the implementation: -+ Make sure to work with native-enabled bidders. To see which bidders have native demand, see [Bidders with Video and Native Demand]({{site.baseurl}}/bidders.html#bidders-with-video-and-native-demand). ++ Make sure to work with native-enabled bidders. To see which bidders have native demand, see [Bidders with Video and Native Demand]({{site.baseurl}}/dev-docs/bidders.html#bidders-with-video-and-native-demand). ## Implementation @@ -145,7 +145,7 @@ pbjs.addAdUnits({ {% endhighlight %} {: .alert.alert-danger :} -For each native ad unit, all of the bidders within that ad unit must have declared native support in their adapter if you want ads to appear. If there are any bidders without native support in a native ad unit, requests will not be made to those bidders. For a list of bidders with native support, see [Bidders with Video and Native Demand]({{site.baseurl}}/bidders.html#bidders-with-video-and-native-demand). +For each native ad unit, all of the bidders within that ad unit must have declared native support in their adapter if you want ads to appear. If there are any bidders without native support in a native ad unit, requests will not be made to those bidders. For a list of bidders with native support, see [Bidders with Video and Native Demand]({{site.baseurl}}/dev-docs/bidders.html#bidders-with-video-and-native-demand). #### Pre-defined native types diff --git a/download.md b/download.md index 6074fe5d59..b22332956a 100644 --- a/download.md +++ b/download.md @@ -26,6 +26,16 @@ $(function(){ } return; }); + + $( ".selectpicker" ).change(function() { + if(this.value === '1.0.0') { + $('.adapters .col-md-4').hide(); + $('.prebid_1_0').show(); + } + else{ + $('.adapters .col-md-4').show(); + } + }); }); function submit_download() { @@ -71,12 +81,13 @@ function submit_download() { function get_form_data() { var bidders = []; var analytics = []; + var version = $('.selectpicker').val(); var bidder_check_boxes = $('.bidder-check-box'); for (var i = 0; i < bidder_check_boxes.length; i++) { var box = bidder_check_boxes[i]; if (box.checked) { - bidders.push(box.getAttribute('bidderCode')); + bidders.push(box.getAttribute('moduleCode')); } } @@ -93,6 +104,7 @@ function get_form_data() { form_data['company'] = $('#input-company').val(); form_data['bidders'] = bidders; form_data['analytics'] = analytics; + form_data['version'] = version; return form_data; } @@ -113,25 +125,34 @@ function get_form_data() { {: .lead :} To improve the speed and load time of your site, build Prebid.js for only the header bidding partners you choose. -### Option 1: Select header bidding partners +### Option 1: Customize your download here {% assign bidder_pages = (site.pages | where: "layout", "bidder") %} +{% assign module_pages = (site.pages | where: "nav_section", "modules") %}
-

Bidder Adapters

+

Select Prebid Version

+ + +

Select Bidder Adapters

+
{% for page in bidder_pages %} {% if page.s2s_only == true %} {% continue %} {% endif %} -
+
@@ -139,6 +160,7 @@ To improve the speed and load time of your site, build Prebid.js for only the he
{% endfor %}
+

@@ -210,9 +232,18 @@ To improve the speed and load time of your site, build Prebid.js for only the he

-

-(Version 0.33.0) -

+
+

Modules

+ {% for page in module_pages %} +
+
+ +
+
+ {% endfor %} +
+ +