Skip to content

Players API

Set custom properties for a player. Properties are stored as JSONB and queryable in the Player Explorer.

Auth: x-game-api-key header

Terminal window
curl -X POST https://api.questdata.io/v1/identify \
-H "Content-Type: application/json" \
-H "x-game-api-key: YOUR_API_KEY" \
-d '{
"player_id": "player-123",
"properties": {
"platform": "Windows",
"language": "en",
"level": 15,
"spending_tier": "dolphin"
}
}'
FieldTypeRequiredDescription
player_idstringYesPlayer identifier
propertiesobjectYesKey-value pairs to store
{
"player_id": "player-123",
"properties": {
"platform": "Windows",
"language": "en",
"level": 15,
"spending_tier": "dolphin"
}
}

Properties are merged — existing properties not included in the request are preserved.


Add a tag to a player for segmentation.

Auth: x-game-api-key header

Terminal window
curl -X POST https://api.questdata.io/v1/players/player-123/tags \
-H "Content-Type: application/json" \
-H "x-game-api-key: YOUR_API_KEY" \
-d '{"tag": "vip"}'
FieldTypeRequiredDescription
tagstringYesTag name (auto-lowercased)

Remove a tag from a player.

Auth: x-game-api-key header

Terminal window
curl -X DELETE https://api.questdata.io/v1/players/player-123/tags/vip \
-H "x-game-api-key: YOUR_API_KEY"

Fetch player details including properties, tags, and session history.

Auth: x-game-api-key header or JWT Bearer

Terminal window
curl "https://api.questdata.io/v1/players/player-123" \
-H "x-game-api-key: YOUR_API_KEY"

Fetch a player’s event timeline.

Auth: x-game-api-key header or JWT Bearer

Terminal window
curl "https://api.questdata.io/v1/players/player-123/timeline?limit=50" \
-H "x-game-api-key: YOUR_API_KEY"
ParameterTypeDefaultDescription
limitnumber50Events to return
offsetnumber0Pagination offset