Portland Timbers 1, Chicago Fire FC 2

soccer game fileFinal
Soldier Field · Chicago, Illinois · 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
Antony0200000011100
Trey Muse000000000000
James Pantemis0200.5002
Eric Miller000000000000
Brandon Bye120000000001
Kamal Miller000000000000
Zac McGraw000000000000
Finn Surman0010000011100
Diego Chará000000000000
Joao Ortiz000000000000
José Caicedo000000000000
Cole Bassett000000000000
Jimer Fory0100000001000
David Da Costa0000000001000
Ariel Lassiter000000000000
Omir Fernández0000000001000
Kristoffer Velde0000000003000
Kevin Kelsy0000000002000
Gage Guerra000000000000
Vincent Janssen0100000001001
Chicago Fire FC boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Robert Lewandowski000000000.3333100
Josh Cohen000000000000
Chris Brady0100.5001
Mauricio Pineda000000000000
Joel Waterman000000000000
Andrew Gutman120000000000
Samual Rogers010000000000
Jonathan Dean000000000000
Viktor Radojevic000000000000
Christopher Cupps000000000000
Leonardo Barroso030000000000
Anton Saletros020000000001
Robin Lod0510000012201
Maren Haile-Selassie1100000001000
D'Avilla Dje Tah0010000011100
David Poreba000000000000
Philip Zinckernagel010000000000
Jonathan Bamba000000000000
Puso Dithejane0000000001000
Jack Elliott000000000000

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