Portland Timbers 2, New York City FC 1

soccer game fileFinal
Yankee Stadium · New York City · 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
Antony111000000.3333100
Evander001000000.5002100
David Ayala000000000000
Maxime Crépeau0100.8335
James Pantemis000000000000
Eric Miller000000000000
Kamal Miller020000000000
Juan Mosquera100000000000
Zac McGraw030000000001
Diego Chará010000000000
Santiago Moreno020000000000
Cristhian Paredes0200000002001
Dario Zuparic000000000000
Dairon Asprilla0100000001000
Nathan Fogaça0100000011100
Tega Ikoba000000000000
Miguel Araujo000000000000
Larrys Mabiala000000000000
New York City FC boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Luis Barraza000000000000
Matt Freese0200.3331
Thiago Martins0200000001000
Kevin O'Toole010000000000
Tayvon Gray000000000000
Mitja Ilenic030000000000
Andrés Perea020000000000
Keaton Parks0100000001000
Hannes Wolf0000000002000
Alonso Martínez000000000000
Agustin Ojeda000000000000
Malachi Jones000000000000
Justin Haak030000000000
Strahinja Tanasijevic000000000000
Jovan Mijatovic010000000000
Birk Risa0200000001000
Monsef Bakrar0200000015500
Julián Fernández000000000000
Santiago Rodríguez0510000011101
Andres Jasson010000000000

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