
Game
/Game/Holdem/GetHistory
{
"userId":"userid", // If null, search for all users.
"symbol":"USDT", // Cryptocurrencies name, ex) USDT
"startTime":"",// format(UTC): yyyy-MM-dd HH:mm:ss
"endTime":"", // format(UTC): yyyy-MM-dd HH:mm:ss
"page": 1
}
The range of startTime and endTime cannot be more than one quarter, for example, January-March or April-June, and will not provide data older than one year.
Response
historyList:Array(HoldemPlayerLog)
[HoldemPlayerLog]
- roomId:string
- gameIndex:int
- username:string
- symbol:string
- betMoney:decimal
- getMoney:decimal
- seat:int
- blind:string
- cards:Array(string)
- cardHandRank:string
- ranking:int
- rake:decimal
- wrtime:DateTime
/Game/Holdem/GetHistoryDetail
{
"roomId":"1234567",
"gameIndex":1234567
}
Response
gameDetail:HoldemGameLog
[HoldemGameLog]
- sequence:long
- symbol:string
- roomId:string
- gameIndex:int
- transactionKey:string
- gameResult:GameResult
- wrtime:DateTime
- playerLogs:Array(HoldemPlayerLog)
[GameResult]
- isShowdown:bool
- cards:Array(string)
[HoldemPlayerLog]
- roomId:string
- gameIndex:int
- username:string
- symbol:string
- betMoney:decimal
- getMoney:decimal
- seat:int
- blind:string
- cards:Array(string)
- cardHandRank:string
- ranking:int
- rake:decimal
- wrtime:DateTime
/Game/Slot/GetHistory
{
"userId":"userid" // If null, search for all users.
"startTime":""// format(UTC): yyyy-MM-dd HH:mm:ss
"endTime":"", // format(UTC): yyyy-MM-dd HH:mm:ss
"page": 1
}
The range of startTime and endTime cannot be more than one quarter, for example, January-March or April-June, and will not provide data older than one year.
Response
historyList:Array(SlotGameLog)
[SlotGameLog]
- userNickname:stirng
- slotName:string
- pointIn:decimal // Bet
- pointOut:decimal // Get
- beforePoint:decimal
- afterPoint:decimal
- wrtime:DateTime
/Game/Slot/GetInfo
{
"agentId":"1234567", // Not required
"includeChildInfo": true or false
}
Response
slotList:Array(SlotInfo)
childInfoList:Array(ChildInfo)
isOperator(bool) : 운영권 획득 여부
isOnOff(bool) : 슬롯 전체에 대한 오픈 여부
rakeRatio(decimal) : 부모가 설정한 슬롯 레이크
rakebackRatio(decimal) : 설정한 슬롯 레이크백
[SlotInfo]
- id:int // Slot game ID
- name:string // Slot game Name
- state:string // Slot game State, On or Off
[ChildInfo]
-agentId:int
-parentAgentId:int
-isOperator:bool
-isOnOff:bool
-rakeRatio:decimal
-rakebackRatio:decimal
/Game/Slot/SetState
{
"id":1,
"state":"On" // On or Off
}
At least 10 slots must remain On.
Response
id:int
name:string
state:string
/Game/Slot/SetStateAll
{
"state":"On" // On or Off
}
Sets the entire slot On/Off, regardless of the value set via SetState.
Response
list:Array(Info)
[Info]
- id:int // Slot game ID
- name:string // Slot game Name
- state:string // Slot game State, On or Off
/Game/Slot/SetOperator
{
"agentId":1234567,
"allowOperator": true or false
}
Super agents can only grant operations to their immediate subagents
Response
allowOperator:bool
/Game/Slot/SetRake
{
"agentId":1234567,
"rake": 0.03 // 0.03 = 30%
}
Cannot be set higher than the rate set by the parent agent. For subordinate agents whose rake value is less than the set rake value, set the rake value of the agent and its immediate subordinate agents to 0.
Response
before:decimal
after:decimal
/Game/Slot/SetRakeback
{
"agentId":1234567,
"rakeback": 0.03 // 0.03 = 30%
}
Response
before:decimal
after:decimal
/Game/Tournament/CreateRequest
{
"tournamentName":"agentTournament",
"isPrivate": 0,
"ticketOpen": true, // If true, users can directly purchase tickets within the game.
"commission": 0.2, // 0~0.2
"startTime":"2025-07-14 08:00:00",
"enterTime":"2025-07-14 08:10:00",
"ticketPrice": 10, // min 10
"ticketCost": 1,
"minPlayer": 6, // min 6
"maxPlayer": 100, // min 18
"reEntrycount": 5,
"timechipCount": 1,
"prizeData":[
{
"symbol":"USDT",
"guarantee": 50,
// "value":1.0,
"prizeRank":["1","2","3","4-5","6-10"],
"prizeRankValue":["0.5","0.25","0.15","0.07","0.03"],
}
],
}
When you request to create a tournament, the total ticket price and the total prize money will be deducted from the Agent’s USDT wallet. Please proceed with caution, as these amounts are non-refundable once the tournament is held.
You can adjust the re-entry time using enterTime.
The total prize money is automatically calculated by ticketPrice and maxPlayer, and the corresponding result value is paid as the prize money, but the prize money can be reduced by the commission.
prizeRank defines the range of ranks that will receive prizes, and prizeRankValue determines the percentage of the prize money distributed to each rank.
Response
{
}
Game/Tournament/CreateHistory
{
}
Response
{
"history": [
{
"seq": 9,
"agentId": 1019,
"name": "agentTournament",
"tournamentSeq": 0,
"ticketType": 0,
“commission": 0.150000000000000000,
"ticketPrice": 10.000000000000000000,
"ticketCost": 1,
"ticketOpen": true,
"minPlayer": 2,
"maxPlayer": 100,
"startTime": "2025-05-25T00:00:00",
"enterTime": "2025-05-25T01:00:00",
"reEntrycount": 5,
"timeChipCount": 1,
"prizeData": [
{
"symbol": "USDT",
"guarantee": 100.0,
"value": 10.0,
"prizeRank": [
"1",
"2",
"3",
"4-5",
"6-10"
],
"prizeRankValue": [
"0.5",
"0.25",
"0.15",
"0.07",
"0.03"
]
}
],
"isPrivate": 0,
"createCost": 1100.000000000000,
"wrtime": "2025-05-22T07:01:41",
"status": "Cancel"
},
And...
],
"status": 0,
"code": 0,
"message": "Success!"
}
Game/Tournament/CreateCancel
{
"seq": 9
}
Response
{
}
Game/Tournament/BuyTicket
{
"ticketType": 1001,
"tournamentSeq": 9,
"count": 1
}
For this API, you only need to provide one of the following values: ticketType or tournamentSeq.
Response
{
"ticketType": 1010,
"beforeTicketCount": 35,
"afterTicketCount": 50,
"remainTicket": 50,
"status": 0,
"code": 0,
"message": "Success!"
}
Game/Tournament/AddTicketToUser
Game/Tournament/SubtractTicketFromUser
{
"userId": "userid",
"ticketType": 1001,
"count": 1
}
Response
{
"ticketType": 1010,
"beforeAgentTicketCount": 29,
"afterAgentTicketCount": 28,
"beforeUserTicketCount": 16,
"afterUserTicketCount": 17,
"status": 0,
"code": 0,
"message": "Success!"
}
Game/Tournament/AddTicketToAgent
Game/Tournament/SubtractTicketFromAgent
{
"agentId": 1111,
"ticketType": 1001,
"count": 1
}
Response
{
"ticketType": 1010,
"beforeAgentTicketCount": 29,
"afterAgentTicketCount": 28,
"beforeTargetAgentTicketCount": 0,
"afterTargetAgentTicketCount": 1,
"status": 0,
"code": 0,
"message": "Success!"
}
Game/Tournament/GetActiveTournamentInfo
{
}
Response
{
"activeTournamentList": [
{
"tournamentSeq": 423359,
"round": 64,
"name": "agentTest",
"startTime": "2025-09-12T07:30:00",
"ticketType": 1064,
"ticketsRemaining": 28,
"ticketsSold": 2,
"totalTicketCount": 30,
"ticketOpen": true
},
],
"ticket": [
{
"type": "1083",
"count": 5
}
],
"status": 0,
"code": 0,
"message": "Success!"
}
Game/Tournament/GetTicketHistory
{
"ticketType": 1064
"page": 1 // 30 per page
}
Response
{
"list": [
{
"nickname": "test9",
"kind": "AgentAPI",
"type": 1083,
"value": -1,
"wrtime": "2025-07-11T08:30:42",
"transactionCode": 1752222640
},
{
"nickname": "test29",
"kind": "AgentAPI",
"type": 1083,
"value": 1,
"wrtime": "2025-07-11T08:30:41",
"transactionCode": 1752222640
},
{
"nickname": "test9",
"kind": "Buy",
"type": 1083,
"value": 5,
"wrtime": "2025-07-11T07:04:37",
"transactionCode": 0
},
{
"nickname": "test29",
"kind": "TournamentJoin",
"type": 1083,
"value": -1,
"wrtime": "2025-07-11T06:19:58",
"transactionCode": 0
}
],
"totalCount": 18,
"status": 0,
"code": 0,
"message": "Success!"
}
Game/Tournament/GetTournamentStats
{
"ticketType": 1234,
"tournamentSeq": 1234
}
Use one of the values: ticketType or tournamentSeq.
Response
{
"tournamentData": {
"tournamentSeq": 425661,
"ticketType": 1095,
"joinCount": 8,
"uniquePlayerCount": 6
},
"playerDataList": [
{
"ranking": 1,
"id": "dkimuser05",
"agentId": 1184,
"reBuyInCount": 0,
"prizeAmount": 33.200000000000000000
},
{
"ranking": 2,
"id": "dkimuser02",
"agentId": 1180,
"reBuyInCount": 2,
"prizeAmount": 13.280000000000000000
},
And...
],
"status": 0,
"code": 0,
"message": "Success!"
}
