Borussia Dortmund 3, Eintracht Frankfurt 3

soccer game fileFinal
Deutsche Bank Park · Frankfurt · 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–00–00––0100
Niclas Füllkrug–1–20–00––0.500210
Alexander Meyer––0––10–0.5001––––
Gregor Kobel––0––20–0.6003––––
Niklas Süle–0–00–00–––000
Ramy Bensebaini–0–10–00––0200
Julian Ryerson–0–00–00–––000
Nico Schlotterbeck–0–20–00––0100
Marcel Sabitzer–0–01–00––1110
Julian Brandt–0–01–00––1110
Salih Özcan–0–10–00–––001
Karim Adeyemi–1–10–00––0101
Giovanni Reyna–0–00–00–––000
Marius Wolf–0–00–00––0200
Thomas Meunier–0–00–00–––000
Youssoufa Moukoko–0–11–00––1110
Marco Reus–0–00–00––0100
Sébastien Haller–0–00–00–––000
Mats Hummels–0–10–00––0100
Eintracht Frankfurt boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Omar Marmoush–0–22–00––0.400521
Jens Grahl–0–00–00–––000
Robin Koch–0–00–00–––000
Timothy Chandler–0–00–00–––000
Mario Götze–0–00–00–––000
Ellyes Skhiri–1–10–00–––000
Hugo Larsson–0–00–00––0.500210
Farès Chaïbi–0–21–00––0.500210
Ansgar Knauff–0–00–00––1110
Kristijan Jakic–0–00–00–––000
Niels Nkounkou–0–00–00–––000
Buta–0–00–00––1221
Willian Pacho–0–00–00–––001
Kevin Trapp––0––30–0.2501––––
Junior Dina Ebimbe–0–20–00–––000
Jens Petter Hauge–0–00–00–––000
Tuta–0–20–00–––000
Philipp Max–0–20–00–––000
Makoto Hasebe–0–00–00–––000
Hrvoje Smolcic–0–00–00–––000

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_06fhs49axhyf5adhmpc075s848
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49axhyf5adhmpc075s848" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs49axhyf5adhmpc075s848/boxscore
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49axhyf5adhmpc075s848/boxscore" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs49axhyf5adhmpc075s848/matchup
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49axhyf5adhmpc075s848/matchup" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs49axhyf5adhmpc075s848/play-by-play?detail=full
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49axhyf5adhmpc075s848/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