Players

Players

POST /players/search

Searches authenticated-establishment players with pagination and filter support.

Endpoint

POST/players/search

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
  }
}
AttributeTypeRequiredDescription
searchstringNoSearch by player name or playerId.
filtersobjectNo
filters.statusarray<string>No
filters.status[]stringNo
filters.coinobjectNo
filters.coin.minnumberNo
filters.coin.maxnumberNo
filters.registerDateobjectNo
filters.registerDate.fromstring(date-time)No
filters.registerDate.tostring(date-time)No
paginationobjectNo
pagination.pageintegerNo
pagination.limitintegerNo

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": ""
    }
  ]
}
AttributeTypeRequiredDescription
metaobjectNo
meta.versionstringNo
meta.paginationobjectNo
meta.pagination.pageintegerNo
meta.pagination.limitintegerNo
meta.pagination.totalintegerNo
meta.pagination.hasMorebooleanNo
meta.filtersobjectNo
meta.filters.typesarray<string>No
meta.filters.types[]stringNo
meta.filters.statusesarray<string>No
meta.filters.statuses[]stringNo
meta.filters.categoriesarray<string>No
meta.filters.categories[]stringNo
meta.filters.priceRangeobjectNo
meta.filters.priceRange.minnumberNo
meta.filters.priceRange.maxnumberNo
meta.filters.stockRangeobjectNo
meta.filters.stockRange.minnumberNo
meta.filters.stockRange.maxnumberNo
meta.filters.currentobjectNo
meta.sortobjectNo
meta.sort.fieldsarray<string>No
meta.sort.fields[]stringNo
meta.sort.allowedarray<string>No
meta.sort.allowed[]stringNo
meta.sort.defaultobjectNo
meta.sort.currentobjectNo
meta.paginationControlsobjectNo
meta.paginationControls.defaultLimitintegerNo
meta.paginationControls.maxLimitintegerNo
meta.paginationControls.allowedarray<integer>No
meta.paginationControls.allowed[]integerNo
meta.paginationControls.currentobjectNo
meta.coinobjectNo
meta.coin.paritynumberNo
meta.coin.namestringNo
dataarray<object>No
data[]objectNo
data[].playerIdstring(uuid)No
data[].establishmentIdstring(uuid)No
data[].coinsintegerNo
data[].createdAtstring(date-time)No
data[].emailstring(email)No
data[].entityTypestringNo
data[].gameCreditsobjectNo
data[].namestringNo
data[].playerStatusstringNo
data[].prizesarray<object>No
data[].prizes[]objectNo
data[].scopestringNo

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

POST/players

Request Body

{
  "establishmentId": "string",
  "name": "string",
  "email": "string"
}
AttributeTypeRequiredDescription
establishmentIdstringYes
namestringYes
emailstringNo

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

GET/players/{playerId}

Parameters

AttributeDescriptionTypeLocationRequired
playerIdstringpathYes

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"
}
AttributeTypeRequiredDescription
playerStatusstringNo
createdAtstring(date-time)No
coinsintegerNo
playerIdstring(uuid)No
gameCreditsobjectNo
emailstring(email)No
namestringNo
prizesarray<object>No
prizes[]objectNo
establishmentIdstring(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

PUT/players/{playerId}

Request Body

{
  "name": "string",
  "playerStatus": "string",
  "email": "string"
}
AttributeTypeRequiredDescription
namestringYes
playerStatusstringYes
emailstringNo

Parameters

AttributeDescriptionTypeLocationRequired
playerIdstringpathYes

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

DELETE/players/{playerId}

Parameters

AttributeDescriptionTypeLocationRequired
playerIdstringpathYes

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

GET/players/{playerId}/tournament-position

Parameters

AttributeDescriptionTypeLocationRequired
playerIdstringpathYes

Responses

200

Tournament position retrieved.

400

Invalid player ID.

500

Failed to fetch tournament position.