List teams and payment status
GET/v1/teamleague/{teamLeagueId}/teams
Returns every team in one of your Team Leagues, with league fee payment status, team admins, captain, players and the team's billing address. Typical use: check which teams have paid before the season starts.
Parameters
| Parameter | Description |
|---|---|
teamLeagueId | The Team League ID in Rankedin — a positive number, e.g. 14245. The Team League must belong to your organization, otherwise you get 403 Forbidden. |
Request
curl -H "X-API-Key: your_api_key_here" \
"https://rinpublicapistaging.azurewebsites.net/v1/teamleague/14245/teams"Response
{
"teams": [
{
"teamId": "T000105102",
"name": "all inclusive",
"division": "div 2",
"homeClub": 400,
"homeCourt": 400,
"teamAdmins": ["R000009167", "R000011324"],
"captain": "R000008578",
"players": ["R000008578", "R000031060"],
"billingAddress": {
"address": "Boulevard Ilinden",
"zipCode": "1000",
"city": "Skopje",
"country": "North Macedonia",
"phone": "70 123 456",
"email": "team@example.com"
},
"amountPaid": 15.0,
"totalDue": 0,
"currency": "EUR",
"paymentStatus": "paid",
"paymentDate": "2026-08-15T00:28:06.0755589"
},
{
"teamId": "T000105101",
"name": "Not paid full info",
"division": "div 2",
"homeClub": 2003,
"homeCourt": null,
"teamAdmins": ["R000009167", "R000011324"],
"captain": "R000008578",
"players": ["R000008575", "R000008578"],
"billingAddress": null,
"amountPaid": 0,
"totalDue": 15.0,
"currency": "EUR",
"paymentStatus": "unpaid",
"paymentDate": null
}
]
}Fields in teams[]
| Field | Description |
|---|---|
teamId | The team's Rankedin ID — use it with the team name lookup below |
name | Team name |
division | Division or group in the league (null if not assigned) |
homeClub | Home club ID (null if not set) |
homeCourt | Home court ID (null if not set) |
teamAdmins | Rankedin IDs of the team admins — a team can have several |
captain | Rankedin ID of the captain (null if not set) |
players | Rankedin IDs of the team's players (empty list if none registered yet) |
billingAddress | Delivery and billing address, or null if the team has not entered one. Contains address, zipCode, city, country, phone, email — each may also be null |
amountPaid | Amount already paid |
totalDue | Amount still outstanding — 0 when the team has paid in full |
currency | Currency code, e.g. EUR |
paymentStatus | paid, unpaid or partial |
paymentDate | Date and time of payment (null if not paid) |
totalDue is what is still owed
paymentStatus is the simplest thing to check. If you need amounts, remember that totalDue is the remaining balance, not the full fee — the original fee is amountPaid + totalDue.
Good to know
- All teams are returned in one response — there is no paging. A large league of several hundred teams produces a response of a few hundred kilobytes, so fetch it once and re-use the result rather than calling it for every page view.
- The order of the teams is not guaranteed. If you display them, sort by
divisionandnameyourself. - People are identified by Rankedin ID only. To show names, look them up with the player endpoint.
Errors
| Code | Status | Cause |
|---|---|---|
team_league_id_invalid | 400 | teamLeagueId is not a positive number |
team_league_forbidden | 403 | The Team League does not belong to your organization |
Team — look up a team name
GET/v1/team/{rankedinId}
Turns a teamId from the list above into the team's name.
Request
curl -H "X-API-Key: your_api_key_here" \
"https://rinpublicapistaging.azurewebsites.net/v1/team/T000105100"Response
{ "name": "paid team blank" }Errors
| Code | Status | Cause |
|---|---|---|
rankedin_id_invalid | 400 | The ID is not exactly 10 characters |
team_not_found | 404 | No team with that ID |
rankedin_id_conflict | 409 | More than one record matches the ID — contact Rankedin support |