Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
Skitelman committed Sep 29, 2023
2 parents 685f72a + 615b5fb commit e53b4f2
Show file tree
Hide file tree
Showing 115 changed files with 3,307 additions and 796 deletions.
10 changes: 8 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# docs.prebid.org source

This repository contains the source files for the Prebid.js documentation site at [Prebid.org](https://prebid.org).

Please see the sections below for more information:
Expand Down Expand Up @@ -35,13 +37,13 @@ All docs are under the license shown in the `LICENSE` file in this directory.

The site is hosted on GitHub pages, and uses [Jekyll](https://jekyllrb.com/) to generate the HTML. Jekyll is written in the [Ruby](https://www.ruby-lang.org/en/) language.

1. follow the instructions at https://jekyllrb.com/docs/installation/ for your OS
1. follow the instructions at [jekyllrb.com/docs/installation/](https://jekyllrb.com/docs/installation/) for your OS
1. gem install github-pages
1. start Jekyll as described below

For CSS, the site uses Laravel Mix to build CSS from Sass (scss-flavored) source files. Under the hood Laravel Mix uses Webpack.

1. follow the instructions at https://nodejs.dev to install Node.js for your OS
1. follow the instructions at [/nodejs.dev](https://nodejs.dev) to install Node.js for your OS
1. `npm ci` to install packages for building assets
1. build assets as described below

Expand Down Expand Up @@ -106,6 +108,10 @@ This means an adaptor is not available to download from Prebid.org as soon as th

<a name="thanks"></a>

## Liquid Templating

* [jekyll - check for non empty](https://michaelcurrin.github.io/dev-cheatsheets/cheatsheets/jekyll/liquid/conditionals/non-empty.html)

## Thanks

Many thanks to the following people who have submitted content to Prebid.org. We really appreciate the help!
15 changes: 14 additions & 1 deletion _data/sidebar.yml
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,12 @@
isSectionHeader: 0
subgroup: 2

- sbSecId: 0
title: Prebid and Quebec Privacy Support
link: /features/ac-quebec.html
isHeader: 0
isSectionHeader: 0
subgroup: 2

#--------------Prebid.js--------------|

Expand Down Expand Up @@ -1486,7 +1492,6 @@
sectionTitle:
subgroup: 3


- sbSecId: 5
title: Modules
link: /prebid-server/pbs-modules/
Expand Down Expand Up @@ -1536,6 +1541,14 @@
sectionTitle:
subgroup: 5

- sbSecId: 5
title: Building a Privacy Module
link: /prebid-server/developers/add-a-privacy-module.html
isHeader: 0
isSectionHeader: 0
sectionTitle:
subgroup: 5

- sbSecId: 5
title: Code Reviews
link: /prebid-server/developers/code-reviews.html
Expand Down
9 changes: 4 additions & 5 deletions _layouts/bidder.html
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ <h3>Features</h3>
<th class="pbTh">Demand Chain Support</th>
<td class="pbTd">{% if page.dchain_supported == true %}yes{% elsif page.dchain_supported == false %}no{% else %}check with bidder{% endif %}</td>
<th class="pbTh">GPP Support</th>
<td class="pbTd">{% if page.gpp_supported == true %}yes{% elsif page.gpp_supported == false %}no{% else %}check with bidder{% endif %}</td>
<td class="pbTd">{% if page.gpp_sids and page.gpp_sids != '' %}{{page.gpp_sids}}{% elsif page.gpp_supported == true and page.gpp_sids == nil %}some (check with bidder){% elsif page.gpp_supported == false and gpp_sids == nil %}None{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Supports Deals</th>
Expand Down Expand Up @@ -108,10 +108,12 @@ <h3>Features</h3>
<th class="pbTh">Safeframes OK</th>
<td class="pbTd">{% if page.safeframes_ok == false %}no{% elsif page.safeframes_ok == true %}yes{% else %}check with bidder{% endif %}</td>
<th class="pbTh"></th>
<td class="pbTd"></td>
<td class="pbTd"></td>
</tr>
</table>

{{content}}

<h3>"Send All Bids" Ad Server Keys</h3>

<font size="-1">These are the bidder-specific keys that would be targeted within GAM in a Send-All-Bids scenario. GAM truncates keys to 20 characters.</font>
Expand Down Expand Up @@ -143,9 +145,6 @@ <h3>"Send All Bids" Ad Server Keys</h3>
This bidder previously had a bidder code of `{{ page.prevBiddercode }}`, but prefers new configurations to use `{{ page.biddercode }}`.
{% endif %}


{{content}}

<p><a href="/dev-docs/bidders.html">Back to Bidders</a></p>
</div>

Expand Down
3 changes: 3 additions & 0 deletions adops/gam-creative-banner-sbs.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,9 @@ Be sure to replace BIDDERCODE with the appropriate bidder. For example, if the b
</script>
```

{: .alert.alert-info :}
Note: the `mobileResize` parameter is a workaround to a bug in the Google Mobile Ads SDK. The Prebid SDK uses the existence of the "hb_size" string that's provided in %%PATTERN:TARGETINGMAP%%, but this bidder-specific version of the creative doesn't utilize the TARGETINGMAP, so the value is added here. The important part is the value that contains `hb_size:`.

{: .alert.alert-danger :}
Warning: Be sure none of the attribute names are longer than 20 characters. See [Send All Bids Key Value Pairs](/adops/send-all-vs-top-price.html#key-value-pairs) for more information.

Expand Down
2 changes: 1 addition & 1 deletion adops/key-values.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ You can work with your engineers to modify the default list. See [Restricting Da
| hb_deal | targeting | All | Target private marketplace deals | 7777777 |
| hb_uuid | rendering | Video only | Carries the cache retrieval ID for VAST video creatives | 1111-2222-3333-4444 |
| hb_cache_id | rendering | Banner, native, outstream; mobile app only | Carries the cache retrieval ID for mobile bids | 2222-3333-4444-5555 |
| hb_cache_host | rendering | Banner, native, outstream; mobile app only | The host where the cached creative lives | <https://mycachehost.example.com> |
| hb_cache_host | rendering | Banner, native, outstream; mobile app only | The host where the cached creative lives | `"https://mycachehost.example.com"` |
| hb_cache_path | rendering | Banner, native, outstream; mobile app only | The web path where the cached creative lives | /cache |
| hb_source | reporting | Server-to-server testing | Used to report the A/B test results for client- vs server-side performance. | s2s |
| hb_adomain | reporting and special | All | Used to report on VAST errors, set floors on certain buyers, monitor volume from a buyer, or track down bad creatives | example.com |
Expand Down
8 changes: 6 additions & 2 deletions adops/setting-up-prebid-video-in-freewheel.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,12 @@ In order for FreeWheel SDK to send the correct Creative to the video player it n

To ensure the cache URL is correct there are two macros that dynamically populate the URL query. To confirm the dynamic URL is formatted correctly click on the URL link in the Detail field. A pop over will display with the dynamic URL.

The scheme, host, and path should read as follows:
<https://prebid.adnxs.com/pbc/v1/cache>
The scheme, host, and path should point to your Prebid Server cache. For instance, if you
utilize Xandr's AppNexus cache:

```text
https://prebid.adnxs.com/pbc/v1/cache
```

The query should have one key-value items:

Expand Down
1 change: 0 additions & 1 deletion adops/setting-up-prebidjs-with-Smart-Ad-Server.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,5 +69,4 @@ For more details, read [here](https://support.smartadserver.com/s/article/Holist

Read these articles to learn more about the available header bidding reporting:

- [Holistic Dashboard](https://support.smartadserver.com/s/article/Holistic-dashboard) - provides a fast and easy overview of basic metrics by delivery channel and RTB product.
- [Big Data Reports](https://support.smartadserver.com/s/article/Holistic-Setup#bdr) - provides full, in-depth reporting with header bidding related dimensions and metrics.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion dev-docs/activity-controls.md
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ These are the parameters available to the condition function:
| `componentName` | String | All activities | Name of the component; this is (depending on the type) either a bidder code, user ID or RTD submodule name, analytics provider code, or module name. |
| `component` | String | All activities | This is always a dot-separated concatenation of `componentType` and `componentName`; for example, with `{componentType: 'bidder', componentName: 'bidderX'}`, `component` is `'bidder.bidderX'`. |
| `adapterCode` | String | All activities | If `componentType` is `'bidder'`, and `componentName` is an [alias](/dev-docs/publisher-api-reference/aliasBidder.html), then `adapterCode` is the bidder code that was aliased; or identical to `componentName` if the bidder is not an alias. This is undefined when the component is not a bidder.|
| `configName` | String | <a id="params-fetchBids"></a> `fetchBids` | When the Prebid Server adapter is part of an auction, this is the name given to its [s2s configuration](/dev-docs/modules/prebidServer.md), if any. |
| `configName` | String | <a id="params-fetchBids"></a> `fetchBids` | When the Prebid Server adapter is part of an auction, this is the name given to its [s2s configuration](/dev-docs/modules/prebidServer.html), if any. |
| `storageType` | String | <a id="params-accessDevice"></a> `accessDevice` | Either `'html5'` or `'cookie'` - the device storage mechanism being accessed. |
| `syncType` | String | <a id="params-syncUser"></a> `syncUser` | Either `'iframe'` or `'image'` - the type of user sync. |
| `syncUrl` | String | `syncUser` | URL of the user sync. |
Expand Down
35 changes: 35 additions & 0 deletions dev-docs/adfusion.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
layout: bidder
title: AdFusion
biddercode: adfusion
tcfeu_supported: true
gvl_id: 844
usp_supported: false
coppa_supported: false
gpp_supported: false
schain_supported: false
dchain_supported: false
safeframes_ok: false
deals_supported: true
userId: all
media_types: display, video
floors_supported: true
fpd_supported: false
pbjs: true
pbs: false
prebid_member: false
multiformat_supported: will-bid-on-one
ortb_blocking_supported: true
sidebarType: 1
---

### Note

The AdFusion Bidding adapter requires setup from the AdFusion team. Please contact us at [[email protected]](mailto:[email protected]).

### Bid Params

{: .table .table-bordered .table-striped }
| Name | Scope | Description | Example | Type |
|---------------|----------|-----------------------|-----------|-----------|
| `accountId` | required | The account ID provided by AdFusion | `1234` | `number` |
56 changes: 48 additions & 8 deletions dev-docs/adunit-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -166,8 +166,9 @@ When using the Video Module, the mediaTypes.video properties get filled out auto
* [Banner](#adUnit-banner-example)
* [Video](#adUnit-video-example)
* [With the Video Module](#adUnit-video-module-example)
* [Instream](#adUnit-video-example-instream)
* [Outstream](#adUnit-video-example-outstream)
* [Instream Sound-On](#adUnit-video-example-instream)
* [Accompanying Content](#adUnit-video-example-accompanying)
* [No Content/Standalone](#adUnit-video-example-outstream)
* [Adpod (Long-Form)](#adUnit-video-example-adpod)
* [Native](#adUnit-native-example)
* [Multi-Format](#adUnit-multi-format-example)
Expand Down Expand Up @@ -233,7 +234,7 @@ pbjs.addAdUnits({

<a name="adUnit-video-example-instream"></a>

#### Instream
#### Instream Sound-On

For an example of an instream video ad unit that you handle on your own, see below. For more detailed instructions, see [Show Video Ads]({{site.baseurl}}/dev-docs/show-video-with-a-dfp-video-tag.html).

Expand All @@ -243,10 +244,40 @@ pbjs.addAdUnits({
mediaTypes: {
video: {
context: 'instream',
plcmt: 1,
playerSize: [640, 480],
mimes: ['video/mp4'],
protocols: [1, 2, 3, 4, 5, 6, 7, 8],
playbackmethod: [2],
playbackmethod: [5],
skip: 1
},
},
bids: [{
bidder: 'appnexus',
params: {
placementId: 13232361
}
}]
});
```

<a name="adUnit-video-example-accompanying"></a>

#### Player contains video content with sound off

The IAB calls this scenario "Accompanying Content". Previously, this might have been called "instream with sound-off", but as of April 2023, the IAB has reclassified this scenario.

```javascript
pbjs.addAdUnits({
code: slot.code,
mediaTypes: {
video: {
context: 'instream',
plcmt: 2,
playerSize: [640, 480],
mimes: ['video/mp4'],
protocols: [1, 2, 3, 4, 5, 6, 7, 8],
playbackmethod: [6],
skip: 1
},
},
Expand All @@ -261,7 +292,9 @@ pbjs.addAdUnits({

<a name="adUnit-video-example-outstream"></a>

#### Outstream
#### Standalone ad wit no video content

This is the scenario formerly known as Outstream. As of April 2023, the IAB now calls this scenario "No Content/Standalone".

For an example of an outstream video ad unit that you handle on your own, see below. For more detailed instructions, see [Show Outstream Video Ads]({{site.baseurl}}/dev-docs/show-outstream-video-ads.html).

Expand All @@ -271,8 +304,11 @@ pbjs.addAdUnits({
mediaTypes: {
video: {
context: 'outstream',
useCacheKey: false,
playerSize: [640, 480]
plcmt: 4,
playerSize: [640, 480],
mimes: ['video/mp4'],
protocols: [1, 2, 3, 4, 5, 6, 7, 8],
playbackmethod: [6],
}
},
renderer: {
Expand All @@ -296,8 +332,12 @@ pbjs.addAdUnits({
mediaTypes: {
video: {
context: 'outstream',
plcmt: 4,
playerSize: [640, 480],
mimes: ['video/mp4'],
protocols: [1, 2, 3, 4, 5, 6, 7, 8],
playbackmethod: [6],
useCacheKey: true,
playerSize: [640, 480]
}
},
renderer: {
Expand Down
2 changes: 2 additions & 0 deletions dev-docs/analytics-ga.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ nav_section: reference
* TOC
{:toc }

## Notice: Deleted in Prebid 8 with the deprecation of GA by Google

## Code Example

```javascript
Expand Down
17 changes: 16 additions & 1 deletion dev-docs/analytics/adagio.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,23 @@ title: Adagio
description: Adagio Analytics Adapter
modulecode: adagio
prebid_member: true
tcfeu_supported: true
usp_supported: true
coppa_supported: true
gvl_id: 617
enable_download: true
---

#### Registration

Please visit [adagio.io](https://adagio.io/) for more information.
The Adagio Analytics adapter requires setup and approval from the Adagio team. Please reach out to <[email protected]> for more information.

#### Example Configuration

```js
pbjs.que.push(function () {
pbjs.enableAnalytics({
provider: 'adagio',
});
});
```
33 changes: 33 additions & 0 deletions dev-docs/analytics/nobid.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
layout: analytics
title: NoBid
description: NoBid Analytics Adaptor
modulecode: nobidAnalytics
gvl_id: 816
enable_download: false
---

#### Registration

The NoBid Analytics Adapter is free to use during our Beta period, but requires a simple registration with NoBid. Please visit [www.nobid.io](https://www.nobid.io/contact-1/) to sign up and request your Publisher ID Number to get started. If you're already using the NoBid Bid Adapter, you may use your existing Site ID Number with the analytics adapter.

The NoBid privacy policy is at [nobid.io/privacy-policy](https://www.nobid.io/privacy-policy/).

#### Analytics Options

{: .table .table-bordered .table-striped }
| Parameter | Scope | Type | Description | Example |
| --- | --- | --- | --- | --- |
| provider | Required | String | The name of this module: `nobidAnalytics` | `nobidAnalytics` |
| options.siteId | Required | Number | This is the NoBid Site ID Number obtained from registering with NoBid. | `1234` |

### Example Configuration

```javascript
pbjs.enableAnalytics({
provider: 'nobidAnalytics',
options: {
siteId: 123 // change to the Site ID you received from NoBid
}
});
```
8 changes: 6 additions & 2 deletions dev-docs/bidder-adaptor.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ A 'Simple Request' meets **all** of the following conditions:

* No `ReadableStream` object is used in the request

Prebid recommends keeping module HTTP requests 'simple' if at all possible. The default content-type used by Prebid.js is text/plain.
Prebid recommends keeping module HTTP requests 'simple' if at all possible. The default content-type used by Prebid.js is text/plain. Prebid switched to preferring the fetch api and added the Topics header when available in 8.9.

## Creating the Adapter

Expand Down Expand Up @@ -420,6 +420,10 @@ return {

```
To have the topics in the Sec-Browsing-Topics request header marked by the browser as observed, but also to include the current page visit in the user's next epoch top topic calculation, the server's response has to include Observe-Browsing-Topics: ?1.
Here's a JavaScript example using setHeader(): `res.setHeader('Observe-Browsing-Topics', '?1');`
<a name="bidder-adaptor-Interpreting-the-Response"></a>
### Interpreting the Response
Expand Down Expand Up @@ -1304,7 +1308,7 @@ tcfeu_supported: true/false
gvl_id: none
usp_supported: true/false
coppa_supported: true/false
gpp_supported: true/false
gpp_sids: tcfeu, tcfca, usnat, usstate_all, usp
schain_supported: true/false
dchain_supported: true/false
userId: (list of supported vendors)
Expand Down
Loading

0 comments on commit e53b4f2

Please sign in to comment.