Skip to content

Commit

Permalink
Add DSA field for pbjs (#5158)
Browse files Browse the repository at this point in the history
* Add DSA field for pbjs

* lint

* lint

* lint

* lint

* Refactor bidder meta data into include

* tweak

every other field shows yes/no, DSA was showing true/false

* Add prebid server app support to include

---------

Co-authored-by: bretg <[email protected]>
  • Loading branch information
muuki88 and bretg authored Mar 21, 2024
1 parent f1bbcb8 commit 6fba863
Show file tree
Hide file tree
Showing 16 changed files with 93 additions and 77 deletions.
74 changes: 74 additions & 0 deletions _includes/dev-docs/bidder-meta-data.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
<table class="table table-bordered table-striped">
<tr>
<th class="pbTh">Bidder Code</th>
<td class="pbTd">{{ page.biddercode }}</td>
<th class="pbTh">Prebid.org Member</th>
<td class="pbTd">{% if page.prebid_member == true %}yes{% else %}no{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Prebid.js Adapter</th>
<td class="pbTd">{% if page.pbjs == true %}yes{% else %}no{% endif %}</td>
<th class="pbTh">Prebid Server Adapter</th>
<td class="pbTd">{% if page.pbs == true %}yes{% else %}no{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Media Types</th>
<td class="pbTd">{% unless page.media_types contains 'no-display' %}display{% if page.media_types contains 'video' %},{% endif %}{% endunless %}{% if page.media_types contains 'video' %} video{% endif %}{% if page.media_types != "no-display, native" and page.media_types contains 'native' %}, native{% endif %}{% if page.media_types == "no-display, native" %}native{% endif %}</td>
<th class="pbTh">Multi Format Support</th>
<td class="pbTd">{% if page.multiformat_supported %}{{page.multiformat_supported}}{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">TCF-EU Support</th>
<td class="pbTd">{% if page.tcfeu_supported == true %}yes{% else %}no{% endif %}</td>
<th class="pbTh">IAB GVL ID</th>
<td class="pbTd">{% if page.gvl_id %}{{page.gvl_id}}{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">GPP Support</th>
<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>
<th class="pbTh">DSA Support</th>
<td class="pbTd">{% if page.dsa_supported == true %}yes{% elsif page.dsa_supported == false %}no{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">USP/CCPA Support</th>
<td class="pbTd">{% if page.usp_supported == true %}yes{% elsif page.usp_supported == false %}no{% else %}check with bidder{% endif %}</td>
<th class="pbTh">COPPA Support</th>
<td class="pbTd">{% if page.coppa_supported == true %}yes{% elsif page.coppa_supported == false %}no{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Supply Chain Support</th>
<td class="pbTd">{% if page.schain_supported == true %}yes{% elsif page.schain_supported == false %}no{% else %}check with bidder{% endif %}</td>
<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>
</tr>
<tr>
<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">Supports Deals</th>
<td class="pbTd">{% if page.deals_supported == false %}no{% elsif page.deals_supported == true %}yes{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Floors Module Support</th>
<td class="pbTd">{% if page.floors_supported == true %}yes{% elsif page.floors_supported == false %}no{% else %}check with bidder{% endif %}</td>
<th class="pbTh">First Party Data Support</th>
<td class="pbTd">{% if page.fpd_supported == true %}yes{% elsif page.fpd_supported == false %}no{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">User IDs</th>
<td class="pbTd">{% if page.userIds and page.userIds != '' %}{{page.userIds}}{% else %}none{% endif %}</td>
<th class="pbTh">ORTB Blocking Support</th>
<td class="pbTd">{% if page.ortb_blocking_supported == true %}yes{% elsif page.ortb_blocking_supported == false %}no{% elsif page.ortb_blocking_supported == 'partial' %}partial{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Privacy Sandbox</th>
<td class="pbTd">{% if page.privacy_sandbox %}{{page.privacy_sandbox}}{% else %}check with bidder{% endif %}</td>
{% if page.pbs == true %}
<th class="pbTh">Prebid Server App Support</th>
<td class="pbTd">{% if page.pbs_app_supported == false %}no{% elsif page.pbs_app_supported == true %}yes{% else %}check with bidder{% endif %}</td>
{% else %}
<th class="pbTh"></th>
<td class="pbTd"></td>
{% endif %}
</tr>

</table>
63 changes: 1 addition & 62 deletions _layouts/bidder.html
Original file line number Diff line number Diff line change
Expand Up @@ -49,68 +49,7 @@ <h3>Note:</h3> This is a Prebid Server adapter only.

<h3>Features</h3>

<table class="table table-bordered table-striped">
<tr>
<th class="pbTh">Bidder Code</th>
<td class="pbTd">{{ page.biddercode }}</td>
<th class="pbTh">Prebid.org Member</th>
<td class="pbTd">{% if page.prebid_member == true %}yes{% else %}no{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Media Types</th>
<td class="pbTd">{% unless page.media_types contains 'no-display' %}display{% if page.media_types contains 'video' %},{% endif %}{% endunless %}{% if page.media_types contains 'video' %} video{% endif %}{% if page.media_types != "no-display, native" and page.media_types contains 'native' %}, native{% endif %}{% if page.media_types == "no-display, native" %}native{% endif %}</td>
<th class="pbTh">TCF-EU Support</th>
<td class="pbTd">{% if page.tcfeu_supported == true %}yes{% else %}no{% endif %}</td>
</tr>
<tr>
<th class="pbTh">User IDs</th>
<td class="pbTd">{% if page.userIds and page.userIds != '' %}{{page.userIds}}{% else %}none{% endif %}</td>
<th class="pbTh">USP/CCPA Support</th>
<td class="pbTd">{% if page.usp_supported == true %}yes{% elsif page.usp_supported == false %}no{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Supply Chain Support</th>
<td class="pbTd">{% if page.schain_supported == true %}yes{% elsif page.schain_supported == false %}no{% else %}check with bidder{% endif %}</td>
<th class="pbTh">COPPA Support</th>
<td class="pbTd">{% if page.coppa_supported == true %}yes{% elsif page.coppa_supported == false %}no{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<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_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>
<td class="pbTd">{% if page.deals_supported == false %}no{% elsif page.deals_supported == true %}yes{% else %}check with bidder{% endif %}</td>
<th class="pbTh">Prebid.js Adapter</th>
<td class="pbTd">{% if page.pbjs == true %}yes{% else %}no{% endif %}</td>
</tr>
<tr>
<th class="pbTh">IAB GVL ID</th>
<td class="pbTd">{% if page.gvl_id %}{{page.gvl_id}}{% else %}check with bidder{% endif %}</td>
<th class="pbTh">Prebid Server Adapter</th>
<td class="pbTd">{% if page.pbs == true %}yes{% else %}no{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Floors Module Support</th>
<td class="pbTd">{% if page.floors_supported == true %}yes{% elsif page.floors_supported == false %}no{% else %}check with bidder{% endif %}</td>
<th class="pbTh">First Party Data Support</th>
<td class="pbTd">{% if page.fpd_supported == true %}yes{% elsif page.fpd_supported == false %}no{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<th class="pbTh">Multi Format Support</th>
<td class="pbTd">{% if page.multiformat_supported %}{{page.multiformat_supported}}{% else %}check with bidder{% endif %}</td>
<th class="pbTh">ORTB Blocking Support</th>
<td class="pbTd">{% if page.ortb_blocking_supported == true %}yes{% elsif page.ortb_blocking_supported == false %}no{% elsif page.ortb_blocking_supported == 'partial' %}partial{% else %}check with bidder{% endif %}</td>
</tr>
<tr>
<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">Privacy Sandbox</th>
<td class="pbTd">{% if page.privacy_sandbox %}{{page.privacy_sandbox}}{% else %}check with bidder{% endif %}</td>
</tr>
</table>
{% include dev-docs/bidder-meta-data.html page=page %}

{{content}}

Expand Down
1 change: 1 addition & 0 deletions dev-docs/bidder-adaptor.md
Original file line number Diff line number Diff line change
Expand Up @@ -1308,6 +1308,7 @@ description: Prebid example Bidder Adapter
biddercode: example
aliasCode: fileContainingPBJSAdapterCodeIfDifferentThenBidderCode
tcfeu_supported: true/false
dsa_supported: true/false
gvl_id: none
usp_supported: true/false
coppa_supported: true/false
Expand Down
3 changes: 2 additions & 1 deletion dev-docs/bidders/adagio.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ media_types: banner, native, video
userIds: all
floors_supported: true
tcfeu_supported: true
dsa_supported: true
usp_supported: true
gpp_supported: true
coppa_supported: true
Expand Down Expand Up @@ -68,7 +69,7 @@ pbjs.bidderSettings = {
| `adUnitElementId` | required | Refers to the adunit html attribute id in a page. | `'gpt-ban-atf'` | `string` |
| `pagetype`* | highly recommended | Describes what kind of content will be present in the page.<br><i>- max length: 30</i><br><i>- max distinctives values: 50</i> | `'article'` | `string` |
| `category`* | recommended | Category of the content displayed in the page.<br><i>- max length: 30</i><br><i>- max distinctives values: 50</i> | `'sport'` | `string` |
| `video` | optional | OpenRTB 2.5 video options object. All options will override ones defined in mediaTypes video.<br>Mandatory: <br>- api <small><i>(your video player must at least support the value 2)</i></small><br> Highly recommended: <br> - playbackmethod <br> Not supported: <br>`protocol`, `companionad`, `companiontype`, `ext` options| `{api: [2], playbackmethod: [6], skip: 1, startdelay: 0}` |
| `video` | optional | OpenRTB 2.5 video options object. All options will override ones defined in mediaTypes video.<br>Mandatory: <br>- api <small><i>(your video player must at least support the value 2)</i></small><br> Highly recommended: <br> - playbackmethod <br> Not supported: <br>`protocol`, `companionad`, `companiontype`, `ext` options| `{api: [2], playbackmethod: [6], skip: 1, startdelay: 0}` | `object` |
| `native` | optional | Partial OpenRTB Native 1.2 request object. Supported fields are:<br>- context<br>- plcmttype | `{context: 1, plcmttype: 2}` | `object` |
| `splitKeyword` | optional | Keyword that can later be used in a split rule targeting to trigger the rule (especially for Direct Seats AB testing) | `'splitrule-one'` | `string` |
| `dataLayer` | optional | A set of arbitrary key-value pairs. This can be used to configure mappings. The keys and values must be strings. | `{placement: 'my-placement', siteid: 'my-siteid'}` | `object` |
Expand Down
1 change: 1 addition & 0 deletions dev-docs/bidders/adf.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ biddercode: adf
media_types: banner, native, video
coppa_supported: true
tcfeu_supported: true
dsa_supported: true
usp_supported: true
prebid_member: true
pbjs: true
Expand Down
3 changes: 2 additions & 1 deletion dev-docs/bidders/appnexus.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ description: Prebid AppNexus Bidder Adaptor
biddercode: appnexus
media_types: banner, video, native
tcfeu_supported: true
dsa_supported: true
prebid_member: true
userIds: all (with commercial activation)
schain_supported: true
Expand Down Expand Up @@ -56,7 +57,7 @@ The table below will reflect both formats, though it's recommended to use the lo
| `member` | optional | The member ID from AppNexus. Must be used with `invCode`. | `'12345'` | `string` |
| `invCode` or `inv_code` | optional | The inventory code from AppNexus. Must be used with `member`. | `'abc123'` | `string` |
| `publisherId` or `publisher_id` | optional | The publisher ID from AppNexus. It is used by the AppNexus end point to identify the publisher when placement id is not provided and `invCode` goes wrong. The `publisherId` parameter can be either a `string` or `integer` for Prebid.js, however `integer` is preferred. | `12345` | `integer` |
| `frameworks` | optional | Array of integers listing API frameworks for Banner supported by the publisher. | `integer` |
| `frameworks` | optional | Array of integers listing API frameworks for Banner supported by the publisher. | `[1,2]` | `array of integer` |
| `user` | optional | Object that specifies information about an external user. See [User Object](#appnexus-user-object) for details. | `user: { age: 25, gender: 0, dnt: true}` | `object` |
| `allowSmallerSizes` or `allow_smaller_sizes` | optional | If `true`, ads smaller than the values in your ad unit's `sizes` array will be allowed to serve. Defaults to `false`. | `true` | `boolean` |
| `usePaymentRule` (PBJS) or `use_pmt_rule` (PBS+PBJS) | optional | If `true`, Appnexus will return net price to Prebid.js after publisher payment rules have been applied. | `true` | `boolean` |
Expand Down
5 changes: 3 additions & 2 deletions dev-docs/bidders/criteo.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ pbs: true
biddercode: criteo
media_types: display, video, native (pbjs only)
tcfeu_supported: true
dsa_supported: true
usp_supported: true
userIds: britepoolId, criteo, id5Id, identityLink, liveIntentId, netId, parrableId, pubCommonId, pubProvidedId, sharedId, unifiedId
prebid_member: true
Expand Down Expand Up @@ -73,8 +74,8 @@ In addition, Criteo adapter relies on parameters specified in the mediaTypes.vid
| `context` | required | `outstream`, `instream` or `long-form` | `instream` | `string` |
| `mimes` | required | List of the content MIME types supported by the player | `["video/mp4"]` | `Array<string>` |
| `playerSize` | required | Width and height of the player | `[640, 480]` | `Array<integer>` |
| `protocols` | required | Supported video bid response protocols. VAST 1.0: `1`; VAST 2.0: `2`; VAST 3.0: `3`; VAST 1.0 Wrapper: `4`; VAST 2.0 Wrapper: `5`; VAST 3.0 Wrapper: `6`; | `|5, 6]` | `Array<integer>` |
| `maxduration` | required | Maximum ad duration in seconds | `20` | `integer` |
| `protocols` | required | Supported video bid response protocols. VAST 1.0: `1`; VAST 2.0: `2`; VAST 3.0: `3`; VAST 1.0 Wrapper: `4`; VAST 2.0 Wrapper: `5`; VAST 3.0 Wrapper: `6`; | `[5, 6]` | `Array<integer>` |
| `maxduration` | required | Maximum ad duration in seconds | `20` | `integer` |
| `api` | required | API frameworks supported. VPAID 1.0: `1`; VPAID 2.0: `2`; MRAID 1.0: `3`; ORMMA: `4`; MRAID 2.0: `5`; MRAID 3.0: `6`; OMID 1.0: `7`; | `[1, 2]` | `Array<integer>` |
| `plcmt` | optional | 1=in-stream, 2=accompanying content, 3=interstitial, 4=no content/standalone. Highly recommended to comply with new IAB video specifications. | `1` | `integer` |

Expand Down
1 change: 1 addition & 0 deletions dev-docs/bidders/ix.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ pbs_app_supported: true
schain_supported: true
coppa_supported: true
tcfeu_supported: true
dsa_supported: true
floors_supported: true
usp_supported: true
gpp_supported: true
Expand Down
1 change: 1 addition & 0 deletions dev-docs/bidders/onetag.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ pbs: true
biddercode: onetag
media_types: banner, video
tcfeu_supported: true
dsa_supported: true
gpp_supported: true
gvl_id: 241
usp_supported: true
Expand Down
1 change: 1 addition & 0 deletions dev-docs/bidders/rtbhouse.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ title: RTBHouse
description: Prebid RTB House Bidder Adapter
gvl_id: 16
tcfeu_supported: true
dsa_supported: true
pbjs: true
pbs: true
biddercode: rtbhouse
Expand Down
1 change: 1 addition & 0 deletions dev-docs/bidders/rubicon.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ title: Rubicon Project
description: Rubicon Project Prebid Bidder Adapter
biddercode: rubicon
tcfeu_supported: true
dsa_supported: true
gpp_sids: tcfeu, usnat, usstate_all, usp
usp_supported: true
coppa_supported: true
Expand Down
1 change: 1 addition & 0 deletions dev-docs/bidders/stroeerCore.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ description: Stroeer Bidder Adapter
biddercode: stroeerCore
media_types: banner, video
tcfeu_supported: true
dsa_supported: true
schain_supported: true
coppa_supported: false
usp_supported: false
Expand Down
Loading

0 comments on commit 6fba863

Please sign in to comment.