Mainz 2, VfL Bochum 2

soccer game fileFinal
Mainz logo
Mainzaway
2
Vonovia Ruhrstadion · Bochum · Germany
Boxscore

Key evidence.

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

Team line

Mainz
Mainz boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Sepp van den Berg–0–20–00–––000
Brajan Gruda–0–00–00––0100
Tom Krauss–0–01–00––1110
Daniel Batz–0–00–00–––000
Robin Zentner––0––20–0.5002––––
Stefan Bell–0–00–00–––000
Danny da Costa–0–10–00––0200
Silvan Widmer–0–00–00–––000
Maxim Leitsch–0–10–00–––000
Anthony Caci–0–00–00––0100
Lee Jae-Sung–0–00–00–––001
Dominik Kohr–0–30–00–––001
Ludovic Ajorque–0–20–00–––000
Leandro Barreiro–0–20–00–––001
Karim Onisiwo–1–30–00––0100
Aymen Barkok–0–50–00––0.667320
Edimilson Fernandes–0–00–00–––000
Merveille Papela–0–00–00–––000
David Mamutovic–0–00–00–––000
Josuha Guilavogui–0–00–00–––000

Team line

VfL Bochum
VfL Bochum boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Takuma Asano–0–00–00––0200
Kevin Stöger–1–21–00––0.500210
Keven Schlotterbeck–0–11–00––1220
Bernardo–0–00–00––1111
Erhan Masovic–0–00–00–––000
Maximilian Wittek–0–00–00–––000
Lukas Daschner–0–00–00–––000
Anthony Losilla–0–20–00–––001
Moritz Broschinski–0–40–00––0200
Philipp Hofmann–0–00–00––1110
Noah Loosli–0–00–00–––000
Cristian Gamboa–0–10–00––0100
Moritz-Broni Kwarteng–0–00–00–––000
Ivan Ordets–0–00–00–––000
Gonçalo Paciência–0–10–00––0101
Manuel Riemann––0––10–0.6672––––
Christopher Antwi-Adjei–0–00–00–––000
Danilo Soares–0–20–00––0100
Niclas Thiede–0–00–00–––000
Philipp Förster–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_06fhs49a2dwt5dzjhab3dp2zh4
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49a2dwt5dzjhab3dp2zh4" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs49a2dwt5dzjhab3dp2zh4/boxscore
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49a2dwt5dzjhab3dp2zh4/boxscore" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs49a2dwt5dzjhab3dp2zh4/matchup
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49a2dwt5dzjhab3dp2zh4/matchup" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs49a2dwt5dzjhab3dp2zh4/play-by-play?detail=full
curl "https://api.statshawk.ai/v1/contests/cst_06fhs49a2dwt5dzjhab3dp2zh4/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