Open Game
Generate game launch URL for the Player.
API Information
- URL:
POST /v2/opengame - Authentication:Bearer Token
- Encryption:Requests are encrypted using AES-256-GCM; responses are returned as plaintext JSON
request
Request Headers
POST /v2/opengame HTTP/1.1
Host: api.example.com
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
x-agentid: integratorNBTest04
x-timestamp: 1769746894501
x-nonce: 56ffd5ecd8a3a4457863a0bd7c298fb2
x-signature: c25f8d23704373e8776cce6d9b10f1fde091c34db80d60523c7e04ff30e54633
Request Parameters
Parameters Before Encryption
{
"deviceType": 0,
"ipaddress": "35.200.72.205",
"lang": "en",
"lobbyUrl": "https://example.com",
"gameCode": "VP_230001_1",
"launchType": 1,
"username": "testaccount01"
}
Encrypted Request Body
{
"cipherText": "G0ZMDELeJwx+7JcIfIFOLJjkSzANPu6krGM2uw==..."
}
| Field | Type | Required | Description |
|---|---|---|---|
deviceType | number | Yes | Device Type: 0 = PC, 1 = Mobile device |
ipaddress | string | Yes | Player IP address (only one IP address can be provided) |
lang | string | Yes | Game interface Language |
gameCode | string | Yes | Game Code |
launchType | number | Yes | Launch Type: 0 = both, 1 = demo, 2 = real, default is 0 |
lobbyUrl | string | No | Lobby URL to return to after the game ends (must use https) |
username | string | No | Player Account (allowed to be empty or omitted when launchType is 1) |
Response
Success Response
{
"code": 0,
"message": "No error.",
"data": {
"gameLaunchHtml": null,
"gameLaunchUrl": "https://staggp.zzzstkk.com/game/230001/3.55.0?a=integratorNBTest04_VPSysDevTest010&g=230001&p=3UWzoOtmcKcdZbQnEiHwHbBn9i3w4y__R_DuvopsoYemrFfczHqZGciqR5YvDkTn...",
"mode": "real"
},
"logUUID": "23c50208-cd0f-4daa-be3c-f346da188107"
}
Response Field Description
| Field | Type | Description |
|---|---|---|
data.gameLaunchHtml | string | null | HTML content for game launch (used by some games, usually null) |
data.gameLaunchUrl | string | Game launch URL (open in a new window or iframe) |
data.mode | string | Game mode: "real" (real money mode) or "demo" (demo mode) |
Error Response
When the request fails, the corresponding error code will be returned.
Error Codes
| Code | Description | Handling Suggestion |
|---|---|---|
| 5 | Game is not found | Game does not exist, or has been delisted. Please confirm if the gameCode is correct. |
| 7 | Internal server error | Internal server error. Please try again later or contact the Customer Support Team. |
| 8 | The User is not exist | Player does not exist. Please create Player first. |
| 11 | Parameters error | Please ensure the request parameters are complete and correctly formatted |
| 19 | Invalid account | Player Account is invalid. Please check the Player Account. |
| 81 | Branch config not found | Branch configuration not found. Please contact the Customer Support Team. |
| 82 | Please check Site ID is for this player | Please confirm if the Site ID corresponds to this Player. |
| 86 | Game is restricted | Please refer to the Game List document or ask Customer Support. |
Error Response Example
{
"code": 5,
"message": "Game is not found",
"logUUID": "24cdc3b9-9fe8-44de-8391-a96863e46954"
}
{
"code": 8,
"message": "The User is not exist",
"logUUID": "24cdc3b9-9fe8-44de-8391-a96863e46954"
}
Important Notes
Special Notes
-
ipaddress Usage Restrictions:
- Only one IP address can be provided.
- If launchType is 1 (demo mode), a virtual IP can be provided.
-
Relationship between username and launchType:
- When launchType is 1 (demo mode), username is allowed to be empty or omitted.
- When launchType is 0 (both) or 2 (real), username must be provided.
-
lobbyUrl Format Requirements:
- If lobbyUrl is provided, the URL must use the https protocol.
General Notes
-
URL Expiration:
- Game URL is usually valid for 5 minutes.
- It needs to be re-obtained after expiration.
- A URL can only be used once.
-
Return Handling:
- lobbyUrl is used when the Player closes the game.
- It is recommended to set it as the game lobby page.
-
Play Mode:
- When launchType is 2 (real), players can choose to play in real money mode.
- When launchType is 1 (demo), players can choose to play in demo mode.
- When launchType is 0 (both), Player can choose to play in real money mode or demo mode on the game screen.
- When playing in demo mode, Player Account can be omitted. If provided, Player can switch to real money mode within the game.
-
Concurrency Restrictions:
- The same Player can only open one game link at a time (dual-opening is not supported).
- Opening a new game will automatically close the old link.
Frequently Asked Questions
Q1: How will an anomaly within the game affect its display?
A: Depending on the error, it will be decided whether to jump away or stay in the game after confirming the prompt message. Not all errors will lead to the game directly closing and redirecting.
Q2: How does the presence or absence of lobbyUrl affect in-game redirects?
A: Following the previous question, if the error requires a redirect, it will redirect based on lobbyUrl. If no lobbyUrl is provided, the window will close.
Q3: What error scenarios lead to redirects?
A: Due to the variety of situations, please contact Customer Support for further description if you need more details.