Player API
Talo provides a powerful and secure authentication system out of the box. You can use Talo to authenticate players using their email, username, or any other identifier you choose.
Players can have any number of arbitrary properties that will persist between game sessions and all of their identities. You can use these, for example, to store a player's current health or level.
Learn more about player management here.
Endpoints
Identify a player
read:playerswrite:playersGET https://api.trytalo.com/v1/players/identifyHeaders
| Key | Required | Description |
|---|---|---|
x-talo-session | ❌ No | The session token (required if using Talo player authentication) |
Route params
None available
Query keys
| Key | Required | Description |
|---|---|---|
identifier | ✅ Yes | The unique identifier of the player. This can be their username, an email or a numeric ID |
service | ✅ Yes | The name of the service where the identity of the player comes from (e.g. "steam", "epic" or "username") |
Sample response
{ ... }
Steam authentication with identity (identifier format is <identity>:<ticket>)
{ ... }
Steam authentication without identity
{ ... }
Search for players
read:playersGET https://api.trytalo.com/v1/players/searchHeaders
None available
Route params
None available
Query keys
| Key | Required | Description |
|---|---|---|
page | ❌ No | The current pagination index (starting at 0) |
query | ✅ Yes | Search for players by IDs, prop values and alias identifiers |
Filter by player ID
{ ... }
Filter by identifier
{ ... }
Filter by prop value
{ ... }
Sample response
{ ... }
Find a player
read:playersGET https://api.trytalo.com/v1/players/:idHeaders
None available
Route params
| Key | Required | Description |
|---|---|---|
id | ✅ Yes | The ID of the player |
Query keys
None available
Sample response
{ ... }
Merge two players
read:playerswrite:playersPOST https://api.trytalo.com/v1/players/mergeHeaders
None available
Route params
None available
Query keys
None available
Body keys
| Key | Required | Description |
|---|---|---|
playerId1 | ✅ Yes | The first player ID - the second player will be merged into this player |
playerId2 | ✅ Yes | The second player ID |
Sample request
{ ... }
Sample response
{ ... }
Create a socket token for a player
write:playersPOST https://api.trytalo.com/v1/players/socket-tokenHeaders
| Key | Required | Description |
|---|---|---|
x-talo-alias | ✅ Yes | The ID of the player's alias |
Route params
None available
Query keys
None available
Body keys
None available
Sample response
{ ... }
Update a player's props
write:playersPATCH https://api.trytalo.com/v1/players/:idHeaders
None available
Route params
| Key | Required | Description |
|---|---|---|
id | ✅ Yes | The ID of the player |
Query keys
None available
Body keys
| Key | Required | Description |
|---|---|---|
props | ❌ No | An array of Props. Props that the player doesn't have will be added. Props with updated values will overwrite existing props. Props with a null value will be deleted from the player |
Sample request
{ ... }
Sample response
{ ... }
Types
Prop
type Prop = {
key: string
value: string | null
}