{"openapi":"3.1.0","info":{"title":"Sportradar Soccer (BYOK) API","version":"0.1.0","description":"Sportradar Soccer (BYOK) lets an AI assistant read your own Sportradar Soccer data through the Sportradar Soccer API with a key you supply (Sportradar Soccer API key (trial or production)). Read-only: 11 tools (list_competitions, list_competition_seasons, get_season_standings, get_season_schedule, get_daily_schedule, get_live_schedule, get_season_leaders, get_season_competitors,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-sportradar-soccer.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-sportradar-soccer/docs"},"termsOfService":"https://connectorbay.com/byok-sportradar-soccer/terms"},"servers":[{"url":"https://byok-sportradar-soccer.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-sportradar-soccer/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_competitions":{"post":{"operationId":"list_competitions","summary":"List all soccer competitions (leagues and cups) with id, name, gender, type and country category. Competition ids feed t","description":"List all soccer competitions (leagues and cups) with id, name, gender, type and country category. Competition ids feed the other tools. Use for \"Which soccer competitions does Sportradar cover and what is the Premier League id\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"list_competitionsArguments","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_competition_seasons":{"post":{"operationId":"list_competition_seasons","summary":"List the seasons of one soccer competition with season id, name, year and start and end dates. Use for \"What seasons of ","description":"List the seasons of one soccer competition with season id, name, year and start and end dates. Use for \"What seasons of the Premier League are available and what is the current season id\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"competition_id":{"description":"Competition id as returned by list_competitions, for example 'sr:competition:17' (Premier League).","maxLength":60,"title":"Competition Id","type":"string"}},"required":["access_level","language_code","competition_id"],"title":"list_competition_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_season_standings":{"post":{"operationId":"get_season_standings","summary":"Get the league table of a season with rank, played, wins, draws, losses, goals and points per team (groups for cup phase","description":"Get the league table of a season with rank, played, wins, draws, losses, goals and points per team (groups for cup phases). Use for \"What is the Premier League table this season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"season_id":{"description":"Season id as returned by list_competition_seasons, for example 'sr:season:130281'.","maxLength":60,"title":"Season Id","type":"string"},"round":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Standings after this round number; default is the latest round.","title":"Round"},"live":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to base the table on live scores.","title":"Live"}},"required":["access_level","language_code","season_id"],"title":"get_season_standingsArguments","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":"Get the schedule and results of a season: each match with kick-off time, teams, venue, status and score. Paged with star","description":"Get the schedule and results of a season: each match with kick-off time, teams, venue, status and score. Paged with start and limit. Use for \"Show all Premier League fixtures and results for this season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"season_id":{"description":"Season id as returned by list_competition_seasons, for example 'sr:season:130281'.","maxLength":60,"title":"Season Id","type":"string"},"start":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Number of items to skip, for paging (default 0).","title":"Start"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many matches to return (1 to 1000).","title":"Limit"}},"required":["access_level","language_code","season_id"],"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_daily_schedule":{"post":{"operationId":"get_daily_schedule","summary":"Get all soccer matches scheduled on one date, across competitions, with teams, venue, status and score. Use for \"Which s","description":"Get all soccer matches scheduled on one date, across competitions, with teams, venue, status and score. Use for \"Which soccer matches are played on 2025-06-01\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"date":{"description":"Date in YYYY-MM-DD format.","maxLength":10,"title":"Date","type":"string"},"start":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Number of items to skip, for paging (default 0).","title":"Start"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many matches to return (1 to 200).","title":"Limit"}},"required":["access_level","language_code","date"],"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_live_schedule":{"post":{"operationId":"get_live_schedule","summary":"Get all soccer matches that are currently live with teams, venue, match status and current score. Use for \"Which soccer ","description":"Get all soccer matches that are currently live with teams, venue, match status and current score. Use for \"Which soccer matches are live right now and what are the scores\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"get_live_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_leaders":{"post":{"operationId":"get_season_leaders","summary":"Get the statistical leaders of a season (for example goals, assists and cards) as lists of ranked players. Use for \"Who ","description":"Get the statistical leaders of a season (for example goals, assists and cards) as lists of ranked players. Use for \"Who are the top scorers in the Premier League this season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"season_id":{"description":"Season id as returned by list_competition_seasons, for example 'sr:season:130281'.","maxLength":60,"title":"Season Id","type":"string"}},"required":["access_level","language_code","season_id"],"title":"get_season_leadersArguments","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_competitors":{"post":{"operationId":"get_season_competitors","summary":"List the teams taking part in a season with id, name, short name and abbreviation. Use for \"Which teams play in the Prem","description":"List the teams taking part in a season with id, name, short name and abbreviation. Use for \"Which teams play in the Premier League this season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"season_id":{"description":"Season id as returned by list_competition_seasons, for example 'sr:season:130281'.","maxLength":60,"title":"Season Id","type":"string"},"start":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Number of items to skip, for paging (default 0).","title":"Start"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many teams to return (1 to 1000).","title":"Limit"}},"required":["access_level","language_code","season_id"],"title":"get_season_competitorsArguments","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_competitor_profile":{"post":{"operationId":"get_competitor_profile","summary":"Get a team profile: name, country, manager, home venue, jerseys and full player roster. Use for \"Who is in the Liverpool","description":"Get a team profile: name, country, manager, home venue, jerseys and full player roster. Use for \"Who is in the Liverpool squad and who manages them\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"competitor_id":{"description":"Team id, for example 'sr:competitor:44'.","maxLength":60,"title":"Competitor Id","type":"string"}},"required":["access_level","language_code","competitor_id"],"title":"get_competitor_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 a player profile: name, nationality, date and place of birth, height, preferred foot and current and past team roles","description":"Get a player profile: name, nationality, date and place of birth, height, preferred foot and current and past team roles. Use for \"Tell me about player sr:player:159665\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"player_id":{"description":"Player id, for example 'sr:player:159665'.","maxLength":60,"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_match_summary":{"post":{"operationId":"get_match_summary","summary":"Get the summary of one soccer match: teams, venue, status, score and match statistics. Use for \"Give me the summary and ","description":"Get the summary of one soccer match: teams, venue, status, score and match statistics. Use for \"Give me the summary and score of match sr:sport_event:61300703\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your 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":["da","de","el","en","es","fi","fr","id","it","ja","nl","pt","ru","sr","srl","th","tr","zh","zht"],"title":"Language Code","type":"string"},"sport_event_id":{"description":"Match id, for example 'sr:sport_event:61300703'.","maxLength":60,"title":"Sport Event Id","type":"string"}},"required":["access_level","language_code","sport_event_id"],"title":"get_match_summaryArguments","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}}}}