Game Token Response
Schema for game authentication token responses in the Intraverse Backend API v2.
Description
The Game Token Response schema defines the structure of authentication tokens returned when users authenticate for specific games. This includes magic link tokens for game authentication.
Class Validator Schema
import { IsString } from "class-validator";
export class GameTokenResponse {
@IsString()
public link: string;
}
TypeScript Type
interface GameTokenResponse {
link: string;
}
Example Response
{
"link": "https://game.intraverse.com/auth?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
Field Descriptions
| Field | Type | Required | Description |
|---|---|---|---|
link | string | Yes | Magic link URL for game authentication |
Usage Example
// Get game magic link
const response = await fetch("https://api.intraverse.io//v2/authentication/game/token/client-key", {
method: "POST",
headers: {
Authorization: `Bearer ${accessToken}`,
},
});
const result = await response.json();
if (result.link) {
// Redirect user to the magic link
window.location.href = result.link;
}
API Endpoints
This schema is used by the following endpoints:
POST /v2/authentication/game/token/:clientKey- Get game magic link for clientPOST /v2/authentication/game/token/server/:serverKey- Get game magic link for server
Authentication
Both endpoints require:
User Authentication
- JWT Bearer Token:
Authorization: Bearer <jwt_token> - Purpose: Identifies the authenticated user
- Scope: User must have valid authentication
Game Authentication
- Client Endpoint:
x-game-key: <client_key>header - Server Endpoint:
x-game-server-key: <server_key>header - Purpose: Identifies the game/application making the request
Example Request Headers
// For client endpoint
headers: {
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"x-game-key": "your-game-client-key"
}
// For server endpoint
headers: {
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"x-game-server-key": "your-game-server-key"
}