Borussia Dortmund 4, SC Freiburg 2

soccer game fileFinal
Europa-Park Stadion · Freiburg im Breisgau · Germany
Boxscore

Key evidence.

Every reported player line, kept in the API’s sport-specific stat vocabulary.

Borussia Dortmund boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Jamie Gittens–0–00–00–––000
Donyell Malen–0–11–00––1110
Niclas Füllkrug–1–00–00––0.500210
Alexander Meyer–0–00–00–––000
Gregor Kobel––0––20–0.5002––––
Niklas Süle–0–00–00–––000
Ramy Bensebaini–0–30–00––0201
Julian Ryerson–0–20–00–––000
Nico Schlotterbeck–0–10–00–––000
Emre Can–0–10–00–––001
Marcel Sabitzer–0–30–00–––000
Julian Brandt–1–00–00––0200
Salih Özcan–0–00–00–––000
Felix Nmecha–0–10–00–––000
Karim Adeyemi–0–20–00–––000
Marius Wolf–1–10–00–––001
Youssoufa Moukoko–0–00–00–––000
Marco Reus–0–01–00––1220
Sébastien Haller–0–10–00––0200
Mats Hummels–0–02–00––1330

Team line

SC Freiburg
SC Freiburg boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Merlin Röhl–0–00–00–––000
Ritsu Doan–0–00–00––0100
Michael Gregoritsch–0–00–00––0100
Florian Müller–0–00–00–––000
Noah Atubolu––0––40–0.4293––––
Matthias Ginter–0–00–00–––000
Lukas Kübler–0–00–00–––000
Philipp Lienhart–0–10–00––0101
Jordy Makengo–0–00–00–––000
Nicolas Höfler–0–11–01––1110
Vincenzo Grifo–2–00–00––0200
Maximilian Eggestein–0–20–00––0101
Maximilian Philipp–0–00–00–––000
Lucas Höler–0–21–00––1330
Junior Adamu–0–20–00–––000
Roland Sallai–0–20–00––0400
Kiliann Sildillia–0–00–00–––000
Noah Weißhaupt–0–00–00–––000
Kenneth Schmidt–0–00–00–––000
Manuel Gulde–0–20–00––0100

Comparison

Side by side.

Final

Analysis preview// illustrative example, not this page's real data
sample · team comparisonexample only
a:"Team A"b:"Team B"
Offensive ratingA 114.2 · B 108.9
Recent form (L10)A 6-4 · B 6-4
Head-to-headB leads 3-1
GET /v1/analysis/compare-teams?a=…&b=…Run this yourself via the API
Built on the StatHawk API

The page is the demo.

These requests and request patterns show how this page gets data from the same REST API and MCP server you can use in your own app or agent.

View this page's API recipe

Use the authenticated requests or fill in the labeled request templates, then adapt the response in your own product.

Authenticated request · GET /v1/contests/cst_06fhs495p5yq74dtrwh5cny91w
curl "https://api.statshawk.ai/v1/contests/cst_06fhs495p5yq74dtrwh5cny91w" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs495p5yq74dtrwh5cny91w/boxscore
curl "https://api.statshawk.ai/v1/contests/cst_06fhs495p5yq74dtrwh5cny91w/boxscore" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs495p5yq74dtrwh5cny91w/matchup
curl "https://api.statshawk.ai/v1/contests/cst_06fhs495p5yq74dtrwh5cny91w/matchup" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs495p5yq74dtrwh5cny91w/play-by-play?detail=full
curl "https://api.statshawk.ai/v1/contests/cst_06fhs495p5yq74dtrwh5cny91w/play-by-play?detail=full" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Try with MCP

Connect StatHawk to your agent, then ask it to explain and extend the data shown on this page.

Build this view in the API reference
$claude mcp add statshawk https://mcp.statshawk.ai/mcp