Skip to content

Players

Look up skill by username or register players your platform manages.

GET /v1/players/{username}

Plan: Included on Starter, Pro, and Enterprise.

Returns profile fields and computed rating. Public profiles are readable by any partner. Private profiles are readable if your partner created them or they sit on one of your rosters — otherwise 404.

cURL
curl -s "https://api.padelrank.me/v1/players/maria_s" \
    -H "Authorization: Bearer $PADELRANK_API_KEY"

Example response shape:

cURL
{
  "id": "uuid",
  "username": "maria_s",
  "display_name": "Maria Silva",
  "country_code": "PT",
  "rating": {
    "padelrank_score": 2840,
    "confidence_level": "established",
    "confidence_label": "Medium confidence",
    "matches_played": 22
  }
}

GET /v1/players/search

Prefix search on public usernames. Query params: q (min 2 chars), limit (max 50).

cURL
curl -s "https://api.padelrank.me/v1/players/search?q=mar&limit=10" \
  -H "Authorization: Bearer $PADELRANK_API_KEY"

GET /v1/players/{username}/matches

Completed match history with set scores and optional game order. Scope: read:players. See Coach analysis.

cURL
curl -s "https://api.padelrank.me/v1/players/maria_s/matches?limit=20" \
    -H "Authorization: Bearer $PADELRANK_API_KEY"

GET /v1/players/{username}/analysis

Plan: Requires Pro or Enterprise. Starter receives HTTP 403 plan_forbidden.

Aggregated scoreboard patterns for coaches. Scope: read:intelligence.

cURL
curl -s "https://api.padelrank.me/v1/players/maria_s/analysis?limit=50" \
    -H "Authorization: Bearer $PADELRANK_API_KEY"

GET /v1/players/{username}/progress

Score history for the player card / parent update. Scope: read:players.

cURL
curl -s "https://api.padelrank.me/v1/players/maria_s/progress" \
    -H "Authorization: Bearer $PADELRANK_API_KEY"

GET /v1/players/{username}/card

One payload for a club app: rating, 7/30/90-day windows, form, consistency, headline coaching insight, and the last five matches. Scope: read:players.

cURL
curl -s "https://api.padelrank.me/v1/players/maria_s/card" \
    -H "Authorization: Bearer $PADELRANK_API_KEY"

POST /v1/players

Plan: Requires Pro or Enterprise. Starter receives HTTP 403 plan_forbidden.

Idempotent registration by username. Scope: write:players. Clubs should set profile_is_public: false for amateurs. Optional roster_slug adds them to a group in the same call (and defaults the profile to private when you omit profile_is_public).

cURL
curl -s -X POST "https://api.padelrank.me/v1/players" \
  -H "Authorization: Bearer $PADELRANK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "maria_s",
    "display_name": "Maria Silva",
    "country_code": "PT",
    "profile_is_public": false,
    "roster_slug": "weeknight-amateurs"
  }'