Operator API Integration DocumentDate Update: 2024/11/18

Version Update History

Version Date Update Description
2.3 2024/11/08 Other info Comparison Table - Sports
2.4 2024/11/15 Added Cancel and Resettle Documentation
2.5 2024/12/04 Modified data type of bet place from in to str

Table of Contents 3

Terms of Use 4

Overview 5

Signature Validation 6

iFrame 6

Currency 6

Consistency of Bets 6

How to Start A Game 7

Transfer Wallet API 8

Register Player 10

Player Transfer - Deposit 10

Player Transfer - Withdraw 11

Get Transfer History 13

Get Game List 14

Get Bet Limit List 15

Enter Game 16

Get Player Balance 17

Get Betting Records 19

Seamless Wallet API 21

Overview 22

Game API: Get Game List 22

Game API: Get Bet Limit List 23

Game API: Enter Game 24

Game API: Get Betting Records 25

Wallet API: Verify Player Information 27

Wallet API: Get Player Balance 28

Wallet API: Bet Debit Process 29

Wallet API: Bet Payout Credit Process 32

Wallet API: Cancellation Process After Placing A Bet 34

Wallet API: Cancellation Process After Getting A Payout 37

Wallet API: Bet Resettle Process 39

Wallet API: Promotions 41

Betting Area Comparison Table 43

OG Betting Record Parameters 44

Baccarat 45

Dragon Tiger 45

Niuniu 46

Sedie 46

Money Wheel 47

Three Cards 47

Sicbo 47

Operator API Integration Table of Contents

Roulette 49 Sports 54 Code Comparison Table 56

Terms of Use

We recommend that each client and each currency use a separate account to connect with the game. This approach offers several benefits:

  1. Improved System Stability and Reliability: Using multiple accounts helps ensure that if one account encounters a problem, the rest of the system will continue to run smoothly. This means fewer disruptions and a more reliable experience for you.2. Flexible Client Solutions: If you have different needs, you can make individual requests through the API interface, allowing us to better meet your specific requirements.

Overview

Overview- If an operator requires multiple currencies, please apply for multiple integration accounts based on each currency.- Each integration account supports either a single wallet or a transfer wallet.- Public key and Private key are provided by OG.- Seamless wallet integration includes 2 REST API: Game API and Wallet API.- Transfer wallet integration includes 2 REST API: Game API and Transfer Wallet API.- Please use lowercase letters for all key and value of each parameter.- The Game API is responsible for handling operations related to games, such as entering games, retrieving game data, and more.- The Wallet API, on the other hand, deals with operations related to wallets, including balance inquiries, chip transfers, and bet payouts, among others.- The Transfer Wallet API is designed for operators using the transfer wallet mode, allowing operators to perform chip conversions, including deposit and withdrawal chips from player accounts, as well as retrieving player balances.

Signature Validation

Signature ValidationTo ensure that API requests have not been maliciously tampered with, we have implemented a digital signature verification mechanism in API requests. This mechanism covers various API requests such as game entry, player authentication, betting, payouts, and chip conversions.

A.How To Generate A Signature

A. How To Generate A Signature1. Sort the keys in the request parameters in alphabetical order from ‘a’ to ‘z’.2. Concatenate the sorted keys using the “&” symbol to create a string.3. Encrypt the string using the private key with MD5 encryption, resulting in a hash function.4. Use the generated hash function as the value for the “signature” key in the parameters, then send the request.

B.How To Verify The Received Signature

B. How To Verify The Received Signature1. Sort the keys (excluding the signature) from the received request parameters alphabetically from ‘a’ to ‘z’.2. Concatenate the sorted keys (excluding the signature) using the “&” symbol to create a string.3. Encrypt the string using MD5 encryption and the same private key used for creating the signature, resulting in a hash function.4. Compare the hash function obtained from the above steps with the value of the signature in the original request to verify if they match.

Operator API Integration Signature Validation, iFrame, Currency And Consistency of Bets

The keys must be sorted in alphabetical order from ‘a’ to ‘z’; otherwise, it will result in different hash functions being generated.

A hash function is one- way, meaning it’s not possible to reverse- engineer the original data from the hash value.

iFrame

Operators can utilize iFrames to run games in desktop browsers; however, it’s not supported on iOS or Android systems.

Currency

The game supports all currencies except PHP and HKD. Currently the virtual currency only supports USDT, VND, IDR, INR, MMK support 1:1 and 1:1000

Consistency of Bets

In order to ensure the consistency and uniqueness of bets, when all requests includes a transaction_id field, OG will ensure that all transaction_ids will only be processed once, and if there are repeated bet requests, OG will ignore the request and will not process them again.

7 | OG OPERATOR API INTEGRATION DOCUMENT

How to Start A Game

Workflow:

After you have obtained all the information, you need to follow the following steps:

  1. The game_id can be obtained from {{OG_Host }}/api/v2/platform/game/game-list. Note: This feature will directly affect players entering the lobby or designated tables.
  2. The betlimit can be obtained from {{OG_Host }}/api/v2/platform/operator/betlimit.
  3. Use the Token and redirect the player to the game. The Token is generated by the Operator to verify the player’s information.
  4. Only using {{Operator_Host }}/api/v2/operator/security/authenticate OG will authenticate player information to the Operator.
  5. When OG receives S-100 verification from Operator {{Operator_Host }}/api/v2/operator/security/authenticate, the player can then enter the game
  6. The operator should select an appropriate code from the Response Code list provided by us and return it accordingly.
  7. For request (3), if the signature verification fails, the operator should return response_code = E-103 in step (4).
  8. For request (3), if the token is invalid or does not exist, the operator should return response_code = E-106 in step (4).
  9. For request (3), if the player is disabled, the operator should return response_code = S-105 in step (4).

Transfer Wallet

Register Player

POST - /api/v2/platform/transfer-wallet/register

The operator requests to register a player (before registering a player, this interface can verify whether the player exists)

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
player_id Yes string body Support English letters and numbers Symbols are limited to underscore “_” Minimum length: 8 Maximum length: 64
nickname Yes string body Support English letters and numbers Symbols are limited to underscore “_” Minimum length: 8 Maximum length: 64
timestamp Yes unix timestamp body The timestamp of the current request

Request Example:

1 curl - - location - - request POST ‘http://xyz.pwqr820. com:9003/api/v2/platform/transfer- wallet/register’  2 - - header ‘key: {public_key}’  3 - - header ‘operator- name: {operator_name}’  4 - - data- raw ‘{ 5 “player_id”: “tyrion_12345”, 6 “nickname”: “iamtyrion12345”, 7 “timestamp”: 1689765296 8 }’

Successful Response Example:

1 {
2 "rs_code": "S-100",
3 "rs_message": "success"
4 }

Existing Player Response Example:

1 {
2 "rs_code": "S-121",
3 "rs_message": "player already exists"
4 }

Player Transfer - Deposit

POST - /api/v2/platform/transfer-wallet/deposit

The operator deposits the amount specified by the player from the operator’s system wallet to the OG platform

Note: You must register the player before calling this interface

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
player_id Yes string body Support English letters and numbers Symbols are limited to underscore “_” Maximum length: 8 Maximum length: 64
transaction_id Yes string body Supports lowercase letters, numbers Transfer ID is unique Minimum character length: 8 Maximum character length: 96
transfer_amount Yes digital body Decimal (34,2)
timestamp Yes unix timestamp body The timestamp of the current request
signature Yes string body Refer to signature validation notes

Request Example:

1 curl - - location - - request POST ‘http://xyz.pwqr820. com:9003/api/v2/platform/transfer- wallet/deposit’   2 - - header ‘key: {public_key}’   3 - - header ‘operator- name: {operator_name}’   4 - - header ‘Content- Type: application/json’   5 - - data- raw ’  6 “player_id”: “tyrion_12345”, 7 “transaction_id”: “6e75a8385497d325bf76da4184d1eb94”, 8 “transfer_amount”: 7395.00, 9 “timestamp”: 1689015741, 10 “signature”: “2afd17914a74ce7b4425fefe8e2d2f75” 11 }

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “balance”: 12345.67 5 }

Player Does Not Exist Response Example:

1 { "rs_code": "S-104", "rs_message": "player not available" }

Duplicate transaction_id Response Example:

1 { "rs_code": "S-101", "rs_message": "transaction is duplicated" }

Player Transfer-Withdraw

POST - /api/v2/platform/transfer-wallet/withdraw

The operator transfers the amount specified by the player from the OG platform to the operator’s system wallet.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
player_id Yes string body Support English letters and numbers Symbols are limited to underscore “” Minimum length: 8 Maximum length: 64
transaction_id Yes string body Supports lowercase letters, numbers Transfer ID is unique Minimum character length: 8 Maximum character length: 96
transfer_amount Yes digital body Decimal (34,2)
timestamp Yes unix timestamp body The timestamp of the current request
signature Yes string body Refer to signature validation notes

Request Example:

1 curl - - location - - request POST ‘http://xyz.pwqr820. com:9003/api/v2/platform/transfer- wallet/withdraw’  2 - - header ‘key:{public_key}’  3 - - header ‘operator- name:{operator_name}’  4 - - data- raw  5 “player_id”: “tyrion_12345”, 6 “transaction_id”: “6e778fbdafb0af9b28a0b8ebc771982d”, 7 “transfer_amount”: 22070.00, 8 “timestamp”: 1689138141, 9 “signature”: “ed5324d1fe5c99281df6a8e2d2641b85” 10 }

Successful Response Example:

1 { 2 "rs_code": "S-100", 3 "rs_message": "success", 4 "balance": 12345.67 5 }

Insufficient Balance Response Example:

1 { 2 "rs_code": "S-103", 3 "rs_message": "insufficient balance"
4 }

Duplicate Response With Transfer Number Example:

1 { 2 "rs_code": "S-101", 3 "rs_message": "transaction is duplicated"
4 }

Get Transfer History

GET - /api/v2/platform/transaction/transfer-history

Operator requests player balance history

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
fetch_id Optional integer params Last obtained transaction number Default = 1
limit Optional integer params Maximum number of response in the records Default = 5,000 Maximum number of transactions = 10,000
transaction_id Optional string params Retrieve records of a specific transaction id
player_id Optional string params Retrieve transaction records for a specific player

Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/transaction/transfer- history?fetch_id=1& limit=8000’   2 - - header ‘key: {public_key}’   3 - - header ‘operator- name: {operator_name}’

This interface is suitable for the following scenarios:

Retrieving transfer records for data queries. In cases where a transfer fails or times out due to unforeseen factors during the transfer process, this interface can be used to retrieve the transaction number and check if it exists in the platform system.

If unexpected factors also lead to failures or timeouts with this interface, manual inquiry to the platform is necessary. Do not associate this interface with the transfer interface for simultaneous confirmation.

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “last_fetch_id”: 2019, 5 “records”: [ 6 { 7 “fetch_id”: 2020, 8 “player_id”: “1175sbons41194674”, 9 “transaction_id”: “t10053053400005406863”, 10 “transaction_time”: 1694144197, 11 “transaction_type”: “deposit”, 12 “currency”: “THB”, 13 “transfer_amount”: 321.67, 14 “operator_name”: “testoperator” 15 }, 16 { 17 “fetch_id”: 2021, 18 “player_id”: “1175sbons41194674”, 19 “transaction_id”: “t10053053400005406864”, 20 “transaction_time”: 1694144197, 21 “transaction_type”: “withdrawn”, 22 “currency”: “THB”, 23 “transfer_amount”: 1000, 24 “operator_name”: “testoperator” 25 } 26 ], 27 }

No Data Found Response Example:

1 { 2 “rs_code”: “S- 115”, 3 “rs_message”: “no data found” 4 }

Get Game List

GET - /api/v2/platform/game/game-list

Display the list of games available for operators to use. In order to keep the information up to date, the operators should regularly get the game list by calling this URL.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
game_id No integer params Specify the game ID
game_name No string params Specify the game name
game_type No string params Specify the game type

Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/game/game- list’  2 - - header ‘key: {public_key}’  3 - - header ‘operator- name: {operator_name}’

Successful Response Example:

1 {
2 "rs_message": "success",
3 "rs_code": "S-100",
4 "records": [
5 {
6 "game_id": 1,
7 "game_type": "Live Game",
8 "game_name": "og-lobby",
9 "image": "https://live-test.coriental-game.com/ogplus/login/img_logoPlus.png"
10 "vendor_name": "og"
11 },
12 {
13 "game_id": 28,
14 "game_type": "Live Game",
15 "game_name": "P1_baccarat",
16 "image": "https://og-plus.os-cn-hongkong.aliyuncs.com/v6/dealer/blue/acidi.png",
17 "vendor_name": "og"
18 }
}

The game_id associated with the game is not the same between the production environment and stage environment. Operators should pay attention when deploying in the production environment.

The availability of games may change based on operational needs. Therefore, operators should dynamically display the list of available games accordingly.

16 | OG OPERATOR API INTEGRATION DOCUMENT

Get Bet Limit List

GET - /api/v2/platform/operator/betlimit

Display the list of available bet limit groups for operators to use. In order to keep up the information, operators should keep updating through calling this endpoint regularly.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
id No integer params Specify the bet limit group ID

Fetch All Bet Limit Sets Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/operator/betlimit’   2 - - header ‘key: {public_key}’   3 - - header ‘operator-name: {operator_name}’

Fetch Bet Limit Set With Given id Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/operator/betlimit?id=19683’   2 - - header ‘key: {public_key}’   3 - - header ‘operator-name: {operator_name}’

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “records”: [ 5 { 6 “id”: 109, 7 “min_limit”: 20000, 8 “max_limit”: 200000000 9 } 10 { 11 “id”: 110, 12 “min_limit”: 25000, 13 “max_limit”: 350000000 14 } 15 } 16 }

The id associated with the bet limit is not the same between the production environment and stage environment. Operators should pay attention when deploying in the production environment. Operators can allocate appropriate bet limit groups based on different player requirements.

17 | OG OPERATOR API INTEGRATION DOCUMENT

Enter Game

GET - /api/v2/platform/games/launch

When players access the selected game on the operator’s website, the operator should send a request with necessary information.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
player_id Yes string params Supports English letters and numbers Symbols are limited to underscore “_” Minimum length: 8 Maximum length: 64
nickname Yes string params Supports English letters and numbers Symbols are limited to underscore “_” Minimum length: 8 Maximum length: 64
timestamp Yes string params Timestamp as unix time
lang Yes string params Supports ISO-639-1 standard
token Yes string params Generated by the operator to identify players
game_id Yes integer params Get game list, refer to: /api/v2/platform/game/game-list
betlimit Yes integer params Get the restricted bet limit list, refer to: /api/v2/platform/operator/betlimit
signature Yes string params Refer to signature validation notes

Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/games/launch?player_id=tyrion1&timestamp=1689672707389&nickname= Tyrion&token=f43dcc09- b617- cc14- bdac- 94179d41b038&lang=zh&game_id=1&bextimit=1&signature=6438af1a5f27b82479b774bf3adcb77b’\2 - - header ‘key: {public_key}’\3 - - header ‘operator- name: {operator_name}’

Successful Response Example:

1 {2 “game_link”: “https://live- api- test.oriental- game.com:18088/play?token=f43dcc09- b617- cc14- bdac- 94179d41b038&player_code=428_ tyrion1&currency=CNY&lang=zh&game_code=og- lobby&pool_id=1&bextimit=1&nickname=Tyrion.tsai&timestamp=1689672707389&gameTypes=baccarat%2Cdragontiger%2Cmoneywheel%2Croulette%2Cthreecards%2Cniuniu%2Csicbo%2Csedie&tables=og- lobby&signature=1419c138c35ec48debccdd2eaab1da73”, “rs_code”: “S- 100”, “rs_message”: “success”3 }

Get Player Balance

GET - /api/v2/platform/transfer-wallet/get-balance

The operator requests the chip balance of a specified player.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
player_id Yes string params Supports English letters and numbers Symbols are limited to underscore “_” Minimum length: 8 Maximum length: 64

Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/transfer- wallet/get- balance?player_id= Tyrion_12345’  2 - - header ‘key: {public_key}’  3 - - header ‘operator- name: {operator_name}’

Successful Response Example:

1 { "rs_code": "S-100", "rs_message": "success" "player_id": "tyrion_12345", "current_balance": 5505.00 }

Player Not Available Response Example:

1 { "rs_code": "S-104", "rs_message": "player not available" }

Get Betting Records

GET - /api/v2/platform/transaction/history

The operator can retrieve the gaming records of affiliated players.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
fetch_id Optional integer params Last obtained transaction number Default = 1
limit Optional integer params Maximum number of response in the records Default = 5,000 Maximum number of transactions = 10,000
transaction_id Optional string params Retrieve records of a specific transaction id
player_id Optional string params Retrieve transaction records for a specific player
game_id Optional string params Retrieve transaction records for a specific game
round_id Optional string params Retrieve transaction records for a specific game round
game_type_id Optional integer params Default = 1 Values of game types: 1. Live Game 2. Slot Game 3. Chess Game 4. Lottery Game 5. Sports Game

Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/transaction/transfer- history?fetch_id=1& limit=8000’   2 - - header ‘key: {public_key}’   3 - - header ‘operator- name: {operator_name}’

“records” is JSON array

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “last_fetch_id”: 316, 5 “records”: [ 6 { 7 “fetch_id”: 2247, 8 “player_id”: “xdl24234324ddsfsd”, 9 “transaction_id”: “1005679720000838606123_1”, 10 “game_id”: 13, 11 “round_id”: 567972451, 12 “bet_place”: “p”, 13 “result_url”: “https://og- plus.oss- accelerate.aliyuncs.com/results/20240912/E120240912567972451. html”, 14 “debit_amount”: “10.00”, 15 “credit_amount”: “0.00”, 16 “winlose_amount”: “- 10.00”, 17 “currency”: “CNY”, 18 “secondary_info”: { 19 “balance”: “2188.50”, 20 “bet_amount”: “10.00”, 21 “detain_amount”: “0.00” 22 }, 23 “other_info”: { 24 “ip”: “52.192.117.253”, 25 “result”: “banker,small,banker_bonus”, 26 “browser”: “Safari”, 27 “roundno”: “32- 7”, 28 “game_name”: “baccarat”, 29 “deviceType”: “mobile”, 30 “game_information”: { 31 “bankerCards”: “KC,9h,”, 32 “playerCards”: “10S,3S,” 33 } 34 }, 35 “debit_at”: 1726124784, 36 “rollback_at”: ““, 37”credit_at”: 1726124795, 38 “cancel_at”: ““, 39”resettled_at”: ““, 40”game_name”: “SPEED BACCARAT”, 41 “transaction_type”: “credit”, 42 “remark”: {}, 43 “effective_amount”: “0.50” 44 } 45 } 46 }

No Data Response Example:

1 { 2 “rs_code”: “S- 115”, 3 “rs_message”: “no data found” 4 }

Seamless Wallet

Overview

OverviewSeamless wallet API is composed of two REST APIs, namely Game API and Wallet API.

Game API

Get Game List

GET - {{OG_Host}}/api/v2/platform/game/game-list

The operator needs to assign the selected game table to the player in the returned URL. There are various ways to assign the table to the player:

  1. Embed the game URL into the website using iframe to start the game2. Open the game URL on the original page3. Open a new tab on the browser to start the game

The game IDs of the production environment and stage environment are different. Operators should pay attention when deploying the production environment. Operators can access corresponding games according to their needs.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
game_id No integer params Specify the game ID
game_name No string params Specify the game name
game_type No string params Specify the game type

Request Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/game/game- list’  2 - - header ‘key: {public_key}’  3 - - header ‘operator- name: {operator_name}’

23 | OG OPERATOR API INTEGRATION DOCUMENT

Response Example:

1 { 2 “rs_message”:“success”, 3 “rs_code”: “S- 100”, 4 “records”: [ 5 { 6 “game_id”: 1, 7 “game_type”: “Live Game”, 8 “game_name”: “og- lobby” 9 “image”: “https://live- test.oriental- game.com/ogplus/login/img_logoPlus.png”, 10 “vendor_name”: “og” 11 1 12 { 13 “game_id”: 28, 14 “game_type”: “Live Game”, 15 “game_name”: “P1_baccarat” 16 “image”: “https://og- plus.oss- cn- hongkong.aliyuncs.com/v6/dealer/blue/aedrt.png”, 17 “vendor_name”: “og” 18 1 19 1 20 }

Get Bet Limit List

GET - {{OG_Host}}/api/v2/platform/operator/betlimit

The bet limit IDs of the production environment and stage environment are different. Operators should pay attention when deploying the production environment. Operators need to select the minimum/maximum bet limit suitable for the player and use it when the player logs in to the game.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
id No integer params Known bet limit id

Requesting All Bet Limit Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/operator/betlimit’  2 - - header ‘key: {public_key}’  3 - - header ‘operator- name: {operator_name}’

Requesting a Single Bet Limit Example:

1 curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/operator/betlimit’  2 - - header ‘key: {public_key}’  3 - - header ‘operator- name: {operator_name}’  4 - - data- raw ‘{ 5 “id”: “1” 6 }’

Successful Response Example:

1 { "rs_code": "S-100", "rs_message": "success", "records": [ { "id": 109, "min_limit": "20000.00", "max_limit": "200000000.00", }, { "id": 110, "min_limit": "25000.00", "max_limit": "350000000.00", } }

Enter Game

GET - {{OG_Host}}/api/v2/platform/games/launch

When a player wants to log in to the game, the operator needs to provide relevant requests that match the player’s information. OG will use {{Operator_Host}}/api/v2/operator/security/authenticate to confirm that the player is legitimate.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
player_id Yes string params Supports English letters and numbers Symbols are limited to underscore “_” Minimum length: 8 Maximum length: 64
timestamp Yes string params Timestamp as unix time
nickname Yes string params Nickname of player
token Yes string params Generated by the operator to identify players
lang Yes string params Language (supports ISO-639-1 standard)
game_id Yes integer params Refer to game list
signature Yes string params Refer to signature validation notes
betlimit Yes integer params Refer to bet limit list

Request Example:

curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/games/launch?player_id=test2&timestamp=1689532295&nickname=Tyrion.tsai&token=9NO2_OG8q&lang=zh&game_id=1&signature=12510b8cad931a6efe10c7d580bf7892&betlimit=85’ * header key: {public key} - - header ‘operator- name: {operator_name}’

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success” 4 “game_link”: “https://live- api.oriental- game.com:18088/play?token=235e09eb- 6941- 4c14- 8d7e- 17b8ff2a9094 Mobile IDR&player code=test2&currency=IDR&lang=id&game_code=og- lobby&pool_id=1&betlimit=30 9&nickname=Hnrico&timestamp=1689532005&tables=og- lobby%2CC12%2CG10%2CP1%2CP2%2CP7%2CP17%2CP19%2CP20%2CM1%2CM2%2CM3%2CM5%2CM6%2CM7%2CM8%2Cm88 lobby&gameTypes=baccarat%2Cblackjack%2Cdragonti ger%2Cfantan%2Ckeno%2Cmoneywheel%2Cniuniu%2Croulette%2Csedie%2Csicdb%2Cthreecards&signature=fdc7804cc1 5 8f817f41c2f0f8fd7cfe58” 1

Get Betting Records

GET - /api/v2/platform/transaction/history

Operator can use this function to fetch player’s betting records.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
fetch_id Optional integer params Last obtained transaction number, Default=1
limit Optional integer params Limit of each request Default = 5,000 Maximum = 10,000
transaction_id Optional string params Dedicated transaction_id
player_id Optional string params Dedicated player_id
game_id Optional string params Dedicated game_id
round_id Optional string params Dedicated round_id
game_type_id Optional integer params Default = 1 Values of game types: 1 Live Game 2 Slot Game 3 Chess Game 4 Lottery Game 5 Sports Game

Request Example:

curl - - location - - request GET ‘http://xyz.pwqr820. com:9003/api/v2/platform/transaction/history?fetch_id=1&limit=8000&game_type_id=1’  - - header ‘key:{public_key}’  - - header ‘operator- name:{operator_name}’

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “last_fetch_id”: 316, 5 “records”: [ 6 { 7 “fetch_id”: 316, 8 “player_id”: “Ashu_test001”, 9 “transaction_id”: “1005545960000767179713_1”, 10 “game_id”: 13, 11 “round_id”: 554596470, 12 “bet_place”: “p”, 13 “result_url”: “https://og- plus.oss- accelerate.aliyuncs.com/results/20240526/E120240526554596470. html”, 14 “debit_amount”: “10.00”, 15 “credit_amount”: “0.00”, 16 “winlose_amount”: “- 10.00”, 17 “currency”: “CNY”, 18 “secondary_info”: { 19 “balance”: “337.16”, 20 “bet_amount”: “10.00”, 21 “detain_amount”: “0.00” 22 }, 23 “other_info”: { 24 “ip”: “61.245.19.169”, 25 “result”: “banker,super_jsix,big,banker_bonus”, 26 “browser”: “Edge”, 27 “roundno”: “28- 26”, 28 “game_name”: “baccarat”, 29 “deviceType”: “desktop”, 30 “game_information”: { 31 “bankerCards”: “2S,4D”, 32 “playerCards”: “JC,10C,AS” 33 } 34 }, 35 “debit_at”: 1716708750, 36 “rollback_at”: ““, 37”credit_at”: 1716708769, 38 “cancel_at”: ““, 39”resettled_at”: ““, 40”game_name”: “SPEED BACCARAT”, 41 “transaction_type”: “credit”, 42 “remark”: }, 43 “effective_amount”: “10.00” 44 } 45 } 46 }

No data response:

1 { 2 “rs_code”: “S- 115”, 3 “rs_message”: “no data found” 4 } 5 - - header ‘key: {public_key}’   6 - - header ‘operator- name: {operator_name}’

Verify Player Information

POST - {{Operator_Host }}/api/v2/operator/security/authenticate

When a player enters the game, OG will call this API. The operator is required to verify the accuracy and existence of the player’s information. Upon successful verification, the API will return the necessary response parameters to OG, and the player will be directed to the selected game.

Parameters:

Parameter Required Data Type Message Type Description
key Yes string header Public key
operator-name Yes string header Given operator account
player_id Yes string body Supports English letters and numbers Symbols are limited to underscore “ _” Minimum length: 8 Maximum length: 64
timestamp Yes unix timestamp body Timestamp as unix time
token Yes string body Generated by the operator to identify players
signature Yes string body Refer to signature validation notes

Request Example:

1 curl - - location - - request POST ‘http://xyz.pwqr820. com:9003/api/v2/operator/security/authenticate’   2 - - header ‘key: {public_key}’   3 - - header ‘operator- name: {operator_name}’   4 - - data- raw ‘{ 5 “player_id”: “tester2”, 6 “timestamp”: 1645771135235, 7 “token”: “7a66ec6ecd1e27da02ba565b9c982db9”, 8 “signature”: “12510b8cad931a6efe10c7d580bf7892” 9 }’

28 | OG OPERATOR API INTEGRATION DOCUMENT

Successful Response Example:

1 { 2 “rs_message”: “success”, 3 “rs_code”: “S- 100”, 4 “player_status”: “activate”, 5 “token”: “7a66ec6ecd1e27da02ba565b9c982db9” 6 }

Get Player Balance

GET - {{Operator_Host }}/api/v2/operator

Requested when a player’s balance needs to be confirmed. The operator needs to provide the player’s balance to OG.

Parameters:

Parameter Required Data Type Message Type Description
player_id Yes string params Unique player name
timestamp Yes unix timestamp params Timestamp as unix time
signature Yes string params Refer to signature validation notes

Request Example:

1 curl - - location - - request GET ‘http://operator- domain/api/v2/operator/player/balance?player_id=tester2&timestamp=1645771135235&signature=12 510b8cad931a6efe10c7d580bf7892’

Successful Response Example:

1 {
2 "rs_code": "S-100", "rs_message": "success", "player_id": "tester2", "balance": 105000.00, "timestamp": 1689536393906, "currency": "KRW"
3
4
5
6
7
8

29 | OG OPERATOR API INTEGRATION DOCUMENT

Bet Debit Process

POST - {{ Operator_Host }}/api/v2/operator/transaction/bulk/debit

This API is called when a player places a bet. Players can bet on multiple betting areas at the same time. Each betting area has a corresponding bet transaction number. The operator needs to deduct the player’s betting amount and return the player’s latest amount at the same time.- The bet transaction number of each bet is a unique value. The operator needs to confirm that this bet transaction number has not been processed before deducting the player’s quota.- If one of the bets in the multi- bet fails, all bets in the entire multi- bet will be treated as failed. The operator needs to return the corresponding result according to the setting of the parameter code table.

Parameters:

Parameter Required Data Type Message Type Description
player_id Yes string body Unique player name
timestamp Yes unix timestamp body Timestamp as unix time
total_amount Yes decimal body Debit amount with decimal (34,2)
transaction_type Yes string body Use "debit"
game_id Yes integer body Use integer
round_id Yes string body Unique id for each game round
currency Yes string body Currency used by the operator
called_at Yes unix timestamp body The timestamp when the bet transaction was generated
signature Yes string body Refer to signature validation notes
records Yes json array body See below
json array in records
Parameter Data Type Description
amount decimal Debit amount with decimal (34,2)
bet_place string Betting place of player's bets
transaction_id string Unique id for each transaction
secondary_info json balance, bet_amount, detain_amount (for specific game)
other_info json Reserve fields. Use JSON object {}
remark json Additional info. Can be empty.

Request Example 1: other_info is an empty array

1 curl –location –request POST 'http://xyz.pwqr820.com:9003/api/v2/operator/transaction/bulk/debit' </td>
2 –data-raw '{
3 "player_id": "tester2",
4 "timestamp": 1689538267,
5 "total_amount": "2000.00",
6 "transaction_type": "debit",
7 "game_id": 29,
8 "round_id": "530538741",
9 "currency": "KRW",
10 "called_at": 1689538267,
11 "signature": "06b2803cc9a648624d9efec19bc365e3"
12 "records": [
13 {
14 "amount": "1000.00",
15 "transaction_id": "10053053800005407308361",
16 "bet_place": "etp",
17 "secondary_info": {
18 "bet_amount": "1000.00",
19 "detain_amount": "0.00"
20 },
21 "other_info": {},
22 "remark": {}
23 },
24 {
25 "amount": "1000.00",
26 "transaction_id": "50053053800005407308371",
27 "bet_place": "tie",
28 "secondary_info": {
29 "bet_amount": "1000.00",
30 "detain_amount": "0.00"
31 },
32 "other_info": {},
33 "remark": {}
34 }
35 }
36 }

Request Example 2: The order of other_info values is: device type, ip, browser

1 curl - - location - - request POST ‘http://xyz.pwqr820. com:9003/api/v2/operator/transaction/bulk/debit’  2 - - data- raw ’{ 3 “player_id”: “tester2”, 4 “timestamp”: 1689539717, 5 “total_amount”: “30000.00”, 6 “transaction_type”: “debit”, 7 “game_id”: 44, 8 “round_id”: “530539663”, 9 “currency”: “KRW”, 10 “called_at”: 1689539717, 11 “signature”: “80c56648940f9e4dfa85059702a615fb” 12 “records”: [ 13 { 14 “amount”: “10000.00”, 15 “transaction_id”: “16053053900005407381781”, 16 “bet_place”: “tie”, 17 “secondary_info”: { 18 “bet_amount”: “10000.00”, 19 “detain_amount”: “0.00” 20 } 21 “other_info”: { 22 “desktop”, 23 “115.238.108.2”, 24 “Safari” 25 } 26 “remark”: { 27 } 28 { 29 “amount”: “20000.00”, 30 “transaction_id”: “14053053900005407381791”, 31 “bet_place”: “d”, 32 “secondary_info”: { 33 “bet_amount”: “20000.00”, 34 “detain_amount”: “0.00” 35 } 36 “other_info”: { 37 “desktop”, 38 “115.238.108.2”, 39 “Safari” 40 } 41 “remark”: { 42 } 43 ] 44 }

Seamless Wallet API Wallet API: Bet Debit Process And Bet Payout Credit Process

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “player_id”: “3547487040”, 5 “total_amount”: “30000.00”, 6 “updated_balance”: “2180000.00”, 7 “billing_at”: “1689539718”, 8 “records”: “{\”amount\“\10000.00\”_id\“\16053053900005407381781},\”amount\“\20000.00", \”transaction_id\“\14053053900005407381791}}] 9 }

Bet Payout Credit Process

POST - {{ Operator_Host }}/api/v2/operator/transaction/credit

This API is called when the game ends Each bet transaction is unique. The operator needs to confirm that this bet transaction has not been processed yet before returning the player’s credit.

Parameters:

Parameter Required Data Type Message Type Description
player_id Yes string body Unique player name
timestamp Yes unix timestamp body Timestamp as unix time
amount Yes decimal body Payout amount with decimal (34,2)
effective_amount Yes decimal body Amount with decimal (34,2)
winlose_amount Yes decimal body Amount with decimal (34,2)
transaction_id Yes string body Unique id for each transaction
transaction_type Yes string body Use "credit"
round_id Yes string body Unique id for each round
game_code Yes string body Game code
game_id Yes integer body Use integer
bet_place Yes string body Bet area
result_url Yes string body Game result details
currency Yes string body Currency used by the operator
secondary_info Yes array body Reserved field; can be empty
other_info Yes array body Reserved field; can be empty
remark Yes array body Reserved field; can be empty
called_at Yes unix timestamp body The timestamp when the transaction was generated
signature Yes string body Refer to signature validation notes

Request Example:

1 curl - - location - - request POST ‘http://xyz.pwqr820. com:9003/api/v2/operator/transaction/credit’  2 - - data- raw ’{ 3 “player_id”: “tester2”, 4 “timestamp”: 1689540272, 5 “amount”: “0.00”, 6 “effective_amount”: “10000.00”, 7 “winlose_amount”: “- 10000.00”, 8 “transaction_id”: “16053054000005407408561”, 9 “transaction_type”: “credit”, 10 “round_id”: “530540003”, 11 “game_code”: “P7”, 12 “game_id”: 33, 13 “bet_place”: “tie”, 14 “result_url”: “https://og- plus.oss- accelerate.aliyuncs.com/results.html”, 15 “currency”: “KRW”, 16 “secondary_info”: {}, 17 “other_info”: {}, 18 “remark”: {}, 19 “called_at”: 1689540272, 20 “signature”: “0c0d2781a8b9b07a152560d8a46347b2” 21 }

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “player_id”: “tester2”, 5 “amount”: “0.00”, 6 “transaction_id”: “16053054000005407408561”, 7 “updated_balance”: “1610000.00”, 8 “billing_at”: 1689540273157 9 }

Seamless Wallet API Wallet API: Cancellation Process After Placing A Bet

Cancellation Process After Placing A Bet

POST - {{Operator_Host}}/api/v2/operator/transaction/bulk/debit

This API will be requested when the bet fails to initiate a rollback of the debit transaction.

The operator is responsible for verifying whether the request has not been previously processed before making adjustments to the player’s balance.

Once confirmed, the operator should proceed to return the money back to the player’s balance. Upon successful completion, the operator is expected to return the updated balance of the player.

Parameters:

Parameter Required Data Type Message Type Description
player_id Yes string body Unique player name
timestamp Yes unix timestamp body Timestamp as unix time
transaction_type Yes string body Use "rollback"
called_at Yes unix timestamp body The timestamp when the transaction was generated
signature Yes string body Refer to signature validation notes
records Yes json array body See below
json array in records
Parameter Data Type Description
amount decimal Debit amount with decimal (34,2)
bet_place string Betting place of player's bets
transaction_id string Unique id for each transaction
secondary_info json balance, bet_amount, detain_amount (for specific game)
other_info json Reserve fields. Use JSON object {}
remark json Additional info. Can be empty.

Request Example:

1 curl -location = request POST 'http://xyz.pwq820.com:9003/api/v2/operator/transaction/bulk/debit' 2 –data-raw '{
3 "player_id": "tester2",
4 "timestamp": 1689253494,
5 "transaction_type": "rollback",
6 "called_at": 1689253494,
7 "signature": "2728380e2935fbe3701c996893d7d4cc",
8 "records": [
9 {
10 "amount": "25000.00",
11 "transaction_id": "5005303600005382386391",
12 "bet_place": "tie",
13 "secondary_info": {
14 "bet_amount": "25000.00",

Seamless Wallet API Wallet API: Cancellation Process After Placing A Bet

Request Example:

15 "retain_amount": "0.00"
16 },
17 "other_info": {},
18 "remark": {}
19 },
20 {
21 "amount": "5000.00",
22 "transaction_id": "50053035600005382386321",
23 "bet_place": "b",
24 "secondary_info": {
25 "bet_amount": "5000.00",
26 "retain_amount": "0.00"
27 },
28 "other_info": {},
29 "remark": {}
30 }
31 }
32 }

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “player_id”: “tester2”, 5 “total_amount”: “30000.00”, 6 “updated_balance”: “2180000.00”, 7 “billing_at”: “1689253494”, 8 “records”: “[\”\25000.00\”_id\”\5005303560000538238639_1”,\”\”\5000.00", \”_id\”\50053035600005382386321”]”] 9 }

36 | OG OPERATOR API INTEGRATION DOCUMENT

Seamless Wallet API Wallet API: Cancellation Process After Getting A Payout

Cancellation Process After Getting A Payout

POST - {{Operator_Host}}/api/v2/operator/transaction/bulk/credit

This API will be requested when the payout amount needs to be taken back.

The operator is responsible for verifying whether the request has not been previously processed before making adjustments to the player’s balance.

Once confirmed, the operator should proceed to deduct the payout amount back from the player’s balance. Upon successful completion, the operator is expected to return the updated balance of the player.

Parameters:

Parameter Required Data Type Message Type Description
player_id Yes string body Unique player name
timestamp Yes unix timestamp body Timestamp as unix time
amount Yes decimal body Payout amount with decimal (34,2)
effective_amount Yes decimal body Amount with decimal (34,2)
winlose_amount Yes decimal body Amount with decimal (34,2)
transaction_id Yes string body Unique id for each transaction
transaction_type Yes string body Use "cancel"
round_id Yes string body Unique id for each round
game_code Yes string body Game code
game_id Yes integer body Use integer
bet_place Yes integer body Bet area
result_url Yes string body Game result details
currency Yes string body Currency used by the operator
secondary_info Yes array body Reserved field; can be empty

Request Example:

1 curl –location –request POST 'http://xyz.pwqr820.com:9003/api/v2/operator/transaction/credit' </td>
2 –data-raw '{
3 "player_id": "tester2",
4 "timestamp": 1689540272,
5 "amount": "0.00",
6 "effective_amount": "10000.00",
7 "winlose_amount": "-10000.00",
8 "transaction_id": "16053054000005407408561",
9 "transaction_type": "cancel",
10 "round_id": "530540003",
11 "game_code": "P7",
12 "game_id": 33,
13 "bet_place": "tie",
14 "result_url": "https://og-plus.os-s-accelerate.aliyuncs.com/results.html",
15 "currency": "KRW",
16 "secondary_info": {,

Seamless Wallet APIWallet API: Cancellation ProcessAfter Placing A Bet

Request Example:

“other_info”: {}, “remark”: {}, “called_at”: 1689540272, “signature”: “0c0d2781a89507a1525608a46347b2” }

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “player_id”: “tester2”, 5 “total_amount”: “30000.00”, 6 “updated_balance”: “2180000.00”, 7 “billing_at”: “1689253494”, 8 “records”: [“":”25000.00", _id": “5005303560000538238639_1”}, ": “5000.00", _id": “50053035600005382386321}]” 9 }

Resettle Process

POST - {{Operator_Host}}/api/v2/operator/transaction/bulk/credit This API will be requested when the bet needs to be resettled.

The operator is responsible for verifying whether the request has not been previously processed before making adjustments to the player’s balance.

Once confirmed, the operator should proceed to deduct the payout amount back from the player’s balance. Upon successful completion, the operator is expected to return the updated balance of the player.

Parameters:

Parameter Required Data Type Message Type Description
player_id Yes string body Unique player name
timestamp Yes unix timestamp body Timestamp as unix time
amount Yes decimal body Layout amount with decimal (34,2)
effective_amount Yes decimal body Amount with decimal (34,2)
winlose_amount Yes decimal body Amount with decimal (34,2)
transaction_id Yes string body Unique id for each transaction
transaction_type Yes string body Use "cancel"
round_id Yes string body Unique id for each round
game_code Yes string body Game code
game_id Yes integer body Use integer
bet_place Yes integer body Bet area
result_url Yes string body Game result details
currency Yes string body Currency used by the operator
secondary_info Yes array body Reserved field; can be empty

Request Example:

1 curl –location –request POST 'http://xyz.pwqr820.com:9003/api/v2/operator/transaction/credit' </td>
2 –data-raw '{
3 "player_id": "tester2",
4 "timestamp": 1689540272,
5 "amount": "0.00",
6 "effective_amount": "10000.00",
7 "winlose_amount": "-10000.00",
8 "transaction_id": "16053054000005407408561",
9 "transaction_type": "resettle",
10 "round_id": "530540003",
11 "game_code": "P7",
12 "game_id": 33,
13 "bet_place": "tie",
14 "result_url": "https://og-plus.os-s-accelerate.aliyuncs.com/results.html",
15 "currency": "KRW",
16 "secondary_info": {,

Seamless Wallet APIWallet API: Cancellation ProcessAfter Placing A Bet

Request Example:

“other_info”: {}, “remark”: {}, “called_at”: 1689540272, “signature”: “0c0d2781a895b07a1525608a46347b2” }

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “player_id”: “tester2”, 5 “total_amount”: “30000.00”, 6 “updated_balance”: “2180000.00”, 7 “billing_at”: “1689253494”, 8 “records”: [“amount":”25000.00\“_id":“5005303560000538238639_1”},\“":”5000.00", \“_id":“50053035600005382386321"}] 9 }

Promotions

POST - {{Operator_Host }}/api/v2/operator/transaction/reward

This API will be requested when there is a promotion

Parameters:

Parameter Required Data Type Message Type Description
player_id Yes string body Unique player account
timestamp Yes unix timestamp body Timestamp as unix time
amount Yes decimal body Debit amount with decimal (34,2)
transaction_id Yes string body Unique id for each transaction
game_code Yes integer body Use integers
round_id Yes string body Unique id for each game round
result_url Yes string body Game result url
currency Yes string body Currency
secondary_info Yes json body Reserved column; can be empty
other_info Yes json body Reserved column; can be empty
remark Yes json body Additional info; can be empty
called_at Yes unix timestamp body The timestamp when the transaction was generated
signature Yes string body Refer to signature validation notes

Request Example:

1 curl - - location - - request POST ‘http://xyz.pwqr820. com:9003/api/v2/operator/transaction/reward’  2 - - data- raw ‘{ 3 “player_id”: “tester2”, 4 “timestamp”: 1689540272, 5 “amount”: “200.00”, 6 “transaction_id”: “1605305400000540740856”, 7 “game_code”: “P1”, 8 “game_id”: 33, 9 “round_id”: “530540003”, 10 “result_url”: “https://og.plus.os- accelerate.aliyuncs.com/results.html”, 11 “currency”: “KRW”, 12 “secondary_info”: {}, 13 “other_info”: {}, 14 “remark”: {}, 15 “called_at”: “1689540272, 16”signature”: “0c0d2781a8b9b07a152560d8a46347b2” }’

Successful Response Example:

1 { 2 “rs_code”: “S- 100”, 3 “rs_message”: “success”, 4 “player_id”: “tester2”, 5 “amount”: “200.00”, 6 “transaction_id”: “1605305400000540740856”, 7 “updated_balance”: “7800.00”, 8 “billing_at”: 1689540272 9 }

ComparisonTable

OG Betting Record Parameter Comparison Table

Parameter Name Remark
fetch_id auto generated ID
player_id Player username
transaction_id transaction number unique
game_id game ID
round_id round number
bet_place bet area
result_url game result link
debit_amount bet amount
credit_amount payout amount
winlose_amount win lose amount
currency currency
secondary_info balance, bet_amount, detain_amount (for specific game)
other_info reserved field
debit_at bet date/time
rollback_at reserved field
credit_at payout date/time
cancel_at reserved field
resettled_times reserved field
transaction_type transaction type
remark reserved field
effective_amount valid bet

Baccarat (including: ordinary baccarat, commission-free baccarat, speed baccarat)

Game Name: Baccarat 百家乐
Betting Area English Name Chinese Name
P Player
b Banker
bs Banker Commission Free 庄免佣
s Super Six 超級6
tie Tie
bp Banker Pair 庄对
pp Player Pair 闲对
bg Big
sm Small
etp Either Pair 任意对子
pfp Perfect Pair 完美对子
bb Banker Dragon Bonus 庄龙宝
pb Player Dragon Bonus 闲龙宝

Dragon Tiger (including: classic dragon tiger, new dragon tiger)

Game Name: Dragon Tiger 龙虎
Betting Area English Name Chinese Name
d Dragon
t Tiger
tie Tie
do Dragon Odd 龙单
de Dragon Even 龙双
dr Dragon Red 龙红
db Dragon Black 龙黑
to Tiger Odd 虎单
te Tiger Even 虎双
tr Tiger Red 虎红
tb Tiger Black 虎黑

Niuniu

Game Name: Niuniu 牛牛
Betting Area English Name Chinese Name
be1 Banker1 Equal 庄1 平倍
bd1 Banker1 Double 庄1 翻倍
bm1 Banker1 Many 庄1 多倍
pe1 Player1 Equal 闲1 平倍
pd1 Player1 Double 闲1 翻倍
pm1 Player1 Many 闲1 多倍
be2 Banker2 Equal 庄2 平倍
bd2 Banker2 Double 庄2 翻倍
bm2 Banker2 Many 庄2 多倍
pe2 Player2 Equal 闲2 平倍
pd2 Player2 Double 闲2 翻倍
pm2 Player2 Many 闲2 多倍
be3 Banker3 Equal 庄3 平倍
bd3 Banker3 Double 庄3 翻倍
bm3 Banker3 Many 庄3 多倍
pe3 Player3 Equal 闲3 平倍
pd3 Player3 Double 闲3 翻倍
pm3 Player3 Many 闲3 多倍

Sedie

Game Name: Sedie 色碟
Betting Area English Name Chinese Name
bg Big
sm Small
od Odd
ev Even
r4 Four Red 4 (4紅)
r0 Four White 0 (4白)
r3 Three Red One White 3 (3紅1白)
r1 Three White One Red 1 (3白1紅)

Money Wheel

ThreeCards

Game Name: Money Wheel 幸运轮盘-龙
Betting Area English Name Chinese Name
x1 x1 1
x2 x2 2
x5 x5 5
x10 x10 10
x20 x20 20
og OG
Game Name: Three Cards 幸运金花
Betting Area English Name Chinese Name
d Dragon
p Phoenix
l Lucky 幸运一击
at Any Triple 豹子
sf Straight Flush 同花顺
f Flush 同花
s Straight 顺子
pa Pair9 or More 对8以上

Sicbo

Game Name: Sicbo 殷宝
Betting Area English Name Chinese Name
bg Big
sm Small
od Odd
ev Even
d1 Double(1) 对子1
d2 Double(2) 对子2
d3 Double(3) 对子3
d4 Double(4) 对子4
d5 Double(5) 对子5
d6 Double(6) 对子6
t1 Specific Triple(1) 围骰1
t2 Specific Triple(2) 围骰2
t3 Specific Triple(3) 围骰3
Game Name: Sicbo 段宝
Betting Area English Name Chinese Name
t4 Specific Triple(4) 囤骰4
t5 Specific Triple(5) 囤骰5
t6 Specific Triple(6) 囤骰6
at Any Triple 全围
s4 Sum4 和值4点
s5 Sum5 和值5点
s6 Sum6 和值6点
s7 Sum7 和值7点
s8 Sum8 和值8点
s9 Sum9 和值9点
s10 Sum10 和值10点
s11 Sum11 和值11点
s12 Sum12 和值12点
s13 Sum13 和值13点
s14 Sum14 和值14点
s15 Sum15 和值15点
s16 Sum16 和值16点
s17 Sum17 和值17点
c56 Two Dice Combo(5,6) 牌九式5、6
c46 Two Dice Combo(4,6) 牌九式4、6
c45 Two Dice Combo(4,5) 牌九式4、5
c36 Two Dice Combo(3,6) 牌九式3、6
c35 Two Dice Combo(3,5) 牌九式3、5
c34 Two Dice Combo(3,4) 牌九式3、4
c26 Two Dice Combo(2,6) 牌九式2、6
c25 Two Dice Combo(2,5) 牌九式2、5
c24 Two Dice Combo(2,4) 牌九式2、4
c23 Two Dice Combo(2,3) 牌九式2、3
c16 Two Dice Combo(1,6) 牌九式1、6
c15 Two Dice Combo(1,5) 牌九式1、5
c14 Two Dice Combo(1,4) 牌九式1、4
c13 Two Dice Combo(1,3) 牌九式1、3
c12 Two Dice Combo(1,2) 牌九式1、2
sd1 Single Dice(1) 单骰1
sd2 Single Dice(2) 单骰2
sd3 Single Dice(3) 单骰3
sd4 Single Dice(4) 单骰4
sd5 Single Dice(5) 单骰5
sd6 Single Dice(6) 单骰6

Roulette

Game Name: Roulette 轮盘
Betting Area English Name Chinese Name
s0 Straight 0 单数 0
s1 Straight 1 单数 1
s2 Straight 2 单数 2
s3 Straight 3 单数 3
s4 Straight 4 单数 4
s5 Straight 5 单数 5
s6 Straight 6 单数 6
s7 Straight 7 单数 7
s8 Straight 8 单数 8
s9 Straight 9 单数 9
s10 Straight 10 单数 10
s11 Straight 11 单数 11
s12 Straight 12 单数 12
s13 Straight 13 单数 13
s14 Straight 14 单数 14
s15 Straight 15 单数 15
s16 Straight 16 单数 16
s17 Straight 17 单数 17
s18 Straight 18 单数 18
s19 Straight 19 单数 19
s20 Straight 20 单数 20
s21 Straight 21 单数 21
s22 Straight 22 单数 22
s23 Straight 23 单数 23
s24 Straight 24 单数 24
s25 Straight 25 单数 25
s26 Straight 26 单数 26
s27 Straight 27 单数 27
s28 Straight 28 单数 28
s29 Straight 29 单数 29
s30 Straight 30 单数 30
s31 Straight 31 单数 31
s32 Straight 32 单数 32
s33 Straight 33 单数 33
s34 Straight 34 单数 34
s35 Straight 35 单数 35
s36 Straight 36 单数 36
Game Name: Roulette 轮盘
Betting Area English Name Chinese Name
sp0 Split (0,1) 分注0,1
sp1 Split (0,2) 分注0,2
sp2 Split (0,3) 分注0,3
sp3 Split (1,2) 分注1,2
sp4 Split (2,3) 分注2,3
sp5 Split (1,4) 分注1,4
sp6 Split (2,5) 分注2,5
sp7 Split (3,6) 分注3,6
sp8 Split (4,5) 分注4,5
sp9 Split (5,6) 分注5,6
sp10 Split (4,7) 分注4,7
sp11 Split (5,8) 分注5,8
sp12 Split (6,9) 分注6,9
sp13 Split (7,8) 分注7,8
sp14 Split (8,9) 分注8,9
sp15 Split (7,10) 分注7,10
sp16 Split (8,11) 分注8,11
sp17 Split (9,12) 分注9,12
sp18 Split (10,11) 分注10,11
sp19 Split (11,12) 分注11,12
sp20 Split (10,13) 分注10,13
sp21 Split (11,14) 分注11,14
sp22 Split (12,15) 分注12,15
sp23 Split (13,14) 分注13,14
sp24 Split (14,15) 分注14,15
sp25 Split (13,16) 分注13,16
sp26 Split (14,17) 分注14,17
sp27 Split (15,18) 分注15,18
sp28 Split (16,17) 分注16,17
sp29 Split (17,18) 分注17,18
sp30 Split (16,19) 分注16,19
sp31 Split (17,20) 分注17,20
sp32 Split (18,21) 分注18,21
sp33 Split (19,20) 分注19,20
sp34 Split (20,21) 分注20,21
sp35 Split (19,22) 分注19,22
sp36 Split (20,23) 分注20,23
Game Name: Roulette 轮盘
Betting Area English Name Chinese Name
sp37 Split (21,24) 分注21,24
sp38 Split (22,23) 分注22,23
sp39 Split (23,24) 分注23,24
sp40 Split (22,25) 分注22,25
sp41 Split (23,26) 分注23,26
sp42 Split (24,27) 分注24,27
sp43 Split (25,26) 分注25,26
sp44 Split (26,27) 分注26,27
sp45 Split (25,28) 分注25,28
sp46 Split (26,29) 分注26,29
sp47 Split (27,30) 分注27,30
sp48 Split (28,29) 分注28,29
sp49 Split (29,30) 分注29,30
sp50 Split (28,31) 分注28,31
sp51 Split (29,32) 分注29,32
sp52 Split (30,33) 分注30,33
sp53 Split (31,32) 分注31,32
sp54 Split (32,33) 分注32,33
sp55 Split (31,34) 分注31,34
sp56 Split (32,35) 分注32,35
sp57 Split (33,36) 分注33,36
sp58 Split (34,35) 分注34,35
sp59 Split (35,36) 分注35,36
st1 Street (1,2,3) 街注1,2,3
st2 Street (4,5,6) 街注4,5,6
st3 Street (7,8,9) 街注7,8,9
st4 Street (10,11,12) 街注10,11,12
st5 Street (13,14,15) 街注13,14,15
st6 Street (16,17,18) 街注16,17,18
st7 Street (19,20,21) 街注19,20,21
st8 Street (22,23,24) 街注22,23,24
st9 Street (25,26,27) 街注25,26,27
st10 Street (28,29,30) 街注28,29,30
st11 Street (31,32,33) 街注31,32,33
st12 Street (34,35,36) 街注34,35,36
t1 Trio (0,1,2) 三数0,1,2
t2 Trio (0,2,3) 三数0,2,3
Game Name: Roulette 轮盘
Betting Area English Name Chinese Name
c1 Corner (1,2,4,5) 角注1,2,4,5
c2 Corner (2,3,5,6) 角注2,3,5,6
c3 Corner (4,5,7,8) 角注4,5,7,8
c4 Corner (5,6,8,9) 角注5,6,8,9
c5 Corner (7,8,10,11) 角注7,8,10,11
c6 Corner (8,9,11,12) 角注8,9,11,12
c7 Corner (10,11,13,14) 角注10,11,13,14
c8 Corner (11,12,14,15) 角注11,12,14,15
c9 Corner (13,14,16,17) 角注13,14,16,17
c10 Corner (14,15,17,18) 角注14,15,17,18
c11 Corner (16,17,19,20) 角注16,17,19,20
c12 Corner (17,18,20,21) 角注17,18,20,21
c13 Corner (19,20,22,23) 角注19,20,22,23
c14 Corner (20,21,23,24) 角注20,21,23,24
c15 Corner (22,23,25,26) 角注22,23,25,26
c16 Corner (23,24,26,27) 角注23,24,26,27
c17 Corner (25,26,28,29) 角注25,26,28,29
c18 Corner (26,27,29,30) 角注26,27,29,30
c19 Corner (28,29,31,32) 角注28,29,31,32
c20 Corner (29,30,32,33) 角注29,30,32,33
c21 Corner (31,32,34,35) 角注31,32,34,35
c22 Corner (32,33,35,36) 角注32,33,35,36
f First Four (0,1,2,3) 线注0,1,2,3
l1 Line (1,2,3,4,5,6) 线注1,2,3,4,5,6
l2 Line (4,5,6,7,8,9) 线注4,5,6,7,8,9
l2 Line (4,5,6,7,8,9) 线注 (4,5,6,7,8,9)
l3 Line (7,8,9,10,11,12) 线注 (7,8,9,10,11,12)
l4 Line (10,11,12,13,14,15) 线注 (10,11,12,13,14,15)
l5 Line (13,14,15,16,17,18) 线注 (13,14,15,16,17,18)
l6 Line (16,17,18,19,20,21) 线注 (16,17,18,19,20,21)
l7 Line (19,20,21,22,23,24) 线注 (19,20,21,22,23,24)
l8 Line (22,23,24,25,26,27) 线注 (22,23,24,25,26,27)
l9 Line (25,26,27,28,29,30) 线注 (25,26,27,28,29,30)
l10 Line (28,29,30,31,32,33) 线注 (28,29,30,31,32,33)
l11 Line (31,32,33,34,35,36) 线注 (31,32,33,34,35,36)
Game Name: Roulette 轮盘
Betting Area English Name Chinese Name
cl1 Column (1,4,7,10,13,16,19,22,25,28,31,34) 列-1,4,7,10,13,16,19,22,25,28,31,34
cl2 Column (2,5,8,11,14,17,20,23,26,29,32,35) 列二2,5,8,11,14,17,20,23,26,29,32,35
cl3 Column (3,6,9,12,15,18,21,24,27,30,33,36) 列三3,6,9,12,15,18,21,24,27,30,33,36
d1 Dozen (1-12) 一打(1-12)
d2 Dozen (13-24) 二打(13-24))
d3 Dozen (25-36) 三打(25-36)
rd Red
bl Black
od Odd
ev Even
bg Big
sm Small
cl1 Column (1,4,7,10,13,16,19,22,25,28,31,34) 列-1,4,7,10,13,16,19,22,25,28,31,34

Sports

Other Info Parameter

Field Description Refer to
BetId Unique ID assigned for the bet
UserId ID of the user/player
bet_list List of bets Bet List Parameter List**

Bet List Parameter List*

Field Description Refer to
bet_selection_status Settlement status of the selection bet_selection_status*
sport_code ID of the sport the selection is under
sport_name Name of the sport the selection is under
SegmentId ID of the segment the selection is under
SegmentName Name of the segment the selection is under
LeagueId ID of the league the selection is under
league_name Name of the league the selection is under
FixtureId ID of the fixture the selection is under
FixtureName Name of the fixture the selection is under
FixtureType Name of the fixture type the selection is under
MarketTemplateId ID of a market the selection is under
MarketId ID of the market the selection is under
play_name Name of the market the selection is under
SelectionId ID of the selection
bet_item Name of the selection
FixtureStatus Current status of the fixture
Line Line of the selection
odds Current odds of the selections
score Score when the bet was placed
settlement_score Score when the selection was settled
home_team Name of the home team
away_team Name of the away team
DeadHeatFactor Value calculated against odds to reduce payout if win by deadheat
game_date_time Date of the match
FixtureStartDate Date of the match
BetSelectionId Unique ID of a bet selection

Sportsbet_selection_status*

English Name Chinese Name
Waiting 待定
Running 进行中
Won
HalfWon 赢半
Lost
HalfLost 输半
Cancelled 作废
Rollbacked 取消下注
CashedOut 兑现
Return Code Return Message Description
S-000 undefined The API request settings are missing and you need to confirm the relevant settings.
S-100 success Successful API request
S-101 transaction is duplicated The transaction number has been used
S-102 invalid transaction_id The format of the transaction number is incorrect
S-103 insufficient balance Player's balance is insufficient
S-104 player not available Unable to verify player information
S-105 player is deactivated Player has been banned
S-106 game is not available The game not started
S-107 bet limit setting is incorrect Wrong bet limit group setting
S-108 vendor is not available deactivated vendor
S-109 operator is not available The operator has been disabled or no relevant information found
S-110 no more new coming transaction No new transaction generated
S-111 caller IP not in whitelist IP is not whitelisted
S-112 insufficient chips quota System credit limit is insufficient
S-113 internal error on the operator Operator side internal error
S-114 internal error on the vendor Vendor internal error
S-115 no data found No new data
S-116 currency in transaction mismatched Currency setting error
S-117 Operator Response fail Operator side return error
S-118 bet is rollback Return the bet amount to the player
S-119 transaction does not existed The transaction number does not exist
S-121 player already exists
Return Code Return Message Description
E-000 error undefined Need to reconfirm error
E-100 invalid request format API request format incorrect
E-101 invalid request method API request method error
E-102 invalid public key in header Wrong public key
E-103 invalid signature Expired signature or wrong signature
E-104 invalid parameter Wrong request parameters or wrong parameter format
E-105 reach retry limit There is a limit on the number of API requests for debit, rollback, and resettle.
E-106 token is invalid Token expired or token error
E-107 response timeout Unable to connect to server
E-108 operator not in retry list Operator is not in the retry list

Live GameSuggested GameArrangement

Suggested Game Arrangement

We strongly suggest the game arrangement as follows:

Images can be downloaded here: https://docs.google.com/spreadsheets/d/19- 42h3t9Q7fw3UeknEEA- GdhqTc_N9tfEIDV3cVLI7s/edit?gid=1074503219#gid=1074503219