Skip to content

Game Launch

Get game launch URL for players to enter real-money games.

Endpoint

PropertyValue
PathPOST /papi/v1/game/launch
AuthAgent Token (Bearer)
Content-Typeapplication/x-www-form-urlencoded

Request Parameters

ParameterTypeRequiredDescription
member_idstringYesPlayer unique identifier (Agent-side ID)
game_idstringYesGame ID (from Game List API)
currencystringYesCurrency code (e.g. MYR, USD). Automatically converted to uppercase
platformstringNoPlatform type: WEB / MOBILE / DESKTOP, default WEB. Automatically converted to uppercase
languagestringNoLanguage code, default en-US
return_urlstringNoURL to redirect after game exit

Automatic Setup

When a player launches a game for the first time:

  1. The player is automatically registered with the game provider (no separate call needed)
  2. A wallet with balance=0 is automatically created for the specified currency (if not already exists)

Request Example

bash
curl -X POST https://api.example.com/papi/v1/game/launch \
  -H "Authorization: Bearer {agent_token}" \
  -d "member_id=PLAYER_001&game_id=xxxx-guid&currency=MYR&platform=WEB&language=en-US"

Response Fields

FieldTypeDescription
game_urlstringGame launch URL (redirect player to this URL to enter game)

Response Example

json
{
  "status": true,
  "code": 0,
  "data": {
    "game_url": "https://game.provider.com/play?token=xxx&lang=en-US"
  },
  "msg": "success"
}

Error Codes

CodeMessageDescription
1001err.param.invalidRequired parameters missing (member_id, game_id, currency)
1002err.signature.invalidAgent Token verification failed
2001err.player.not_foundPlayer not found (must register first)
4001err.game.not_foundGame not found or offline
4005err.game.launch_failedGame launch failed (provider registration or internal error)
4006err.game.access_deniedAgent does not have permission for this game
5002err.provider.call_failedGame provider API call failed

VCT Gaming Integration Platform