Skip to main content

Query Player Report (Paginated)

Query statistical reports by Player with pagination, querying different data with different offsets, returning a maximum of 5000 records each time.

API Information

  • URL: POST /v2/report/user/offset
  • Authentication: Bearer Token
  • Encryption: Requests are encrypted using AES-256-GCM; responses are returned as plaintext JSON

Request

Request Headers

POST /v2/report/user HTTP/1.1
Host: api.example.com
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
x-agentid: integratorNBTest04
x-timestamp: 1769746894501
x-nonce: 4ff08bc2a45c6b38068dbcd24296a25b
x-signature: c25f8d23704373e8776cce6d9b10f1fde091c34db80d60523c7e04ff30e54633

Request Parameters

Parameters Before Encryption

{
"startDate": "2026-01-21T07:00:00.000Z",
"endDate": "2026-01-21T07:30:00.000Z",
"agentId": "integratorNBTest04",
"betSource": 1,
"featureMode": 1,
"gameKind": 1,
"offset": 0
}

Encrypted Request Body

{
"cipherText": "G0ZMDELeJwx+7JcIfIFOLJjkSzANPu6krGM2uw==..."
}
FieldTypeRequiredDescription
startDatestringYesStart time (ISO 8601 format)
endDatestringYesEnd time (ISO 8601 format)
agentIdstringYesAgent ID (must be the same as the agentId used for /v2/auth verification)
betSourcenumberNoFilter type, default is 1, 1: Regular bets and items, 2: Operator Cards, 3: All
featureModenumberNoFeature Mode
gameKindnumberNoGame Kind
offsetnumberYesOffset, 0 for the first query, increasing by 5000 for subsequent queries

Response

Success Response

{
"code": 0,
"message": "No error.",
"data": {
"rows": [
{
"agentId": "integratorNBTest04",
"brand": "VP",
"username": "VPSysDevTest001",
"currency": "THB",
"count": 96,
"actualBetAmt": "48",
"validBetAmt": "48",
"winAmt": "44.9",
"ggr": "3.1",
"jackpotWin": "0",
"jackpotContribute": "0",
"lastStatisticsTime": "2026-02-02T23:29:44.621Z"
},
{
"agentId": "integratorNBTest04",
"brand": "VP",
"username": "VPSysDevTest002",
"currency": "THB",
"count": 96,
"actualBetAmt": "4",
"validBetAmt": "4",
"winAmt": "4",
"ggr": "3",
"jackpotWin": "0",
"jackpotContribute": "0",
"lastStatisticsTime": "2026-02-02T23:29:44.621Z"
}
],
"totalRowsNumber": "19999"
},
"logUUID": "146c3bf2-ce4b-4154-a550-f3f37c1068fc"
}
FieldTypeDescription
dataobjectPlayer ReportList
data.rows[].agentIdstringAgent ID
data.rows[].brandstringBrand, fixed as 'VP'
data.rows[].usernamestringPlayer Account
data.rows[].currencystringCurrency
data.rows[].countnumberNumber of bets
data.rows[].actualBetAmtstringActual bet amount
data.rows[].validBetAmtstringValid bet amount
data.rows[].winAmtstringWin amount
data.rows[].ggrstringGames' netwin
data.rows[].jackpotWinstringJackpot win amount
data.rows[].jackpotContributestringJackpot contribution amount
data.rows[].lastStatisticsTimestringLast statistics time
data.totalRowsNumberNumberTotal number of records
logUUIDstringRequest tracking ID for troubleshooting and log queries

Error Response

When the request fails, the corresponding error code will be returned.

Error Codes

CodeDescriptionHandling Suggestion
11Parameters errorPlease ensure the request parameters are complete and correctly formatted
77Too many requestToo frequent requests, please try again later

Error Response Example

Parameter error

{
"code": 11,
"message": "Parameters error",
"logUUID": "24cdc3b9-9fe8-44de-8391-a96863e46954"
}

Too many requests

{
"code": 77,
"message": "Too many request, please try again later",
"logUUID": "asdsaggderv"
}

Important Notes

  1. Time range: To ensure data consistency, the query time range can only be between 90 days before the current time and 2 hours before the current time.
  2. Time Range: The time Range set between startDate and endDate cannot exceed 7 days.
  3. Call frequency: The call frequency for each agentId is a maximum of 10 times per second.
  4. Time segmentation: Queries can only be hourly. If not met, a parameter error will be returned (code: 11), EX: 04:00~04:01(x) vs 04:00~05:00(o)
  5. Returned records: A maximum of 5000 records are returned each time. If the total number of records exceeds 5000, batch queries with different offsets should be used in a loop.
  6. jackpotWin: Reserved Field, current value is fixed at 0