Players
POST /players/search
Searches authenticated-establishment players with pagination and filter support.
Endpoint
Request Body
{
"search": "string",
"filters": {
"status": [
"string"
],
"coin": {
"min": 0,
"max": 0
},
"registerDate": {
"from": "2026-01-01T00:00:00.000Z",
"to": "2026-01-01T00:00:00.000Z"
}
},
"pagination": {
"page": 1,
"limit": 25
}
}| Attribute | Type | Required | Description |
|---|---|---|---|
| search | string | No | Search by player name or playerId. |
| filters | object | No | |
| filters.status | array<string> | No | |
| filters.status[] | string | No | |
| filters.coin | object | No | |
| filters.coin.min | number | No | |
| filters.coin.max | number | No | |
| filters.registerDate | object | No | |
| filters.registerDate.from | string(date-time) | No | |
| filters.registerDate.to | string(date-time) | No | |
| pagination | object | No | |
| pagination.page | integer | No | |
| pagination.limit | integer | No |
Responses
200
Players search result.
{
"meta": {
"version": "default",
"pagination": {
"page": 1,
"limit": 2,
"total": 3,
"hasMore": true
},
"filters": {
"types": [
"string"
],
"statuses": [
"string"
],
"categories": [
"string"
],
"priceRange": {
"min": 0,
"max": 0
},
"stockRange": {
"min": 0,
"max": 0
},
"current": {}
},
"sort": {
"fields": [
"string"
],
"allowed": [
"string"
],
"default": {},
"current": {}
},
"paginationControls": {
"defaultLimit": 0,
"maxLimit": 0,
"allowed": [
0
],
"current": {}
},
"coin": {
"parity": 1,
"name": "Coins"
}
},
"data": [
{
"playerId": "29df8b26-a2c8-4a45-9601-07fec4c4242d",
"establishmentId": "522ef85f-7a5c-4ebb-b38d-46f40981be04",
"coins": 4989246,
"createdAt": "2025-12-01T16:19:58.000Z",
"email": "test@player.com",
"entityType": "",
"gameCredits": {},
"name": "User Player",
"playerStatus": "active",
"prizes": [
{}
],
"scope": ""
}
]
}| Attribute | Type | Required | Description |
|---|---|---|---|
| meta | object | No | |
| meta.version | string | No | |
| meta.pagination | object | No | |
| meta.pagination.page | integer | No | |
| meta.pagination.limit | integer | No | |
| meta.pagination.total | integer | No | |
| meta.pagination.hasMore | boolean | No | |
| meta.filters | object | No | |
| meta.filters.types | array<string> | No | |
| meta.filters.types[] | string | No | |
| meta.filters.statuses | array<string> | No | |
| meta.filters.statuses[] | string | No | |
| meta.filters.categories | array<string> | No | |
| meta.filters.categories[] | string | No | |
| meta.filters.priceRange | object | No | |
| meta.filters.priceRange.min | number | No | |
| meta.filters.priceRange.max | number | No | |
| meta.filters.stockRange | object | No | |
| meta.filters.stockRange.min | number | No | |
| meta.filters.stockRange.max | number | No | |
| meta.filters.current | object | No | |
| meta.sort | object | No | |
| meta.sort.fields | array<string> | No | |
| meta.sort.fields[] | string | No | |
| meta.sort.allowed | array<string> | No | |
| meta.sort.allowed[] | string | No | |
| meta.sort.default | object | No | |
| meta.sort.current | object | No | |
| meta.paginationControls | object | No | |
| meta.paginationControls.defaultLimit | integer | No | |
| meta.paginationControls.maxLimit | integer | No | |
| meta.paginationControls.allowed | array<integer> | No | |
| meta.paginationControls.allowed[] | integer | No | |
| meta.paginationControls.current | object | No | |
| meta.coin | object | No | |
| meta.coin.parity | number | No | |
| meta.coin.name | string | No | |
| data | array<object> | No | |
| data[] | object | No | |
| data[].playerId | string(uuid) | No | |
| data[].establishmentId | string(uuid) | No | |
| data[].coins | integer | No | |
| data[].createdAt | string(date-time) | No | |
| data[].email | string(email) | No | |
| data[].entityType | string | No | |
| data[].gameCredits | object | No | |
| data[].name | string | No | |
| data[].playerStatus | string | No | |
| data[].prizes | array<object> | No | |
| data[].prizes[] | object | No | |
| data[].scope | string | No |
400
Invalid players search payload.
500
Server error while searching players.
POST /players
Registers a new player within an establishment. A minimal payload includes name and associated establishment.
Endpoint
Request Body
{
"establishmentId": "string",
"name": "string",
"email": "string"
}| Attribute | Type | Required | Description |
|---|---|---|---|
| establishmentId | string | Yes | |
| name | string | Yes | |
| string | No |
Responses
200
Player created successfully.
500
Error creating new player.
GET /players/[playerId]
Retrieves a specific player's data including contact info and account status.
Endpoint
Parameters
| Attribute | Description | Type | Location | Required |
|---|---|---|---|---|
| playerId | string | path | Yes |
Responses
200
Player information retrieved successfully.
{
"playerStatus": "string",
"createdAt": "2026-01-01T00:00:00.000Z",
"coins": 0,
"playerId": "00000000-0000-0000-0000-000000000000",
"gameCredits": {},
"email": "name@example.com",
"name": "string",
"prizes": [
{}
],
"establishmentId": "00000000-0000-0000-0000-000000000000"
}| Attribute | Type | Required | Description |
|---|---|---|---|
| playerStatus | string | No | |
| createdAt | string(date-time) | No | |
| coins | integer | No | |
| playerId | string(uuid) | No | |
| gameCredits | object | No | |
| string(email) | No | ||
| name | string | No | |
| prizes | array<object> | No | |
| prizes[] | object | No | |
| establishmentId | string(uuid) | No |
400
Malformed player ID.
404
Player not found.
500
Error retrieving player data.
PUT /players/[playerId]
Updates a player's name, status, or email. Intended for use in account management tools or user support operations.
Endpoint
Request Body
{
"name": "string",
"playerStatus": "string",
"email": "string"
}| Attribute | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | |
| playerStatus | string | Yes | |
| string | No |
Parameters
| Attribute | Description | Type | Location | Required |
|---|---|---|---|---|
| playerId | string | path | Yes |
Responses
200
Player updated successfully.
400
Invalid or incomplete update data.
404
Player not found.
500
Server error during update.
DELETE /players/[playerId]
Deletes a player account by ID. This operation is irreversible and should only be used with caution.
Endpoint
Parameters
| Attribute | Description | Type | Location | Required |
|---|---|---|---|---|
| playerId | string | path | Yes |
Responses
200
Player deleted successfully.
400
Invalid player ID.
404
Player not found.
500
Server error while deleting player.
GET /players/[playerId]/tournament-position
Retrieves the current tournament leaderboard position of a player. May be used for showing ranking progress in a live campaign.
Endpoint
Parameters
| Attribute | Description | Type | Location | Required |
|---|---|---|---|---|
| playerId | string | path | Yes |
Responses
200
Tournament position retrieved.
400
Invalid player ID.
500
Failed to fetch tournament position.