Get Player Info (Game Server)
Look up a player's public profile and wallets by user ID from your game server.
Endpoint
GET /api/v2/user/{userId}/game
Authentication
This endpoint requires the game server key. No user JWT token is needed — your game server can look up any player by their user ID.
x-game-server-key: your-game-server-key
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
userId | string | Yes | The player's user ID |
Request Example
curl -X GET https://api.intraverse.io/api/v2/user/user-abc-123/game \
-H "x-game-server-key: your-game-server-key"
Response
Success Response (200)
{
"id": "user-abc-123",
"username": "cool-panda-42",
"wallets": [
{
"walletAddress": "0x1234567890abcdef1234567890abcdef12345678",
"chain": "ethereum"
},
{
"walletAddress": "5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty",
"chain": "solana"
}
]
}
Response Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique user ID |
username | string | Display name |
wallets | array | User's linked wallets |
wallets[].walletAddress | string | Wallet address |
wallets[].chain | string | Blockchain network (e.g. ethereum, solana) |
Error Responses
| Code | Message | Description |
|---|---|---|
| 401 | Missing server key | x-game-server-key header not provided |
| 404 | Game not found | Server key does not match any game |
| 404 | User not found | No user exists with the given ID |
Usage Example
const userId = "user-abc-123";
const response = await fetch(`https://api.intraverse.io/api/v2/user/${userId}/game`, {
method: "GET",
headers: {
"x-game-server-key": gameServerKey,
},
});
const player = await response.json();
console.log(`Player: ${player.username}`);
console.log(`Wallets: ${player.wallets.length}`);