nbl_schedule
Fetch the complete NBL season schedule and results, including match times, scores, venues, and team details. Sort by start_time for chronological order.
Instructions
Every match for one season: start_time, round, status, home/away scores, attendance, venue, match_slug/title, and home_team/away_team (id, name, team_code, logo, colour). id is the match id for nbl_match_boxscore and nbl_match_playbyplay. Rows are NOT in date order, so sort by start_time. seasonType=all for the whole season.
Returns: {type, count, data:[{id, external_id, start_time, round, match_type, status:'SCHEDULED'|'CONFIRMED'|'DRAFT', match_status:'scheduled'|'complete'|'draft', home_score, away_score, attendance, match_slug, match_title, play_by_play, venue:{name}, home_team:{id, name, team_code, team_logo, color_primary}, away_team:{…}}]} — a finished game is status CONFIRMED / match_status complete. play_by_play is an id string once a game has play-by-play and null before; it is not a flag. Scores are STRINGS ('86', not 86) and null until a game is played.
Example: Full NBL27 schedule and results {"year": 2026, "seasonType": "all"}
Auth: none needed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season START year — 2025 = NBL26 (current 2025-26 season), 2026 = NBL27. Required — part of the URL path. | |
| limit | No | Rows to return. 400 covers a whole season in one call; the feed's own default is 100, which silently drops the rest. | |
| offset | No | Rows to skip, for paging past `limit`. | |
| seasonType | No | Phase to list (default all). The NBL Blitz pre-season tournament is filed under in_season. | all |