Borgata Data API

Borgata API for Pre-Match, Live Odds & Results

Access odds from Borgata Online Sports — Atlantic City's Borgata sportsbook on the BetMGM platform, read from its New Jersey board — across 16 sports, with ~115 markets on a typical soccer match and full NFL, NBA, MLB, and NHL coverage. Normalized markets with decimal odds, paginated REST endpoints, a real-time WebSocket feed with live statistics, and a 30-day results archive. One API key for all bookmakers.

What a Borgata API Response Looks Like

GET /api/borgata/soccer/events?page=1&limit=5
{
  "total": 638,
  "page": 1,
  "limit": 5,
  "totalPages": 128,
  "hasNextPage": true,
  "events": [
    {
      "sport": "soccer",
      "league": "League One",
      "country": "England",
      "eventId": "2:7848001",
      "home": "Sheffield Wednesday",
      "away": "Bromley FC",
      "live": false,
      "startTime": "2026-08-29T14:00:00.000Z",
      "slug": "/en/sports/events/sheffield-wednesday-bromley-fc-2:7848001",
      "markets": [
        {
          "canonicalMarket": "MATCH_RESULT",
          "rawName": "Match result",
          "period": "FULL_TIME",
          "isActive": true,
          "marketId": "203095242",
          "selections": [
            {
              "canonicalOutcome": "HOME",
              "rawName": "Sheffield Wednesday",
              "odds": 1.85,
              "isActive": true,
              "selectionId": "203095242:0"
            },
            {
              "canonicalOutcome": "DRAW",
              "rawName": "Tie",
              "odds": 3.6,
              "isActive": true,
              "selectionId": "203095242:1"
            },
            {
              "canonicalOutcome": "AWAY",
              "rawName": "Bromley FC",
              "odds": 3.9,
              "isActive": true,
              "selectionId": "203095242:2"
            }
          ]
        },
        {
          "canonicalMarket": "DOUBLE_CHANCE",
          "rawName": "Double chance",
          "period": "FULL_TIME",
          "isActive": true,
          "marketId": "203095247",
          "selections": [
            {
              "canonicalOutcome": "OTHER",
              "rawName": "Sheffield Wednesday or tie",
              "odds": 1.24,
              "isActive": true,
              "selectionId": "203095247:0"
            },
            {
              "canonicalOutcome": "OTHER",
              "rawName": "Tie or Bromley FC",
              "odds": 1.9,
              "isActive": true,
              "selectionId": "203095247:1"
            },
            {
              "canonicalOutcome": "OTHER",
              "rawName": "Sheffield Wednesday or Bromley FC",
              "odds": 1.27,
              "isActive": true,
              "selectionId": "203095247:2"
            }
          ]
        },
        {
          "canonicalMarket": "OVER_UNDER",
          "rawName": "Total goals",
          "period": "FULL_TIME",
          "line": 2.5,
          "isActive": true,
          "marketId": "203473494",
          "selections": [
            {
              "canonicalOutcome": "OVER",
              "rawName": "Over 2.5",
              "odds": 1.83,
              "isActive": true,
              "selectionId": "203473494:0"
            },
            {
              "canonicalOutcome": "UNDER",
              "rawName": "Under 2.5",
              "odds": 1.85,
              "isActive": true,
              "selectionId": "203473494:1"
            }
          ]
        }
      ]
    }
  ]
}

Live Events — Score, Clock & Statistics

GET /api/borgata/live-events?sport=soccer&limit=1
{
  "total": 1,
  "page": 1,
  "limit": 1,
  "sport": "soccer",
  "events": [
    {
      "sport": "soccer",
      "league": "Israel Cup",
      "country": "Israel",
      "eventId": "2:7854944",
      "home": "Beitar Haifa Yaakov",
      "away": "Hapoel Bnei Arrara Ara",
      "startTime": "2026-08-28T08:00:00.000Z",
      "slug": "/en/sports/events/beitar-haifa-yaakov-hapoel-bnei-arrara-ara-2:7854944",
      "score": {
        "home": "0",
        "away": "1",
        "info": "1H"
      },
      "matchClock": {
        "minute": 48,
        "second": 27,
        "period": "1H",
        "periodId": "1",
        "running": true
      },
      "statistics": {
        "football": {
          "home": { "corners": 2, "yellowCards": 1, "redCards": 0 },
          "away": { "corners": 0, "yellowCards": 1, "redCards": 0 },
          "penalties": { "home": 0, "away": 0 }
        }
      },
      "markets": [
        {
          "canonicalMarket": "MATCH_RESULT",
          "rawName": "Match result",
          "period": "FULL_TIME",
          "isActive": true,
          "marketId": "203790206",
          "selections": [
            { "canonicalOutcome": "HOME", "rawName": "Beitar Haifa Yaakov", "odds": 3.1, "isActive": true, "selectionId": "203790206:0" },
            { "canonicalOutcome": "DRAW", "rawName": "Tie", "odds": 2.85, "isActive": true, "selectionId": "203790206:1" },
            { "canonicalOutcome": "AWAY", "rawName": "Hapoel Bnei Arrara Ara", "odds": 2.05, "isActive": true, "selectionId": "203790206:2" }
          ]
        }
        /* ... */
      ]
    }
  ]
}

Match Results — Final Scores for 30 Days

GET /api/borgata/results?sport=tennis&page=1&limit=5
{
  "total": 53,
  "page": 1,
  "limit": 5,
  "totalPages": 11,
  "hasNextPage": true,
  "results": [
    {
      "sport": "tennis",
      "league": "ITF Women - Hurghada (EGY) - Hard",
      "country": "World",
      "eventId": "19908353",
      "home": "Kateryna Diatlova (UKR)",
      "away": "Yasmin Ezzat (EGY)",
      "startTime": "2026-08-28T06:02:00.000Z",
      "slug": "/en/sports/events/kateryna-diatlova-ukr-yasmin-ezzat-egy-19908353",
      "score": {
        "home": "6",
        "away": "4",
        "info": "2nd Set"
      },
      "matchClock": {
        "period": "Finished",
        "periodId": "255"
      },
      "statistics": {
        "sets": {
          "home": [7, 7, 0],
          "away": [6, 6, 0],
          "homeServe": false
        }
      }
    }
  ]
}

Why Use PulseScore for Borgata Data

16 Sports With Full Market Coverage

Pre-match odds from Borgata's New Jersey sportsbook across 16 sports — Soccer, American Football, Basketball, Baseball, Tennis, Table Tennis, Ice Hockey, Handball, Rugby Union, Rugby League, Australian Rules, Lacrosse, MMA, Boxing, Snooker, and Cricket — with paginated league and event endpoints and the complete market list for every fixture.

~115 Markets on Every Soccer Match

A soccer fixture averages ~115 markets and runs past 200: totals for every period and 15-minute band, correct score, double chance, half-time/full-time, both teams to score, corners, win-to-nil, and odd/even alongside the core match result and handicap lines. MLB games average ~50 markets (600+ once player props are posted), NBA boards carry spreads and totals per quarter and half, and NFL games moneyline, spread, and totals. Odds are decimal, league names are the plain competition names, and every league, event, and result carries a country field.

Live Scores, Clock & Statistics

Live events carry the current score with the board's period label in score.info ('1H', 'Halftime', '2nd Set', 'OT'), a match clock with minute, second, and a running flag on clocked sports plus the period label and its numeric periodId (1, 2, 6 = suspended, 255 = finished), and — where the board publishes them — a statistics block: yellow and red cards, corners, and penalties for soccer, per-set scores and the current server for tennis and table tennis.

Live WebSocket Streaming

Real-time push of every in-play event for the chosen sport, broadcast roughly every second with live scores, the match clock, and statistics. All 16 sports are subscribable. PRO, MAX, and ULTRA plans only — connect once and receive each update as it happens.

30-Day Results Mirror

The results feed mirrors Borgata's in-play board: every event that goes live is stored with the last score and match clock the board published and kept for 30 days — final once matchClock.periodId reads 255 — with a statistics block on soccer, tennis, and table tennis. Filter by sport, league, or team name to settle bets, grade models, or backfill your own database.

BetMGM Platform Data, Canonical Markets

Borgata runs on the BetMGM / Entain platform, so you get the same event IDs, slugs (/en/sports/events/…), and market labels as BetMGM's own board — 'Match result', 'Total goals', 'Moneyline', 'Spread', 'Totals' — mapped onto PulseScore's canonical naming (MATCH_RESULT, OVER_UNDER, EUROPEAN_HANDICAP) with Borgata's numeric market and selection IDs. Write your integration once and reuse it across every bookmaker.

Frequently Asked Questions

What data does the Borgata API provide?

PulseScore provides pre-match odds, live in-play odds, and match results from Borgata Online Sports (borgataonline.com), the New Jersey sportsbook of Atlantic City's Borgata Hotel Casino & Spa, which runs on the BetMGM / Entain platform, across 16 sports. Each event includes normalized market data with canonical market types, selections, and decimal odds, plus the raw market and outcome names as Borgata displays them.

What sports are covered?

The 16 sports Borgata publishes pre-match markets for: Soccer, American Football, Basketball, Baseball, Tennis, Table Tennis, Ice Hockey, Handball, Rugby Union, Rugby League, Australian Rules, Lacrosse, MMA, Boxing, Snooker, and Cricket. Every sport exposes /leagues, /leagues/:league/events, /events (paginated), and /events/:eventId, and every one of them can be subscribed to over WebSocket.

How are leagues and outcomes named?

Everything is in English. League names are the plain competition names Borgata shows — 'Premier League', 'League One', 'NBA', 'NFL', 'NRL Premiership' — and leagues, events, live events, and results all carry a country field with the board's grouping: a country such as England or USA, or a catch-all such as World, Europe, or Asia. Because names are not qualified, the same league name can appear under several countries (Premier League exists for England, Wales, Hong Kong, and Malta at once), so use country to tell them apart. Market rawName values are the board's own labels such as 'Match result', 'Total goals', 'Double chance', 'Moneyline', 'Spread', and 'Totals'; outcomes are named by team or player ('Sheffield Wednesday', 'Tie') or carry the line in the name ('Over 2.5'), with the numeric line on the market. Odds are decimal, marketId is a numeric string, and selectionId is marketId:index. The canonical fields — canonicalMarket, canonicalOutcome, and period — are identical across every bookmaker on PulseScore.

Does it include match results?

Yes. /api/borgata/results mirrors Borgata's in-play board: every event that goes live is stored with the last score and match clock the board published and kept for 30 days — an entry is final once matchClock.periodId reads 255 (Finished). Filter by sport, league, or team (exact name, case-insensitive), look up a single result with /results/events/:eventId, or discover covered sports with /results/sports. Soccer, tennis, and table tennis results also carry a statistics block.

How are the markets structured?

All markets use a canonical format: each market has a type (e.g., MATCH_RESULT, OVER_UNDER, EUROPEAN_HANDICAP), period (FULL_TIME, FIRST_HALF), and selections with decimal odds and handicap lines where applicable. The same structure is shared across all sports and all bookmakers on PulseScore — write your integration once.

Is there a free tier?

Yes. The BASIC plan is free and includes 500 API requests per month. Upgrade to PRO, MAX, or ULTRA for unlimited requests.

Does the Borgata API support live in-play data?

Yes. Live in-play events are available via REST (/api/borgata/live-events, /live-events/sports, /live-events/events/:eventId) and via WebSocket at wss://api.pulsescore.net/api/borgata/ws/live. The WebSocket pushes every in-play event for the subscribed sport roughly every second, including the live score, a match clock with the board's period label ('1H', 'Halftime', '2nd Set', 'OT') and its numeric periodId, and statistics — cards, corners, and penalties for soccer, per-set scores and the current server for tennis and table tennis. PRO, MAX, and ULTRA plans only.

Start Using the Borgata API Today

Free tier available. No credit card required. Get your API key in 30 seconds.