Troubleshooting
Troubleshooting is a bug detection functionality. It allows users to view logs supply requests in real-time (details of the request, parameters, values, and stages of the request).
This section is located in the “Tools” tab.

To get started with this functionality, first select the desired placement, which will be used to view the activity in real-time.
After selecting the placement, detailed information on the placement will be available.
Click on the Run button and the Troubleshooting process will start. The Troubleshooting will process up to 100 received requests or up to 5 minutes, after which the process will be stopped.
Once you've selected a placement but before clicking "Run," you'll see a text field labeled "Historical sample of requests." This field provides insights into the historical requests related to your chosen placement.
In the "Request Details" tab, you'll find a history of requests for the selected placement. Here's what you need to know:
Record Limit: The system retains up to 100 requests.
Updates: Every hour, three requests from each TDM are added, regardless of accuracy.
Order: New requests are added to the top of the list, overwriting the oldest ones.
Press the Stop button if there is enough data and you want to stop without resetting the already displayed data.
Also you can use the Run & Send to email button.
By clicking, requests will be collected until the limit of 100 requests is reached or up to 24 hours.
Upon reaching the request limit or time, you will receive an email with a link (its lifetime is 72 hours) to the generated page with requests/responses. Do not forget to log into the system if there is no active session at the moment.
Please keep in mind that the maximum number of simultaneously active troubleshooting sessions:
for UI - 10
for Email - 10

The data received can be viewed in 4 proposed options:
Setting / parameter | Description |
---|---|
Requests details | View of Parameters, Headers, Stages, Setting Names and their Values. |
Parameters health | Analysis of the validity of parameters and their values in tracked requests. |
Server funnel | View of all tracked requests in the form of a server funnel from Ad Call to Impression, with a % ratio. |
Demand | View of all tracked statuses: Exclude, Invalid bid, No bid, Bid lost (no reasons), Bid filtered, Bid win |
Display as - Requests details
Each request is displayed one after another. The status request is written next to it, and the request itself is written in full. Sorting places new requests on top of the list.
List of statuses and their meaning | |
Prebid filtered | Internal prebid filters are a combination of rules and restrictions set on the system, account, or placement level. If an Ad call doesn’t pass filters it appears in a Blocked prebid Reason tracked event and empty VAST response with an error message. |
Missed opportunity | There was not a single campaign to send a request to. |
No Win | If no bids were received and/or all received bids were filtered and/or invalid and, as a result, TheViewPoint has nothing to return to a request with an empty VAST. |
Response (InLine) | TheViewPoint responded with “VAST XML with inline”. |
Response (Wrapper) | TheViewPoint responded with “VAST XML with wrapper”. |
When you check at the error status, you can understand what stage the request has reached and for what reason it didn`t succeed.
VAST request
All parameters/values included in the request can be viewed by expanding the tab. If the parameter/value is invalid, it will be marked in red.

List of all parameters and their validation:
Parameters | Value Validation |
---|---|
Query string parameters | |
width | int (1-9999) |
height | int (1-9999) |
placement_type | preroll / midroll / postroll |
useragent | - |
ip | ipv4 / ipv6 (formats) |
deviceid | - |
os | - |
os_version | - |
devicemake | - |
devicemodel | - |
connection_type | - |
lang | ISO-639-1-alpha-2 standart |
content_id | - |
content_dur | int (1-99999) |
content_title | - |
content_url | - |
content_cat | - |
content_album | No |
content_artist | No |
content_episode | No |
content_genre | No Recommended "G_" + Category from this doc https://developers.google.com/display-video/ortb-spec/Google-curated-list-of-genres.xlsx "IAB_" + Unique ID or Name or Tier 1 or Tier 2 or Tier 3 from this doc https://developers.google.com/display-video/ortb-spec/IAB-TV_Movie_Sports-categories.xlsx " |
content_prodq | 0,1,2,3 |
content_season | No |
content_series | No |
contentrating | No |
gender | “M”,”F”,”O” |
maxbitrate | 1-50000 |
minbitrate | 1-50000 |
mimes | "video/x-flv", |
skip | 0,1 |
tmax | 100-5000 |
yob | 4-digit integer |
domain | domain like |
app_domain | domain like |
app_name | - |
app_store_id | - |
app_storeurl | - |
bundle_id | - |
app_ver | - |
app_cat | - |
ad_max_dur | int (1-9999) |
ad_min_dur | int (1-9999) |
pod | 0 / 1 |
pod_maxdur | int (12-18000) |
pod_maxads | int (2-10) |
ssai | 0 / 1 |
ssai_partner | - |
livestream | 0 / 1 |
lmt | 0 / 1 |
coppa | 0 / 1 |
us_privacy | 4 characters. The first is always "1", any of the other three can be "Y" or "N" or "-" |
gdpr | 0 / 1 |
gdprc | - |
schain | - |
ad_break_id | - |
app_key | - |
app_id | - |
campaign_id | - |
c1-с10 | - |
Request headers | |
accept | application/json, text/javascript, */*; q=0.01 |
accept-encoding | gzip, deflate, br |
accept-language | ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7,uk;q=0.6 |
x-forwarded-port | 433 |
Campaigns | |
Connected | 20 |
Auction list | 14 |
Invalid | 2 |
Filtered | 2 |
No Ads | 2 |
Lost | 7 |
Win | 1 |
Other | |
Request ID | 8d36a712-acb4-425c-89fb-da983325dd11 |
Request time | 2020-09-28T13:29:46.577764 |
PriceRule | MyRuleName |
User TimeZone | GMT+03:00 |
Сountry Code | US |
Сity | new york |
Region | 12 / ny |
ZipCode | 49000 |
Device type | PC |
OS Family | Windows |
If the parameter name is red, such parameter does not exist or is indicated as the one with an error.
If the parameter value is red, the value has not been validated.
HB request
Easy to read and formatted Bid request for Header Bidding:

Display as - Parameters health
A list of all parameters from all requests that were received is formed. Each parameter has 3 columns:
Setting / parameter | Description |
---|---|
Passed | The total number of requests in which the parameter was passed. |
Valid value | the number of correctly passed values in the parameter among all requests. |
Invalid value | the number of incorrectly passed values in the parameter among all requests. |
All required parameters are marked in bold.

We can see how many times each parameter/value was passed incorrectly. If a large number of invalid values is shown, you need to pay attention to this parameter and look for a problem in the passing or use of this parameter.
Display as - Server funnel
View all tracked requests as a server funnel from Ad Call to Impression, with a % ratio. By clicking on a block with a metric, information on the selected metric will be displayed in the info block.
The entire list of metrics that are captured in the funnel:
Metric | Definition |
Ad call | All valid calls when VAST is requested. |
Blocked prebid | All unusable calls that did not pass specific pre-bid filters. |
Opportunity | An ad call that successfully passed all prebid filters. |
Missed opportunitie | The number of times opportunity doesn't result in an Auction. |
Auction | An attempt to make an Auction (at least a single eligible campaign is in the auction list). |
Bid request | An attempt to get an ad from a campaign included in the Auction list. |
No bid | The number of times there is a "no bid" response. |
Invalid bid | Bid responses that contain critical errors. |
Bid | Number valid bids / Number of times a VAST demand tag returns valid bid. |
Bid filtered | Bid is filtered due to blocking rules or price. |
Bid lost | The number of times a bid loses in an Auction. |
Win | Number of times the bid is selected. |
Analyze queries by % of them passing through the metrics funnel. This can help in optimizing settings.
Display as - Demand

Available statuses:
Exclude
Invalid bid
No bid
Bid lost (no reasons)
Bid filtered
Bid win
Type | Bid request | Bid response |
---|---|---|
oRTB | formatted request json | formatted response json (display even no ad / 403 / empty.. ) |
VAST - Server side | VAST Tag with values substituted into macros | last response received |
VAST - Client side | VAST Tag with values substituted into macros | duplicate VAST Tag with values substituted into macros |
Creative | creative name | creative name |
Easy to read and formatted Bid response for VAST campaigns:

Easy to read and formatted Bid request for Deal campaigns:

Parallel Operation Troubleshooting
In total, 5 sessions can be launched simultaneously.
To stop/reset the Troubleshooting process, press the “Reset” button.
Option to switch to troubleshooting from any placements/campaigns
To do this, in the placement view, click on the icon that is indicated in the screenshot.

When you click, you will go troubleshooting with the already selected (active) placement.