Endpoint Playground
Returns batting or pitching Run Value rows from the Swing-Take leaderboard. Filters are cold-replay verified; sorting and pagination are applied locally. The Bat-side R/L selector was verified to leave the embedded rows byte-identical and is omitted. The page's visual charts and CSV export are separate formats.
14 Oct 2026: 40 rows; 17 fields had a value in every checked item.
Sample value profiles: pa: 416 to 719, median 630; player_name: “Alvarez, Yordan” and 39 other values; player_url: baseballsavant.mlb.com.
curl 'https://api.crawlora.net/api/v1/mlb/statcast-run-value?group=Batter&year=All&min=q&leverage=Neutral&type=All&sub_type=Swing&sort=player_name&sort_dir=asc' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| group | string | No | Batter | Row group |
| year | string | No | All | Season, All, or Career |
| team | string | No | MLB numeric team id; omit for all teams | |
| min | string | No | q | Minimum plate appearances |
| leverage | string | No | Neutral | Run-value method |
| type | string | No | All | Table view |
| sub_type | string | No | Swing | Conditional subtype: Swing/Take; pitch name; or Heart/Shadow/Chase/Waste |
| sort | string | No | player_name | Local table sort field; supported set varies by view |
| sort_dir | string | No | asc | Sort direction |
| limit | integer | No | Rows per page (1-500) | |
| offset | integer | No | Zero-based row offset |
{
"code": 200,
"msg": "OK",
"data": {
"board": "swing-take",
"group": "Batter",
"year": "2026",
"min": "q",
"leverage": "Neutral",
"type": "All",
"total": 300,
"sort": "runs_all",
"sort_dir": "desc",
"offset": 0,
"limit": 1,
"rows": [
{
"player_name": "Example Player",
"player_id": 123456,
"team_name_abbrev": "NYY",
"pa": 600,
"runs_all": 14.2,
"player_url": "https://baseballsavant.mlb.com/sporty-videos?player_id=123456"
}
],
"source_url": "https://baseballsavant.mlb.com/leaderboard/swing-take?...",
"fetched_at": "2026-09-30T00:00:00Z"
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.