# Vast Video API

### Contents

* [1 Vast Video API - Integration Guide](broken://pages/w1jJBfOoaAUcl1F0wi6E)
  * [1.1 Overview](broken://pages/w1jJBfOoaAUcl1F0wi6E)
  * [1.2 Technical Details](broken://pages/w1jJBfOoaAUcl1F0wi6E)
    * [1.2.1 Request URI](broken://pages/w1jJBfOoaAUcl1F0wi6E)
  * [1.3 FAQS](broken://pages/w1jJBfOoaAUcl1F0wi6E)

### Vast Video API - Integration Guide

Last Update: 20th May, 2021

***

#### Overview

POKKT is a mobile video advertising and monetization platform that offers real Rewards to users for availing Advertising Offers. POKKT helps it’s partners to significantly increase revenues by converting non-paying users into loyal transacting customers.

This document describes the order and flow of a video ad solution between POKKT’s ”Video Ad Platform” and a “Supply Side Platform”. In essence, it entails the process that needs to be followed by the “Supply Side Platform” to integrate their services with POKKT’s “Video Ad Platform”.

#### Technical Details

**Request URI**

A GET request needs to be sent to POKKT server to initiate the video request. The Partner herein is required to send a request to the below URI which in turn will respond with a VAST tag.

Code

```
http://vdo.pokkt.com/api/AdServer?appId={{{app_id}}}&appName={{{pub_app_name}}}&response_format=1&device_id={{{device_id}}}&advertisingID={{{aaid}}}&ip={{{ip}}}&ua={{{browser_user_agent}}}&limitedTracking={{{ad_tracking_disabled}}}&category={{{pub_app_store_category}}}&app_bundle_name={{{app_bundle_name/web_domain}}}&ios_app_id={{{ios_appid}}}&u13={{{u13}}}&aid_md5={{{md5_aaid}}}&aid_sha1={{{sha1_aaid}}}&app_storeurl={{{pub_app_store_url}}}&age={{{age}}}&gender={{{gender}}}&latitude={{{latitude}}}&longitude={{{longitude}}}&categoryIab={{{category_iab}}}&connType={{{connection_type}}}&deviceCategory={{{device_category}}}&osName={{{os_name}}}&osVersion={{{os_version}}}&appVersion={{{app_version}}}&cacheBreaker={{{cache_breaker}}}&referral={{{referral_url}}}&ecs={{{ECS_SUPPORTED}}}&vd_min={{{video_duration_min}}}&vd_max={{{video_duration_max}}}&swidth={{{width}}}&sheight={{{height}}}&gdpr_applicable={{{gdpr_applicable}}}&gdpr_consent={{{gdpr_consent}}}&vv={{{viewability_vendors}}}&p_sco={{Supply_Chain_Obj}}
```

Parameters Explained

| PARAM             | DESCRIPTION                                                                                                                                                                                    | MANDATORY | RECOMMENDED |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ----------- |
| appId             | Unique App ID (available during integration)                                                                                                                                                   | Yes       |             |
| appName           | App Name(e.g. Metal%20Gear%20Dawn)                                                                                                                                                             | Yes       |             |
| ad\_format        | Ad Format (0 for VAST)                                                                                                                                                                         | Yes       |             |
| response\_format  | Ad medium indicator (for internal POKKT use) = 1                                                                                                                                               | Yes       |             |
| device\_id        | OS ID or Device ID                                                                                                                                                                             |           | Yes         |
| advertisingID     | Google Advertising ID or iOS IDFA                                                                                                                                                              | Yes       |             |
| ip                | IP address                                                                                                                                                                                     | Yes       |             |
| ua                | User Agent                                                                                                                                                                                     | Yes       |             |
| limitedTracking   | Do Not Track or DNT (e.g. 1 for tracking disabled, 0 for enabled)                                                                                                                              | Yes       |             |
| category          | App Store Category Name (e.g. Finance)                                                                                                                                                         | Yes       |             |
| app\_bundle\_name | Android Package Name or iOS Bundle ID or mobile web domain (e.g. com.rage.metalgeardawn)                                                                                                       | Yes       |             |
| ios\_app\_id      | iOS App ID                                                                                                                                                                                     |           | Yes         |
| u13               | App targeted to children under 13 years (1 for Yes, 0 for No)                                                                                                                                  | Yes       |             |
| aid\_md5          | MD5 hashed Advertising ID                                                                                                                                                                      |           | yes         |
| aid\_sha1         | SHA1 hashed Advertising ID                                                                                                                                                                     |           |             |
| app\_storeurl     | App Store URL                                                                                                                                                                                  | Yes       |             |
| age               | User’s age(e.g. ‘24’)                                                                                                                                                                          |           | Yes         |
| gender            | User’s gender(e.g. ‘m’)                                                                                                                                                                        |           | Yes         |
| email\_address    | User’s email                                                                                                                                                                                   |           |             |
| latitude          | Device Latitude(e.g. -7.5481032)                                                                                                                                                               |           | Yes         |
| longitude         | Device Longitude(e.g. 35.2835043)                                                                                                                                                              |           | Yes         |
| categoryIab       | IAB Category Code(e.g. IAB1, IAB31 etc.)                                                                                                                                                       |           | Yes         |
| connType          | Connection Type (Numeric value e.g. 0-Unknown, ~~1-Ethernet~~, 2-Wifi, 3-Cellular-Unknown Generation, 4-2G, 5-3G, 6-4G/LTE)                                                                    |           | Yes         |
| deviceCategory    | Smartphone, Tablet, Smartwatch etc. (codes – section 5.17)                                                                                                                                     |           | Yes         |
| osName            | OS Name or Platform (e.g. iOS, Android, Windows etc.)                                                                                                                                          |           | Yes         |
| osVersion         | OS Version (e.g. 4.4.4, 5.0.1 etc.)                                                                                                                                                            |           | Yes         |
| appVersion        | Publisher App Version(e.g. 1.0.1, 2.7 etc.)                                                                                                                                                    |           | Yes         |
| cacheBreaker      | Allows ad server to identify cached ads(e.g. cb739ade24b)                                                                                                                                      | Yes       |             |
| referral          | Referring page/URI                                                                                                                                                                             |           | Yes         |
| ecs               | End Card Support (e.g. 1 for Yes, 0 for No)                                                                                                                                                    |           |             |
| vd\_min           | Expected minimum duration of video                                                                                                                                                             |           |             |
| vd\_max           | Expected maximum duration of video                                                                                                                                                             |           |             |
| swidth            | Width of the Player                                                                                                                                                                            |           | Yes         |
| sheight           | Height of the Player                                                                                                                                                                           |           | Yes         |
| gdpr\_applicable  | GDPR relevant (1 for True, 0 for False)                                                                                                                                                        | Yes       |             |
| gdpr\_consent     | GDPR permission (String value True/False or Custom consent string)                                                                                                                             | Yes       |             |
| vv                | Viewability vendors comma seperated list (String value, one or more of possible values -- integralads.com,moat.com,comscore.com,viewability.withgoogle.com,sizmek.com,adform.com,whiteops.com) | No        | Yes         |
| p\_sco            | Supply Chain Object (String value)                                                                                                                                                             | Yes       |             |

*Notes:*

1. It is highly advocated that you pass all the above RECOMMENDED parameter values alongside the MANDATORY ones, as the premium and high paying ad sources need the above parameters to classify and target users. These campaigns in return furnish very high ECPMs.
2. All parameter values must be URL Encoded as applicable
3. All the traffic with *gdpr\_applicable=1* will be filtered.
4. Supply Chain Object is composed of two items; the SupplyChainObject properties and the SupplyChainNode array. These two items are separated by a bang (“!”) as follows
   * {SupplyChainObject}!{SupplyChainNode array}
     * SupplyChainObject consists of two properties version and complete separated by comma(,)
     * SupplyChainNode consists of domain name of the SSP, Exchange etc (asi), identifier associated with the seller or reseller account (sid), OpenRTB RequestId (rid), name of the company/entity (name), business domain name of the entity (domain) and Placeholder for advertising-system specific extensions to this object(ext *\[optional]*). All these properties should be separated by comma(,) and if there is more than one node, each must be separated by a bang (“!”) character. For example,
     * Single Hop Chain - 1.0,1!xyzexchange.com,4321,1,bid-request-1,publisherx,publisherx.com
     * Multiple Hop Chain - 1.0,1!xyzexchange.com,4321,1,bid-request-1,publisherx,publisherx.com!xyzexchange2.com,1234,1,bid-request-2,intermediaryx,intermediaryx.com

\
Response

In response to the above ad request (with all requisite macros values), POKKT’s ad server will respond with a standard VAST XML response.

Successful Response

A successful response is a standard VAST 2.0 XML tag with all the events and associated trackers. Refer to IAB VAST guidelines for more information.

Example (barebones linear VAST tag with End Card Example) \[updated]

```
<?xml version="1.0" encoding="UTF-8"?>
<VAST version="2.0">
<Ad id="XXX">
   <InLine>
      <AdSystem>
         Pokkt
      </AdSystem>
      <Creatives>
         <Creative>
            <Linear>
               <VideoClicks>
                  <ClickTracking>
                     <![CDATA[...]]>
                  </ClickTracking>
               </VideoClicks>
               <TrackingEvents>
                  <Tracking event="firstQuartile">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="midpoint">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="thirdQuartile">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="complete">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="start">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="skip">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="mute">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="unmute">
                     <![CDATA[...]]>
                  </Tracking>
                  <Tracking event="creativeView">
                     <![CDATA[...]]>
                  </Tracking>
               </TrackingEvents>
               <Duration>
                  00:00:30
               </Duration>
               <MediaFiles>
                  <MediaFile>
                     <![CDATA[...]]>
                  </MediaFile>
               </MediaFiles>
            </Linear>
         </Creative>
         <Creative>
            <CompanionAds>
               <Companion>
                  <HTMLResource>
                     http://abc/test.html
                  </HTMLResource>
                  <CompanionClickThrough>
                     <![CDATA[...]]>
                  </CompanionClickThrough>
                  <CompanionClickTracking>
                     <![CDATA[...]]>
                  </CompanionClickTracking>
                  <TrackingEvents>
                     <Tracking event="close">
                        <![CDATA[...]]>
                     </Tracking>
                     <Tracking event="creativeView">
                        <![CDATA[...]]>
                     </Tracking>
                  </TrackingEvents>
               </Companion>
               <Companion>
                  <StaticResource>
                     http://abc/test.gif
                  </StaticResource>
                  <CompanionClickThrough>
                     <![CDATA[...]]>
                  </CompanionClickThrough>
                  <CompanionClickTracking>
                     <![CDATA[...]]>
                  </CompanionClickTracking>
                  <TrackingEvents>
                     <Tracking event="close">
                        <![CDATA[...]]>
                     </Tracking>
                     <Tracking event="creativeView">
                        <![CDATA[...]]>
                     </Tracking>
                  </TrackingEvents>
               </Companion>
            </CompanionAds>
         </Creative>
      </Creatives>
      <AdTitle>
         <![CDATA[Ad Name]]>
      </AdTitle>
      <Impression>
         <![CDATA[...]]>
      </Impression>
      <Error>
         <![CDATA[...]]>
      </Error>
   </InLine>
</Ad>
</VAST>
```

Error Responses

The POKKT ad server responds with a blank VAST tag for cases where there is no ad to fill. The server will respond with a JSON error string in case the app ID isn’t valid.

Examples

```
Error response in case of No Fill (no matching ads to fill)
<VAST version="2.0"></VAST>

Error response in case of invalid or incomplete parameters
{"status":"0","message":"invalid package\/key","others":[],"vc":"0"}
```

***

#### FAQS

Q. What happens if we don’t send one or more of the mandatory parameters?

A. POKKT and it’s advertising partners absolutely need all the mandatory parameters to be passed through and cannot guarantee fill if you are unable to provide all the mandatory parameters.

Q. What happens if we are unable to send one or more of the recommended parameters?

A. POKKT advocates that you send in all the recommended parameters mentioned in this document. POKKT works with top advertisers and advertising demand partnerswho predominantly drive higher ECPMs for your apps provided pertinent information is available to them.

Q. How secure is the user data passed in the API calls?

A. POKKT is committed to protect the privacy of the users who access its platform. POKKT’s Privacy Policy statement ([Privacy Policy](https://www.pokkt.com/privacy)) describesthis in detail.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.pokkt.com/api-guide/vast-video-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
