TSG Hoffenheim 2, Werder Bremen 0

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 concededintcminutespass pctpassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Oliver Baumann––1––0–90––––13–––––
Luca Philipp–0–00––0–––0–––00–0
Kevin Akpoguma–0–00–010100–––0000
Vladimír Coufal–0–10–1900.68244300––01040
Bernardo–0–10–0900.76939300––01001
Ozan Kabak–0–00–1310.333310–––0000
Valentin Gendrey–0–00––0–––0–––00–0
Albian Hajdari–0–10–0900.83336300–––0000
Alexander Prass–0–11–2890.76730230––0.5002110
Robin Hranác–0–00–0900.85227230–––0010
Grischa Prömel–0–01–3900.76338290––0.5002110
Wouter Burger–0–10–0520.78323181––02010
Muhammed Damar–0–00––0–––0–––00–0
Leon Avdullahu–0–20–2900.83956470–––0030
Andrej Kramaric–1–00–0590.92326240––0.5002110
Tim Lemperle–0–30–1760.55618100––02010
Fisnik Asllani–0–00––0–––0–––00–0
Bazoumana Touré–0–00––0–––0–––00–0
Max Moerstedt–0–00–0140.500420–––0000

Team line

Werder Bremen
Werder Bremen boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespass pctpassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Karl Hein–0–00––0–––0–––00–0
Mio Backhaus––0––2–90––––0.3331–––––
Karim Coulibaly–0–00–0900.81972590––01000
Yukinari Sugawara–0–00–0900.84144370––02010
Olivier Deman–0–00–0590.70020140––01010
Julian Malatini–0–00–0760.77540310–––0010
Mick Schmetgens–0–00––0–––0–––00–0
Jens Stage–0–20–0900.61249300––0.4005221
Romano Schmid–0–00–0900.74335260––04040
Cameron Puertas–0–10–0760.83342350–––0020
Senne Lynen–0–20–4900.91582750––02000
Wesley Adeh–0–00––0–––0–––00–0
Patrice Covic–0–00–1140.78919150––02010
Marco Grüll–0–00–0310.81021170––02000
Keke Topp–0–00–0140.857760––02000
Justin Njinmah–0–00–0590.6001060––01000
Samuel Mbangula–0–00–0310.95221200––0.3333100
Jovan Milosevic–0–20–0900.83318150––01011
Isak Hansen-Aarøen–0–00––0–––0–––00–0
Skelly Alvero–0–00––0–––0–––00–0

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