Query RTP
Queries the merchant's RTP control rules with pagination. Results can be filtered by player ID prefix or game ID.
Request URL
POST {API_URL_ROOT}/RtpControl/Query
Request Parameters
| Field |
Required |
Type |
Description |
| sign |
YES |
string |
Signature computed using the Signature Algorithm. |
| timestamp |
YES |
int |
UTC timestamp in seconds since 1970-01-01, e.g. 1741837297. |
| Accept-Language |
YES |
string |
Response language code. See Language List, e.g. zh or en. |
| Content-Type |
YES |
string |
"application/json; charset=utf-8" |
Body
| Field |
Required |
Type |
Description |
| tenantId |
YES |
int |
Unique merchant ID assigned by the platform. |
| userId |
NO |
string |
Merchant player ID. When provided, it is used as a prefix filter. |
| gameId |
NO |
int |
Game ID. When provided, an exact match is applied. |
| pageNumber |
YES |
int |
Page number, starting from 1. |
| pageSize |
YES |
int |
Number of records per page. |
Example
{
"tenantId": 1,
"userId": "player",
"gameId": 6,
"pageNumber": 1,
"pageSize": 20
}
Response Parameters
| Field |
Type |
Description |
| totalCount |
int |
Total number of matching records. |
| count |
int |
Number of records on the current page. |
| pageNumber |
int |
Current page number. |
| pageSize |
int |
Number of records per page. |
| data |
array |
RTP control rules on the current page. |
RTP Control Rule
| Field |
Type |
Description |
| ruleId |
string |
RTP control rule ID. Used to cancel the control. |
| tenantId |
int |
Merchant ID. |
| userId |
string |
Player ID. |
| controlType |
int |
Control type. See the table below. |
| targetType |
int |
Control target type. See the table below. |
| targetTypeName |
string |
Control target type name. |
| targetId |
int |
Control target ID. For a game target, this is the game ID. |
| targetName |
string |
Control target name. |
| changeRtp |
int |
Configured RTP value. |
| currentValue |
double |
Current accumulated value for the release condition. Its unit depends on relievedType. |
| relievedType |
int |
Release condition type. See the table below. |
| relievedThreshold |
double |
Release threshold. Its unit depends on relievedType. |
| isCompleted |
boolean |
Whether the rule is complete: true for complete, false for active. |
| createdAt |
string |
Rule creation time in yyyy-MM-dd HH:mm:ss format. |
Example
{
"isSuccess": true,
"code": 0,
"data": {
"totalCount": 1,
"count": 1,
"pageNumber": 1,
"pageSize": 20,
"data": [
{
"ruleId": "6897fcb02c0b34545b95a001",
"tenantId": 1,
"userId": "player001",
"controlType": 1,
"targetType": 2,
"targetTypeName": "Game",
"targetId": 6,
"targetName": "Example Game",
"changeRtp": 50,
"currentValue": 3,
"relievedType": 1,
"relievedThreshold": 10,
"isCompleted": false,
"createdAt": "2026-08-10 10:30:00"
}
]
}
}
controlType Values
| Value |
Description |
| 1 |
Losing |
| 2 |
Winning |
targetType Values
| Value |
Description |
| 1 |
Game brand |
| 2 |
Game |
relievedType Values
| Value |
Description |
Unit for currentValue and relievedThreshold |
| 1 |
Number of rounds |
Round |
| 2 |
Real-time historical RTP |
Integer RTP value, e.g. 50 means 50% |
| 3 |
Win/loss amount |
Amount |
| 4 |
Specified duration |
Minute |