ATA API Document 1 ATA API AT Seamless wallet API Document
ATA API Document 2 Version Date Description 1.00 2022-11-30 ATA API Document create 1.10 2022-12-22 2.1 Login Game home string length changes to 200 2.4 Get replay response parameter “replayurl” changes to “data” 1.20 2022-12-27 3. Operator endpoint implementation: method adjustment, add tag4 and cat7 property send to brand. 1.21 2023-01-06 Adding Special remarks in 3.2 wager.json, 3.3 cancelwager.json, 3.4 appendwagerresult.json, 3.5 endwager.json 2.00 2023-02-15 Add 2.6 FreeSpin Support gametype=yg Add 2.7 Get Users Bet Data Paging Adjustment: 2.3 Get Users Bet Data, response add “detail” 4.1 Response Code List add 5019, 5020 2.10 2023-02-21 Adjustment: 4.6 GameType ft to funta 2.20 2023-04-13 Adjustment 2.1 Login game -> key description Add Special remarks in 3.8 promoPayout 2.30 2023-06-06 Adjustment: 2.4 Get Replay description 4.1 Response Code List add 5021, 5023. 5024 Add 3.3 cancelWager request parameter: currency 2.40 2023-07-14 Adjustment: 4.1 DCS API Response Code 5009 description 2.4 Get Replay add gametype=hs 2.6 FreeSpin change gametype required Add provider in 4.6 Game Type: mj – 7Mojos fm - Fantasma ps – Peter & Sons 2.50 2023-08-30 Add provider in 4.6 Game Type: stm – Slotmill
ATA API Document 3 2.60 2023-10-16 Adjustment: 1. 3.X Operator endpoint implementation “sessiontoken” length changes to String(128) 2. 2.3, 2.7 add “is_endround” parameter in response 3. 2.1 Login Game add “countryCode” parameter 2.70 2024-01-10 Remove currency: uBTC, UBC Add provider in 4.6 Game Type: sb – Spribe evl – Evolution btg – Big Time Gaming ne – NetEnt rt – Red Tiger 2.80 2024-04-22 Add provider in 4.6 Game Type: tk - Thunderkick 2.90 2024-05-29 Add provider in 4.6 Game Type: lm – Lucky Monaco 2.91 2024-08-28 1.Add provider in 4.6 Game Type: nm – Novomatic op – Octoplay bp –BluePrint 2.Add 2.6 FreeSpin Support gametype = hs, evo, png 3.3.8 PromoPayout Special Remarks adjustmen 2.92 2024-10-30 1.Add provider in 4.6 Game Type: hso - Hacksaw Gaming ROW hsl - Hacksaw Gaming Latam 2. 4.1 Response Code List add 5025 2.93 2024-11-22 1. 4.6 Game Type => 4.6 Game Type (Provider Code) 2. 2.3, 2.4, 2.6, 2.7 game description => Provider Code, please check Appendix 4.6 3. 2.5 type description => Provider Code, please check Appendix 4.6 4. cat6 description => Provider Code, please check Appendix 4.6 2.94 2025-2-25 1. Add provider in 4.6 Game Type:
ATA API Document 4 tq – Tequity 2. Remove provider in 3.6 Provider Code : ghg – Golden Hero 2.95 2025-03-18 The following method adds an attribute parameter transactiontime string(20). 3.2 wager.json 3.3 cancelwager.json 3.4 appendwagerresult.json 3.5 endwager.json 3.6 campaignpayout.json 3.8 promopayout.json 2.96 2025-03-28 1. Adjust the parameter description of the following method attribute parameter transactiontime 3.2 wager.json 3.3 cancelwager.json 3.4 appendwagerresult.json 3.5 endwager.json 3.6 campaignpayout.json 3.8 promopayout.json 2. Adjust the length of reference and subreference parameters in 3.5 endwager
ATA API Document 5 Table of Content 1. API Parameter ..............................................................................................................................7 2. DC Game API ................................................................................................................................7 2.1 Login Game ............................................................................................................................7 Request ................................................................................................................................7 Response ..............................................................................................................................8 2.2 Try Game ................................................................................................................................9 Request ................................................................................................................................9 Response ..............................................................................................................................9 2.3 Get Users Bet Data ...............................................................................................................11 Request Limit......................................................................................................................11 Request ..............................................................................................................................11 Response ............................................................................................................................11 2.4 Get Replay ............................................................................................................................13 Request ..............................................................................................................................13 Response ............................................................................................................................13 2.5 Game List ..............................................................................................................................14 Request ..............................................................................................................................14 Response ............................................................................................................................14 2.6 FreeSpin................................................................................................................................15 Request ..............................................................................................................................15 Response ............................................................................................................................15 2.7 Get Users Bet Data Paging ...................................................................................................16 Request Limit......................................................................................................................16 Request ..............................................................................................................................16 Response ............................................................................................................................17 3. Operator endpoints implementation .........................................................................................18 3.1 playerinfo.json ......................................................................................................................18 Request ..............................................................................................................................19 Response ............................................................................................................................19 3.2 wager.json ............................................................................................................................21 Request ..............................................................................................................................21 Response ............................................................................................................................22 Special Remarks .................................................................................................................23
ATA API Document 6 3.3 cancelwager.json ..................................................................................................................24 Request ..............................................................................................................................24 Response ............................................................................................................................25 Special Remarks .................................................................................................................25 3.4 appendwagerresult.json ......................................................................................................27 Request ..............................................................................................................................27 Response ............................................................................................................................28 Special Remarks .................................................................................................................29 3.5 endwager.json ......................................................................................................................29 Request ..............................................................................................................................29 Response ............................................................................................................................31 Special Remarks .................................................................................................................32 3.6 campaignpayout.json ...........................................................................................................33 Request ..............................................................................................................................33 Response ............................................................................................................................34 3.7 getbalance.json ....................................................................................................................36 Request ..............................................................................................................................36 Response ............................................................................................................................36 3.8 promopayout.json ................................................................................................................38 Request ..............................................................................................................................38 Response ............................................................................................................................38 Special Remarks .................................................................................................................39 4. Appendix .....................................................................................................................................40 4.1 Response Code List...............................................................................................................40 4.2 Currency Code List................................................................................................................41 4.3 Language Code List...............................................................................................................47 4.4 Country Code List .................................................................................................................48 4.5 Wager Type (type in Get users bet data) ...........................................................................49 4.6 Game Type (Provider Code) .................................................................................................50
ATA API Document 7 ATA API Document Description 1. API Parameter Name Description Api_url Provided by DC, used for game service Ticket_Api_url Provided by DC, used for 2.3 get users bet data service Sign Key Provided by DC, used for endpoint configuration Operator EndPoint Endpoint provided by Operator, used for API transaction topOrg Provided by DC, Operator Group name org Provided by DC, Operator Brand name 2. DC Game API Encryption rule Parameter “sign” is divided into player sign and merchant sign, two signs are encrypted as follows: Player sign: MD5(loginname+key) Merchant sign: MD5(topOrg+org+key) (Do not put “+” sign when concatenating messages) Key is provided by DC, operator have to encrypt with correct parameter information and key then request with different endpoints. 2.1 Login Game Login Game method allows players to log into the games. Operator receives launch url for the game. Request Method Content Type URL POST application/x-www-form-urlencoded {Api_url}/ata/launchClient.html GET
ATA API Document 8 Name Required Type Description loginname Yes String(20) Unique User ID from operator (Only support english characters and numbers, case insensitive) org Yes String(30) Operator Brand name key Yes String(128) Session token for recognizing player launching the game, recommend using GUID (or any other unique identifier) to renew session key when player launches different game to avoid duplicate. currency Yes String(4) Player currency code, check Appendix 4.2 lang Yes String(10) Language showed in the game, check Appendix 4.3, default is en gameid Yes String(6) Game ID channel Yes String(6) channel=pc or channel=mobile home No String(200) URL for home redirection, required when channel = mobile fullscreen Yes String(3) Full screen, only support in channel=PC, fullscreen=yes or fullscreen=no countryCode No String(2) Country code, check Appendix 4.4 Response code Response 0 {"code": 0,"data": {"launchurl":"https://xxxxxxxxxxxxx"},"msg": "success"} 1 {"code": 1,"data": {"launchurl":""},"msg": "Any other error "} 5001 {"code": 5001,"data": {"launchurl":""},"msg": "Request param error"} 5005 {"code": 5005,"data": {"launchurl":""},"msg": "Brand not exist"} 5012 {"code": 5012,"data": {"launchurl":""},"msg": "Game id not exist"}
ATA API Document 9 2.2 Try Game Request Metho d Content Type URL POST application/x-www-form-urlencoded {Api_url}/ata/pff/launchClient.html GET Name Required Type Description org Yes String(30) Operator Brand name currency Yes String(4) Player currency code, check Appendix 4.2 lang Yes String(10) Language showed in the game, check Appendix 4.3, default is en gameid Yes String(6) Game ID channel Yes String(6) channel=pc or channel=mobile home No String(100) URL for home redirection, required when channel = mobile fullscreen Yes String(3) Full screen, only support in channel=PC, fullscreen=yes or fullscreen=no Response code Response 0 {"code": 0,"data": {"pfflaunchurl":"https://xxxxxxxxxxxxx"},"msg": "success"} 1 {"code": 1,"data": {"launchurl":""},"msg": "Any other error "} 5001 {"code": 5001,"data": {"launchurl":""},"msg": "Request param error"} 5005 {"code": 5005,"data": {"launchurl":""},"msg": "Brand not exist"}
ATA API Document 10 5012 {"code": 5012,"data": {"launchurl":""},"msg": "Game id not exist"}
ATA API Document 11 2.3 Get Users Bet Data Request Limit Request frequency: 3 sec per request, time interval between startTime and endTime must be within 24 hours. Operator can put the “lastId” from previous Response in next Request to gather new data. Request Metho d Content Type URL POST application/x-www-form-urlencoded {Ticket_Api_url}/ata/getUsersBetData GET Name Required Type Description topOrg Yes String(30) Operator Group name org Yes String(30) Operator Brand name lastId Yes bigInt By default, lastId=0, defining ID to the starting data of the Response loginname No String(20) Unique User ID from operator (Only support english characters and numbers, case insensitive) startTime Yes String(19) Starting time format (yyyy-MM-dd HH:mm:ss), in UTC endTime Yes String(19) Ending time format (yyyy-MM-dd HH:mm:ss) , in UTC sign Yes String(32) Merchant sign = MD5(topOrg+org+key) gametype Yes String(20) Provider Code, please check Appendix 4.6 Response code Response
ATA API Document 12 0 { "code": 0, "data": [ { "id": 1, "org": "org", "loginname": "user4test", "currency": "CNY", "type": "endWager", "amount": 0.0, "gameName": "GemRocks", "reference": "1812140129330100001", "createTime": "2019-05-30 01: 52: 22", "DCGameID": "7343", "detail": "","is_endround": false }], "msg":"Success" } 5001 { "code": 5001, "data": [], "msg": "Request param error" } 5005 { "code": 5005, "data": [], "msg": "Brand not exist" } 5040 { "code": 5040, "data": [], "msg": "Request rate limit, once request per 10 seconds" } 5041 { "code": 5041, "data": [], "msg": "Request date rage limit, once request time period can only be within 24 hours" }
ATA API Document 13 2.4 Get Replay The method is allowed to get player’s bet detail replay, only support yg, relax, nlc, hs. The request restriction is 3 seconds per brand. Request Metho d Content Type URL POST application/x-www-form-urlencoded {Api_url}/ata/replay GET Name Required Type Description topOrg Yes String(30) Operator Group name org Yes String(30) Operator Brand name sign Yes String(32) Merchant sign = MD5(topOrg+org+key) gameId Yes Int Game ID reference Yes String(128) Bet round id gametype Yes String(20) Provider Code, please check Appendix 4.6 Response code Response 0 { "code": 0, "data": "http://xxxxxxxxxxx" , "msg": "success" } 5015 {"code":5015, "data":""}
ATA API Document 14 2.5 Game List Request Metho d Content Type URL POST application/x-www-form-urlencoded {Api_url}/ata/getGameList GET Name Required Type Description topOrg Yes String(30) Operator Group name org Yes String(30) Operator Brand name sign Yes String(32) Merchant sign = MD5(topOrg+org+key) type No String(20) Provider Code, please check Appendix 4.6 Response code Response 0 { "code": 0, "data": [ { "id": 143, "CP": "evo", "DCGameID": 296, "GameName": "Candy Dreams", "GameNameCN": "糖果梦", "OpenTable_Ezugi_only": "", "SelectGame_Ezugi_only": "", "ReleaseDate": "2018-01-23", "RTP": "96%", "GameStudio": "EVOPLAY", "GameIcon":"https://XXXX?e=tIn7KM","ContentType":"Standard", "GameType": "Video Slot", "GameStatus": 1, "LogPara": "fullstate\html5\evoplay\candydreams","GameID": "110000" } ], "msg": "Success" } 1 {"code":1, "data": null, "msg": "Any other error"} 5005 {"code":5005, "data": null, "msg": "Brand not exist"}
ATA API Document 15 2.6 FreeSpin This method allows to create FreeSpin Campaign, currently only support relax, nlc, yg, hs, evo, png Request Method Content Type URL POST application/x-www-form-urlencoded {Api_url}/ata/createfreespin GET Name Required Type Description topOrg Yes String(30) Operator Group name org Yes String(30) Operator Brand name sign Yes String(32) Merchant sign = MD5(topOrg+org+key) gameid Yes String(6) Game ID gametype Yes String(20) Provider Code, please check Appendix 4.6 loginname Yes String(20) Unique User ID from operator (Only support english characters and numbers, case insensitive) currency Yes String(4) Player currency code, check Appendix 4.2 expiretimestamp Yes String(10) Format in unix timestamp rounds Yes String(3) Freespin rounds assigned to player amount Yes String(10) Define freespin value per round, please check the value is in bet limit, for example, each freespin with 1 dollar -> amount=1 Response code Response
ATA API Document 16 0 { "code": 0, "data": {"freespinid": "08a2725a-e645-11ec-a86f-0a4ae544369e"} , "msg": "success" } 1 {"code":1, "data": null, "msg": "Any other error"} 5001 {"code":5001, "data": null, "msg": "Request param error "} 5005 {"code":5005, "data": null, "msg": "Brand not exist"} 5009 {"code":5009, "data": null, "msg": "Player not exist"} 5012 {"code":5012, "data": null, "msg": "Game id not exist "} 5015 {"code":5015, "data": null, "msg": "Incorrect provider"} 2.7 Get Users Bet Data Paging Request Limit The interval between start_time and end_time must be within 24 hours. The data provided is within 6 months. The frequency is 3 sec per request. The api also supports the paging function. Operator passes the page parameter to 1 in the first request of the same time interval. Each page can provide up to 5000 pieces of data. The total number of pages can be calculated from the total_count parameter in the response information. The calculation method is as follows: page.total_count/5000 unconditional carry to the integer. Reports are generated in UTC time zone. Request Metho d Content Type URL POST application/x-www-form-urlencoded {Ticket_Api_url}/ata/getUsersBetDataPaging GET Name Required Type Description
ATA API Document 17 topOrg Yes String(30) Operator Group name org Yes String(30) Operator Brand name currency Yes String(4) Player currency code, check Appendix 4.2 loginname No String(20) Unique User ID from operator (Only support english characters and numbers, case insensitive) startTime Yes String(19) Starting time format (yyyy-MM-dd HH:mm:ss), in UTC endTime Yes String(19) Ending time format (yyyy-MM-dd HH:mm:ss) , in UTC sign Yes String(32) Merchant sign = MD5(topOrg+org+key) gametype Yes String(20) Provider Code, please check Appendix 4.6 page Yes Int Page count, must be greater than or equal to 1. If the page.total_count > 5000, the max page is rounded up of page.total_count/5000 Response code Response 0 { "code": 0, "data": [ { "org": "org", "loginname": "user4test", "currency": "CNY", "type": "endWager", "amount": 0.0, "gameName": "GemRocks", "reference": "1812140129330100001", "createTime": "2019-05-30 01:52:22", "DCGameID": "7343","detail": "", "is_endround": false }], "page":{"current_page": 1, "total_count": 1}, "msg":"Success" } 5001 { "code": 5001, "data": null, "page": null, "msg": "Request param error" } 5005 { "code": 5005, "data": null, "page": null, "msg": "Brand not exist" } 5015 { "code": 5015, "data": null,"page": null, "msg": "Incorrect provider" } 5040 { "code": 5040, "data": null, "page": null, "msg": "Request rate limit, once request per 10 seconds" } 5041 { "code": 5041, "data": null, "page": null, "msg": "Request date rage limit, once request time period can only be within 24 hours" }
ATA API Document 18 3. Operator endpoints implementation Operator must implement all API endpoints. Corresponding requests and the response parameters are described in detail. DC offers operator brand API endpoints in GET/POST method. But the suggestion is POST method. Parameter Description sessiontoken Session token for recognizing player launching the game cat1~9 Game related information, cat1~6 description below, currently not using cat7~9 cat1 Game category, ex. Casino cat2 Game category type, ex. Slot cat3 Game category type invariant, ex. Seasons cat4 Game name, ex. Four Seasons cat5 Game ID, ex. 7323 cat6 Provider Code, please check Appendix 4.6 cat7 Game LogPara. tag1~9 Game related tag information, tag1~4 description below, currently not using tag5~9 tag1 Game name, ex. GameName.Seasons tag2 Special model code, ex. Model.M1 tag3 Game channel, ex.Channel.PC tag4 Used for checking if the round is ended, ex.0 = not finished, 1 = finished 3.1 playerinfo.json Operator is obligated to implement playerinfo.json endpoint in order to run gameplay. Token validation is required from providers so operator should respond the corresponding information to the playerinfo.json request.
ATA API Document 19 Request Method Content Type URL POST application/json {Operator endpoint}/playerinfo.json GET Name Required Type Description sessiontoken Yes String(128) Session token for recognizing player launching the game org Yes String(30) Operator Brand name cat1 ~ cat9 No String Game related information lang Yes String(7) Language showed in the game, check Appendix 4.3 version No Int Version tag1 ~ tag9 No String Game related tag information GET Request example { Operator EndPoint} /playerinfo.json? data=org=xxx&sessiontoken=xxx&lang=zh_hant&version=4&cat1=Casino&cat2=Slot&cat3=Yeti&cat4=9k Yeti&cat5=1003&cat6=yg&tag1=GameName.9kYeti&tag2=Model.M1&tag3=Channel.pc Response Name Required Type Description code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters data.gender No String(1) Male: “M”, Female: “F”
ATA API Document 20 data.playerId Yes String(20) Operator player ID data.organization Yes String(16) Operator Brand name data.balance Yes Decimal (16,6) Player current balance data.applicableBonus No Decimal (16,6) Player current bonus data.currency Yes String(4) Response balance and bonus currency, check Appendix 4.2 Currency Code List data.homeCurrency Yes String(4) Player home currency data.nickName No String(64) Player nickname country data.country Yes String(2) Player country, check Appendix 4.4 Country Code List code Response 0 { "code": 0, "msg": "success", "data": { "playerId": "40000001", "nickName": "Restless", "organization": "Demo", "balance": 4000.00, "applicableBonus": 0.00, "currency": "EUR", "homeCurrency": "EUR", "country": "DE" } }
ATA API Document 21 3.2 wager.json Operator is obliged to implement wager endpoint to run gameplay. If there is same wager request (identified by reference and subreference), or the wager has been cancelled, operator should not execute but return success response with player current balance. Noted that multiple subreference may happen in same reference in case the game has several buy-ins. Furthermore, if FreeSpin is triggered prepaid ticket bets, then wager amount is 0, unless player has paid a part of the amount. Request Method Content Type URL POST application/json {Operator EndPoint}/wager.json GET Name Required Type Description sessiontoken Yes String(128) Session token for recognizing player launching the game org Yes String(30) Operator Brand name playerid Yes String(20) Operator player ID amount Yes Decimal(16,6) Bet amount currency Yes String(4) Bet amount currency, check Appendix 4.2 Currency Code List reference Yes String(128) Round of the bet, i.e., Round ID subreference Yes String(128) Unique transaction in the round, i.e., Ticket bet transaction ID description Yes String(64) Bet description prepaidticketid No String(20) Prepaid ticket bet transaction ID prepaidvalue No Decimal(16,6) Prepaid ticket bet value prepaidcost No Decimal(16,6) Prepaid ticket cost value
ATA API Document 22 prepaidref No String(64) Created prepaid reference jackpotcontri bution No String(22) Player jackpot contribution cat1 ~ cat9 No String Game related information tag1 ~ tag9 No String Game related tag information lang No String(7) Language code, check 4.3 Language Code List version No String Version transactiontime Yes String(20) The format is: yyyy-MM-ddTHH:mm:ssZ GET Request example {Operator EndPoint}/wager.json? data=org=YourOrgName&sessiontoken=xxx&playerid=xxx&amount=2.00&currency=USD&service=Mir&r eference=20120705145500000000&subreference=w2012070514550000000&description=Start+Game&c at1=Casino&cat2=Slot&cat3=Yeti&cat4=9kYeti&cat5=1003&cat6=yg&tag1=GameName.9kYeti&tag2=Mo del.M1&tag3=Channel.pc&lang=zh_hant&version=4&transactiontime=2025-03-17T08:45:31Z Response Name Required Type Description code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters data.playerId Yes String(20) Operator player ID data.organization Yes String(30) Operator Brand name data.balance Yes Decimal(16,6) Player current balance data.applicableBonus No Decimal(16,6) Player current bonus
ATA API Document 23 data.currency Yes String(4) Response balance and bonus currency, check Appendix 4.2 Currency Code List data.homeCurrency Yes String(4) Player home currency data.nickName No String(64) Player nickname data.bouns No Decimal(16,6) Player extra bonus after credit data.popupMessage No Model Used for YG popup message, not necessary code Response 0 { "code": 0, "msg": "success",, "data": { "organization": "YourOrgName", "playerId": "xxx", "balance": 961.20, "applicableBonus": 0.44, "currency": "EUR", "homeCurrency": "EUR" } } Special Remarks 1. Return code: 5043 with data.organization, data.playerId, data.balance, data.currency if operator receives duplicate wager (identify by reference and subreference). 2. Return code: 1006 with data.organization, data.playerId, data.balance, data.currency if the player has not enough amount to bet.
ATA API Document 24 3.3 cancelwager.json Operator is obliged to implement cancelWager endpoint in order to run gameplay. If the operator has cancelled the wager (identified by reference and subreference), operator should not execute the same request but return success response with player current balance. If cancel successes or no corresponding transaction information, return code=0, otherwise, return code=1. Request Method Content Type URL POST application/json {Operator EndPoint}/cancelwager.json GET Name Required Type Description org Yes String(30) Operator Brand name playerid Yes String(20) Operator player ID reference Yes String(128) Round of the bet, i.e., Round ID subreference Yes String(128) Unique transaction in the round, i.e., Ticket bet transaction ID currency Yes String(4) Cancelwager currency, check Appendix 4.2 Currency Code List cat6 No String Game type, check Appendix 4.5 version No String Version transactiontime Yes String(20) The format is: yyyy-MM-ddTHH:mm:ssZ GET Request exmaple {Operator EndPoint}/cancelwager.json? org=YourOrgName&playerid=xxx&reference=xxxxxxx&subreference=xxxxxxx&version=4&cat6=yg&trans actiontime=2025-03-17T08:45:31Z
ATA API Document 25 Response Name Required Type Description code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters data.playerId Yes String(20) Operator player ID data.organization Yes String(30) Operator Brand name data.balance Yes Decimal(16,6) Player current balance data.currency Yes String(4) Response balance and bonus currency, check Appendix 4.2 Currency Code List data.bonus Yes Decimal(16,6) If not using please return 0 code Response 0 { "code": 0, "msg": "success", "data": { "playerId": "D80187CDEF79499", "organization": "Demo", "balance": 12.95, "currency": "EUR" } } Special Remarks 1. Return code: 5043 with data.organization, data.playerId, data.balance, data.currency if operator receives duplicate cancelwager (identify by reference and subreference). 2. Return code: 5042 with data.organization, data.playerId, data.balance, data.currency if
ATA API Document 26 operator does not have the reference and subreference to be cancelled.
ATA API Document 27 3.4 appendwagerresult.json Operator is obliged to implement AppendWager endpoint in order to run gameplay. This method is used for the result of prize drop games. Operator must payout the bonus unless same appendWager (identified by reference and subreference) has executed. Noticed that operator will not receive this request with amount=0. Request Method Content Type URL POST application/json {Operator EnPoint}/appendwagerresult.json GET Name Required Type Description Org Yes String(30) Operator Brand name playerid Yes String(20) Operator player ID amount Yes Decimal(16,6) Extra won amount isJackpotWin No Boolean Currently no Jackpot games so isJackpotWin=False bonusprize No Decimal(16,6) Bonus prize which is not able to credit but only for bets. currency Yes String(4) Request won currency, check Appendix 4.2 Currency Code List reference Yes String(128) Round of the bet, i.e., Round ID subreference Yes String(128) Unique transaction in the round, i.e., Ticket bet transaction ID description Yes String(64) Description cat1 ~ cat9 No String Game related information tag1 ~ tag9 No String Game related tag information lang Yes String Language code, check 4.3 Language Code List
ATA API Document 28 version No String Version transactiontime Yes String(20) The format is: yyyy-MM-ddTHH:mm:ssZ Request example {Operator EndPoint}/appendwagerresult.json? org=YourOrgName&playerid=D80187CDEF79499&amount=0.00&bonusprize=100001.66&currency=&tick ets=1&service=Mir&reference=1603231304260100004&subreference=r1&description=First+partial+resu lt&cat1=Betting&cat2=SportsBook&cat3=SuperLive&cat4=BetPump&cat5=10000&cat6=yg&tag1=Game Name.BetPump&tag2=Model.M1&tag3=Channel.web&lang=en&version=4&transactiontime=2025-03- 17T08:45:31Z Response Name Required Type Description code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters data.playerId Yes String(20) Operator player ID data.organization Yes String(30) Operator Brand name data.balance Yes Decimal(16,6) Player current balance data.applicableBonus No Decimal(16,6) Player current bonus data.currency Yes String(4) Response balance and bonus currency, check Appendix 4.2 Currency Code List data.homeCurrency Yes String(4) Player home currency data.nickName No String(64) Player nickname data.bouns No Decimal(16,6) Player extra bonus after credit
ATA API Document 29 code Response 0 { "code": 0, "msg": "success", "data": { "playerId": "0000000000000", "nickName": "xxx", "organization": "XXX", "balance": 492.35, "applicableBonus": 0.0, "currency": "EUR", "homeCurrency": "EUR" } } Special Remarks 1. Return code: 5043 with data.organization, data.playerId, data.balance, data.currency if operator receives duplicate appendwagerresult.json (identify by reference and subreference). 3.5 endwager.json Operator is obliged to implement EndWager endpoint in order to run gameplay. This method is used to payout the winning amount for a normal round. Noted that multiple subreference may happen in same reference in case the game has several game results. If operator has executed the same endWager (identical round_id and wager_id), the current player info will be returned in response. Request Method Content Type URL POST application/json {Operator EndPoint}/endwager.json GET
ATA API Document 30 Name Required Type Description org Yes String(30) Operator Brand name playerid Yes String(20) Operator player ID amount Yes Decimal(16,6) Won amount isJackpotWin No Boolean Currently no Jackpot games so isJackpotWin=False bonusprize No Decimal(16,6) Bonus prize which is not able to credit but only for bets. currency Yes String(4) Request won currency, check Appendix 4.2 Currency Code List tickets Yes Int Ticket, or freespin rounds. Normally using for campaign or statistics reference Yes String(128) Round of the bet, i.e., Round ID subreference Yes String(128) Unique transaction in the round, i.e., Ticket bet transaction ID description Yes String(128) Won Description cat1 ~ cat9 No String(64) Game related information tag1 ~ tag9 No String(64) Game related tag information lang Yes String(2) Language code, check 4.3 Language Code List version No Int version prepaidref No String(64) Created prepaid reference prepaidticketid No String(20) Corresponding prepaid Ticket ID transactiontime Yes String(20) The format is: yyyy-MM-ddTHH:mm:ssZ Request example {Operator EndPoint}/endwager.json? org=YourOrgName&&playerid=cc_1_eur&amount=0.00&bonusprize=0.00&currency=EUR&tickets=1&ser vice=Mir&reference=1603161510230700001&subreference=&description=Start+Game&cat1=Casino&ca
ATA API Document 31 t2=Slot&cat3=Avalanche&cat4=Incinerator&cat5=7320&cat6=yg&tag1=GameName.Incinerator&tag2=M odel.M1&tag3=Channel.pc&lang=en&version=4&transactiontime=2025-03-17T08:45:31Z Response Name Required Type Description code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters data.playerId Yes String(20) Operator player ID data.organization Yes String(30) Operator Brand name data.balance Yes Decimal(16,6) Player current balance data.applicableBonus No Decimal(16,6) Player current bonus data.currency Yes String(4) Response balance and bonus currency, check Appendix 4.2 Currency Code List data.homeCurrency No String(4) Player home currency data.nickName No String(64) Player nickname code Response 0 { "code": 0, "msg": "success", "data": { "playerId": "cc_360551_eur", "organization": "Demo", "balance": 1235.0, "currency": "eur", "homeCurrency": "eur"
ATA API Document 32 } } Special Remarks 1. Return code: 5043 with data.organization, data.playerId, data.balance, data.currency if operator receives duplicate endwager (identify by reference and subreference). 2. Return code: 5042 with data.organization, data.playerId, data.balance, data.currency if operator does not have the reference to finish the round.
ATA API Document 33 3.6 campaignpayout.json Operator is obliged to implement FreeSpinResult endpoint in order to run gameplay. The total winning amount during the campaign will be aggregated in one request. Request Method Content Type URL POST application/json {Operator EndPoint}/campaignpayout.json GET Name Required Type Description org Yes String(30) Operator Brand name playerid Yes String(20) Operator player ID cash Yes Decimal(16,6) Prepaid bet won amount bonus Yes Decimal(16,6) Prepaid bet extra won amount currency Yes String(4) Request bet currency, check Appendix 4.2 Currency Code List reference Yes String(128) Round of the bet, i.e., Round ID description Yes String(64) Won Description cat1 ~ cat9 No String Game related information tag1 ~ tag9 No String Game related tag information campaignref Yes String Operator applied in BO system FreeSpin campaign reference last Yes String Mark for the campaignref is the last request, last=”Y” or last=”N” lang Yes String(7) Language code, check 4.3 Language Code List version No Integer version
ATA API Document 34 prepaidref No String(64) Created prepaid reference prepaidticketid No String(20) Corresponding prepaid Ticket ID singleWin No String(22) Single win value totalWin No String(22) Total win value roundCount No String(11) Total round count if the standard exceed ruleType No String(10) transactiontime Yes String(20) The format is: yyyy-MM-ddTHH:mm:ssZ GET Request example {Operator EndPoint}/campaignpayout.json? org=YourOrgName&&playerid=cc_360471_eur&cash=0.00&bonus=1.02&currency=eur&service=Mir&ref erence=1603211008430800001&des+spin+win+ref%3A+1603211008150200001&campaignref=1603211 008150200001&last=Y&cat1=Casino&cat2=Slot&cat3=Avalanche&cat4=Incinerator&cat5=7&transactiont ime=2025-03-17T08:45:31Z Response Name Required Type Description code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters data.playerId Yes String(20) Operator player ID data.organization Yes String(30) Operator Brand name data.balance Yes Decimal(16,6) Player current balance data.applicableBonus No Decimal(16,6) Player current bonus
ATA API Document 35 data.currency Yes String(4) Response balance and bonus currency, check Appendix 4.2 Currency Code List data.homeCurrency No String(4) Player home currency data.nickName No String(64) Player nickname code Response 0 { "code": 0, "msg": "success", "data": { "currency": "eur", "applicableBonus": 0.0, "homeCurrency": "eur", "organization": "Demo", "balance": 1235.0, "nickName": "a-2db3-a.8.2crx", "playerId": "cc_360471_eur" } }
ATA API Document 36 3.7 getbalance.json Operator is obliged to implement getbalance endpoint in order to run gameplay. Response will be player current balance. Request Method Content Type URL POST application/json {Operator EndPoint}/getbalance.json GET Name Required Type Description org Yes String(15) Operator Brand name sessiontoken Yes String(128) Session token for recognizing player launching the game playerid Yes String(20) Operator player ID gameid No String(11) Game ID, e.g. 7313 description No String(64) Description GET Request example {Operator EndPoint}/getbalance.json? org=xxx&sessiontoken=xxx&playerid=xxxxx&gameid=xxxx&description=getbalance Response Name Required Type Description code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters
ATA API Document 37 data.playerId Yes String(20) Operator player ID data.organization Yes String(30) Operator Brand name data.balance Yes Decimal(16,6) Player current balance data.applicableBonus No Decimal(16,6) Player current bonus data.currency Yes String(4) Response balance and bonus currency, check Appendix 4.2 Currency Code List data.homeCurrency No String(4) Player home currency data.bonus No Decimal(16,6) Player extra bonus after credit data.nickName No String(64) Player nickname code Response 0 { "code": 0, "msg":"Success", "data": { "currency": "EUR", "applicableBonus": 0.0, "homeCurrency": "EUR", "organization": "XXX", "balance": 105.05, "playerId": "XXX", "bonus": 0.0 } }
ATA API Document 38 3.8 promopayout.json This API will be sending promotional bonuses, adding the amount directly to the player wallet. Request Method Content Type URL POST application/json {Operator EndPoint}/promopayout.json GET Name Required Type Description org Yes String(30) Operator Brand name playerid Yes String(20) Operator player ID currency Yes String(4) Bonus currency, check Appendix 4.2 Currency Code List amount Yes Decimal(16,6) Bonus amount promotionid Yes String(36) Promotion campaign ID transid Yes String(128) Promotion bonus transaction ID cat6 Yes String(16) Game type, check Appendix 4.5 transactiontime Yes String(20) The format is: yyyy-MM-ddTHH:mm:ssZ GET Request example {Operator EndPoint}/promopayout.json? org=xxx&playerid=xxxxx&currency=xxxx&amount=xxxx&promotion_id=xxxxx&trans_id=xxxxx&cat6=rg&t ransactiontime=2025-03-17T08:45:31Z Response Name Required Type Description
ATA API Document 39 code Yes integer “code”: 0 is success, return other error codes refer to Appendix 4.1 Response Code List msg Yes String(100) Corresponding error messages data Yes Model data model including parameters data.playerid Yes String(20) Operator player ID data.balance Yes Decimal(16,6) Operator Brand name data.currency Yes String(4) Response player balance and bonus currency, check Appendix 4.2 Currency Code List code Response 0 { "code": 0, "msg": "Success", "data": { "currency": "EUR", "balance": 105.05, "playerid": "XXX" } } Special Remarks 1. Return code: 5043 with data. playerid, data.currency, data.balance if operator receives duplicate promopayout (identify by promotionid and transid).
ATA API Document 40 4. Appendix 4.1 Response Code List Code Remark Description 0 Success Success 1 Any other error System error 1000 Not logged in Player logged in fails 1006 You do not have sufficient funds for the bet Insufficient Balance 1007 The account is blocked and no bets can be performed The account is blocked 1008 Not Authorized Unauthorized 1013 You cannot place this bet due to max bet limit on bonus funds Bet amount exceed bet limit 5001 request param error Request parameter error 5005 Brand is not existed Merchant not exist 5040 Request rate limit, once request per 3 seconds Request limit exceed 5041 Request date range limit, once request time period can only be within 24 hours Time interval must within 24 hours 5000 Sign error Sign error 5002 Currency is not support Currency not support 5015 Incorrect provider Incorrect provider 5012 Game id is not existed Game ID not found 5008 Country code error Country code error 5090 Send Brand Error Brand request error 5042 Bet data is not existed Bet data do not exist
ATA API Document 41 5043 Bet data existed Bet data existed 5009 Player is not existed Player's account or token does not exist 5018 incorrect loginname loginname format incorrect, Only support english characters and numbers, case insensitive 5019 provider is maintaining The provider is under maintenance 5020 merchant locked Merchant is locked 5021 No support try game Try game is not supported 5023 No support get replay Replay is not supported 5024 Token cannot be used Token cannot be used 5025 Unsupported method Unsupported method 4.2 Currency Code List Please refer to ISO 4217 currency codes, different provider supports different currencies. Code Remark Description AED United Arab Emirates Dirham UAE Dirham AFN Afghan Afghani Afghan Afghani ALL Albanian Lek Albanian Lek AMD Armenian Dram Armenian Dram ANG Netherlands Antillean Guilder Netherlands Antillean Guilder AOA Angolan Kwanza Angolan Kwanza ARS Argentine Peso Argentine Peso AUD Australian Dollar Australian Dollar AZN Azerbaijan Manat Azerbaijan Manat BAM Bosnia and Herzegovina convertible mark Bosnia and Herzegovina convertible Mark
ATA API Document 42 BDT Bangladeshi Taka Bangladeshi Taka BGN Bulgarian Lev Bulgarian Lev BHD Bahrain Dinar Bahrain Dinar BND Brunei Dollar Brunei Dollar BOB Bolivian Boliviano Bolivian Boliviano BRL Brazilian Real Brazilian Real BWP Botswanan Pula Botswanan Pula BYN Belarusian Ruble Belarusian Ruble BZD Belize Dollar Belize Dollar CAD Canadian Dollar Canadian Dollar CDF Congolese Franc Congolese Franc CHF Swiss Franc Swiss Franc CLP Chilean Peso Chilean Peso CNY Chinese Yuan Chinese Yuan COP Colombian Peso Colombian Peso CRC Costa Rican Colón Costa Rican Colón CUP Cuban Peso Cuban Peso CZK Czech Koruna Czech Koruna DKK Danish Krone Danish Krone DOP Dominican Peso Dominican Peso DZD Algerian Dinar Algerian Dinar EGP Egyptian Pound Egyptian Pound ETB Ethiopian Birr Ethiopian Birr
ATA API Document 43 EUR Euro Euro GBP Pound Sterling Pound Sterling GEL Georgian Lari Georgian Lari GHS Ghanaian Cedi Ghanaian Cedi GMD Gambian Dalasi Gambian Dalasi GNF Guinean Franc Guinean Franc GTQ Guatemalan Quetzal Guatemalan Quetzal HKD Hong Kong Dollar Hong Kong Dollar HNL Honduran Lempira Honduran Lempira HRK Croatian Kuna Croatian Kuna HTG Haitian Gourde Haitian Gourde HUF Hungarian Forint Hungarian Forint IDR Indonesian Rupiah Indonesian Rupiah IDX Thousand Indonesian Rupiah Indonesian Rupiah/1000 ILS Israeli New Shekel Israeli New Shekel INR Indian Rupee Indian Rupee IQD Iraqi Dinar Iraqi Dinar IRR Iranian rial Iranian rial ISK Icelandic Krona Icelandic Krona JMD Jamaican Dollar Jamaican Dollar JOD Jordanian Dinar Jordanian Dinar JPY Japanese Yen Japanese Yen KES Kenyan Shilling Kenyan Shilling
ATA API Document 44 KGS Kyrgystani Som Kyrgyzstani Som KHR Cambodian Riel Cambodian Riel KRW South Korean Won South Korean Won KWD Kuwaiti Dinar Kuwaiti Dinar KZT Kazakhstani Tenge Kazakhstani Tenge LAK Lao Kip Lao Kip LBP Lebanese Pound Lebanese Pound LKR Sri Lankan Rupee Sri Lankan Rupee LRD Liberian dollar Liberian Dollar LSL Basotho Loti Basotho Lotu LVL Latvia Lat Latvia Lat MAD Moroccan Dirham Moroccan Dirham MDL Moldovan Leu Moldovan Leu MGA Ariary Ariary MKD Macedonian Denar Macedonian Denar MMK Myanmar Kyat Myanmar Kyat MNT Mongolian Tugrik Mongolian Tugrik MOP Macau Pataca Macau Pataca MUR Mauritian Rupee Mauritian Rupee MVR Maldivian Rufiyaa Maldivian Rufiyaa MWK Malawian kwacha Malawian Kwacha MXN Mexican Peso Mexican Peso MYR Malaysian Ringgit Malaysian Ringgit
ATA API Document 45 MZN Mozambican Metical Mozambican Metical NAD Namibian Dollar Namibian Dollar NGN Nigerian Naira Nigerian Naira NIO Nicaraguan Córdoba Nicaraguan Córdoba NOK NOK Norwegian Krone NPR Nepalese Rupee Nepalese Rupee NZD New Zealand Dollar New Zealand Dollar OMR Omani Rial Omani Rial PAB Panamanian Balboa Panamanian Balboa PEN Peruvian Nuevo Sol Peruvian Nuevo Sol PHP Philippine Peso Philippine Peso PKR Pakistan Rupee Pakistan Rupee PLN Polish Zloty Polish Zloty PYG Paraguayan Guarani Paraguayan Guarani QAR Qatari Rial Qatari Rial RON Romanian Dram Romanian Dram RSD Serbian Dinar Serbian Dinar RUB Russian Ruble Russian Ruble RWF Rwandan franc Rwandan Franc SAR Saudi Riyal Saudi Riyal SCR Seychellois Rupee Seychellois Rupee SDG Sudanese Pound Sudanese Pound SEK Swedish Krona Swedish Krona
ATA API Document 46 SGD Singapore Dollar Singapore Dollar SRD Surinamese Dollar Surinamese Dollar SZL Swazi Lilangeni Swazi Lilangeni TGC TGC point TGC point THB Thai Baht Thai Baht TJS Tajikistani Somoni Tajikistani Somoni TMT Turkmenistani Manat Turkmenistani Manat TND Tunisian Dinar Tunisian Dinar TRY Turkish Libra Turkish Libra TTD Trinidad and Tobago Dollar Trinidad and Tobago Dollar TWD New Taiwan Dollar New Taiwan Dollar TZS Tanzanian Shilling Tanzanian Shilling UAH Ukrainian Hryvnia Ukrainian Hryvnia USD United States Dollar United States Dollar UYU Uruguayan Peso Uruguayan Peso UZS Uzbekistani Som Uzbekistani Som VND Vietnamese Dong Vietnamese Dong VNX Thousand Vietnamese Dong Vietnamese Dong/1000 XAF Central African CFA Franc Central African CFA Franc XCD East Caribbean Dollar East Caribbean Dollar XOF CFA Franc BCEAO CFA Franc BCEAO YER Yemeni Rial Yemeni Rial ZAR South African Rand South African Rand
ATA API Document 47 ZM Zambian Kwacha Zambian Kwacha ZWL Zimbabwean Dollar Zimbabwean Dollar BTP BT Points BT Points USDT Tether Tether(USDT) VES Bolívar Soberano Bolívar Soberano SSP South Sudanese Pound South Sudanese Pound 4.3 Language Code List Code Remark Description zh_hans Simplified Chinese Simplified Chinese zh_hant Traditional Chinese Traditional Chinese ko Korean Korean kr Korean Korean en English English th Thai Thai vi Vietnamese Vietnamese id Indonesian Indonesian ja Japanese Japanese bg Bulgarian Bulgarian cz Czech Czech de German German el Greek Greek tr Turkish Turkish
ATA API Document 48 es Spanish Spanish fi Finnish Finnish fr French French hu Hungarian Hungarian it Italian Italian nl Dutch Dutch no Norwegian Norwegian pl Polish Polish pt Portuguese Portuguese pt-BR Brazilian-Portuguese Brazilian-Portuguese ro Romanian Romanian ru Russian Russian sk Slovak Slovak sv Swedish Swedish da Danish Danish ka Georgian Georgian lv Latvian Latvian uk Ukrainian Ukrainian et Estonian Estonian is Icelandic Icelandic 4.4 Country Code List Please refer to ISO 3166-1 Alpha 2 country coder, below are some examples Code Remark Description
ATA API Document 49 CN China 中国 HK Hong Kong 香港 TW Taiwan 台湾 KR South Korea 南韩 JP Japan 日本 TH Thailand 泰国 PH Philippines 菲律宾 ID Indonesia 印度尼西亚 IN India 印度 VN Vietnam 越南 MY Malaysia 马拉西亚 SG Singapore 新加坡 4.5 Wager Type (type in Get users bet data) Code Description wager Bet endwager Finish bet cancelwager Cancel bet, due to internal error (bet amount refund to player) appendwagerresult Appears in prizedrop campaignpayout Player’s profit from prepaid free spin campaign cancelEndWager Cancellation of payout due to internal error (deducting the amount paid to the player from the player's wallet balance) promopayout send promotional bonuses, adding the amount directly to the player wallet
ATA API Document 50 4.6 Game Type (Provider Code) Code Full name yg Yggdrasil relax Relax gaming nlc Nolimit City png Play'n Go hs Hacksaw Gaming aux Avatar UX evo Evoplay gam Gamomat psh Push Gaming ezugi Ezugi swf Win Fast funta FunTa Gaming mj 7Mojos fm Fantasma ps Peter & Sons stm Slotmill sb Spribe evl Evolution btg Big Time Gaming ne NetEnt rt Red Tiger
ATA API Document 51 tk Thunderkick lm Lucky Monaco nm Novomatic op Octoplay bp BluePrint hso Hacksaw Gaming ROW hsl Hacksaw Gaming Latam tq Tequity