Skip to content

API Tooling

Machine-readable CGSP v1.1: an interactive API Explorer in the browser, a Postman collection to call the endpoints from a desktop app, and OpenAPI specs to generate code. All match the Protocol Reference exactly and are the same files used to validate the docs.

Want to…Use
Browse and send requests in the browser, nothing to installAPI Explorer
Call endpoints from a desktop appPostman collection
Generate a server stub for the serviceOpenAPI — Game Service
Generate a client for the platform callsOpenAPI — Platform

The portal ships its own interactive console — open /api-explorer/ to browse every endpoint, read the schemas, and send requests to your own running stack, with nothing to install and no account.

It is fully self-hosted: the rendering engine and the OpenAPI specs are served by this site, not a third-party cloud.

Every CGSP v1.1 endpoint in one importable collection, grouped by the four protocol surfaces.

FilePurpose
cloud1x2-cgsp.postman_collection.jsonThe collection — all endpoints
cloud1x2-cgsp.postman_environment.jsonA local environment (base URLs + secrets + sample IDs)

In Postman: Import → drop both files in → select the Cloud1x2 CGSP — Local environment in the top-right picker. The same JSON also imports into Insomnia or Bruno, or feeds curl for offline use.

CGSP endpoints flow in two directions, so the collection uses two base URLs:

VariableDefaultUsed by
serviceBaseUrlhttp://localhost:3030Control Plane — endpoints the game service hosts. Sending these simulates the platform driving the service.
platformBaseUrlhttp://localhost:7000Config + Ledger, Launch Verification, Wallet — endpoints the platform hosts. Sending these simulates the service calling the platform.
FolderSurfaceDirectionAuth header
1. Control PlaneControl PlanePlatform → Servicex-internal-control-secret
2. Config + LedgerConfig + LedgerService → Platformx-internal-config-secret / x-internal-wallet-secret
3. Launch VerificationLaunch VerificationService → Platformx-internal-verify-launch-secret
4. WalletWallet APIService → Platform → Operatorx-internal-wallet-secret

The collection ships with sample values so every request runs without editing. Override them in the environment to point at a real service or platform.

VariableDefaultMeaning
controlSecret, configSecret, walletSecret, verifyLaunchSecretdevThe four internal auth secrets
serviceUidwp9dvdgp4wfqmxq4The service’s 16-char wire identity
engineIdwp9dvdgp4wfqmxq4:p:42A sample engine identity
runtimeProfileId42A sample runtime profile
gameExternalId9000A sample game
betUidwp9dvdgp4wfqmxq4-01krr…A sample bet UID (drives trxIds)
partnerId, operatorId, currency, customer, playerTokensampleLaunch / wallet context

Against a running platform + service (see the Quickstart), the endpoints exercise a full bet:

  1. Control Plane → PUT desired-state — bring the engine up.
  2. Launch Verification → verify-launch (demo) — open a session.
  3. Config + Ledger → POST consolidated/tx — open the ledger for a bet.
  4. Config + Ledger → POST consolidated/tx/settle — settle it.

For real-money flows, add the Wallet folder’s debit → credit between steps 3 and 4. Remember: wallet calls return a two-layer response — check httpOk, not just ok (see the Wallet API).

For code generation and AI agents, CGSP is also published as OpenAPI 3.1. The protocol is split into two specs because it flows in two directions — each has a single server URL, which keeps generated code clean.

SpecDescribesGenerate
cgsp-game-service.openapi.yamlThe control plane the service hostsA server stub to implement
cgsp-platform.openapi.yamlThe platform endpoints the service callsA client to call

The gameplay WebSocket surface (Socket.IO) is not in OpenAPI — it is not a request/response HTTP API. See the Gameplay Protocol.

With openapi-generator (any target language):

Terminal window
# A server stub for the service to implement (Node + Express shown)
npx @openapitools/openapi-generator-cli generate \
-i https://<portal-host>/cgsp-game-service.openapi.yaml \
-g nodejs-express-server -o ./cgsp-server
# A typed client for the platform calls (TypeScript shown)
npx @openapitools/openapi-generator-cli generate \
-i https://<portal-host>/cgsp-platform.openapi.yaml \
-g typescript-fetch -o ./cgsp-client

Both specs validate as OpenAPI 3.1 and can be loaded into Swagger UI, Redoc, Stoplight, or imported directly into Postman (Import → API keeps them as a spec rather than a static collection).