alleygorithm
player impact + groups
PlayersTeamsGroupsGamesTrends
alleygorithm
player impact and winning groups

NBA analytics grounded in win probability, player impact, and the groups that have actually driven winning.

PlayersTeamsGroupsGamesTrendsHow it worksDevelopersPro
WPA-powered analytics from play-by-play data
Developers

API access to player impact and winning groups.

Alleygorithm exposes the same core score surfaces the product uses: player rankings, observed groups, teams, games, and time-windowed contribution data. All endpoints return JSON and default to the same current-season public window as the app.

Observed public scores

Player, team, game, and group endpoints return the same contribution-first score layer the app uses.

Paid deeper access

Pro unlocks deeper windows, event detail, higher-order groups, and export workflows without changing the public metric story.

Enterprise automation

Enterprise adds API-key access for internal dashboards, creator tooling, or team-side analytics workflows.

Authentication

Free endpoints work without authentication. Signed-in Pro sessions unlock paid endpoints in the browser. Enterprise users can also use bearer tokens for server or workflow access.

Authorization: Bearer ak_your_api_key_here

Enterprise API keys are rate-limited to 1,000 requests per hour. Pro access expands windows and premium boards, but API keys themselves are Enterprise-only.

Windows and access
Free requests default to window=current_season.
Pro unlocks alternate windows, player events, trios, quartets, lineups, and exports.
Enterprise adds API-key automation and internal tooling workflows.
See plans and access tiers
Loading API key settings...
Endpoints

Current API surface

JSON only
GET/api/scores/statusfree

Scores status, available windows, data freshness

GET/api/scores/playersfree

Player rankings with win contribution, percentile, grade

limit, min_possessions, sort_by, ascending, window

GET/api/scores/players/:idfree

Single player detail with best/worst pairs

GET/api/scores/players/:id/historyfree

Per-game player contribution history

GET/api/scores/players/:id/eventspro

Play type impact breakdown (offense/defense WPA)

GET/api/scores/pairsfree

Observed pair contribution rankings with optional research fields

limit, min_possessions, min_confidence, sort_by, ascending, window

GET/api/scores/triospro

Trio group scores

limit, min_possessions, sort_by, ascending, window

GET/api/scores/quartetspro

Quartet group scores

GET/api/scores/lineupspro

Full 5-man lineup scores

GET/api/scores/teamsfree

Team rankings by rotation-weighted impact

GET/api/scores/teams/:abbrfree

Single team detail with roster

GET/api/scores/gamesfree

Game list with dates, teams, possession counts

limit, window

GET/api/scores/games/:idfree

Game WP timeline (free: WP line only, Pro: player IDs per possession)

POST/api/scores/lineup/projectpro

Experimental lineup projection endpoint for 2-5 players

Body: { player_ids: string[], window?: string }

GET/api/scores/search/playersfree

Search players by name

q, limit

POST/api/export/csvpro

Export board data as CSV

Body: { type: "players"|"pairs"|..., window?: string }

Examples
# Top 10 current-season players
curl https://www.alleygorithm.com/api/scores/players?limit=10
# Recent trio board with API key
curl -H "Authorization: Bearer ak_xxx" \
https://www.alleygorithm.com/api/scores/trios?window=last_15
# Experimental lineup projection
curl -X POST -H "Authorization: Bearer ak_xxx" \
-H "Content-Type: application/json" \
-d '{"player_ids":["1641705","203999","1628983"],"window":"current_season"}' \
https://www.alleygorithm.com/api/scores/lineup/project
Notes

Public/default responses are contribution-first. Research fields like surplus are secondary and should not be treated as the primary product contract.

The lineup projection endpoint is available, but it is still closer to an advanced workflow than the core observed public product.

For most users, the best place to understand the metric semantics is still the methodology page.