Borussia Dortmund 1, Paris Saint-Germain 0

soccer game fileFinal
Parc des Princes · Paris · France
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
Ian Maatsen000000000000
Jamie Gittens000000000000
Donyell Malen000000000000
Niclas Füllkrug0100000011100
Jadon Sancho000000000000
Alexander Meyer000000000000
Gregor Kobel10015
Niklas Süle000000000000
Julian Ryerson0100000001000
Nico Schlotterbeck0100000001000
Emre Can010000000000
Marcel Sabitzer010000000001
Julian Brandt1000000001000
Salih Özcan000000000000
Felix Nmecha000000000000
Karim Adeyemi0000000011100
Marius Wolf000000000000
Youssoufa Moukoko000000000000
Marco Reus000000000000
Sébastien Haller000000000000
Marcel Lotka000000000000
Kjell-Arik Wätjen000000000000
Mats Hummels0110000011101
Paris Saint-Germain boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Gianluigi Donnarumma0100.6672
Manuel Ugarte000000000000
Nordi Mukiele000000000000
Randal Kolo Muani000000000000
Kylian Mbappé020000000.2504100
Carlos Soler000000000000
Arnau Tenas000000000000
Gonçalo Ramos0100000004000
Vitinha000000000.1676100
Lucas Beraldo000000000000
Warren Zaïre-Emery0100000001000
Fabián Ruiz0000000001000
Lee Kang-In0000000001000
Bradley Barcola0000000001000
Achraf Hakimi0000000001001
Nuno Mendes0000000003000
Ousmane Dembélé0300000001001
Marquinhos0100000002000
Yoram Zague000000000000
Milan Skriniar000000000000
Marco Asensio0000000003000
Danilo Pereira000000000000
Keylor Navas000000000000

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