TSG Hoffenheim 3, Werder Bremen 1

soccer game fileFinal
Weserstadion · Bremen · Germany
Boxscore

Key evidence.

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

TSG Hoffenheim boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Anton Stach–0–01–00––0.250410
Stanley N'Soki–0–10–00–––000
Tom Bischof–0–21–00––0.333310
Haris Tabakovic–0–00–00–––000
Arthur Chaves–0–00–00––0101
Marius Bulter–0–10–00––0.500210
Luca Philipp––0––10–0.6672––––
Kevin Akpoguma–0–00–00–––000
Alexander Prass–0–00–00–––000
Andrej Kramaric–2–00–00––1220
Bazoumana Touré–0–00–00–––000
Max Moerstedt–0–00–00–––000
Leo Østigard–0–20–00––0100
Gift Orban–0–31–00––1111
David Jurásek–0–00–00–––000
Pavel Kaderábek–0–00–00––0100
Dennis Geiger–0–00–00–––000
Erencan Yardimci–0–30–00–––001
Finn Becker–1–00–00–––000
Jakob Busk–0–00–00–––000

Team line

Werder Bremen
Werder Bremen boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
André Silva–0–00–00––0100
Derrick Köhn–0–00–00–––000
Oliver Burke–0–10–00–––001
Michael Zetterer––0––30–0.5003––––
Anthony Jung–0–00–00–––000
Mio Backhaus–0–00–00–––000
Mitchell Weiser–0–30–00––0200
Niklas Stark–0–10–00––0100
Amos Pieper–0–10–00––0100
Felix Agu–0–00–00–––000
Julian Malatini–0–00–00–––000
Leonardo Bittencourt–0–20–00––1110
Romano Schmid–0–20–00––0101
Senne Lynen–0–10–00––0200
Marco Grüll–0–10–00––0100
Justin Njinmah–0–00–00––0.500210
Skelly Alvero–0–00–00–––000
Milos Veljkovic–0–00–00–––000
Issa Kaboré–0–10–00––0100
Marvin Ducksch–0–10–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_06fhq10nydrh56raew3er0c2qm
curl "https://api.statshawk.ai/v1/contests/cst_06fhq10nydrh56raew3er0c2qm" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhq10nydrh56raew3er0c2qm/boxscore
curl "https://api.statshawk.ai/v1/contests/cst_06fhq10nydrh56raew3er0c2qm/boxscore" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhq10nydrh56raew3er0c2qm/matchup
curl "https://api.statshawk.ai/v1/contests/cst_06fhq10nydrh56raew3er0c2qm/matchup" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhq10nydrh56raew3er0c2qm/play-by-play?detail=full
curl "https://api.statshawk.ai/v1/contests/cst_06fhq10nydrh56raew3er0c2qm/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