Reporting API
Change Log
| date | notes |
|---|---|
| 2023-02-27 | Added a buried revenue indicator, eventRevenue, to the consolidated report |
| 2023-02-06 | New dimensions of the comprehensive report: application version, channel, SDK version, IDFA authorization, and A/B test group |
| 2023-01-04 | LTV support placementId,appVersion,channel Retention support appVersion,channel |
| 2022-10-10 | support bidding data |
| 2022-02-09 | support adscene |
| - | LTV & retention report |
| - | support full report |
Note
Description of indicator data
https://docs.tradplusad.com/en/docs/operation/tradplus_qa/report/
1. Authentication check
1.1 Method
HTTP
1.2 Header Params
Authorization: Bearer {your token}
| params | notes | sample |
|---|---|---|
| Authorization | token | Bearer {your token} |
curl --location --request POST 'https://openapi.tradplusad.com/v3/allreport' \
--header 'Authorization: Bearer BB86G020-ED1C-E02A-637E-BA73D9A4FF01' \
--header 'Content-Type: application/json' \
--data-raw '{
"startDate": "2022-09-27",
"endDate": "2022-09-27",
"timezone": "UTC+0",
"currency": "USD",
"groupBy":
[
"date"
],
"metric":
[
"all"
]
}'
method of getting token: "my account"-"Report API Key"- generate APK key
2. Full report API
2.1 URL
https://openapi.tradplusad.com/v2/allreport
2.2 Request Method
HTTP POST HTTP Content-Type: application/json
2.3Request params
Pass the start parameter
| params | type | required | notes | sample |
|---|---|---|---|---|
| startDate | String | Y | start date,format:YYYY-mm-dd | 2020-03-01 |
| endDate | String | Y | end date,format:YYYY-mm-dd | 2020-03-02 |
| timezone | String | N | report time zone ,Only support:"UTC+8"、"UTC+0"、"UTC-8"。default:"UTC+0" | UTC+0 |
| currency | String | N | currency。default : USD,Only support:USD CNY | USD |
| appIdList | String[] | N | app id list | |
| start | Int | N | offset | 0 |
| limit | Int | N | limit row number. default 1000. [1,1000] | 100 |
| groupBy | String[] | N | date, appId, placementId, adFormat, area, network, networkPlacementId, adSceneId(only support tradplus data) sdk(only support tradplus data) channel(only support tradplus data) appVersion(only support tradplus data) idfa(only support tradplus data) bucketId(only support tradplus data) | [“network”,”networkPlacementId”] |
| metric | String[] | N | all(default), dau, deu, arpu, newUsers, requestApi, fillApi, fillrateApi, impressionApi, clickApi, ecpmApi, ctrApi, revenue, bidRequestApi, bidResponseApi, bidResponseRateApi, bidWinRateApi, enterAdScene, enterAdSceneUsers, request, bidRequest, bidResponse, bidResponseRate, bidWinRate, impression, fill, click, clickUsers, ctr, estimateRevenue, eventRevenue, sdk, channel, appVersion, idfa, bucketName, countryName | [“dau”,”request”,”fillrateApi”] |
2.4 Return data
HTTP Content-Type: application/json
| fileds | type | notes |
|---|---|---|
| timezone | String | UTC+8、UTC+0、UTC-8 |
| items | Array | items |
| Items: |
| fileds | type | required | notes |
|---|---|---|---|
| date | String | N | Date,format:YYYY-mm-dd |
| appId | String | N | APP ID(tradplus).Return if appId is in param groupBy |
| platform | Int | N | App Platform (1 Android, 2 iOS).Return if appId is in param groupBy |
| packageName | String | N | Package name .Return if appId is in param groupBy |
| placementId | String | N | Placement ID (tradplus).Return if placementId is in param groupBy |
| placementName | String | N | Placement name (tradplus).Return if placementId is in param groupBy |
| adFormat | Int | N | Ad slot type.Return if adFormat is in param groupBy |
| adFormatName | String | N | Ad slot name.Return if adFormat is in param groupBy |
| area | String | N | Country code.Return if area is in param groupBy |
| network | Int | N | Network ID.Return if network is in param groupBy |
| networkName | String | N | Network name.Return if network is in param groupBy |
| networkPlacementId | String | N | Network Placement Id .Return if networkPlacementId is in param groupBy |
| networkPlacementName | String | N | Network Placement Name (tradplus).Return if networkPlacementId is in param groupBy |
| networkPlacementInfo | String | N | Network Placement Information .Return if networkPlacementId is in param groupBy |
| dau | Int | N | TradPlus data : daily actvie users |
| deu | Int | N | TradPlus data : daily engaged users |
| arpu | Float | N | TradPlus data : average revenue per daily actvie user |
| newUsers | Int | N | TradPlus data : new Users |
| newUserRate | Float | N | TradPlus data : new User Rate |
| bidRequestApi | Int | N | Network data : bidding request numbers |
| bidResponseApi | Int | N | Network data : bidding response numbers |
| bidResponseRateApi | Float | N | Network data : bidding response rate |
| bidWinRateApi | Float | N | Network data : bidding win rate |
| requestApi | Int | N | Network data : request numbers |
| fillApi | Int | N | Network data : fill numbers |
| fillrateApi | Float | N | Network data : fillrate |
| impressionApi | Int | N | Network data : impression numbers |
| clickApi | Int | N | Network data : click numbers |
| ctrApi | Float | N | Network data : ctr |
| ecpmApi | Float | N | Network data : eCPM |
| Revenue | Float | N | Network data : revenue |
| enterAdScene | Int | N | TradPlus data : enter AdScene numbers |
| enterAdSceneUsers | Int | N | TradPlus data : enter AdScene users |
| bidRequest | Int | N | TradPlus data : bidding request numbers |
| bidResponse | Int | N | TradPlus data : bidding response numbers |
| bidResponseRate | Float | N | TradPlus data : bidding response rate |
| bidWinRate | Float | N | TradPlus data : bidding win rate |
| request | Int | N | TradPlus data : request numbers |
| fill | Int | N | TradPlus data : fill numbers |
| fillrate | Float | N | TradPlus data : fill rate |
| impression | Int | N | TradPlus data : impression numbers |
| impressionRatio | Float | N | TradPlus data : impression ratio |
| click | Int | N | TradPlus data : click numbers |
| clickUsers | Int | N | TradPlus data : click users |
| ctr | Float | N | TradPlus data : ctr |
| estimateRevenue | Float | N | TradPlus data : estimate revenue |
| idfa | Int | N | IDFA Authorization |
| bucketName | String | N | A/B Test group name |
| countryName | String | N | country |
| channel | String | N | channel |
| sdk | String | N | sdk version |
| appVersion | String | N | Application version |
| eventRevenue | String | N | TradPlus data : event revenue |
All Data freshness: UTC+0 data: 20:00 (Beijing Time) UTC+8 data: 21:00 (Beijing Time) UTC-8 data: day2 at 2:00 (Beijing Time)
2.5 Sample
Reqeust Sample:
{
"startDate": "2021-07-01",
"endDate" : "2021-07-07",
"timezone" : "UTC+0",
"currency" : "USD",
"start": 0,
"limit": 1000,
"groupBy":
[
"date",
"appId",
"placementId"
],
"metric":
[
"all"
]
}
Response Sample:
{
"items": [
{
"date": "2021-07-01",
"appId": "6640E7E3BDAC951B8F28D4C8C50E50B5",
"platform":1,
"packageName": "com.unstall.meetdelete",
"placementId": "B514A432CE5E96A44BD2E313AC3323AB",
"placementName": "Banner_1",
"adFormat": 0, //Return if adFormat is in param groupBy
"adFormatName": "", //Return if adFormat is in param groupBy
"area": "", //Return if area is in param groupBy
"network": 0, //Return if network is in param groupBy
"networkName": "", //Return if network is in param groupBy
"networkPlacementName": "", //Return if networkPlacementId is in param groupBy
"networkPlacementId": "", //Return if networkPlacementId is in param groupBy
"networkPlacementInfo": "", //Return if networkPlacementId is in param groupBy
"requestApi": 19433,
"fillApi":150,
"fillrateApi": 0.13,
"impressionApi": 1989,
"clickApi": 236,
"ecpmApi": 2.21,
"ctrApi": 0.14,
"Revenue": 6.59,
"dau": 679,
"deu": 223,
"arpu": 0.01,
"newUsers": 349,
"newUserRate": 0.63,
"enterAdScene":4123,
"enterAdSceneUsers":3178,
"impression": 44106,
"impressionRatio": 0.8507,
"click": 20358,
"clickUsers": 16829,
"ctr": 0.4616,
"estimateRevenue": 5.31,
"request": 19432,
"bidRequestApi": 8655,
"bidRequest": 9152,
"bidResponseApi": 4582,
"bidResponse": 5625,
"bidResponseRateApi": 0.5294,
"bidResponseRate": 0.6175,
"bidWinRateApi": 3.4547,
"bidWinRate": 4.2409,
"appRequest": 1549732,
"idfa": 0,
"bucketName": "",
"countryName": "",
"channel": "",
"sdk": "",
"appVersion": ""
}
],
"timezone": "UTC+0"
}
3. Ltv 1-90 days report API
3.1 URL
https://openapi.tradplusad.com/v2/ltv
3.2 Request Method
HTTP POST HTTP Content-Type: application/json
3.3Request params
- Pass the start parameter
| params | type | required | notes |sample |
| --- | --- | --- | --- | --- |
|startDate|String|Y|start date,format:YYYY-mm-dd|2020-03-01
|endDate|String|Y|end date,format:YYYY-mm-dd|2020-03-02
|timezone|String|N|report time zone ,Only support:"UTC+8"、"UTC+0"、"UTC-8"。default:"UTC+0"|UTC+0
|currency |String|N|currency。default : USD,Only support:USD CNY|USD
|appIdList|String[]|N|app id list||
|areaList|String[]|N|country code|CN
|start|Int|N|offset |0
|limit|Int|N|limit row number. default 1000. [1,1000] |100
|groupBy|String[]|Y|date
required
apprequired
area
placementId
appVersion
channel|["date","app","area"] |metric|String[]|Y|We provide 90 LTV in maximum|["ltv11","ltv12","ltv13"]
3.4 Return data
HTTP Content-Type: application/json
| fields | type | notes |
|---|---|---|
| timezone | String | UTC+8、UTC+0、UTC-8 |
| items | Array | items |
items:
| fields | type | notes |
|---|---|---|
| date | String | date,format:YYYY-mm-dd |
| appId | String | app id |
| appName | String | app name |
| appVersion | String | app version |
| channel | String | channel |
| placementId | String | placement id |
| placementName | String | placement name |
| newUserNum | Int64 | newUser number |
| ltvxx | Float64 | ltv day(1-90) |
note:Yesterday's data is updated daily at 21:00 Beijing time
3.5 Sample
Reqeust Sample:
{
"startDate": "2021-07-01",
"endDate" : "2021-07-07",
"timezone" : "UTC+0",
"currency" : "USD",
"start": 0,
"limit": 1000,
"groupBy":
[
"date",
"app"
],
"metric":
[
"all"
]
}
Response Sample:
{
"items":
[
{
"appId": "6640E7E3BDAC951B8F28D4C8C50E50B5",
"appName": "Banner_1",
"date": "2021-07-01",
"newUserNum": 2,
"ltv1": 9.54,
"ltv10": 0,
"ltv11": 0,
"ltv12": 0,
"ltv13": 0,
"ltv14": 0,
"ltv15": 0,
"ltv16": 0,
"ltv17": 0,
"ltv18": 0,
"ltv19": 0,
"ltv2": 0,
"ltv20": 0,
"ltv21": 0,
"ltv22": 0,
"ltv23": 0,
"ltv24": 0,
"ltv25": 0,
"ltv26": 0,
"ltv27": 0,
"ltv28": 0,
"ltv29": 0,
"ltv3": 0,
"ltv30": 0,
"ltv31": 0,
"ltv32": 0,
"ltv33": 0,
"ltv34": 0,
"ltv35": 0,
"ltv36": 0,
"ltv37": 0,
"ltv38": 0,
"ltv39": 0,
"ltv4": 0,
"ltv40": 0,
"ltv41": 0,
"ltv42": 0,
"ltv43": 0,
"ltv44": 0,
"ltv45": 0,
"ltv46": 0,
"ltv47": 0,
"ltv48": 0,
"ltv49": 0,
"ltv5": 0,
"ltv50": 0,
"ltv51": 0,
"ltv52": 0,
"ltv53": 0,
"ltv54": 0,
"ltv55": 0,
"ltv56": 0,
"ltv57": 0,
"ltv58": 0,
"ltv59": 0,
"ltv6": 0,
"ltv60": 0,
"ltv61": 0,
"ltv62": 0,
"ltv63": 0,
"ltv64": 0,
"ltv65": 0,
"ltv66": 0,
"ltv67": 0,
"ltv68": 0,
"ltv69": 0,
"ltv7": 0,
"ltv70": 0,
"ltv71": 0,
"ltv72": 0,
"ltv73": 0,
"ltv74": 0,
"ltv75": 0,
"ltv76": 0,
"ltv77": 0,
"ltv78": 0,
"ltv79": 0,
"ltv8": 0,
"ltv80": 0,
"ltv81": 0,
"ltv82": 0,
"ltv83": 0,
"ltv84": 0,
"ltv85": 0,
"ltv86": 0,
"ltv87": 0,
"ltv88": 0,
"ltv89": 0,
"ltv9": 0,
"ltv90": 0
}
],
"timezone": "UTC+0"
}
4.Retention 2-60 day report API
4.1 URL
https://openapi.tradplusad.com/v2/userActive
4.2 Request method
HTTP POST HTTP Content-Type: application/json
4.3Request params
- Pass the start parameter
| params | type | required | notes |sample |
| --- | --- | --- | --- | --- |
|startDate|String|Y|start date,format:YYYY-mm-dd|2020-03-01
|endDate|String|Y|end date,format:YYYY-mm-dd|2020-03-02
|timezone|String|N|report time zone ,Only support:"UTC+8"、"UTC+0"、"UTC-8"。default:"UTC+0"|UTC+0
|appIdList|String[]|N|app id list||
|areaList|String[]|N|country code|CN
|start|Int|N|offset |0
|limit|Int|N|limit row number. default 1000. [1,1000] |100
|groupBy|String[]|Y|date
required
apprequired
area
appVersion
channel|["date","app","area"] |metric|String[]|Y|We provide 90 user retention in maximum|["kp22","kp23","kp24"]
4.4 Return data
HTTP Content-Type: application/json
| fields | type | notes |
|---|---|---|
| timezone | String | UTC+8、UTC+0、UTC-8 |
| items | Array | items |
items:
| fields | type | notes |
|---|---|---|
| date | String | date,format:YYYY-mm-dd |
| appId | String | app id |
| appName | String | app name |
| appVersion | String | app version |
| channel | String | channel |
| kpxx | Float64 | kp day(1-90) |
note:Yesterday's data is updated daily at 21:00 Beijing time
4.5 Sample
Reqeust Sample:
{
"startDate": "2021-07-01",
"endDate" : "2021-07-07",
"timezone" : "UTC+0",
"currency" : "USD",
"start": 0,
"limit": 1000,
"groupBy":
[
"date",
"app"
],
"metric":
[
"all"
]
}
Response Sample:
{
"items": [
{
"appId": "FDC48B1D9D9E1F5CBD0C327159C8191C",
"appName": "Banner_1",
"date": "2021-07-01",
"kp1": 2.31,
"kp10": 0,
"kp11": 0,
"kp12": 0,
"kp13": 0,
"kp14": 0,
"kp15": 0,
"kp16": 0,
"kp17": 0,
"kp18": 0,
"kp19": 0,
"kp2": 0,
"kp20": 0,
"kp21": 0,
"kp22": 0,
"kp23": 0,
"kp24": 0,
"kp25": 0,
"kp26": 0,
"kp27": 0,
"kp28": 0,
"kp29": 0,
"kp3": 0,
"kp30": 0,
"kp31": 0,
"kp32": 0,
"kp33": 0,
"kp34": 0,
"kp35": 0,
"kp36": 0,
"kp37": 0,
"kp38": 0,
"kp39": 0,
"kp4": 0,
"kp40": 0,
"kp41": 0,
"kp42": 0,
"kp43": 0,
"kp44": 0,
"kp45": 0,
"kp46": 0,
"kp47": 0,
"kp48": 0,
"kp49": 0,
"kp5": 0,
"kp50": 0,
"kp51": 0,
"kp52": 0,
"kp53": 0,
"kp54": 0,
"kp55": 0,
"kp56": 0,
"kp57": 0,
"kp58": 0,
"kp59": 0,
"kp6": 0,
"kp60": 0,
"kp61": 0,
"kp62": 0,
"kp63": 0,
"kp64": 0,
"kp65": 0,
"kp66": 0,
"kp67": 0,
"kp68": 0,
"kp69": 0,
"kp7": 0,
"kp70": 0,
"kp71": 0,
"kp72": 0,
"kp73": 0,
"kp74": 0,
"kp75": 0,
"kp76": 0,
"kp77": 0,
"kp78": 0,
"kp79": 0,
"kp8": 0,
"kp80": 0,
"kp81": 0,
"kp82": 0,
"kp83": 0,
"kp84": 0,
"kp85": 0,
"kp86": 0,
"kp87": 0,
"kp88": 0,
"kp89": 0,
"kp9": 0,
"kp90": 0
}
],
"timezone": "UTC+0"
}
network ID
| id | notes |
|---|---|
| 1 | |
| 2 | Admob |
| 4 | AdColony |
| 5 | Unity Ads |
| 6 | Tapjoy |
| 7 | Vungle |
| 9 | Applovin |
| 10 | IronSource |
| 15 | Chartboost |
| 16 | Tencent Ads |
| 17 | CSJ |
| 18 | Mintegral |
| 19 | Pangle |
| 20 | Kuaishou Ads |
| 21 | Sigmob |
| 23 | Inmobi |
| 24 | Fyber |
| 25 | Youdao |
| 26 | DisplayIO JSTag |
| 27 | crosspro |
| 30 | Helium |
| 31 | Maio |
| 32 | Criteo |
| 33 | Mytarget |
| 34 | ogury |
| 35 | joomob |
| 36 | Appnext |
| 37 | Kidoz |
| 38 | Smaato |
| 41 | Huawei Ads |
| 43 | Baidu |
| 44 | Klevin |
| 45 | A4G |
| 46 | Mimo |
| 47 | Super Awesome |
| 48 | Google Ad Manager |
| 49 | GroMore |
| 50 | Yandex |
| 51 | My Network |
| 52 | Adfly |
| 54 | Appic(Abroad) |
| 55 | zMaticoo |
| 56 | ReklamUp |
| 57 | Bigo |
| 58 | BeiZi |
| 59 | Okspin |
| 60 | ONEMOB |
| 61 | Appic(China) |
| 62 | LeYou |
| 63 | Dirchlet(TapTap) |
| 64 | PremiumAds |
| 65 | zMaticoo(H5) |
| 66 | My Network 2 |
| 67 | GreedyGame |
| 68 | AlgoriX |
| 69 | BeesAds |
| 70 | APS |
| 71 | Mango X |
| 72 | Octopus Mobile |
| 73 | TanX |
| 74 | TaurusX |
| 75 | KwaiAd |
| 76 | Columbus |
| 77 | YSO |
| 78 | Vivo |
| 79 | OPPO Ads |
AD Format
| id | notes |
|---|---|
| 1 | Native |
| 2 | Interstitial |
| 3 | Splash |
| 4 | Banner |
| 5 | Rewarded Video |
| 6 | Offerwall |