diff --git a/debugging/debugging.md b/debugging/debugging.md
index 47c4ba2a5c..5c88a7050b 100644
--- a/debugging/debugging.md
+++ b/debugging/debugging.md
@@ -21,4 +21,3 @@ benefit from implementation improvements.
Further Reading
+ [Prebid.js Troubleshooting Guide]({{site.github.url}}/dev-docs/prebid-troubleshooting-guide.html)
-+ [Prebid.js Troubleshooting Tips]({{site.github.url}}/dev-docs/troubleshooting-tips.html)
diff --git a/dev-docs/common-issues.md b/dev-docs/common-issues.md
index 66eb3693ab..ac9cd05993 100644
--- a/dev-docs/common-issues.md
+++ b/dev-docs/common-issues.md
@@ -38,6 +38,6 @@ Check the bid prices. If they are low and are getting reduced to $0 due to price
{:toc}
+ [Prebid.js FAQ](/dev-docs/faq.html)
-+ [Prebid Tips for Troubleshooting]({{site.github.url}}/dev-docs/troubleshooting-tips.html)
++ [Prebid Tips for Troubleshooting](/troubleshooting/troubleshooting-guide.html)
diff --git a/dev-docs/examples/meta-bid-filtering b/dev-docs/examples/meta-bid-filtering
new file mode 100644
index 0000000000..74fe72e314
--- /dev/null
+++ b/dev-docs/examples/meta-bid-filtering
@@ -0,0 +1,18 @@
+---
+layout: example
+title: Meta Bid Filtering
+description: Bid filtering on meta object example
+sidebarType: 1
+
+
+about:
+- Filter particular values or if meta object is provided
+- Integration with single Google Ad Manager ad slot
+- Default price granularity
+
+jsfiddle_link:
+https://jsfiddle.net/Prebid_Examples/0s4eug1d/18/embedded/html,result
+
+code_height:
+2300
+---
diff --git a/dev-docs/examples/meta-bid-filtering.md b/dev-docs/examples/meta-bid-filtering.md
new file mode 100644
index 0000000000..6fe914df06
--- /dev/null
+++ b/dev-docs/examples/meta-bid-filtering.md
@@ -0,0 +1,15 @@
+---
+layout: example
+title: Meta Bid Filtering
+left_nav_override: Examples
+description: Bid filtering on meta object example
+sidebarType: 1
+
+about:
+- Bidders can supply metadata about the bid such as advertiser domain. See the "meta" fields in the
bid response for the full list.
+- This is an example that filters bid responses based on the metadata object.
+
+jsfiddle_link: jsfiddle.net/Prebid_Examples/0s4eug1d/18/embedded/html,result
+
+code_height: 2300
+---
diff --git a/dev-docs/faq.md b/dev-docs/faq.md
index d5a397137e..805f7a1256 100644
--- a/dev-docs/faq.md
+++ b/dev-docs/faq.md
@@ -160,6 +160,11 @@ It's technically possible, but we don't recommend doing this:
If all this wasn't enough to warn you away from trying, it should work if you name the PBJS global differently for each instance (https://github.com/prebid/Prebid.js/blob/master/package.json#L20)
+## Can I filter bid responses that don't meet my criteria?
+
+Yes. Many bidders provide metadata about the bid that can be used in troubleshooting
+and filtering. See the [list of bid response metadata](/dev-docs/bidder-adaptor.html#interpreting-the-response) and the [filtering example](/dev-docs/examples/meta-bid-filtering.html).
+
## Does Prebid.js resolve the AUCTION_PRICE macro?
Yes, but in a way that could cause discrepancies in reporting. It's recommended
@@ -168,9 +173,8 @@ that [bid adapters resolve OpenRTB macros](/dev-docs/bidder-adaptor.html#resolve
For historic reasons, Prebid will resolve the AUCTION_PRICE macro, but it will be after currency conversion and any bid adjustments.
This differs from how OpenRTB defines this value as being the clearing price in the bid currency. Header Bidding is a first-price auction, the best candidate for “clearing price” is the original bid itself.
-
## Related Reading
-+ [Prebid.js Dev Tips]({{site.baseurl}}/dev-docs/troubleshooting-tips.html)
-+ [Prebid.js Common Issues]({{site.baseurl}}/dev-docs/common-issues.html)
++ [Prebid.js Troubleshooting Guide](/troubleshooting/troubleshooting-guide.html)
++ [Prebid.js Common Issues](/dev-docs/common-issues.html)
+ [Prebid.js issues tagged 'question'](https://github.com/prebid/Prebid.js/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Aquestion%20)
diff --git a/dev-docs/prebid-troubleshooting-guide.md b/dev-docs/prebid-troubleshooting-guide.md
index a842461c37..70f4d1f22b 100644
--- a/dev-docs/prebid-troubleshooting-guide.md
+++ b/dev-docs/prebid-troubleshooting-guide.md
@@ -2,10 +2,6 @@
layout: page_v2
title: Prebid.js Troubleshooting Guide
head_title: Prebid.js Troubleshooting Guide
-description: How to troubleshoot Prebid.js from the perspective of an ad call from start to finish.
-pid: 10
-top_nav_section: dev_docs
-nav_section: troubleshooting
sidebarType: 1
---
@@ -14,109 +10,4 @@ sidebarType: 1
# Prebid.js Troubleshooting Guide
{:.no_toc}
-{: .alert.alert-danger :}
-Prebid.org does not support any version of Prebid.js prior to version 1.0.
-
-Use this guide to troubleshoot your Prebid.js integration. You can follow this guide sequentially to determine whether Prebid.js is working as intended on your website. It takes you through the ad call from start to finish.
-
-* TOC
-{:toc}
-
-## Check Your Prebid Version
-
-The open source code in Prebid.js can change frequently. To see what version of Prebid.js you are using, open your browser console and type `pbjs.version;`.
-
-You can reference this against the changes listed in the [Prebid.js Release Notes](https://github.com/prebid/Prebid.js/releases).
-
-## Delay the Ad Server Call so Key-Values can be Set
-
-Make sure that you delay any calls to the ad server. This allows all of the key-values to be set before the auction in the ad server occurs.
-
-Within Google Ad Manager, this is achieved by adding the following code to your page. It should be called before any of the ad server code to make sure it runs first.
-
-{% highlight js %}
-var googletag = googletag || {};
-googletag.cmd = googletag.cmd || [];
-googletag.cmd.push(function() {
- googletag.pubads().disableInitialLoad();
-});
-{% endhighlight %}
-
-## Check the Ad Units on the Page
-
-Make sure the ad units configured for Prebid.js match up with the ad units that have been set up in your ad server.
-
-You can review what ad units have been configured for Prebid by opening your browser console and typing `pbjs.getBidResponses();`. This will show a list of what div IDs are present:
-
-![pbjs.getBidResponses() showing ad units in browser console]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/ad-units.png "pbjs.getBidResponses() showing ad units in browser console"){: .pb-lg-img :}
-
-## List your Bids and Bidders
-
-Open your browser console and type `pbjs.getBidResponses();` to see a list of the ad units that have been configured. This also shows what bids have been returned from each of the bidder partners in chronological order as shown in the screenshot below.
-
-To see all of the winning bids, open your browser console and type [`pbjs.getAllWinningBids();`]({{site.baseurl}}/dev-docs/publisher-api-reference/getAllWinningBids.html).
-
-{: .alert.alert-danger :}
-Keep in mind that any bid responses that come back after [the timeout you configured during setup]({{site.github.url}}/dev-docs/getting-started.html#set-the-ad-server-timeout) will not be sent to the ad server.
-
-{: .alert.alert-success :}
-You can also [print this data to the console in table format]({{site.baseurl}}/dev-docs/troubleshooting-tips.html#see-all-bids-in-the-console) for easier reading.
-
-![pbjs.getBidResponses() in browser console]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/bids.png "pbjs.getBidResponses()"){: .pb-lg-img :}
-
-## Verify your Ad Server Targeting
-
-After the auction on page has occurred, Prebid.js will set key-value targeting for the ad server for those bids that have been returned before the [timeout you configured during setup]({{site.github.url}}/dev-docs/getting-started.html#set-the-ad-server-timeout).
-
-To see what values Prebid.js intends to send to the ad server, open your browser console and type `pbjs.getAdserverTargeting();` as shown below:
-
-![pbjs.getAdserverTargeting() in browser console]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/ad-server-target.png "pbjs.getAdserverTargeting()"){: .pb-lg-img :}
-
-{: .alert.alert-danger :}
-Note that if no bids are returned, no key-values will be set. You may need to increase your timeout setting or reach out to your bidder partners to determine why no bid responses are being sent.
-
-## Check the Ad Server's Auction
-
-After the Prebid auction has occurred and key-values have been set for the ad server, the ad server will use the line items targeting those key-values within its auction.
-
-If you're using Google Ad Manager, you can verify this by using the [Google Publisher Console](https://support.google.com/dfp_sb/answer/2462712?hl=en), which can be accessed as follows:
-
-+ Open your browser's console and type `googletag.openConsole();`
-
-+ Append `googfc` as a query parameter to the URL. Then, click the *Delivery Diagnostics* option to reveal most of the information described below.
-
-To make sure your ad server is set up correctly, answer the following questions:
-
-+ **How many ads have been fetched for an ad unit?** Ideally, only 1 ad will be requested on page load. If not, check for unnecessary extra calls to the ad server in your page's source code.
-
- ![Google Publisher Console Ad fetch count]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/ad-server-1.png "Google Publisher Console Ad fetch count"){: .pb-sm-img :}
-
-+ **Are the key-values being set in the ad server?** If not, review your page's source code to ensure that the Prebid auction completes **before** sending the key-value targeting to the ad server.
-
- ![Google Ad Manager Delivery Troubleshooting]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/ad-server-2.png "Google Ad Manager Delivery Troubleshooting"){: .pb-lg-img :}
-
-+ **Has the ad server order been activated?** If not, you'll have to activate the order to see Prebid-delivered ads.
-
-+ **Are there other higher priority campaigns running within your ad server?** Higher priority campaigns will prevent Prebid ads with a higher CPM bid from winning in the ad server's auction. For testing purposes, you may want to pause these campaigns or have them excluded when the prebid key values are present.
-
-+ **Is there other remnant inventory in the ad server with a higher CPM that is winning?** To test for this, you may want to use a test creative set up within a bidder partner that has a high CPM or create artificial demand with a [bidCPMadjustment]({{site.github.url}}/dev-docs/publisher-api-reference/bidderSettings.html).
-
-+ **Have you set up all of the line items in the ad server to match the [setPriceGranularity setting]({{site.github.url}}/dev-docs/examples/custom-price-buckets.html) within Prebid.js?** All of the line items that correspond to your price granularity settings must be set up in your ad server. When there are gaps in the price granularity of your line item setup, bids will be reduced according to the size of the gap. For example, with [dense granularity]({{site.github.url}}/dev-docs/publisher-api-reference.html#dense-granularity), a $3.32 bid will be sent to the ad server as $3.30.
-
-## Look for the Winning Bid
-
-When a prebid line item wins the ad server's auction, a `renderAd` event will be logged in the browser console. To see this event, you need to do either of the following before the auction:
-
-+ Have typed `pbjs.logging=true` into your your browser console
-
-+ Appended `pbjs_debug=true` as a query parameter to the URL
-
-When this event is logged, it shows that Prebid.js has requested to render the ad from the winning bidder partner, and that this partner's bid has won both the Prebid and ad server auctions.
-
-![renderAd event in browser console]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/render-ad.png "renderAd event in browser console"){: .pb-lg-img :}
-
-## Related Topics
-
-+ [Developer Troubleshooting Tips]({{site.github.url}}/dev-docs/troubleshooting-tips.html)
-
-+ [Common Setup Issues]({{site.github.url}}/dev-docs/common-issues.html)
+Moved to a new [Troubleshooting Guide](/troubleshooting/troubleshooting-guide.html)
diff --git a/dev-docs/publisher-api-reference/getNoBids.md b/dev-docs/publisher-api-reference/getNoBids.md
index 8730a42852..aa2ebd491f 100644
--- a/dev-docs/publisher-api-reference/getNoBids.md
+++ b/dev-docs/publisher-api-reference/getNoBids.md
@@ -5,6 +5,6 @@ description:
---
-Use this method to get all of the bid requests that resulted in a NO_BID. These are bid requests that were sent to a bidder but, for whatever reason, the bidder decided not to bid on. Used by debugging snippet in [Tips for Troubleshooting](/dev-docs/troubleshooting-tips.html).
+Use this method to get all of the bid requests that resulted in a NO_BID. These are bid requests that were sent to a bidder but, for whatever reason, the bidder decided not to bid on. Used by debugging snippet in the [Troubleshooting Guide](/troubleshooting/troubleshooting-guide.html).
-+ `pbjs.getNoBids()`: returns an array of bid request objects that were deliberately not bid on by a bidder.
\ No newline at end of file
++ `pbjs.getNoBids()`: returns an array of bid request objects that were deliberately not bid on by a bidder.
diff --git a/dev-docs/publisher-api-reference/setConfig.md b/dev-docs/publisher-api-reference/setConfig.md
index ce957e0eca..e9c0a4ee33 100644
--- a/dev-docs/publisher-api-reference/setConfig.md
+++ b/dev-docs/publisher-api-reference/setConfig.md
@@ -52,7 +52,7 @@ Debug mode can be enabled permanently in a page if desired. In debug mode,
Prebid.js will post additional messages to the browser console and cause Prebid Server to
return additional information in its response. If not specified, debug is off.
Note that debugging can be specified for a specific page view by adding
-`pbjs_debug=true` to the URL's query string. e.g.
/pbjs_demo.html?pbjs_debug=true
See [Prebid.js troubleshooting tips](/dev-docs/troubleshooting-tips.html) for more information.
+`pbjs_debug=true` to the URL's query string. e.g.
/pbjs_demo.html?pbjs_debug=true
See [Prebid.js troubleshooting guide](/troubleshooting/troubleshooting-guide.html) for more information.
Turn on debugging permanently in the page:
{% highlight js %}
diff --git a/dev-docs/troubleshooting-tips.md b/dev-docs/troubleshooting-tips.md
index 874e3d90e6..1b2375c9e1 100644
--- a/dev-docs/troubleshooting-tips.md
+++ b/dev-docs/troubleshooting-tips.md
@@ -3,12 +3,9 @@ layout: page_v2
title: Dev Tips
description: Troubleshooting tips for developers implementing Prebid.js Header Bidding.
pid: 0
-
-top_nav_section: dev_docs
nav_section: troubleshooting
redirect_from: "/dev-docs/toubleshooting-tips.html"
sidebarType: 1
-
---
@@ -16,221 +13,4 @@ sidebarType: 1
# Tips for Troubleshooting
{:.no_toc}
-This page has tips and tricks for troubleshooting issues with your Prebid.js integration.
-
-* TOC
-{:toc}
-
-## Turn on Prebid.js debug messages
-
-Add `pbjs_debug=true` to the end of your page's URL. For example:
/pbjs_demo.html?pbjs_debug=true
. This will add two types of messages to your browser's developer console:
-
-1. Prebid.js suppresses Javascript errors in the normal mode to not break the rest of your page. Adding the `pbjs_debug` parameter will expose the Javascript errors.
-2. You'll find additional debug messages. Filter the messages by string `MESSAGE:`. For example:
-
-
-
-![Prebid.js Debug Console]({{ site.github.url }}/assets/images/dev-docs/pbjs_debug-console-log.png){: .pb-sm-img :}
-
-
-
-{: .table .table-bordered .table-striped }
-| Message | Description |
-| :---- |:--------|
-| Calling bidder | When Prebid.js sends out bid requests, this message is logged |
-| Set key value for placement | After all the bids came back, or when timeout is reached, prebid.js will set keyword targeting for the defined ad units. |
-| Calling renderAd | If a header bidding bid wins the ad server's auction, prebid.js will render the winning bid's creative. |
-
-
-
-## Turn on your ad server's developer console
-
-The ad server's developer console usually provide information such as targeting, latency, and key events logging. For example, here is a screenshot of Google Ad Manager's GPT developer console logs:
-
-
-
-![Prebid.js Debug Console]({{ site.github.url }}/assets/images/dev-docs/googfc.png){: .pb-md-img :}
-
-
-
-## See all bids in the console
-
-To print information about all of the bids that come in to the Console on any page that is running Prebid.js, follow these steps.
-
-Open the Chrome Dev Tools. In the **Sources** tab, next to **Content Scripts**, click the **>>** button and you can add **Snippets**:
-
-![View Snippets in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/01-view-snippets.png){: .pb-sm-img :}
-
-
-
-Right-click to add a **New** snippet:
-
-![Add New Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/02-add-new-snippet.png){: .pb-sm-img :}
-
-
-
-Paste in the following code using Control-V (or Command-V on Mac), and give the snippet a name, such as 'show-all-bids':
-
-```javascript
-(function() {
- function forEach(responses, cb) {
- Object.keys(responses).forEach(function(adUnitCode) {
- var response = responses[adUnitCode];
- response.bids.forEach(function(bid) {
- cb(adUnitCode, bid);
- });
- });
- }
- var winners = pbjs.getAllWinningBids();
- var output = [];
- forEach(pbjs.getBidResponses(), function(code, bid) {
- output.push({
- bid: bid,
- adunit: code,
- adId: bid.adId,
- bidder: bid.bidder,
- time: bid.timeToRespond,
- cpm: bid.cpm,
- msg: bid.statusMessage,
- rendered: !!winners.find(function(winner) {
- return winner.adId==bid.adId;
- })
- });
- });
- forEach(pbjs.getNoBids && pbjs.getNoBids() || {}, function(code, bid) {
- output.push({
- msg: "no bid",
- adunit: code,
- adId: bid.bidId,
- bidder: bid.bidder
- });
- });
- if (output.length) {
- if (console.table) {
- console.table(output);
- } else {
- for (var j = 0; j < output.length; j++) {
- console.log(output[j]);
- }
- }
- } else {
- console.warn('NO prebid responses');
- }
-})();
-```
-
-
-
-Right-click the snippet and choose **Run**:
-
-![Run a Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/03-run-snippet.png){: .pb-sm-img :}
-
-
-
-Check the output in Console to see the bids:
-
-![See Snippet Output in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/04-snippet-output.png){: .pb-sm-img :}
-
-## See all winning bids in the console
-
-To print information about all of the winning bids that come in to the Console on any page that is running Prebid.js, follow these steps.
-
-Open the Chrome Dev Tools. In the **Sources** tab, next to **Content Scripts**, click the **>>** button and you can add **Snippets**:
-
-![View Snippets in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/01-view-snippets.png){: .pb-sm-img :}
-
-
-
-Right-click to add a **New** snippet:
-
-![Add New Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/02-add-new-snippet.png){: .pb-sm-img :}
-
-
-
-Paste in the following code using Control-V (or Command-V on Mac), and give the snippet a name, such as 'show-all-winning-bids':
-
-```javascript
-var bids = pbjs.getAllWinningBids();
-var output = [];
-for (var i = 0; i < bids.length; i++) {
- var b = bids[i];
- output.push({
- 'adunit': b.adUnitCode, 'adId': b.adId, 'bidder': b.bidder,
- 'time': b.timeToRespond, 'cpm': b.cpm
- });
-}
-if (output.length) {
- if (console.table) {
- console.table(output);
- } else {
- for (var j = 0; j < output.length; j++) {
- console.log(output[j]);
- }
- }
-} else {
- console.warn('No prebid winners');
-}
-```
-
-
-
-Right-click the snippet and choose **Run**:
-
-![Run a Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/03-run-snippet.png){: .pb-sm-img :}
-
-
-
-Check the output in Console to see the bids (note that this screenshot shows the output from "see all bids" but they're very similar):
-
-![See Snippet Output in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/04-snippet-output.png){: .pb-sm-img :}
-
-## Modify bid responses for testing
-
-Using `pbjs.setConfig({debugging:{ ... }})` from the javascript console, it is possible to override and filter bids as they come in.
-When this type of debugging is enabled it will persist across page loads using `sessionStorage`. This allows
-for easy testing of pages that immediately start auctions (most pages), but also means you need to remember
-to deactivate debugging when you are done (or clear your local storage / use incognito mode when testing).
-
-```
-// Filtering bidders
-javascript console> pbjs.setConfig({
- debugging: {
- enabled: true, // suppresses bids from other bidders
- bidders: ['bidderA', 'bidderB']
- }
-});
-
-// Overwriting bid responses for all bidders
-javascript console> pbjs.setConfig({
- debugging: {
- enabled: true,
- bids: [{
- cpm: 1.5
- }]
- }
-});
-
-// Overwriting bid responses for a specific bidder and adUnit code (can use either separately)
-javascript console> pbjs.setConfig({
- debugging: {
- enabled: true,
- bids: [{
- bidder: 'bidderA',
- adUnitCode: '/19968336/header-bid-tag-0',
- cpm: 1.5
- }]
- }
-});
-
-// Disabling debugging
-javascript console> pbjs.setConfig({
- debugging: {
- enabled: false
- }
-});
-```
-
-## Related Reading
-
-+ [Prebid.js FAQ](/dev-docs/faq.html)
-+ [Prebid.js Common Issues](/dev-docs/common-issues.html)
+Moved to [the PBJS Troubleshooting Guide](/troubleshooting/troubleshooting-guide.html).
diff --git a/prebid/prebidjs.md b/prebid/prebidjs.md
index 224260da91..8dd597b47f 100644
--- a/prebid/prebidjs.md
+++ b/prebid/prebidjs.md
@@ -9,7 +9,7 @@ sidebarType: 1
# What is Prebid.js?
-Prebid.js is a feature-rich header bidding platform for the web, including more than 200 demand sources and 15 analytics adapters. It supports currency conversion, GDPR, common ID systems, and multiple ad servers.
+Prebid.js is a feature-rich header bidding platform for the web, including more than 300 demand sources and 50 analytics adapters. It supports currency conversion, GDPR, common ID systems, and multiple ad servers.
## How Does Prebid.js Work?
@@ -44,9 +44,9 @@ We want Prebid.js Core to be fast, fair, and open because it represents the head
The Prebid.js Adapters plug into Prebid.js Core and are meant to be interchangeable depending on who the publisher wants to work with. There are two types of adapters: bidder and analytics.
-Bidder Adapters are supposed to represent the SSPs & Exchanges you want to work with. There are currently over 200 bidder adapters. This set of working header bidding integrations is part of what makes Prebid.js so special. Each company maintains their own Prebid.js adapter to provide the freshest code for publishers, rather than a proprietary wrapper solution trying to reverse engineer another company's adapter. It's a win-win for everyone.
+Bidder Adapters are supposed to represent the SSPs & Exchanges you want to work with. There are currently over 300 bidder adapters. This set of working header bidding integrations is part of what makes Prebid.js so special. Each company maintains their own Prebid.js adapter to provide the freshest code for publishers, rather than a proprietary wrapper solution trying to reverse engineer another company's adapter. It's a win-win for everyone.
-Analytics adapters offer the ability to learn more about latency, revenues, bid rates, etc. Please see our [analytics page]({{site.github.url}}/dev-docs/integrate-with-the-prebid-analytics-api.html) for more information.
+Analytics adapters offer the ability to learn more about latency, revenues, bid rates, etc. Please see our [analytics page](/dev-docs/integrate-with-the-prebid-analytics-api.html) for more information.
## Prebid.js Modules
@@ -54,17 +54,17 @@ Prebid.js Modules also plug into the Prebid.js Core. They add functionality not
in the Core that not every publisher needs. Example modules:
+ GDPR support (the [consentManagement]({{site.baseurl}}/dev-docs/modules/consentManagement.html) module)
-+ currency conversion (the [currency]({{site.baseurl}}/dev-docs/modules/currency.html) module)
++ Currency conversion (the [currency]({{site.baseurl}}/dev-docs/modules/currency.html) module)
+ Server-to-server testing (the [s2sTest]({{site.baseurl}}/dev-docs/modules/s2sTesting.html) module)
-+ ... others
++ ... [many others](/dev-docs/modules/index.html)
## Cookies and Local Storage
-On behalf of publishers or third-parties, Prebid.js may set cookies or local storage in your browser. These are the first party cookies it can set on behalf of publishers, meaning that consent is not checked:
+On behalf of publishers or third-parties, Prebid.js may set cookies or local storage in your browser. These are the first party cookies it can set on behalf of publishers:
- prebid.cookieTest - used to verify whether other cookies should be set.
- _pbjs_userid_consent_data - used to make consent data conveniently available through various modules.
-All other cookies and local storage (including those set by Prebid.org-owned modules like [SharedId](/dev-docs/modules/userId.html#shared-id-user-id-submodule)) are subject to privacy regulations such as GDPR.
+All other cookies and local storage (including those set by Prebid.org-owned modules like [SharedId](/identity/sharedid.html) are subject to privacy regulations such as GDPR.
## Further Reading
diff --git a/troubleshooting/troubleshooting-guide.md b/troubleshooting/troubleshooting-guide.md
index 8254dd21a7..7dd94f51f8 100644
--- a/troubleshooting/troubleshooting-guide.md
+++ b/troubleshooting/troubleshooting-guide.md
@@ -106,7 +106,7 @@ To see all of the winning bids, open your browser console and type `pbjs.getAllW
Keep in mind that any bid responses that come back after the [timeout you configured](/dev-docs/getting-started.html#set-the-ad-server-timeout) during setup will not be sent to the ad server.
{: .pb-alert .pb-alert-tip :}
-You can also print this data to the console in [table format](/dev-docs/troubleshooting-tips.html#see-all-bids-in-the-console) for easier reading.
+You can also print this data to the console in [table format](#see-all-bids-in-the-console) for easier reading.
## Modify bid responses for testing
@@ -217,12 +217,12 @@ Open your browser console and type `pbjs.getBidResponses();` to see a list of th
To see all of the winning bids, open your browser console and type [`pbjs.getAllWinningBids();`](/dev-docs/publisher-api-reference/getAllWinningBids.html).
{: .alert.alert-danger :}
-Keep in mind that any bid responses that come back after [the timeout you configured during setup]({{site.github.url}}/dev-docs/getting-started.html#set-the-ad-server-timeout) will not be sent to the ad server.
+Keep in mind that any bid responses that come back after [the timeout you configured during setup](/dev-docs/getting-started.html#set-the-ad-server-timeout) will not be sent to the ad server.
{: .alert.alert-success :}
-You can also [print this data to the console in table format]({{site.baseurl}}/dev-docs/troubleshooting-tips.html#see-all-bids-in-the-console) for easier reading.
+You can also [print this data to the console in table format](#see-all-bids-in-the-console) for easier reading.
-![pbjs.getBidResponses() in browser console]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/bids.png "pbjs.getBidResponses()"){: .pb-lg-img :}
+![pbjs.getBidResponses() in browser console](/assets/images/overview/prebid-troubleshooting-guide/bids.png "pbjs.getBidResponses()"){: .pb-lg-img :}
@@ -232,13 +232,13 @@ To print information about all of the bids that come in to the Console on any pa
Open the Chrome Dev Tools. In the **Sources** tab, next to **Content Scripts**, click the **>>** button and you can add **Snippets**:
-![View Snippets in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/01-view-snippets.png){: .pb-sm-img :}
+![View Snippets in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/01-view-snippets.png){: .pb-sm-img :}
Right-click to add a **New** snippet:
-![Add New Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/02-add-new-snippet.png){: .pb-sm-img :}
+![Add New Snippet in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/02-add-new-snippet.png){: .pb-sm-img :}
@@ -296,13 +296,13 @@ Paste in the following code using Control-V (or Command-V on Mac), and give the
Right-click the snippet and choose **Run**:
-![Run a Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/03-run-snippet.png){: .pb-sm-img :}
+![Run a Snippet in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/03-run-snippet.png){: .pb-sm-img :}
Check the output in Console to see the bids:
-![See Snippet Output in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/04-snippet-output.png){: .pb-sm-img :}
+![See Snippet Output in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/04-snippet-output.png){: .pb-sm-img :}
@@ -312,13 +312,13 @@ To print information about all of the winning bids that come in to the Console o
Open the Chrome Dev Tools. In the **Sources** tab, next to **Content Scripts**, click the **>>** button and you can add **Snippets**:
-![View Snippets in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/01-view-snippets.png){: .pb-sm-img :}
+![View Snippets in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/01-view-snippets.png){: .pb-sm-img :}
Right-click to add a **New** snippet:
-![Add New Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/02-add-new-snippet.png){: .pb-sm-img :}
+![Add New Snippet in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/02-add-new-snippet.png){: .pb-sm-img :}
@@ -351,13 +351,13 @@ if (output.length) {
Right-click the snippet and choose **Run**:
-![Run a Snippet in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/03-run-snippet.png){: .pb-sm-img :}
+![Run a Snippet in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/03-run-snippet.png){: .pb-sm-img :}
Check the output in Console to see the bids (note that this screenshot shows the output from "see all bids" but they're very similar):
-![See Snippet Output in Dev Tools]({{site.github.url}}/assets/images/dev-docs/troubleshooting-tips/04-snippet-output.png){: .pb-sm-img :}
+![See Snippet Output in Dev Tools](/assets/images/dev-docs/troubleshooting-tips/04-snippet-output.png){: .pb-sm-img :}
@@ -399,7 +399,7 @@ To make sure your ad server is set up correctly, answer the following questions:
+ **Is there other remnant inventory in the ad server with a higher CPM that is winning?** To test for this, you may want to use a test creative set up within a bidder partner that has a high CPM or create artificial demand with a [bidCPMadjustment](/dev-docs/publisher-api-reference/bidderSettings.html).
-+ **Have you set up all of the line items in the ad server to match the [setPriceGranularity setting]({{site.github.url}}/dev-docs/examples/custom-price-buckets.html) within Prebid.js?** All of the line items that correspond to your price granularity settings must be set up in your ad server. When there are gaps in the price granularity of your line item setup, bids will be reduced according to the size of the gap. For example, with [dense granularity](/dev-docs/publisher-api-reference/setConfig.html#denseGranularityBucket), a $3.32 bid will be sent to the ad server as $3.30.
++ **Have you set up all of the line items in the ad server to match the [setPriceGranularity setting](/dev-docs/examples/custom-price-buckets.html) within Prebid.js?** All of the line items that correspond to your price granularity settings must be set up in your ad server. When there are gaps in the price granularity of your line item setup, bids will be reduced according to the size of the gap. For example, with [dense granularity](/dev-docs/publisher-api-reference/setConfig.html#denseGranularityBucket), a $3.32 bid will be sent to the ad server as $3.30.
@@ -413,7 +413,7 @@ When a prebid line item wins the ad server's auction, a `renderAd` event will be
When this event is logged, it shows that Prebid.js has requested to render the ad from the winning bidder partner, and that this partner's bid has won both the Prebid and ad server auctions.
-![renderAd event in browser console]({{site.github.url}}/assets/images/overview/prebid-troubleshooting-guide/render-ad.png "renderAd event in browser console"){: .pb-lg-img :}
+![renderAd event in browser console](/assets/images/overview/prebid-troubleshooting-guide/render-ad.png "renderAd event in browser console"){: .pb-lg-img :}
@@ -425,7 +425,7 @@ The following parameters in the `bidResponse` object are common across all bidde
| Name | Type | Description | Example |
|----------+---------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------|
| `bidder` | String | Unique bidder code used by ad server's line items to identify the bidder | `"appnexus"` |
-| `adId` | String | Unique identifier of a bid creative. Used by the line item's creative as in [this example]({{site.baseurl}}/adops/send-all-bids-adops.html#step-3-add-a-creative) | `"123"` |
+| `adId` | String | Unique identifier of a bid creative. Used by the line item's creative as in [this example](/adops/send-all-bids-adops.html#step-3-add-a-creative) | `"123"` |
| `pbLg` | String | Low granularity price bucket: $0.50 increment, capped at $5, floored to 2 decimal places (0.50, 1.00, 1.50, ..., 5.00) | `"1.50"` |
| `pbMg` | String | Medium granularity price bucket: 0.10 increment, capped at $20, floored to 2 decimal places (0.10, 0.20, ..., 19.90, 20.00) | `"1.60"` |
| `pbHg` | String | High granularity price bucket: 0.01 increment, capped at $20, floored to 2 decimal places (0.01, 0.02, ..., 19.99, 20.00) | `"1.61"` |