Skip to main content

Query Bet Logs (Paginated)

Query bet records within a specified time range using different offsets to retrieve different data. Each request returns a maximum of 5,000 records.

API Information

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

Request

Request Headers

POST /v2/betlogs 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:20:00Z",
"endDate": "2026-01-21T07:20:00Z",
"betSourceId": "0",
"offset": 0
}

Encrypted Request Body

{
"cipherText": "G0ZMDELeJwx+7JcIfIFOLJjkSzANPu6krGM2uw==..."
}
FieldTypeRequiredDescription
startDatestringYesStart time (ISO 8601 format)
endDatestringYesEnd time (ISO 8601 format)
betSourceIdstringNoTransaction source code
offsetnumberYesOffset value; use 0 for the first query, then increment by 5,000 for subsequent queries

Response

Success Response

{
"code": 0,
"message": "No error.",
"data": {
"rows": [
{
"betTime": "2025-12-09T09:05:10.151Z",
"txTime": "2025-12-09T09:05:10.151Z",
"currency": "THB",
"brand": "VP",
"gameCode": "VP_230001_1",
"username": "apitest011",
"roundId": "7652711103511700000",
"transferId": "7652711103511700000",
"betId": "7652711103511700000",
"betStatus": 2,
"actualBetAmt": "0.500000",
"validBetAmt": "0.500000",
"winAmt": "0.360000",
"jackpotWin": "0.000000",
"jackpotContribute": "0.000000",
"betSourceId": 1
},
{
"betTime": "2025-12-09T09:05:10.182Z",
"txTime": "2025-12-09T09:05:10.182Z",
"currency": "THB",
"brand": "VP",
"gameCode": "VP_230003_1",
"username": "apitest012",
"roundId": "7652711103511980000",
"transferId": "7652711103511980000",
"betId": "7652711103511980000",
"betStatus": 2,
"actualBetAmt": "1.000000",
"validBetAmt": "1.000000",
"winAmt": "0.000000",
"jackpotWin": "0.000000",
"jackpotContribute": "0.000000",
"betSourceId": 1
}
],
"totalRowsNumber": 29999
},
"logUUID": "88825f91-719d-495f-b7a0-58c442d8e985"
}

Response Field Description

FieldTypeDescription
data.rows[].betTimestringBet time
data.rows[].txTimestringSettlement time
data.rows[].currencystringCurrency
data.rows[].brandstringBrand, fixed as 'VP'
data.rows[].gameCodestringGame Code
data.rows[].usernamestringPlayer Account
data.rows[].roundIdstringGame Round ID, not unique (defaults to transferId)
data.rows[].transferIdstringTransaction ID, unique to VP (planned for removal)
data.rows[].betIdstringBet ID, unique to VP
data.rows[].betStatusnumberBet Status (2=Settled)
data.rows[].actualBetAmtstringActual Bet Amount
data.rows[].validBetAmtstringValid Bet Amount
data.rows[].winAmtstringWinning Amount
data.rows[].jackpotWinstringJackpot winning amount, current JP value=0, reserved field
data.rows[].jackpotContributestringJackpot contribution amount, current JP value=0, reserved field
data.rows[].betSourceIdnumberTransaction source code
data.totalRowsNumbernumberTotal number of records

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. The time range must be within 1 minute and within the past 40 days, and the settlement time must be at least 1 minute before the current time
77Too many requestRequest rate too high, please try again later

Error Response Example

Parameters 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. Call Rate: Limited to 15 requests per second per agentId
  2. Time Range: The maximum time range per query is 1 minute
  3. Time Restriction: startDate and endDate cannot exceed the current time, and endDate must be at least 1 minute before the current time
  4. Historical Range: Records can be queried within the past 40 days
  5. Records per Request: A maximum of 5,000 records are returned per request. If the total exceeds 5,000, use a loop with different offset values to fetch in batches