Real Salt Lake 1, Portland Timbers 2

soccer game fileFinal
Providence Park · Portland, Oregon · USA
Boxscore

Key evidence.

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

Real Salt Lake boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespass pctpassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Morgan Guilavogui–1–20–0340.875871–––0010
Rafael––0––2–90––––0.6674–––––
Juan Arias–0–10–0160.714750–––0000
DeAndre Yedlin–0–00–1580.84219160–––0030
Alexandros Katranis–0–00–051220–––0000
Samuel Junqua–0–00–0320.750860–––0000
Philip Quinton–0–00–0900.73037270–––0010
Lukas Engel–0–00–0740.78642330––01010
Diego Luna–0–10–2740.89729260–––0010
Stijn Spierings–0–60–1900.90933300––01030
Pablo Ruiz–0–00––0–––0–––00–0
Juan Manuel Sanabria–0–01–0850.82434280––11120
Griffin Dillon–0–00––0–––0–––00–0
Zach Booth–0–00––0–––0–––00–0
Noel Caliskan–0–10–0900.81649400––01010
Victor Olatunji–0–10–0160200–––0000
Zavier Gozo–0–00–1900.70020140––11140
Sergi Solans–0–10–0740.6361170––01001
Mason Stajduhar–0–00––0–––0–––00–0
Saba Lobjanidze–0–00–0160.500210–––0000
Portland Timbers boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespass pctpassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Antony–0–20–033112120–––0000
Trey Muse–0–00––0–––0–––00–0
James Pantemis––0––1–90––––0.5001–––––
Ian Smith–0–00––0–––0–––00–0
Eric Miller–0–00––0–––0–––00–0
Brandon Bye–0–20–2900.81760490––02010
Kamal Miller–0–00–0900.89979710–––0020
Finn Surman–0–10–3900.92869640–––0000
Alex Bonetig–0–00––0–––0–––00–0
Sawyer Jura–0–00––0–––0–––00–0
Diego Chará–0–10–1720.95040380–––0011
Joao Ortiz–0–10–041770–––0000
José Caicedo–0–00–118113130––01020
Cole Bassett–0–20–0860.82540330––0.3333101
Jimer Fory–0–10–1900.82156460––01020
David Da Costa–0–00–0900.96557550––0.5002120
Felipe Mora–0–02–0720.667640––0.5004200
Ariel Lassiter–1–00–0570.85020170–––0000
Kristoffer Velde–1–20–0900.78437290––0.2867220
Alexander Aravena–0–00–0181770––02000

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