1. Please confirm the game type and wallet type you want to integrate, fill in the "Intergration Terms" form then send it back via Skype group. 2. Before you integrate API interface of seamless wallet, we will provide you api/backoffice domain, including back-office account and password of staging environment. 3. Please provide the following information and notify us for API verification, once you complete the 『Seamless Wallet Transaction API Implementation』 ※When you have implemented all API interface, please inform us to test the API first. After the test is passed, then you can test our games by yourself, so as to avoid errors in the process.
agent account:
Wurl (wallet endpoint):
Wtoken:
test player account:
4. When the API verification is passed, the next step will be verified by our QA team (2-5 working days). After passing, we will provide a production environment application form. ※After receiving our notification that the API test is completed, you can start the game test via "Player Get Game Link" - please refer to 『GameBoy documentation』 5. During the game, our system will call the wallet API. ( Please refer to the flowchart ) ※The Wurl and Wtoken of each agent can be set via our back-office, and our system will call the wallet API with the back-office settings 6. When the player leave our game, please use GameBoy - Player Logout. 7. When you receive the production environment information (API/Backoffice URL, backoffice account) and also deploy on your side, then you can go online. 8. If your account is abnormal due to "idempotency" of the Restful rule, we are not responsible for your accounting abnormalities.
Flow-Chart
Get Game Link
CheckPlayer & Balance
Slot/Arcade
Bet & Endround
Table/Fish/Arcade/Live
Rollout & Rollin To transfer the player 『a part of』 balance to our game, and transfer it back to the player's wallet after settlement
Table/Fish/Arcade/Live
Takeall & Rollin To transfer the player 『all』 balance to our game, and transfer it back to the player's wallet after settlement
Sports/Lotto
Batch Bets & Wins & Refunds & Cancel
a. The sameBatch bets mtcodecan repeat Refunds/Cancel b. If this Bet Mtcode already be Cancel, it can send Wins to settle
Resend Mechanism Flow
Resend the settlement per hour
When Game Server occurs timeout on first settlement, resulting in Game Server does not receive the response (process a), then will resend same mtcode until Game Server receive correct response then settle it (process b)
When the wallet is successful, but Game server does not recieve the response (proccess b - timeout), then Game Server will resend the settlement again. If the wallet is successful, please reutrn the balance of the first success, then Game Server will settle this order (process c)
Refund Mechanism Flow
Resend the refund per hour
Seamless Wallet Idempotency Transaction API Implementation
API Implementation Key Points
1.We call your API with your "wtoken" in header to verify that this request is called from our side. You can edit wtoken/wurl via our backoffice. 2.For currency parameter of all API responses, please return it according to the currency used by the agent. e.g. Agent's currency use CNY, then currency parameter should also be CNY. 3.mtcode and roundid is a self-generated unique code (should not include special characters), please confirm it's uniqueness. 4. Date Time format is RFC3339, e.g. 2002-10-02T10:00:00.123456789-04:00(Please support at least until the 9th digit milliseconds) 5. When API is called, please make sure to record the amount before and after transaction(Amount must support 12+4 decimal points) eg:Max value :999999999999.9999 6. Content-Type of all API responses should be application/json 7. When the API call method is GET, the use of variables behind the URL means the same as bringing in the player’s name directly. Example: if you want to get the player’s “ABC” balance: /transaction/balance/:account and /transaction/balance/ABC is same way. 8. If your account is abnormal due to "idempotency" of the Restful rule, we are not responsible for your accounting abnormalities.
Idempotency-Description
If the request is the same as the previous mtcode, please return the balance of the last successful mtcode, and there is no need to increase or decrease the player's balance
Idempotency Flow Chart
A timeout occurs when Game Server sends mtcode 1 (process a), resulting in Game Server not receiving a response from balance 1, Game Server will resend mtcode 1, if the wallet DB is successful then reuturn balance 1 (process c)
When mtcode 1 occurs timeout, the wallet receives the request of mtcode 2 and the balance changes to balance 2 (process b), then receives the request of mtcode 1 again. If the wallet DB is successful, it will return balance 1 (process c)
Wallet API calculation report profit and loss formula:
It is suggested to use Gameboy - "Order Inquiry" to obtain settled rounds by our server for calculation
Probability games bet api (Win settlement use Endround api)
Gametype : 【Slot】 / 【Arcade】
Request
URL: /transaction/game/bet
Method: POST
Headers : Content-Type:application/x-www-form-urlencoded Wtoken: provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
eventTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 ※35 chars at most
gamehall
string
Required
game provider ※36 chars at most
gamecode
string
Required
code for each game ※36 chars at most
roundid
string
Required
game round ID(bet/endround will use same roundid) ※50 chars at most ※roundid is a unique value
amount
number
Required
the amount actually deducted from the player's wallet ※16 digits with 4 decimal places at most ※amount must not be negative, if so, please return error code "1003"
mtcode
string
Required
mixed code ※mtcode is unique ※70 chars at most
session
string
Optional
SessionID ※You can define it by yourself,please refer to Seamless Wallet GameBoy document Player Get Game Lobby Link Player Get Game Link
The transaction has not been completed (mtcode does not exist in DB)
10
100
90
Completed transaction (same mtcode already exists in DB)
10
100
100
EndRound
The win settlement for probability games. End game round and integrate all win events together in this round If this round is lost,endround will send amount = 0
Gametype : 【Slot】 / 【Arcade】
Request
URL: /transaction/game/endround
Method: POST
Headers : Content-Type:application/x-www-form-urlencoded Wtoken: provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
gamehall
string
Required
game provider ※36 chars at most
gamecode
string
Required
code for each game ※36 chars at most
roundid
string
Required
game round ID(bet/endround will use same roundid) ※50 chars at most ※roundid is a unique value
data
text array
Required
eventlist is wrapped as JSON not limited, but each win has 158 chars at most mtcode : mixed code ※mtcode is a unique value amount : the amount actually given to the player's wallet ※amount cannot be negative eventtime : time when event is created, format RFC3339 validbet : validbet amount ※the validbet bet of slot/arcad/fish is 0, please use bet value as validbet
createTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 . This field equal to order createtime. ※35 chars at most
freegame
number
Optional
free game frequency
bonus
number
Optional
bonus game frequency
luckydraw
number
Optional
luckydraw game frequency
jackpot
number
Optional
jackpot amount
jackpotcontribution
number array
Optional
contribution to jackpot
freeticket
bool
Optional
whether it is a free ticket payoff. true=yes, false=no
Sample Request :
※Endround interface can send multiple win and mtcode
Headers : Content-Type:application/x-www-form-urlencoded Wtoken: provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
eventTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 ※35 chars at most
gamehall
string
Required
game provider ※36 chars at most
gamecode
string
Required
code for each game ※36 chars at most
roundid
string
Required
game round ID(the same roundid is used for [rollout/takeall] and rollin in a round) ※50 chars at most ※roundid is a unique value
validbet
number
Required
The bets which are valid ※the validbet of slot/arcade/fish is 0, please use "bet" value as valibet ※for table or live games ※16 digits with 4 decimal places at most
bet
number
Required
bet amount ※Because of table/live game, 0 bet amount is plausible ※16 digits with 4 decimal places at most
win
number
Required
win amount ※Because of table/live game, negative win amount must be accepted ※16 digits with 4 decimal places at most
roomfee
float64
Optional
create room fee ※Because of table game ※16 digits with 4 decimal places at most
amount
number
Required
the amount actually given to the player's wallet ※amount must not be negative, if so, please return error code "1003" ※16 digits with 4 decimal places at most
mtcode
string
Required
mixed code ※mtcode is unique ※70 chars at most
createTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 . This field equal to order createtime. ※35 chars at most
rake
number
Required
rake amount ※This is for table games only ※16 digits with 4 decimal places at most
gametype
string
Required
[ fish / table / arcade / live ] ※36 chars at most
The transaction has not been completed (mtcode does not exist in DB)
10
100
110
Completed transaction (same mtcode already exists in DB)
10
100
100
Debit
To decrease amount for "settled" orders. For example, game logic bugs to be adjusted win ammount
Request
URL: /transaction/game/debit
Method: POST
Headers : Content-Type:application/x-www-form-urlencoded Wtoken: provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
eventTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 ※35 chars at most
gamehall
string
Required
game provider ※36 chars at most
gamecode
string
Required
code for each game ※36 chars at most
roundid
string
Required
game round ID ※50 chars at most ※roundid is a unique value
amount
number
Required
the amount actually deducted from the player's wallet ※amount must not be negative, if so, please return error code "1003" ※16 digits with 4 decimal places at most
The transaction has not been completed (mtcode does not exist in DB)
10
100
90
Completed transaction (same mtcode already exists in DB)
10
100
100
Credit
To increase ammount for "settled" orders. For example, game logic bugs to be adjusted win ammount
Request
URL: /transaction/game/credit
Method: POST
Headers : Content-Type:application/x-www-form-urlencoded Wtoken: provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
eventTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 ※35 chars at most
gamehall
string
Required
game provider ※36 chars at most
gamecode
string
Required
code for each game ※36 chars at most
roundid
string
Required
game round ID ※50 chars at most ※roundid is a unique value
amount
number
Required
the amount actually given to the player's wallet ※amount must not be negative, if so, please return error code "1003" ※16 digits with 4 decimal places at most
The transaction has not been completed (mtcode does not exist in DB)
10
100
110
Completed transaction (same mtcode already exists in DB)
10
100
100
Payoff
When your player participate in our promotion activities and win a prize, we will call this API to deliver payout to your player.
Request
URL: /transaction/user/payoff
Method: POST
Headers : Content-Type:application/x-www-form-urlencoded Wtoken: provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
eventTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 ※35 chars at most
amount
number
Required
amount actually given to the player's wallet ※amount must not be negative, if so, please return error code "1003" ※16 digits with 4 decimal places at most
※For a single player, the round and mtcode can be different in the batch. Up to 200 transactions per batch ※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL: /transaction/game/bets
Method: POST
Headers : Content-Type:application/json Wtoken:provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
session
string
Not Required
Verify Token
gamehall
string
Required
game provider ※36 chars at most
gamecode
string
Required
code for each game ※36 chars at most
data
text array
Required
eventlist is wrapped as JSON ※not limited, but each winning has 158 chars at most mtcode : mixed code ※mtcode is a unique value amount : the amount actually deducted from the player's wallet eventtime : time when event is created, format RFC3339 roundid:round ID ※roundid is a unique value
createTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 . This field equal to order createtime. ※35 chars at most
The transaction has not been completed (mtcode does not exist in DB)
10
100
90
Completed transaction (same mtcode already exists in DB)
10
100
100
Refunds (Only for Sports and Lotto)
refunds bets at one times.
※Batch refunds are for a single player. Up to 200 transactions per batch ※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL: /transaction/game/refunds
Method: POST
Headers : Content-Type:application/json Wtoken:provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
mtcode
string array
Required
mixed code ※please use mtcode that you would like to refund ※70 chars at most ※mtcode is a unique value
The transaction has not been completed (mtcode does not exist in DB)
10
100
110
Completed transaction (same mtcode already exists in DB)
10
100
100
Cancel (Only for Sports and Lotto)
cancel refund, ebillable settle again
※The batch is cancelled for a single player. Up to 200 transactions per batch ※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL: /transaction/game/cancel
Method: POST
Headers : Content-Type:application/json Wtoken:provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
mtcode
string array
Required
mixed code ※please use mtcode that you would like to cancel ※70 chars at most ※mtcode is a unique value
The win settlement for Multiple players,if this round is lost, wins send amount = 0
※Multiple batches for multiple players, each batch (ucode) can be up to 200 transactions ※There are "partial" success or failure scenarios. Please refer to the response example
Request
URL: /transaction/game/wins
Method: POST
Headers : Content-Type:application/json Wtoken:provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account
event
text array
Required
eventlist is wrapped as JSON not limited, but each winning has 158 chars at most mtcode : mixed code ※mtcode is a unique value amount : the amount actually given to the player's wallet roundid:round ID ※roundid is a unique value eventtime : time when event is created, format RFC3339 gamecode:code for each game gamehall:game provider validbet : The bets which are valid
eventtime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00
ucode
string
Required
transaction code, when send back win result need to contain it. ※36 chars at most
The transaction has not been completed (mtcode does not exist in DB)
10
100
110
Completed transaction (same mtcode already exists in DB)
10
100
100
Amends(Only for Sports and Lotto)
Modify the settlement for Multiple players
※Multiple batches for multiple people, each batch (ucode) can be up to 200 transactions ※There are "partial" success or failure scenarios. Please refer to the response example
Request
URL: /transaction/game/amends
Method: POST
Headers : Content-Type:application/json Wtoken:provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※36 chars at most
event
text array
Required
eventlist is wrapped as JSON mtcode : mixed code ※mtcode is a unique value amount : amount action:credit ,debit roundid:round ID ※roundid is a unique value eventtime : time when event is created, format RFC3339 gamecode:code for each game validbet : The bets which are valid ※not limited, but each winning has 158 chars at most
eventtime
string
Required
time when event is created
amount
number
Required
the amount actually “deducted” or “increased” from the player’s wallet ※amount must not be negative, if so, please return error code “1003” ※16 digits with 4 decimal places at most
action
string
Required
the action for this modify. action:credit ,debit ※36 chars at most
ucode
string
Required
transaction code, when send back win result need to contain it. ※36 chars at most
The transaction has not been completed (mtcode does not exist in DB)
10
100
90
Completed transaction (same mtcode already exists in DB)
10
100
100
Amend (Only for Sports and Lotto)
Modify the settlement for Single player
※For a single player, the round and mtcode can be different in the batch. Up to 200 transactions per batch ※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL: /transaction/game/amend
Method: POST
Headers : Content-Type:application/json Wtoken:provided from your side for verification use
Request Parameter
Parameter
Type
Require
Description
account
string
Required
player account ※70 chars at most
gmaehall
string
Required
game provider (short form) ※36 chars at most
gamecode
string
Required
code for each game ※36 chars at most
action
string
Required
the action for this modify. action:credit ,debit ※36 chars at most
amount
number
Required
the amount actually "deducted" or "increased" from the player's wallet ※amount must not be negative, if so, please return error code “1003” ※16 digits with 4 decimal places at most
createTime
string
Required
time when event is created, format RFC3339 e.g. 2017-01-19T22:56:30-04:00 . This field equal to order createtime. ※35 chars at most
data
text array
Required
eventlist is wrapped as JSON mtcode : mixed code ※mtcode is a unique value amount : amount action:credit ,debit roundid:round ID ※roundid is a unique value eventtime : time when event is created, format RFC3339 validbet : The bets which are valid ※not limited, but each winning has 158 chars at most
The transaction has not been completed (mtcode does not exist in DB)
10
100
90
Completed transaction (same mtcode already exists in DB)
10
100
100
Error Code
code
message
0
Success
1002
Game action error. GameAction API (/transaction/game/:action) only allow 8 actions, i.e. ["bet","endround","rollout","takeall","rollin","debit","credit","refund"], otherwise, this error code will be returned
1. Every time you use API, the HTTP status code will always be 200, if not, it means the Gameboy service is disconnected, or URI is wrong. 2. Date Time format is RFC3339, e.g. 2002-10-02T10:00:00.123456789-04:00(Please support at least until the 9th digit milliseconds) 3. Timezone is UTC-4※ Important. 4.mtcode and roundid is a self-generated unique code (should not include special characters), it is suggested to use UUID. 5. Report type API including starttime and endtime parameters, the time will be included in the query range. e.g. i. Query for one day starttime should be 2017-05-15T00:00:00-04:00 endtime should be 2017-05-16T00:00:00-04:00 ※ If the groupby is hour, set the minute or second of starttime to 0 to ensure data integrity ii. Query for spanning more than one day. starttime should be 2017-05-14T01:00:00-04:00 endtime should be 2017-05-15T00:59:59.999-04:00 then the data will span between 2 days.
Except for the above Report type API s, the rest of the APIs can be inquired on every hour sharp or every minute sharp, i.e 9:00, 10:30, etc, and they also support check on a daily and cross-day basis ※ Please note that query of some API is restricted to have time span of at most 2 days, e.g.transaction history 6. The staging Environment don't need IP whitelist, while The production environment needs IP whitelist. 7.Profit/Loss calculation formula
Player Profit / Loss (From player perspective): Table / Live games:win-rake-roomfee Slot/Arcade/Fish/Lotto games:win-bet
Agent Profit / Loss (From agnet perspective): Table / Live games:rake-win+roomfee Slot/Arcade/Fish/Lotto games:bet-win
8. When the API call method is GET, the use of variables behind the URL means the same as bringing in the player's name directly.
Example: if you want to get the player's "ABC" balance: /gameboy/player/balance/:account and /gameboy/player/balance/ABC is same way.
9. The test environment data is saved for D+3 days, and the production environment data is saved for D+3 months, (D: the day when the data was retrieved)
Inquiry the player’s deposit and withdrawal records by time. The search interval cannot exceed 24 hours.
URL: /gameboy/order/view
Method: GET
Request
Query Params
Parameter
Type
Require
Description
starttime
datetime
Required
start time,format RFC3339 ※please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
endtime
datetime
Required
end time,format RFC3339 ※please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
page
int
Required
number of page requested
account
string
Optional
player account, PS: if account is not provided, then all orders will be shown ※Account length is restricted to 36 chars at most
pagesize
int
Optional
number of order shown on each page(default 500,maximum 20000)
gametype
string
Optional
[slot|arcade|fish|table] slot = slot games only arcade = arcade games only table = table games only fish = fish games only live = include live (not included table) ※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
Parameter
Type
Description
totalsize
int
total count
gamehall
string
game provider (short form)
gamecode
string
code for each game
gametype
string
game type
gameplat
string
platform used for each game
account
string
player account
round
string
round id ※round is a unique value
bet
float64
bet amount
validbet
float64
valid bet amount ※for table or live games
win
float64
win amount (includes jackpot amount and amount win from PC)
jackpot
float64
jackpot amount
jackpotcontribution
array
contribution to jackpot ※sorted in ascending order ( Mini / Minor / Major / Grand )
jackpottype
string
jackpot type ※if there is no jackpot, it is an empty string
balance
float64
balance
status
string
order status
bettime
datetime
bet time,format RFC3339
endroundtime
datetime
game end round time,format RFC3339
createtime
datetime
time when this order was created,format RFC3339 ※system settlement time, order settlement time and report settlement time are also regarded as createtime
detail
array
miscellaneous info of game bonus feature ※ For slot games, may have "freegame" or "bonus" game or "luckydraw" game ※ For fishing games, may have "item" or "reward" ※ For table and live games, may have empty array
rake
float64
rake ※This is for table games only
singlerowbet
bool
[true|false] whether it is formed by respin feature or not
ticketid
string
free ticket id
tickettype
string
free ticket type ( 1 = free game : get a free game ) ( 2 = free spin : get a free spin )
giventype
string
free ticket given type ( 1 = given by pormotion ) ( 101 = given by agent ) ( 111 = given by treasure chest ) ( 112 = purchase from mall )
ticketbets
float64
free ticket bet amount
gamerole
string
"banker" or "player" ※This is for table games only, for non-table games, it is an empty string
bankertype
string
whether there are other real players in the same table game [pc|human] pc = AI players only human = one or more real players ※This is for table games only, for non-table games, it is an empty string ※If the game doesn't support the player is a banker, only the player and the bank pc on the table play. Banktype must be PC
game result Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty array
tabletype
string
table type (1=Baccarat,4=Dragon-Tiger ) Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty string
round number Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty string
livebetdetail
string
livebetdetail e.g. [{"bettype":"2","win":440,"winlose":220,"bet":220,"validbet":220,"odds":1,"matchresult":"2"}] Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty string
currency
string
currency
cardwin
float64
Payout multiplier amount
donate
float64
donate amount ※This is for live dealer games only, for non-live dealer games, it is 0.
isdonate
bool
donate judgment※This is for live dealer games only, for non-live dealer games, it is an false string.
※PS.gamecode , gamehall can be obtained from Game List
Response
Parameter
Type
Description
gamehall
string
game provider (short form)
gamecode
string
code for each game
gametype
string
game type
gameplat
string
platform used for each game
account
string
player account
round
string
round id ※round is a unique value
bet
float64
bet amount
validbet
float64
valid bet amount ※for table and live games
win
float64
win amount (includes jackpot amount and amount win from PC)
jackpot
float64
jackpot amount
jackpotcontribution
array
contribution to jackpot ※sorted in ascending order ( Mini / Minor / Major / Grand )
jackpottype
string
jackpot type ※if there is no jackpot, it is an empty string
balance
float64
balance
status
string
order status
bettime
datetime
bet time,format RFC3339
endroundtime
datetime
game end round time,format RFC3339
createtime
datetime
time when this order was created,format RFC3339 ※system settlement time, order settlement time and report settlement time are also regarded as createtime
rake
float64
rake ※This is for table games only
roomfee
float64
roomfee ※This is for table games only
gamerole
string
"banker" or "player" ※This is for table games only, for non-table games, it is an empty string
singlerowbet
bool
[true|false] whether it is formed by respin feature or not
bankertype
string
whether there are other real players in the same table game [pc|human] pc = AI players only human = one or more real players ※This is for table games only, for non-table games, it is an empty string ※If the game doesn't support the player is a banker, only the player and the bank pc on the table play. Banktype must be PC
game result Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty array
tabletype
string
table type (1=Baccarat,4=Dragon-Tiger ) Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty string
round number Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty string
ticketid
string
free ticket id
tickettype
string
free ticket type ( 1 = free game : get a free game ) ( 2 = free spin : get a free spin )
giventype
string
free ticket given type ( 1 = given by pormotion ) ( 101 = given by agent ) ( 111 = given by treasure chest ) ( 112 = purchase from mall )
livebetdetail
string
livebetdetail e.g. [{"bettype":"2","win":440,"winlose":220,"bet":220,"validbet":220,"odds":1,"matchresult":"2"}] Order description of live dealer ※This is for live dealer games only, for non-live dealer games, it is an empty string
ticketbets
float64
free ticket bet amount
currency
string
currency
cardwin
float64
Payout multiplier amount
donate
float64
donate amount ※This is for live dealer games only, for non-live dealer games, it is an 0 string
isdonate
bool
donate judgment ※This is for live dealer games only, for non-live dealer games, it is an false string
start time,format RFC3339 ※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
endtime
string
Required
end time,format RFC3339 ※ please use UTC-4 timezone, e.g.2017-05-01T23:59:59.999-04:00
groupby
string
Required
parameter used day|hour
page
int
Required
number of page requested
pagesize
int
Optional
number of order shown on each page(default 500,maximum 2000)
gametype
string
Optional
[slot|arcade|fish|table] slot = slot games only arcade = arcade games only table = table games only fish = fish game only ※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
Parameter
Type
Description
totalsize
int
total count
parentid
string
agent ID
account
string
player account
gamecode
string
code for each game
gamehall
string
game provider (short form)
rounds
int
total count of rounds player played
bets
float64
total bet amount
validbets
float64
total valid bet amount ※for table games
wins
float64
total win amount (includes total jackpot amount and total amount win from PC)
start time,format RFC3339 ※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
endtime
datetime
Required
end time,format RFC3339 ※ please use UTC-4 timezone, e.g.2017-05-01T23:59:59.999-04:00
groupby
string
Required
parameter used day|hour
page
int
Required
number of page requested
pagesize
int
Optional
number of order shown on each page(default 500,maximum 2000)
gametype
string
Optional
[slot|arcade|fish|table] slot = slot games only arcade = arcade games only table = table games only fish = fish games only ※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
Parameter
Type
Description
totalsize
int
total count
bets
float64
total bet amount
validbets
float64
total valid bet amount ※for table games
wins
float64
total win amount (includes total jackpot amount and total amount win from PC)
jackpots
float64
total jackpot amount
currency
string
currency used
totalsignup
int
total number of players sign-up within the time range
totalplayers
int
total number of players play games within the time range
totallogin
int
total number of players login within the time range
totalround
int
total number of rounds player played within the time range
Inquiry the player’s deposit and withdrawal records by time. The search interval cannot exceed 24 hours
URL: /gameboy/order/summary
Method: GET
Request
Parameter
Type
Require
Description
account
string
Required
player account ※Account length is restricted to 36 chars at most
starttime
datetime
Required
start time,format RFC3339 ※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
endtime
datetime
Required
end time,format RFC3339 ※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
gametype
string
Optional
reported game type [ slot | table | live ] slot = includes slot 、arcade and fish games table = include table (not included live) live:include live (not included table) ※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
Parameter
Type
Description
account
string
player account
gamecode
string
code for each game
gamehall
string
game provider (short form)
bets
float64
bet amount for specific game
validbets
float64
valid bet amount for specific game ※for table or live games
wins
float64
win amount for specific game (includes jackpot amount and amount win from PC)
jackpots
float64
jackpot amount for specific game
rake
float64
rake amount for specific game ※This is for table games only
roomfee
float64
roomfee
income
float64
income/loss for specific game
totalbets
float64
total bet amount
totalvalidbets
float64
total valid bet amount ※for table or live games
totalwins
float64
total win amount (includes total jackpot amount and total amount win from PC)
Whether to log out all agent players. ※General agent is optional. The default is false, if it is true, all players will be logged out. ※Sub-agent should not fill in this parameter (error code 38 will be returned)
account
[]string
X
Designate a agent account. ※General agent is optional. If isall is true, it is invalid, because the logged-out player already includes all sub-agent players under the general agent. ※Sub-agent should not fill in this parameter (error code 38 will be returned)
Only for sport/lotto unsettled round that you can call the API to get game round detail link. For other game types, you need to call the API to get the game round detail link after the round is settled.
Method: GET
Request
Parameter
Type
Require
Description
roundid
string
Required
game round ID ※roundid is a unique value
account
string
Required
player account ※Account length is restricted to 36 chars at most
gamecode
string
Optional
code for each game
gamehall
string
Optional
game provider
gametype
string
Optional
gametype ※ Sport must be fill in 'lotto', other types do not have to fill in
lang
string
Optional
language code used for each game available option: “zh-cn” - Simplified Chinese, “en” - English
[slot|arcade|fish|table|live] slot = slot games only arcade = arcade games only table = table games only fish = fish game only ※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
{"data":{"data":[{"indexid":"CF16668512822CVIXDH3W:xxx","roundid":"CF16668512822CVIXDH3W","gametype":"sport","gamecode":"...","gamehall":"xxx","currency":"CNY","account":"test001","genre":"soccer","betamount":1000,"beteventtime":"2022-10-27T02:14:42-04:00","wagers":[{"wagerId":128911,"wagerTypeGroupId":1,"wagerCode":"CF16668512822CVIXDH3W","betStatus":0,"betCount":1,"subsetItemCount":1,"wagerItemCount":1,"wagerTypeId":1,"buId":2,"dateMatch":"2022-11-01T17:45:00Z","accountId":4033,"sourceTypeId":0,"unitStake":1000,"totalStake":1000,"oddsTypeId":1,"odds":2.13,"remark":"","lastTransactionId":665769,"potentialWinning":1130,"pledgeStake":0,"wagerItems":[{"wagerItemId":211535,"matchId":254300,"marketTypeId":1,"marketLineGroupNameId":0,"marketTypeGroupId":0,"oddsTypeId":1,"marketLineId":3642864,"marketLineRemark":0,"selectionId":9726662,"selectionTypeId":2,"extendSelectionTypeId":0,"sportId":1,"leagueId":10629,"periodId":1,"betTypeId":1,"headValue":0.75,"displayOdds":2.13,"isInplay":0,"dateMatch":"2022-11-01T17:45:00Z","scoreHome":0,"scoreAway":0,"matchDangerId":0,"matchName":"Bayer Leverkusen vs Club Brugge","leagueName":"UEFA Champions League","selectionName":"Away","marketTypeName":"Football Fulltime AH","periodName":"Full Time","betStatus":0,"selectedOutcomeId":0,"away":"布鲁日","awayId":6337,"home":"拜耳勒沃库森","homeId":8231,"lineId":1}]}]}],"bets":1000,"totalsize":1},"status":{"code":"0","message":"Success","datetime":"2022-10-27T02:13:25-04:00","traceCode":"1elcv7VuGN"}}
Sport and Lotto finished orders By CreateTime
Order will be on daily basis
URL: /gameboy/order/view/lotto
Method: GET
Request
Parameter
Parameter type
Require
Description
starttime
datetime
Required
start time,format RFC3339 e.g.2017-05-01T00:00:00-04:00 ※ Please use UTC-4 timezone
endtime
datetime
Required
end time,format RFC3339 e.g.2017-05-01T23:59:59-04:00 ※ Please use UTC-4 timezone
account
string
Optional
player account, PS: if account is not provided, then all orders will be shown ※Account length is restricted to 36 chars at most
The absolute value of winning or losing the actual valid bet ※ For tie refund and cancel, validbet is invalid. - Tie - Cancel
wins
float64
win amount
bettime
datetime
bet time,format RFC3339
createtime
datetime
time when this order was created,format RFC3339 ※ match date time, system settlement time, order settlement time and report settlement time are also regarded as createtime
finaltime
datetime
time when this order was created,format RFC3339 ※order settlement, Amends the last update time
wagers
wagers[]
wagers
data.data.wagers[]
Parameter
Parameter type
Description
wagerId
int
wager id
wagerTypeGroupId
int
wager type group id
wagerCode
string
wager code
betStatus
int
bet status
betCount
int
There are several possibilities for permutations
subsetItemCount
int
sub set item count
wagerItemCount
int
wager item count
wagerTypeId
int
wager type id
buId
int
buId
dateMatch
datetime
match date
accountId
int
account id
sourceTypeId
int
platform used id
unitStake
float64
unitStake
totalStake
float64
total stake
oddsTypeId
int
odds type
odds
float64
odds
remark
string
remark
lastTransactionId
int
last transaction id
potentialWinning
float64
maximum win amount
pledgeStake
float64
pledgeStake
wagerItems
wagerItems[]
wager items
data.data.wagers.wagerItems[]
Parameter
Type
Description
wagerItemId
int
wager item id
matchId
int
match id
marketTypeId
int
market play type id
marketLineGroupNameId
int
market line group name id
marketTypeGroupId
int
market play type group id
oddsTypeId
int
handicap id
marketLineId
int
market line id
marketLineRemark
int
market line remark
selectionId
int
selectionId
selectionTypeId
int
selection type id
extendSelectionTypeId
int
attributes that expand from one dimension to multiple dimensions
sportId
int
sport id
leagueId
int
league id
periodId
int
time interval (e.g. first half in basketball, seventh inning in baseball)
betTypeId
int
bet type
headValue
float64
head value, used to judge the score of this option
displayOdds
float64
displayed odds,Will be affected by the market type (OddsTypeId)
isInplay
int
whether the match is in-play when placing bets
dateMatch
datetime
match date
scoreHome
int
home team score
scoreAway
int
away team score
matchDangerId
int
match danger id
matchName
string
GameName, If the champion, total score, correct score can be displayed directly
leagueName
string
league name
selectionName
string
selection name
marketTypeName
string
market type name
periodName
string
time interval name
betStatus
int
bet status 0:unsettled 4:settled 6:refund the bet
selectedOutcomeId
int
match result id 0:unsettle 1:win 2:win half 3:lose 4:lose half 5:tie refund
total validbets ※ Following action will make validbet be invalid. - Tie - Cancel
wins
float64
total win amount
bettime
datetime
bet time,format RFC3339
createtime
datetime
time when this order was created,format RFC3339 ※ match date time, system settlement time, order settlement time and report settlement time are also regarded as createtime
finaltime
datetime
time when this order was created,format RFC3339 ※order settlement, Amends the last update time
wagers
wagers[]
wagers
data.data.wagers[]
Parameter
Type
Description
wagerId
int
wager id
wagerTypeGroupId
int
wager type group id
wagerCode
string
wager code
betStatus
int
bet status
betCount
int
There are several possibilities for permutations
subsetItemCount
int
sub set item count
wagerItemCount
int
wager item count
wagerTypeId
int
wager type id
buId
int
buId
dateMatch
datetime
match date
accountId
int
account id
sourceTypeId
int
platform used id
unitStake
float64
unitStake
totalStake
float64
total stake
oddsTypeId
int
odds type
odds
float64
odds
remark
string
remark
lastTransactionId
int
last transaction id
potentialWinning
float64
maximum win amount
pledgeStake
float64
pledgeStake
wagerItems
wagerItems[]
wager items
data.data.wagers.wagerItems[]
Parameter
Type
Description
wagerItemId
int
wager item id
matchId
int
match id
marketTypeId
int
market play type id
marketLineGroupNameId
int
market line group name id
marketTypeGroupId
int
market play type group id
oddsTypeId
int
handicap id
marketLineId
int
market line id
marketLineRemark
int
market line remark
selectionId
int
selectionId
selectionTypeId
int
selection type id
extendSelectionTypeId
int
attributes that expand from one dimension to multiple dimensions
sportId
int
sport id
leagueId
int
league id
periodId
int
time interval (e.g. first half in basketball, seventh inning in baseball)
betTypeId
int
bet type
headValue
float64
head value, used to judge the score of this option
displayOdds
float64
displayed odds,Will be affected by the market type (OddsTypeId)
isInplay
int
whether the match is in-play when placing bets
dateMatch
datetime
match date
scoreHome
int
home team score
scoreAway
int
away team score
matchDangerId
int
match danger id
matchName
string
GameName, If the champion, total score, correct score can be displayed directly
leagueName
string
league name
selectionName
string
selection name
marketTypeName
string
market type name
periodName
string
time interval name
betStatus
int
bet status 0:unsettled 4:settled 6:refund the bet
selectedOutcomeId
int
match result id 0:unsettle 1:win 2:win half 3:lose 4:lose half 5:tie refund
Account or password must use the following characters:a-z A-Z 0-9 _-
16
Check account api error.
23
Game is under maintenance.(Single CQ9 game is under maintenance)
24
Account too long.
26
CQ9 Gaming is under maintain.(All CQ9 games are under maintenance)
28
Currency is not support.
29
No default pool type
31
Currency does not match Agent's currency.
33
Transaction in progress, please check later.
35
StartTime and EndTime are future time.
38
This parameter is available for general agent only.
39
Deposit and withdrawal of the account has been forbidden
100
Something wrong.
100
Something wrong.
101
Auth service error.
102
User service error.
103
Transaction service error.
104
Game Manager service error.
105
Wallet service error.
106
Tviewer service error.
107
Orderview service error.
108
Report service error.
200
This owner has been frozen.
201
This owner has been disabled.
202
This player has been disable.
Change Log
A add、 U update、D delete
2025/04/09
U Player Game Link Suffix Explanation A Cockfight Agent Settlement Report A Cockfight Master Agent Settlement Report A Cockfight Player Settlement Report
2025/04/04
A Gametype List
2023/10/24
D Remove promtion APIs
2023/08/08
A Live Dealer agent Report A error code 39
2023/05/08
A add error code 26 CQ9 Gaming is under maintain.
2023/04/11
A add Membership Points Code List 3104~3106
2023/03/09
A Gameboy Membership System Agent Player Action Report API add ID item.
2022/12/28
U User Token Inquiry status logout,update to logout / pending
2022/12/27
A add Live Dealer General agent Report API
2022/12/13
A Order Summary (For Single Player) gametype add live item
2022/08/31
A add logout of all players from a single agent API A add Get membership system link API A add errorcode 38
2022/08/23
A add “potentialWinning” response parameter on “sport and Lotto unfinished orders", "sport and Lotto finished orders" API A Order Inquiry & Single Order Inquiry add cardwin parameter
2022/08/16
U headValue,unitStake,totalStake Parameter Type int to float64
2022/08/10
A add “betStatus" and "selectedOutcomeId” response parameter on “sport and Lotto unfinished orders", "sport and Lotto finished orders" API
2022/06/30
A add "currency" Response Parameter on "Order Inquiry" and "Single Order Inquiry" API
2022/01/14
A add "Get Payoff History", "promoid" Response Parameter
2021/10/07
A add parameter on "Order Inquiry" and "Single Order Inquiry" API
V2. Seamless Wallet Guideline_EN
Contents
How to go live
1.
Please confirm the game type and wallet type you want to integrate, fill in the "Intergration Terms" form then send it back via Skype group.2.
Before you integrate API interface of seamless wallet, we will provide you api/backoffice domain, including back-office account and password of staging environment.3.
Please provide the following information and notify us for API verification, once you complete the 『Seamless Wallet Transaction API Implementation』※When you have implemented all API interface, please inform us to test the API first. After the test is passed, then you can test our games by yourself, so as to avoid errors in the process.
4.
When the API verification is passed, the next step will be verified by our QA team (2-5 working days). After passing, we will provide a production environment application form.※After receiving our notification that the API test is completed, you can start the game test via "Player Get Game Link" - please refer to 『GameBoy documentation』
5.
During the game, our system will call the wallet API. ( Please refer to the flowchart )※The Wurl and Wtoken of each agent can be set via our back-office, and our system will call the wallet API with the back-office settings
6.
When the player leave our game, please use GameBoy - Player Logout.7.
When you receive the production environment information (API/Backoffice URL, backoffice account) and also deploy on your side, then you can go online.8.
If your account is abnormal due to "idempotency" of the Restful rule, we are not responsible for your accounting abnormalities.Flow-Chart
Get Game Link
CheckPlayer & Balance
Slot/Arcade
Bet & Endround
Table/Fish/Arcade/Live
Rollout & Rollin
To transfer the player 『a part of』 balance to our game, and transfer it back to the player's wallet after settlement
Table/Fish/Arcade/Live
Takeall & Rollin
To transfer the player 『all』 balance to our game, and transfer it back to the player's wallet after settlement
Sports/Lotto
Batch Bets & Wins & Refunds & Cancel
a. The same
Batch bets mtcode
can repeat Refunds/Cancelb. If this Bet Mtcode already be Cancel, it can send Wins to settle
Resend Mechanism Flow
Resend the settlement per hour
Refund Mechanism Flow
Resend the refund per hour
Seamless Wallet Idempotency Transaction API Implementation
API Implementation Key Points
1.
We call your API with your "wtoken" in header to verify that this request is called from our side. You can edit wtoken/wurl via our backoffice.2.
Forcurrency
parameter of all API responses, please return it according to the currency used by the agent. e.g. Agent's currency use CNY, thencurrency
parameter should also be CNY.3.
mtcode and roundid is a self-generated unique code (should not include special characters), please confirm it's uniqueness.4.
Date Time format isRFC3339
, e.g.2002-10-02T10:00:00.123456789-04:00
(Please support at least until the 9th digit milliseconds)5.
When API is called, please make sure to record the amount before and after transaction(Amount must support 12+4 decimal points)eg:
Max value :999999999999.9999
6.
Content-Type of all API responses should beapplication/json
7.
When the API call method is GET, the use of variables behind the URL means the same as bringing in the player’s name directly.Example: if you want to get the player’s “ABC” balance:
/transaction/balance/:account
and/transaction/balance/ABC
is same way.8.
If your account is abnormal due to "idempotency" of the Restful rule, we are not responsible for your accounting abnormalities.Idempotency-Description
If the request is the same as the previous mtcode, please return the balance of the last successful mtcode, and there is no need to increase or decrease the player's balance
Idempotency Flow Chart
Wallet API calculation report profit and loss formula:
It is suggested to use Gameboy - "Order Inquiry" to obtain settled rounds by our server for calculation
Player Profit / Loss (From player perspective):
【Slot】 / 【Fish】 / 【Arcade】 / 【Sports/Lotto】:
Endround amount - Bet amount = profit
Rollin win - Rollin bet = profit
Wins amount - Batch Bets amount = profit
【Table】 / 【Live】:
Rollin win - Rollin rake - Rollin roomfee = profit
Agent Profit / Loss (From agent perspective):
【Slot】 / 【Fish】 / 【Arcade】 / 【Sports】:
Bet amount - Endround amount = profit
Rollin bet - Rollin win = profit
Batch Bets amount - Wins amount = profit
【Table】 / 【Live】:
Rollin rake - Rollin win + Rollin roomfee = profit
CheckPlayer
Request
URL:
/player/check/:account
Method:
GET
Headers :
Wtoken: provided from your side for verification use
Path Variables
※36 chars at most
Sample Request
Response Format
Sample Response
If player account exists in your system:
If player account not exists in your system:
Balance
Request
URL:
/transaction/balance/:account
Method:
GET
Headers :
Wtoken: provided from your side for verification use
Path Variables
※36 chars at most
Query Params
※36 chars at most
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent.
e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Bet
Gametype : 【Slot】 / 【Arcade】
Request
URL:
/transaction/game/bet
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※35 chars at most
※36 chars at most
※36 chars at most
※50 chars at most
※roundid is a unique value
※16 digits with 4 decimal places at most
※amount must not be negative, if so, please return error code "1003"
※mtcode is unique
※70 chars at most
※You can define it by yourself,please refer to Seamless Wallet GameBoy document
Player Get Game Lobby Link
Player Get Game Link
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent.
e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
EndRound
Gametype : 【Slot】 / 【Arcade】
Request
URL:
/transaction/game/endround
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
※36 chars at most
※36 chars at most
※50 chars at most
※roundid is a unique value
mtcode : mixed code
※mtcode is a unique value
amount : the amount actually given to the player's wallet
※amount cannot be negative
eventtime : time when event is created, format
RFC3339
validbet : validbet amount
※the validbet bet of slot/arcad/fish is 0, please use bet value as validbet
RFC3339
e.g.
2017-01-19T22:56:30-04:00
. This field equal to order createtime.※35 chars at most
true=yes, false=no
Sample Request :
※Endround interface can send multiple win and mtcode
Response Format
※support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Rollout
gametype : 【Table】 / 【Arcade】 / 【Fish】 / 【Live】
Request
URL:
/transaction/game/rollout
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※35 chars at most
※36 chars at most
※36 chars at most
(rollout/rollin will use same roundid)
※50 chars at most
※roundid is a unique value
※amount must not be negative
※16 digits with 4 decimal places at most
※mtcode is unique
※70 chars at most
※You can define it by yourself,please refer to Seamless Wallet GameBoy document
Player Get Game Lobby Link
Player Get Game Link
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
TakeAll
gametype : 【Table】 / 【Arcade】 / 【Fish】
Request
URL:
/transaction/game/takeall
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※35 chars at most
※36 chars at most
※36 chars at most
※50 chars at most
※roundid is a unique value
※mtcode is unique
※70 chars at most
※You can define it by yourself,please refer to Seamless Wallet GameBoy document
Player Get Game Lobby Link
Player Get Game Link
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Rollin
gametype : 【Table】 / 【Arcade】 / 【Fish】 / 【Live】
※ 【Arcade】 / 【Fish】 : Rollin amount = Rollout amount - bet + win
※ 【Table】 / 【Live】 : Rollin amount = Rollout amount + win - rake - roomfree
Request
URL:
/transaction/game/rollin
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※35 chars at most
※36 chars at most
※36 chars at most
※50 chars at most
※roundid is a unique value
※the validbet of slot/arcade/fish is 0, please use "bet" value as valibet
※for table or live games
※16 digits with 4 decimal places at most
※Because of table/live game, 0 bet amount is plausible
※16 digits with 4 decimal places at most
※Because of table/live game, negative win amount must be accepted
※16 digits with 4 decimal places at most
※Because of table game
※16 digits with 4 decimal places at most
※amount must not be negative, if so, please return error code "1003"
※16 digits with 4 decimal places at most
※mtcode is unique
※70 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
. This field equal to order createtime.※35 chars at most
※This is for table games only
※16 digits with 4 decimal places at most
※36 chars at most
Order description of live dealer
※This is for live dealer games only
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Debit
Request
URL:
/transaction/game/debit
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※35 chars at most
※36 chars at most
※36 chars at most
※50 chars at most
※roundid is a unique value
※amount must not be negative, if so, please return error code "1003"
※16 digits with 4 decimal places at most
※mtcode is unique
※70 chars at most
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Idempotency Example: When game server send the same "Debit" mtcode, there is no need to decrease amount again
Credit
Request
URL:
/transaction/game/credit
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※35 chars at most
※36 chars at most
※36 chars at most
※50 chars at most
※roundid is a unique value
※amount must not be negative, if so, please return error code "1003"
※16 digits with 4 decimal places at most
※mtcode is unique
※70 chars at most
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Payoff
Request
URL:
/transaction/user/payoff
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※36 chars at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※35 chars at most
※amount must not be negative, if so, please return error code "1003"
※16 digits with 4 decimal places at most
※mtcode is unique
※70 chars at most
※not limited
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Idempotency Example: When game server send the same "Payoff" mtcode, there is no need to increase amount again.
Refund
Request
URL:
/transaction/game/refund
Method:
POST
Headers :
Content-Type:application/x-www-form-urlencoded
Wtoken: provided from your side for verification use
Request Parameter
※please use mtcode that you would like to refund
※70 chars at most
※mtcode is a unique value
※36 chars at most
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Batch Bets (Only for Sports and Lotto)
※For a single player, the round and mtcode can be different in the batch. Up to 200 transactions per batch
※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL:
/transaction/game/bets
Method:
POST
Headers :
Content-Type:application/json
Wtoken:provided from your side for verification use
Request Parameter
※36 chars at most
※36 chars at most
※36 chars at most
※not limited, but each winning has 158 chars at most
mtcode : mixed code
※mtcode is a unique value
amount : the amount actually deducted from the player's wallet
eventtime : time when event is created, format
RFC3339
roundid:round ID
※roundid is a unique value
RFC3339
e.g.
2017-01-19T22:56:30-04:00
. This field equal to order createtime.※35 chars at most
※36 chars at most
Sample Request :
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Idempotency Example: When game server send the same "Bathch Bets" mtcode, there is no need to decrease amount again
Refunds (Only for Sports and Lotto)
※Batch refunds are for a single player. Up to 200 transactions per batch
※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL:
/transaction/game/refunds
Method:
POST
Headers :
Content-Type:application/json
Wtoken:provided from your side for verification use
Request Parameter
※please use mtcode that you would like to refund
※70 chars at most
※mtcode is a unique value
Sample Request
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Idempotency Example: When "Refunds" request send the same "Batch Bets" mtcode, there is no need to refund again
Refund Mechanism Flow
Cancel (Only for Sports and Lotto)
※The batch is cancelled for a single player. Up to 200 transactions per batch
※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL:
/transaction/game/cancel
Method:
POST
Headers :
Content-Type:application/json
Wtoken:provided from your side for verification use
Request Parameter
※please use mtcode that you would like to cancel
※70 chars at most
※mtcode is a unique value
Sample Request :
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Idempotency Example: When "Cancel" request send the same "Batch Bets" mtcode, there is no need to decrease amount again
Wins (Only for Sports and Lotto)
※Multiple batches for multiple players, each batch (ucode) can be up to 200 transactions
※There are "partial" success or failure scenarios. Please refer to the response example
Request
URL:
/transaction/game/wins
Method:
POST
Headers :
Content-Type:application/json
Wtoken:provided from your side for verification use
Request Parameter
not limited, but each winning has 158 chars at most
mtcode : mixed code
※mtcode is a unique value
amount : the amount actually given to the player's wallet
roundid:round ID
※roundid is a unique value
eventtime : time when event is created, format
RFC3339
gamecode:code for each game
gamehall:game provider
validbet : The bets which are valid
RFC3339
e.g.
2017-01-19T22:56:30-04:00
※36 chars at most
Sample Request :
Response Format
(failed.account )
(failed.ucode )
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response
Idempotency Example: When game server send the same "Wins" mtcode, no need to increase amount again
Resend Mechanism Flow
Amends(Only for Sports and Lotto)
※Multiple batches for multiple people, each batch (ucode) can be up to 200 transactions
※There are "partial" success or failure scenarios. Please refer to the response example
Request
URL:
/transaction/game/amends
Method:
POST
Headers :
Content-Type:application/json
Wtoken:provided from your side for verification use
Request Parameter
※36 chars at most
mtcode : mixed code
※mtcode is a unique value
amount : amount
action:credit ,debit
roundid:round ID
※roundid is a unique value
eventtime : time when event is created, format
RFC3339
gamecode:code for each game
validbet : The bets which are valid
※not limited, but each winning has 158 chars at most
※amount must not be negative, if so, please return error code “1003”
※16 digits with 4 decimal places at most
action:credit ,debit
※36 chars at most
※36 chars at most
Sample Request :
Response Format
(failed.ucode )
(failed.ucode )
※need support 12+4 (4th decimal place)
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response :
Idempotency Example: When game server send the same amends(credit) mtcode, there is no need to increase amount again
Idempotency Example: When game server send the same amends(debit) mtcode, there is no need to decrease amount again
Amend (Only for Sports and Lotto)
※For a single player, the round and mtcode can be different in the batch. Up to 200 transactions per batch
※There is only complete success or complete failure, there is no "partial" success or failure situation
Request
URL:
/transaction/game/amend
Method:
POST
Headers :
Content-Type:application/json
Wtoken:provided from your side for verification use
Request Parameter
※70 chars at most
※36 chars at most
※36 chars at most
action:credit ,debit
※36 chars at most
※amount must not be negative, if so, please return error code “1003”
※16 digits with 4 decimal places at most
RFC3339
e.g.
2017-01-19T22:56:30-04:00
. This field equal to order createtime.※35 chars at most
mtcode : mixed code
※mtcode is a unique value
amount : amount
action:credit ,debit
roundid:round ID
※roundid is a unique value
eventtime : time when event is created, format
RFC3339
validbet : The bets which are valid
※not limited, but each winning has 158 chars at most
Sample Request :
Response Format
※need support 12+4 (4th decimal place)
※please fill in according to the currency used by the agent. e.g. Agent's currency use CNY, then this parameter should also be CNY
Sample Response :
Idempotency Example: When game server send the same amend(credit) mtcode, there is no need to increase amount again
Idempotency Example: When game server send the same amend(debit) mtcode, there is no need to increase amount again
Error Code
Error Code Example
Please refer to the following Error code Response sample document to adjust the interface
[Probability & Table/Live]
https://hackmd.io/juByNDpcQQytCFlDzYgK1Q?view
[Sport/Lotto]
https://hackmd.io/lyROjTelQtG4sxpWtjJDag?view
Change Log
A
add、U
update、D
delete2024/10/03
A
rollin add "tableid" parameter2024/06/20
A
Refund add "account" parameter2023/08/29
U
Fixed errors in Endround's sample request2022/12/23
A
Ehdround request add freeticket parameter2022/12/13
A
Rollin gametype add live item2022/08/31
A
add "promoid" parameter to Payoff2022/03/29
U
update description for "amount" parameter2022/03/16
A
add "genre" parameter to Batch Bets2022/01/19
U
update data parameter "text" to "text array"Seamless Wallet GameBoy_EN
Testing Data
HTTP Request Header
The commonly used HTTP request headers are :
API responses
A successful request will return a JSON response body including the following information:
API Rules
1.
Every time you use API, the HTTP status code will always be200
, if not, it means the Gameboy service is disconnected, or URI is wrong.2.
Date Time format isRFC3339
, e.g.2002-10-02T10:00:00.123456789-04:00
(Please support at least until the 9th digit milliseconds)3.
Timezone isUTC-4
※ Important.4.
mtcode and roundid is a self-generated unique code (should not include special characters), it is suggested to use UUID.5.
Report type API includingstarttime
andendtime
parameters, the time will be included in the query range.e.g.
i. Query for one day
starttime
should be 2017-05-15T00:00:00-04:00endtime
should be 2017-05-16T00:00:00-04:00※ If the
groupby
is hour, set the minute or second ofstarttime
to 0 to ensure data integrityii. Query for spanning more than one day.
starttime
should be 2017-05-14T01:00:00-04:00endtime
should be 2017-05-15T00:59:59.999-04:00then the data will span between 2 days.
Except for the above Report type API s, the rest of the APIs can be inquired on every hour sharp or every minute sharp, i.e 9:00, 10:30, etc, and they also support check on a daily and cross-day basis
※ Please note that query of some API is restricted to have time span of at most 2 days, e.g.
transaction history
6.
The staging Environment don't need IP whitelist, while The production environment needs IP whitelist.7.
Profit/Loss calculation formulaPlayer Profit / Loss (From player perspective):
Table / Live games:win-rake-roomfee
Slot/Arcade/Fish/Lotto games:win-bet
Agent Profit / Loss (From agnet perspective):
Table / Live games:rake-win+roomfee
Slot/Arcade/Fish/Lotto games:bet-win
8.
When the API call method is GET, the use of variables behind the URL means the same as bringing in the player's name directly.Example: if you want to get the player's "ABC" balance:
/gameboy/player/balance/:account
and/gameboy/player/balance/ABC
is same way.9.
The test environment data is saved for D+3 days, and the production environment data is saved for D+3 months,(D: the day when the data was retrieved)
API Usage Procedure(Not using Game Lobby)
gamecode
gamecode
andaccount
to have Player Get the Game LinkAPI Usage Procedure(Using Game Lobby)
account
to have Player Get the Game Lobby LinkGet Timestamp
URL:
/gameboy/ping
Method:
GET
Response
Request Sample
Response Sample
Player Get the Game Lobby Link
URL:
/gameboy/player/sw/lobbylink
Method:
POST
Request
※Account length is restricted to 36 chars at most
"zh-cn", "en","th" ,"vn"
※ please refer to Game List API for details
it will be used to call your Bet, Rollout or TakeAll Transaction API
※Y=yes, N=no, default value is N
※Y=yes, N=no, default value is N
Response
Request Sample
Response Sample
Player Get the Game Link
URL:
/gameboy/player/sw/gamelink
Method:
POST
Request
※Account length is restricted to 36 chars at most
※if "gameplat" is filled wrongly, it will be set to default value (i.e."WEB")
"zh-cn", "en","th" ,"vn"
※ please refer to Game List API for details
it will be used to call your Bet, Rollout or TakeAll Transaction API
※Y=yes, N=no, default value is N
※Y=yes, N=no, default value is N
※A maximum length of 16 alphanumeric characters, excluding special symbols or spaces.
Response
Request Sample
Response Sample
Suffix Usage Instructions
After obtaining the link, the user can add suffixes to enable specific features. Below are common suffix examples:
Enter Single Table (For Live Game Only)
Show Only One Live Lobby Scenario
Slot Games
Game Provider List
URL:
/gameboy/game/halls
Method:
GET
Response
Request Sample
Response Sample
Game List
URL:
/gameboy/game/list/:gamehall
Method:
GET
Request
Response
Request Sample
Response Sample
Order Inquiry
URL:
/gameboy/order/view
Method:
GET
Request
Query Params
RFC3339
※please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
※Account length is restricted to 36 chars at most
500
,maximum20000
)slot = slot games only
arcade = arcade games only
table = table games only
fish = fish games only
live = include live (not included table)
※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
※round is a unique value
※for table or live games
※sorted in ascending order
( Mini / Minor / Major / Grand )
※if there is no jackpot, it is an empty string
RFC3339
RFC3339
RFC3339
※system settlement time, order settlement time and report settlement time are also regarded as createtime※ For slot games, may have "freegame" or "bonus" game or "luckydraw" game
※ For fishing games, may have "item" or "reward"
※ For table and live games, may have empty array
※This is for table games only
( 1 = free game : get a free game )
( 2 = free spin : get a free spin )
( 1 = given by pormotion )
( 101 = given by agent )
( 111 = given by treasure chest )
( 112 = purchase from mall )
※This is for table games only, for non-table games, it is an empty string
pc = AI players only
human = one or more real players
※This is for table games only, for non-table games, it is an empty string
※If the game doesn't support the player is a banker, only the player and the bank pc on the table play. Banktype must be PC
※This is for table games only
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty array
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty array
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
e.g.
[{"bettype":"2","win":440,"winlose":220,"bet":220,"validbet":220,"odds":1,"matchresult":"2"}]
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
※This is for live dealer games only, for non-live dealer games, it is 0.
Request Sample
Response Sample
Single Order Inquiry
URL:
/gameboy/order/record
Method:
GET
Request
※roundid is a unique value
※PS.
gamecode
,gamehall
can be obtained fromGame List
Response
※round is a unique value
※for table and live games
※sorted in ascending order
( Mini / Minor / Major / Grand )
※if there is no jackpot, it is an empty string
RFC3339
RFC3339
RFC3339
※system settlement time, order settlement time and report settlement time are also regarded as createtime※This is for table games only
※This is for table games only
※This is for table games only, for non-table games, it is an empty string
pc = AI players only
human = one or more real players
※This is for table games only, for non-table games, it is an empty string
※If the game doesn't support the player is a banker, only the player and the bank pc on the table play. Banktype must be PC
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty array
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty array
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
( 1 = free game : get a free game )
( 2 = free spin : get a free spin )
( 1 = given by pormotion )
( 101 = given by agent )
( 111 = given by treasure chest )
( 112 = purchase from mall )
e.g.
[{"bettype":"2","win":440,"winlose":220,"bet":220,"validbet":220,"odds":1,"matchresult":"2"}]
Order description of live dealer
※This is for live dealer games only, for non-live dealer games, it is an empty string
※This is for live dealer games only, for non-live dealer games, it is an 0 string
※This is for live dealer games only, for non-live dealer games, it is an false string
Request Sample
Response Sample
Player Report
URL:
/gameboy/report/player
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T23:59:59.999-04:00
day|hour
500
,maximum2000
)slot = slot games only
arcade = arcade games only
table = table games only
fish = fish game only
※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
※for table games
yyyy-MM-dd HH:mm:ss
※This is for table games only
Request Sample
Response Sample
Live Dealer player settlement report
URL:
gameboy/report/player/live
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
day:in days
hour:in hours
500
,maximum2000
Response
data
data.data[]
Request Sample
Response Sample
Live Dealer General agent Report
URL:
/gameboy/report/ss/all/live
Method:
GET
Request:
Query Params
day|month
Response
Request Sample
Response Sample
Live Dealer agent Report
URL:
/gameboy/report/ss/live
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
day:in days
hour:in hours
year:in years
month: in months
500
,maximum2000
Response
yyyy-MM-dd HH:mm:ss
※This is for table games only
Request Sample
Response Sample
Cockfight Player Settlement Report
URL:
/gameboy/report/player/animal
Method:
GET
Request
2017-06-01T00:00:00-04:00
※ Timezone must be UTC-42017-06-01T23:59:59.999-04:00
※ Timezone must be UTC-4Response
data
data.data[]
Request Sample
Response Sample
Cockfight Master Agent Settlement Report
URL:
/gameboy/report/ss/all/animal
Method:
GET
Request
2017-06-01T00:00:00-04:00
※ Timezone must be UTC-42017-06-01T23:59:59.999-04:00
※ Timezone must be UTC-4Response
Request Sample
Response Sample
Cockfight Agent Settlement Report
URL:
/gameboy/report/ss/animal
Method:
GET
Request
2017-06-01T00:00:00-04:00
※ Timezone must be UTC-42017-06-01T23:59:59.999-04:00
※ Timezone must be UTC-4Response
Request Sample
Response Sample
Agent Report
URL:
/gameboy/report/ss
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T23:59:59.999-04:00
day|hour
500
,maximum2000
)slot = slot games only
arcade = arcade games only
table = table games only
fish = fish games only
※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
※for table games
yyyy-MM-dd HH:mm:ss
※This is for table games only
Request Sample
Response Sample
General agent Report
URL:
/gameboy/report/ss/all
Method:
GET
Request:
Query Params
day|month
Response
Request Sample
Response Sample
Order Summary (For Single Player)
URL:
/gameboy/order/summary
Method:
GET
Request
※Account length is restricted to 36 chars at most
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
slot = includes slot 、arcade and fish games
table = include table (not included live)
live:include live (not included table)
※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
※for table or live games
※This is for table games only
※for table or live games
※This is for table games only
※This is for table games only
Request Sample
Response Sample
Player Logout
URL:
/gameboy/player/logout
Method:
POST
Request
※ (max. 36 characters).
Request Sample
Response Sample
Logout agent all players
URL:
/gameboy/to/logout/all
Method:
POST
Request:
※General agent is optional.
The default is false, if it is true, all players will be logged out. ※Sub-agent should not fill in this parameter (error code 38 will be returned)
※General agent is optional.
If isall is true, it is invalid, because the logged-out player already includes all sub-agent players under the general agent.
※Sub-agent should not fill in this parameter (error code 38 will be returned)
Request Sample
Response Sample
Get Game Round Detail Link, Version 2
URL:
/gameboy/order/detail/v2
Only for sport/lotto unsettled round that you can call the API to get game round detail link. For other game types, you need to call the API to get the game round detail link after the round is settled.
Method:
GET
Request
※roundid is a unique value
※Account length is restricted to 36 chars at most
※ Sport must be fill in 'lotto', other types do not have to fill in
available option: “zh-cn” - Simplified Chinese, “en” - English
Response
Request Sample
Response Sample
Get Payoff History
URL:
/gameboy/promo/payoff/list
Method:
GET
Request:
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
Response
※mtcode is a unique value
Request Sample
Response Sample
Jackpot Amount Inquiry
URL:
/gameboy/game/jackpot
Method:
GET
Request
※ default value is slot
Response
※[Grand , Major , Minor , Mini]
Request Sample
Response Sample
User Token Inquiry
URL:
/gameboy/player/sw/token/:account
Method:
GET
Request:
※Account length is restricted to 36 chars at most
Response
[ login ] player login
[ logout / pending ] player logout
[ gaming ] player is gaming
Request Sample
Response Sample
Get membership system link
URL:
/gameboy/player/sw/mslink
Method:
POST
Request:
"zh-cn", "en","th" ,"vn"
Response
Request Sample
Response Sample
Membership System Agent Point Report
URL:
/gameboy/report/parent/point
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
day:in days
hour:in hours
year:in years
500
,maximum2000
※if “parentaccount ” is blank then our system will do the determination by the authtoken you are using
Response
Request Sample
Response Sample
Membership System Agent Player Action Report
URL:
/gameboy/report/player/action
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
500
,maximum2000
※if “parentaccount ” is blank then our system will do the determination by the authtoken you are using
Response
Request Sample
Response Sample
Membership System Agent Player Status Report
URL:
/gameboy/report/player/state
Method:
GET
Request
500
,maximum2000
※if “parentaccount ” is blank then our system will do the determination by the authtoken you are using
Response
1 = Promotion
101 = Agent
111 = Treasure Chest
112 = Shopping Mall
Request Sample
Response Sample
Membership System Player Free Ticket Report
URL:
/gameboy/freeticket/parent/players/summary
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
day: interval in days
hour: interval in hours
year:interval in years
500
,maximum2000
※if “parentaccount ” is blank then our system will do the determination by the authtoken you are using
1 = Promotion
101 = Agent
111 = Treasure Chest
112 = Shopping Mall
slot = slot games only
arcade = arcade games only
table = table games only
fish = fish game only
※if “gametype” is blank or is filled wrongly, it will be set to default value (i.e.“slot”)
Response
Request Sample
Response Sample
Membership System Free Ticket Analytics Report
URL:
/gameboy/report/freeticket/analytics
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
day: interval in days
hour: interval in hours
year:interval in years
500
,maximum20000
)1 = Promotion
101 = Agent
111 = Treasure Chest
112 = Shopping Mall
Response
Request Sample
Response Sample
Membership Points Code List
Gametype Categories
Sport and Lotto GameBoy API_EN
1.Sports wagers ID explanation (Click here)
2.Sports Participant TypeID explanatio (Click here)
genre definition
Check Balance (Include the total amount of outstanding bets)
URL:
/gameboy/player/lotto/balance/{account}
Method:
GET
Request
※Account length is restricted to 36 chars at most
Response
Request Sample
Response Sample
Sport and Lotto unfinished orders
URL:
/gameboy/order/record/lotto
Method:
GET
Request
RFC3339
e.g.2017-06-01T00:00:00-04:00
※ Please use UTC-4 timezone
RFC3339
e.g.2017-06-02T00:00:00-04:00
※ Please use UTC-4 timezone
※Account length is restricted to 36 chars at most
※roundid is a unique value
Response
data
data.data[]
※roundid is a unique value
※please refer #genre definition
RFC3339
data.data.wagers[]
data.data.wagers.wagerItems[]
0:unsettled
4:settled
6:refund the bet
0:unsettle
1:win
2:win half
3:lose
4:lose half
5:tie refund
Request Sample
Lottery example
Sport example
Sport and Lotto finished orders By CreateTime
URL:
/gameboy/order/view/lotto
Method:
GET
Request
RFC3339
e.g.2017-05-01T00:00:00-04:00
※ Please use UTC-4 timezone
RFC3339
e.g.2017-05-01T23:59:59-04:00
※ Please use UTC-4 timezone
※Account length is restricted to 36 chars at most
※roundid is a unique value
Response
data
data.data[]:
※roundid is a unique value
※please refer #genre definition
※ For tie refund and cancel, validbet is invalid.
- Tie
- Cancel
RFC3339
※ match date time, system settlement time, order settlement time and report settlement time are also regarded as createtime
RFC3339
※order settlement, Amends the last update time
data.data.wagers[]
data.data.wagers.wagerItems[]
0:unsettled
4:settled
6:refund the bet
0:unsettle
1:win
2:win half
3:lose
4:lose half
5:tie refund
Request Sample
Lottery example
Sport example
Sport and Lotto finished orders By FinalTime
URL:
/gameboy/order/view/lotto/byfinaltime
Method:
GET
Request
RFC3339
e.g.2017-06-01T00:00:00-04:00
※ Please use UTC-4 timezone
RFC3339
e.g.2017-06-02T00:00:00-04:00
※ Please use UTC-4 timezone
※Account length is restricted to 36 chars at most
※roundid is a unique value
Response
data
data.data[]
※roundid is a unique value
※please refer #genre definition
※ Following action will make validbet be invalid.
- Tie
- Cancel
RFC3339
※ match date time, system settlement time, order settlement time and report settlement time are also regarded as createtime
RFC3339
※order settlement, Amends the last update time
data.data.wagers[]
data.data.wagers.wagerItems[]
0:unsettled
4:settled
6:refund the bet
0:unsettle
1:win
2:win half
3:lose
4:lose half
5:tie refund
e.g. Player to score first. 」
Request Sample
Lotto Response Sample
Sport Response Sample
Sport/Lotto agent player report
URL:
/gameboy/report/player/lotto
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
hour|day|month|year
500
,maximum2000
)Response
yyyy-MM-dd HH:mm:ss
※Because of table game, 0 bet amount is plausible
Request Sample
Response Sample
Sport/Lotto agent report
URL:
/gameboy/report/ss/lotto
Method:
GET
Request
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
RFC3339
※ please use UTC-4 timezone, e.g.2017-05-01T00:00:00-04:00
500
,maximum2000
Response
yyyy-MM-dd HH:mm:ss
※Because of table game, 0 bet amount is plausible
Request Sample
Response Sample
Error Code
(Single CQ9 game is under maintenance)
(All CQ9 games are under maintenance)
Change Log
A
add、U
update、D
delete2025/04/09
U
Player Game Link Suffix ExplanationA
Cockfight Agent Settlement ReportA
Cockfight Master Agent Settlement ReportA
Cockfight Player Settlement Report2025/04/04
A
Gametype List2023/10/24
D
Remove promtion APIs2023/08/08
A
Live Dealer agent ReportA
error code 392023/05/08
A
add error code 26 CQ9 Gaming is under maintain.2023/04/11
A
add Membership Points Code List 3104~31062023/03/09
A
Gameboy Membership System Agent Player Action Report API add ID item.2022/12/28
U
User Token Inquiry status logout,update to logout / pending2022/12/27
A
add Live Dealer General agent Report API2022/12/13
A
Order Summary (For Single Player) gametype add live item2022/08/31
A
add logout of all players from a single agent APIA
add Get membership system link APIA
add errorcode 382022/08/23
A
add “potentialWinning” response parameter on “sport and Lotto unfinished orders", "sport and Lotto finished orders" APIA
Order Inquiry & Single Order Inquiry add cardwin parameter2022/08/16
U
headValue,unitStake,totalStake Parameter Type int to float642022/08/10
A
add “betStatus" and "selectedOutcomeId” response parameter on “sport and Lotto unfinished orders", "sport and Lotto finished orders" API2022/06/30
A
add "currency" Response Parameter on "Order Inquiry" and "Single Order Inquiry" API2022/01/14
A
add "Get Payoff History", "promoid" Response Parameter2021/10/07
A
add parameter on "Order Inquiry" and "Single Order Inquiry" APIVersion sw.24.06.20/ gb.23.10.20 / sport.23.05.08