Documentation/Games
GET /v1/results/yesterday | Baseball Data API
Every finished game from yesterday in every league, newest league first.Free keyMCP tool: yesterdays_results
GEThttps://api.baseballapi.net/v1/results/yesterday
Try it
Returns
| Field | What it holds |
|---|---|
id | string: the game's id (gm_...) |
league | string: the league's slug |
season | integer: the season (a winter league's season is the year it starts) |
date | string: the day at the ground, YYYY-MM-DD |
stage | string: regular, postseason, all_star, exhibition or other |
status | string: final, scheduled, in_progress, postponed, suspended or cancelled |
start_local | string or null: first pitch at the ground, HH:MM |
start_utc | string or null: first pitch in UTC, ISO 8601 |
away | object: name and runs (runs null until final) |
home | object: name and runs (runs null until final) |
innings | integer or null: innings played |
venue | string or null: the ground |
checks | object or null: for MLB games of the season in play, how the final was checked: sources (pages read), sources_agree, line_matches_final (postseason) and delay_minutes (from the score being recorded to our record). For archive MLB games, the trust flag: disputed (true when our own checks found the game's parts disagreeing) and disputes, each with check (runs_vs_team_box, team_box_vs_batters or plays_vs_box), side (away or home) and detail; the record is shown as it is, never corrected. Null for other leagues |
Example answer
A real answer, taken 2026-11-03.
{
"data": [
{
"id": "gm_enyfpebz",
"league": "lvbp",
"season": 2026,
"date": "2026-11-02",
"stage": "regular",
"status": "final",
"start_local": null,
"start_utc": null,
"away": {
"name": "Cardenales",
"runs": 2
},
"home": {
"name": "Tigres",
"runs": 8
},
"innings": 9,
"venue": null,
"checks": null
}
],
"meta": {
"count": 1,
"date": "2026-11-02"
}
}Errors
Every endpoint can answer unauthorized, unknown_parameter, rate_limited, quota_exceeded and server_error. See Errors.