Borussia Dortmund 3, TSG Hoffenheim 2

soccer game fileFinal
PreZero Arena · Sinsheim · Germany
Boxscore

Key evidence.

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

Borussia Dortmund boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Jamie Gittens010000000.5002100
Alexander Meyer000000000000
Gregor Kobel0200.3331
Niklas Süle0000000011100
Ramy Bensebaini010000000000
Waldemar Anton0110000011101
Julian Ryerson0100000002000
Yan Couto000000000000
Daniel Svensson2100000001000
Almugera Kabar000000000000
Emre Can020000000000
Julian Brandt0010000012200
Salih Özcan020000000000
Felix Nmecha0000000002000
Carney Chukwuemeka000000000000
Serhou Guirassy101000000.3333100
Karim Adeyemi0000000011100
Giovanni Reyna000000000000
Julien Duranville000000000000
TSG Hoffenheim boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Anton Stach1100000001001
Stanley N'Soki010000000001
Haris Tabakovic0000000001000
Arthur Chaves030000000001
Marius Bulter000000000000
Oliver Baumann0300.6255
Luca Philipp000000000000
Kevin Akpoguma000000000000
Alexander Prass000000000000
Robin Hranác000000000000
Andrej Kramaric0100000001000
Adam Hlozek011000000.5002100
Bazoumana Touré010000000.3333100
Umut Tohumcu010000000001
Leo Østigard030000000000
Gift Orban000000000000
David Jurásek100000000000
Pavel Kaderábek011000000.5002101
Dennis Geiger0300000001000
Finn Becker000000000000

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