Coach analysis
Read scoreboard patterns for a player from the matches you stored. Send set scores (and optionally game order) on ingest; these endpoints return fields you can show in a club or coach UI.
Plan: Requires Pro or Enterprise. Starter receives HTTP 403 plan_forbidden.
What to send on ingest
A final set of 6-4 does not record whether the set opened 4-0 or 0-4. Optional game_winners on each set is the chronological list of "A" / "B" games. Length must equal team_a_games + team_b_games. Optional first_server_team is who served game 1 of the set.
GET /v1/players/{username}/analysis
Scope: read:intelligence. Query: limit (1–100, default 50), offset, since (ISO-8601), optional competition_type.
curl -s "https://api.padelrank.me/v1/players/maria_s/analysis?limit=50" \
-H "Authorization: Bearer $PADELRANK_API_KEY"Response fields you can bind in a UI:
outcomes— wins, losses, streaks, win rate (null until enough matches)set_patterns— first vs later sets, close vs blowout, deciding sets, comebacksmomentum— present when you storedgame_winnersform— recent results vs the previous stretchcourt,serve_return,contexts— side, serve vs return (needsfirst_server_team), social vs leagueconsistency_index— optional 0–100 summary for coaching UIs (not a second rating)insights—code, coach-facingtitle/detail, and cappedevidence(match id, set, scoreline)
Use insights[].code as stable keys in your product. Treat title and detail as copy you can display as-is.
starts_strong_then_fades slow_starter closes_sets_poorly first_set_then_drop_off struggles_in_deciders comeback_mentality improving_form declining_form stronger_on_serve stronger_on_return court_side_split struggles_vs_stronger long_match_drop_off submit_game_order insufficient_sample
GET /v1/players/{username}/progress
Scope: read:players. PadelRank score over time with 7 / 30 / 90 day nets. Only public score fields are returned.
curl -s "https://api.padelrank.me/v1/players/maria_s/progress" \
-H "Authorization: Bearer $PADELRANK_API_KEY"GET /v1/players/{username}/head-to-head/{opponent}
Wins, losses, and recent scorelines between two different players on opposite teams.
curl -s "https://api.padelrank.me/v1/players/maria_s/head-to-head/ana_r" \
-H "Authorization: Bearer $PADELRANK_API_KEY"GET /v1/players/{username}/matches
Scope: read:players. Match-by-match feed. Same paging as analysis. Each row includes set scores, optional game order, participants, and per-match signals you can store in your own coaching database.
curl -s "https://api.padelrank.me/v1/players/maria_s/matches?limit=20" \
-H "Authorization: Bearer $PADELRANK_API_KEY"Privacy
Public profiles are readable by any partner. Private profiles are readable only if your partner created them or they sit on one of your rosters. You can only roster a private player that you created. Opponent usernames and profile ids are omitted unless that opponent is public or readable by you.