Applies to:
All Club users.
VIP Clubs = Lite access.
Super VIP Clubs = Full access.
Clubs can purchase API standalone.
Tactical Rundown:
The TransferRoom API enables clubs to get access to TransferRoom’s unique data intelligence to easily power invaluable insight.
Clubs can download detailed data points for both players and head coaches in a convenient JSON format, to integrate directly into their internal databases.
Which data points are included in the API?
Lite access:
- Basic player identifiers (name, IDs, etc.)
- xTV
- Agency info
- Player rating
Full access:
- Basic player identifiers (name, IDs, etc.)
- xTV incl. Base Value and development
- Salary information
- Contract expiry dates
- Agency info
- Player rating incl. development
- Player potential & playing style
- GBE status
- % of available minutes played
- Head Coach end-point (10+ data points)
How do I get access?
Lite access is included in VIP and Full access in Super VIP, or the full API is available to purchase standalone. Please reach out to your TransferRoom representative if you would like to find out more.
How do I set up the API?
There are 4 endpoints; Login, Competitions, Players and Head Coaches. Login is the first step which authenticates users to access the other endpoints (see Login).
There are 2 types of access - LITE and FULL. FULL access has all data points listed below. Users of the LITE package can access Competitions and partial Player data.
Login
To authenticate use the endpoint
POST https://apiprod.transferroom.com/api/external/login
with parameters
- email (string) - your TR email address
- Password (string) - your TR password
e.g. https://apiprod.transferroom.com/api/external/login?email=example@transferroom.com&password=p4ssW0rd
A successful request returns a bearer token, which is required to request data. A correct bearer token must be supplied in the header of subsequent requests, in the format
“Authorization: Bearer [TOKEN STRING]”
Bearer tokens automatically expire after one month, at which point you will be required to generated a new one.
Competitions
Returns a list of domestic league competitions and IDs which can be subsequently used as arguments in other requests
Endpoint
GET https://apiprod.transferroom.com/api/external/competitions
Parameters
- position (integer, default 0) - starting point in list (pagination)
- amount (integer, default 1000) - number of results to return
A successful request will return a JSON object with competition information.
Data
- TR_ID – unique TransferRoom Competition ID
- CompetitionName
- Country
- DivisionLevel – The tier of the competition within its country’s league system (1 is highest)
Players
Returns players and player metrics
Endpoint
GET https://apiprod.transferroom.com/api/external/players
Parameters
- position (integer, default 0) - starting point in player list (pagination)
- amount (integer, default 1000, max 10000) - number of results to return
- competitionid (integer, optional) – filters results to a single competition. Specify -1 for free agents
A successful request will return a JSON object with player information.
Data
- TR_ID - unique TransferRoom player id
- Name
- BirthDate - player’s date of birth
- ParentTeam - player’s parent team name
- CurrentTeam - player’s current team name
- TeamHistory - nested json with player team history
- Country – player’s current team’s country
- Competition – player’s current team’s competition
- DivisionLevel – player’s current team’s division level
- parentCountry – player’s parent team’s country
- parentCompetition – player’s parent team’s competition
- parentDivisionLevel – player’s parent team’s division level
- Nationality1
- Nationality2
- FirstPosition – the main position played by the player
- PlayingStyle – the style associated with how the player plays their first position
- SecondPosition – secondary position played by the player
- PreferredFoot
- ContractExpiry – contract expiry date
- Agency – the agency representing the player
- AgencyVerified - whether the agency has verified their relationship with the player on TransferRoom
- Shortlisted – indicates if you have shortlisted the player on TransferRoom
- CurrentClubRecentMinsPerc – percentage of available minutes the player has played recently for their current club
- GBEScore – Aggregate FA GBE points, for UK visa eligibility
- GBEResult – FA GBE result (Pass, Fail etc)
- GBE Score Breakdowns:
- GBEIntAppPts - GBE points scored from International Appearances
- GBEDomMinsPts - GBE points scored from Domestic Minutes
- GBEContMinsPts - GBE points scored from Continental Minutes
- GBELeaguePosPts - GBE points scored from League Position
- GBEContProgPts - GBE points scored from Continental Progression
- GBELeagueStdPts - GBE points scored from League Standard
- xTV – player’s expected transfer value, in your TR currency
- xTVChange6mPerc – % change in xTV over the last 6 months
- xTVChange12mPerc – % change in xTV over the last 12 months
- xTVHistory - nested json with monthly historical xTV data
- BaseValue – player’s underlying xTV without the effects of expiring contracts or recent transfer fees, in your TR currency
- EstimatedSalary - player’s estimated salary range, in your TR currency
- Rating – TR Player Rating
- Potential - TR Potential Player Rating
Head Coaches
Returns Head Coaches and Head Coach metrics
Endpoint
GET https://apiprod.transferroom.com/api/external/coaches
Parameters
- position (integer, default 0) - starting point in player list (pagination)
- amount (integer, default 1000, max 1000) - number of results to return
- competitionid (integer, optional) – filters results to a single competition. Specify -1 for free agents
A successful request will return a JSON object with Head Coach information.
Data
- TR_ID - unique TransferRoom head coach id
- Name
- BirthDate – head coach’s date of birth
- Nationality1
- Nationality2
- CurrentTeam – head coach’s current team name
- CurrentRole – head coach’s current position
- CareerHistory - nested json with head coach career history
- Country – head coach’s current team’s country
- Competition – head coach’s current team’s competition
- DivisionLevel
- PreviousTeam - head coach’s previous team name
- ContractExpiry – contract expiry date
- Agency - the agency representing the head coach
- AgencyVerified - whether the agency has verified their relationship with the head coach on TransferRoom
- Rating – TR Head Coach Rating
- RatingChange12m - change in Head Coach Rating over the last 12 months
- TacticalStyle – Style played in and out of possession
- Suitability – TR Coach Suitability to your team
- TeamRatingImpact – % impact on team rating (weighted average)
- TrustInYouth – TR Trust in Youth score
- PreferredFormation
- SquadRotation – Squad Rotation tendency
- ThreeSeasonAvgSpend – head coach’s average gross transfer spend over the last 3 seasons that they have been a head coach
Python Example
import requests
import json
from urllib.parse import urlencode
### authorize
email = 'example@transferroom.com'
password = 'example_p4ssW0rd'
base_url = "https://apiprod.transferroom.com/api/external/login"
params = {'email': email, 'password': password}
encoded_params = urlencode(params)
auth_url = f"{base_url}?{encoded_params}"
r = requests.post(auth_url)
token_json_data = r.json()
token = token_json_data['token']
headers = {"Authorization": "Bearer "+token}
### Get player data
request_url = 'https://apiprod.transferroom.com/api/external/players?position=0&amount=1000'
r = requests.get(request_url,headers=headers)
json_data = r.json()
### Get head coach data for Premier League - England
request_url = 'https://apiprod.transferroom.com/api/external/coaches?position=0&amount=1000&competitionid = 757'
r = requests.get(request_url,headers=headers)
json_data = r.json()