No. 08 · Bat & ball · Fixture sport
BaseballPitch by pitch, inning by inning.
MLB, NPB, KBO and more: inning state, every pitch with Statcast type and speed, umpire crews and ballpark weather.
Scouting report
What you get for Baseball
Baseball goes down to the pitch. Each at-bat lists its pitches with the Statcast pitch type, release speed, zone and outcome, and the count after every throw. A live game holds the inning state: half, count, outs and which bases are occupied.
At-bats carry the home side's win probability before and after, the umpire crew comes with positions and years of experience, and the ballpark weather arrives as an observation and a forecast. Postseason games link to their series.
First request
Every baseball match in play, one call.
The live board filtered to baseball: each match with its score, status and clock. The same request in four forms; pick yours.
- 1Create a key in the dashboard. Free gives you 1,000 requests a day during the beta.
- 2Put it in
DATASPORTSAPI_API_KEYso the SDKs and thedsacommand find it. - 3Call
/v2/livescores?sport=baseball.
curl -H "Authorization: Bearer dsa_live_…" \
"https://api.datasportsapi.com/v2/livescores?sport=baseball"The catalog
Baseball, endpoint by endpoint
Its own detail first, then the shared spine every fixture sport answers on. Each row opens the endpoint’s reference page.
Where baseball goes deeper
5 endpoints with detail specific to the sport.
- GETGETPoint by point
/v2/fixtures/{id}/pointsA point-by-point breakdown of the match.Pro + BusinessPro + Business - GETGETPitches
/v2/fixtures/{id}/at-bats/{atBatId}/pitchesBaseball only: every pitch of a single at-bat in sequence, with pitch type (MLB Statcast categories: four-seam fastball, sinker, cutter, slider, sweeper, curveball, changeup, …), zone, rele…Pro + BusinessPro + Business - GETGETUmpires
/v2/fixtures/{id}/umpiresBaseball only: the umpiring crew, giving each umpire’s name, years of experience and position (homePlate, firstBase, secondBase, thirdBase, leftField, rightField, other).All plansAll plans - GETGETWeather
/v2/fixtures/{id}/weatherBaseball only: ballpark weather in metric units (°C, %, km/h), with the observed conditions listed before the forecast.All plansAll plans - GETGETPlayoff series
/v2/fixtures/{id}/seriesIds of every fixture in the playoff series that contains this fixture (NBA, NHL, MLB postseason …), including this one.All plansAll plans
The shared spine
10 endpoints that behave the same for every fixture sport.
- GETGETLive scores
/v2/livescoresReturns every live fixture across all sports, or a single sport’s in-play board when ?sport= is given.All plansAll plans - GETGETFixtures by date
/v2/fixturesLists the fixtures that start on a given UTC date.All plansAll plans - GETGETFixture
/v2/fixtures/{id}Everything we hold on one fixture.All plansAll plans - GETGETEvents
/v2/fixtures/{id}/eventsThe match’s incidents in chronological order, oldest first: goals, cards, substitutions, period markers and added-time announcements.All plansAll plans - GETGETStatistics
/v2/fixtures/{id}/statisticsTeam statistics for the match, organised by period and by category.All plansAll plans - GETGETHead to head
/v2/fixtures/{id}/h2hThe two teams’ head-to-head record as tallied by the source, seen from this fixture’s home / away point of view.All plansAll plans - GETGETStandings
/v2/leagues/{id}/standingsLeague tables for a single season.All plansAll plans - GETGETTeam
/v2/teams/{id}Returns a team’s profile — sport, country, venue, colours, logo, gender, whether it is a club or a national team, kind (team / individual / pair), manager and founding date (foundedOn, pres…All plansAll plans - GETGETLeague
/v2/leagues/{id}Returns a league’s profile: its tier (where it sits in the national pyramid), gender, the reigning champion with its title count, the clubs holding the most titles, the divisions directly a…All plansAll plans - GETGETSearch
/v2/searchA single search over teams (individual competitors included), players, managers, referees, leagues, fixtures, venues, racing series and races.All plansAll plans
What comes back
Pitches, as served
A stolen-base attempt, then a cutter that ends the at-bat on a fielder's choice, with speed, zone and runners.
GET/v2/fixtures/{id}/at-bats/{atBatId}/pitchesPro + BusinessSample from the docs, trimmed with …
{ "data": [
{ "kind": "steal", "number": 0, "at": "2026-10-18T00:12:56.000Z", "pitchType": null, "outcome": null, "endsAtBat": false,
"balls": 0, "strikes": 0, "outs": 2, "runners": [ { "player": { "id": 9311, "name": "Chandler Simpson" }, "fromBase": 1, "toBase": 1, "out": false } ], … },
{ "kind": "pitch", "number": 1, "at": "2026-10-18T00:13:10.000Z",
"pitcher": { "id": 9301, "name": "Shawn Armstrong", … }, "batter": { "id": 9302, "name": "Junior Caminero", … },
"pitcherHand": "right", "batterHand": "right", "pitchType": "cutter", "pitchName": "Cutter", "speedKmh": 144.84, "zone": 5,
"outcome": "fieldersChoice", "outcomeCode": "oFC", "endsAtBat": true, "balls": 0, "strikes": 0, "outs": 3,
"homeScore": 0, "awayScore": 0, "hit": false, "bunt": false, "wildPitch": false, "passedBall": false,
"doublePlay": false, "triplePlay": false, "overturned": false,
"battedBall": { "trajectory": "groundBall", "hardness": "medium" },
"runners": [ { "player": { "id": 9302, "name": "Junior Caminero" }, "fromBase": 0, "toBase": 1, "out": false },
{ "player": { "id": 9311, "name": "Chandler Simpson" }, "fromBase": 1, "toBase": null, "out": true } ],
"fielders": [] } ],
"meta": { "atBatId": 70412, "count": 2 } }Switch sport
Coverage across all 24Same family · Bat & ball
Baseball is one query string away.
Swap ?sport=baseball for any other fixture sport and the same code keeps working. Free key, no card.