Pangle: A global platform dedicated to developer growth.|Integration Docs
Knowledge Center

Reporting API 2.0

Date

Feature

2020/12/01

  • Supports T+0 “date*placement_id*country” level estimated revenue data. (Note that estimated revenue data might take a few days to stabilize) 
  • Supports UTC+0 estimated revenue data (Available from 2020/12/01. Note that billing is still based on UTC+8 data)
  • Returns app package name
  • Updated signing method

2020/12/20

  • Updated request demo

2021/01/12

  • “Region“ has become an optional request parameter

2021/03/16

  • Added response fields:media_name,code_name,os.
  • Updated request sample and code sample.

2021/07/05

  • Updated endpoints

2021/07/12

  • Modified the caliber of fill_rate.
  • New metrics release : ad_requestresponsead_fill_rate and ad_impression_rate. But these added metrics do not have data before March 15 2021.

2022/09/15

  • New parameter: dimensions

Update

Pangle has launched the new endpoints for reporting API on 5th July 2021.

  • open-api.pangle.cn which only allows publishers to pull out revenue generated from the Chinese Mainland region
  • open-api.pangleglobal.com which only allows publishers to pull out revenue generated from the Non-Chinese Mainland regions

To avoid potentially missing data from the reporting API 1.0, we strongly recommend you update your settings to the reporting API 2.0 as soon as possible.


Request

Request Params

Type

Mandatory

Allowed Value

Default Value

Note

user_id

int

Yes

-

-

user_id is your Pangle account id

role_id

int

Yes

-

-

Role_id can be found adjacent to your security key. The api will only return data of the apps the role has access to. To retrieve complete data, please make sure you have permission for all the apps.

reporting api.png

timestamp

int

No

-

-

In unix time format. Eg:1095379200;Timestamp is the current timestamp. When the offset between timestamp and the current time is greater than 10 minutes, a parameter error will be returned to prevent request replay

version

string

Yes

2.0

-

Version of this reporting api, please fill in 2.0

date

string

Yes

-

-

YYYY-MM-DD, e.g. '2020-10-10'

time_zone

int

No

0 or 8

8

8 for utc8; 0 for utc0; Please note that Pangle's billing data is still based on UTC8

currency

string

No

usd or cny

cny


region

string

No



Two digit country/region code under ISO3166-1, eg:cn

sign

string

Yes

-

-

1)A string in hexadecimal that should be generated with the method provided below.

2)Sign Sample:7ff19ec1961d8c2b7c7b3845d974d22e

sign_type

string

Yes

MD5

-


dimensions

string

No

user_id,ad_solt_type,region

-

support for multiple dimensions in the allowed values to be passed in together

1)Multiple values are passed in with commas, for example:"user_id,ad_slot_type"

2)A single value can be passed in directly:"ad_slot_type"

3)if this parameter is not passed or the data is empty, the Ad placements dimension data is obtained by default


Request Sample

we have updated the url recently, please use the url "https://open-api.pangleglobal.com" to pull out data

Pull out the data generated from the Non-Chinese Mainland regions

https://open-api.pangleglobal.com/union_pangle/open/api/rt/income?currency=cny&date=2021-01-12&role_id=459&sign_type=MD5&time_zone=0&user_id=459&version=2.0&timestamp=1615778032&sign=598b733d2eb8d5ef7fb326fc2061dfa1&dimensions=ad_slot_type,region

How is the param "sign" generated?

To get the right sign value, you should:

  1. Sort your request keys by alphabetical order
  2. Sign your request keys and values with your security key (Security key can be found in the Pangle platform - SDK Integration - Data API)
  3. sign=md5(k1=v1&k2=v2...security-key)

Sign - Python Code Sample


Sign - PHP Code Sample

Response

Primary Params

Type

Note

Code

string

Status code

Message

string

Gives explanation in case an error occurs

Data

dict

{  "date" : income_info}

income_info is a list comprised of dictionaries that contains the following information

Param Name

Type

Description

time_zone

int

Timezone

currency

string

Currency

region

string

Two digit country/region code under ISO3166-1

app_id

int

App id on Pangle platform

app_name

string

App Name on Pangle platform

ad_slot_id

int

Placement id on Pangle platform

ad_slot_type

int

Also known as Ad type,1(In-feed ad)、2(Banner(Horizontal))、3(Splash ad)、4(Interstitial ad)、5(Rewarded Video Ads)、6(Full Page Video Ads)、7(Draw in-feed ad)、8(In-Stream Ads)、9(New interstitial ad)

package_name

string

Package name in the form of aaa.bbb.ccc

request

int

The number of requests received by Pangle. A request is counted as 1 even if it asked for more than one ad creative. The pre-cached requests automatically initiated by Pangle are counted towards the number of Requests (only for Splash Ads and Rewarded Video Ads). For details, please visit: Metrics Description. Available upon invitation, returns 0 otherwise.

return

int

The number of ad creatives returned by Pangle. The Ad Responses are counted as X when a request asks for Y ads creatives and Pangle successfully returns X ad creatives. The number of ad creatives returned in response to the pre-cached requests automatically initiated by Pangle is counted towards the number of Ad Responses. Available upon invitation, returns 0 otherwise.

fill_rate

float

fill_rate =  response/request (Available upon invitation, returns 0 otherwise).

show

int

Impressions

click

int

Clicks

click_rate

float

Click Through Rate

revenue

float

Estimated Revenue

ecpm

float

Estimated Ecpm

media_name

string

Account name

code_name

string

Slot name on Pangle platform

os

string

Operating system

use_mediation

int

Is use pangle mediation. 0 (Not) 、1 (Yes)

bidding_type

int

RIT bidding type. 0 (standard) 、1 (in-app bidding) 、2 (client bidding)

ad_request

int

The number of requested ad creatives received by Pangle. When a request asks X ad creatives, it will be counted as X Ad Requests. The number of ad creatives requested by the pre-cached requests automatically initiated by Pangle is counted towards the number of Ad Requests.

response

int

The number of ad responses returned by Pangle. A response is counted as 1 even if Pangle returned more than one ad creative. Responses for the pre-cached requests automatically initiated by Pangle are counted towards the number of Responses.

ad_fill_rate

float

ad_fill_rate = return / ad_request (Available upon invitation, returns 0 otherwise).

ad_impression_rate

float

ad_impression_rate = show / return (Available upon invitation, returns 0 otherwise).



Message

Code

Message

100

Success. Any other status code means the request has been unsuccessful

101

Sign verification failed

102

Invalid user_id

103

Invalid date format

106

Exceed QPS limits. Pangle allows up to 5 qps

114

Invalid param

133

Invalid region enum

PD0004

Success. But no data available under the provided filtering conditions

Reduce report limits

Reports have a limit of 100,000 rows. When a report with over 100,000 rows is requested, the report will be truncated and the first 100,000 rows will be returned.

To ensure you are receiving all rows, try reducing the size of the report by:

  • Reducing the date range in the request.
  • Reduce the number of dimensions.