San Jose Earthquakes 2, Portland Timbers 4

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

Key evidence.

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

San Jose Earthquakes boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Cristian Espinoza–0–00–00––0100
Amahl Pellegrino–0–01–00––1110
Vítor Costa–0–00–00–––000
Paul Marie–0–00–00–––000
Daniel Munie–0–00–00–––000
Jack Skahan–0–00–00–––000
Niko Tsakiris–0–10–00–––000
Preston Judd–0–00–00–––000
Benjamin Kikanovic–0–00–00–––000
Jackson Yueill–0–00–00–––000
Tanner Beason–0–00–00–––000
William Yarbrough––0––40–0.4293––––
Jeremy Ebobisse–0–00–00––0.250410
Alfredo Morales–0–00–00–––000
Bruno Wilson–0–00–01–––000
Rodrigues–0–00–00–––000
Hernan Lopez–0–11–00––0.500210
Carlos Akapo–0–00–00––0100
Carlos Gruezo–0–10–00––0100
Emmanuel Ochoa–0–00–00–––000
Portland Timbers boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededminutesredsave pctsavesshot accuracyshotssotyellow
Antony–0–00–00––0200
Evander–1–11–00––0.500420
David Ayala–0–00–00–––000
Maxime Crépeau––0––20–0.3331––––
James Pantemis–0–00–00–––000
Eric Miller–0–20–00––0100
Kamal Miller–0–30–00–––001
Juan Mosquera–0–00–00––0200
Zac McGraw–0–00–00–––000
Sawyer Jura–0–00–00–––000
Diego Chará–0–10–00–––000
Felipe Mora–0–11–00––0.667320
Santiago Moreno–1–20–00––0300
Eryk Williamson–0–00–00–––000
Cristhian Paredes–0–00–00–––000
Dario Zuparic–0–10–00–––000
Jonathan Rodríguez–0–02–00––0.400520
Dairon Asprilla–0–00–00––1110
Nathan Fogaça–0–00–00––0100
Larrys Mabiala–0–00–00––0100

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