Tracker APIapi.tracker.gg ↗
Fetch Rocket League player profiles from Tracker.gg via one endpoint. Returns lifetime stats, ranked playlist ratings, and season rewards by platform and player ID.
What is the Tracker API?
This API exposes a single endpoint, get_profile, that returns a Rocket League player's full Tracker.gg profile across all ranked playlists. The response includes over a dozen lifetime stat fields — wins, goals, MVPs, saves, assists, and shots — alongside per-playlist MMR and ranked ratings for the current season. You provide a platform slug (epic, steam, psn, or xbl) and a player identifier to retrieve structured profile data.
curl -X GET 'https://api.parse.bot/scraper/a1ab5276-511d-4a1f-ad54-1b4f04abfcbb/get_profile?platform=epic&player_id=ScrubKillaRL' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace api-tracker-gg-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Tracker.gg Rocket League SDK — fetch a player profile and inspect stats."""
from parse_apis.api_tracker_gg_api import RocketLeagueTracker, PlayerNotFound
client = RocketLeagueTracker()
# Fetch a known player's profile on Epic platform.
try:
profile = client.profiles.get(platform="epic", player_id="ScrubKillaRL")
except PlayerNotFound:
print("Player not found on that platform.")
raise SystemExit
# Access platform identity fields.
platform_info = profile.data.platform_info
print(f"Player: {platform_info.platform_user_handle} ({platform_info.platform_slug})")
# Show metadata — season and last update time.
meta = profile.data.metadata
print(f"Season: {meta.current_season}, last updated: {meta.last_updated.value}")
# Iterate segments and print key stats from each.
for segment in profile.data.segments:
print(f"\n[{segment.type}] {segment.metadata.name}")
for stat_key, stat in segment.stats.items():
if stat.display_value is not None:
print(f" {stat.display_name}: {stat.display_value}")
print("\nexercised: profiles.get / ProfileData / PlatformInfo / Segment / Stat")
Fetch a Rocket League player's full profile data including platform info, lifetime stats (wins, goals, MVPs, saves, assists, shots), and per-playlist ranked ratings for the current season. Returns the raw API response from Tracker.gg. Requires both a platform slug and a player identifier.
| Param | Type | Description |
|---|---|---|
| platformrequired | string | Gaming platform slug identifying where the player account lives (e.g. epic, steam, psn, xbl). |
| player_idrequired | string | Player identifier on the given platform. For Epic this is the display name; for Steam this is the 64-bit Steam ID. |
{
"type": "object",
"fields": {
"data": "object containing platformInfo, userInfo, metadata, segments, availableSegments, and expiryDate"
},
"sample": {
"data": {
"data": {
"metadata": {
"playerId": 48630420,
"lastUpdated": {
"value": "2026-08-13T17:18:17.75458+00:00",
"displayValue": "2026-08-13T17:18:17.7545800+00:00"
},
"currentSeason": 37
},
"segments": [
{
"type": "overview",
"stats": {
"wins": {
"value": 229,
"displayName": "Wins",
"displayValue": "229"
},
"goals": {
"value": 763,
"displayName": "Goals",
"displayValue": "763"
}
},
"metadata": {
"name": "Lifetime"
},
"attributes": {}
}
],
"userInfo": {
"userId": null,
"isPartner": false,
"isPremium": false,
"pageviews": 114,
"isVerified": false,
"countryCode": null,
"isInfluencer": false
},
"expiryDate": "2026-08-13T17:22:18.1509412+00:00",
"platformInfo": {
"avatarUrl": null,
"platformSlug": "epic",
"platformUserId": "a71d083f-002f-4337-a4cd-592794054dae",
"platformUserHandle": "ScrubKillaRL",
"additionalParameters": null,
"platformUserIdentifier": "ScrubKillaRL"
},
"availableSegments": [
{
"type": "playlist",
"metadata": {
"name": "1"
},
"attributes": {
"season": 1
}
}
]
}
},
"status": "success"
}
}About the Tracker API
What the Endpoint Returns
The get_profile endpoint accepts two required parameters: platform and player_id. The platform value is a short slug identifying the player's gaming network — accepted values are epic, steam, psn, and xbl. The player_id field behaves differently per platform: for Epic Games it is the display name, and for Steam it is the 64-bit Steam ID.
The response wraps a data object containing several top-level keys. platformInfo holds the player's platform identity. userInfo contains account-level metadata. segments is the most data-dense field, carrying both a lifetime summary segment and individual entries for each ranked playlist such as 1v1, 2v2, and 3v3 Standard, each with their own MMR, rank tier, and percentile data.
Lifetime and Ranked Stats
Lifetime stats surfaced in the segments array include wins, goals, MVPs, saves, assists, and shots. Ranked playlist entries carry current MMR, peak MMR, rank label, division, and win streak fields for the active season. The metadata key at the top of data includes context like the player's current season identifier. The availableSegments array indicates which additional segment types exist for the profile, and expiryDate signals when the cached response was last refreshed.
Platform and Player ID Notes
For Epic Games accounts, pass the in-game display name as player_id. For Steam, use the numeric 64-bit Steam ID (e.g., 76561198000000000). PSN and Xbox Live accounts use their respective gamertag or online ID. Passing a mismatched platform and player ID combination will result in a profile-not-found response rather than a data error, so verifying the platform before querying improves reliability.
The Tracker API is a managed, monitored endpoint for api.tracker.gg — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when api.tracker.gg changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official api.tracker.gg API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track a player's MMR progression across 2v2 and 3v3 ranked playlists over a season.
- Build a team scouting tool that compares lifetime goals, saves, and assists between players.
- Display a player's current rank tier and division on a tournament registration page.
- Aggregate peak MMR data across a roster of players for esports analytics.
- Surface win-rate and MVP statistics on a personal gaming dashboard.
- Verify a player's platform identity and rank before matchmaking in a community league.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Tracker.gg have an official developer API?+
What does the `segments` field in the response contain?+
segments array contains one entry for lifetime aggregate stats (wins, goals, MVPs, saves, assists, shots) and separate entries for each ranked playlist the player has competed in during the current season. Each playlist segment includes MMR, rank tier, division, and percentile data.Does the API return historical season data or only the current season?+
get_profile endpoint returns stats and ranked ratings for the current season only. Prior season history is not included in the response. You can fork this API on Parse and revise it to add an endpoint targeting historical season segments if that data becomes accessible.Is match history or replay data available through this API?+
How fresh is the data returned by `get_profile`?+
expiryDate field that indicates when the cached data is due to refresh. Profile data may reflect a short delay relative to in-game activity, particularly for players who have not recently been looked up on Tracker.gg.