naftiko: 1.0.0-alpha2 info: label: SOCCER API — Soccer v4 Odds description: 'SOCCER API — Soccer v4 Odds. 28 operations. Lead operation: Sportsbooks - by Active. Self-contained Naftiko capability covering one Sportsdataio business surface.' tags: - Sportsdataio - Soccer v4 Odds created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SPORTSDATAIO_API_KEY: SPORTSDATAIO_API_KEY capability: consumes: - type: http namespace: soccer-soccer-v4-odds baseUri: https://api.sportsdata.io description: SOCCER API — Soccer v4 Odds business capability. Self-contained, no shared references. resources: - name: v4-soccer-odds-format-ActiveSportsbooks path: /v4/soccer/odds/{format}/ActiveSportsbooks operations: - name: soccerv4oddssportsbooksbyactive method: GET description: Sportsbooks - by Active outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: v4-soccer-odds-format-AlternateMarketGameOddsByDate-competition-date path: /v4/soccer/odds/{format}/AlternateMarketGameOddsByDate/{competition}/{date} operations: - name: soccerv4oddsperiodgameoddsbydate method: GET description: Period Game Odds - by Date outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 141323 required: true - name: v4-soccer-odds-format-BettingEventsByDate-competition-date path: /v4/soccer/odds/{format}/BettingEventsByDate/{competition}/{date} operations: - name: soccerv4oddsbettingeventsbydate method: GET description: Betting Events - by Date outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1Examples: 2018-11-20, 2018-11-23.' required: true - name: v4-soccer-odds-format-BettingEventsBySeason-competition-season path: /v4/soccer/odds/{format}/BettingEventsBySeason/{competition}/{season} operations: - name: soccerv4oddsbettingeventsbyseason method: GET description: Betting Events - by Season outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1Examples: 2020, 2021, etc.' required: true - name: v4-soccer-odds-format-BettingFuturesBySeason-competition-season path: /v4/soccer/odds/{format}/BettingFuturesBySeason/{competition}/{season} operations: - name: soccerv4oddsbettingfuturesbyseason method: GET description: Betting Futures - by Season outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1Examples: 2020, 2021, etc.' required: true - name: v4-soccer-odds-format-BettingFuturesBySeason-competition-season-sportsbookgroup path: /v4/soccer/odds/{format}/BettingFuturesBySeason/{competition}/{season}/{sportsbookgroup} operations: - name: soccerv4oddsbettingfuturesbyseasonsportsbookgroup method: GET description: Betting Futures - by Season [Sportsbook Group] outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1Examples: 2020, 2021, etc.' required: true - name: sportsbookgroup in: path type: string description: The name of the Sportsbook grouping. required: true - name: v4-soccer-odds-format-BettingMarket-competition-marketId path: /v4/soccer/odds/{format}/BettingMarket/{competition}/{marketId} operations: - name: soccerv4oddsbettingmarket method: GET description: Betting Market outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 11 for Game Lines, 2 for Player Props, 3' required: true - name: v4-soccer-odds-format-BettingMarketsByMarketType-competition-eventId-marketTypeI path: /v4/soccer/odds/{format}/BettingMarketsByMarketType/{competition}/{eventId}/{marketTypeID}/{sportsbookgroup} operations: - name: soccerv4oddsbettingmarketsbymarkettypesportsbookgroup method: GET description: Betting Markets - by Market Type [Sportsbook Group] outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 11 for Game Lines, 2 for Player Props, 3' required: true - name: sportsbookgroup in: path type: string description: The name of the Sportsbook grouping. required: true - name: v4-soccer-odds-format-BettingMetadata path: /v4/soccer/odds/{format}/BettingMetadata operations: - name: soccerv4oddsbettingmetadata method: GET description: Betting Metadata outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: v4-soccer-odds-format-BettingPlayerPropsByGameID-competition-gameId path: /v4/soccer/odds/{format}/BettingPlayerPropsByGameID/{competition}/{gameId} operations: - name: soccerv4oddsbettingplayerpropsbygame method: GET description: Betting Player Props - by Game outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 114060, 14061, etc. required: true - name: v4-soccer-odds-format-InGameOddsByDate-competition-date-sportsbookgroup path: /v4/soccer/odds/{format}/InGameOddsByDate/{competition}/{date}/{sportsbookgroup} operations: - name: soccerv4oddsingameoddsbydatesportsbookgroup method: GET description: In-Game Odds - by Date [Sportsbook Group] outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1Examples: 2018-06-20, 2018-06-23.' required: true - name: sportsbookgroup in: path type: string description: The name of the Sportsbook grouping. required: true - name: v4-soccer-odds-format-InGameOddsLineMovement-competition-gameid-sportsbookgroup path: /v4/soccer/odds/{format}/InGameOddsLineMovement/{competition}/{gameid}/{sportsbookgroup} operations: - name: soccerv4oddsingameoddslinemovementsportsbookgroup method: GET description: In-Game Odds Line Movement [Sportsbook Group] outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 114060, 14061, etc. required: true - name: sportsbookgroup in: path type: string description: The name of the Sportsbook grouping. required: true - name: v4-soccer-odds-format-InGameOddsLineMovementWithResulting-competition-gameid-spo path: /v4/soccer/odds/{format}/InGameOddsLineMovementWithResulting/{competition}/{gameid}/{sportsbookgroup} operations: - name: soccerv4oddsingameoddslinemovementwithresultingsportsbookgroup method: GET description: In-Game Odds Line Movement with Resulting [Sportsbook Group] outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 114060, 14061, etc. required: true - name: sportsbookgroup in: path type: string description: The name of the Sportsbook grouping. required: true - name: v4-soccer-odds-format-LiveGameOddsByDate-competition-date path: /v4/soccer/odds/{format}/LiveGameOddsByDate/{competition}/{date} operations: - name: soccerv4oddsingameoddsbydate method: GET description: In-Game Odds - by Date outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1Examples: 2018-06-20, 2018-06-23.' required: true - name: v4-soccer-odds-format-LiveGameOddsLineMovement-competition-gameid path: /v4/soccer/odds/{format}/LiveGameOddsLineMovement/{competition}/{gameid} operations: - name: soccerv4oddsingameoddslinemovement method: GET description: In-Game Odds Line Movement outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 114060, 14061, etc. required: true - name: v4-soccer-odds-format-PreGameOddsByDate-competition-date-sportsbookgroup path: /v4/soccer/odds/{format}/PreGameOddsByDate/{competition}/{date}/{sportsbookgroup} operations: - name: soccerv4oddspregameandperiodgameoddsbydatesportsbookgroup method: GET description: Pre-Game and Period Game Odds - by Date [Sportsbook Group] outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 1JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 114060, 14061, etc. required: true - name: sportsbookgroup in: path type: string description: The name of the Sportsbook grouping. required: true - name: v4-soccer-odds-format-PreGameOddsLineMovementWithResulting-competition-gameid-sp path: /v4/soccer/odds/{format}/PreGameOddsLineMovementWithResulting/{competition}/{gameid}/{sportsbookgroup} operations: - name: soccerv4oddspregameandperiodgameoddslinemovementwithresultingsportsbookgroup method: GET description: Pre-Game and Period Game Odds Line Movement with Resulting [Sportsbook Group] outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: path type: string description: Desired response format. Valid entries are JSON or XML. required: true - name: competition in: path type: string description: 'An indication of a soccer competition/league. This value can be the CompetitionId or the Competition Key. Possible values include: EPL, 114060, 14061, etc. required: true - name: sportsbookgroup in: path type: string description: The name of the Sportsbook grouping. required: true authentication: type: apikey key: Ocp-Apim-Subscription-Key value: '{{env.SPORTSDATAIO_API_KEY}}' placement: header exposes: - type: rest namespace: soccer-soccer-v4-odds-rest port: 8080 description: REST adapter for SOCCER API — Soccer v4 Odds. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v4/soccer/odds/{format}/activesportsbooks name: v4-soccer-odds-format-activesportsbooks description: REST surface for v4-soccer-odds-format-ActiveSportsbooks. operations: - method: GET name: soccerv4oddssportsbooksbyactive description: Sportsbooks - by Active call: soccer-soccer-v4-odds.soccerv4oddssportsbooksbyactive with: format: rest.format outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/alternatemarketgameoddsbydate/{competition}/{date} name: v4-soccer-odds-format-alternatemarketgameoddsbydate-competition-date description: REST surface for v4-soccer-odds-format-AlternateMarketGameOddsByDate-competition-date. operations: - method: GET name: soccerv4oddsperiodgameoddsbydate description: Period Game Odds - by Date call: soccer-soccer-v4-odds.soccerv4oddsperiodgameoddsbydate with: format: rest.format competition: rest.competition date: rest.date outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/alternatemarketgameoddslinemovement/{competition}/{gameid} name: v4-soccer-odds-format-alternatemarketgameoddslinemovement-competition-gameid description: REST surface for v4-soccer-odds-format-AlternateMarketGameOddsLineMovement-competition-gameid. operations: - method: GET name: soccerv4oddsperiodgameoddslinemovement description: Period Game Odds Line Movement call: soccer-soccer-v4-odds.soccerv4oddsperiodgameoddslinemovement with: format: rest.format competition: rest.competition gameid: rest.gameid outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingeventsbydate/{competition}/{date} name: v4-soccer-odds-format-bettingeventsbydate-competition-date description: REST surface for v4-soccer-odds-format-BettingEventsByDate-competition-date. operations: - method: GET name: soccerv4oddsbettingeventsbydate description: Betting Events - by Date call: soccer-soccer-v4-odds.soccerv4oddsbettingeventsbydate with: format: rest.format competition: rest.competition date: rest.date outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingeventsbyseason/{competition}/{season} name: v4-soccer-odds-format-bettingeventsbyseason-competition-season description: REST surface for v4-soccer-odds-format-BettingEventsBySeason-competition-season. operations: - method: GET name: soccerv4oddsbettingeventsbyseason description: Betting Events - by Season call: soccer-soccer-v4-odds.soccerv4oddsbettingeventsbyseason with: format: rest.format competition: rest.competition season: rest.season outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingfuturesbyseason/{competition}/{season} name: v4-soccer-odds-format-bettingfuturesbyseason-competition-season description: REST surface for v4-soccer-odds-format-BettingFuturesBySeason-competition-season. operations: - method: GET name: soccerv4oddsbettingfuturesbyseason description: Betting Futures - by Season call: soccer-soccer-v4-odds.soccerv4oddsbettingfuturesbyseason with: format: rest.format competition: rest.competition season: rest.season outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingfuturesbyseason/{competition}/{season}/{sportsbookgroup} name: v4-soccer-odds-format-bettingfuturesbyseason-competition-season-sportsbookgroup description: REST surface for v4-soccer-odds-format-BettingFuturesBySeason-competition-season-sportsbookgroup. operations: - method: GET name: soccerv4oddsbettingfuturesbyseasonsportsbookgroup description: Betting Futures - by Season [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsbettingfuturesbyseasonsportsbookgroup with: format: rest.format competition: rest.competition season: rest.season sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarket/{competition}/{marketid} name: v4-soccer-odds-format-bettingmarket-competition-marketid description: REST surface for v4-soccer-odds-format-BettingMarket-competition-marketId. operations: - method: GET name: soccerv4oddsbettingmarket description: Betting Market call: soccer-soccer-v4-odds.soccerv4oddsbettingmarket with: format: rest.format competition: rest.competition marketId: rest.marketId outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarket/{competition}/{marketid}/{sportsbookgroup} name: v4-soccer-odds-format-bettingmarket-competition-marketid-sportsbookgroup description: REST surface for v4-soccer-odds-format-BettingMarket-competition-marketId-sportsbookgroup. operations: - method: GET name: soccerv4oddsbettingmarketsportsbookgroup description: Betting Market [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsportsbookgroup with: format: rest.format competition: rest.competition marketId: rest.marketId sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarkets/{competition}/{eventid} name: v4-soccer-odds-format-bettingmarkets-competition-eventid description: REST surface for v4-soccer-odds-format-BettingMarkets-competition-eventId. operations: - method: GET name: soccerv4oddsbettingmarketsbyevent description: Betting Markets - by Event call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbyevent with: format: rest.format competition: rest.competition eventId: rest.eventId outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarketsbyevent/{competition}/{eventid}/{sportsbookgroup} name: v4-soccer-odds-format-bettingmarketsbyevent-competition-eventid-sportsbookgroup description: REST surface for v4-soccer-odds-format-BettingMarketsByEvent-competition-eventId-sportsbookgroup. operations: - method: GET name: soccerv4oddsbettingmarketsbyeventsportsbookgroup description: Betting Markets - by Event [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbyeventsportsbookgroup with: format: rest.format competition: rest.competition eventId: rest.eventId sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarketsbygameid/{competition}/{gameid} name: v4-soccer-odds-format-bettingmarketsbygameid-competition-gameid description: REST surface for v4-soccer-odds-format-BettingMarketsByGameID-competition-gameid. operations: - method: GET name: soccerv4oddsbettingmarketsbygame description: Betting Markets - by Game call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbygame with: format: rest.format competition: rest.competition gameid: rest.gameid outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarketsbygameid/{competition}/{gameid}/{sportsbookgroup} name: v4-soccer-odds-format-bettingmarketsbygameid-competition-gameid-sportsbookgroup description: REST surface for v4-soccer-odds-format-BettingMarketsByGameID-competition-gameid-sportsbookgroup. operations: - method: GET name: soccerv4oddsbettingmarketsbygamesportsbookgroup description: Betting Markets - by Game [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbygamesportsbookgroup with: format: rest.format competition: rest.competition gameid: rest.gameid sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarketsbymarkettype/{competition}/{eventid}/{markettypeid} name: v4-soccer-odds-format-bettingmarketsbymarkettype-competition-eventid-markettypei description: REST surface for v4-soccer-odds-format-BettingMarketsByMarketType-competition-eventId-marketTypeI. operations: - method: GET name: soccerv4oddsbettingmarketsbymarkettype description: Betting Markets - by Market Type call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbymarkettype with: format: rest.format competition: rest.competition eventId: rest.eventId marketTypeID: rest.marketTypeID outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmarketsbymarkettype/{competition}/{eventid}/{markettypeid}/{sportsbookgroup} name: v4-soccer-odds-format-bettingmarketsbymarkettype-competition-eventid-markettypei description: REST surface for v4-soccer-odds-format-BettingMarketsByMarketType-competition-eventId-marketTypeI. operations: - method: GET name: soccerv4oddsbettingmarketsbymarkettypesportsbookgroup description: Betting Markets - by Market Type [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbymarkettypesportsbookgroup with: format: rest.format competition: rest.competition eventId: rest.eventId marketTypeID: rest.marketTypeID sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingmetadata name: v4-soccer-odds-format-bettingmetadata description: REST surface for v4-soccer-odds-format-BettingMetadata. operations: - method: GET name: soccerv4oddsbettingmetadata description: Betting Metadata call: soccer-soccer-v4-odds.soccerv4oddsbettingmetadata with: format: rest.format outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingplayerpropsbygameid/{competition}/{gameid} name: v4-soccer-odds-format-bettingplayerpropsbygameid-competition-gameid description: REST surface for v4-soccer-odds-format-BettingPlayerPropsByGameID-competition-gameId. operations: - method: GET name: soccerv4oddsbettingplayerpropsbygame description: Betting Player Props - by Game call: soccer-soccer-v4-odds.soccerv4oddsbettingplayerpropsbygame with: format: rest.format competition: rest.competition gameId: rest.gameId outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/bettingplayerpropsbygameid/{competition}/{gameid}/{sportsbookgroup} name: v4-soccer-odds-format-bettingplayerpropsbygameid-competition-gameid-sportsbookgr description: REST surface for v4-soccer-odds-format-BettingPlayerPropsByGameID-competition-gameId-sportsbookgr. operations: - method: GET name: soccerv4oddsbettingplayerpropsbygamesportsbookgroup description: Betting Player Props - by Game [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsbettingplayerpropsbygamesportsbookgroup with: format: rest.format competition: rest.competition gameId: rest.gameId sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/gameoddsbydate/{competition}/{date} name: v4-soccer-odds-format-gameoddsbydate-competition-date description: REST surface for v4-soccer-odds-format-GameOddsByDate-competition-date. operations: - method: GET name: soccerv4oddspregameoddsbydate description: Pre-Game Odds - by Date call: soccer-soccer-v4-odds.soccerv4oddspregameoddsbydate with: format: rest.format competition: rest.competition date: rest.date outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/gameoddslinemovement/{competition}/{gameid} name: v4-soccer-odds-format-gameoddslinemovement-competition-gameid description: REST surface for v4-soccer-odds-format-GameOddsLineMovement-competition-gameid. operations: - method: GET name: soccerv4oddspregameoddslinemovement description: Pre-Game Odds Line Movement call: soccer-soccer-v4-odds.soccerv4oddspregameoddslinemovement with: format: rest.format competition: rest.competition gameid: rest.gameid outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/ingameoddsbydate/{competition}/{date}/{sportsbookgroup} name: v4-soccer-odds-format-ingameoddsbydate-competition-date-sportsbookgroup description: REST surface for v4-soccer-odds-format-InGameOddsByDate-competition-date-sportsbookgroup. operations: - method: GET name: soccerv4oddsingameoddsbydatesportsbookgroup description: In-Game Odds - by Date [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsingameoddsbydatesportsbookgroup with: format: rest.format competition: rest.competition date: rest.date sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/ingameoddslinemovement/{competition}/{gameid}/{sportsbookgroup} name: v4-soccer-odds-format-ingameoddslinemovement-competition-gameid-sportsbookgroup description: REST surface for v4-soccer-odds-format-InGameOddsLineMovement-competition-gameid-sportsbookgroup. operations: - method: GET name: soccerv4oddsingameoddslinemovementsportsbookgroup description: In-Game Odds Line Movement [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsingameoddslinemovementsportsbookgroup with: format: rest.format competition: rest.competition gameid: rest.gameid sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/ingameoddslinemovementwithresulting/{competition}/{gameid}/{sportsbookgroup} name: v4-soccer-odds-format-ingameoddslinemovementwithresulting-competition-gameid-spo description: REST surface for v4-soccer-odds-format-InGameOddsLineMovementWithResulting-competition-gameid-spo. operations: - method: GET name: soccerv4oddsingameoddslinemovementwithresultingsportsbookgroup description: In-Game Odds Line Movement with Resulting [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddsingameoddslinemovementwithresultingsportsbookgroup with: format: rest.format competition: rest.competition gameid: rest.gameid sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/livegameoddsbydate/{competition}/{date} name: v4-soccer-odds-format-livegameoddsbydate-competition-date description: REST surface for v4-soccer-odds-format-LiveGameOddsByDate-competition-date. operations: - method: GET name: soccerv4oddsingameoddsbydate description: In-Game Odds - by Date call: soccer-soccer-v4-odds.soccerv4oddsingameoddsbydate with: format: rest.format competition: rest.competition date: rest.date outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/livegameoddslinemovement/{competition}/{gameid} name: v4-soccer-odds-format-livegameoddslinemovement-competition-gameid description: REST surface for v4-soccer-odds-format-LiveGameOddsLineMovement-competition-gameid. operations: - method: GET name: soccerv4oddsingameoddslinemovement description: In-Game Odds Line Movement call: soccer-soccer-v4-odds.soccerv4oddsingameoddslinemovement with: format: rest.format competition: rest.competition gameid: rest.gameid outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/pregameoddsbydate/{competition}/{date}/{sportsbookgroup} name: v4-soccer-odds-format-pregameoddsbydate-competition-date-sportsbookgroup description: REST surface for v4-soccer-odds-format-PreGameOddsByDate-competition-date-sportsbookgroup. operations: - method: GET name: soccerv4oddspregameandperiodgameoddsbydatesportsbookgroup description: Pre-Game and Period Game Odds - by Date [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddspregameandperiodgameoddsbydatesportsbookgroup with: format: rest.format competition: rest.competition date: rest.date sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/pregameoddslinemovement/{competition}/{gameid}/{sportsbookgroup} name: v4-soccer-odds-format-pregameoddslinemovement-competition-gameid-sportsbookgroup description: REST surface for v4-soccer-odds-format-PreGameOddsLineMovement-competition-gameid-sportsbookgroup. operations: - method: GET name: soccerv4oddspregameandperiodgameoddslinemovementsportsbookgroup description: Pre-Game and Period Game Odds Line Movement [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddspregameandperiodgameoddslinemovementsportsbookgroup with: format: rest.format competition: rest.competition gameid: rest.gameid sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - path: /v1/v4/soccer/odds/{format}/pregameoddslinemovementwithresulting/{competition}/{gameid}/{sportsbookgroup} name: v4-soccer-odds-format-pregameoddslinemovementwithresulting-competition-gameid-sp description: REST surface for v4-soccer-odds-format-PreGameOddsLineMovementWithResulting-competition-gameid-sp. operations: - method: GET name: soccerv4oddspregameandperiodgameoddslinemovementwithresultingsportsbookgroup description: Pre-Game and Period Game Odds Line Movement with Resulting [Sportsbook Group] call: soccer-soccer-v4-odds.soccerv4oddspregameandperiodgameoddslinemovementwithresultingsportsbookgroup with: format: rest.format competition: rest.competition gameid: rest.gameid sportsbookgroup: rest.sportsbookgroup outputParameters: - type: object mapping: $. - type: mcp namespace: soccer-soccer-v4-odds-mcp port: 9090 transport: http description: MCP adapter for SOCCER API — Soccer v4 Odds. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: sportsbooks-active description: Sportsbooks - by Active hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddssportsbooksbyactive with: format: tools.format outputParameters: - type: object mapping: $. - name: period-game-odds-date description: Period Game Odds - by Date hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsperiodgameoddsbydate with: format: tools.format competition: tools.competition date: tools.date outputParameters: - type: object mapping: $. - name: period-game-odds-line-movement description: Period Game Odds Line Movement hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsperiodgameoddslinemovement with: format: tools.format competition: tools.competition gameid: tools.gameid outputParameters: - type: object mapping: $. - name: betting-events-date description: Betting Events - by Date hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingeventsbydate with: format: tools.format competition: tools.competition date: tools.date outputParameters: - type: object mapping: $. - name: betting-events-season description: Betting Events - by Season hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingeventsbyseason with: format: tools.format competition: tools.competition season: tools.season outputParameters: - type: object mapping: $. - name: betting-futures-season description: Betting Futures - by Season hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingfuturesbyseason with: format: tools.format competition: tools.competition season: tools.season outputParameters: - type: object mapping: $. - name: betting-futures-season-sportsbook-group description: Betting Futures - by Season [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingfuturesbyseasonsportsbookgroup with: format: tools.format competition: tools.competition season: tools.season sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: betting-market description: Betting Market hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarket with: format: tools.format competition: tools.competition marketId: tools.marketId outputParameters: - type: object mapping: $. - name: betting-market-sportsbook-group description: Betting Market [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsportsbookgroup with: format: tools.format competition: tools.competition marketId: tools.marketId sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: betting-markets-event description: Betting Markets - by Event hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbyevent with: format: tools.format competition: tools.competition eventId: tools.eventId outputParameters: - type: object mapping: $. - name: betting-markets-event-sportsbook-group description: Betting Markets - by Event [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbyeventsportsbookgroup with: format: tools.format competition: tools.competition eventId: tools.eventId sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: betting-markets-game description: Betting Markets - by Game hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbygame with: format: tools.format competition: tools.competition gameid: tools.gameid outputParameters: - type: object mapping: $. - name: betting-markets-game-sportsbook-group description: Betting Markets - by Game [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbygamesportsbookgroup with: format: tools.format competition: tools.competition gameid: tools.gameid sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: betting-markets-market-type description: Betting Markets - by Market Type hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbymarkettype with: format: tools.format competition: tools.competition eventId: tools.eventId marketTypeID: tools.marketTypeID outputParameters: - type: object mapping: $. - name: betting-markets-market-type-sportsbook description: Betting Markets - by Market Type [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmarketsbymarkettypesportsbookgroup with: format: tools.format competition: tools.competition eventId: tools.eventId marketTypeID: tools.marketTypeID sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: betting-metadata description: Betting Metadata hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingmetadata with: format: tools.format outputParameters: - type: object mapping: $. - name: betting-player-props-game description: Betting Player Props - by Game hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingplayerpropsbygame with: format: tools.format competition: tools.competition gameId: tools.gameId outputParameters: - type: object mapping: $. - name: betting-player-props-game-sportsbook description: Betting Player Props - by Game [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsbettingplayerpropsbygamesportsbookgroup with: format: tools.format competition: tools.competition gameId: tools.gameId sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: pre-game-odds-date description: Pre-Game Odds - by Date hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddspregameoddsbydate with: format: tools.format competition: tools.competition date: tools.date outputParameters: - type: object mapping: $. - name: pre-game-odds-line-movement description: Pre-Game Odds Line Movement hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddspregameoddslinemovement with: format: tools.format competition: tools.competition gameid: tools.gameid outputParameters: - type: object mapping: $. - name: game-odds-date-sportsbook-group description: In-Game Odds - by Date [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsingameoddsbydatesportsbookgroup with: format: tools.format competition: tools.competition date: tools.date sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: game-odds-line-movement-sportsbook description: In-Game Odds Line Movement [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsingameoddslinemovementsportsbookgroup with: format: tools.format competition: tools.competition gameid: tools.gameid sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: game-odds-line-movement-resulting description: In-Game Odds Line Movement with Resulting [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsingameoddslinemovementwithresultingsportsbookgroup with: format: tools.format competition: tools.competition gameid: tools.gameid sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: game-odds-date description: In-Game Odds - by Date hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsingameoddsbydate with: format: tools.format competition: tools.competition date: tools.date outputParameters: - type: object mapping: $. - name: game-odds-line-movement description: In-Game Odds Line Movement hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddsingameoddslinemovement with: format: tools.format competition: tools.competition gameid: tools.gameid outputParameters: - type: object mapping: $. - name: pre-game-and-period-game description: Pre-Game and Period Game Odds - by Date [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddspregameandperiodgameoddsbydatesportsbookgroup with: format: tools.format competition: tools.competition date: tools.date sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: pre-game-and-period-game-2 description: Pre-Game and Period Game Odds Line Movement [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddspregameandperiodgameoddslinemovementsportsbookgroup with: format: tools.format competition: tools.competition gameid: tools.gameid sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $. - name: pre-game-and-period-game-3 description: Pre-Game and Period Game Odds Line Movement with Resulting [Sportsbook Group] hints: readOnly: true destructive: false idempotent: true call: soccer-soccer-v4-odds.soccerv4oddspregameandperiodgameoddslinemovementwithresultingsportsbookgroup with: format: tools.format competition: tools.competition gameid: tools.gameid sportsbookgroup: tools.sportsbookgroup outputParameters: - type: object mapping: $.