Endpoint Playground
Returns batter, batting-team, pitcher, pitching-team, or league rows with the page's season, game type, pitch-group, split, team, date, swing, contact, zone, pitch hand/type, count, timing-axis, and timing-flag filters. Sorting is local. Use mlb_discovery for exact values.
14 Oct 2026: 40 rows; 40 fields had a value in every checked item.
Sample value profiles: bat_side_formatted: R (23), L (16), S (1); avg_z_lined_up: 0.23 to 0.85, median 0.51; b_name_display_first_last: “Aranda, Jonathan” and 39 other values.
curl 'https://api.crawlora.net/api/v1/mlb/statcast-swing-timing?type=batter&min_swings=q&min_split=1&split_year=1&bat_side=L&contact_type=2&attack_zone=0&pitch_hand=L&sort=name&sort_dir=asc' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| type | string | No | batter | Row type |
| seasons | array | No | One or more seasons | |
| game_types | array | No | One or more game types | |
| splits | array | No | One or more split dimensions | |
| min_swings | string | No | q | Minimum swing threshold |
| min_split | string | No | 1 | Minimum swings per split group |
| split_year | string | No | 1 | Split years into separate rows |
| teams | array | No | One or more MLB team ids | |
| date_start | string | No | Optional range start in YYYY-MM-DD | |
| date_end | string | No | Optional range end in YYYY-MM-DD | |
| bat_side | string | No | L | Batter side |
| contact_type | string | No | 2 | Contact type |
| attack_zone | string | No | 0 | Attack zone |
| pitch_hand | string | No | L | Pitcher hand |
| pitch_types | array | No | One or more pitch type codes | |
| counts | array | No | One or more ball-strike counts | |
| swing_timing_x | array | No | Tied-up, centered, or flailed | |
| swing_timing_y | array | No | Early, on-time, or late | |
| swing_timing_z | array | No | Under, lined-up, or over | |
| flags | array | No | Positive timing flags | |
| not_flags | array | No | Excluded timing flags | |
| sort | string | No | name | Local sort field |
| sort_dir | string | No | asc | Sort direction |
| limit | integer | No | Rows per page (1-500) | |
| offset | integer | No | Zero-based row offset |
{
"code": 0,
"data": {
"board": "swing-timing-miss-distance",
"type": "batter",
"total": 1,
"sort": "n_swings",
"sort_dir": "desc",
"offset": 0,
"limit": 1,
"rows": [
{
"uniqueId": "666018_FF_2026",
"name": "Sample Player",
"n_swings": 100
}
]
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.