Portland Timbers 0, St. Louis CITY SC 0

soccer game fileFinal
Energizer Park · St. Louis, Missouri · USA
Boxscore

Key evidence.

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

Portland Timbers boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Antony000000000000
Evander000000000.3333100
David Ayala0200000001000
Trey Muse000000000000
James Pantemis10012
Eric Miller000000000000
Juan Mosquera040000000000
Zac McGraw010000000000
Sawyer Jura000000000000
Felipe Mora000000000001
Santiago Moreno0000000001000
Eryk Williamson010000000000
Cristhian Paredes000000000000
Kyle Linhares000000000000
Dario Zuparic020000000001
Jonathan Rodríguez000000000.5002100
Nathan Fogaça0000000001000
Larrys Mabiala000000000000
Claudio Bravo010000000000
St. Louis CITY SC boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Hosei Kijima0100000001001
Anthony Markanich030000000001
Indiana Vassilev000000000000
Aziel Jackson010000000000
João Klauss0200000002000
Roman Bürki10012
Christopher Durkin0300000002001
Tomas Totland020000000001
Benjamin Lundt000000000000
Célio Pompeu020000000.5002101
Joshua Yaro000000000000
Tim Parker010000000.3333100
Eduard Löwen0500000004000
Akil Watts010000000000
Joakim Nilsson010000000001
Njabulo Blom000000000000
Nökkvi Thórisson000000000000
Samuel Adeniran000000000000
Jakob Nerwinski000000000000
Nikolas Dyhr000000000000

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