SofaScore API endpoint
Returns a baseball match's top performers from SofaScore: each pitcher or batter (`role`) with a rating, their team and a snake_case map of the statistics that earned the mention (for example pitching strike outs, batting home runs and runs batted in). Returns 404 when SofaScore has no top performers for the match, which includes matches that have not started and sports other than baseball.
/sofascore/event-baseball-top-performersQuery parameters:
id: required. Numeric SofaScore baseball event (match) id, e.g. 17199139.Notable response behavior:
role (pitcher or batter), a rating, the player, the team and a statistics map of snake_case metrics that earned the mention (pitchers: pitching_innings_pitched, pitching_wins, pitching_strike_outs; batters: batting_hits, batting_at_bats, batting_home_runs, batting_rbi). The keys depend on the performer, so the map is not a fixed set.404 when SofaScore has no top performers for the match, which includes matches that have not started, an empty list, and sports other than baseball.Example response (shortened):
{
"code": 200,
"msg": "OK",
"data": {
"event_id": 17199139,
"source_url": "https://api.sofascore.com/api/v1/event/baseball/17199139/top-performers",
"fetched_at": "2026-10-07T17:00:00Z",
"performers": [
{
"role": "pitcher",
"rating": 0.503,
"player": {
"id": 1476024,
"name": "Yoshinobu Yamamoto",
"short_name": "Y. Yamamoto",
"slug": "yamamoto-yoshinobu",
"position": "SP",
"jersey_number": "18"
},
"team": {
"id": 3638,
"name": "Los Angeles Dodgers",
"short_name": "Dodgers",
"slug": "los-angeles-dodgers"
},
"statistics": {
"pitching_innings_pitched": 7,
"pitching_strike_outs": 10,
"pitching_wins": 1
}
},
{
"role": "batter",
"rating": 0.233,
"player": {
"id": 961272,
"name": "Enrique Hernández",
"short_name": "E. Hernández",
"slug": "hernandez-kike",
"position": "3B",
"jersey_number": "8"
},
"team": {
"id": 3638,
"name": "Los Angeles Dodgers",
"short_name": "Dodgers",
"slug": "los-angeles-dodgers"
},
"statistics": {
"batting_at_bats": 4,
"batting_hits": 1,
"batting_home_runs": 1,
"batting_rbi": 2
}
},
{
"role": "batter",
"rating": 0.232,
"player": {
"id": 961444,
"name": "Freddie Freeman",
"short_name": "F. Freeman",
"slug": "freeman-freddie",
"position": "1B",
"jersey_number": "5"
},
"team": {
"id": 3638,
"name": "Los Angeles Dodgers",
"short_name": "Dodgers",
"slug": "los-angeles-dodgers"
},
"statistics": {
"batting_at_bats": 4,
"batting_hits": 1,
"batting_home_runs": 1
}
}
]
}
}
| Field | Filled in, of 3 checked | Values in the sample |
|---|---|---|
| role | 3 | “pitcher” and 1 other value |
| rating | 3 | 0.23 to 0.5, median 0.23 |
| player | 3 | |
| team | 3 | |
| statistics | 3 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id | string | Yes | Numeric SofaScore baseball event (match) id | 17199139 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/sofascore/event-baseball-top-performers?id=17199139" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"event_id": 17199139,
"source_url": "https://api.sofascore.com/api/v1/event/baseball/17199139/top-performers",
"fetched_at": "2026-10-07T17:00:00Z",
"performers": [
{
"role": "pitcher",
"rating": 0.503,
"player": {
"id": 1476024,
"name": "Yoshinobu Yamamoto",
"short_name": "Y. Yamamoto",
"slug": "yamamoto-yoshinobu",
"position": "SP",
"jersey_number": "18"
},
"team": {
"id": 3638,
"name": "Los Angeles Dodgers",
"short_name": "Dodgers",
"slug": "los-angeles-dodgers"
},
"statistics": {
"pitching_innings_pitched": 7,
"pitching_strike_outs": 10,
"pitching_wins": 1
}
},
{
"role": "batter",
"rating": 0.233,
"player": {
"id": 961272,
"name": "Enrique Hernández",
"short_name": "E. Hernández",
"slug": "hernandez-kike",
"position": "3B",
"jersey_number": "8"
},
"team": {
"id": 3638,
"name": "Los Angeles Dodgers",
"short_name": "Dodgers",
"slug": "los-angeles-dodgers"
},
"statistics": {
"batting_at_bats": 4,
"batting_hits": 1,
"batting_home_runs": 1,
"batting_rbi": 2
}
},
{
"role": "batter",
"rating": 0.232,
"player": {
"id": 961444,
"name": "Freddie Freeman",
"short_name": "F. Freeman",
"slug": "freeman-freddie",
"position": "1B",
"jersey_number": "5"
},
"team": {
"id": 3638,
"name": "Los Angeles Dodgers",
"short_name": "Dodgers",
"slug": "los-angeles-dodgers"
},
"statistics": {
"batting_at_bats": 4,
"batting_hits": 1,
"batting_home_runs": 1
}
}
]
}
}Request schema
No body schema
Response schema
#/definitions/sofascore.eventBaseballTopPerformersResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | sofascore.EventBaseballTopPerformersResponse | No | ||||
| data.event_id | integer | No | 17199139 | |||
| data.fetched_at | string | No | ||||
| data.performers | array | No | ||||
| data.performers[].player | sofascore.PlayerBrief | No | PlayerBrief record, 6 fields: id, jersey_number, name, position, short_name, slug. Described under SofaScore event at-bat pitches API. | |||
| data.performers[].rating | number | No | 0.503 | |||
| data.performers[].role | string | No | pitcher | Role is `pitcher` or `batter`. | ||
| data.performers[].statistics | object | No | Statistics is a snake_case metric map; its keys depend on the role. | |||
| data.performers[].team | sofascore.TeamRef | No | TeamRef record, 6 fields: country, id, name, national, short_name, slug. Described under SofaScore venue API. | |||
| data.source_url | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/sofascore/event-baseball-top-performers?id=17199139" \
-H "x-api-key: $CRAWLORA_API_KEY"