Algorix Online Api Integration Document

1.Integration Process

  1. Contact Our BD to create an account for you.
  2. The system will assign the sid, token, app_id4, adslot_id.
  3. Please follow the document for integration.
  4. Join debugging.

2.Attention

When you request ads in real time, fill in as many optional parameters as possible which can help us search the most match ads for you and increase your revenue. However, if you can`t get the value of optional parameters, please do not fill it in, which will indirectly reduce the revenue.

The ads request allows the server to initiate the request, but it must bring the real IP of client. The impression, click and conversion data must be reported by client, or it will be judged as fake users, which will indirectly reduce the revenue.

3.API

3.1 Ads Request

3.1.1 Request URL

PS: The system will assign the sid and token.

3.1.2 Request Method

POST

Header: Content-Type Value: application/json

3.1.3 Request Paramters

Parent ObjectObject / ParameterTypeRequiredDescription
idstringYesPublisher request id
appobjectYesObject APP
appapp_idstringYesAPP ID, system assigned.
appapp_bundle_idstringYesFor Android device, this is the package name. For IOS device, this is the bundle id.
appapp_namestringYesapp name.
appstore_urlstringRecommendapp store url.
appapp_categorystringRecommendString of IAB content categories that describe the current page or view of the app. Refer to list 5.1 APP Category Types
adslotobjectYesObject Adslot
adslotadslot_idstringYesAdslot id, sys tem assigned.
adslotinstlintYes1 = the ad is interstitial or full screen, 0 = not interstitial.
adslotbannerobjectNoObject Banner.
adslot.bannerwidthintYesExact width in device independent pixels.
adslot.bannerheightintYesExact height in device independent pixels.
adslot.bannerpositionintYesAd position on screen. Refer to list 5.7 Position
adslot.bannerapiint arrayYesList of supported API frameworks for this impression. Refer to List 5.11 API Frameworks
adslot.bannerbattrint arrayYesBlocked creative attributes. Refer to List 5.12 Creative Attributes
adslot.bannermimesstring arrayYesContent MIME types supported e.g. ["image/jpeg"]
adslotnativeobjectNoObject Native.
adslot.nativeassetsarrayYesArray assets for all you needed to generate the ad. Including Object title, Object img and Object data.
adslot.native.assetsidintYesThe id of asset for sorting all assets. which is marked by yourself.
adslot.native.assetsrequiredintYesMarking whether the asset you requested is required or not. where “1”= yes, “0” = no.
adslot.native.assetstitleobjectNoObject Title
adslot.native.assets.titlelenintNoThe max length of title.
adslot.native.assetsimgobjectNoObject Img.
adslot.native.assets.imgtypeintYesThe type of image. where “1” = icon, “2” = logo, “3” = poster, “0” = known to be other.
adslot.native.assets.imgwidthintYesThe width of image.
adslot.native.assets.imgheightintYesThe height of image.
adslot.native.assetsdataobjectNoObject data. The description of ad or button.
adslot.native.assets.datatypeintYesData categories. Refer to list 5.13 Assets Data Type
adslot.native.assets.datalenintYesThe max length of data.
adslotvideoobjectNoObject video
adslot.videomimesstring arrayYesContent MIME types supported ( e.g. ["video/mp4"]
adslot.videomindurationintRecommendMinimum video ad duration in seconds.
adslot.videomaxdurationintRecommendMaximum video ad duration in seconds.
adslot.videoprotocolsint arrayYesArray of supported video protocols. Refer to list 5.2 Protocols
adslot.videowintYesWidth of the video player in device independent pixels (DIPS).
adslot.videohintYesHeight of the video player in device independent pixels (DIPS).
adslot.videostartdelayintYesIndicates the start delay in seconds for pre-roll, mid-roll, or post-roll ad placements. Refer to list5.3 StartDelay
adslot.videoplacementintYesPlacement type for the impression. / 1 in-Stream 2 In-Banner 3 In-Article 4 In-Feed 5 Interstitial/Slider/Floating
adslot.videolinearityintYesIndicates if the impression must be linear, nonlinear, etc. If none specified, assume all are allowed. Refer to list 5.4 Linearity
adslot.videoskipintYesIndicates if the player will allow the video to be skipped,where 0 = no, 1 = yes.
adslot.videoskipminintRecommendVideos of total duration greater than this number of seconds can be skippable; only applicable if the ad is skippable.
adslot.videoskipafterintRecommendNumber of seconds a video must play before skipping is enabled; only applicable if the ad is skippable.
adslot.videobattrint arrayYesBlocked creative attributes. 5.12 Creative Attributes
adslot.videominbirateintRecommendMinimum bit rate in Kbps.
adslot.videomaxbirateintRecommendMaximum bit rate in Kbps.
adslot.videoboxingallowedintRecommendIndicates if letter-boxing of 4:3 content into a 16:9 window is allowed, where 0 = no, 1 = yes.
adslot.videoplaybackmethodint arrayYesPlayback methods that may be in use. If none are specified,any method may be used. Refer to List 5.5 Playback Methods
adslot.videoplaybackendintYesThe event that causes playback to end. Refer to List 5.6 Playbackend
adslot.videoposintYesAd position on screen. Refer to List5.7 Position
adslot.videocompanionadObject arrayRecommendArray of Banner objects if companion ads are available
adslot.videocompaniontypeint arrayRecommendSupported VAST companion ad types. Refer to List 5.10 Companion Types
adslot.videoapiint arrayYesList of supported API frameworks for this impression. Refer to List 5.11 API Frameworks
adslot.videoextObjectYesObject Ext
adslot.video.extrewardedboolYestrue = rewarded video false = other videos
userobjectYesObject User
useruser_idstringYesThe userid defined by the publisher which must uniquely identify a user.
useripstringYesIPv4 address closest to device.
usergenderintYesGender, where “1” = male, “2” = female,“0” = known to be other.
userextObjectRecommendExt Object
user.extconsentstringRecommendif gdpr = 1, this string gives consent information of various vendors
deviceobjectYesObject Device
deviceuser_agentstringYesUser Agent
devicedevice_idarrayYesArray device id
device.device_idtypeintYesThe of device id. where “1” = IMEI, “2” = MAC address, “0” = known t o be other.
device.device_ididstringYesValue of id.
deviceadvertising_idobjectYesObject advertising id
device.advertising_idtypeintYesType of advertising id.where “4” = Android GAID, “5” = IOS IDFA, “0” = known to be other.
device.advertising_ididstringYesValue of id.
devicegeoobjectRecommendObject Geo
device.geolatitudefloatRecommendLatitude
device.geolongitudefloatRecommendLongitude
device.geocountrystringRecommendCountry code using ISO-3166-1-alpha-3
device.georegionstringRecommendRegion code using ISO-3166-2 .
devicedevice_typeintYesDevice type categories. Refer to list5.8 Device Type
devicelanguagestringYesLanguage. Refer to list 5.9 Language
deviceosintYesDevice operating system. where “1” = IOS , “2” = Android, “0” = known to be other.
deviceos_versionstringYesDevice operating system version.
devicebrandstringNoThe brand of device.
devicemodelstringNoThe model of device.
devicescreen_widthintRecommendPhysical width of the screen in pixels.
devicescreen_heightintRecommendPhysical height of the screen in pixels.
devicescreen_densityintNoScreen size as pixels per linear inch.
devicecarrier_idstringYesCarrier id. Mobile carrier as the concatenated MCC-MNC code (e.g., “310-005” identifies Verizon Wireless CDMA in the USA). Refer to list MCC & MNC Code
devicewireless_network_typeintYesNetwork conn ection type. w here “1” = WI FI, “2” = 2G, “ 3” = 3G, “4” = 4G, “5” = 5G, “0” = known to be other.
regsobjectYesObject Regs.
regscoppaintNoFlag indicating if this request is subject to the COPPA regulations established by the USA FTC, where 0 = no, 1 = yes.
regsgdprintNoFlag indicatin g if this request is subject to the GDPR regulations established by the EU, where 0 = no, 1 = yes.
bcatstring arrayRecommendBlocked advertiser categories using the IAB content categories.
badvstring arrayRecommendBlock list of advertisers by their domains
bappstring arrayRecommendBlock list of applications by their platform-specific exchangeindependent application identifiers. On Android, these should be bundle or package names (e.g., com.foo.mygame). On iOS, these are numeric IDs.
tmaxintRecommendMaximum time in milliseconds the exchange allows for bids to be received including Internet latency to avoid timeout.
secureintNoWhether to use secure HTTPS 0 = No,1 = Yes.

3.1.4 Request Sample

3.1.4.1 Banner request sample

{
  "id": "fgasikutgasurebuifgsiuafgisua",
  "app": {
    "app_id": "95caecceb1066c2b52665a2c85a959e4",
    "app_bundle_id": "4767426574632874",
    "app_name": "Es File",
    "store_url": "https://play.google.com/store/apps/details?id=com.estrongs.android.pop",
    "app_category": "IAB20"
  },
  "adslot": {
    "adslot_id": "12001",
    "instl": 0,
    "banner": {
      "width": 320,
      "height": 50,
      "position": 1,
      "mimes": ["image/jpeg","image/gif","image/png"],
      "api":[3, 5],
      "battr":[6, 7]
    }
  },
  "user": {
    "user_id": "dsygfyad",
    "ip": "106.38.48.52",
    "gender": 1
  },
  "device": {
    "user_agent": "Mozilla/5.0 (Linux; Android 8.1.0; CPH1809 Build/OPM1.171019.026; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3770.101 Mobile Safari/537.36",
    "device_id": [
      {
        "type": 1,
        "id": "2536643785678345673845"
      },
      {
        "type": 2,
        "id": "5C-FF-35-0B-95-B5"
      }
    ],
    "advertising_id": {
      "type": 4,
      "id": "ghdakgdhajgdajydg"
    },
    "geo": {
        "lat": 27.3333,
        "lon": 88.6167,
        "type": 2,
        "country": "IND"
    },
    "device_type": 1,
    "os": 1,
    "language": "zh",
    "os_version": "9.0.1",
    "brand": "xiaomi",
    "model": "hongmi",
    "screen_width": 640,
    "screen_height": 1136,
    "screen_density": 326,
    "carrier_id": "460-000",
    "wireless_network_type": 4
  },
  "regs": {
    "coppa": 0,
    "gdpr": 0
  },
  "bcat": ["IAB8", "IAB26", "IAB9"],
  "badv": ["explorescientificusa.com","www.explorescientificusa.com"],
  "tmax": 200,
  "secure": 1
}

3.1.4.2 Native request sample

{
  "id": "fgasikutgasurebuifgsiuafgisua",
  "app": {
    "app_id": "95caecceb1066c2b52665a2c85a959e4",
    "app_bundle_id": "4767426574632874",
    "app_name": "Es File",
    "store_url": "https://play.google.com/store/apps/details?id=com.estrongs.android.pop",
    "app_category": "IAB20"
  },
  "adslot": {
    "adslot_id": "12002",
    "instl": 0,
    "native": {
      "plcmttype": 1,
      "assets": [
        {
          "id": 1,
          "required": 1,
          "title": {
            "len": 256
          }
        },
        {
          "id": 2,
          "required": 1,
          "img": {
            "type": 1,
            "width": 75,
            "height": 75
          }
        },
        {
          "id": 3,
          "required": 1,
          "img": {
            "type": 3,
            "width": 320,
            "height": 240
          }
        },
        {
          "id": 4,
          "required": 1,
          "data": {
            "type": 2,
            "len": 256
          }
        }
      ]
    }
  },
  "user": {
    "user_id": "dsygfyad",
    "ip": "106.38.48.52",
    "gender": 1
  },
  "device": {
    "user_agent": "Mozilla/5.0 (Linux; U; Android 2.3.6; it-it; GT-S5570I Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 (Mobile; afma-sdk-a-v6.1.0),gzip(gfe)",
    "device_id": [
      {
        "type": 1,
        "id": "2536643785678345673845"
      },
      {
        "type": 2,
        "id": "5C-FF-35-0B-95-B5"
      }
    ],
    "advertising_id": {
      "type": 4,
      "id": "dfc59c16-4435-48cb-98a9-9bdd06108077"
    },
    "geo": {
        "lat": 27.3333,
        "lon": 88.6167,
        "type": 2,
        "country": "IND"
    },
    "device_type": 1,
    "os": 1,
    "language": "CN",
    "os_version": "9.0.1",
    "brand": "xiaomi",
    "model": "hongmi",
    "screen_width": 640,
    "screen_height": 1136,
    "screen_density": 326,
    "carrier_id": "460-000",
    "wireless_network_type": 4
  },
  "regs": {
    "coppa": 0,
    "gdpr": 0
  },
  "bcat": ["IAB8", "IAB26", "IAB9"],
  "badv": ["explorescientificusa.com","www.explorescientificusa.com"],
  "tmax": 200,
  "secure": 1
}

3.1.4.3 Video request sample

{
    "id": "JcsB73SZS0BVvJe79uS",
    "app": {
        "app_id": "734838cdfb24538fa92814484595a8e",
        "app_name": "app_name",
        "app_bundle_id": "com.myyearbook.m",
        "store_url": "http://google-play-url",
        "app_category": "IAB1"
    },
    "adslot": {
        "adslot_id": "16536",
        "video": {
            "mimes": ["video/mp4"],
            "minduration": 0,
            "maxduration": 30,
            "protocols": [2, 3, 5, 6],
            "w": 480,
            "h": 320,
            "startdelay": 0,
            "placement": 5,
            "linearity": 1,
            "skip": 1,
            "skipmin": 15,
            "skipafter": 15,
            "maxbitrate": 2730,
            "boxingallowed": 0,
            "playbackmethod": [1],
            "playbackend": 1,
            "pos": 7,
            "companionad": [{
                "w": 480,
                "h": 320,
                "id": "1"
            }],
            "companiontype": [1],
            "ext": {
                "rewarded": false
            }
        },
        "instl": 0
    },
    "user": {
        "user_id": "JcsB73SZS0BVvJe79uS",
        "ip": "37.73.250.41",
        "gender": 0
    },
    "device": {
        "user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_1_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/16D57",
        "device_id": [{
                "type": 1,
                "id": "IMEI value"
            },
            {
                "type": 2,
                "id": "MAC value"
            }
        ],
        "advertising_id": {
            "type": 4,
            "id": "iDfa-Or-Gaid"
        },
        "geo": {
            "lat": 27.3333,
            "lon": 88.6167,
            "type": 2,
            "country": "IND"
        },
        "device_type": 1,
        "os": 2,
        "os_version": "",
        "brand": "",
        "screen_width": 0,
        "language": "",
        "screen_height": 0,
        "screen_density": 0,
        "carrier_id": "25506",
        "wireless_network_type": 2
    },
    "tmax": 200,
    "bcat": ["IAB8", "IAB26", "IAB9"],
    "badv": ["explorescientificusa.com", "www.explorescientificusa.com"],
    "regs": {
        "coppa": 0,
        "gdpr": 0
    }
}

3.1.5 Response Parameters:

Parent ObjectObject / ParameterTypeRequiredDescription
err_nointYesError No. Refer to list 5.14 Err No and Msg
err_msgstringYesError Message
dataidstringYesAd id
dataadsarrayNoArray ads
data.adscridstringYesCreative id
data.adscidstringYesCampaign id
data.adsadomainstring arrayYesAd adomain
data.adscatstring arrayYesAd categories
data.adsbanner_adobjectNoObject Banner
data.ads.banner_adhtml_snippetstringYesHTML snippet
data.ads.banner_adwidthintYesExact width in device independent pixels.
data.ads.banner_adheightintYesExact height in device independent pixels.
data.ads.banner_adimptrackersarrayYesArray impression tracker.
data.adsnative_adobjectNoObject Native
data.ads.native_adassetsarrayYesArray assets
data.ads.native_ad.assetsidintYesThe id of asset for sorting all assets. which is marked by yourself.
data.ads.native_ad.assetsrequiredintYesMarking whether the asset you requested is required or not.where “1”= yes, “0” = no
data.ads.native_ad.assetstitleobjectNoObject Title
data.ads.native_ad.assets.titletitlestringNoTitle
data.ads.native_ad.assetsimgobjectNoObject Img
data.ads.native_ad.assets.imgwidthintYesThe width of image.
data.ads.native_ad.assets.imgheightintYesThe height of image.
data.ads.native_ad.assets.imgurlstringYesThe url of image.
data.ads.native_ad.assetsdataobjectNoObject data.
data.ads.native_ad.assets.datavaluestringYesThe value of data.
data.ads.native_adtarget_urlstringYesTarget url(click url or tracking url)
data.ads.native_adimptrackersarrayYesArray impression tracker.
data.ads.native_adclicktrackersarrayYesArray click tracker.
data.adsvideo_adobjectNoObject Video
data.ads.video_adwinnotice_urlstringYeswinnotice url
data.ads.video_adadmstringYesDetails for reference vast 3.0 protocol

3.1.5.1 Banner response sample

{
  "data": {
    "ads": [
      {
        "crid": "12-2398",
        "adomain": [
            "www.do-global.com"
        ],
        "cat": [
            "IAB1"
        ],
        "banner_ad": {
          "html_snippet": "<!DOCTYPE html> <html> <head> <title></title> <meta name='viewport' content='user-scalable=0, minimum-scale=1.0, maximum- scale=1.0'/> <style type='text/css'> body {margin: 0; overflow: hidden;} </style> </head> <body> <style>.im_1664_ads-lbl,.im_1664_ads-lbl img{position:absolute;bottom:0;right:0;pointer-events:none;z-index:1000000000000000}.im_1664_ads-lbl img{width:26px;height:16px}</style> <div class='im_1664_ads-lbl'><img src='http://i.l.inmobicdn.net/ifctpads/IFC/CCN/assets/AdsiconHDPI1472034285.png'></div> <style> .inmC { margin-left: auto; margin-right: auto; display: block; }</style> <a href='https://play.google.com/store/apps/details?id=com.offline.miniocr' target='_top' style='text-decoration:none;'> <img border='0' class='inmC' src='http://dev-report.doadx.com/static/img/320_50.jpg' height='50' width='320' /> </a> <style>body{margin:0}</style> <img src='http://et-cn.w.inmobi.com/c.asm/C/t/ectjuimhah/1blu/w/4k/lx/m/r/0/0/ eyJVSUQiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEiLCJJREEiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIy NjYzRUEifQ~~/ca0d9776-0159-1000-ee66-38a46c1e0093/-1/411p/-1/0/0/40.71269989013672,74.00589752197266,0.0/13779426/NW/2t/0/api/3.0.0/dir/ Y29tLmlubW9iaS5kZW1vYXBw/ FvCTCRYAFta48rroVFcAAAAAAADwPzQAEhg4NUxNdTREejQ0MmxZS3lZSXpNWHVkMG4yZUZuVEUxZ0gzZ1haQzlzS3g2ZC9tM2Qwd0grc3hRPT0YB kJBTk5FUhwUABQCHBwW_7-36r-itPJrFtndsvyC1-PgIwAWxN7fpp2TiM- yARUAEgAAOQUiFAAWloqp6t9RKD1wZXJmLWFkcG9vbC1za3lob29rcHJvZDUwMDJfcGVyZl9oa2cxX3BlcmYtYWRwb29sX3NreWhvb2twcm9kFAQSJpr 5FhwVAgAsFQIAUwEm8JMJFQASGAUwLjA3NQA=/-1/AA==/7/844b2836?m=18' width='1' height='1' style='display:none;' /> </body></html><img src=\"https://apac-trk.doadx.com/imp?&info=w4CM90WYmAjLw0TbmIDO5gjLw0TbiZSM9knYmETPmBnJOh0Q9MmJxADMyETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmgjMmRmNwADMlNzMzEWY5MWMyEDOllTZ3IGM0MGZycjY9Enc_w4nc&price=${AUCTION_PRICE}\"  width=\"1\" height=\"1\" style=\"display:none;\">",
          "img_url": "",
          "width": 320,
          "imptrackers": [
            "http://apac-trk.doadx.com/imp?&info==AjLw0TbmAjLw0TbiZCMwETP5JmJy0jZwZSPjZCMxkjM2ETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmcDZ4ATZ2YGNilTOidjZkFTYzQGZzUmM4ADO1M2NjVGZ9Enc_"
          ],
          "height": 50
        }
      }
    ],
    "id": "fgasikutgasurebuifgsiuafgisua"
  },
  "err_msg": "Success",
  "err_no": 1000
}

3.1.5.2 Native response sample

{
  "data": {
    "ads": [
      {
        "crid": "12-2398",
        "adomain": [
            "www.do-global.com"
        ],
        "cat": [
            "IAB1"
        ],
        "native_ad": {
          "assets": [
            {
              "id": 1,
              "title": {
                "title": "The Vicious Cycle Of Vaginal Infections"
              },
              "required": 1
            },
            {
              "img": {
                "width": 50,
                "url": "https://images2.zemanta.com/p/srv/sha/00/af/6c/28902411fa70b73aca75b2da2730553a99.jpg?w=75&h=75&fit=crop&crop=faces&fm=jpg",
                "height": 50
              },
              "id": 2,
              "required": 1
            },
            {
              "img": {
                "width": 600,
                "url": "https://images2.zemanta.com/p/srv/sha/00/af/6c/28902411fa70b73aca75b2da2730553a99.jpg?w=75&h=75&fit=crop&crop=faces&fm=jpg",
                "height": 280
              },
              "id": 3,
              "required": 1
            },
            {
              "data": {
                "value": "Restore and maintain a healthy balance of good bacteria and yeast for a healthy vagina"
              },
              "id": 4,
              "required": 1
            }
          ],
          "clicktrackers": [
            "https://do_global/track/url",
            "https://apac-trk.doadx.com/clk?&info=w4CM90WYmAjLw0TbmIDO5gjLw0TbiZSM9knYmETPmBnJOh0Q9MmJyADMyETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmAjNkZWO1cjN1cDOmJWZjJ2MjFGNwQzMzYjM5ETNidDM9Enc_w4nc&price=${AUCTION_PRICE}"
          ],
          "target_url": "https://r1.zemanta.com/r/u1qm61onnbb4/b1_rubicon/478563/7124557/C4NAONQHHBYL3S7WLF4ZSZFV2GCZFYDDINNXKVCYIRNEUYD76UZIU4TKSAJW5I6DUMYFEUW4AAP7HS7NCZP73SQOS4HY3VM5P76JCBIBX2GK7HGI2H5D3ZW2WT7XPKB2JM3G5VQUBQZSLQEITY7G2Y3D4XR7PO5YSC7WMQPTQVI3VIVYDYVSUMEIHQFGKDQZ55VIVS7AH73YDIBYA4O7PS4QPYK2YTNWBJJR4FCXMHCWD2X2DGSBYZGUFRWXOMA7C4UUZN2X2HWAXIT4PAZN7EYS5M7JQC2MGYPXC4NIB7XX476P7JOKRDVAXQRZGBHPCFB2JID3ZUBK77TXGWWS2J5L32MWS2R3FGYIXFNUOCGWEXKX765X5OAA4HL35XPQWEBWX2JLNM4O7T6UJ2YCDTBDH5FXATJUOO2OI7SGHQKTZOCT2PKYMEHAURNFNYTQ5FZNIE5FTAIGGIXCOWIWKWZBPU/",
          "imptrackers": [
            "https://apac-trk.doadx.com/imp?&info=w4CM90WYmAjLw0TbmIDO5gjLw0TbiZSM9knYmETPmBnJOh0Q9MmJyADMyETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmAjNkZWO1cjN1cDOmJWZjJ2MjFGNwQzMzYjM5ETNidDM9Enc_w4nc&price=${AUCTION_PRICE}"
          ]
        }
      }
    ],
    "id": "fgasikutgasurebuifgsiuafgisua"
  },
  "err_msg": "Success",
  "err_no": 1000
}

3.1.5.3 Video response sample

{
    "err_msg": "Success",
    "err_no": 1000,
    "data": {
        "ads": [
            {
                "crid": "12-2398",
                "adomain": [
                    "www.do-global.com"
                ],
                "cat": [
                    "IAB1"
                ],
                "video_ad": {
                    "winnotice_url": "https://use-trk.doadx.com/win?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}",
                    "adm": "<VAST version=\"3.0\"><Ad><Wrapper><AdSystem>PubMatic</AdSystem><VASTAdTagURI><![CDATA[https://lyr.pubmatic.com/AdServer/layer?pubid=157941&nwid=&ts=1561014068&vdo=1&pimprid=bce9ed2d-2660-476c-ab2f-f330ad10b190&uimprid=B5CD58C7-6B0B-4313-8A51-73FF3EDF1461&a=${AUCTION_PRICE}&vdo=1&ucrid=17300671960036780932&t=PBYZW09U1FRTVE9PT0maWQ9MCZjaWQ9MTY3MzUmY2Y9MS4wMDAwMDAmeHByPTEuMDAwMDAwJmZwPTM2LjE0OTEmcHA9NC42MTU0MiZ0cD0wJnBlPTAuMDAwMDAwJnB1YmlkPTE1Nzk0MSZuYmY9MSZwZmVlPTI4JmNwPTYuNDEwMyZwMj0zOjAuMDAwMDAwJmNsZW49NTI5MyZjcj08VkFTVCB2ZXJzaW9uPSIyLjAiPgo8QWQgaWQ9IjY0NTQyNjEiPgo8V3JhcHBlcj4KPEFkU3lzdGVtPk1lZGlhTWF0aCBUMSBWQURTPC9BZFN5c3RlbT4KPFZBU1RBZFRhZ1VSST48IVtDREFUQVtodHRwczovL3Zhc3QubWF0aHRhZy5jb20vP2lkPTVhVzk1cTJqTHpFNUx5QXZXbFJWTWxreVRtMU9SR04wVFVSSmVrNVRNREJOYW1Sc1RGZEZNVmxxUlhST1YxVTBXVzFGTkU5SFZUTk9Na3BvTHpZM05qUXdOREF6TURFek56TTJPREkzTkRBdk5qUTFOREkyTVM4ME16RTJOakUwTHpNdmFHdEllSEEwUzFoSkxWRjZUR1ZhVjFOSWNtMWhkazR4VTE5Q1JFZFRXVXB4VDBVMFNWa3pOVU16UVM4eEx6TXZNQzgwTHpFd01qRTVNRFF2TWpnNE9UVXhPVFF4TkM4eU1EVXhNalF2TmpFNE9UY3lMemt2WW1zNk1UQTRORGMzTkN4aWF6b3hNRGcwTnpjMUxHSnJPalV3TWpnME5peGlhem8xTURJNE5EY3NZbXM2TlRBeU9EVXdMR0pyT2pVd01qZzFNeTh3TDFwSFdUQk9ha1YzVG1wUmRGbFhTVEJPVXpBd1dWUkJlVXhYU1hkT1IwVjBXVmRGTVZwRVRUTk5SRkV3VGtSYWFTOHdMekF2TUM4d0x6QXZOamMyTkRBME1ETXdNVE0zTXpZNE1qYzBNQzlsZDNJdk1DOHhOalV3TXk4eEx6VXhMekF2TVRjeUxqVTRMakUwTlM0MU5DOHdMakF3TUM4L0cwcWhfNmwwRWdybURyM01fWG0tMjY5MTlqYyZub2RlaWQ9MTM5OSZhdWN0aW9uaWQ9Njc2NDA0MDMwMTM3MzY4Mjc0MCZleGNoPXB1YiZzaWQ9NDMxNjYxNCZjaWQ9NjQ1NDI2MSZhY3Q9TGlJaUppUW9jSHhyUFN3dUpDTXFjSHhyS3k1d2ZHc2hJaW9xSkNNcWNIeHJPaXdrT1FzaVB3UWdQUU1pT1NRcmNIMCZncm91cD11cy1lYXN0JmJwPWRnX2JlamJiaSZwcm90b2NvbF92ZXJzaW9uPTEmYnV5ZXJDcmVhdGl2ZUlkPTY0NTQyNjEmY3ZpZD00JmFpZD02NzY0MDQwMzAxMzczNjgyNzQwJmFkdmVyaWQ9MjA1MTI0JmNkc3A9ZmFsc2Umb3B0b3V0PTAmbG10PTAmb2lkPTEwMDgxNiZjYWNoZUJ1c3Rlcj0xNTYxMDE0MDY4JnNraXBwYWJsZT0yJmNtcD02MTg5NzImc2VnX3NlbGY9Yms6MTA4NDc3NCxiazoxMDg0Nzc1LGJrOjUwMjg0Nixiazo1MDI4NDcsYms6NTAyODUwLGJrOjUwMjg1MyZhcHBfaWQ9Y29tLmxpbWUudmlkZW8ucGxheWVyJmFwcF9uYW1lPVBsYXllck9wZW5pbmdJbnRlclRpZXIyJnVhPU1vemlsbGEvNS4wJTIwJTI4TGludXglM0IlMjBBbmRyb2lkJTIwOC4xLjAlM0IlMjBMTS1RNzEwJTI4RkdOJTI5JTIwQnVpbGQvT1BNMS4xNzEwMTkuMDE5JTNCJTIwd3YlMjklMjBBcHBsZVdlYktpdC81MzcuMzYlMjAlMjhLSFRNTCUyQyUyMGxpa2UlMjBHZWNrbyUyOSUyMFZlcnNpb24vNC4wJTIwQ2hyb21lLzc0LjAuMzcyOS4xNTclMjBNbyZsYXRfbG9uZz0zNi4xNjU5MDElMkMtODYuNzg0NDAxJnV1aWQ9ZTU2Y2NmNDctMDIzNS00MjdlLWE1YjEtNWU4YmE4OGU3N2JhJm1kaWQ9ZTU2Y2NmNDctMDIzNS00MjdlLWE1YjEtNWU4YmE4OGU3N2JhJnNpdGVpZD0wJnBpZD0xNTc5NDEmaXA9MTcyLjU4LjE0NS41NCZwcm90PWh0dHBzJTNBJTJGJTJGJmNvdW50PTEmcHJpY2U9e1BTUE19XV0+PC9WQVNUQWRUYWdVUkk+CjxFcnJvcj48IVtDREFUQVtodHRwczovL2FrdHJhY2sucHVibWF0aWMuY29tL3RyYWNrP29wZXJJZD03JnA9MTU3OTQxJnM9NTU3MjI0JmE9MjE3MzkyMiZ3YT0yNDMmdHM9MTU2MTAxNDA2OCZ3Yz0xNjczNSZjcklkPTY0NTQyNjEmdWNyaWQ9MTczMDA2NzE5NjAwMzY3ODA5MzImaW1waWQ9QjVDRDU4QzctNkIwQi00MzEzLThBNTEtNzNGRjNFREYxNDYxJmFkdmVydGlzZXJfaWQ9NTk4MDkmZWNwbT02LjQxMDMwMCZlcj1bRVJST1JDT0RFXV1dPjwvRXJyb3I+CjxJbXByZXNzaW9uPjwhW0NEQVRBW2h0dHBzOi8vYWt0cmFjay5wdWJtYXRpYy5jb20vQWRTZXJ2ZXIvQWREaXNwbGF5VHJhY2tlclNlcnZsZXQ/b3BlcklkPTEmcHViSWQ9MTU3OTQxJnNpdGVJZD01NTcyMjQmYWRJZD0yMTczOTIyJmFkVHlwZT0xMyZhZFNlcnZlcklkPTI0MyZrZWZhY3Q9e1BTUE19JmtheGVmYWN0PXtQU1BNfSZrYWROZXRGcmVxdWVjeT0wJmthZHdpZHRoPTAma2FkaGVpZ2h0PTAma2Fkc2l6ZWlkPTk3JmtsdHN0YW1wPTE1NjEwMTQwNjgmaW5kaXJlY3RBZElkPTAmYWRTZXJ2ZXJPcHRpbWl6ZXJJZD0yJnJhbnJlcT0wLjEma3BibXRwZmFjdD17UFNQTX0mdGxkSWQ9NTg1NDYwNzQmcGFzc2JhY2s9MCZla2VmYWN0PXtQU1BNfSZla2F4ZWZhY3Q9e1BTUE19JmVrcGJtdHBmYWN0PXtQU1BNfSZzdnI9QklENDQwNjVVJmNySUQ9NjQ1NDI2MSZscHU9cGVyZmV0dGl2YW5tZWxsZS5jb20mdWNyaWQ9MTczMDA2NzE5NjAwMzY3ODA5MzImY2FtcGFpZ25JZD0xNjczNSZjcmVhdGl2ZUlkPTAmcGN0cj0wLjAwMDAwMCZ3RFNQQnlySWQ9MTAwODE2JndEc3BJZD0yNyZ3YklkPTQmd3JJZD0wJndBZHZJRD01OTgwOSZpc1JUQj0xJnJ0YklkPTJEMDIxRjdGLTBENjUtNDAxNi1COEI3LTk5MTBFOTIxQkZERCZpbXBySWQ9QjVDRDU4QzctNkIwQi00MzEzLThBNTEtNzNGRjNFREYxNDYxJm9pZD1CNUNENThDNy02QjBCLTQzMTMtOEE1MS03M0ZGM0VERjE0NjEmbW9iZmxhZz0xJmlzbW9iaWxlYXBwPTEmbW9kZWxpZD03Jm9zaWQ9MTgyJnVkaWR0eXBlPTEmY291bnRyeT1VUyZjbnRyeUlkPTIzMiZzZWM9MV1dPjwvSW1wcmVzc2lvbj4KPEltcHJlc3Npb24+PCFbQ0RBVEFbaHR0cHM6Ly9pbWFnZTgucHVibWF0aWMuY29tL0FkU2VydmVyL0ltZ1N5bmM/JmZwPTEmbXBjPTEwJnA9MTU3OTQxJmdkcHI9MCZnZHByX2NvbnNlbnQ9JnBtYz0tMSZwdT1odHRwcyUzQSUyRiUyRmltYWdlNC5wdWJtYXRpYy5jb20lMkZBZFNlcnZlciUyRlNQdWclM0ZwbWMlM0QtMSUyNnBhcnRuZXJJRCUzRDE1Nzk0MSUyNnBhcnRuZXJVSUQlM0QlMjhudWxsJTI5XV0+PC9JbXByZXNzaW9uPgo8SW1wcmVzc2lvbiAvPgo8Q3JlYXRpdmVzPgo8Q3JlYXRpdmUgaWQ9IjY0NTQyNjEiIC8+CjxDcmVhdGl2ZT4KPExpbmVhcj4KPFRyYWNraW5nRXZlbnRzPgo8VHJhY2tpbmcgZXZlbnQ9ImNyZWF0aXZlVmlldyI+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT0xXV0+PC9UcmFja2luZz4KPFRyYWNraW5nIGV2ZW50PSJzdGFydCI+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT0yXV0+PC9UcmFja2luZz4KPFRyYWNraW5nIGV2ZW50PSJtaWRwb2ludCI+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT0zXV0+PC9UcmFja2luZz4KPFRyYWNraW5nIGV2ZW50PSJmaXJzdFF1YXJ0aWxlIj48IVtDREFUQVtodHRwczovL2FrdHJhY2sucHVibWF0aWMuY29tL3RyYWNrP29wZXJJZD03JnA9MTU3OTQxJnM9NTU3MjI0JmE9MjE3MzkyMiZ3YT0yNDMmdHM9MTU2MTAxNDA2OCZ3Yz0xNjczNSZjcklkPTY0NTQyNjEmdWNyaWQ9MTczMDA2NzE5NjAwMzY3ODA5MzImaW1waWQ9QjVDRDU4QzctNkIwQi00MzEzLThBNTEtNzNGRjNFREYxNDYxJmFkdmVydGlzZXJfaWQ9NTk4MDkmZWNwbT02LjQxMDMwMCZlPTRdXT48L1RyYWNraW5nPgo8VHJhY2tpbmcgZXZlbnQ9InRoaXJkUXVhcnRpbGUiPjwhW0NEQVRBW2h0dHBzOi8vYWt0cmFjay5wdWJtYXRpYy5jb20vdHJhY2s/b3BlcklkPTcmcD0xNTc5NDEmcz01NTcyMjQmYT0yMTczOTIyJndhPTI0MyZ0cz0xNTYxMDE0MDY4JndjPTE2NzM1JmNySWQ9NjQ1NDI2MSZ1Y3JpZD0xNzMwMDY3MTk2MDAzNjc4MDkzMiZpbXBpZD1CNUNENThDNy02QjBCLTQzMTMtOEE1MS03M0ZGM0VERjE0NjEmYWR2ZXJ0aXNlcl9pZD01OTgwOSZlY3BtPTYuNDEwMzAwJmU9NV1dPjwvVHJhY2tpbmc+CjxUcmFja2luZyBldmVudD0iY29tcGxldGUiPjwhW0NEQVRBW2h0dHBzOi8vYWt0cmFjay5wdWJtYXRpYy5jb20vdHJhY2s/b3BlcklkPTcmcD0xNTc5NDEmcz01NTcyMjQmYT0yMTczOTIyJndhPTI0MyZ0cz0xNTYxMDE0MDY4JndjPTE2NzM1JmNySWQ9NjQ1NDI2MSZ1Y3JpZD0xNzMwMDY3MTk2MDAzNjc4MDkzMiZpbXBpZD1CNUNENThDNy02QjBCLTQzMTMtOEE1MS03M0ZGM0VERjE0NjEmYWR2ZXJ0aXNlcl9pZD01OTgwOSZlY3BtPTYuNDEwMzAwJmU9Nl1dPjwvVHJhY2tpbmc+CjwvVHJhY2tpbmdFdmVudHM+CjxWaWRlb0NsaWNrcz4KPENsaWNrVHJhY2tpbmc+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT05OV1dPjwvQ2xpY2tUcmFja2luZz4KPC9WaWRlb0NsaWNrcz4KPC9MaW5lYXI+CjwvQ3JlYXRpdmU+CjwvQ3JlYXRpdmVzPgo8RXh0ZW5zaW9ucz4KPEV4dGVuc2lvbj4KPE1ldGE+PCFbQ0RBVEFbbmFtZT1wbS1mb3JjZXBpeGVsO3Zlcj0xLjBdXT48L01ldGE+CjxQaXhlbCBsb2M9IjAiPgo8Q29kZSB0eXBlPSIxIj48IVtDREFUQVtodHRwczovL2Fkcy5wdWJtYXRpYy5jb20vQWRTZXJ2ZXIvanMvc2hvd2FkLmpzI1BJWCZwdGFzaz1EU1AmU1B1Zz0xJmZwPTEmbXBjPTEwJnU9JnA9MTU3OTQxJnM9NTU3MjI0JmQ9MiZjcD0wJnNjPTEmcnM9MCZvcz0xJmdkcHI9MCZnZHByX2NvbnNlbnQ9XV0+PC9Db2RlPgo8L1BpeGVsPgo8L0V4dGVuc2lvbj4KPC9FeHRlbnNpb25zPgo8L1dyYXBwZXI+CjwvQWQ+CjwvVkFTVD4K=]]></VASTAdTagURI><Impression/><Impression><![CDATA[https://use-trk.doadx.com/imp?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}]]></Impression><Impression><![CDATA[https://use-trk.doadx.com/win?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}]]></Impression><Creatives><Creative AdID=\"A188sKS9\"><Linear><TrackingEvents><Tracking event=\"start\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=start&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"firstQuartile\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=firstQuartile&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"midpoint\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=midpoint&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"thirdQuartile\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=thirdQuartile&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"complete\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=complete&price=${AUCTION_PRICE}]]></Tracking></TrackingEvents><VideoClicks><ClickTracking><![CDATA[https://use-trk.doadx.com/clk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}]]></ClickTracking></VideoClicks></Linear></Creative></Creatives></Wrapper></Ad></VAST>"
                },
                "cid": "12"
            }
        ],
        "id": "c31b44b6a198418a9cecf9ad293c6bfb"
    }
}

4. JS Tag

4.1 Attention

  • Algorix JS Tag supports the following ad formats: Banner.
  • You need to replace [adDivId] with the Div ID where the ad should be placed. Please use unique Div ID on one page
  • The system will assign the [sid] [token] [app_id] [adslot_id] . You need to replace them with your own values.
  • You need to replace [app_bundle_id] with your actual package name or bundle id.
  • You need to replace [width] with an exact width in device and replace [height] with an exact height in device.

4.2 JS Network Tag in Mopub

  • Follow the instructions and use the below html tag to configure a third party network tag in Mopub.
  • The below html tag include the required parameters, you can append any of the recommended or optional parameters to increase your revenue. Please make sure to review and read through 3.13 Request Paramters.

Mopub JavaScript Network HTML

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
</head>
<body>
    <!-- Make sure you have replaced [adDivId] [sid] [token] [app_id] [adslot_id] [app_bundle_id] [width] [height] with your own values before setting it up in Mopub -->

    <!-- COPY FROM HERE - : JS Tag START -->

    <!-- [adDivId] DIV ID -->
    <div id="[adDivId]"></div>
    <script>
        var data = {
            "adDivId": "[adDivId]", // [adDivId] The Div ID where the ad should be placed
            "sid": "[sid]", // [sid] Algorix sid
            "token": "[token]", // [token] Algorix token
            "app": {
                "app_id": "[app_id]", // [app_id] Algorix app_id
                "app_bundle_id": "[app_bundle_id]" // [app_bundle_id] IOS = bundle idAndroid = package
            },
            "adslot": {
                "adslot_id": "[adslot_id]", // [adslot_id] Algorix adslot_id
                "banner": {
                    "width": [width], // [width] Exact width in device independent pixels.
                    "height": [height] // [height] Exact height in device independent pixels.
                }
            },
            "user": {
                "ip": "%%IPADDRESS%%"
            },
            "device": {
                "user_agent": "%%USERAGENT%%",
                "device_id": [{
                    "id": "%eudid!"
                }],
                "advertising_id": {
                    "id": "%eudid!"
                }
            }
        };
        (function () {
            var script = document.createElement('script');
            script.onload = script.onreadystatechange = function () {
                if (script.readyState && /loaded|complete/.test(script.readyState)) {
                    script.onload = script.onreadystatechange = undefined;
                }
                script = undefined;
                DoadxJS.loadAd(data, function () {
                    // success passback
                    console.log("SUCCESS");
                }, function () {
                    // Mopub passback
                    loaded = true;
                    window.location = "mopub://failLoad";
                });
            };
            script.onerror = function () {
                script.onerror = undefined;
                document.body.removeChild(script);
                script = undefined;
            };
            script.type = 'text/javascript';
            script.charset = 'UTF-8';
            script.src = 'https://xyz.doadx.com/static/bundle.js?t=' + new Date().getTime();
            document.body.appendChild(script);
        })();
    </script>

    <!-- COPY TILL HERE -  : JS Tag END -->

    <!-- Make sure you have replaced [adDivId] [sid] [token] [app_id] [adslot_id] [app_bundle_id] [width] [height] with your own values before setting it up in Mopub -->

</body>
</html>

5.Appendix

5.1 IAB Category Type

valueDescription
IAB1Arts & Entertainment
IAB2Automotive
IAB3Business
IAB4Careers
IAB5Education
IAB6Family & Parenting
IAB7Health & Fitness
IAB8Food & Drink
IAB9Hobbies & Interests
IAB10Home & Garden
IAB11Law, Gov’t & Politics
IAB12News
IAB13Personal Finance
IAB14Society
IAB15Science
IAB16Pets
IAB17Sports
IAB18Style & Fashion
IAB19Technology & Computing
IAB20Travel
IAB21Real Estate
IAB22Shopping
IAB23Religion & Spirituality
IAB24Uncategorized
IAB25Non-Standard Content
IAB26Illegal Content

5.2 Protocols

The following table lists the options for the various bid response protocols that could be supported by an exchange.

valueDescription
1VAST 1.0
2VAST 2.0
3VAST 3.0
4VAST 1.0 Wrapper
5VAST 2.0 Wrapper
6VAST 3.0 Wrapper
7VAST 4.0
8VAST 4.0 Wrapper
9DAAST 1.0
10DAAST 1.0 Wrapper

5.3 StartDelay

The following table lists the various options for the video or audio start delay. If the start delay value is greater than 0, then the position is mid-roll and the value indicates the start delay.

valueDescription
>0Mid-Roll (value indicates start delay in second)
0Pre-Roll
-1Generic Mid-Roll
-2Generic Post-Roll

5.4 Linearity

The following table indicates the options for video linearity. “In-stream” or “linear” video refers to preroll, post-roll, or mid-roll video ads where the user is forced to watch ad in order to see the video content. “Overlay” or “non-linear” refer to ads that are shown on top of the video content. This OpenRTB table has values derived from the Inventory Quality Guidelines (IQG). Practitioners should keep in sync with updates to the IQG values.

valueDescription
1Linear / In-Stream
2Non-Linear / Overlay

5.5 Playback Methods

The following table lists the various playback methods.

valueDescription
1Initiates on Page Load with Sound On
2Initiates on Page Load with Sound Off by Default
3Initiates on Click with Sound On
4Initiates on Mouse-Over with Sound On
5Initiates on Entering Viewport with Sound On
6Initiates on Entering Viewport with Sound Off by Default

5.6 Playbackend

The following table lists the various modes for when playback terminates.

valueDescription
1On Video Completion or when Terminated by User
2On Leaving Viewport or when Terminated by User
3On Leaving Viewport Continues as a Floating/Slider Unit until Video Completion or when Terminated by User

5.7 Position

valueDescription
0Unknown
1Above the Fold
2DEPRECATED - May or may not be initially visible depending on screen size/resolution.
3Below the Fold
4Header
5Footer
6Sidebar
7Full Screen

5.8 Device Type

valueDescription
0unknown
1Phone
2Tablet
3TV
4Other

5.9 Language

valueDescription
zhChinese
enEnglish
jaJapanese
koKorean
deGerman
frFrench
ptPortuguese
itltalian

5.10 Companion Types

valueDescription
1Static Resource
2HTML Resource
3iframe Resource

5.11 API Frameworks

The following table is a list of API frameworks supported by the publisher

valueDescription
1VPAID 1.0
2VPAID 2.0
3MRAID-1
4ORMMA
5MRAID-2
6MRAID-3

5.12 Creative Attributes

The following table specifies a standard list of creative attributes that can describe an ad being served or serve as restrictions of thereof.

valueDescription
1Audio Ad (Auto-Play)
2Audio Ad (User Initiated)
3Expandable (Automatic)
4Expandable (User Initiated - Click)
5Expandable (User Initiated - Rollover)
6In-Banner Video Ad (Auto-Play)
7In-Banner Video Ad (User Initiated)
8Pop (e.g., Over, Under, or Upon Exit)
9Provocative or Suggestive Imagery
10Shaky, Flashing, Flickering, Extreme Animation, Smileys
11Surveys
12Text Only
13User Interactive (e.g., Embedded Games)
14Windows Dialog or Alert Style
15Has Audio On/Off Button
16Ad Provides Skip Button (e.g. VPAID-rendered skip button on pre-roll video)
17Adobe Flash

5.13 Assets Data Type

valueDescription
2The description of ad.
12The description of click button.
OtherClick for more

5.14 Err No and Msg

valueDescription
1000Sucess
1001Token error
1010Request JSON Body cannot be parsed correctly
1011Adslot obj has an error or doesn't exist
1012User obj has an error or doesn't exist
1013App obj has an error or doesn't exist
1014Device obj has an error or doesn't exist
1015Reg obj has an error or doesn't exist
2001have no ad