1. API Reference
Chizverse
  • ChizVerse Developer Docs
    • Getting Started
    • API Reference
      • Overview
      • Chizmis Authentication
        • Exchange for a ChizVerse Bearer
        • Hosted Client Login
        • Hosted Client Registration
        • Logout
        • Get Current Account
        • Validate Client Application
        • Login with Existing Session
        • Verify Session Key
      • Activity Tracking
        • Create Launch
        • Create Tracked Session
        • Get Session Checkpoint
        • Get Saved Player Progress
        • Ingest Event Batch
        • Get Game Leaderboard
      • ChizPay Wallet & Transactions
        • Get Wallet by Account ID
        • Transfer Wallet Balance
        • Get Wallet Transaction History
        • Debit Wallet
        • Credit Wallet
        • Get Game Ledger
    • SDK
    • Schemas
      • ExchangeForAChizVerseBearerResponse
      • ExchangeForAChizVerseBearerRequest
      • LogoutResponse
      • LogoutRequest
      • GetCurrentAccountResponse
      • ValidateClientApplicationResponse
      • LoginWithExistingSessionResponse
      • LoginWithExistingSessionRequest
      • VerifySessionKeyResponse
      • CreateLaunchResponse
      • CreateLaunchRequest
      • CreateTrackedSessionResponse
      • CreateTrackedSessionRequest
      • GetSessionCheckpointResponse
      • GetSavedPlayerProgressResponse
      • IngestEventBatchResponse
      • IngestEventBatchRequest
      • GetGameLeaderboardResponse
      • GetWalletByAccountIDResponse
      • TransferWalletBalanceResponse
      • TransferWalletBalanceRequest
      • GetWalletTransactionHistoryResponse
      • DebitWalletResponse
      • DebitWalletRequest
      • CreditWalletResponse
      • CreditWalletRequest
      • GetGameLedgerResponse
  1. API Reference

Chizmis Authentication API

BASE API : https://api.chizmis.com
Chizmis is the identity source for ChizVerse integrations. The callback token authenticates Chizmis and ChizPay requests. Exchange that token through ChizVerse Core Auth to obtain the separate ChizVerse bearer required to create Game Manager launches.

Authentication Flow#

1.
Validate the registered clientId and redirectUri.
2.
Redirect the player to hosted sign-in or sign-up.
3.
Receive the callback token at redirectUri?t=<token>.
4.
Persist the access token and sessionKey.
5.
Use authorization: Bearer <token> for protected API calls.
6.
Use saved account/session endpoints for account switching.
7.
Call logout when the player signs out.

Exchange for a ChizVerse Bearer#

After receiving t from the Chizmis callback, exchange it for the ChizVerse bearer used by protected ChizVerse endpoints.

Method & URL#

POST https://api-chizverse.beespokedev.com/core/public/auth/chizmis

Headers#

NameTypeRequiredDescription
Content-TypestringYesapplication/json

Request Body#

{
  "token": "<chizmis-callback-token>"
}

Response Example#

{
  "success": true,
  "response": {
    "token": "<chizverse-access-token>",
    "refreshToken": "<chizverse-refresh-token>",
    "user": {
      "id": 1024,
      "email": "juan@example.com"
    }
  }
}
Use response.token as authorization: Bearer <token> for Create Launch. Continue using the original Chizmis token for Chizmis and ChizPay endpoints.

Getting clientId and redirectUri#

Use the ChizVerse Developer Console to create or configure the game application that will use Chizmis sign-in.
1.
Open the profile menu and select Developer Console.
Open the Developer Console from the profile menu
2.
Create a game, or open an existing game from the Developer Console. When creating a game, enter the required title and description, then select Create Game.
Create a game in the Developer Console
3.
Open the game's Config page and set Callback URL to the exact URL that should receive the auth callback, then use that same value as redirectUri.
4.
Use the registered Chizmis application client ID assigned to the game as clientId.
5.
Select Save after changing the Callback URL.
Set Callback URL from the Config page
[!IMPORTANT]
redirectUri must match the saved Callback URL exactly, including scheme, domain, port, and path. For local testing, a value like http://localhost:8080/callback is valid only when the same value is saved in the console.

Hosted Client Login#

Starts the Chizmis hosted sign-in flow. This is a browser navigation URL, not a JSON API call. The SDK builds this URL through auth.signIn().
Method & URL#
GET https://access.chizmis.com/auth/login
For sign-up mode:
GET https://access.chizmis.com/register

Headers#

No custom headers required.

Query Parameters#

NameTypeRequiredDescription
clientIdstringYesRegistered client application ID.
redirectUristringYesAllowed redirect URI for auth flow. Must match the client application's saved Callback URL.

Request Body#

No request body.

Behavior#

1.
Opens the Chizmis hosted login or registration page.
2.
After successful login, redirects back to redirectUri with callback token query parameter: ?t=<token>.

Success Response#

This endpoint is redirect-based and typically returns:
302 Found with a Location header to the hosted login URL.

Callback Example#

https://your-app.com/login?t=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

Getting sessionKey and uid#

The callback token (t) contains the values needed by session-based endpoints.
1.
Parse/decode the token payload.
2.
Read:
sessionKey from sessionKey
uid from uid
Example payload shape:
{
  "uid": 1024,
  "sessionKey": "session-abc123",
  "exp": 1790000000
}

Error Responses#

StatusMeaningExample Message
400Invalid query valuesredirectUri is required
401Unauthorized clientUnauthorized client
404Client app not foundClient not found
500Internal server errorInternal server error

Logout#

Terminates an active session using sessionKey and uid.
[!TIP]
You can extract both values by parsing the callback/access token (t): use payload.sessionKey and payload.uid.

Method & URL#

POST /public/auth/logout

Headers#

NameTypeRequiredDescription
Content-TypestringYesUse application/json.

Request Body#

NameTypeRequiredDescription
sessionKeystringYesSession key to terminate.
uidnumberYesUser ID associated with the session.
{
  "sessionKey": "sess_abc123",
  "uid": 1024
}

Response Example#

{
  "success": true,
  "response": {}
}

Error Responses#

StatusMeaningExample Message
400Invalid payloadsessionKey is required
401Unauthorized sessionUnauthorized
500Internal server errorInternal server error

Get Current Account#

Retrieves the authenticated user profile from the access token.

Method & URL#

GET /access/v1.0/accounts/me

Headers#

NameTypeRequiredDescription
authorizationstringYesBearer access token. Example: Bearer <token>.

Request Body#

No request body.

Response Example#

{
  "success": true,
  "response": {
    "id": 1024,
    "firstName": "Juan",
    "middleName": "S",
    "lastName": "Dela Cruz",
    "birthDate": "1998-01-01T00:00:00.000Z",
    "lastLogin": "2026-05-06T10:00:00.000Z",
    "avatar": "https://cdn.example.com/avatar.png",
    "email": "juan@example.com",
    "isActive": true,
    "signUpWith": "LOCAL"
  }
}

Error Responses#

StatusMeaningExample Message
401Missing/invalid tokenUnauthorized
404Account not foundAccount not found
500Internal server errorInternal server error

Validate Client Application#

Validates whether clientId and redirectUri are allowed.

Method & URL#

GET /access/public/auth/validate

Headers#

No custom headers required.

Query Parameters#

NameTypeRequiredDescription
clientIdstringYesRegistered client application ID.
redirectUristringYesAllowed redirect URI for auth flow. Must match the client application's saved Callback URL.

Request Body#

No request body.

Response Example#

{
  "success": true,
  "response": {
    "valid": true
  }
}

Error Responses#

StatusMeaningExample Message
400Invalid query valuesredirectUri is required
404Client app not foundClient not found
500Internal server errorInternal server error

Login with Existing Session#

Authenticates a user using a previously issued sessionKey and uid.
[!TIP]
sessionKey and uid can be obtained by parsing the callback/access token (t) and reading payload.sessionKey and payload.uid.

Method & URL#

POST /access/public/auth/session

Query Parameters#

NameTypeRequiredDescription
clientIdstringYesRegistered client application ID.
redirectUristringYesRegistered redirect URI for the client app. Must match the saved Callback URL.

Request Body#

NameTypeRequiredDescription
sessionKeystringYesExisting session key.
uidnumberYesAccount ID in that session.
{
  "sessionKey": "session-abc123",
  "uid": 1024
}

Response Example#

{
  "success": true,
  "response": {
    "token": "<access-token>",
    "data": {
      "email": "juan@example.com",
      "firstName": "Juan",
      "lastName": "Dela Cruz",
      "middleName": "S",
      "avatar": "https://cdn.example.com/avatar.png",
      "lastLogin": "2026-05-06T10:00:00.000Z"
    },
    "sessionKey": "session-abc123"
  }
}

Error Responses#

StatusMeaningExample Message
400Invalid payloaduid is required
401Session authentication failedInvalid session
404Session/user not foundNo session
500Internal server errorInternal server error

Verify Session Key#

Returns accounts linked to a given session key.

Method & URL#

GET /access/public/sessions/verify

Headers#

No custom headers required.

Query Parameters#

NameTypeRequiredDescription
sessionKeystringYesSession key to validate.

Request Body#

No request body.

Response Example#

{
  "success": true,
  "response": {
    "accounts": [
      {
        "id": 1024,
        "firstName": "Juan",
        "lastName": "Dela Cruz",
        "middleName": "S",
        "birthDate": "1998-01-01T00:00:00.000Z",
        "lastLogin": "2026-05-06T10:00:00.000Z",
        "avatar": "https://cdn.example.com/avatar.png",
        "email": "juan@example.com"
      }
    ]
  }
}

Error Responses#

StatusMeaningExample Message
400Invalid query valuessessionKey is required
500Internal server errorInternal server error
[!NOTE]
This endpoint can return HTTP 200 with accounts: [] and "message": "No session.".
Modified at 2026-07-30 06:57:16
Previous
Overview
Next
Exchange for a ChizVerse Bearer
Built with