Introduction
AMB SuperAPI is designed around RESTFUL API. Our API is made for everyone to be able to read and predictable oriented URLs.The AMB SuperAPI allows you to integrate with the various game providers around the world without handling every risk during the integration of the game provider by yourself and super simple to use..
After Start
When you request the API endpoint these need to use a valid API Key. You can get your API key from the AMB SuperAPI Agent Profile Page
Authentication
An API Key is required to be sent as a part of every request, In the form of Basic Authentication in the request header,
such as Authorization: Basic abcdefghijklmnop
So, The abcdefghijklmnop
it comes from Base64-encoded of string agent_username:x-api-key
.
that means the username of basic auth is an agent_username
and the password is an x-api-key
If you do not have an API Key, you can easily generate one by heading over to the AMB SuperAPI Agent Profile Page
API Key related error response
If an API Key is missing, malformed, or invalid, you will receive a 403 Unauthorised response code
and the following JSON response:
API Referance
Category Lists
Value | Description |
---|---|
EGAMES | Games Slot |
LIVECASINO | Live Casino |
SPORT | Sportbook |
POKER | Poker |
TRADING | Trading |
Product Lists
Games Slot
Product ID | Product Name | Description | Seamless | Transfer |
---|---|---|---|---|
PGSOFT2 | PG Soft | PG Soft | ✔ | - |
PGSOFT | Pg Soft (For seamless wallet, please move to PGSOFT2 ) |
PG Soft | - | ✔ |
SLOTXO | Slotxo | Slotxo | ✔ | ✔ |
JOKER | Joker123 | Joker123 | ✔ | ✔ |
ASKMEBET | Askmebet | Askmebet | ✔ | ✔ |
HABANERO | Habanero | Habanero | ✔ | ✔ |
SPADE | Spade Gaming | Spade Gaming | ✔ | ✔ |
MICRO | Micro Gaming (Slot) | Micro Gaming (Slot) | ✔ | ✔ |
SIMPLEPLAY | Simple Play | Simple Play | ✔ | ✔ |
LIVE22 | Live22 | Live22 | ✔ | ✔ |
EVOPLAY | Evoplay | Evoplay | ✔ | ✔ |
CQ9 | CQ9 (Slot) | CQ9 (Slot) | ✔ | ✔ |
KAGAME | KA Gaming | KA Gaming | ✔ | - |
MANNA | Mannaplay | Mannaplay | ✔ | ✔ |
FUNKY | Funky Games | Funky Games | ✔ | - |
YGGDRASIL | Yggdrasil Gaming | Yggdrasil Gaming | ✔ | - |
UPG | UPG Slot | UPG Slot | ✔ | - |
ROYAL | Royal Slot Gaming | Royal Slot Gaming | ✔ | ✔ |
AMEBA | Ameba | Ameba | ✔ | - |
ASKMESLOT | Askmeslot | Askmeslot | ✔ | - |
NETENT | Netent | Netent | ✔ | - |
REDTIGER | Red Tiger | Red Tiger | ✔ | - |
DRAGONGAMING | Dragon Gaming | Dragon Gaming | ✔ | - |
ACE333 | Ace333 | Ace333 | ✔ | - |
I8 | I8 | I8 | ✔ | - |
WMSLOT | WMSlot | Wmslot | ✔ | - |
NINJA | Ninja slot | Ninja slot | ✔ | - |
918KISS | 918Kiss | 918Kiss | ✔ | - |
ASKMEPLAY | Askmeplay | Askmeplay | ✔ | - |
PRAGMATIC_SLOT | Pragmatic Play (Slot) | Pragmatic Play (Slot) | ✔ | ✔ |
RELAX | Relax Gaming | Relax Gaming | ✔ | - |
759GAMING | 759 Gaming | 759 Gaming | ✔ | - |
NOLIMIT | Nolimit city | Nolimit city | ✔ | - |
HACKSAW | Hacksaw | Hacksaw | ✔ | - |
ADVANT | Advant Play | Advant Play | ✔ | - |
NEXTSPIN | Nextspin | Nextspin | ✔ | - |
GOLDY | Goldy | Goldy | ✔ | - |
WAZDAN | Wazdan | Wazdan | ✔ | - |
BOOONGO | Booongo | Booongo | ✔ | - |
FUNTA | Funta | Funta | ✔ | - |
BOOMING | Booming | Booming | ✔ | - |
GIOCO | Gioco Plus | Gioco Plus | ✔ | - |
SEXY_SLOT | Sexy Slot | Sexy Slot | ✔ | - |
RICH88 | Rich88 | Rich88 | ✔ | - |
PLAYNGO | Play'n Go | Play'n Go | ✔ | - |
AMBGAMING | AmbGaming | AmbGaming | ✔ | - |
FACHAI | Fachai | Fachai | ✔ | - |
AFB1188_SLOT | AFB1188 (Slot) | AFB1188 (Slot) | ✔ | - |
YGR | Ygr | Ygr | ✔ | - |
OCTOPLAY | Octoplay | Octoplay | ✔ | - |
RTGSLOT | Real Time Gaming | Real Time Gaming | ✔ | - |
5G_GAMES | 5G Games | 5G Games | ✔ | - |
DRAGONGAMING | Dragon Gaming | Dragon Gaming | ✔ | - |
UMBET | UM Bet | UM Bet | ✔ | - |
Live Casino
Product ID | Product Name | Description | Seamless | Transfer |
---|---|---|---|---|
SEXY | Sexy Gaming | Sexy Gaming | ✔ | ✔ |
BIGGAME | Big Gaming | Big Gaming | ✔ | ✔ |
DREAM | Dream Gaming | Dream Gaming | ✔ | ✔ |
WM | WM Casino | WM Casino | ✔ | - |
BETGAME | BetgamesTV | BetgamesTV | ✔ | - |
ALLBET | AllBet | AllBet | ✔ | ✔ |
AGGAME | Asia Gaming AG | Asia Gaming AG | ✔ | - |
PRETTY | Pretty Gaming | Pretty Gaming | ✔ | ✔ |
SAGAME | SA Gaming | SA Gaming | ✔ | ✔ |
PRAGMATIC_LIVECASINO | Pragmatic Play (Live Casino) | Pragmatic Play (Live Casino) | ✔ | ✔ |
CQ9_LIVECASINO | Motivation | Motivation | ✔ | - |
WECASINO | WE Casino | WE Casino | ✔ | - |
MICRO_LIVECASINO | Micro Gaming (Live Casino) | Micro Gaming (Live Casino) | ✔ | - |
YEEBET | Yeebet | Yeebet | ✔ | - |
AFB1188_LIVECASINO | AFB1188 (Live Casino) | AFB1188 (Live Casino) | ✔ | - |
Sportbook
Product ID | Product Name | Description | Seamless | Transfer |
---|---|---|---|---|
MSPORT | M-Sport | M-Sport | - | ✔ |
SBO | Sbobet | Sbobet | ✔ | - |
COCKFIGHT | Cockfight | Cockfight | ✔ | - |
AMBSPORTBOOK | AMB sportbook | AMB sportbook | ✔ | - |
SABASPORTS | Saba Sport | Saba Sport | ✔ | - |
PARLAYBAY | parlaybay | parlaybay | ✔ | - |
LALIKA | Lalika | Lalika | ✔ | - |
AFB1188 | AFB1188 | AFB1188 | ✔ | - |
VIRTUAL_SPORT | Virtual Sportbook | Virtual Sportbook | ✔ | - |
Game Card
Product ID | Product Name | Description | Seamless | Transfer |
---|---|---|---|---|
KINGPOKER | Kingpoker | Kingpoker | - | ✔ |
KINGMAKER | King Maker | King Maker | ✔ | - |
AMBPOKER | Ambpoker | Ambpoker | ✔ | ✔ |
MIKIWORLD | Miki Worlds | Miki Worlds | ✔ | - |
Laguange Lists
Value | Description |
---|---|
en | English |
th | Thai |
zh | Simplified Chinese |
id | Bahasa Indonesia |
ja | Japanese |
ko | Korean |
ms | Malaysian |
my | Burmese |
vi | Vietnamese |
Supported currencies
Currency | Description |
---|---|
THB | Thai Baht |
MMK | Myanmar Kyat |
CNY | Chinese Yuan |
EUR | Euro |
GBP | Pound sterling |
IDR | Indonesian Rupiah |
INR | Indian Rupee |
JPY | Japanese Yen |
KHR | Cambodian Riel |
KRW | South Korean won |
LAK | Laotian Kip |
PHP | Philippine Peso |
USD | US Dollar |
VND | Vietnamese Dong |
AUD | Australian Dollar |
TWD | New Taiwan Dollar |
API - Transfer
Overview
Let's play
- First, Create a member/gambler on the product that you want in the above Product List
- Deposit some credit to member for playing the game
- Login and get a URL to play the game and turn into a millionire
- Withdraw
List Games GET
This api is use get game lists.
Use field code
to login in field gameCode
JSON response example:
{
"reqId": "fa3c2578-1328-494b-aa65-b007ab0dcf5d",
"code": 0,
"message": "Success",
"data": {
"games": [
{
"name": "Roulette",
"category": "LIVECASINO",
"type": "ROULETTE",
"code": "MX-LIVE-009",
"img": "https://superapi-products.s3-ap-southeast-1.amazonaws.com/SEXY/1623865160196_591833.png",
"rank": 0,
"providerCode": "0"
},
{
"name": "SicBo",
"category": "LIVECASINO",
"type": "SICBO",
"code": "MX-LIVE-007",
"img": "https://superapi-products.s3-ap-southeast-1.amazonaws.com/SEXY/1623865171298_689823.png",
"rank": 1,
"providerCode": "1"
},
{
"name": "DragonTiger",
"category": "LIVECASINO",
"type": "DRAGONTIGER",
"code": "MX-LIVE-006",
"img": "https://superapi-products.s3-ap-southeast-1.amazonaws.com/SEXY/1623865186531_813952.png",
"rank": 2,
"providerCode": "2"
},
{
"name": "Baccarat Classic",
"category": "LIVECASINO",
"type": "BACCARAT",
"code": "MX-LIVE-001",
"img": "https://superapi-products.s3-ap-southeast-1.amazonaws.com/SEXY/1623865198433_527612.png",
"rank": 3,
"providerCode": "3"
},
{
"name": "Baccarat Insurance",
"category": "LIVECASINO",
"type": "BACCARAT",
"code": "MX-LIVE-003",
"img": "https://superapi-products.s3-ap-southeast-1.amazonaws.com/SEXY/1623865227459_588976.png",
"rank": 4,
"providerCode": "4"
}
]
}
}
HTTP Request
GET {{ API_URL }}/games?productId={{ productId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
GameData | Required | Game list data |
Game Data
Property | Type | Required | Description |
---|---|---|---|
games |
Game[] | Required | List of games |
Game
Property | Type | Required | Description |
---|---|---|---|
name |
string | Required | Game name |
category |
string | Required | Game category (use as filter in report page) |
type |
string | Required | Game type |
code |
string | Required | Game code (login parameter) |
img |
string | Required | Image url |
rank |
number | Required | Game index |
providerCode |
string | Optional | Game Code of Provider |
Create Member POST
This api is use for create member.
Request Body
{
"username": "test00001",
"productId": "PRETTY"
}
JSON response example:
{
"reqId": "f5987096-43bc-4b39-b589-5ee470c11eb8",
"code": 0,
"message": "Success",
"data": {
"username": "test00001",
"currency": "THB",
"status": "SUCCESS"
}
}
HTTP Request
POST {{ API_URL }}/member
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Create a Member also know as Gambler in whatever product
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
CreateMemberData | Required | Member data |
Create Member Data
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username |
currency |
string | Required | ISO 4217 currency code |
status |
string | Required | Response status |
Get Balance GET
This api is use for get money of member.
JSON response example:
{
"reqId": "4a597d2c-1ac8-413b-aaa7-a673b4939494",
"code": 0,
"message": "Success",
"data": {
"balance": "10000",
"status": "SUCCESS",
"username": "test00001"
}
}
HTTP Request
GET {{ API_URL }}/balance?username={{ username }}&productId={{ productId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
GetBalanceData | Required | Get balance data |
Get Balance Data
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username |
balance |
string | Required | Current balance on each productId |
status |
string | Required | Response status |
Deposit POST
This api is use for deposit money of member.
Request Body
{
"username": "test00001",
"amount": "10.10",
"transactionRef": "test00001lhhh1629781123",
"productId": "PRETTY"
}
JSON response example:
{
"reqId": "f09ac2e9-29ba-4ea2-a702-4b557b1247ad",
"code": 0,
"message": "Success",
"data": {
"status": "SUCCESS",
"amount": "10.1",
"balance": "10010.1",
"txId": "test00001lhhh1629781123",
"username": "test00001",
"beforeBalance": "10000.00"
}
}
HTTP Request
POST {{ API_URL }}/deposit
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
amount |
Decimal | Required | Amount to deposit (2 digits) |
transactionRef |
string | Required | Unique transaction ref |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
DepositData | Required | Deposit data |
Deposit Data
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username |
amount |
Decimal | Required | Deposit amount |
beforeBalance |
Decimal | Required | Balance on each productId before deposit |
balance |
Decimal | Required | Balance on each productId after deposit |
txId |
string | Required | Unique transaction ref drawn from the request |
status |
string | Required | Response status |
Withdraw POST
This api is use for withdraw money of member.
Request Body
{
"username": "test00001",
"amount": "100.25",
"transactionRef": "test00001rxqd1629781421",
"productId": "SEXY"
}
JSON response example:
{
"reqId": "c16510ed-6462-414a-9cc5-f380848723a0",
"code": 0,
"message": "Success",
"data": {
"status": "SUCCESS",
"amount": "100.25",
"balance": "10010.1",
"txId": "test00001rxqd1629781421",
"username": "test00001",
"beforeBalance": "9909.85"
}
}
HTTP Request
POST {{ API_URL }}/withdraw
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
amount |
Decimal | Required | Amount to deposit 2 digits |
transactionRef |
string | Required | Unique transaction ref |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
WithdrawData | Required | Withdraw data |
Withdraw Data
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username |
amount |
string | Required | Withdrawal amount |
beforeBalance |
string | Required | Balance on each productId before withdrawal |
balance |
string | Required | Balance on each productId after withdrawal |
txId |
string | Required | Unique transaction ref drawn from the request |
status |
string | Required | Response status |
Verify Deposit Withdraw POST
This api is verify transaction of deposit or withdraw to successfully or fail.
Request Body
{
"username": "test00001",
"transactionRef": "test00001rxqd1629781421",
"productId": "SEXY",
"type": "DEPOSIT"
}
JSON response example (Success):
{
"reqId": "c16510ed-6462-414a-9cc5-f380848723a0",
"code": 0,
"message": "Success",
"data": {
"success": true,
"username": "test00001",
"productId": "SEXY",
"currency": "THB",
"transactionRef": "test00001rxqd1629781421",
"amount": "100.00",
"beforeBalance": "0.00",
"afterBalance": "100.00"
}
}
HTTP Request
POST {{ API_URL }}/verifyDepositWithdraw
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
transactionRef |
string | Required | Unique transaction ref |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
type |
string | Required | Either DEPOSIT or WITHDRAW |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
VerifyDepositWithdrawData | Required | Verify deposit/withdraw data |
Verify Deposit Withdraw Data
Property | Type | Required | Description |
---|---|---|---|
success |
boolean | Required | Indicate whether the transaction was successful or not true : transaction has successfalse : Transaction has fail |
username |
string | Required | Username |
productId |
string | Required | Product associated with the transaction |
currency |
string | Required | Currency associated with the transaction |
transactionRef |
string | Required | Unique transaction ref |
amount |
string | Required | Deposit or withdrawal amount |
beforeBalance |
string | Required | Balance on before deposit or withdrawal |
afterBalance |
string | Required | Balance on after deposit or withdrawal |
Login POST
This api is use for enter to the game.
Request Body
{
"username": "test00001",
"productId": "SEXY",
"gameCode": "MX-LIVE-001",
"isMobileLogin": false
}
JSON response example:
{
"reqId": "7c4d1ed5-b036-4bcf-a534-9236970678c8",
"code": 0,
"message": "Success",
"data": {
"url": "https://ttt.onlinegames22.com/player/login/apiLogin0?userId=000166xgz&agentId=superapitest&tokenId=yMrZlUH4vLLItmM10dZARVAwAkRWqBIIpMxZXnUGXwswnKRM-Zw_X19NBuSEfmYq&isMobileLogin=false&isShowSymbol=true¤cySymbol=&isApp=false&gameCode=MX-LIVE-001&platform=SEXYBCRT&gameType=LIVE&isLaunchGame=true&language=&isNewGameHall=false",
"username": "test00001"
}
}
HTTP Request
POST {{ API_URL }}/logIn
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
gameCode |
string | Required | Game code of product (Example : BAC) |
isMobileLogin |
boolean | Required | Mobile Mode (Example : true) |
language |
string | Optional | Language Code default th Language List (Example : th) |
betLimit |
BetLimits | Optional | Player's bet limits |
limit |
number See more | Optional | Player common bet limit format |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
LoginData | Required | Login data |
Login Data
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username |
url |
string | Required | Game url |
Get BetLimits GET
GET
Optional
Get bet limit (Live casino only).
Now support only: SEXY
, PRETTY
(Other products coming soon)
JSON response example:
{
"reqId": "395e9c4d-be1f-403d-b58a-e3e1ce4b7250",
"code": 0,
"message": "Success",
"data": [
{
"productId": "SEXY",
"BetLimit": [
{
"limit": 1,
"Min": 5,
"Max": 2000
},
{
"limit": 2,
"Min": 50,
"Max": 5000
},
{
"limit": 3,
"Min": 100,
"Max": 20000
}
]
}
]
}
HTTP Request
GET {{ API_URL }}/betLimitsV2?productId={{ productId }}&username={{ username }}¤cy={{ currency }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
currency |
string | Required | ISO 4217 currency code |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
BetLimits[] | Required | List of bet limits |
Bet limits response
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ex. PRETTY, SEXY, etc) |
BetLimit |
LimitData[] | Required | Either betLimit or winLimit |
Limit data
Property | Type | Required | Description |
---|---|---|---|
limit |
number | Required | Limit parameter, use this value to set in limit parameter when call /logIn . |
Max |
number | Required | Maximum wager for player. |
Min |
number | Required | Minimum wager for player. |
Query Outstanding GET
This api is check transactions to be outstanding.
JSON response example:
{
"reqId": "a784a34b-1e67-4102-bf66-deb068f6dd02",
"code": 0,
"message": "Success",
"data": [
{
"productId": "SLOTXO",
"outstanding": 3000
}
]
}
HTTP Request
GET {{ API_URL }}/outstanding?username={{ username }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
Outstanding[] | Required | List of current outstanding |
Outstanding
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SLOTXO ) |
outstanding |
number | Required | Unfinished bet amount |
txns |
SportTransaction[] | Optional | Pending sport transactions |
Sport Transaction
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transacion ID (Example : PAR5659622569 ) |
stake |
string | Required | Total stake of the ticket (Example : 10.00 ) |
odds |
number | Required | Total odds of the ticket (Example : 4.515 ) |
subTxns |
SportSubTransaction[] | Required | Sub transactions of the ticket |
Sport Subtransaction
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transacion ID (Example : 182719729 ) |
odds |
number | Required | Transacion odds (Example : 1.71 ) |
side |
string | Required | Choosen side |
matchDateTime |
string | Required | Match start time (Example : 2022-09-28T23:00:00.000+00:00 ) |
leaguename |
string | Required | League name (Example : FINLAND VEIKKAUSLIIGA (PLAY OFF) ) |
hometeam |
string | Required | Home team name (Example : Inter Turku ) |
awayteam |
string | Required | Away team name (Example : Haka ) |
result |
string | Required | Match result |
score |
string | Required | Match score (Example : '','0-0' ) |
Sport Side
Value | Description |
---|---|
1 | Home/Over/Odd |
2 | Away/Under/Even |
X | Draw |
Sport Result
Value |
---|
Match not over |
Win all |
Lost all |
Win half |
Lost half |
Draw |
Unknown |
Query Bet Records GET
JSON response example:
{
"reqId": "afd71177-960f-4669-90ed-8a34eed3d7d3",
"code": 0,
"message": "Success",
"data": {
"nextId": "613af94ce2d30c10be22dc6b",
"txns": [
{
"id": "613af94ce2d30c10be22dc06",
"betId": "21352670",
"username": "tor0002",
"currency": "THB",
"accountingDate": "2021-09-10T06:20:06.000+00:00",
"updatedDate": "2021-09-10T06:20:06.000+00:00",
"stake": 40,
"payout": 30,
"productId": "SIMPLEPLAY",
"gameCode": "EG-SLOT-A044",
"gameName": "Bomber Squad",
"roundId": "4500052193296",
"betStatus": "SETTLED",
"payoutStatus": "LOSE",
"commission": 0
},
{
"id": "613af94ce2d30c10be22dc34",
"betId": "21352676",
"username": "tor0002",
"currency": "THB",
"accountingDate": "2021-09-10T06:20:20.000+00:00",
"updatedDate": "2021-09-10T06:20:20.000+00:00",
"stake": 40,
"payout": 15,
"productId": "SIMPLEPLAY",
"gameCode": "EG-SLOT-A044",
"gameName": "Bomber Squad",
"roundId": "4500085747728",
"betStatus": "SETTLED",
"payoutStatus": "LOSE",
"commission": 0
}
]
}
}
GET {{ API_URL }}/betTransactionsV2?productId={{ productId }}&date={{ date }}&nextId={{ nextId }}
Note: there's a high chance of request timeout when using this variant. If there's a request timeout, please consider querying by range instead.
or
GET {{ API_URL }}/betTransactionsV2?productId={{ productId }}&startTime={{ startTime }}&endTime={{ endTime }}&nextId={{ nextId }}
Note: query range should not be greater than 1 hour. If there's a request timeout, please reduce query range.
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
date |
string | Optional | Date in format yyyy-MM-dd |
startTime |
string | Optional | Date-time in ISO 8601 format eg 2013-07-16T19:23:51Z |
endTime |
string | Optional | Date-time in ISO 8601 format eg 2013-07-16T19:23:51Z |
nextId |
string | Optional | Taken from previous chunk response, indicating the start of requesting chunk |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
QueryBetDataV2 | Required | Query bet data |
Query Bet Data
Property | Type | Required | Description |
---|---|---|---|
nextId |
string | Optional | Id indicating the start of next chunk. (If not present it means there's no next chunk.) |
txns |
Txn[] | Required | Transactions list. |
Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction id |
betId |
string | Required | Unique bet id on each user |
username |
string | Required | Username |
currency |
string | Required | ISO 4217 currency code |
accountingDate |
string | Required | Settlement time |
updatedDate |
string | Required | Latest update time |
stake |
number | Required | Stake amount |
payout |
number | Required | Payout amount (including stake) |
productId |
string | Required | Product id |
gameCode |
string | Required | Game code |
gameName |
string | Required | Game name |
roundId |
string | Required | Round id |
betStatus |
string | Required | Bet status (OPEN, SETTLED, UNSETTLED, VOID) |
payoutStatus |
string | Required | Payout status (LOSE, WIN, DRAW, UNKNOWN) |
commission |
number | Required | Commission fee |
Query Transfer Bet-records GET
JSON response example:
{
"reqId": "afd71177-960f-4669-90ed-8a34eed3d7d3",
"code": 0,
"message": "Success",
"data": {
"txns": [
{
"id": "613af94ce2d30c10be22dc06",
"betId": "21352670",
"username": "tor0002",
"currency": "THB",
"accountingDate": "2021-09-10T06:20:06.000+00:00",
"updatedDate": "2021-09-10T06:20:06.000+00:00",
"stake": 40,
"payout": 30,
"productId": "SIMPLEPLAY",
"gameCode": "EG-SLOT-A044",
"gameName": "Bomber Squad",
"roundId": "4500052193296",
"betStatus": "SETTLED",
"payoutStatus": "LOSE",
"commission": 0
},
{
"id": "613af94ce2d30c10be22dc34",
"betId": "21352676",
"username": "tor0002",
"currency": "THB",
"accountingDate": "2021-09-10T06:20:20.000+00:00",
"updatedDate": "2021-09-10T06:20:20.000+00:00",
"stake": 40,
"payout": 15,
"productId": "SIMPLEPLAY",
"gameCode": "EG-SLOT-A044",
"gameName": "Bomber Squad",
"roundId": "4500085747728",
"betStatus": "SETTLED",
"payoutStatus": "LOSE",
"commission": 0
}
]
}
}
GET {{ API_URL }}/betTransactionsTransfer?productId={{ productId }}&startTime={{ startTime }}&endTime={{ endTime }}
Note: This API support only transfer-wallet integration and data will be available after November 21, 2024 05:00:00.000 UTC
Due to issue about fetch huge data take a long time, so we implemented the new API to resolve the problem.
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
startTime |
string | Required | Date-time in ISO 8601 format eg 2013-07-16T19:23:51Z |
endTime |
string | Required | Date-time in ISO 8601 format eg 2013-07-16T19:23:51Z |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
QueryBetDataV2 | Required | Query bet data |
Query Bet Data
Property | Type | Required | Description |
---|---|---|---|
txns |
Txn[] | Required | Transactions list |
Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction id |
betId |
string | Required | Unique bet id on each user |
username |
string | Required | Username |
currency |
string | Required | ISO 4217 currency code |
accountingDate |
string | Required | Settlement time |
updatedDate |
string | Required | Latest update time |
stake |
number | Required | Stake amount |
payout |
number | Required | Payout amount (including stake) |
productId |
string | Required | Product id |
gameCode |
string | Required | Game code |
gameName |
string | Required | Game name |
roundId |
string | Required | Round id |
betStatus |
string | Required | Bet status (OPEN, SETTLED, UNSETTLED, VOID) |
payoutStatus |
string | Required | Payout status (LOSE, WIN, DRAW, UNKNOWN) |
commission |
number | Required | Commission fee |
Query Replay GET
JSON response example:
{
"reqId": "7ba79e9c-ebaf-4f06-bd73-d8648ec7f8d3",
"code": 0,
"message": "Success",
"data": {
"url": "https://ttt.worldcdn-mega.com/page/wallet/replay.jsp?platform=SEXYBCRT&gameType=LIVE&roundId=Mexico-705-GA25440063&path=https%3A%2F%2Fbfsiz6.bikimex.net%2Ftoken%2Fresult%2Freplay.jsp%3Ftoken%3D4i9oFD7dThHHWUNgOxt4BdyvpOsmfZg3vdQmJ0yvDxAYJsQHk%252BABwgJF1rezSA6dnjOsNoqMf9LA3G%252FEMkXUsWQmedAoq7iLO%252F1yrsQbTd%252Fntj4j8ZM2Sk8CHB0u8ME4sHewbWzt5C4D281OlohjBw%253D%253D%26lang%3Den%26reverseBPColor%3Dfalse"
}
}
GET {{ API_URL }}/betTransactionReplay?productId={{ productId }}&username={{ username }}&betId={{ betId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
betId |
string | Required | Bet ID |
username |
string | Required | Member username |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
QueryReplay | Required | Query replay data |
Query Replay
Property | Type | Required | Description |
---|---|---|---|
url |
string | Required | Replay url |
urls |
Array |
Optional | Replay url for sub detail ProductSupport |
Product For Support
ProductId | Description |
---|---|
SPADE |
Spade gaming |
Set Member Password POST
Request Body
{
"username": "u12345",
"productId": "SLOTXO",
"password": "testp1234"
}
JSON response example:
{
"reqId": "0ffe1434-c931-4ea8-a430-c7fac8bf5a96",
"code": 0,
"message": "Success",
"data": {
"applicationUsername": "TFPF.000ful499"
}
}
HTTP Request
POST {{ API_URL }}/setPassword
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description | |
---|---|---|---|---|
username |
string | Required | Member username | |
productId |
string | Required | Product ID of SLOTXO | Slotxo only |
password |
string | Required | password |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
SetPasswordData | Required | Set password data |
Set Password Data
Property | Type | Required | Description |
---|---|---|---|
applicationUsername |
string | Required | App login username |
Get Member Alias GET
JSON response example:
{
"reqId": "44b308ec-4235-4c47-82e6-8d370dbf1fc9",
"code": 0,
"message": "Success",
"data": {
"memberAlias": "TFPF.000ful499"
}
}
HTTP Request
GET {{ API_URL }}/member/{{ username }}/alias?productId={{ productId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description | |
---|---|---|---|---|
username |
string | Required | Member username | |
productId |
string | Required | Product ID of SLOTXO | Slotxo only |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
GetAlias | Required | Get alias data |
Get Alias Data
Property | Type | Required | Description |
---|---|---|---|
memberAlias |
string | Required | App login username |
Error message transfer
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
ErrorMessage | Required | Error message |
Error message
Code | Response status |
---|---|
0 | Success |
10 | Unauthorized |
12 | This user is reserved as a special username for system, please choose other name |
13 | Create user failed or duplicate user, please choose other name |
20 | Invalid request payload |
21 | Require sessionToken |
22 | Invalid betLimit |
23 | Invalid betLimit size |
40 | Not found |
800 | Error from cache, please wait before try again |
900 | Upstream error |
901 | Request product error |
910 | Downstream error |
950 | Http request error |
960 | Error decoding |
403 | Game code did not support |
413 | SessionToken size should not exceed 20 characters |
1000 | Error, please try again later |
1001 | Invalid account setting, please contact admin |
1002 | Currency did not support for this operator |
3000 | Get Balance failed |
4000 | Deposit Failed |
4001 | Transaction has duplicate |
4002 | Deposit Invalid Amount |
5003 | Not enough credit |
5000 | Withdraw Failed |
5001 | Transaction has duplicate |
5002 | Withdraw Invalid Amount |
5004 | Transaction not found |
9001 | Invalid productID |
9002 | Member not found |
9004 | Unauthorized ProductID |
API - Seamless
Overview
Let's play
- First, Create a member/gambler on the product that you want in the above Product List
- Login and get a URL to play the game and turn into a millionire
List Games GET
This api is use for get game lists.
Please use field code
to login in field gameCode
JSON response example:
{
"reqId": "91ffb817-1f8e-4608-a86d-472dddc2eed7",
"code": 0,
"message": "Success",
"data": {
"games": [
{
"name": "games",
"category": "EGAMES",
"type": "SLOT",
"code": "games",
"img": "https://img",
"rank": 1,
"providerCode": "1"
}
]
}
}
HTTP Request
GET {{ API_URL }}/seamless/games?productId={{ productId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
GameData | Required | Query games data |
Query Games Data
Property | Type | Required | Description |
---|---|---|---|
name |
string | Optional | Game Name |
category |
string | Required | Game Category |
type |
string | Required | Game Type |
code |
string | Required | Game Id |
img |
string | Required | Game Image |
rank |
number | Required | Rank of game |
providerCode |
string | Optional | Game Code of Provider |
List Freegames GET
This api is use for get free game lists.
Please use field code
to login in field gameCode
JSON response example:
{
"reqId": "91ffb817-1f8e-4608-a86d-472dddc2eed7",
"code": 0,
"message": "Success",
"data": {
"games": [
{
"name": "games",
"category": "EGAMES",
"type": "SLOT",
"code": "games",
"img": "https://img",
"rank": 1,
"providerCode": "1"
}
]
}
}
HTTP Request
GET {{ API_URL }}/seamless/freeGameList?productId={{ productId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
GameData | Required | Query games data |
Query Games Data
Property | Type | Required | Description |
---|---|---|---|
name |
string | Optional | Game Name |
category |
string | Required | Game Category |
type |
string | Required | Game Type |
code |
string | Required | Game Id |
img |
string | Required | Game Image |
rank |
number | Required | Rank of game |
providerCode |
string | Optional | Game Code of Provider |
Login POST
This api is use for enter to the game.
Request Body
{
"username": "test00001",
"productId": "PRETTY",
"gameCode": "BAC",
"isMobileLogin": true,
"limit": 1
"sessionToken": "d4be70d1-349f-4fc1-a955-35d2a4bff244",
"betLimit": []
}
JSON response example:
{
"reqId": "5557191a-4421-4753-a757-8ca7b45828dc",
"code": 0,
"message": "Success",
"data": {
"url": "https://test.ambsuperapi.com/seamless/directLogin?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkGOsdNc5bUOJGom4CsnBbR3JC6lHUZUMl9TRUFNTEVTUy9USEIiLCJ0eXBlIjoiUEdTT0ZUMiIsImNhbGxiYWNrVXJsIjoiaHR0cHM6Ly9hcmVhNTIuYW1ic3VwZXJhcGkuY29tL3Rlc3RTZWFtbGVzc0NvbW1vbiJ9XSwid2FsbGV0VHlwZSI6InNlYW1sZXNzIiwiY3VycmVuY3kiOiJUSEIifSwicmVxdWVzdElkIjoiMTQ5ODYzNzAtYTY3Zi00ZGY1LTk1MDUtZDA0YWY3YzliNWNiIiwiaWF0IjoxNzMwMjYxMzk4fQ.VEpqPoRwwm7SJP08gwlUTAjow-x2VuiiAbPOCap4kNc"
}
}
HTTP Request
POST {{ API_URL }}/seamless/logIn
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
gameCode |
string | Required | Game code of product (Example : BAC) |
isMobileLogin |
boolean | Required | Mobile Mode (Example : true) |
limit |
number | Optional | Player's bet limits Betlimit List |
sessionToken |
string | Required | SessionToken generate by Operator. Note: In some products, provider didn't support the same token when player had login many times. So, please try to change the sessionToken regulary, if you found an error abnormally. Note: Some products has a maximum length of sessionToken if you found some callback remove your sessionToken length or sent to your system with some part of your provided sessionToken , please try to reduce sessionToken length. |
currency |
string | Optional | Login currency, please specify if you need to select the currency (Default value based on agent) |
language |
string | Optional | Language Code default th Language List (Example : th) |
callbackUrl |
string | Optional | Exit url, url that you need to redirect if player quit the game from Game GUI. |
betLimit |
any[] | Optional | Values are depended on productId, please refer to each product in callbacks section for more details |
Custom bet-limit config
Optional
: If you need to custom bet-limit (mostly for Sport-type products), please following this setup parameters.
Due to the complexity of setup parameters in some products, we have to separates the custom parameters for your login's parameters request.
The following products supports these custom setup:
Product name | ProductID |
---|---|
AMB Sportbook | AMBSPORTBOOK |
Lalika | LALIKA |
AFB1188 Sport | AFB1188 |
Saba Sport | SABASPORTS |
The description and example for each products:
Lalika
{
"betLimit": [
{
"sport_type": 0,
"market_type": 0,
"min_bet": 5,
"max_bet": 500,
"max_bet_per_match": 100000
}
]
}
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
sport_type |
number | Required | Sport type code. |
market_type |
number | Required | Market type code. |
min_bet |
number | Required | Minimum bet amount daily. |
max_bet |
number | Required | Maximum bet amount daily. |
max_bet_per_match |
number | Required | Maximum bet amount per match. |
COMING SOON
Query Bet Records GET
JSON response example:
{
"reqId": "afd71177-960f-4669-90ed-8a34eed3d7d3",
"code": 0,
"message": "Success",
"data": {
"nextId": "613af94ce2d30c10be22dc6b",
"txns": [
{
"id": "613af94ce2d30c10be22dc06",
"betId": "21352670",
"username": "tor0002",
"currency": "THB",
"accountingDate": "2021-09-10T06:20:06.000+00:00",
"updatedDate": "2021-09-10T06:20:06.000+00:00",
"stake": 40,
"payout": 30,
"productId": "SIMPLEPLAY",
"gameCode": "EG-SLOT-A044",
"gameName": "Bomber Squad",
"roundId": "4500052193296",
"betStatus": "SETTLED",
"payoutStatus": "LOSE"
},
{
"id": "613af94ce2d30c10be22dc34",
"betId": "21352676",
"username": "tor0002",
"currency": "THB",
"accountingDate": "2021-09-10T06:20:20.000+00:00",
"updatedDate": "2021-09-10T06:20:20.000+00:00",
"stake": 40,
"payout": 15,
"productId": "SIMPLEPLAY",
"gameCode": "EG-SLOT-A044",
"gameName": "Bomber Squad",
"roundId": "4500085747728",
"betStatus": "SETTLED",
"payoutStatus": "LOSE"
}
]
}
}
GET {{ API_URL }}/seamless/betTransactionsV2?productId={{ productId }}&date={{ date }}&nextId={{ nextId }}
Note: there's a high chance of request timeout when using this variant. If there's a request timeout, please consider querying by range instead.
or
GET {{ API_URL }}/seamless/betTransactionsV2?productId={{ productId }}&startTime={{ startTime }}&endTime={{ endTime }}&nextId={{ nextId }}
Note: query range should not be greater than 1 hour. If there's a request timeout, please reduce query range.
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
date |
string | Optional | Date in format yyyy-MM-dd |
startTime |
string | Optional | Date-time in ISO 8601 format eg 2013-07-16T19:23:51Z |
endTime |
string | Optional | Date-time in ISO 8601 format eg 2013-07-16T19:23:51Z |
nextId |
string | Optional | Taken from previous chunk response, indicating the start of requesting chunk |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
QueryBetDataV2 | Required | Query bet data |
Query Bet Data V2
Property | Type | Required | Description |
---|---|---|---|
nextId |
string | Optional | Id indicating the start of next chunk (If not present it means there's no next chunk) |
txns |
Txn[] | Required | Payout status (LOSE, WIN, DRAW, UNKNOWN) |
Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction id |
betId |
string | Required | Unique bet id on each user |
username |
string | Required | Username |
currency |
string | Required | ISO 4217 currency code |
accountingDate |
string | Required | Settlement time |
updatedDate |
string | Required | Latest update time |
stake |
number | Required | Stake amount |
payout |
number | Required | Payout amount (including stake) |
productId |
string | Required | Product id |
gameCode |
string | Required | Game code |
gameName |
string | Required | Game name |
roundId |
string | Required | Round id |
betStatus |
string | Required | Bet status (OPEN, SETTLED, UNSETTLED, VOID) |
payoutStatus |
string | Required | Payout status (LOSE, WIN, DRAW, UNKNOWN) |
Query Replay POST
Important note: This API support only this common request Products. In the future, this will the main API to get replay bet-detail.
Request body:
{
"productId":"PGSOFT2",
"username":"testmocha00001",
"dataGetBetDetail": {
"betId":"1862415682197651968",
"walletType":"seamless"
}
}
JSON resposne example:
{
"reqId": "7ba79e9c-ebaf-4f06-bd73-d8648ec7f8d3",
"code": 0,
"message": "Success",
"data": {
"url": "https://ttt.worldcdn-mega.com/page/wallet/replay.jsp?platform=SEXYBCRT&gameType=LIVE&roundId=Mexico-705-GA25440063&path=https%3A%2F%2Fbfsiz6.bikimex.net%2Ftoken%2Fresult%2Freplay.jsp%3Ftoken%3D4i9oFD7dThHHWUNgOxt4BdyvpOsmfZg3vdQmJ0yvDxAYJsQHk%252BABwgJF1rezSA6dnjOsNoqMf9LA3G%252FEMkXUsWQmedAoq7iLO%252F1yrsQbTd%252Fntj4j8ZM2Sk8CHB0u8ME4sHewbWzt5C4D281OlohjBw%253D%253D%26lang%3Den%26reverseBPColor%3Dfalse",
"urls": ["https://xxx1", "https://xxx2", "https://xxx3"]
}
}
HTTP Request
POST {{ API_URL }}/seamless/betReplay
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Member username |
productId |
string | Required | Product ID (Ref. Products) Example : PGSOFT2 ) |
dataGetBetDetail |
object | Required | Bet detail data please see below for more description |
Data dataGetBetDetail
Property | Type | Required | Description |
---|---|---|---|
betId |
string | Required | Bet ID |
walletType |
string | Required | Wallet Type (seamless or transfer ) |
date |
string | Optional | ISO Time (You can skip this property if you don't know the exact date for this betId ) |
isJsonType |
boolean | Optional | Json Type, in case you need raw JSON for more custom Replay GUI (Now, support only SBO ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
QueryReplay | Required | Query replay data |
Query Replay GET
JSON response example:
{
"reqId": "7ba79e9c-ebaf-4f06-bd73-d8648ec7f8d3",
"code": 0,
"message": "Success",
"data": {
"url": "https://ttt.worldcdn-mega.com/page/wallet/replay.jsp?platform=SEXYBCRT&gameType=LIVE&roundId=Mexico-705-GA25440063&path=https%3A%2F%2Fbfsiz6.bikimex.net%2Ftoken%2Fresult%2Freplay.jsp%3Ftoken%3D4i9oFD7dThHHWUNgOxt4BdyvpOsmfZg3vdQmJ0yvDxAYJsQHk%252BABwgJF1rezSA6dnjOsNoqMf9LA3G%252FEMkXUsWQmedAoq7iLO%252F1yrsQbTd%252Fntj4j8ZM2Sk8CHB0u8ME4sHewbWzt5C4D281OlohjBw%253D%253D%26lang%3Den%26reverseBPColor%3Dfalse"
}
}
GET {{ API_URL }}/seamless/betTransactionReplay?productId={{ productId }}&username={{ username }}&betId={{ betId }}&parentBetId={{ parentBetId }}&gameCode={{ gameCode }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SEXY ) |
betId |
string | Required | Bet ID |
username |
string | Required | Member username |
parentBetId |
string | Optional | Parent bet ID, if productId: PGSOFT2 this field is required and you need to send roundId (in format xxxx-xxxx-106-0) |
gameCode |
string | Optional | Parent bet ID, if productId: PGSOFT2 this field is required and you need to send gameCode (in format lucky-neko ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Unique reference for each request |
code |
number | Required | Response status |
message |
string | Required | Additional information on response status |
data |
QueryReplay | Required | Query replay data |
Query Replay
Property | Type | Required | Description |
---|---|---|---|
url |
string | Required | Replay url |
Note
Products not have Replay
Product ID | Product Name |
---|---|
SIMPLEPLAY | Simple Play |
AGGAME | Asia Gaming AG |
EVOPLAY | Evoplay |
ALLBET | Allbet |
REDTIGER | Red Tiger |
NETENT | Netent |
NOLIMIT | Nolimit City |
GOLDY | Goldy |
Get BetLimits GET
GET
Optional
Get bet limit (Live casino only).
JSON response example:
{
"reqId": "395e9c4d-be1f-403d-b58a-e3e1ce4b7250",
"code": 0,
"message": "Success",
"data": [
{
"productId": "PRETTY",
"BetLimit": [
{
"limit": 1,
"Min": 5,
"Max": 2000
},
{
"limit": 2,
"Min": 50,
"Max": 5000
},
{
"limit": 3,
"Min": 100,
"Max": 20000
}
]
}
]
}
HTTP Request
GET {{ API_URL }}/seamless/betLimitsV2?productId={{ productId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : SAGAME ) |
Verify Deposit/Withdraw Fishing game type transaction POST
Optional
For product SLOTXO
or JOKER
only.
This API is neccessary if you need to verify the transaction when user playing Fishing game type.
JSON example request:
{
"username": "foobar",
"transactionId": "xe6ns1mycwwwh_xe6gxumgykk3e_795913499644948991"
}
JSON example response:
/* Verified success transaction */
{
"code": 0,
"message": "Success",
"data": [
{
"id": "xe6ns1mycwwwh_xe6gxumgykk3e_795913499644948991",
"time": "2021-08-05T15:16:03.982",
"amount": 500,
"type": "TopUp",
"username": "foobar"
}
]
}
/* Verified failed transaction */
{
"code": 1,
"message": "Can't verify transaction id: xe6ns1mycwwwh_xe6gxumgykk3e_795913499644948991",
"data": null
}
HTTP Request (For SLOTXO
product)
POST {{ API_URL }}/xo_seamless/verify-topup
HTTP Request (For JOKER
product)
POST {{ API_URL }}/joker_seamless/verify-topup
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Player username |
transactionId |
string | Required | Transaction id that your system got from callback /deposit or /withdraw on product SLOTXO /JOKER |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
[ object ] or null |
Required | An array of transaction data description (See more below). null value if verify failed or an error occur |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction id (This should be the same id with your input) |
time |
string | Required | Time when transaction generated (ISO format) |
amount |
number | Required | Transaction amount (This amount can be negative number when the type is Withdraw ) |
type |
string | Required | Type of transactionTopUp : Deposit credit to SLOTXO or JOKER systemWithdraw : Withdraw credit back to player |
username |
string | Required | Player username |
Check player status
Optional
This APIs use to check ACTIVE
/INACTIVE
status of player.
JSON example request:
{
"productId": "PGSOFT2",
"username": "foobar"
}
JSON example response:
{
"reqId": "05e287a6-00a9-4558-9bb2-2e422494ef22",
"code": 0,
"message": "Success",
"data": {
"status": "ACTIVE",
"username": "foobar"
}
}
HTTP Request
GET {{ API_URL }}/seamless/checkPlayerStatus?productId={{ productId }}&username={{ username }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Player username |
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Request ID for each request. |
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
object | Required | An array of transaction data description (See more below). |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
status |
string | Required | status description, for example: ACTIVE |
username |
string | Required | Player username |
Check player online status
Optional
This APIs use to check ONLINE
/OFFLINE
status of player.
JSON example request:
{
"productId": "PGSOFT2",
"username": "foobar"
}
JSON example response:
{
"reqId": "05e287a6-00a9-4558-9bb2-2e422494ef22",
"code": 0,
"message": "Success",
"data": {
"status": "ACTIVE",
"username": "foobar"
}
}
HTTP Request
GET {{ API_URL }}/seamless/checkOnlineStatus?productId={{ productId }}&username={{ username }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Player username |
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Request ID for each request. |
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
object | Required | An array of transaction data description (See more below). |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
status |
string | Required | online/offline status description, for example: ACTIVE |
username |
string | Required | Player username |
Get players online list
Optional
This APIs use to check ONLINE
(playing) players under your agent.
JSON example request:
{
"productId": "PGSOFT2"
}
JSON example response:
{
"reqId": "d3921d76-0488-4ca1-b65d-0093f410ea63",
"code": 0,
"message": "Success",
"data": {
"users": ["foobar", "barfoo"]
}
}
HTTP Request
GET {{ API_URL }}/seamless/checkOnlinePlayerList?productId={{ productId }}
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Request ID for each request. |
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
object | Required | An array of transaction data description (See more below). |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
users |
string[] | Required | Online players list |
Kick out player
Optional
This APIs use to kick an ONLINE
player under your agent. If you use this API, the player were kicked out from game temporary.
JSON example request:
{
"productId": "PGSOFT2",
"username": "foobar"
}
JSON example response:
{
"reqId": "05e287a6-00a9-4558-9bb2-2e422494ef22",
"code": 0,
"message": "Success",
"data": {
"status": "SUCCESS",
"username": "foobar"
}
}
HTTP Request
POST {{ API_URL }}/seamless/kickOutPlayer
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Player username |
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Request ID for each request. |
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
object | Required | An array of transaction data description (See more below). |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
status |
string | Required | Success status description, for example: SUCCESS |
username |
string | Required | Player username |
Suspend out player
Optional
This APIs use to suspend player under your agent. If you use this API, the player were suspended from provider system.
JSON example request:
{
"productId": "PGSOFT2",
"username": "foobar"
}
JSON example response:
{
"reqId": "05e287a6-00a9-4558-9bb2-2e422494ef22",
"code": 0,
"message": "Success",
"data": {
"status": "SUCCESS",
"username": "foobar"
}
}
HTTP Request
GET {{ API_URL }}/seamless/suspendPlayer
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Player username |
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Request ID for each request. |
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
object | Required | An array of transaction data description (See more below). |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
status |
string | Required | Success status description, for example: SUCCESS |
username |
string | Required | Player username |
Resume out player
Optional
This APIs use to resume suspended status for player under your agent. If you use this API, the player's status will back to ACTIVE
and can access the provider system.
JSON example request:
{
"productId": "PGSOFT2",
"username": "foobar"
}
JSON example response:
{
"reqId": "05e287a6-00a9-4558-9bb2-2e422494ef22",
"code": 0,
"message": "Success",
"data": {
"status": "SUCCESS",
"username": "foobar"
}
}
HTTP Request
GET {{ API_URL }}/seamless/resumePlayer
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Player username |
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Request ID for each request. |
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
object | Required | An array of transaction data description (See more below). |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
status |
string | Required | Success status description, for example: SUCCESS |
username |
string | Required | Player username |
Freegame
Optional
This APIs use give a freegame to player under operator.
Note: The operator must take full responsibility for this bet themselves.
JSON example request:
{
"player_name": "foobar",
"free_game_name": "happy day",
"expired_date": 24,
"game_count": 30,
"bet_amount": 100,
"game_ids": "87",
"productId": "PGSOFT2"
}
JSON example response:
{
"reqId": "05e287a6-00a9-4558-9bb2-2e422494ef22",
"code": 0,
"message": "Success",
"data": {
"freeGameId": 888
}
}
HTTP Request
POST {{ API_URL }}/seamless/free-game
Authorization
Authorization: Basic Base64({{ agent_username }}:{{ x-api-key }})
Content Type
Type: application/json
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
player_name |
string | Required | Player username |
free_game_name |
string | Required | Freegame name |
expired_date |
int | Required | number of expire date for freegame unit is hour |
bet_amount |
int | Required | amount of freegame |
game_count |
int | Required | count of freegame |
game_ids |
string | Required | gameid of freegame |
productId |
string | Required | Product ID (Ref. Product List) (Example : PGSOFT2 ) |
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
reqId |
string | Required | Request ID for each request. |
code |
number | Required | Code status0 : success1 : failed. |
message |
string | Required | Message description |
data |
object | Required | An array of transaction data description (See more below). |
Response data
parameter description
Property | Type | Required | Description |
---|---|---|---|
freeGameId |
string | Required | freegameId from provider |
Product Callbacks
Request common flows
This new callback common flow, we simplifies callbacks from provider and standardize it to our own understandable. Please check the following support products.
Products to support Common
Games Slot
Product ID | Product Name |
---|---|
LIVE22 | Live22 |
ROYAL | Royal Slot Gaming |
SLOTXO | Slotxo |
JOKER | Joker123 |
PLAYNGO | Play'n Go |
AMBGAMING | AMB Gaming |
FACHAI | Fachai |
AFB1188_SLOT | AFB1188 (Slot) |
CQ9 | CQ9 (Slot) |
YGR | YGR |
MANNA | Mannaplay |
SEXY_SLOT | Sexy Slot |
PRAGMATIC_SLOT | Pragmatic Play (Slot) |
OCTOPLAY | Octoplay |
RTGSLOT | Real Time Gaming |
MICRO | Micro Gaming (Slot) |
UPG | UPG slot |
ASKMESLOT | Askmeslot |
SPADE | Spade Gaming |
RELAX | Relax Gaming |
I8 | I8 |
EVOPLAY | Evoplay |
YGGDRASIL | Yggdrasil |
AMEBA | Ameba |
CG | Creative Gaming |
ASKMEBET | Askmebet |
5G_GAMES | 5G Games |
ACE333 | Ace333 |
RICH88 | Rich88 |
NETENT | Netent |
REDTIGER | Redtiger |
SIMPLEPLAY | Simple Play |
HACKSAW | Hacksaw |
ASKMEPLAY | Askmeplay |
GIOCO | Gioco Plus |
WMSLOT | WMSlot |
NOLIMIT | Nolimit City |
NEXTSPIN | Nextspin |
DRAGONGAMING | Dragon Gaming |
ADVANT | Advant Play |
GOLDY | Goldy |
BOOMING | Booming |
OCTOPLAY | Octoplay |
759GAMING | 759 Gaming |
FUNKY | Funky Game |
Live Casino
Product ID | Product Name |
---|---|
SAGAME | SA Gaming |
AFB1188_LIVECASINO | AFB1188 (Live Casino) |
DREAM | Dream Gaming |
PRAGMATIC_LIVECASINO | Pragmatic Play (Live Casino) |
CQ9_LIVECASINO | Motivation |
WM | WM Casino |
MICRO_LIVECASINO | Micro gaming (Live Casino) |
ALLBET | Allbet |
SEXY | Sexy Gaming |
PRETTY | Pretty Gaming |
WECASINO | WE Casino |
AGGAME | Asia Gaming |
BIGGAME | Big Gaming |
YEEBET | Yeebet |
Sportbook
Product ID | Product Name |
---|---|
LALIKA | Lalika |
AFB1188 | AFB1188 (Sportbook) |
VIRTUAL_SPORT | Virtual Sportbook |
COCKFIGHT | Cockfight |
AMBSPORTBOOK | AMB Sportbook |
SABASPORTS | SABASPORTS |
UMBET | UM Bet |
Game Card
Product ID | Product Name |
---|---|
KINGMAKER | King Maker |
AMBPOKER | Ambpoker |
MIKIWORLD | Miki Worlds |
Check Balance POST
Get latest balance from member.
Request Body
{
"id": "2989ccc8-aae3-4ff4-803c-47de52f7c4d5",
"currency": "THB",
"productId": "{{ ProductID }}",
"timestampMillis": 1712641926000,
"username": "foobar",
"gameCode": "3300",
"sessionToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
}
JSON response example:
{
"id": "2989ccc8-aae3-4ff4-803c-47de52f7c4d5",
"statusCode": 0,
"timestampMillis": 1712641927000,
"productId": "{{ ProductID }}",
"currency": "THB",
"balance": 10000,
"username": "foobar"
}
HTTP Request
POST {{ API_URL }}/checkBalance
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id (Unique value) |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
gameCode |
string | Optional | Game code that input from /logIn API (Depend on provider, sometimes this property didn't sent from provider site). |
sessionToken |
string | Optional | Session token that your system sent when call /logIn (Depend on provider, sometimes this property didn't sent from provider site) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Response ID (No need to response the same request ID) |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balance |
number | Required | Player's current balance |
username |
string | Required | User id on agent system |
Place Bets POST
When player play or place bet on the Game GUI, system will sent this request to your system callback url (That you set on the Backoffice site) You have to check player's balance. If they have enough balance, please deduct their balance and response success to our system to continue the game flow.
Request Body
{
"id": "6849b62b-2b52-472a-88a4-c26c3371a62a",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1712760660000,
"txns": [
{
"id": "T-001",
"txnId": "T-001",
"gameCode": "10300",
"status": "OPEN",
"roundId": "R-0001",
"betAmount": 200,
"playInfo": "Golden Coyote",
"isFeature": false,
"isFeatureBuy": false,
"skipBalanceUpdate": false
}
]
}
JSON response example:
{
"id": "279478c1-c870-407e-91be-b70bf6a623f9",
"statusCode": 0,
"timestampMillis": 1712760660100,
"productId": "{{ ProductID }}",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 9800,
"username": "foobar"
}
HTTP Request
POST {{ API_URL }}/placeBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction id on agent system |
Place Bet transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (Usually OPEN or WAITING (if game is SPORT type)) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the player was chosen. If Live-casino game this should be the position that player wager on that round if system can identified the position (e.g. player , banker ). Other games, the value should be the game name, if we can't identified game name or game code, we will send 'UNKNOWN' into this value. |
isFeature |
boolean | Required | The value indicates request is feature spin/game from provider. |
If isFeature: true possibly coming with betAmount: 0 (default value: false ) |
|||
isFeatureBuy |
boolean | Required | The value indicates request is "buying" feature spin/game from provider. (default value: false ) |
skipBalanceUpdate |
boolean | Required | Flag indicating whether a round is this transaction need to update user's balance or not true : Don't update user's balancefalse : Update user's balance with betAmount or payoutAmount . |
Usually occur in SPORT game type, when provider considering the player's wagering on the game. |
|||
(default value: false ) |
|||
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Response ID (No need to response the same request ID) |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before bet |
balanceAfter |
number | Required | Player's balance after bet |
username |
string | Required | User id on agent system |
Settle Bets POST
This request usually sent to your system after /placeBets
was called and response success. SuperAPI sent the round result.
You can check the payoutAmount
and increase the player's balance after that please response success to our system to allow player play in a next round.
Some product (e.g. PGSOFT2
, etc) has only this request to complete the round, the round do not start by /placeBets
we will sent
both betAmount
and payoutAmount
to your system. You have to check player's balance by betAmount
first. If they have enough balance to player, check the payoutAmount
to identified is player win or lose (normally, if betAmount
> 0 and payoutAmount
> betAmount
, the player is win)
Request Body
{
"id": "26cf1ce1-8ee1-4bbf-9d42-872631054bcf",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1712767012000,
"txns": [
{
"id": "T-002",
"txnId": "T-002",
"status": "SETTLED",
"roundId": "R-0001",
"betAmount": 0,
"turnOver": 0,
"payoutAmount": 5000,
"gameCode": "10300",
"playInfo": "Golden Coyote",
"isEndRound": true,
"isSingleState": false,
"isFeature": false,
"isFeatureBuy": false,
"skipBalanceUpdate": false,
"transactionType": "BY_ROUND"
}
]
}
JSON response example:
{
"id": "37e10565-ca3f-4367-b3ad-c6aa2f01ffd0",
"statusCode": 0,
"productId": "{{ Product ID }}",
"timestampMillis": 1712767012100,
"username": "foobar",
"currency": "THB",
"balanceBefore": 9800,
"balanceAfter": 14800
}
HTTP Request
POST {{ API_URL }}/settleBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Settle Bet transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (Always SETTLED ) |
roundId |
string | Required | Round ID |
betAmount |
number | Required | Stake amount (Sometimes this value equal to 0 because we can't identify the betAmount from /placeBets request) |
payoutAmount |
number | Required | Payout amount (stake + win amount) |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the player was chosen. If Live-casino game this should be the position that player wager on that round if system can identified the position (e.g. player , banker ). Other games, the value should be the game name, if we can't identified game name or game code, we will send 'UNKNOWN' into this value. |
turnOver |
number | Optional | Turn over for each round, if system can identify turn-over this value should not be 0 (Default value is 0 ) |
isEndRound |
boolean | Required | Value indicates whether a round is end round or not (The default value is false ) |
isSingleState |
boolean | Required | Value indicates whether the round for this request is end in single /settleBets request (No /placeBets , it's mean the round has no OPEN status) Product |
transactionType |
string | Required | The value that indicate transaction action, have 2 values: |
1. BY_TRANSACTION : This type, you have to consider the action is a transaction-level. |
|||
Find the transaction inside your data storage using id and action only found transaction. |
|||
2. BY_ROUND : This type, you have to consider the action is a round-level. |
|||
Find entire transactions that belongs to roundId and actions all transactions at once. |
|||
isFeature |
boolean | Required | The value indicates request is feature spin/game from provider. |
If isFeature: true possibly coming with betAmount: 0 (default value: false ) |
|||
isFeatureBuy |
boolean | Required | The value indicates request is "buying" feature spin/game from provider. (default value: false ) |
skipBalanceUpdate |
boolean | Required | Flag indicating whether a round is this transaction need to update user's balance or not true : Don't update user's balancefalse : Update user's balance with betAmount or payoutAmount . |
Usually occur in SPORT game type, when provider considering the player's wagering on the game. |
|||
(default value: false ) |
|||
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) if transactionType: BY_ROUND sometimes the value will be the same as roundId . |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request ID |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product ID associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before settle |
balanceAfter |
number | Required | Player's balance after settle |
username |
string | Required | User id on agent system |
Product Single State
Product ID | Product Name |
---|---|
PGSOFT2 | PG Soft |
BOOMING | Booming |
GIOCO | Gioco Plus |
I8 | I8 |
AFB1188_SLOT | AFB1188 (Slot) |
FACHAI | Fachai |
759GAMING | 759 Gaming |
ASKMEBET | Askmebet |
Cancel Bets POST
Provider will send the user's cancel information when bet have a problem or timeout.
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1712767745000,
"txns": [
{
"id": "R-0001",
"status": "REFUND",
"roundId": "R-0001",
"txnId": "R-0001",
"betAmount": 200,
"gameCode": "10300",
"playInfo": "Golden Coyote",
"transactionType": "BY_ROUND"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1712767745100,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 14800,
"balanceAfter": 10000,
"username": "foobar"
}
HTTP Request
POST {{ API_URL }}/cancelBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request ID |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product ID associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User ID on agent system |
txns |
Txn[] | Required | Transaction Id |
Cancel Bet transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (Should be an either REFUND or REJECT ) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount, you can use this value to refund to your player's balance. |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the player was chosen. If Live-casino game this should be the position that player wager on that round if system can identified the position (e.g. player , banker ). Other games, the value should be the game name, if we can't identified game name or game code, we will send 'UNKNOWN' into this value. |
transactionType |
string | Required | The value that indicate transaction action, have 2 values: |
1. BY_TRANSACTION : This type, you have to consider the action is a transaction-level. |
|||
Find the transaction inside your data storage using id and action only found transaction. |
|||
2. BY_ROUND : This type, you have to consider the action is a round-level. |
|||
Find entire transactions that belongs to roundId and actions all transactions at once. |
|||
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before cancel |
balanceAfter |
number | Required | Player's balance after cancel |
username |
string | Required | User id on agent system |
Adjust Bets POST
Sometimes the provider need to adjust the wagered amount. If you got this request, you can use the value inside the body to adjust player's balance.
Adjust bet = (Member Balance + Old Bet Amount) - New Bet Amount
Start Balance = 10000
Bet Amount = 10
Balance = 9990
Adjust Bet = 20
Balance = 9980
calculate Balance = 9990 + 10 - 20
Request Body
{
"id": "2a561272-df13-4c1e-99d4-06eb7f061fe2",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1724047571704,
"txns": [
{
"id": "285110bjm7rjvo",
"status": "OPEN",
"roundId": "2rj3byk76ks4yn",
"betAmount": 20,
"gameCode": "d5qfgs4amfxf6",
"playInfo": "Respin Mania"
}
]
}
JSON Response Body
{
"id": "eb62c4bf-32e4-402e-8dc0-a714456bb904",
"statusCode": 0,
"productId": "{{ Product ID }}",
"timestampMillis": 1712768088100,
"username": "foobar",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 9980
}
HTTP Request
POST {{ API_URL }}/adjustBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Adjust Bet transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (Always OPEN ) |
roundId |
string | Required | Round id |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the player was chosen. If Live-casino game this should be the position that player wager on that round if system can identified the position (e.g. player , banker ). Other games, the value should be the game name, if we can't identified game name or game code, we will send 'UNKNOWN' into this value. |
betAmount |
number | Required | The value that system need to adjust the wagering amount. |
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle |
username |
string | Required | User id on agent system |
Rollback POST
This request will be sent if the provider need to change the result of the ended round.
You have to roll the state of the round status to running again. However, this can action both REFUND
and SETTLED
status.
When the previous status is REFUND
you have to roll the canceled round to running again by reduced the balance that refunded.
When the previous status is SETTLED
you have to roll the ended round to running again by reduced the balance that already win/lose.
Request Body
{
"id": "e75db240-d519-44dd-8e37-d68ec1c6f9b2",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1645775403311,
"txns": [
{
"id": "9621055643135717",
"txnId": "9621055643135717",
"status": "ROLLBACK",
"roundId": "962105564",
"gameCode": "BB001",
"playInfo": "Player 1 Double",
"payoutAmount": 100,
"betAmount": 0,
"transactionType": "BY_ROUND"
}
]
}
JSON response example:
{
"id": "e75db240-d519-44dd-8e37-d68ec1c6f9b2",
"statusCode": 0,
"productId": "{{ Product ID }}",
"timestampMillis": 1645775403663,
"username": "foobar",
"currency": "THB",
"balanceBefore": 9997.5,
"balanceAfter": 9897.5
}
HTTP Request
POST {{ API_URL }}/rollback
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Rollback transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet ID |
status |
string | Required | Bet status (Will be ROLLBACK) |
roundId |
string | Required | Round id |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the player was chosen. If Live-casino game this should be the position that player wager on that round if system can identified the position (e.g. player , banker ). Other games, the value should be the game name, if we can't identified game name or game code, we will send 'UNKNOWN' into this value. |
payoutAmount |
number | Required | The amount that round need to rollback, use this value to update balance if previous status is SETTLED , player's balance will be reduced. |
betAmount |
number | Required | The amount that round need to rollback, use this value to update balance if previous status is REFUND , player's balance will be reduced. |
transactionType |
string | Required | The value that indicate transaction action, have 2 values: |
1. BY_TRANSACTION : This type, you have to consider the action is a transaction-level. |
|||
Find the transaction inside your data storage using id and action only found transaction. |
|||
2. BY_ROUND : This type, you have to consider the action is a round-level. |
|||
Find entire transactions that belongs to roundId and actions all transactions at once. |
|||
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle (deduct from payoutAmount - betAmount of previous settle request) |
username |
string | Required | User id on agent system |
Win Rewards POST
When provider has some event and their need to sent the reward (Jackpot or Bonus) this request will be called.
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "e723b240-d519-44dd-8e37-d6823c6f9b2",
"txnId": "Txn-001",
"status": "SETTLED",
"roundId": "R-0909",
"payoutAmount": 1000,
"gameCode": "MX-LIVE-001",
"playInfo": "Banker"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542821,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 8600,
"balanceAfter": 9600,
"username": "foobar"
}
HTTP Request
POST {{ API_URL }}/winRewards
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transactions |
Win Rewards transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
status |
string | Required | Bet status (Should always be SETTLED) |
roundId |
string | Required | Round id |
payoutAmount |
number | Required | Win amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the player was chosen. If Live-casino game this should be the position that player wager on that round if system can identified the position (e.g. player , banker ). Other games, the value should be the game name, if we can't identified game name or game code, we will send 'UNKNOWN' into this value. |
betAmount |
number | Optional | Stake amount. |
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before get rewards |
balanceAfter |
number | Required | Player's balance after get rewards |
username |
string | Required | User id on agent system |
Pay Tips POST
This request will be sent if player tips game provider (usually tips dealer in live-casino game). This callback is an optional callbacks, some product has this callback. Ex. Pretty gaming.
Request Body
{
"id": "26cf1ce1-8ee1-4bbf-9d42-872631054bcf",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1712767012000,
"txns": [
{
"id": "Tip-001",
"txnId": "Tip-001",
"status": "TIPS",
"roundId": "Tip-R-0001",
"betAmount": 1000
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542878,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 9000,
"username": "foobar"
}
HTTP Request
POST {{ API_URL }}/placeTips
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id |
Pay Tips transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (Always TIPS ) |
roundId |
string | Required | Round ID |
betAmount |
number | Required | Stake amount (Sometimes this value is 0 due to no information from provider) |
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) if transactionType: BY_ROUND sometimes the value will be the same as roundId . |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before cancel |
balanceAfter |
number | Required | Player's balance after cancel |
username |
string | Required | User id on agent system |
Cancel Tips POST
Request Body
{
"id": "26cf1ce1-8ee1-4bbf-9d42-872631054bcf",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1712767012000,
"txns": [
{
"id": "Tip-001",
"status": "REFUND",
"roundId": "Tip-R-0001",
"betAmount": 1000
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542878,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 8600,
"balanceAfter": 8700,
"username": "testProduct1"
}
HTTP Request
POST {{ API_URL }}/cancelTips
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id |
Cancel Tips transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
status |
string | Required | Bet status (Should always be REFUND) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) if transactionType: BY_ROUND sometimes the value will be the same as roundId . |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before cancel |
balanceAfter |
number | Required | Player's balance after cancel |
username |
string | Required | User id on agent system |
Void Settle POST
Instead of cancel, sometimes provider use VOID
as a cancel. This mean the round will be completely canceled, usually not revoke the round again.
For this request, you have to increase player's balance with betAmount
- payoutAmount
.
For example:
If player's initial balance is 1000.00
- Player bet
100.00
into the game. So, balance equal900.00
- Player win
500.00
into the game. So, balance equal1400.00
- Game provider need to void the above round, our system will send
betAmount: 100.00
andpayoutAmount: 500.00
- Your system have to update balance
1400.00 + (100.00 - 500.00)
(Player balance + (betAmount - payoutAmount)), So final balance must equal1000.00
In the end of the/voidSettled
, player's balance must equal1000.00
like the initial balance.
HTTP Request
POST {{ API_URL }}/voidSettled
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "VB-T-001",
"txnId": "VB-T-001",
"status": "VOID",
"roundId": "R-001",
"betAmount": 100,
"payoutAmount": 1000,
"gameCode": "108",
"playInfo": "Magic Lamp",
"transactionType": "BY_ROUND"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542821,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 9100,
"username": "foobar"
}
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Void settle transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet ID |
status |
string | Required | Bet status (always VOID ) |
roundId |
string | Required | Round ID |
betAmount |
number | Required | Stake amount (Use this value to increase player's balance) |
payoutAmount |
number | Required | Payout amount (Use this value to decrease player's balance) |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the player was chosen. If Live-casino game this should be the position that player wager on that round if system can identified the position (e.g. player , banker ). Other games, the value should be the game name, if we can't identified game name or game code, we will send 'UNKNOWN' into this value. |
transactionType |
string | Required | The value that indicate transaction action, have 2 values: |
1. BY_TRANSACTION : This type, you have to consider the action is a transaction-level. |
|||
Find the transaction inside your data storage using id and action only found transaction. |
|||
2. BY_ROUND : This type, you have to consider the action is a round-level. |
|||
Find entire transactions that belongs to roundId and actions all transactions at once. |
|||
txnId |
string | Optional | Transaction ID (Usually send the same value as id ) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle (deduct from payoutAmount - betAmount of previous settle request) |
username |
string | Required | User id on agent system |
Adjust balance POST
In a game that have to deposit/withdraw credit before play the game (e.g. Fishing type). We uses this callback to operates an action.
Please carefully check the refId
as a duplicates reference. Sometimes this callback can call to your side concurrenry, you have to check player's balance before send the success to our system.
HTTP Request
POST {{ API_URL }}/adjustBalance
Request Body
{
"id": "46a0a0da-22c9-4016-94bd-d80ab6d97026",
"productId": "{{ Product ID }}",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"refId": "e7de2c76-f534-473d-b8fb-f5c901a3c582",
"status": "DEBIT",
"amount": 1500
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542821,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 8500,
"username": "foobar"
}
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Adjust balance transaction parameters (txns
)
Property | Type | Required | Description |
---|---|---|---|
refId |
string | Required | Transaction reference ID |
status |
string | Required | Adjust status, have 2 values: |
1. DEBIT : You have to deduct player's balance. |
|||
2. CREDIT : You have to increase player's balance. |
|||
amount |
number | Required | Balance amount to calculate the player's balance. |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle (deduct from payoutAmount - betAmount of previous settle request) |
username |
string | Required | User id on agent system |
Status Code and Common failed resposne format
You can use these status-codes and format in case of you need to response failed back to our side. This status code and failed response format can use in every callbacks.
JSON response fail example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 10001,
"productId": "{{ Product ID }}",
"timestampMillis": 1631599542878,
"balance": 1000.0
}
Common error response's parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
balance |
number | Required | Player's balance when error occur. |
Code | Description |
---|---|
0 | Success |
10001 | User not found |
10002 | User has insufficient balance to proceed |
20001 | Transaction not found |
20002 | Transaction duplicate |
30001 | Invalid token |
40003 | Forbidden request |
50001 | Internal server error |
Request Common
Products to support Common
Product ID | Product Name |
---|---|
PGSOFT2 |
PGSoft |
NINJA |
Ninja slot |
918KISS |
918Kiss |
SBO |
Sbobet |
BETGAME |
Betgames TV |
WAZDAN |
Wazdan |
FUNTA |
Funta |
BOOONGO |
Booongo |
KAGAME |
KA Gaming |
PARLAYBAY |
Parlaybay |
Common Check Balance POST
Get latest balance from member.
Request Body
{
"id": "58f0a8b2-0e60-4bf8-9eee-b7528917c01b",
"timestampMillis": 1631120940430,
"productId": "{{ Product ID }}",
"currency": "THB",
"username": "testProduct1",
"sessionToken": "d4be70d1-349f-4fc1-a955-35d2a4bff244"
}
JSON response example:
{
"id": "58f0a8b2-0e60-4bf8-9eee-b7528917c01b",
"statusCode": 0,
"timestampMillis": 1631120940530,
"productId": "{{ Product ID }}",
"currency": "THB",
"balance": 10000,
"username": "testProduct1"
}
HTTP Request
POST {{ API_URL }}/checkBalance
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
sessionToken |
string | Optional | Session token that your system sent when call /logIn (Depend on provider, sometimes this property didn't sent from provider site) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balance |
number | Required | Player's current balance |
username |
string | Required | User id on agent system |
Common Place Bets POST
When player play or place bet on the Game GUI, system will sent this request to your system callback url (That you set on the Backoffice site) You have to check player's balance. If they have enough balance, please deduct their balance and response success to our system to continue the game flow.
Request Body
{
"id": "279478c1-c870-407e-91be-b70bf6a623f9",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1631514418044,
"txns": [
{
"id": "fcb2ba36-4dd9-4a7f-84ae-9ee997bf6667",
"status": "OPEN",
"roundId": "01138QI30537E4",
"betAmount": 100,
"txnId": "fcb2ba36-4dd9-4a7f-84ae-9ee997bf6667",
"gameCode": "B001",
"playInfo": "Binary",
"isEndround": false
}
]
}
JSON response example:
{
"id": "279478c1-c870-407e-91be-b70bf6a623f9",
"statusCode": 0,
"timestampMillis": 1631514418144,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 9900,
"username": "testProduct1"
}
HTTP Request
POST {{ API_URL }}/placeBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction id on agent system |
Common Place Bet Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (OPEN or sometimes WAITING in sport type) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
txnId |
string | Required | Transaction ID (Useally send the same id) |
isEndRound |
boolean | Optional | Flag indicating whether a round is end round or not |
skipBalanceUpdate |
boolean | Optional | Flag indicating whether a round is this transaction need to update user's balance or not true : Don't update user's balancefalse : Update user's balance with betAmount or payoutAmount |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before bet |
balanceAfter |
number | Required | Player's balance after bet |
username |
string | Required | User id on agent system |
Common Settle Bets POST
This request usually sent to your system after /placeBets
was called and response success. SuperAPI sent the round result.
You can check the payoutAmount
and increase the player's balance after that please response success to our system to allow player play in a next round.
Some product (e.g. PGSOFT2
, etc) has only this request to complete the round, the round do not start by /placeBets
we will sent
both betAmount
and payoutAmount
to your system. You have to check player's balance by betAmount
first. If they have enough balance to player, check the payoutAmount
to identified is player win or lose (normally, if betAmount
> 0 and payoutAmount
> betAmount
, the player is win)
Request Body
{
"id": "f764e781-1b18-417b-ae3f-388b88c41352",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1645774809145,
"txns": [
{
"id": "279478c1-c870-407e-91be-b70bf6a62332",
"status": "SETTLED",
"roundId": "01138QI30537E4",
"txnId": "279478c1-c870-407e-91be-b70bf6a62332",
"betAmount": 0,
"payoutAmount": 10,
"gameCode": "B001",
"playInfo": "Binary",
"isEndRound": true
}
]
}
JSON response example:
{
"id": "f764e781-1b18-417b-ae3f-388b88c41352",
"statusCode": 0,
"productId": "{{ Product ID }}",
"timestampMillis": 1645774809605,
"username": "testProduct1",
"currency": "THB",
"balanceBefore": 9900,
"balanceAfter": 9910
}
HTTP Request
POST {{ API_URL }}/settleBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Common Settle Bet Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (Will be SETTLED) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
payoutAmount |
number | Required | Payout amount (stake + win amount) |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
txnId |
string | Required | Transaction ID (Useally send the same id) |
turnOver |
number | Optional | TurnOver (Send the same bet amount) |
isEndRound |
boolean | Optional | Flag indicating whether a round is end round or not |
isFeature |
boolean | Optional | Flag indicating whether a round is feature (free-spin/bonus) round or not |
isFeatureBuy |
boolean | Optional | Flag indicating whether a round is feature buy (free-spin/bonus) round or not |
skipBalanceUpdate |
boolean | Optional | Flag indicating whether a round is this transaction need to update user's balance or not true : Don't update user's balancefalse : Update user's balance with betAmount or payoutAmount |
Data GetBetDetail
Property | Type | Required | Description |
---|---|---|---|
betId |
string | Required | Bet ID |
date |
string | Required | Datetime String ISO Format |
walletType |
string | Required | Wallet Type |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before settle |
balanceAfter |
number | Required | Player's balance after settle |
username |
string | Required | User id on agent system |
Common Cancel Bets POST
Provider will send the user's cancel information when bet have an problem or timeout.
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "fcb2ba36-4dd9-4a7f-84ae-9ee322bf6667",
"status": "REFUND",
"roundId": "01138QI30537E4",
"txnId": "fcb2ba36-4dd9-4a7f-84ae-9ee322bf6667",
"betAmount": 100,
"gameCode": "B001",
"playInfo": "Binary"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542878,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 9910,
"balanceAfter": 10010,
"username": "testProduct1"
}
HTTP Request
POST {{ API_URL }}/cancelBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id |
Common Cancel Bet Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status (Should always be REFUND) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
txnId |
string | Required | Transaction ID (Useally send the same id) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the response Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before cancel |
balanceAfter |
number | Required | Player's balance after cancel |
username |
string | Required | User id on agent system |
Common Adjust Bets POST
Sometimes the provider need to adjust the wagered amount. If you got this request, you can use the value inside the body to adjust player's balance.
Adjust bet = (Member Balance + Old Bet Amount) - New Bet Amount
Start Balance = 10000
Bet Amount = 10
Balance = 9990
Adjust Bet = 20
Balance = 9980
calculate Balance = 9990 + 10 - 20
Request Body
{
"id": "eb62c4bf-32e4-402e-8dc0-a714456bb904",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1645793496380,
"txns": [
{
"id": "8267374961748311",
"status": "OPEN",
"roundId": "826737496",
"betAmount": 10,
"gameCode": "B001",
"playInfo": "Binary",
"txnId": "8267374961748311"
}
]
}
JSON Response Body
{
"id": "eb62c4bf-32e4-402e-8dc0-a714456bb904",
"statusCode": 0,
"productId": "{{ Product ID }}",
"timestampMillis": 1645793496739,
"username": "testProduct1",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 9990
}
Request Body
{
"id": "3c0e61ab-98f7-46f6-9e8d-b6bf12df2fac",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1645793516204,
"txns": [
{
"id": "8267374961748311",
"status": "OPEN",
"roundId": "826737496",
"betAmount": 20,
"gameCode": "B001",
"playInfo": "Player",
"txnId": "8267374961748311"
}
]
}
JSON response example:
{
"id": "3c0e61ab-98f7-46f6-9e8d-b6bf12df2fac",
"statusCode": 0,
"productId": "{{ Product ID }}",
"timestampMillis": 1645793516442,
"username": "testProduct1",
"currency": "THB",
"balanceBefore": 9990,
"balanceAfter": 9980
}
HTTP Request
POST {{ API_URL }}/adjustBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Common Adjust Bet Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Transaction ID |
status |
string | Required | Bet status |
roundId |
string | Required | Round id |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
txnId |
string | Required | Transaction ID (Useally send the same id) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle |
username |
string | Required | User id on agent system |
Common Unsettle Bets POST
Request Body
{
"id": "e75db240-d519-44dd-8e37-d68ec1c6f9b2",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1645775403311,
"txns": [
{
"id": "9621055643135717",
"status": "UNSETTLED",
"roundId": "962105564",
"gameCode": "BB001",
"playInfo": "Player 1 Double",
"txnId": "9621055643135717"
}
]
}
JSON response example:
{
"id": "e75db240-d519-44dd-8e37-d68ec1c6f9b2",
"statusCode": 0,
"productId": "{{ Product ID }}",
"timestampMillis": 1645775403663,
"username": "testProduct1",
"currency": "THB",
"balanceBefore": 9997.5,
"balanceAfter": 9987.5
}
HTTP Request
POST {{ API_URL }}/unsettleBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Common Unsettle Bet Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
status |
string | Required | Bet status (Will be UNSETTLED) |
roundId |
string | Required | Round id |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
txnId |
string | Required | Transaction ID (Useally send the same id) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle (deduct from payoutAmount - betAmount of previous settle request) |
username |
string | Required | User id on agent system |
Win Rewards POST
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "e723b240-d519-44dd-8e37-d6823c6f9b2",
"status": "SETTLED",
"roundId": "2866",
"betAmount": 0,
"payoutAmount": 1000,
"gameCode": "BB01",
"playInfo": "player"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542821,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 8600,
"balanceAfter": 9600,
"username": "testProduct1"
}
HTTP Request
POST {{ API_URL }}/winRewards
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transactions |
Common Win Rewards Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
status |
string | Required | Bet status (Should always be SETTLED) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount (Should always be 0) |
payoutAmount |
number | Required | Win amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before get rewards |
balanceAfter |
number | Required | Player's balance after get rewards |
username |
string | Required | User id on agent system |
Common Pay Tips POST
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "Mjg2Ni0y",
"status": "OPEN",
"roundId": "2866",
"betAmount": 100,
"gameCode": "BAC",
"playInfo": "row3"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542878,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 8700,
"balanceAfter": 8600,
"username": "testProduct1"
}
HTTP Request
POST {{ API_URL }}/placeTips
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id |
Common Pay Tips Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
status |
string | Required | Bet status (Should always be OPEN) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before cancel |
balanceAfter |
number | Required | Player's balance after cancel |
username |
string | Required | User id on agent system |
Common Pay Tips Cancel POST
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "Mjg2Ni0y",
"status": "REFUND",
"roundId": "2866",
"betAmount": 100,
"gameCode": "BAC",
"playInfo": "row3"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542878,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 8600,
"balanceAfter": 8700,
"username": "testProduct1"
}
HTTP Request
POST {{ API_URL }}/cancelTips
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id |
Common Pay Tips Cancel Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
status |
string | Required | Bet status (Should always be REFUND) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before cancel |
balanceAfter |
number | Required | Player's balance after cancel |
username |
string | Required | User id on agent system |
Common Void Bets POST
HTTP Request
POST {{ API_URL }}/voidBets
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "e723b240-d519-44dd-8e37-d6823c6f9b2",
"status": "VOID",
"roundId": "2866",
"betAmount": 100,
"payoutAmount": 1000,
"gameCode": "BB01",
"playInfo": "player"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542821,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 8600,
"balanceAfter": 9600,
"username": "testProduct1"
}
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Common Void Bet Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
status |
string | Required | Bet status (Will be VOID) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
payoutAmount |
number | Required | Payout amount (stake + win amount) |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
txnId |
string | Required | Transaction ID (Useally send the same id) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle (deduct from payoutAmount - betAmount of previous settle request) |
username |
string | Required | User id on agent system |
Common Adjust balance POST
HTTP Request
POST {{ API_URL }}/adjustBalance
Request Body
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"productId": "{{ Product ID }}",
"username": "testProduct1",
"currency": "THB",
"timestampMillis": 1631599542778,
"txns": [
{
"id": "e723b240-d519-44dd-8e37-d6823c6f9b2",
"txnId": "030c0030-8826-4b33-9b4d-646d8397d90a",
"status": "SETTLED",
"roundId": "2866",
"betAmount": 100,
"turnOver": 100,
"payoutAmount": 0,
"gameCode": "BB01",
"playInfo": "DEBIT"
}
]
}
JSON response example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 0,
"timestampMillis": 1631599542821,
"productId": "{{ Product ID }}",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 9900,
"username": "testProduct1"
}
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency code in ISO 4217 (Example: "THB" ) |
username |
string | Required | User id on agent system |
txns |
Txn[] | Required | Transaction Id on agent system |
Common adjust balance txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet id |
txnId |
string | Required | Transaction ID (Useally send the same id) |
status |
string | Required | Bet status (Will be SETTLED) |
roundId |
string | Required | Round id |
betAmount |
number | Required | Stake amount |
turnOver |
number | Required | Valid stake amount |
payoutAmount |
number | Required | Payout amount (stake + win amount) |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request id |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product id associated with the request Product |
currency |
string | Required | Player's currency codein ISO 4217 (Example: "THB" ) |
balanceBefore |
number | Required | Player's balance before unsettle |
balanceAfter |
number | Required | Player's balance after unsettle (deduct from payoutAmount - betAmount of previous settle request) |
username |
string | Required | User id on agent system |
Common Status Code
JSON response fail example:
{
"id": "c7197ce4-5a50-4397-a903-d78b135ade4c",
"statusCode": 10001,
"productId": "{{ Product ID }}",
"timestampMillis": 1631599542878
}
Code | Description |
---|---|
0 | Success |
10001 | User not found |
10002 | User has insufficient balance to proceed |
20001 | Transaction not found |
20002 | Transaction duplicate |
20003 | Bet has already canceled |
20004 | Bet has already settled |
30001 | Invalid token |
40003 | Forbidden request |
50001 | Internal server error |
PG Soft
PG soft using new callback urls
- Login with productId "
PGSOFT2
"
Special note: If /settleBets
request duplicate, please check your database, if your system saved this transaction already, please response with success
but do not increase the user's balance. If your system didn't save the transaction yet, proceed the transaction normally.
Check Balance POST
This callback url used to check your player's remaining balance.
Request Body
{
"id": "58f0a8b2-0e60-4bf8-9eee-b7528917c01b",
"timestampMillis": 1631120940430,
"productId": "PGSOFT2",
"currency": "THB",
"username": "foobar",
"gameCode": "lucky-neko",
"sessionToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6ImZvb2JhciIsImlhdCI6MTUxNjIzOTAyMn0.rvCSZduLNsFeXuViC_2gZf2y9Avo-TquLIVxzXb2wFc"
}
JSON response example:
{
"id": "58f0a8b2-0e60-4bf8-9eee-b7528917c01b",
"statusCode": 0,
"timestampMillis": 1631120940530,
"productId": "PGSOFT2",
"currency": "THB",
"balance": 10000,
"username": "foobar"
}
HTTP Request
POST {{ API_URL }}/checkBalance
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request ID |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product ID associated with the request (Example: PGSOFT2 ) |
currency |
string | Required | Player's currency code in ISO 4217 (Example: THB ) |
username |
string | Required | User ID on agent system |
sessionToken |
string | Optional | User token (This value will be the same value as you input to /seamless/logIn API) |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request ID |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time |
productId |
string | Required | Product ID associated with the response (Example: PGSOFT2 ) |
currency |
string | Required | Player's currency codein ISO 4217 (Example: THB ) |
balance |
number | Required | Player's current balance |
username |
string | Required | User ID on agent system |
Settle Bets POST
Note:
- Please always verify
betAmount
and user's balance before proceed the transaction. If user's balance less thanbetAmount
please response insufficient balance. - (Very important!) If
/settleBets
request duplicate, please check your database, if your system saved this transaction already, please response withsuccess
but do not increase the user's balance. If your system didn't save the transaction yet, proceed the transaction normally.
Request Body
{
"id": "0d677667-8419-4625-904e-07553a3b44ab",
"productId": "PGSOFT2",
"username": "foobar",
"currency": "THB",
"timestampMillis": 1631515500995,
"txns": [
{
"id": "1517414362204114945",
"status": "SETTLED",
"roundId": "1517414362204114945-1517414362204114945-101-0",
"betAmount": 1000,
"payoutAmount": 1500,
"gameCode": "lucky-neko",
"playInfo": "lucky-neko",
"txnId": "1517414362204114945",
"isEndRound": false,
}
]
}
JSON response example:
{
"id": "0d677667-8419-4625-904e-07553a3b44ab",
"statusCode": 0,
"timestampMillis": 1631515501095,
"productId": "PGSOFT2",
"currency": "THB",
"balanceBefore": 10000,
"balanceAfter": 10500,
"username": "foobar"
}
HTTP Request
POST {{ API_URL }}/settleBets
Content Type
Type: application/json
Parameter Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request ID |
timestampMillis |
number | Required | Requesting time |
productId |
string | Required | Product ID associated with the request (Example: PGSOFT2 ) |
currency |
string | Required | Player's currency code in ISO 4217 (Example: THB ) |
username |
string | Required | User ID on agent system |
txns |
Txn[] | Required | Transaction ID on agent system |
transactionType |
string | Optional | Transaction type detail |
PGSOFT2 Settle Bet Txn
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Bet ID (You can use this to reference in the provider system) |
status |
string | Required | Bet status (Should always be SETTLED) |
roundId |
string | Required | Round ID |
betAmount |
number | Required | Stake amount |
payoutAmount |
number | Required | Payout amount |
gameCode |
string | Required | Game code |
playInfo |
string | Required | Information regarding the chosen play |
txnId |
string | Required | Bet ID (You can use this to reference in the provider system) |
isEndRound |
boolean | Optional | Flag indicating whether a round is end round or not |
isFeature |
boolean | Optional | Flag indicating whether a round is feature (free-spin/bonus) round or not |
isFeatureBuy |
boolean | Optional | Flag indicating whether a round is feature buy (free-spin/bonus) round or not |
Data GetBetDetail
Property | Type | Required | Description |
---|---|---|---|
betId |
string | Required | Bet ID |
date |
string | Required | Datetime String ISO Format |
walletType |
string | Required | Wallet Type |
Response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request ID |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time in milli-second |
productId |
string | Required | Product id associated with the response (Example: PGSOFT2 ) |
currency |
string | Required | Player's currency codein ISO 4217 (Example: THB ) |
balanceBefore |
number | Required | Player's balance before settle |
balanceAfter |
number | Required | Player's balance after settle |
username |
string | Required | User id on your system |
Common error response
Please use this error response format when implement an integration.
Example error response
{
"id": "cbc9320e-9b88-4e33-94c2-2caf8cf105af",
"statusCode": 30001,
"timestampMillis": 1631120940430,
"productId": "PGSOFT2"
}
Error response Description
Property | Type | Required | Description |
---|---|---|---|
id |
string | Required | Request ID that found an issue |
statusCode |
number | Required | Status from StatusCode |
timestampMillis |
number | Required | Responding time in milli-second |
productId |
string | Required | Product id associated with the response (Example: PGSOFT2 ) |
PGSOFT2 Status Code
Code | Description |
---|---|
0 | Success |
10001 | User not found |
10002 | User has insufficient balance to proceed with |
30001 | Invalid token |
40003 | Forbidden request |
50001 | Internal server error |
Sexy Gaming
Let's play
- Login with productId "
SEXY
"
Please checks SuperAPI common flows (See more: New common flow)
Big Gaming
Let's play
- Login with productId "
BIGGAME
"
Please checks SuperAPI common flows (See more: New common flow)
SA Gaming
Let's play
- Login with productId "
SAGAME
"
Please checks SuperAPI common flows (See more: New common flow)
SlotXo/Joker
Let's play
- Login with productId "
SLOTXO
" or "JOKER
" If you need to integrate slotxo product, useSLOTXO
as a productId. If you need to integrate joker product, useJOKER
as a productId.
Please checks SuperAPI common flows (See more: New common flow)
Evoplay
Let's play
- Login with productId "
EVOPLAY
"
Please checks SuperAPI common flows (See more: New common flow)
Dream Gaming
Let's play
- Login with productId "
DREAM
"
Please checks SuperAPI common flows (See more: New common flow)
Live22
Let's play
- Login with productId "
LIVE22
"
Please checks SuperAPI common flows (See more: New common flow)
Simple Play
Let's play
- Login with productId "
SIMPLEPLAY
"
Please checks SuperAPI common flows (See more: New common flow)
Netent/Redtiger
Let's play
- Login with productId "
NETENT
" or "REDTIGER
" If you need to integrate netent product, useNETENT
as a productId. If you need to integrate redtiger product, useREDTIGER
as a productId.
Please checks SuperAPI common flows (See more: New common flow)
Nolimit
Let's play
- Login with productId "
NOLIMIT
" If you need to integrate nolimit-city product, useNOLIMIT
as a productId.
Please checks SuperAPI common flows (See more: New common flow)
Spade Gaming
Let's play
- Login with productId "
SPADE
"
Please checks SuperAPI common flows (See more: New common flow)
Askmebet
Let's play
- Login with productId "
ASKMEBET
"
Please checks SuperAPI common flows (See more: New common flow)
Habanero
Let's play
- Login with productId "
HABANERO
"
Seamless Integration APIs
1. Player detail request (Verify session and Get balance) POST
Verify token and get latest balance from user.
Request Body Example:
{
"type": "playerdetailrequest",
"dtsent": "2021-05-04T06:00:00.000Z",
"basegame": {
"brandgameid": "c7098074-a238-41fa-a6b3-ed0f150a2b47",
"keyname": "SGFortuneDogs"
},
"auth": {
"username": "habanero",
"passkey": "cKYLRerqXJec228",
"machinename": "hb-vm01-test",
"locale": "en",
"brandid": "8c77579e-1bbd-446a-8e8f-2a6e9e150778"
},
"playerdetailrequest": {
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6ImZvb2JhciIsImlhdCI6MTUxNjIzOTAyMn0.rvCSZduLNsFeXuViC_2gZf2y9Avo-TquLIVxzXb2wFc",
"gamelaunch": true
},
"playerdetailresponse": {
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6ImZvb2JhciIsImlhdCI6MTUxNjIzOTAyMn0.rvCSZduLNsFeXuViC_2gZf2y9Avo-TquLIVxzXb2wFc",
"gamelaunch": true
}
}
JSON response example:
{
"playerdetailresponse": {
"status": {
"success": true,
"autherror": false,
"nofunds": false,
"successdebit": true,
"successcredit": true,
"refundstatus": 0,
"message": "success",
},
"accountid": "foobar",
"accountname": "foobar",
"balance": "10000.00",
"currencycode": "THB"
}
}
HTTP Request
POST {{ API_URL }}
Content Type
Type: application/json
Verify session and Get balance
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
type |
string | Required | Request type, for this request fixed value: playerdetailrequest |
dtsent |
string | Required | Request date time in ISO format |
basegame |
object | Required | basegame information see more in below table |
auth |
object | Required | auth information see more in below table |
playerdetailrequest |
object | Required | playerdetailrequest information see more in below table |
playerdetailresponse |
object | Required | playerdetailresponse information see more in below table |
basegame
request description
Property | Type | Required | Description |
---|---|---|---|
brandgameid |
string | Required | Brand game id, provided by Habanero provider |
keyname |
string | Required | Game key name, provided by Habanero provider |
auth
request description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username from provider fixed value: habanero |
passkey |
string | Required | Passkey that auto generated from Habanero provider |
machinename |
string | Required | Habanero provider machine's name |
locale |
string | Required | Language that user is playing |
brandid |
string | Required | Brand id, provided by Habanero provider |
playerdetailrequest
request description
Property | Type | Required | Description |
---|---|---|---|
token |
string | Required | Token that operator's system need to verify |
gamelaunch |
boolean | Required | Game launch status |
playerdetailresponse
request description
Property | Type | Required | Description |
---|---|---|---|
token |
string | Required | Token that operator's system need to verify |
gamelaunch |
boolean | Required | Game launch status |
Verify session and Get balance
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
playerdetailresponse |
object | Required | playerdetailresponse information see more in below table |
playerdetailresponse
request description
Property | Type | Required | Description |
---|---|---|---|
status |
object | Required | status information see more in below table |
accountid |
string | Required | Player username id |
accountname |
string | Required | Player username |
balance |
string | Required | Lastest player balance |
currencycode |
string | Required | Player currency |
status
response description
Property | Type | Required | Description |
---|---|---|---|
success |
boolean | Required | Request succes status Return true if success and false if not success |
autherror |
boolean | Required | Request authentication error status Return false if success and true if authentication error |
nofunds |
boolean | Required | Is player has enough credit?true : Yes, false : No |
successdebit |
boolean | Required | Status of 'stake' is success or not |
successcredit |
boolean | Required | Status of 'settle' is success or not |
refundstatus |
number | Required | Refund status:1 : Refund is required2 : Refund is not required |
message |
string | Required | Response message, if success return Success |
2. Bet/Settle POST
Game provider send the user's bet or settle information.
Bet/Settle
Request Body Example:
{
"type": "fundtransferrequest",
"dtsent": "2021-05-04T04:43:31.9682165Z",
"basegame": {
"brandgameid": "0de61a6f-4676-402c-84fd-e88f092caa65",
"keyname": "SGHeySushi"
},
"auth": {
"username": "habanero",
"passkey": "cKYLRerqXJec228",
"machinename": "hb-vm01-test",
"locale": "en",
"brandid": "58b5e4b9-8b5f-411c-9a31-3a6d9aba73f0"
},
"fundtransferrequest": {
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6ImZvb2JhciIsImlhdCI6MTUxNjIzOTAyMn0.rvCSZduLNsFeXuViC_2gZf2y9Avo-TquLIVxzXb2wFc",
"accountid": "foobar",
"customplayertype": 0,
"gameinstanceid": "7b421bda-0af3-4cf5-8a84-4fd4c50d5777",
"friendlygameinstanceid": 1367717267,
"isretry": false,
"retrycount": 0,
"isrefund": false,
"isrecredit": false,
"funds": {
"debitandcredit": true,
"fundinfo": [
{
"gamestatemode": 1,
"transferid": "40edc812-60bd-4db1-95e9-7ffa04a60a58",
"currencycode": "THB",
"amount": -40.0,
"bonusamount": 0,
"jpwin": false,
"jpcont": 0,
"isbonus": false,
"dtevent": "2021-04-30T00:00:31.953Z",
"initialdebittransferid": "40edc812-60bd-4db1-95e9-7ffa04a60a58",
"accounttransactiontype": 712,
"gameinfeature": false
},
{
"gamestatemode": 0,
"transferid": "0c78707b-b3e4-4134-890a-d7f3e908aaa4",
"currencycode": "THB",
"amount": 0,
"bonusamount": 100.00,
"jpwin": false,
"jpcont": 0,
"isbonus": true,
"dtevent": "2021-04-30T00:00:31.953Z",
"initialdebittransferid": "40edc812-60bd-4db1-95e9-7ffa04a60a58",
"accounttransactiontype": 712,
"gameinfeature": false
}
]
},
"gamedetails": {
"name": "Hey Sushi",
"keyname": "SGHeySushi",
"gametypeid": 11,
"gametypename": "Video Slots",
"brandgameid": "0de61a6f-4676-402c-84fd-e88f092caa65",
"gamesessionid": "00c01606-35ee-4431-96c7-1fcad6de0735",
"gameinstanceid": "7b421bda-0af3-4cf5-8a84-4fd4c50d5777",
"friendlygameinstanceid": 1367717267,
"channel": 1,
"device": "NA",
"browser": "NA"
}
}
}
Bet/Settle
JSON response example:
{
"fundtransferresponse": {
"status": {
"success": true,
"nofunds": false,
"successdebit": true,
"successcredit": true,
"refundstatus": 0
},
"balance": "10000.00",
"currencycode": "THB"
}
}
HTTP Request
POST {{ API_URL }}
Content Type
Type: application/json
Bet/Settle
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
type |
string | Required | Request type, for this request fixed value: playerdetailrequest |
dtsent |
string | Required | Request date time in ISO format |
basegame |
object | Required | basegame information see more in below table |
auth |
object | Required | auth information see more in below table |
fundtransferrequest |
object | Required | fundtransferrequest information see more in below table |
basegame
request description
Property | Type | Required | Description |
---|---|---|---|
brandgameid |
string | Required | Brand game id, provided by Habanero provider |
keyname |
string | Required | Game key name, provided by Habanero provider |
auth
request description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username from provider fixed value: habanero |
passkey |
string | Required | Passkey that auto generated from Habanero provider |
machinename |
string | Required | Habanero provider machine's name |
locale |
string | Required | Language that user is playing |
brandid |
string | Required | Brand id, provided by Habanero provider |
fundtransferrequest
request description
Property | Type | Required | Description |
---|---|---|---|
token |
string | Required | Token that operator's system need to verify |
accountid |
string | Required | Player username id |
customplayertype |
number | Required | Player type:0 : Normal player1 : Tester in Habanero Backoffice |
gameinstanceid |
string | Required | UUID for the round game |
friendlygameinstanceid |
string | Required | An identity integer value representing the game number which is shown on the player's screen |
isretry |
boolean | Required | This is set to true in conjunction with either Is refund or Is recredit. |
retrycount |
number | Required | Retry counter |
isrefund |
boolean | Required | true/false if this is a refund attempt |
isrecredit |
boolean | Required | true/false if this is a recredit attempt |
funds |
object | Required | funds information see more in below table |
gamedetails |
object | Required | gamedetails information see more in below table |
funds
request description
Property | Type | Required | Description |
---|---|---|---|
debitandcredit |
boolean | Required | Indicate that this is the Debit and Credit package |
fundinfo |
[object] | Optional | fundinfo information see more in below table |
refund |
object | Optional | refund information if the refund needed see more in below table |
fundinfo
or refund
request description
Property | Type | Required | Description |
---|---|---|---|
gamestatemode |
number | Required | Game stage mode == Bet/Settle request == 1 : Game round start (Bet)2 : Game round end (Settle)3 : Expired (Player left the game and reach the expired date)0 : Continuation (free-spin/bonus/jackpot, game still open not Settle yet) == Refund request == 2 : Refund the first debit transaction0 : Refund continuation (Sub transaction inside free-spin/bonus/jackpot) |
transferid |
string | Required | The UUID for this fund transfer element |
currencycode |
string | Required | Player's currency code |
amount |
number | Required | Player's bet/settle amount (Value can be postitive or negative, if amount < 0 mean bet/lose credit, other is for settle/earn credit) |
bonusamount |
number | Optional | Specifies the Bonus Bet or the Bonus Win amount |
jpwin |
boolean | Required | true/false indicating if this credit "amount" is from a jackpot win |
jpcont |
number | Required | The amount contributed towards all active jackpots. |
isbonus |
boolean | Required | Indicates this is a bonus payout from a coupon that has met wagering requirements |
dtevent |
string | Required | Date time of the event in ISO format |
initialdebittransferid |
string | Required | The transferid for the first bet of the game |
accounttransactiontype |
string | Required | The account transac tion type id for this action |
gameinfeature |
boolean | Required | Indicates if the game (slot) is in feature mode |
gamedetails
request description
Property | Type | Required | Description |
---|---|---|---|
name |
string | Required | Habanero's game name (in English) |
keyname |
string | Required | Habanero's game key name |
gametypeid |
number | Required | Game type id (See more on Game Type ID) |
gametypename |
string | Required | The description of the game-type |
brandgameid |
string | Required | Game identifier |
gamesessionid |
string | Required | The habanero game session which is started when opening an instance of a game |
gameinstanceid |
string | Required | Copy of the parent gameinstanceid |
friendlygameinstanceid |
number | Required | Copy of the parent friendlygameinstanceid |
channel |
number | Required | See more on Channel type |
device |
string | Required | See more on Channel type |
browser |
string | Required | See more on Channel type |
Bet/Settle
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
fundtransferresponse |
object | Required | fundtransferresponse information see more in below table |
fundtransferresponse
request description
Property | Type | Required | Description |
---|---|---|---|
status |
object | Required | status information see more in below table |
balance |
string | Required | Lastest player balance |
currencycode |
string | Required | Player currency |
status
response description
Property | Type | Required | Description |
---|---|---|---|
success |
boolean | Required | Request succes status Return true if success and false if not success |
nofunds |
boolean | Required | Is player has enough credit?true : Yes, false : No |
successdebit |
boolean | Required | Identify the 'debit'(Bet) is success or not |
successcredit |
boolean | Required | Identify the 'credit'(Settle) is success or not |
refundstatus |
number | Required | Refund status:1 : Refund is required2 : Refund is not required |
3. Query request POST
Game provider send the request to check the fundtransferrequest
status.
Request Body Example:
{
"type": "queryrequest",
"dtsent": "2021-12-24T05:14:33.2039245Z",
"basegame": {
"brandgameid": "8aaf31df-0c18-4de4-bb34-7ea1c8f3820b",
"keyname": "BlackJack3H"
},
"auth": {
"username": "habanero",
"passkey": "b8b954e1-d73c-41e9-8f5c-21da90b6ae21",
"machinename": "TESTSERVER",
"locale": "en",
"brandid": "a46dc7d8-8320-4147-87db-8dd39dcc5c3a"
},
"queryrequest": {
"transferid": "00e7c704-369a-42cb-a9cd-a734f6957075",
"accountid": "153",
"gameinstanceid": "0f9bf62b-2dcd-48dd-9a80-2e333572d920",
"friendlygameinstanceid": 1330637,
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6ImZvb2JhciIsImlhdCI6MTUxNjIzOTAyMn0.rvCSZduLNsFeXuViC_2gZf2y9Avo-TquLIVxzXb2wFc",
"queryamount": -125
}
}
JSON response example:
{
"fundtransferresponse": {
"status": {
"success": true,
}
}
}
HTTP Request
POST {{ API_URL }}
Content Type
Type: application/json
Query request
Request parameter description
Property | Type | Required | Description |
---|---|---|---|
type |
string | Required | Request type, for this request fixed value: playerdetailrequest |
dtsent |
string | Required | Request date time in ISO format |
basegame |
object | Required | basegame information see more in below table |
auth |
object | Required | auth information see more in below table |
queryrequest |
object | Required | queryrequest information see more in below table |
basegame
request description
Property | Type | Required | Description |
---|---|---|---|
brandgameid |
string | Required | Brand game id, provided by Habanero provider |
keyname |
string | Required | Game key name, provided by Habanero provider |
auth
request description
Property | Type | Required | Description |
---|---|---|---|
username |
string | Required | Username from provider fixed value: habanero |
passkey |
string | Required | Passkey that auto generated from Habanero provider |
machinename |
string | Required | Habanero provider machine's name |
locale |
string | Required | Language that user is playing |
brandid |
string | Required | Brand id, provided by Habanero provider |
queryrequest
request description
Property | Type | Required | Description |
---|---|---|---|
transferid |
string | Required | The unique id for this fund transfer element |
accountid |
string | Required | UNIQUE primary-key of the player in your database |
gameinstanceid |
string | Required | Unique game ID as a UUID |
friendlygameinstanceid |
number | Required | Unique game ID as an integer |
token |
string | Required | Token that operator's system need to verify |
queryamount |
number | Required | Value of the original transfer being queried |
Query request
Response parameter description
Property | Type | Required | Description |
---|---|---|---|
fundtransferresponse |
object | Required | fundtransferresponse information see more in below table |
fundtransferresponse
request description
Property | Type | Required | Description |
---|---|---|---|
status |
object | Required | Object contain only success value the value should be:true : Query request is successfalse : Query is not success |
Habanero - Appendix
Habanero - Channel type ID
Name | Value |
---|---|
1 | Desktop Browser |
4 | Mobile Browser |
5 | App - Android |
6 | App - iOS |
Habanero - Game type ID
GameTypeID | Name |
---|---|
2 | Baccarat |
4 | Blackjack |
5 | Roulette |
6 | Video Poker |
7 | Gamble |
8 | Casino Poker |
11 | Video Slots |
15 | Sic Bo |
16 | War |
17 | Dragon Tiger |
18 | Other Table Games |
20 | Shooting Games |
CQ9 (Slot)
Let's play
- Login with productId "
CQ9
"
Please checks SuperAPI common flows (See more: New common flow)
Manna Play
Let's play
- Login with productId "
MANNA
"
Please checks SuperAPI common flows (See more: New common flow)
Micro Gaming (Slot)/UPG Slot
Let's play
- Login with productId "
MICRO
" when integrate Micro Gaming (Slot) - Login with productId "
UPG
" when integrate UPG Slot
Please checks SuperAPI common flows (See more: New common flow)
Ambpoker
Let's play
- Login with productId "
AMBPOKER
"
Please checks SuperAPI common flows (See more: New common flow)
Creative Gaming
Let's play
- Login with productId "
CG
"
Please checks SuperAPI common flows (See more: New common flow)
Betgames TV
Let's play
- Login with productId "
BETGAME
"
Common Request
Yggdrasil
Let's play
- Login with productId "
YGGDRASIL
"
Please checks SuperAPI common flows (See more: New common flow)
WM Casino
Let's play
- Login with productId "
WM
"
Please checks SuperAPI common flows (See more: New common flow)
Ameba
Let's play
- Login with productId "
AMEBA
"
Please checks SuperAPI common flows (See more: New common flow)
Pretty Gaming
Let's play
- Login with productId "
PRETTY
"
Please checks SuperAPI common flows (See more: New common flow)
Allbet
Let's play
- Login with productId "
ALLBET
"
Please checks SuperAPI common flows (See more: New common flow)
King Maker
Let's play
- Login with productId "
KINGMAKER
"
Please checks SuperAPI common flows (See more: New common flow)
Asia Gaming
Let's play
- Login with productId "
AGGAME
"
Please checks SuperAPI common flows (See more: New common flow)
I8
Let's play
- Login with productId "
I8
"
Please checks SuperAPI common flows (See more: New common flow)
Cockfight
Let's play
- Login with productId "
COCKFIGHT
"
Please checks SuperAPI common flows (See more: New common flow)
WMSlot
Let's play
- Login with productId "
WMSLOT
"
Please checks SuperAPI common flows (See more: New common flow)
Funky Game
Let's play
- Login with productId "
FUNKY
"
Please checks SuperAPI common flows (See more: New common flow)
Sbobet
Let's play
- Login with productId "
SBO
"
1. Login SBO POST
Request Body Example:
{
"username": "foobar",
"productId": "SBO",
"gameCode": 0,
"sessionToken": "070d45b4-cef9-4652-b7ac-ef130752736d",
"betLimit":[
{
"sport_type":0,
"market_type":0,
"min_bet":5,
"max_bet":500,
"max_bet_per_match":100000
},
{
"sport_type":1,
"market_type":1,
"min_bet":5,
"max_bet":500,
"max_bet_per_match":100000
}
]
}
JSON response example:
{
"reqId": "5d778389-c37a-4312-bb7c-7521f9ff210b",
"code": 0,
"message": "Success",
"data": {
"url": "https://****************rue&lang=th-th&oddstyle=MY&theme=SBO&oddsmode=single&device=d"
}
}
Sport Type
SportType | Description |
---|---|
0 |
ALL |
1 |
Soccer |
2 |
Basketball |
3 |
Football |
4 |
Ice Hockey |
5 |
Badminton |
6 |
Pool |
7 |
Motor Sport |
8 |
Tennis |
9 |
Baseball |
10 |
Volleyball |
11 |
Others |
12 |
Golf |
13 |
Boxing |
14 |
Cricket |
15 |
Table Tennis |
16 |
Rugby |
17 |
Handball |
18 |
Cycling |
19 |
Athletics |
20 |
Beach_Soccer |
21 |
Futsal |
22 |
Entertainment |
23 |
Financial |
24 |
Darts |
25 |
Olympic |
26 |
Lacrosse |
27 |
Water Polo |
28 |
Winter Sports |
29 |
Squash |
30 |
Field_Hockey |
31 |
Mixed_Martial_Arts |
32 |
E_Sports |
33 |
Gaelic_Football |
34 |
Hurling |
35 |
Muay_Thai |
36 |
Bandy |
37 |
Winter_Olympics |
Market Type
SportTypeId | Description |
---|---|
0 |
ALL |
1 |
Handicap |
2 |
Odd/Even |
3 |
Over/Under |
4 |
Correct Score |
5 |
1X2 |
6 |
Total Goal |
7 |
First Half Hdp |
8 |
First Half 1x2 |
9 |
First Half O/U |
10 |
HT/FT |
11 |
Money Line |
12 |
First Half O/E |
13 |
First Goal/Last Goal |
14 |
First Half CS |
15 |
Double Chance |
16 |
Live Score |
17 |
First Half Live Score |
39 |
Outright |
40 |
Mix Parlay |
666 |
In Between |
800000 |
First Half 1X2 & O/U |
800001 |
D/C & First Half O/U |
900000 |
1X2 & O/U |
900001 |
D/C & O/U |
800002 |
First Half RCS |
900002 |
Reverse Correct Score |
Common Request
AMB Sportbook
Let's play
- Login with productId "
AMBSPORTBOOK
"
1. Login AMBSPORTBOOK POST
Request Body Example:
{
"username": "foobar",
"productId": "AMBSPORTBOOK",
"gameCode": 0,
"sessionToken": "070d45b4-cef9-4652-b7ac-ef130752736d",
"betLimit": [
{
"sportType": 0,
"market_type": 1,
"min_bet": 5,
"max_bet": 500,
"max_bet_per_match": 100000
},
{
"sportType": 0,
"market_type": 2,
"min_bet": 5,
"max_bet": 500,
"max_bet_per_match": 100000
}
]
}
JSON response example:
{
"reqId": "5d778389-c37a-4312-bb7c-7521f9ff210b",
"code": 0,
"message": "Success",
"data": {
"url": "https://stagin**********d/?uuid=655cfd523a3e99311a6a0b64&lang=th"
}
}
Sport Type
SportType | Description |
---|---|
0 |
ALL |
Market Type
SportTypeId | Description |
---|---|
1 |
Handicap |
2 |
Odd/Even |
3 |
Over/Under |
5 |
1X2 |
7 |
First Half Hdp |
8 |
First Half 1x2 |
9 |
First Half O/U |
10 |
Money Line |
11 |
First Half Money Line |
Please checks SuperAPI common flows (See more: New common flow)
Askmeslot
Let's play
- Login with productId "
ASKMESLOT
"
Please checks SuperAPI common flows (See more: New common flow)
Pragmatic Play (Live Casino)
Let's play
- Login with productId "
PRAGMATIC_CASINO
"
Please checks SuperAPI common flows (See more: New common flow)
Pragmatic Play (Slot)
Let's play
- Login with productId "
PRAGMATIC_SLOT
"
Please checks SuperAPI common flows (See more: New common flow)
Relax Gaming
Let's play
- Login with productId "
RELAX
"
Please checks SuperAPI common flows (See more: New common flow)
759 Gaming
Let's play
- Login with productId "
759GAMING
"
Please checks SuperAPI common flows (See more: New common flow)
Motivation
Let's play
- Login with productId "
CQ9_LIVECASINO
"
Please checks SuperAPI common flows (See more: New common flow)
Hacksaw
Let's play
- Login with productId "
HACKSAW
"
Please checks SuperAPI common flows (See more: New common flow)
WE Casino
Let's play
- Login with productId "
WECASINO
"
Please checks SuperAPI common flows (See more: New common flow)
Advant Play
Let's play
- Login with productId "
ADVANT
"
Please checks SuperAPI common flows (See more: New common flow)
Nextspin
Let's play
- Login with productId "
NEXTSPIN
"
Please checks SuperAPI common flows (See more: New common flow)
Micro gaming (Live Casino)
Let's play
- Login with productId "
MICRO_LIVECASINO
"
Please checks SuperAPI common flows (See more: New common flow)
Yeebet
Let's play
- Login with productId "
YEEBET
"
Please checks SuperAPI common flows (See more: New common flow)
Goldy
Let's play
- Login with productId "
GOLDY
"
Please checks SuperAPI common flows (See more: New common flow)
Wazdan
Let's play
- Login with productId "
WAZDAN
"
Common Request
Funta
Let's play
- Login with productId "
FUNTA
"
Common Request
Booongo
Let's play
- Login with productId "
BOOONGO
"
Common Request
KA Gaming
Let's play
- Login with productId "
KAGAME
"
Common Request
Booming
Let's play
- Login with productId "
BOOMING
"
Please checks SuperAPI common flows (See more: New common flow)
Gioco Plus
Let's play
- Login with productId "
GIOCO
"
Please checks SuperAPI common flows (See more: New common flow)
Parlaybay
Let's play
- Login with productId "
PARLAYBAY
"
Common Request
Sexy Slot
Let's play
- Login with productId "
SEXY_SLOT
"
Please checks SuperAPI common flows (See more: New common flow)
Rich88
Let's play
- Login with productId "
RICH88
"
Please checks SuperAPI common flows (See more: New common flow)
Royal Slot Gaming
Let's play
- Login with productId "
ROYAL
"
Please checks SuperAPI common flows (See more: New common flow)
Play'n Go
Let's play
- Login with productId "
PLAYNGO
"
Please checks SuperAPI common flows (See more: New common flow)
AMB Gaming
Let's play
- Login with productId "
AMBGAMING
"
Please checks SuperAPI common flows (See more: New common flow)
Fachai
Let's play
- Login with productId "
FACHAI
"
Please checks SuperAPI common flows (See more: New common flow)
Miki Worlds
Let's play
- Login with productId "
MIKIWORLD
"
Please checks SuperAPI common flows (See more: New common flow)
Lalika
Let's play
- Login with productId "
LALIKA
"
Please checks SuperAPI common flows (See more: New common flow)
AFB1188 (Live Casino)
Let's play
- Login with productId "
AFB1188_LIVECASINO
"
Please checks SuperAPI common flows (See more: New common flow)
AFB1188 (Sport)
Let's play
- Login with productId "
AFB1188
"
Please checks SuperAPI common flows (See more: New common flow)
AFB1188 (Slot)
Let's play
- Login with productId "
AFB1188_SLOT
"
Please checks SuperAPI common flows (See more: New common flow)
YGR
Let's play
- Login with productId "
YGR
"
Please checks SuperAPI common flows (See more: New common flow)
Octoplay
Let's play
- Login with productId "
OCTOPLAY
"
Please checks SuperAPI common flows (See more: New common flow)
Real Time Gaming
Let's play
- Login with productId "
RTGSLOT
"
Please checks SuperAPI common flows (See more: New common flow)
5G Games
Let's play
- Login with productId "
5G_GAMES
"
Please checks SuperAPI common flows (See more: New common flow)
Virtual Sportbook
Let's play
- Login with productId "
VIRTUAL_SPORT
"
Please checks SuperAPI common flows (See more: New common flow)
Askmeplay
Let's play
- Login with productId "
ASKMEPLAY
"
Please checks SuperAPI common flows (See more: New common flow)
Dragon Gaming
Let's play
- Login with productId "
DRAGONGAMING
"
Please checks SuperAPI common flows (See more: New common flow)
UM Bet
Let's play
- Login with productId "
UMBET
"