{"openapi":"3.1.0","info":{"title":"Sportradar NHL (BYOK) API","version":"0.1.0","description":"Sportradar NHL (BYOK) lets an AI assistant read your own Sportradar NHL data through the Sportradar NHL API with a key you supply (Sportradar NHL API key (trial or production)). Read-only: 8 tools (list_teams, list_seasons, get_daily_schedule, get_season_schedule, get_series_schedule, get_team_profile, get_player_profile, get_team_season_statistics). The BYOK key travels with each request, is...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-sportradar-nhl.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-sportradar-nhl/docs"},"termsOfService":"https://connectorbay.com/byok-sportradar-nhl/terms"},"servers":[{"url":"https://byok-sportradar-nhl.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-sportradar-nhl/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_teams":{"post":{"operationId":"list_teams","summary":"List the NHL teams with id, name, alias and market (city). Use for \"Which teams are in the NHL and what are their ids\".","description":"List the NHL teams with id, name, alias and market (city). Use for \"Which teams are in the NHL and what are their ids\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"list_teamsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_seasons":{"post":{"operationId":"list_seasons","summary":"List the seasons the NHL API covers with year, dates, status and season type. Use for \"Which NHL seasons are available\".","description":"List the seasons the NHL API covers with year, dates, status and season type. Use for \"Which NHL seasons are available\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"list_seasonsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_daily_schedule":{"post":{"operationId":"get_daily_schedule","summary":"List the NHL games on one calendar date with teams, start time, venue and status (no scores in this feed). Use for \"Whic","description":"List the NHL games on one calendar date with teams, start time, venue and status (no scores in this feed). Use for \"Which NHL games are on 2025-12-20\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"},"year":{"description":"Four-digit calendar year, for example 2025.","maxLength":200,"title":"Year","type":"string"},"month":{"description":"Two-digit month, 01 to 12.","maxLength":200,"title":"Month","type":"string"},"day":{"description":"Two-digit day of the month, 01 to 31.","maxLength":200,"title":"Day","type":"string"}},"required":["access_level","language_code","year","month","day"],"title":"get_daily_scheduleArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_season_schedule":{"post":{"operationId":"get_season_schedule","summary":"List the games of one NHL season and season type with teams, start time, venue and status. Only the first 200 games are ","description":"List the games of one NHL season and season type with teams, start time, venue and status. Only the first 200 games are returned; use get_daily_schedule for one day. Use for \"When do the Toronto Maple Leafs play in the 2025 regular season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"},"season_year":{"description":"Four-digit season year, for example 2025.","maxLength":200,"title":"Season Year","type":"string"},"season_type":{"description":"Season type code: PRE or REG or PST.","enum":["PRE","REG","PST"],"title":"Season Type","type":"string"}},"required":["access_level","language_code","season_year","season_type"],"title":"get_season_scheduleArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_series_schedule":{"post":{"operationId":"get_series_schedule","summary":"List the NHL playoff series of a season with round, title, status, start date and participating teams. Use for \"Which te","description":"List the NHL playoff series of a season with round, title, status, start date and participating teams. Use for \"Which teams are in the 2025 NHL playoff series\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"},"season_year":{"description":"Four-digit season year, for example 2025.","maxLength":200,"title":"Season Year","type":"string"},"season_type":{"const":"PST","description":"Season type code: PST.","title":"Season Type","type":"string"}},"required":["access_level","language_code","season_year","season_type"],"title":"get_series_scheduleArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_team_profile":{"post":{"operationId":"get_team_profile","summary":"Get one NHL team's profile (market, arena, founding year, titles, conference, division) and its roster with positions, j","description":"Get one NHL team's profile (market, arena, founding year, titles, conference, division) and its roster with positions, jersey numbers and handedness. Use for \"Who is on the Edmonton Oilers roster and which arena do they play in\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"},"team_id":{"description":"Team id (UUID) as returned by list_teams.","maxLength":200,"title":"Team Id","type":"string"}},"required":["access_level","language_code","team_id"],"title":"get_team_profileArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_player_profile":{"post":{"operationId":"get_player_profile","summary":"Get one NHL player's profile: position, jersey number, height, weight, handedness, nationality, rookie year, current tea","description":"Get one NHL player's profile: position, jersey number, height, weight, handedness, nationality, rookie year, current team and draft details. Use for \"Which hand does this NHL player shoot with and where was he drafted\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"},"player_id":{"description":"Player id (UUID) as returned by get_team_profile.","maxLength":200,"title":"Player Id","type":"string"}},"required":["access_level","language_code","player_id"],"title":"get_player_profileArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_team_season_statistics":{"post":{"operationId":"get_team_season_statistics","summary":"Get one NHL team's season statistics (team totals, goaltending, opponent totals) and a player list. Use for \"What were t","description":"Get one NHL team's season statistics (team totals, goaltending, opponent totals) and a player list. Use for \"What were the Bruins' team and goaltending statistics in the 2025 regular season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["br","en","es","fr","ru","zh"],"title":"Language Code","type":"string"},"season_year":{"description":"Four-digit season year, for example 2025.","maxLength":200,"title":"Season Year","type":"string"},"season_type":{"description":"Season type code: REG or PST.","enum":["REG","PST"],"title":"Season Type","type":"string"},"team_id":{"description":"Team id (UUID) as returned by list_teams.","maxLength":200,"title":"Team Id","type":"string"}},"required":["access_level","language_code","season_year","season_type","team_id"],"title":"get_team_season_statisticsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}