# RapidAPI · sportsbook-api2 (Sportsbook API)

Gateway provider `rapidapi-sportsbook-api2` · call `https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/<path>` with header `x-api-key` (get a key at https://fetchapi.co/keys) · MCP: tools `search_endpoints`, `get_endpoint`, `call_endpoint` at https://fetchapi.co/api/mcp · listing: https://rapidapi.com/sportsbook-api-sportsbook-api-default/api/sportsbook-api2/pricing

Upstream plan: Pro: $10/month for 30,000 requests; free tier: Basic: 150 requests/day, hard limit, 1,000 requests/hour (https://rapidapi.com/sportsbook-api-sportsbook-api-default/api/sportsbook-api2/pricing).

16 working endpoints, each tested live through this gateway. Endpoints that returned no data in our latest test, write actions and endpoints that need the end user's own login are not listed.

## `rapidapi-sportsbook-api2.v0_advantages` — /v0/advantages/

`GET /v0/advantages` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 330 ms

Edges of one type across every game: ARBITRAGE (and _LIVE), MIDDLE (and _LIVE), PLUS_EV_AVERAGE or BYB_V1, each with its market, game and the legs (book, odds, line); +EV items carry the market's fair implied probability. No value field: compute it from the legs. 1 request (666 +EV edges, 1 MB, 2026-10-22).

| param | required | example / default |
|---|---|---|
| `type` | yes | ARBITRAGE |

Fields: `advantages[].outcomes[]` the legs: source (book), payout (decimal), modifier (line); `advantages[].marketStatistics[]` fair implied probability (+EV)

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/advantages?type=ARBITRAGE" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "advantages": [
  {
   "key": "advg-xxxx-0000",
   "type": "ARBITRAGE",
   "market": {
    "key": "11ss-Akuk-PEyW",
    "type": "MONEYLINE",
    "event": {
     "key": "vNRt-AkFe-pZR6",
     "name": "Wisconsin @ Iowa",
     "startTime": "2026-10-31T16:00:00.000Z",
     "participants": [
      {
       "key": "jeLU-xitw-KFu7",
       "name": "Iowa",
       "slug": "iowa",
       "sport": "AMERICAN_FOOTBALL",
       "shortName": "IOWA"
      },
      {
       "key": "80Wm-xitw-M0fh",
       "name": "Wisconsin",
       "slug": "wisconsin",
       "sport": "AMERICAN_FOOTBALL",
       "shortName": "UW"
      }
     ],
     "homeParticipantKey": "jeLU-xitw-KFu7",
     "competitionInstance": {
      "key": "D0bX-Aigp-3Yov",
      "name": "2026 NCAA Division I Football",
      "endAt": "2026-10-22T20:00:08.936Z",
      "startAt": "2026-10-22T20:00:08.936Z",
      "competition": {
       "key": "ei8e-xitw-a3B6",
       "name": "NCAA Football",
       "sport": "AMERICAN_FOOTBALL",
       "shortName": "NCAAF"
      },
      "competitionKey": "ei8e-xitw-a3B6"
     }
    },
    "segment": "FULL_MATCH",
    "lastFoundAt": "2026-10-22T20:00:08.936Z"
   },
   "outcomes": [
    {
     "key": "outc-x000-0000",
     "live": false,
     "type": "WIN",
     "payout": 1.540541,
     "readAt": "2026-10-22T19:58:00.185Z",
     "source": "DRAFT_KINGS",
     "modifier": 0,
     "marketKey": "11ss-Akuk-PEyW",
     "lastFoundAt": "2026-10-22T19:58:00.185Z",
     "participant": {
      "key": "jeLU-xi
…
```

## `rapidapi-sportsbook-api2.v0_competitions` — /v0/competitions/

`GET /v0/competitions` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 179 ms

The 38 competitions Sportsbook API prices (NFL, NCAAF, NBA, NCAAB, NHL, MLB, EPL, La Liga, Serie A, Bundesliga, MLS, AFL, CFL, KBO...) with key, slug, short name and sport. 1 request.

| param | required | example / default |
|---|---|---|
| `includeInstances` | no | false |

Fields: `competitions[].shortName` the {competition} for /v1/competitions/{competition}/events (NBA, EPL); `competitions[].key` competitionKey for the v0 calls

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/competitions?includeInstances=false" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "competitions": [
  {
   "key": "jcKL-xbdu-POdB",
   "name": "Australian Football League",
   "slug": "australian-football-league",
   "sport": "AUSTRALIAN_RULES_FOOTBALL",
   "category": "MENS_PROFESSIONAL",
   "shortName": "AFL"
  },
  {
   "key": "aaGL-Akpo-bCnU",
   "name": "Australian NBL",
   "slug": "australian-nbl",
   "sport": "BASKETBALL",
   "category": "MENS_PROFESSIONAL",
   "shortName": "NBL_AU"
  },
  {
   "key": "3zEK-whgw-GuHv",
   "name": "Canadian Football League",
   "slug": "canadian-football-league",
   "sport": "AMERICAN_FOOTBALL",
   "category": "MENS_PROFESSIONAL",
   "shortName": "CFL"
  },
  "… 35 more"
 ]
}
```

## `rapidapi-sportsbook-api2.v0_competitions_competitionkey_events` — /v0/competitions/{competitionKey}/events

`GET /v0/competitions/{competitionKey}/events` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 345 ms

Games (or futures) of one competition in a time window, without odds. 1 request.

| param | required | example / default |
|---|---|---|
| `eventType` | no | MATCH |
| `startTimeFrom` | no | 2026-10-22T14:00:09Z |
| `startTimeTo` | no | 2026-10-25T20:00:09Z |
| `competitionKey` | yes | d791-wddv-30fU |

Fields: `events[].key` eventKey

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/competitions/d791-wddv-30fU/events?eventType=MATCH&startTimeTo=2026-10-25T20:00:09Z&startTimeFrom=2026-10-22T14:00:09Z" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "events": [
  {
   "key": "telK-Akyt-J2Cr",
   "name": "Golden State Warriors @ Phoenix Suns",
   "type": "MATCH",
   "markets": [
    {
     "key": "RcMJ-Aknx-QDKF",
     "type": "MONEYLINE",
     "segment": "FULL_MATCH",
     "lastFoundAt": "2026-10-22T20:00:00.215Z",
     "participant": null,
     "participantKey": null
    }
   ],
   "startTime": "2026-10-25T02:00:00.000Z",
   "participants": [
    {
     "key": "qToe-wddv-22ib",
     "name": "Golden State Warriors",
     "slug": "golden-state-warriors",
     "sport": "BASKETBALL",
     "shortName": "GSW"
    },
    {
     "key": "0JEz-wddv-Yn4A",
     "name": "Phoenix Suns",
     "slug": "phoenix-suns",
     "sport": "BASKETBALL",
     "shortName": "PHX"
    }
   ],
   "homeParticipantKey": "0JEz-wddv-Yn4A",
   "competitionInstance": {
    "key": "adgI-Ajko-wkHV",
    "name": "2026-27 National Basketball Association",
    "endAt": "2027-07-01T00:00:00.000Z",
    "startAt": "2026-09-23T00:00:00.000Z",
    "competitionKey": "d791-wddv-30fU"
   },
   "competitionInstanceKey": "adgI-Ajko-wkHV"
  },
  {
   "key": "1RNe-Akys-xUuN",
   "name": "New Orleans Pelicans @ Denver Nuggets",
   "type": "MATCH",
   "markets": [
    {
     "key": "WCFK-Aknt-CBi7",
     "type": "MONEYLINE",
     "segment": "FULL_MATCH",
     "lastFoundAt": "2026-10-22T20:00:00.215Z",
     "participant": null,
     "participantKey": null
    }
   ],
   "startTime": "2026-10-25T01:00:00.000Z",
   "participants": [
    {
     "key": "eI2D-wddv-4NJj",
    
…
```

## `rapidapi-sportsbook-api2.v0_competitions_competitionkey_instances` — /v0/competitions/{competitionKey}/instances

`GET /v0/competitions/{competitionKey}/instances` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 188 ms

The seasons of one competition with start and end dates. 1 request.

| param | required | example / default |
|---|---|---|
| `competitionKey` | yes | d791-wddv-30fU |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/competitions/d791-wddv-30fU/instances" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "instances": [
  {
   "key": "AXqs-wddv-cTPl",
   "name": "2021-22 National Hockey League",
   "endAt": "2022-06-30T00:00:00.000Z",
   "startAt": "2021-10-11T00:00:00.000Z",
   "competitionKey": "384d-wddv-w6oc"
  },
  {
   "key": "5wNw-wddv-vw4y",
   "name": "2021-22 National Football League",
   "endAt": "2022-02-14T00:00:00.000Z",
   "startAt": "2021-09-08T00:00:00.000Z",
   "competitionKey": "Q63E-wddv-ddp4"
  },
  {
   "key": "58Vt-wddv-Oc3Q",
   "name": "2021-22 National Basketball Association",
   "endAt": "2022-06-20T00:00:00.000Z",
   "startAt": "2021-10-18T00:00:00.000Z",
   "competitionKey": "d791-wddv-30fU"
  },
  "… 130 more"
 ]
}
```

## `rapidapi-sportsbook-api2.v0_events` — /v0/events/

`GET /v0/events` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 286 ms

Up to 100 games by event key, as a list or a map. 1 request.

| param | required | example / default |
|---|---|---|
| `eventKeys` | no | telK-Akyt-J2Cr |
| `returnType` | no | array |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/events?eventKeys=telK-Akyt-J2Cr&returnType=array" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "events": [
  [
   {
    "key": "telK-Akyt-J2Cr",
    "name": "Golden State Warriors @ Phoenix Suns",
    "markets": [
     {
      "key": "RcMJ-Aknx-QDKF",
      "type": "MONEYLINE",
      "segment": "FULL_MATCH",
      "outcomes": {
       "KALSHI": [
        {
         "live": false,
         "type": "WIN",
         "payout": 1.6129032258064517,
         "source": "KALSHI",
         "modifier": 0,
         "marketKey": "RcMJ-Aknx-QDKF",
         "participant": {
          "key": "0JEz-wddv-Yn4A",
          "name": "Phoenix Suns",
          "slug": "phoenix-suns",
          "sport": "BASKETBALL",
          "shortName": "PHX"
         },
         "participantKey": "0JEz-wddv-Yn4A"
        },
        {
         "live": false,
         "type": "WIN",
         "payout": 2.564102564102564,
         "source": "KALSHI",
         "modifier": 0,
         "marketKey": "RcMJ-Aknx-QDKF",
         "participant": {
          "key": "qToe-wddv-22ib",
          "name": "Golden State Warriors",
          "slug": "golden-state-warriors",
          "sport": "BASKETBALL",
          "shortName": "GSW"
         },
         "participantKey": "qToe-wddv-22ib"
        },
        {
         "live": false,
         "type": "WIN_NO",
         "payout": 2.380952380952381,
         "source": "KALSHI",
         "modifier": 0,
         "marketKey": "RcMJ-Aknx-QDKF",
         "participant": {
          "key": "0JEz-wddv-Yn4A",
          "name": "Phoenix Suns",
          "slug": "phoenix-suns",
         
…
```

## `rapidapi-sportsbook-api2.v0_events_eventkey` — /v0/events/{eventKey}

`GET /v0/events/{eventKey}` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 341 ms

One game: teams, start time, season and competition. 1 request.

| param | required | example / default |
|---|---|---|
| `oddsType` | no | latest |
| `eventKey` | yes | telK-Akyt-J2Cr |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/events/telK-Akyt-J2Cr?oddsType=latest" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "events": [
  {
   "key": "telK-Akyt-J2Cr",
   "name": "Golden State Warriors @ Phoenix Suns",
   "markets": [
    {
     "key": "RcMJ-Aknx-QDKF",
     "type": "MONEYLINE",
     "segment": "FULL_MATCH",
     "lastFoundAt": "2026-10-22T20:00:00.215Z",
     "participant": null,
     "participantKey": null
    }
   ],
   "startTime": "2026-10-25T02:00:00.000Z",
   "participants": [
    {
     "key": "qToe-wddv-22ib",
     "name": "Golden State Warriors",
     "slug": "golden-state-warriors",
     "sport": "BASKETBALL",
     "shortName": "GSW"
    },
    {
     "key": "0JEz-wddv-Yn4A",
     "name": "Phoenix Suns",
     "slug": "phoenix-suns",
     "sport": "BASKETBALL",
     "shortName": "PHX"
    }
   ],
   "homeParticipantKey": "0JEz-wddv-Yn4A"
  }
 ]
}
```

## `rapidapi-sportsbook-api2.v0_events_eventkey_markets` — /v0/events/{eventKey}/markets

`GET /v0/events/{eventKey}/markets` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 228 ms

Every betting market of one game (type, segment, team), without odds: the marketKeys for the outcomes calls. 1 request.

| param | required | example / default |
|---|---|---|
| `eventKey` | yes | telK-Akyt-J2Cr |

Fields: `markets[].key` marketKey

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/events/telK-Akyt-J2Cr/markets" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "events": [
  {
   "key": "telK-Akyt-J2Cr",
   "name": "Golden State Warriors @ Phoenix Suns",
   "markets": [
    {
     "key": "RcMJ-Aknx-QDKF",
     "type": "MONEYLINE",
     "segment": "FULL_MATCH",
     "lastFoundAt": "2026-10-22T20:00:00.215Z",
     "participant": null,
     "participantKey": null
    }
   ],
   "startTime": "2026-10-25T02:00:00.000Z",
   "participants": [
    {
     "key": "qToe-wddv-22ib",
     "name": "Golden State Warriors",
     "slug": "golden-state-warriors",
     "sport": "BASKETBALL",
     "shortName": "GSW"
    },
    {
     "key": "0JEz-wddv-Yn4A",
     "name": "Phoenix Suns",
     "slug": "phoenix-suns",
     "sport": "BASKETBALL",
     "shortName": "PHX"
    }
   ],
   "homeParticipantKey": "0JEz-wddv-Yn4A"
  }
 ]
}
```

## `rapidapi-sportsbook-api2.v0_markets_marketkey` — /v0/markets/{marketKey}

`GET /v0/markets/{marketKey}` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 292 ms

One market's type, segment and game, without odds. 1 request.

| param | required | example / default |
|---|---|---|
| `marketKey` | yes | RcMJ-Aknx-QDKF |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/markets/RcMJ-Aknx-QDKF" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "market": {
  "key": "RcMJ-Aknx-QDKF",
  "type": "MONEYLINE",
  "segment": "FULL_MATCH",
  "lastFoundAt": "2026-10-22T20:00:00.215Z",
  "participant": null,
  "participantKey": null
 }
}
```

## `rapidapi-sportsbook-api2.v0_markets_marketkey_outcomes_closing` — /v0/markets/{marketKey}/outcomes/closing

`GET /v0/markets/{marketKey}/outcomes/closing` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 382 ms

Each book's closing odds for one market (once the game has started). 1 request.

| param | required | example / default |
|---|---|---|
| `marketKey` | yes | RcMJ-Aknx-QDKF |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/markets/RcMJ-Aknx-QDKF/outcomes/closing" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "market": {
  "key": "RcMJ-Aknx-QDKF",
  "type": "MONEYLINE",
  "segment": "FULL_MATCH",
  "lastFoundAt": "2026-10-22T20:00:00.215Z",
  "participant": null,
  "participantKey": null
 },
 "outcomes": []
}
```

## `rapidapi-sportsbook-api2.v0_markets_marketkey_outcomes_last` — /v0/markets/{marketKey}/outcomes/last

`GET /v0/markets/{marketKey}/outcomes/last` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 660 ms

Each book's last odds for one market, which may no longer be on offer. 1 request.

| param | required | example / default |
|---|---|---|
| `marketKey` | yes | RcMJ-Aknx-QDKF |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/markets/RcMJ-Aknx-QDKF/outcomes/last" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "market": {
  "key": "RcMJ-Aknx-QDKF",
  "type": "MONEYLINE",
  "segment": "FULL_MATCH",
  "lastFoundAt": "2026-10-22T20:00:00.215Z",
  "participant": null,
  "participantKey": null
 },
 "outcomes": []
}
```

## `rapidapi-sportsbook-api2.v0_markets_marketkey_outcomes_opening` — /v0/markets/{marketKey}/outcomes/opening

`GET /v0/markets/{marketKey}/outcomes/opening` · ✓ working (tested 2026-11-02) · sampled 2026-10-22, 233 ms

Each book's opening odds for one market. 1 request.

| param | required | example / default |
|---|---|---|
| `marketKey` | yes | RcMJ-Aknx-QDKF |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/markets/RcMJ-Aknx-QDKF/outcomes/opening" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "market": {
  "key": "RcMJ-Aknx-QDKF",
  "type": "MONEYLINE",
  "segment": "FULL_MATCH",
  "lastFoundAt": "2026-10-22T20:00:00.215Z",
  "participant": null,
  "participantKey": null
 },
 "outcomes": []
}
```

## `rapidapi-sportsbook-api2.v0_participants_participantkey` — /v0/participants/{participantKey}

`GET /v0/participants/{participantKey}` · ✓ working (tested 2026-10-22) · sampled 2026-10-22, 472 ms

One team or player: name, short name, sport. 1 request.

| param | required | example / default |
|---|---|---|
| `participantKey` | yes | lQdq-wddv-aEKd |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/participants/lQdq-wddv-aEKd" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "participant": {
  "key": "lQdq-wddv-aEKd",
  "name": "Chicago Bulls",
  "slug": "chicago-bulls",
  "sport": "BASKETBALL",
  "shortName": "CHI"
 }
}
```

## `rapidapi-sportsbook-api2.v0_participants_participantkey_events` — /v0/participants/{participantKey}/events

`GET /v0/participants/{participantKey}/events` · ✓ working (tested 2026-10-22) · sampled 2026-10-22, 600 ms

Games of one team in a time window. 1 request.

| param | required | example / default |
|---|---|---|
| `eventType` | no | MATCH |
| `startTimeTo` | no | 2026-10-25T20:00:09Z |
| `startTimeFrom` | no | 2026-10-22T14:00:09Z |
| `participantKey` | yes | lQdq-wddv-aEKd |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v0/participants/lQdq-wddv-aEKd/events?eventType=MATCH&startTimeTo=2026-10-25T20:00:09Z&startTimeFrom=2026-10-22T14:00:09Z" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "events": [
  {
   "key": "0Z6Z-Akxr-KgDE",
   "name": "Chicago Bulls @ Milwaukee Bucks",
   "type": "MATCH",
   "startTime": "2026-10-23T20:00:00.000Z",
   "participants": [
    {
     "key": "lQdq-wddv-aEKd",
     "name": "Chicago Bulls",
     "slug": "chicago-bulls",
     "sport": "BASKETBALL",
     "shortName": "CHI"
    },
    {
     "key": "Uu03-wddv-tYAB",
     "name": "Milwaukee Bucks",
     "slug": "milwaukee-bucks",
     "sport": "BASKETBALL",
     "shortName": "MIL"
    }
   ],
   "homeParticipantKey": "Uu03-wddv-tYAB"
  },
  {
   "key": "FRoG-Akyr-xJrB",
   "name": "Washington Wizards @ Chicago Bulls",
   "type": "MATCH",
   "startTime": "2026-10-25T00:00:00.000Z",
   "participants": [
    {
     "key": "lQdq-wddv-aEKd",
     "name": "Chicago Bulls",
     "slug": "chicago-bulls",
     "sport": "BASKETBALL",
     "shortName": "CHI"
    },
    {
     "key": "uhVW-wddv-rRhP",
     "name": "Washington Wizards",
     "slug": "washington-wizards",
     "sport": "BASKETBALL",
     "shortName": "WAS"
    }
   ],
   "homeParticipantKey": "lQdq-wddv-aEKd"
  }
 ]
}
```

## `rapidapi-sportsbook-api2.v1_advantages` — /v1/advantages/

`GET /v1/advantages` · ✓ working (tested 2026-10-22) · sampled 2026-10-22, 983 ms

Every edge the API computes, grouped by type: arbitrage, low hold, middles, +EV vs the average and vs Pinnacle, line and payout moves, each with value (a fraction for arbitrage / EV / hold, percent for payout moves, points for middles), the legs and the game. 1 request, but ~5,500 edges in 6.8 MB.

Fields: `advantages.ARBITRAGE[].value` guaranteed return as a fraction (0.016 = 1.6%); `advantages.PLUS_EV_PINNACLE[].context.impliedProbability` Pinnacle's no-vig probability

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v1/advantages" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "advantages": {
  "MIDDLE": [
   {
    "type": "MIDDLE",
    "value": 1,
    "context": {
     "eventKey": "bUSi-Akuh-VraB",
     "eventName": "Chambery Savoie Mont Blanc Handball @ HBC Nantes",
     "marketKey": "0ErU-Akvr-1BUY",
     "eventSport": "HANDBALL",
     "marketType": "POINT_SPREAD",
     "eventCategory": "MENS_PROFESSIONAL",
     "marketSegment": "REGULATION_TIME",
     "competitionKey": "W4Mq-wljx-ykcq",
     "eventStartTime": "2026-10-24T17:00:00.000Z",
     "competitionName": "LNH Division 1",
     "eventParticipants": [
      {
       "key": "ahgn-wljx-0emg",
       "name": "HBC Nantes",
       "slug": "hbc-nantes",
       "type": "TEAM",
       "sport": "HANDBALL",
       "category": "MENS_PROFESSIONAL",
       "shortName": "NTS"
      },
      {
       "key": "COcR-wljx-Sm8h",
       "name": "Chambery Savoie Mont Blanc Handball",
       "slug": "chambery-savoie-mont-blanc-handball",
       "type": "TEAM",
       "sport": "HANDBALL",
       "category": "MENS_PROFESSIONAL",
       "shortName": "CMB"
      }
     ],
     "competitionShortName": "LNH_D1",
     "competitionInstanceKey": "HlsW-Ajko-L70a",
     "competitionInstanceName": "2026-27 LNH Division 1",
     "eventHomeParticipantKey": "ahgn-wljx-0emg"
    },
    "outcomes": [
     {
      "live": false,
      "time": "2026-10-22T19:58:00.183Z",
      "type": "WIN",
      "payout": 1.769231,
      "source": "DRAFT_KINGS",
      "modifier": 6.5,
      "marketKey": "0ErU-Akvr-1BUY",
      "participantKey
…
```

## `rapidapi-sportsbook-api2.v1_competitions_competition_events` — /v1/competitions/{competition}/events

`GET /v1/competitions/{competition}/events` · ✓ working (tested 2026-10-22) · sampled 2026-10-22, 1638 ms

Every game of one league in a window (startTimeFrom and startTimeTo both required) with its main markets and each book's latest odds: moneyline, spread, total, team totals, halves and quarters, from DraftKings, FanDuel, BetMGM, BetRivers, Fanatics, theScore, betPARX, Kalshi, Polymarket, ProphetX, Underdog and OG. Odds are decimal payouts with modifier = the line. 1 request (25 NBA games, 330 KB).

| param | required | example / default |
|---|---|---|
| `startTimeFrom` | no | 2026-10-22T14:00:09Z |
| `startTimeTo` | no | 2026-10-25T20:00:09Z |
| `competition` | yes | NBA |

Fields: `events[].markets[].outcomes` odds keyed by book (DRAFT_KINGS, FAN_DUEL...); `events[].markets[].outcomes.*[].payout` decimal odds; `events[].markets[].outcomes.*[].modifier` spread or total line

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v1/competitions/NBA/events?startTimeTo=2026-10-25T20:00:09Z&startTimeFrom=2026-10-22T14:00:09Z" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "events": [
  {
   "key": "telK-Akyt-J2Cr",
   "name": "Golden State Warriors @ Phoenix Suns",
   "type": "MATCH",
   "markets": [
    {
     "key": "RcMJ-Aknx-QDKF",
     "type": "MONEYLINE",
     "segment": "FULL_MATCH",
     "outcomes": {
      "KALSHI": [
       {
        "live": false,
        "type": "WIN",
        "payout": 1.6129032258064517,
        "source": "KALSHI",
        "modifier": 0,
        "marketKey": "RcMJ-Aknx-QDKF",
        "participant": {
         "key": "0JEz-wddv-Yn4A",
         "name": "Phoenix Suns",
         "slug": "phoenix-suns",
         "sport": "BASKETBALL",
         "shortName": "PHX"
        },
        "participantKey": "0JEz-wddv-Yn4A"
       },
       {
        "live": false,
        "type": "WIN",
        "payout": 2.564102564102564,
        "source": "KALSHI",
        "modifier": 0,
        "marketKey": "RcMJ-Aknx-QDKF",
        "participant": {
         "key": "qToe-wddv-22ib",
         "name": "Golden State Warriors",
         "slug": "golden-state-warriors",
         "sport": "BASKETBALL",
         "shortName": "GSW"
        },
        "participantKey": "qToe-wddv-22ib"
       },
       {
        "live": false,
        "type": "WIN_NO",
        "payout": 2.380952380952381,
        "source": "KALSHI",
        "modifier": 0,
        "marketKey": "RcMJ-Aknx-QDKF",
        "participant": {
         "key": "0JEz-wddv-Yn4A",
         "name": "Phoenix Suns",
         "slug": "phoenix-suns",
         "sport": "BASKETBALL",
         "shor
…
```

## `rapidapi-sportsbook-api2.v1_markets_marketkey_outcomes_latest` — /v1/markets/{marketKey}/outcomes/latest

`GET /v1/markets/{marketKey}/outcomes/latest` · ✓ working (tested 2026-10-22) · sampled 2026-10-22, 191 ms

The latest odds of every book for one market, keyed by book. 1 request.

| param | required | example / default |
|---|---|---|
| `marketKey` | yes | RcMJ-Aknx-QDKF |

```bash
curl "https://fetchapi.co/api/gw/rapidapi-sportsbook-api2/v1/markets/RcMJ-Aknx-QDKF/outcomes/latest" \
  -H "x-api-key: $FETCHAPI_KEY"
```

Real answer (trimmed):

```json
{
 "market": {
  "key": "RcMJ-Aknx-QDKF",
  "type": "MONEYLINE",
  "segment": "FULL_MATCH",
  "outcomes": {
   "KALSHI": [
    {
     "live": false,
     "time": "2026-10-22T20:00:00.215Z",
     "type": "WIN",
     "payout": 1.6129032258064517,
     "source": "KALSHI",
     "modifier": 0,
     "marketKey": "RcMJ-Aknx-QDKF",
     "participant": {
      "key": "0JEz-wddv-Yn4A",
      "name": "Phoenix Suns",
      "slug": "phoenix-suns",
      "sport": "BASKETBALL",
      "shortName": "PHX"
     },
     "participantKey": "0JEz-wddv-Yn4A"
    },
    {
     "live": false,
     "time": "2026-10-22T20:00:00.215Z",
     "type": "WIN",
     "payout": 2.564102564102564,
     "source": "KALSHI",
     "modifier": 0,
     "marketKey": "RcMJ-Aknx-QDKF",
     "participant": {
      "key": "qToe-wddv-22ib",
      "name": "Golden State Warriors",
      "slug": "golden-state-warriors",
      "sport": "BASKETBALL",
      "shortName": "GSW"
     },
     "participantKey": "qToe-wddv-22ib"
    },
    {
     "live": false,
     "time": "2026-10-22T20:00:00.215Z",
     "type": "WIN_NO",
     "payout": 2.380952380952381,
     "source": "KALSHI",
     "modifier": 0,
     "marketKey": "RcMJ-Aknx-QDKF",
     "participant": {
      "key": "0JEz-wddv-Yn4A",
      "name": "Phoenix Suns",
      "slug": "phoenix-suns",
      "sport": "BASKETBALL",
      "shortName": "PHX"
     },
     "participantKey": "0JEz-wddv-Yn4A"
    },
    "… 1 more"
   ],
   "OG_COM": [
    {
     "live": false,
     "time": "2026-10
…
```
