app.americansocceranalysis.com APIapp.americansocceranalysis.com ↗
Access USL Championship goalkeeper goals-added metrics and xGoals data via 2 endpoints. Filter by season, team, player, date range, and minimum minutes.
curl -X GET 'https://api.parse.bot/scraper/16cc59c4-5fe8-4fae-8d52-428bc4e6363e/get_goalkeepers_goals_added?season_name=2023&minimum_minutes=1000' \ -H 'X-API-Key: $PARSE_API_KEY'
Get USLC goalkeeper goals-added data. Returns per-player stats across 6 action types: Claiming, Fielding, Handling, Passing, Shotstopping, Sweeping. Each action type includes raw goals added, goals added above average, and action count. Results can be filtered by season, team, player, date range, and minimum minutes played.
| Param | Type | Description |
|---|---|---|
| team_id | string | Team ID(s) to filter by, comma-separated. |
| end_date | string | End date filter in YYYY-MM-DD format. |
| player_id | string | Player ID(s) to filter by, comma-separated. |
| start_date | string | Start date filter in YYYY-MM-DD format. |
| season_name | string | Season year(s) to filter by, comma-separated (e.g. '2023' or '2022,2023'). Earliest available: 2017. |
| split_by_teams | string | Whether to split stats by team. Accepted values: 'true', 'false'. |
| minimum_minutes | integer | Minimum minutes played filter. |
{
"type": "object",
"fields": {
"total": "integer count of goalkeeper records returned",
"goalkeepers": "array of goalkeeper objects with player_id, team_id, minutes_played, and per-action-type goals_added_raw, goals_added_above_avg, count_actions"
},
"sample": {
"data": {
"total": 30,
"goalkeepers": [
{
"team_id": "Oa5w0kDq14",
"player_id": "2lqRkj6AQr",
"minutes_played": 1222,
"passing_count_actions": 307,
"claiming_count_actions": 8,
"fielding_count_actions": 140,
"handling_count_actions": 36,
"sweeping_count_actions": 17,
"passing_goals_added_raw": 0.4039,
"claiming_goals_added_raw": 0.0189,
"fielding_goals_added_raw": -0.0186,
"handling_goals_added_raw": -0.0244,
"sweeping_goals_added_raw": 0.1415,
"shotstopping_count_actions": 54,
"shotstopping_goals_added_raw": 0.0978,
"passing_goals_added_above_avg": -0.4052,
"claiming_goals_added_above_avg": 0.0124,
"fielding_goals_added_above_avg": 0.0562,
"handling_goals_added_above_avg": 0.0047,
"sweeping_goals_added_above_avg": 0.1799,
"shotstopping_goals_added_above_avg": 0.4669
}
]
},
"status": "success"
}
}About the app.americansocceranalysis.com API
This API exposes USL Championship goalkeeper statistics from American Soccer Analysis across 2 endpoints, covering goals-added breakdowns and expected goals data. The get_goalkeepers_goals_added endpoint returns per-player metrics across six action types — Claiming, Fielding, Handling, Passing, Shotstopping, and Sweeping — while get_goalkeepers_xgoals delivers shot-stopping efficiency figures including goals conceded vs. xGoals faced. Data is available from the 2017 season onward.
Goals-Added Endpoint
The get_goalkeepers_goals_added endpoint returns a goalkeepers array with one object per player per season (or per team, when split_by_teams=true). Each object includes player_id, team_id, minutes_played, and six action-type blocks. For each of Claiming, Fielding, Handling, Passing, Shotstopping, and Sweeping, the response includes goals_added_raw, goals_added_above_avg, and an action count. You can filter by season_name (comma-separated years back to 2017), player_id, team_id, start_date/end_date, and minimum_minutes to scope results to a meaningful sample size.
xGoals Endpoint
The get_goalkeepers_xgoals endpoint returns shot-stopping efficiency data per goalkeeper. Response fields include shots_faced, goals_conceded, saves, share_headed_shots, xgoals_faced, goals minus xGoals, and goals divided by xGoals. It supports the same season and team filters as the goals-added endpoint, plus a stage_name parameter (e.g. Regular Season) and a split_by_games flag to break results down match by match. The total integer at the top level of both responses indicates how many records matched the query.
Filtering and Coverage
Both endpoints accept comma-separated values for player_id, team_id, and season_name, making multi-season or multi-player queries straightforward. Date-range filtering via start_date and end_date (YYYY-MM-DD) allows analysis within partial seasons. Coverage spans USL Championship (USLC) goalkeeper data from 2017 onward; earlier seasons are not available.
- Rank USLC goalkeepers by
goals_added_above_avgacross Shotstopping actions for a given season - Compare a goalkeeper's goals-conceded vs. xGoals-faced ratio over multiple seasons using
get_goalkeepers_xgoals - Identify goalkeepers with high
share_headed_shotsfaced to assess aerial workload differences by team - Filter
get_goalkeepers_goals_addedbyminimum_minutesto build a qualified leaderboard that excludes small samples - Split goalkeeper stats by team using
split_by_teams=trueto evaluate performance after mid-season transfers - Track Passing action goals-added for goalkeepers to assess ball-playing contribution beyond shot-stopping
- Break down per-game xGoals data with
split_by_games=trueto spot hot or cold stretches across a season
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does American Soccer Analysis offer an official developer API?+
itscalledsoccer (available at github.com/American-Soccer-Analysis/itscalledsoccer) that wraps their data. It targets R and Python users directly rather than exposing a conventional REST API for general application development.What does `get_goalkeepers_xgoals` return beyond a basic save count?+
saves and shots_faced, the endpoint returns xgoals_faced (expected goals from shots the keeper faced), a goals-minus-xGoals figure showing over- or under-performance, goals divided by xGoals as a ratio, and share_headed_shots indicating the proportion of shots that were headers. The split_by_games parameter lets you retrieve each of these per match rather than aggregated.Does the goals-added endpoint cover Sweeping and Claiming actions separately?+
goals_added_raw, goals_added_above_avg, and action count fields in the response, so you can isolate any single action type without aggregating client-side.Does this API cover MLS or USL League One goalkeeper data?+
Is there a way to get goalkeeper data split by individual match result (win/loss/draw)?+
split_by_games parameter on get_goalkeepers_xgoals returns per-game rows, but result context is not part of the response schema. You can fork this API on Parse and revise it to add match-result filtering if that breakdown is needed.