Datacentre API Documentation
This documentation covers the Datacentre API for Soccerverse, which provides access to statistical data and analytics.
Introduction
The Soccerverse Datacentre API provides access to advanced analytics, historical data, and management tools beyond the core game features. This API is designed for data analysts, researchers, and third-party developers building companion applications for Soccerverse.
Base URL
All API requests should be sent to:
https://services.soccerverse.com/api
API Protocol
The Datacentre API uses a RESTful API design. Resources are accessed via standard HTTP methods:
- GET: Retrieve resources
- POST: Create resources
- PUT: Update resources
- DELETE: Delete resources
Example response format:
{
"page": 1,
"per_page": 20,
"total": 500,
"total_pages": 25,
"items": [
{
"id": 1,
"name": "Example",
"value": 1000
}
]
}
The API returns data in JSON format. Most list endpoints return paginated results with the following structure:
Field |
Description |
page |
Current page number |
per_page |
Number of items per page |
total |
Total number of items |
total_pages |
Total number of pages |
items |
Array of items for the current page |
Error Handling
Example error response:
{
"detail": {
"msg": "Invalid request parameters",
"type": "validation_error"
}
}
Error responses include a detail object with information about what went wrong:
Field |
Description |
msg |
Human-readable error message |
type |
Error type identifier |
Common Status Codes
Status Code |
Description |
200 |
OK - Request succeeded |
400 |
Bad Request - Invalid request format or parameters |
404 |
Not Found - Requested resource doesn't exist |
422 |
Validation Error - Request validation failed |
500 |
Server Error - Something went wrong on the server |
Player Methods
Methods Summary
Endpoint |
Description |
Method |
/players |
Retrieve list of soccer players |
GET |
/players/detailed |
Retrieve detailed soccer player data |
GET |
Retrieve list of soccer players
Request example:
curl -X GET "/api/players?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&age_min={age_min}&age_max={age_max}&age={age}&player_id={player_id}&wages_min={wages_min}&wages_max={wages_max}&rating_min={rating_min}&rating_max={rating_max}&value_min={value_min}&value_max={value_max}&country_id={country_id}&owned={owned}&positions={positions}&club_id={club_id}&allow_transfer={allow_transfer}&allow_renew={allow_renew}"
const response = await fetch("/api/players?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&age_min={age_min}&age_max={age_max}&age={age}&player_id={player_id}&wages_min={wages_min}&wages_max={wages_max}&rating_min={rating_min}&rating_max={rating_max}&value_min={value_min}&value_max={value_max}&country_id={country_id}&owned={owned}&positions={positions}&club_id={club_id}&allow_transfer={allow_transfer}&allow_renew={allow_renew}");
const data = await response.json();
console.log(data);
import requests
url = "/api/players"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "age_min": "{age_min}", "age_max": "{age_max}", "age": "{age}", "player_id": "{player_id}", "wages_min": "{wages_min}", "wages_max": "{wages_max}", "rating_min": "{rating_min}", "rating_max": "{rating_max}", "value_min": "{value_min}", "value_max": "{value_max}", "country_id": "{country_id}", "owned": "{owned}", "positions": "{positions}", "club_id": "{club_id}", "allow_transfer": "{allow_transfer}", "allow_renew": "{allow_renew}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 10, 20, 50) |
No |
20 |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
age_min |
object |
Minimum age for players |
No |
|
age_max |
object |
Maximum age for players |
No |
|
age |
object |
Exact age for players |
No |
|
player_id |
object |
Filter by specific player ID(s) |
No |
|
wages_min |
object |
Minimum wages |
No |
|
wages_max |
object |
Maximum wages |
No |
|
rating_min |
object |
Minimum rating |
No |
|
rating_max |
object |
Maximum rating |
No |
|
value_min |
object |
Minimum value |
No |
|
value_max |
object |
Maximum value |
No |
|
country_id |
object |
Country ID to filter players |
No |
|
owned |
object |
Filter players owned by the given name |
No |
|
positions |
object |
Comma-separated list of positions to filter players |
No |
|
club_id |
object |
Filter by specific club ID |
No |
|
allow_transfer |
object |
Filter by allow_transfer value |
No |
|
allow_renew |
object |
Filter by allow_renew value |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"player_id": 0,
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"wages": 0,
"multi_position": 0,
"positions": [
""
],
"rating": 0,
"country_id": "",
"dob": 0,
"value": 0,
"club_id": 0,
"agent_name": "",
"age": 0,
"profile_pic": ""
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[PlayerResponse] |
Items |
Retrieve detailed soccer player data
Request example:
curl -X GET "/api/players/detailed?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&age_min={age_min}&age_max={age_max}&age={age}&player_id={player_id}&wages_min={wages_min}&wages_max={wages_max}&contract_min={contract_min}&contract_max={contract_max}&rating_min={rating_min}&rating_max={rating_max}&rating_gk_min={rating_gk_min}&rating_gk_max={rating_gk_max}&rating_tackling_min={rating_tackling_min}&rating_tackling_max={rating_tackling_max}&rating_passing_min={rating_passing_min}&rating_passing_max={rating_passing_max}&rating_shooting_min={rating_shooting_min}&rating_shooting_max={rating_shooting_max}&rating_aggression_min={rating_aggression_min}&rating_aggression_max={rating_aggression_max}&rating_stamina_min={rating_stamina_min}&rating_stamina_max={rating_stamina_max}&value_min={value_min}&value_max={value_max}&desired_contract_min={desired_contract_min}&desired_contract_max={desired_contract_max}&country_id={country_id}&owned={owned}&positions={positions}&club_id={club_id}&allow_transfer={allow_transfer}&allow_renew={allow_renew}&fitness={fitness}&retired={retired}&morale={morale}&injured={injured}&injury_id={injury_id}&position={position}&multi_position={multi_position}&ability_gk={ability_gk}&ability_tackling={ability_tackling}&ability_passing={ability_passing}&ability_shooting={ability_shooting}&banned={banned}&cup_tied={cup_tied}&yellow_cards={yellow_cards}&red_cards={red_cards}"
const response = await fetch("/api/players/detailed?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&age_min={age_min}&age_max={age_max}&age={age}&player_id={player_id}&wages_min={wages_min}&wages_max={wages_max}&contract_min={contract_min}&contract_max={contract_max}&rating_min={rating_min}&rating_max={rating_max}&rating_gk_min={rating_gk_min}&rating_gk_max={rating_gk_max}&rating_tackling_min={rating_tackling_min}&rating_tackling_max={rating_tackling_max}&rating_passing_min={rating_passing_min}&rating_passing_max={rating_passing_max}&rating_shooting_min={rating_shooting_min}&rating_shooting_max={rating_shooting_max}&rating_aggression_min={rating_aggression_min}&rating_aggression_max={rating_aggression_max}&rating_stamina_min={rating_stamina_min}&rating_stamina_max={rating_stamina_max}&value_min={value_min}&value_max={value_max}&desired_contract_min={desired_contract_min}&desired_contract_max={desired_contract_max}&country_id={country_id}&owned={owned}&positions={positions}&club_id={club_id}&allow_transfer={allow_transfer}&allow_renew={allow_renew}&fitness={fitness}&retired={retired}&morale={morale}&injured={injured}&injury_id={injury_id}&position={position}&multi_position={multi_position}&ability_gk={ability_gk}&ability_tackling={ability_tackling}&ability_passing={ability_passing}&ability_shooting={ability_shooting}&banned={banned}&cup_tied={cup_tied}&yellow_cards={yellow_cards}&red_cards={red_cards}");
const data = await response.json();
console.log(data);
import requests
url = "/api/players/detailed"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "age_min": "{age_min}", "age_max": "{age_max}", "age": "{age}", "player_id": "{player_id}", "wages_min": "{wages_min}", "wages_max": "{wages_max}", "contract_min": "{contract_min}", "contract_max": "{contract_max}", "rating_min": "{rating_min}", "rating_max": "{rating_max}", "rating_gk_min": "{rating_gk_min}", "rating_gk_max": "{rating_gk_max}", "rating_tackling_min": "{rating_tackling_min}", "rating_tackling_max": "{rating_tackling_max}", "rating_passing_min": "{rating_passing_min}", "rating_passing_max": "{rating_passing_max}", "rating_shooting_min": "{rating_shooting_min}", "rating_shooting_max": "{rating_shooting_max}", "rating_aggression_min": "{rating_aggression_min}", "rating_aggression_max": "{rating_aggression_max}", "rating_stamina_min": "{rating_stamina_min}", "rating_stamina_max": "{rating_stamina_max}", "value_min": "{value_min}", "value_max": "{value_max}", "desired_contract_min": "{desired_contract_min}", "desired_contract_max": "{desired_contract_max}", "country_id": "{country_id}", "owned": "{owned}", "positions": "{positions}", "club_id": "{club_id}", "allow_transfer": "{allow_transfer}", "allow_renew": "{allow_renew}", "fitness": "{fitness}", "retired": "{retired}", "morale": "{morale}", "injured": "{injured}", "injury_id": "{injury_id}", "position": "{position}", "multi_position": "{multi_position}", "ability_gk": "{ability_gk}", "ability_tackling": "{ability_tackling}", "ability_passing": "{ability_passing}", "ability_shooting": "{ability_shooting}", "banned": "{banned}", "cup_tied": "{cup_tied}", "yellow_cards": "{yellow_cards}", "red_cards": "{red_cards}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 10, 20, 50) |
No |
20 |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
age_min |
object |
Minimum age for players |
No |
|
age_max |
object |
Maximum age for players |
No |
|
age |
object |
Exact age for players |
No |
|
player_id |
object |
Filter by specific player ID(s) |
No |
|
wages_min |
object |
Minimum wages |
No |
|
wages_max |
object |
Maximum wages |
No |
|
contract_min |
object |
Minimum contract |
No |
|
contract_max |
object |
Maximum contract |
No |
|
rating_min |
object |
Minimum rating |
No |
|
rating_max |
object |
Maximum rating |
No |
|
rating_gk_min |
object |
Minimum rating_gk |
No |
|
rating_gk_max |
object |
Maximum rating_gk |
No |
|
rating_tackling_min |
object |
Minimum rating_tackling |
No |
|
rating_tackling_max |
object |
Maximum rating_tackling |
No |
|
rating_passing_min |
object |
Minimum rating_passing |
No |
|
rating_passing_max |
object |
Maximum rating_passing |
No |
|
rating_shooting_min |
object |
Minimum rating_shooting |
No |
|
rating_shooting_max |
object |
Maximum rating_shooting |
No |
|
rating_aggression_min |
object |
Minimum rating_aggression |
No |
|
rating_aggression_max |
object |
Maximum rating_aggression |
No |
|
rating_stamina_min |
object |
Minimum rating_stamina |
No |
|
rating_stamina_max |
object |
Maximum rating_stamina |
No |
|
value_min |
object |
Minimum value |
No |
|
value_max |
object |
Maximum value |
No |
|
desired_contract_min |
object |
Minimum desired_contract |
No |
|
desired_contract_max |
object |
Maximum desired_contract |
No |
|
country_id |
object |
Country ID to filter players |
No |
|
owned |
object |
Filter players owned by the given name |
No |
|
positions |
object |
Comma-separated list of positions to filter players |
No |
|
club_id |
object |
Filter by specific club ID |
No |
|
allow_transfer |
object |
Filter by allow_transfer value |
No |
|
allow_renew |
object |
Filter by allow_renew value |
No |
|
fitness |
object |
Filter by fitness |
No |
|
retired |
object |
Filter by retired |
No |
|
morale |
object |
Filter by morale |
No |
|
injured |
object |
Filter by injured |
No |
|
injury_id |
object |
Filter by injury_id |
No |
|
position |
object |
Filter by position |
No |
|
multi_position |
object |
Filter by multi_position |
No |
|
ability_gk |
object |
Filter by ability_gk |
No |
|
ability_tackling |
object |
Filter by ability_tackling |
No |
|
ability_passing |
object |
Filter by ability_passing |
No |
|
ability_shooting |
object |
Filter by ability_shooting |
No |
|
banned |
object |
Filter by banned |
No |
|
cup_tied |
object |
Filter by cup_tied |
No |
|
yellow_cards |
object |
Filter by yellow_cards |
No |
|
red_cards |
object |
Filter by red_cards |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"player_id": 0,
"fitness": 0,
"retired": 0,
"morale": 0,
"injured": 0,
"injury_id": 0,
"wages": 0,
"contract": 0,
"form": "",
"position": 0,
"multi_position": 0,
"positions": [
""
],
"rating": 0,
"rating_gk": 0,
"rating_tackling": 0,
"rating_passing": 0,
"rating_shooting": 0,
"rating_stamina": 0,
"rating_aggression": 0,
"banned": 0,
"cup_tied": 0,
"yellow_cards": 0,
"red_cards": 0,
"dob": 0,
"side": "",
"value": 0,
"country_id": "",
"club_id": 0,
"agent_name": "",
"desired_contract": 0,
"allow_transfer": 0,
"allow_renew": 0,
"age": 0,
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"profile_pic": ""
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[PlayerDetailedResponse] |
Items |
Club Methods
Methods Summary
Endpoint |
Description |
Method |
/clubs |
Retrieve influence market data for clubs |
GET |
/clubs/detailed |
Retrieve detailed data for clubs |
GET |
/best_managers |
Get best managers data |
GET |
/club_balance_sheet/weeks |
Get club balance sheet entries by game week |
GET |
Retrieve influence market data for clubs
Request example:
curl -X GET "/api/clubs?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&club_id={club_id}&country_id={country_id}&owned={owned}&manager_locked={manager_locked}&balance_min={balance_min}&balance_max={balance_max}"
const response = await fetch("/api/clubs?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&club_id={club_id}&country_id={country_id}&owned={owned}&manager_locked={manager_locked}&balance_min={balance_min}&balance_max={balance_max}");
const data = await response.json();
console.log(data);
import requests
url = "/api/clubs"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "club_id": "{club_id}", "country_id": "{country_id}", "owned": "{owned}", "manager_locked": "{manager_locked}", "balance_min": "{balance_min}", "balance_max": "{balance_max}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 20, 50) |
No |
20 |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
club_id |
object |
Filter by specific club ID(s) |
No |
|
country_id |
object |
Country ID to filter clubs |
No |
|
owned |
object |
Filter clubs owned by the given name |
No |
|
manager_locked |
object |
Exact value for manager_locked |
No |
|
balance_min |
object |
Minimum balance |
No |
|
balance_max |
object |
Maximum balance |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"club_id": 0,
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"balance": 0,
"manager_name": "",
"country_id": "",
"value": 0,
"rating_start": 0,
"profile_pic": ""
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[ClubResponse] |
Items |
Retrieve detailed data for clubs
Request example:
curl -X GET "/api/clubs/detailed?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&club_id={club_id}&country_id={country_id}&owned={owned}&manager_locked={manager_locked}&available={available}&league_id={league_id}&division={division}&balance_min={balance_min}&balance_max={balance_max}&division_start_min={division_start_min}&division_start_max={division_start_max}&fans_start_min={fans_start_min}&fans_start_max={fans_start_max}&fans_current_min={fans_current_min}&fans_current_max={fans_current_max}&stadium_size_start_min={stadium_size_start_min}&stadium_size_start_max={stadium_size_start_max}&stadium_size_current_min={stadium_size_current_min}&stadium_size_current_max={stadium_size_current_max}&stadium_id_min={stadium_id_min}&stadium_id_max={stadium_id_max}&value_min={value_min}&value_max={value_max}&rating_start_min={rating_start_min}&rating_start_max={rating_start_max}&default_formation_min={default_formation_min}&default_formation_max={default_formation_max}&penalty_taker_min={penalty_taker_min}&penalty_taker_max={penalty_taker_max}&transfers_in_min={transfers_in_min}&transfers_in_max={transfers_in_max}&transfers_out_min={transfers_out_min}&transfers_out_max={transfers_out_max}"
const response = await fetch("/api/clubs/detailed?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&club_id={club_id}&country_id={country_id}&owned={owned}&manager_locked={manager_locked}&available={available}&league_id={league_id}&division={division}&balance_min={balance_min}&balance_max={balance_max}&division_start_min={division_start_min}&division_start_max={division_start_max}&fans_start_min={fans_start_min}&fans_start_max={fans_start_max}&fans_current_min={fans_current_min}&fans_current_max={fans_current_max}&stadium_size_start_min={stadium_size_start_min}&stadium_size_start_max={stadium_size_start_max}&stadium_size_current_min={stadium_size_current_min}&stadium_size_current_max={stadium_size_current_max}&stadium_id_min={stadium_id_min}&stadium_id_max={stadium_id_max}&value_min={value_min}&value_max={value_max}&rating_start_min={rating_start_min}&rating_start_max={rating_start_max}&default_formation_min={default_formation_min}&default_formation_max={default_formation_max}&penalty_taker_min={penalty_taker_min}&penalty_taker_max={penalty_taker_max}&transfers_in_min={transfers_in_min}&transfers_in_max={transfers_in_max}&transfers_out_min={transfers_out_min}&transfers_out_max={transfers_out_max}");
const data = await response.json();
console.log(data);
import requests
url = "/api/clubs/detailed"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "club_id": "{club_id}", "country_id": "{country_id}", "owned": "{owned}", "manager_locked": "{manager_locked}", "available": "{available}", "league_id": "{league_id}", "division": "{division}", "balance_min": "{balance_min}", "balance_max": "{balance_max}", "division_start_min": "{division_start_min}", "division_start_max": "{division_start_max}", "fans_start_min": "{fans_start_min}", "fans_start_max": "{fans_start_max}", "fans_current_min": "{fans_current_min}", "fans_current_max": "{fans_current_max}", "stadium_size_start_min": "{stadium_size_start_min}", "stadium_size_start_max": "{stadium_size_start_max}", "stadium_size_current_min": "{stadium_size_current_min}", "stadium_size_current_max": "{stadium_size_current_max}", "stadium_id_min": "{stadium_id_min}", "stadium_id_max": "{stadium_id_max}", "value_min": "{value_min}", "value_max": "{value_max}", "rating_start_min": "{rating_start_min}", "rating_start_max": "{rating_start_max}", "default_formation_min": "{default_formation_min}", "default_formation_max": "{default_formation_max}", "penalty_taker_min": "{penalty_taker_min}", "penalty_taker_max": "{penalty_taker_max}", "transfers_in_min": "{transfers_in_min}", "transfers_in_max": "{transfers_in_max}", "transfers_out_min": "{transfers_out_min}", "transfers_out_max": "{transfers_out_max}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 20, 50) |
No |
20 |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
club_id |
object |
Filter by specific club ID(s) |
No |
|
country_id |
object |
Country ID to filter clubs |
No |
|
owned |
object |
Filter clubs owned by the given name |
No |
|
manager_locked |
object |
Exact value for manager_locked |
No |
|
available |
object |
Availability status: 1 (available) or 0 (not available) |
No |
|
league_id |
object |
Filter by league ID |
No |
|
division |
object |
Filter by division |
No |
|
balance_min |
object |
Minimum balance |
No |
|
balance_max |
object |
Maximum balance |
No |
|
division_start_min |
object |
Minimum division_start |
No |
|
division_start_max |
object |
Maximum division_start |
No |
|
fans_start_min |
object |
Minimum fans_start |
No |
|
fans_start_max |
object |
Maximum fans_start |
No |
|
fans_current_min |
object |
Minimum fans_current |
No |
|
fans_current_max |
object |
Maximum fans_current |
No |
|
stadium_size_start_min |
object |
Minimum stadium_size_start |
No |
|
stadium_size_start_max |
object |
Maximum stadium_size_start |
No |
|
stadium_size_current_min |
object |
Minimum stadium_size_current |
No |
|
stadium_size_current_max |
object |
Maximum stadium_size_current |
No |
|
stadium_id_min |
object |
Minimum stadium_id |
No |
|
stadium_id_max |
object |
Maximum stadium_id |
No |
|
value_min |
object |
Minimum value |
No |
|
value_max |
object |
Maximum value |
No |
|
rating_start_min |
object |
Minimum rating |
No |
|
rating_start_max |
object |
Maximum rating |
No |
|
default_formation_min |
object |
Minimum default_formation |
No |
|
default_formation_max |
object |
Maximum default_formation |
No |
|
penalty_taker_min |
object |
Minimum penalty_taker |
No |
|
penalty_taker_max |
object |
Maximum penalty_taker |
No |
|
transfers_in_min |
object |
Minimum transfers_in |
No |
|
transfers_in_max |
object |
Maximum transfers_in |
No |
|
transfers_out_min |
object |
Minimum transfers_out |
No |
|
transfers_out_max |
object |
Maximum transfers_out |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"club_id": 0,
"balance": 0,
"form": "",
"division_start": 0,
"fans_start": 0,
"fans_current": 0,
"stadium_size_start": 0,
"stadium_size_current": 0,
"stadium_id": 0,
"value": 0,
"rating_start": 0,
"manager_name": "",
"default_formation": 0,
"penalty_taker": 0,
"country_id": "",
"manager_locked": 0,
"transfers_in": 0,
"transfers_out": 0,
"committed_tactics": "",
"proposed_manager": "",
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"available": 0,
"league_id": 0,
"division": 0,
"avg_wages": 0,
"total_wages": 0,
"total_player_value": 0,
"avg_player_rating": 0,
"avg_player_rating_top21": 0,
"avg_shooting": 0,
"avg_passing": 0,
"avg_tackling": 0,
"gk_rating": 0,
"profile_pic": "",
"manager_voted": 0
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[ClubDetailedResponse] |
Items |
Get best managers data
Request example:
curl -X GET "/api/best_managers?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&name={name}"
const response = await fetch("/api/best_managers?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&name={name}");
const data = await response.json();
console.log(data);
import requests
url = "/api/best_managers"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "name": "{name}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 20, 50) |
No |
20 |
sort_by |
BestManagersSortBy |
Field to sort by |
No |
rank_a_ranking |
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
name |
object |
Filter by specific user name (case sensitive) |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"rank_old": 0,
"rank_old_ranking": 0,
"rank_a": 0,
"rank_a_ranking": 0,
"rank_b": 0,
"rank_b_ranking": 0,
"profile_pic": ""
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[BestManagersResponse] |
Items |
Get club balance sheet entries by game week
Request example:
curl -X GET "/api/club_balance_sheet/weeks?club_id={club_id}&season_id={season_id}"
const response = await fetch("/api/club_balance_sheet/weeks?club_id={club_id}&season_id={season_id}");
const data = await response.json();
console.log(data);
import requests
url = "/api/club_balance_sheet/weeks"
params = {"club_id": "{club_id}", "season_id": "{season_id}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
club_id |
integer |
Club ID |
Yes |
|
season_id |
integer |
Season ID |
Yes |
|
Response example
[
{
"season": 0,
"game_week": 0,
"date": 0,
"agent_wages": 0,
"cash_injection": 0,
"gate_receipts": 0,
"ground_maintenance": 0,
"managers_wage": 0,
"merchandise": 0,
"other_income": 0,
"other_outgoings": 0,
"player_wages": 0,
"prize_money": 0,
"shareholder_payouts": 0,
"shareholder_prize_money": 0,
"sponsor": 0,
"transfers_in": 0,
"transfers_out": 0,
"tv_revenue": 0
}
]
Response Fields
Field |
Type |
Description |
season |
integer |
Season |
game_week |
integer |
Game Week |
date |
integer |
Date |
agent_wages |
integer |
Agent Wages |
cash_injection |
integer |
Cash Injection |
gate_receipts |
integer |
Gate Receipts |
ground_maintenance |
integer |
Ground Maintenance |
managers_wage |
integer |
Managers Wage |
merchandise |
integer |
Merchandise |
other_income |
integer |
Other Income |
other_outgoings |
integer |
Other Outgoings |
player_wages |
integer |
Player Wages |
prize_money |
integer |
Prize Money |
shareholder_payouts |
integer |
Shareholder Payouts |
shareholder_prize_money |
integer |
Shareholder Prize Money |
sponsor |
integer |
Sponsor |
transfers_in |
integer |
Transfers In |
transfers_out |
integer |
Transfers Out |
tv_revenue |
integer |
Tv Revenue |
League Methods
Methods Summary
Endpoint |
Description |
Method |
/leagues |
Retrieve data for leagues (with 5-min cache) |
GET |
/league_tables |
Get league table standings |
GET |
Retrieve data for leagues (with 5-min cache)
Request example:
curl -X GET "/api/leagues?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&country_id={country_id}&division={division}&league_id={league_id}"
const response = await fetch("/api/leagues?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&country_id={country_id}&division={division}&league_id={league_id}");
const data = await response.json();
console.log(data);
import requests
url = "/api/leagues"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "country_id": "{country_id}", "division": "{division}", "league_id": "{league_id}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 10, 20, 50) |
No |
20 |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
country_id |
object |
Filter by country ID |
No |
|
division |
object |
Filter by division (league level) |
No |
|
league_id |
object |
Filter by league ID |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"league_id": 0,
"country_id": "",
"division": 0,
"ticket_cost": 0,
"tv_money": 0,
"prize_money_pot": 0,
"ave_attendance": 0,
"num_teams": 0,
"round": 0,
"num_rounds": 0,
"comp_type": 0,
"total_volume_1_day": 0,
"total_volume_7_day": 0,
"last_7days": [
0
],
"volume_clubs_1_day": 0,
"volume_players_1_day": 0,
"volume_clubs_7_day": 0,
"volume_players_7_day": 0,
"market_cap": 0,
"club_market_cap": 0,
"player_market_cap": 0,
"total_wages": 0,
"avg_wages": 0,
"total_player_value": 0,
"total_clubs": 0,
"total_players": 0,
"total_available_jobs": 0
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[LeagueResponse] |
Items |
Get league table standings
Request example:
curl -X GET "/api/league_tables?league_id={league_id}&country_id={country_id}&division={division}&season_id={season_id}"
const response = await fetch("/api/league_tables?league_id={league_id}&country_id={country_id}&division={division}&season_id={season_id}");
const data = await response.json();
console.log(data);
import requests
url = "/api/league_tables"
params = {"league_id": "{league_id}", "country_id": "{country_id}", "division": "{division}", "season_id": "{season_id}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
league_id |
object |
League ID |
No |
|
country_id |
object |
Country ID |
No |
|
division |
object |
Division (level) |
No |
|
season_id |
object |
Season ID |
No |
|
Response example
[
{
"club_id": 0,
"league_id": 0,
"manager_name": "",
"manager_profile_pic": "",
"manager_last_active_unix": 0,
"country_id": "",
"division": 0,
"club_ix": 0,
"played": 0,
"won": 0,
"drawn": 0,
"lost": 0,
"goals_for": 0,
"goals_against": 0,
"pts": 0,
"form": "",
"old_position": 0,
"new_position": 0,
"season_id": 0,
"stadium_size": 0,
"fanbase": 0,
"balance": 0,
"avg_player_rating": 0,
"top_3_players": [
0
]
}
]
Response Fields
Field |
Type |
Description |
club_id |
integer |
Club Id |
league_id |
integer |
League Id |
manager_name |
object |
Manager Name |
manager_profile_pic |
object |
Manager Profile Pic |
manager_last_active_unix |
object |
Manager Last Active Unix |
country_id |
string |
Country Id |
division |
integer |
Division |
club_ix |
integer |
Club Ix |
played |
integer |
Played |
won |
integer |
Won |
drawn |
integer |
Drawn |
lost |
integer |
Lost |
goals_for |
integer |
Goals For |
goals_against |
integer |
Goals Against |
pts |
integer |
Pts |
form |
string |
Form |
old_position |
integer |
Old Position |
new_position |
integer |
New Position |
season_id |
integer |
Season Id |
stadium_size |
object |
Stadium Size |
fanbase |
object |
Fanbase |
balance |
object |
Balance |
avg_player_rating |
object |
Avg Player Rating |
top_3_players |
object |
Top 3 Players |
User Methods
Methods Summary
Endpoint |
Description |
Method |
/users |
Get user list and basic data |
GET |
/users/detailed |
Get detailed user and trading data |
GET |
/user_activity |
Get user activity stats |
GET |
/user_balance_sheet |
Get user balance sheet entries |
GET |
/user_balance_sheet/weeks |
Get weekly aggregated user balance sheets |
GET |
/user_balance_sheet/earnings |
Get aggregated SVC earnings |
GET |
Get user list and basic data
Request example:
curl -X GET "/api/users?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&name_prefix={name_prefix}&names={names}"
const response = await fetch("/api/users?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&name_prefix={name_prefix}&names={names}");
const data = await response.json();
console.log(data);
import requests
url = "/api/users"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "name_prefix": "{name_prefix}", "names": "{names}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 20, 50, 100) |
No |
20 |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
name_prefix |
object |
Name prefix to search |
No |
|
names |
object |
List of names to include |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"balance": 0,
"last_active_unix": 0,
"last_active": "",
"club_id": 0,
"profile_pic": "",
"manager_voted": 0
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserResponse] |
Items |
Get detailed user and trading data
Request example:
curl -X GET "/api/users/detailed?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&name_prefix={name_prefix}&names={names}&buy_volume_min={buy_volume_min}&buy_volume_max={buy_volume_max}&sell_volume_min={sell_volume_min}&sell_volume_max={sell_volume_max}&total_volume_min={total_volume_min}&total_volume_max={total_volume_max}"
const response = await fetch("/api/users/detailed?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&name_prefix={name_prefix}&names={names}&buy_volume_min={buy_volume_min}&buy_volume_max={buy_volume_max}&sell_volume_min={sell_volume_min}&sell_volume_max={sell_volume_max}&total_volume_min={total_volume_min}&total_volume_max={total_volume_max}");
const data = await response.json();
console.log(data);
import requests
url = "/api/users/detailed"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "name_prefix": "{name_prefix}", "names": "{names}", "buy_volume_min": "{buy_volume_min}", "buy_volume_max": "{buy_volume_max}", "sell_volume_min": "{sell_volume_min}", "sell_volume_max": "{sell_volume_max}", "total_volume_min": "{total_volume_min}", "total_volume_max": "{total_volume_max}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 20, 50, 100) |
No |
20 |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
name_prefix |
object |
Name prefix to search |
No |
|
names |
object |
List of names to include |
No |
|
buy_volume_min |
object |
Minimum buy volume (1 day) |
No |
|
buy_volume_max |
object |
Maximum buy volume (1 day) |
No |
|
sell_volume_min |
object |
Minimum sell volume (1 day) |
No |
|
sell_volume_max |
object |
Maximum sell volume (1 day) |
No |
|
total_volume_min |
object |
Minimum total volume |
No |
|
total_volume_max |
object |
Maximum total volume |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"balance": 0,
"last_active_unix": 0,
"last_active": "",
"club_id": 0,
"profile_pic": "",
"manager_voted": 0,
"buy_volume_1_day": 0,
"buy_volume_7_day": 0,
"sell_volume_1_day": 0,
"sell_volume_7_day": 0,
"buy_total_volume": 0,
"sell_total_volume": 0,
"total_volume": 0,
"total_volume_30_day": 0,
"first_trade_date": 0,
"tenth_trade_date": 0,
"hundredth_trade_date": 0,
"thousandth_trade_date": 0,
"biggest_trade": 0,
"last_7days": [
0
],
"last_30days": [
0
]
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserDetailedResponse] |
Items |
Get user activity stats
Request example:
curl -X GET "/api/user_activity?name={name}"
const response = await fetch("/api/user_activity?name={name}");
const data = await response.json();
console.log(data);
import requests
url = "/api/user_activity"
params = {"name": "{name}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
name |
object |
Filter by username |
No |
|
Response example
[
{
"name": "",
"last_active_unix": 0,
"first_move": 0,
"rank": 0,
"points": 0,
"profile_pic": ""
}
]
Response Fields
Field |
Type |
Description |
name |
string |
Name |
last_active_unix |
integer |
Last Active Unix |
first_move |
integer |
First Move |
rank |
integer |
Rank |
points |
integer |
Points |
profile_pic |
object |
Profile Pic |
Get user balance sheet entries
Request example:
curl -X GET "/api/user_balance_sheet?page={page}&per_page={per_page}&name={name}&from_time={from_time}&to_time={to_time}"
const response = await fetch("/api/user_balance_sheet?page={page}&per_page={per_page}&name={name}&from_time={from_time}&to_time={to_time}");
const data = await response.json();
console.log(data);
import requests
url = "/api/user_balance_sheet"
params = {"page": "{page}", "per_page": "{per_page}", "name": "{name}", "from_time": "{from_time}", "to_time": "{to_time}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptionsExtended |
Number of records per page (options: 5, 20, 50, 100) |
No |
50 |
name |
string |
Name of the user (exact match) |
Yes |
|
from_time |
object |
Unix time integer for start of time range |
No |
|
to_time |
object |
Unix time integer for end of time range |
No |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"amount": 0,
"type": "",
"other_name": "",
"other_type": "",
"other_id": 0,
"time": "",
"unix_time": 0
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserBalanceSheetResponse] |
Items |
Get weekly aggregated user balance sheets
Request example:
curl -X GET "/api/user_balance_sheet/weeks?page={page}&per_page={per_page}&name={name}"
const response = await fetch("/api/user_balance_sheet/weeks?page={page}&per_page={per_page}&name={name}");
const data = await response.json();
console.log(data);
import requests
url = "/api/user_balance_sheet/weeks"
params = {"page": "{page}", "per_page": "{per_page}", "name": "{name}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
integer |
Number of weeks per page |
No |
10 |
name |
string |
Name of the user (exact match) |
Yes |
|
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"week_start_unix_time": 0,
"week_end_unix_time": 0,
"totals": [
{
"type": "",
"amount": 0
}
]
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserWeeklyBalanceSheetResponse] |
Items |
Get aggregated SVC earnings
Request example:
curl -X GET "/api/user_balance_sheet/earnings?name={name}"
const response = await fetch("/api/user_balance_sheet/earnings?name={name}");
const data = await response.json();
console.log(data);
import requests
url = "/api/user_balance_sheet/earnings"
params = {"name": "{name}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
name |
string |
Name of the user (exact match) |
Yes |
|
Response example
{
"svc2usdc": 0,
"earnings_7d": {
"svc": 0,
"usdc": 0
},
"earnings_14d": {},
"earnings_30d": {},
"earnings_last_match_day": {}
}
Response Fields
Field |
Type |
Description |
svc2usdc |
number |
Svc2Usdc |
earnings_7d |
EarningsPeriod |
|
earnings_14d |
EarningsPeriod |
|
earnings_30d |
EarningsPeriod |
|
earnings_last_match_day |
EarningsPeriod |
|
Market Methods
Methods Summary
Endpoint |
Description |
Method |
/market |
Obtain overall market metrics |
GET |
Obtain overall market metrics
Request example:
curl -X GET "/api/market"
const response = await fetch("/api/market");
const data = await response.json();
console.log(data);
import requests
response = requests.get("/api/market")
data = response.json()
print(data)
Response example
{
"TotalPlayers": 0,
"PlayersMarketCap": 0,
"PlayerValues": 0,
"Players7dayVolume": 0,
"TotalClubs": 0,
"ClubsMarketCap": 0,
"ClubBalances": 0,
"Clubs7dayVolume": 0,
"TotalMarketCap": 0,
"Total7dayVolume": 0,
"UserBalances": 0,
"UserTotalVolume": 0,
"NumberOfUsers": 0,
"NumberAgents": 0,
"NumberManagers": 0,
"ActiveUsers": 0,
"ActiveManagers": 0,
"InactiveManagers": 0,
"NumberManagersLocked": 0,
"NumberManagersUnlocked": 0,
"SVC2USDC": 0
}
Response Fields
Field |
Type |
Description |
TotalPlayers |
integer |
Totalplayers |
PlayersMarketCap |
integer |
Playersmarketcap |
PlayerValues |
integer |
Playervalues |
Players7dayVolume |
integer |
Players7Dayvolume |
TotalClubs |
integer |
Totalclubs |
ClubsMarketCap |
integer |
Clubsmarketcap |
ClubBalances |
integer |
Clubbalances |
Clubs7dayVolume |
integer |
Clubs7Dayvolume |
TotalMarketCap |
integer |
Totalmarketcap |
Total7dayVolume |
integer |
Total7Dayvolume |
UserBalances |
integer |
Userbalances |
UserTotalVolume |
integer |
Usertotalvolume |
NumberOfUsers |
integer |
Numberofusers |
NumberAgents |
integer |
Numberagents |
NumberManagers |
integer |
Numbermanagers |
ActiveUsers |
integer |
Activeusers |
ActiveManagers |
integer |
Activemanagers |
InactiveManagers |
integer |
Inactivemanagers |
NumberManagersLocked |
integer |
Numbermanagerslocked |
NumberManagersUnlocked |
integer |
Numbermanagersunlocked |
SVC2USDC |
number |
Svc2Usdc |
Share Trading Methods
Methods Summary
Endpoint |
Description |
Method |
/share_trade_history |
Retrieve share trade history |
GET |
/trading_graph |
Retrieve aggregated trading data |
GET |
/share_balances |
Retrieve influence balances |
GET |
Retrieve share trade history
Request example:
curl -X GET "/api/share_trade_history?page={page}&per_page={per_page}&name={name}&club_id={club_id}&player_id={player_id}&sort_by={sort_by}&sort_order={sort_order}"
const response = await fetch("/api/share_trade_history?page={page}&per_page={per_page}&name={name}&club_id={club_id}&player_id={player_id}&sort_by={sort_by}&sort_order={sort_order}");
const data = await response.json();
console.log(data);
import requests
url = "/api/share_trade_history"
params = {"page": "{page}", "per_page": "{per_page}", "name": "{name}", "club_id": "{club_id}", "player_id": "{player_id}", "sort_by": "{sort_by}", "sort_order": "{sort_order}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
integer |
Number of records per page |
No |
50 |
name |
object |
Name of the buyer or seller |
No |
|
club_id |
object |
Club ID to filter trades |
No |
|
player_id |
object |
Player ID to filter trades |
No |
|
sort_by |
object |
Field to sort by (e.g. 'unix_time', 'price', 'num', or 'id') |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
desc |
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"id": 0,
"time": "",
"unix_time": 0,
"share_type": "",
"share_id": 0,
"buyer": "",
"buyer_profile_pic": "",
"seller": "",
"seller_profile_pic": "",
"num": 0,
"price": 0,
"market_buy": false
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[ShareTradeResponse] |
Items |
Retrieve aggregated trading data
Request example:
curl -X GET "/api/trading_graph?club_id={club_id}&player_id={player_id}&time_range={time_range}"
const response = await fetch("/api/trading_graph?club_id={club_id}&player_id={player_id}&time_range={time_range}");
const data = await response.json();
console.log(data);
import requests
url = "/api/trading_graph"
params = {"club_id": "{club_id}", "player_id": "{player_id}", "time_range": "{time_range}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
club_id |
object |
Club ID |
No |
|
player_id |
object |
Player ID |
No |
|
time_range |
TimeRangeEnum |
Time range: '1d', '7d', '30d', '90d', '6m', '1y' |
Yes |
|
Response example
[
{
"timestamp": 0,
"datetime": "",
"volume": 0,
"weighted_average_price": 0
}
]
Response Fields
Field |
Type |
Description |
timestamp |
integer |
Timestamp |
datetime |
string |
Datetime |
volume |
integer |
Volume |
weighted_average_price |
number |
Weighted Average Price |
Retrieve influence balances
Request example:
curl -X GET "/api/share_balances?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&club_id={club_id}&player_id={player_id}&name={name}&countries={countries}&leagues={leagues}&country_id={country_id}&league_id={league_id}"
const response = await fetch("/api/share_balances?page={page}&per_page={per_page}&sort_by={sort_by}&sort_order={sort_order}&club_id={club_id}&player_id={player_id}&name={name}&countries={countries}&leagues={leagues}&country_id={country_id}&league_id={league_id}");
const data = await response.json();
console.log(data);
import requests
url = "/api/share_balances"
params = {"page": "{page}", "per_page": "{per_page}", "sort_by": "{sort_by}", "sort_order": "{sort_order}", "club_id": "{club_id}", "player_id": "{player_id}", "name": "{name}", "countries": "{countries}", "leagues": "{leagues}", "country_id": "{country_id}", "league_id": "{league_id}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 10, 20, 50) |
No |
20 |
sort_by |
object |
Field to sort by (options: 'name', 'share_type', 'share_id', 'num') |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
asc |
club_id |
object |
Filter by club ID |
No |
|
player_id |
object |
Filter by player ID |
No |
|
name |
object |
Filter by name |
No |
|
countries |
object |
Set to True to get data aggregated per country |
No |
False |
leagues |
object |
Set to True to get data aggregated per league |
No |
False |
country_id |
object |
Filter by country ID (used with name) |
No |
|
league_id |
object |
Filter by league ID (used with name) |
No |
|
Rich List Methods
Methods Summary
Endpoint |
Description |
Method |
/rich_list |
Retrieve the richest users |
GET |
Retrieve the richest users
Request example:
curl -X GET "/api/rich_list?page={page}&per_page={per_page}&name={name}&sort_by={sort_by}&sort_order={sort_order}"
const response = await fetch("/api/rich_list?page={page}&per_page={per_page}&name={name}&sort_by={sort_by}&sort_order={sort_order}");
const data = await response.json();
console.log(data);
import requests
url = "/api/rich_list"
params = {"page": "{page}", "per_page": "{per_page}", "name": "{name}", "sort_by": "{sort_by}", "sort_order": "{sort_order}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
page |
integer |
Page number, starting from 1 |
No |
1 |
per_page |
PerPageOptions |
Number of records per page (options: 5, 10, 20, 50, 100) |
No |
20 |
name |
object |
Filter by specific user name (case sensitive) |
No |
|
sort_by |
RichListSortBy |
Field to sort by ('balance' or 'total_networth') |
No |
total_networth |
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
desc |
Response example
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"balance": 0,
"club_asset_value": 0,
"player_asset_value": 0,
"total_networth": 0,
"rank": 0,
"profile_pic": ""
}
]
}
Response Fields
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[RichListResponse] |
Items |
Achievement Methods
Methods Summary
Endpoint |
Description |
Method |
/achievements |
Get user achievements status |
GET |
Get user achievements status
Request example:
curl -X GET "/api/achievements?username={username}"
const response = await fetch("/api/achievements?username={username}");
const data = await response.json();
console.log(data);
import requests
url = "/api/achievements"
params = {"username": "{username}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
username |
string |
User's xayaname |
Yes |
|
Response example
{
"username": "",
"update_profile_picture": 0,
"refer_a_friend": 0,
"complete_a_trade": 0,
"buy_a_pack": 0,
"link_discord": 0,
"enable_social_notifications": 0,
"profile_pic": ""
}
Response Fields
Field |
Type |
Description |
username |
string |
Username |
update_profile_picture |
integer |
Update Profile Picture |
refer_a_friend |
integer |
Refer A Friend |
complete_a_trade |
integer |
Complete A Trade |
buy_a_pack |
integer |
Buy A Pack |
link_discord |
integer |
Link Discord |
enable_social_notifications |
integer |
Enable Social Notifications |
profile_pic |
string |
Profile Pic |
Leaderboard Methods
Methods Summary
Endpoint |
Description |
Method |
/leaderboards/referrals/time-range |
Get top 20 referrers within a specific time range |
GET |
/leaderboards/referrals/all |
Get top 20 referrers for all time |
GET |
Get top 20 referrers within a specific time range
Request example:
curl -X GET "/api/leaderboards/referrals/time-range"
const response = await fetch("/api/leaderboards/referrals/time-range");
const data = await response.json();
console.log(data);
import requests
response = requests.get("/api/leaderboards/referrals/time-range")
data = response.json()
print(data)
Response example
{
"entries": [
{
"account": "",
"totalBonusShares": 0
}
]
}
Response Fields
Field |
Type |
Description |
entries |
array[LeaderboardEntry] |
Entries |
Get top 20 referrers for all time
Request example:
curl -X GET "/api/leaderboards/referrals/all"
const response = await fetch("/api/leaderboards/referrals/all");
const data = await response.json();
console.log(data);
import requests
response = requests.get("/api/leaderboards/referrals/all")
data = response.json()
print(data)
Response example
{
"entries": [
{
"account": "",
"totalBonusShares": 0
}
]
}
Response Fields
Field |
Type |
Description |
entries |
array[LeaderboardEntry] |
Entries |
Countries Methods
Methods Summary
Endpoint |
Description |
Method |
/countries |
Retrieve data for countries |
GET |
Retrieve data for countries
Request example:
curl -X GET "/api/countries?sort_by={sort_by}&sort_order={sort_order}&country_id={country_id}"
const response = await fetch("/api/countries?sort_by={sort_by}&sort_order={sort_order}&country_id={country_id}");
const data = await response.json();
console.log(data);
import requests
url = "/api/countries"
params = {"sort_by": "{sort_by}", "sort_order": "{sort_order}", "country_id": "{country_id}"}
response = requests.get(url, params=params)
data = response.json()
print(data)
Query Parameters
Parameter |
Type |
Description |
Required |
Default |
sort_by |
object |
Field to sort by |
No |
|
sort_order |
object |
Sort order: 'asc' or 'desc' |
No |
desc |
country_id |
object |
Filter by country ID |
No |
|
Response example
[
{
"country_id": "",
"total_clubs": 0,
"total_players": 0,
"total_volume_1_day": 0,
"total_volume_7_day": 0,
"last_7days": [
0
],
"market_cap": 0,
"club_market_cap": 0,
"player_market_cap": 0,
"total_available_jobs": 0,
"total_leagues": 0
}
]
Response Fields
Field |
Type |
Description |
country_id |
string |
Country Id |
total_clubs |
integer |
Total Clubs |
total_players |
integer |
Total Players |
total_volume_1_day |
integer |
Total Volume 1 Day |
total_volume_7_day |
integer |
Total Volume 7 Day |
last_7days |
object |
Last 7Days |
market_cap |
integer |
Market Cap |
club_market_cap |
integer |
Club Market Cap |
player_market_cap |
integer |
Player Market Cap |
total_available_jobs |
integer |
Total Available Jobs |
total_leagues |
integer |
Total Leagues |
Schema
This section provides data model definitions for the Datacentre API.
AchievementsResponse
{
"username": "",
"update_profile_picture": 0,
"refer_a_friend": 0,
"complete_a_trade": 0,
"buy_a_pack": 0,
"link_discord": 0,
"enable_social_notifications": 0,
"profile_pic": ""
}
Field |
Type |
Description |
username |
string |
Username |
update_profile_picture |
integer |
Update Profile Picture |
refer_a_friend |
integer |
Refer A Friend |
complete_a_trade |
integer |
Complete A Trade |
buy_a_pack |
integer |
Buy A Pack |
link_discord |
integer |
Link Discord |
enable_social_notifications |
integer |
Enable Social Notifications |
profile_pic |
string |
Profile Pic |
ClubWeeklyBalanceSheetResponse
{
"season": 0,
"game_week": 0,
"date": 0,
"agent_wages": 0,
"cash_injection": 0,
"gate_receipts": 0,
"ground_maintenance": 0,
"managers_wage": 0,
"merchandise": 0,
"other_income": 0,
"other_outgoings": 0,
"player_wages": 0,
"prize_money": 0,
"shareholder_payouts": 0,
"shareholder_prize_money": 0,
"sponsor": 0,
"transfers_in": 0,
"transfers_out": 0,
"tv_revenue": 0
}
Field |
Type |
Description |
season |
integer |
Season |
game_week |
integer |
Game Week |
date |
integer |
Date |
agent_wages |
integer |
Agent Wages |
cash_injection |
integer |
Cash Injection |
gate_receipts |
integer |
Gate Receipts |
ground_maintenance |
integer |
Ground Maintenance |
managers_wage |
integer |
Managers Wage |
merchandise |
integer |
Merchandise |
other_income |
integer |
Other Income |
other_outgoings |
integer |
Other Outgoings |
player_wages |
integer |
Player Wages |
prize_money |
integer |
Prize Money |
shareholder_payouts |
integer |
Shareholder Payouts |
shareholder_prize_money |
integer |
Shareholder Prize Money |
sponsor |
integer |
Sponsor |
transfers_in |
integer |
Transfers In |
transfers_out |
integer |
Transfers Out |
tv_revenue |
integer |
Tv Revenue |
CountryResponse
{
"country_id": "",
"total_clubs": 0,
"total_players": 0,
"total_volume_1_day": 0,
"total_volume_7_day": 0,
"last_7days": [
0
],
"market_cap": 0,
"club_market_cap": 0,
"player_market_cap": 0,
"total_available_jobs": 0,
"total_leagues": 0
}
Field |
Type |
Description |
country_id |
string |
Country Id |
total_clubs |
integer |
Total Clubs |
total_players |
integer |
Total Players |
total_volume_1_day |
integer |
Total Volume 1 Day |
total_volume_7_day |
integer |
Total Volume 7 Day |
last_7days |
object |
Last 7Days |
market_cap |
integer |
Market Cap |
club_market_cap |
integer |
Club Market Cap |
player_market_cap |
integer |
Player Market Cap |
total_available_jobs |
integer |
Total Available Jobs |
total_leagues |
integer |
Total Leagues |
LeaderboardResponse
{
"entries": [
{
"account": "",
"totalBonusShares": 0
}
]
}
Field |
Type |
Description |
entries |
array[LeaderboardEntry] |
Entries |
LeagueTableRowResponse
{
"club_id": 0,
"league_id": 0,
"manager_name": "",
"manager_profile_pic": "",
"manager_last_active_unix": 0,
"country_id": "",
"division": 0,
"club_ix": 0,
"played": 0,
"won": 0,
"drawn": 0,
"lost": 0,
"goals_for": 0,
"goals_against": 0,
"pts": 0,
"form": "",
"old_position": 0,
"new_position": 0,
"season_id": 0,
"stadium_size": 0,
"fanbase": 0,
"balance": 0,
"avg_player_rating": 0,
"top_3_players": [
0
]
}
Field |
Type |
Description |
club_id |
integer |
Club Id |
league_id |
integer |
League Id |
manager_name |
object |
Manager Name |
manager_profile_pic |
object |
Manager Profile Pic |
manager_last_active_unix |
object |
Manager Last Active Unix |
country_id |
string |
Country Id |
division |
integer |
Division |
club_ix |
integer |
Club Ix |
played |
integer |
Played |
won |
integer |
Won |
drawn |
integer |
Drawn |
lost |
integer |
Lost |
goals_for |
integer |
Goals For |
goals_against |
integer |
Goals Against |
pts |
integer |
Pts |
form |
string |
Form |
old_position |
integer |
Old Position |
new_position |
integer |
New Position |
season_id |
integer |
Season Id |
stadium_size |
object |
Stadium Size |
fanbase |
object |
Fanbase |
balance |
object |
Balance |
avg_player_rating |
object |
Avg Player Rating |
top_3_players |
object |
Top 3 Players |
MarketResponse
{
"TotalPlayers": 0,
"PlayersMarketCap": 0,
"PlayerValues": 0,
"Players7dayVolume": 0,
"TotalClubs": 0,
"ClubsMarketCap": 0,
"ClubBalances": 0,
"Clubs7dayVolume": 0,
"TotalMarketCap": 0,
"Total7dayVolume": 0,
"UserBalances": 0,
"UserTotalVolume": 0,
"NumberOfUsers": 0,
"NumberAgents": 0,
"NumberManagers": 0,
"ActiveUsers": 0,
"ActiveManagers": 0,
"InactiveManagers": 0,
"NumberManagersLocked": 0,
"NumberManagersUnlocked": 0,
"SVC2USDC": 0
}
Field |
Type |
Description |
TotalPlayers |
integer |
Totalplayers |
PlayersMarketCap |
integer |
Playersmarketcap |
PlayerValues |
integer |
Playervalues |
Players7dayVolume |
integer |
Players7Dayvolume |
TotalClubs |
integer |
Totalclubs |
ClubsMarketCap |
integer |
Clubsmarketcap |
ClubBalances |
integer |
Clubbalances |
Clubs7dayVolume |
integer |
Clubs7Dayvolume |
TotalMarketCap |
integer |
Totalmarketcap |
Total7dayVolume |
integer |
Total7Dayvolume |
UserBalances |
integer |
Userbalances |
UserTotalVolume |
integer |
Usertotalvolume |
NumberOfUsers |
integer |
Numberofusers |
NumberAgents |
integer |
Numberagents |
NumberManagers |
integer |
Numbermanagers |
ActiveUsers |
integer |
Activeusers |
ActiveManagers |
integer |
Activemanagers |
InactiveManagers |
integer |
Inactivemanagers |
NumberManagersLocked |
integer |
Numbermanagerslocked |
NumberManagersUnlocked |
integer |
Numbermanagersunlocked |
SVC2USDC |
number |
Svc2Usdc |
PaginatedResponse_BestManagersResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"rank_old": 0,
"rank_old_ranking": 0,
"rank_a": 0,
"rank_a_ranking": 0,
"rank_b": 0,
"rank_b_ranking": 0,
"profile_pic": ""
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[BestManagersResponse] |
Items |
PaginatedResponse_ClubDetailedResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"club_id": 0,
"balance": 0,
"form": "",
"division_start": 0,
"fans_start": 0,
"fans_current": 0,
"stadium_size_start": 0,
"stadium_size_current": 0,
"stadium_id": 0,
"value": 0,
"rating_start": 0,
"manager_name": "",
"default_formation": 0,
"penalty_taker": 0,
"country_id": "",
"manager_locked": 0,
"transfers_in": 0,
"transfers_out": 0,
"committed_tactics": "",
"proposed_manager": "",
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"available": 0,
"league_id": 0,
"division": 0,
"avg_wages": 0,
"total_wages": 0,
"total_player_value": 0,
"avg_player_rating": 0,
"avg_player_rating_top21": 0,
"avg_shooting": 0,
"avg_passing": 0,
"avg_tackling": 0,
"gk_rating": 0,
"profile_pic": "",
"manager_voted": 0
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[ClubDetailedResponse] |
Items |
PaginatedResponse_ClubResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"club_id": 0,
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"balance": 0,
"manager_name": "",
"country_id": "",
"value": 0,
"rating_start": 0,
"profile_pic": ""
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[ClubResponse] |
Items |
PaginatedResponse_LeagueResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"league_id": 0,
"country_id": "",
"division": 0,
"ticket_cost": 0,
"tv_money": 0,
"prize_money_pot": 0,
"ave_attendance": 0,
"num_teams": 0,
"round": 0,
"num_rounds": 0,
"comp_type": 0,
"total_volume_1_day": 0,
"total_volume_7_day": 0,
"last_7days": [
0
],
"volume_clubs_1_day": 0,
"volume_players_1_day": 0,
"volume_clubs_7_day": 0,
"volume_players_7_day": 0,
"market_cap": 0,
"club_market_cap": 0,
"player_market_cap": 0,
"total_wages": 0,
"avg_wages": 0,
"total_player_value": 0,
"total_clubs": 0,
"total_players": 0,
"total_available_jobs": 0
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[LeagueResponse] |
Items |
PaginatedResponse_PlayerDetailedResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"player_id": 0,
"fitness": 0,
"retired": 0,
"morale": 0,
"injured": 0,
"injury_id": 0,
"wages": 0,
"contract": 0,
"form": "",
"position": 0,
"multi_position": 0,
"positions": [
""
],
"rating": 0,
"rating_gk": 0,
"rating_tackling": 0,
"rating_passing": 0,
"rating_shooting": 0,
"rating_stamina": 0,
"rating_aggression": 0,
"banned": 0,
"cup_tied": 0,
"yellow_cards": 0,
"red_cards": 0,
"dob": 0,
"side": "",
"value": 0,
"country_id": "",
"club_id": 0,
"agent_name": "",
"desired_contract": 0,
"allow_transfer": 0,
"allow_renew": 0,
"age": 0,
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"profile_pic": ""
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[PlayerDetailedResponse] |
Items |
PaginatedResponse_PlayerResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"player_id": 0,
"last_price": 0,
"volume_1_day": 0,
"volume_7_day": 0,
"last_7days": [
0
],
"last_7days_price": [
0
],
"wages": 0,
"multi_position": 0,
"positions": [
""
],
"rating": 0,
"country_id": "",
"dob": 0,
"value": 0,
"club_id": 0,
"agent_name": "",
"age": 0,
"profile_pic": ""
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[PlayerResponse] |
Items |
PaginatedResponse_RichListResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"balance": 0,
"club_asset_value": 0,
"player_asset_value": 0,
"total_networth": 0,
"rank": 0,
"profile_pic": ""
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[RichListResponse] |
Items |
PaginatedResponse_ShareTradeResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"id": 0,
"time": "",
"unix_time": 0,
"share_type": "",
"share_id": 0,
"buyer": "",
"buyer_profile_pic": "",
"seller": "",
"seller_profile_pic": "",
"num": 0,
"price": 0,
"market_buy": false
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[ShareTradeResponse] |
Items |
PaginatedResponse_UserBalanceSheetResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"amount": 0,
"type": "",
"other_name": "",
"other_type": "",
"other_id": 0,
"time": "",
"unix_time": 0
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserBalanceSheetResponse] |
Items |
PaginatedResponse_UserDetailedResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"balance": 0,
"last_active_unix": 0,
"last_active": "",
"club_id": 0,
"profile_pic": "",
"manager_voted": 0,
"buy_volume_1_day": 0,
"buy_volume_7_day": 0,
"sell_volume_1_day": 0,
"sell_volume_7_day": 0,
"buy_total_volume": 0,
"sell_total_volume": 0,
"total_volume": 0,
"total_volume_30_day": 0,
"first_trade_date": 0,
"tenth_trade_date": 0,
"hundredth_trade_date": 0,
"thousandth_trade_date": 0,
"biggest_trade": 0,
"last_7days": [
0
],
"last_30days": [
0
]
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserDetailedResponse] |
Items |
PaginatedResponse_UserResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"balance": 0,
"last_active_unix": 0,
"last_active": "",
"club_id": 0,
"profile_pic": "",
"manager_voted": 0
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserResponse] |
Items |
PaginatedResponse_UserWeeklyBalanceSheetResponse_
{
"page": 0,
"per_page": 0,
"total": 0,
"total_pages": 0,
"items": [
{
"name": "",
"week_start_unix_time": 0,
"week_end_unix_time": 0,
"totals": [
{
"type": "",
"amount": 0
}
]
}
]
}
Field |
Type |
Description |
page |
integer |
Page |
per_page |
integer |
Per Page |
total |
object |
Total |
total_pages |
object |
Total Pages |
items |
array[UserWeeklyBalanceSheetResponse] |
Items |
TradingGraphDataPoint
{
"timestamp": 0,
"datetime": "",
"volume": 0,
"weighted_average_price": 0
}
Field |
Type |
Description |
timestamp |
integer |
Timestamp |
datetime |
string |
Datetime |
volume |
integer |
Volume |
weighted_average_price |
number |
Weighted Average Price |
UserActivityResponse
{
"name": "",
"last_active_unix": 0,
"first_move": 0,
"rank": 0,
"points": 0,
"profile_pic": ""
}
Field |
Type |
Description |
name |
string |
Name |
last_active_unix |
integer |
Last Active Unix |
first_move |
integer |
First Move |
rank |
integer |
Rank |
points |
integer |
Points |
profile_pic |
object |
Profile Pic |
UserEarningsResponse
{
"svc2usdc": 0,
"earnings_7d": {
"svc": 0,
"usdc": 0
},
"earnings_14d": {},
"earnings_30d": {},
"earnings_last_match_day": {}
}
Field |
Type |
Description |
svc2usdc |
number |
Svc2Usdc |
earnings_7d |
EarningsPeriod |
|
earnings_14d |
EarningsPeriod |
|
earnings_30d |
EarningsPeriod |
|
earnings_last_match_day |
EarningsPeriod |
|