Sportsbook

Circa Odds API

Pull Circa Sports prices through the SportsGameOdds API, normalised into the same structure as 85+ other books. Comparing a sharp line against the retail market is one request.

Circa Sports is a Las Vegas book that takes large bets and does not close accounts for winning too often. That business model changes what its price means. A book that limits its sharpest customers can leave a stale number up for a while and nothing forces it to move. A book that accepts the action has to move, which makes its line a running record of where serious money is going.

That is the case for reading Circa alongside the retail books rather than instead of them.

Why Circa's number is worth reading separately

Most prices in an odds feed agree most of the time, because most books watch the same few originators and follow. Circa is one of the places a market moves from rather than toward.

For a pricing model this matters in a specific way. If your consensus is built from thirty books that all copy the same source, you have one opinion counted thirty times. Adding Circa gives you a second opinion formed under different incentives, and the gap between the two is usually the part worth looking at.

What Circa coverage looks like

Circa prices arrive like any other book, keyed by circa inside byBookmaker on each odd. Coverage is deepest on the markets it is known for: sides, totals and moneylines across the major US leagues. It also turns up on team and game markets that most books skip, including NFL team touchdown totals and team field goals.

Coverage moves, so read it rather than assume it. Every odd lists the books currently pricing it under byBookmaker, and the /markets endpoint returns the supported set by league and bookmaker.

Circa is included on the Pro plan and above. The free Amateur tier and the Rookie plan carry a smaller book list that does not include it, so a request filtered to circa on those plans comes back empty rather than erroring. Pricing has the book list for each tier.

Requesting Circa prices

Pass bookmakerID=circa and the response carries only Circa's numbers:

curl "https://api.sportsgameodds.com/v2/events?leagueID=NFL&bookmakerID=circa&oddsAvailable=true" \
  -H "x-api-key: YOUR_API_KEY"

More often you want Circa next to something to measure it against. Ask for several books in one request:

curl "https://api.sportsgameodds.com/v2/events?leagueID=NFL&bookmakerID=circa,pinnacle,draftkings,fanduel&oddsAvailable=true" \
  -H "x-api-key: YOUR_API_KEY"

Add includeOpenCloseOdds=true and each book returns its own openOdds and closeOdds, so you can see where Circa opened a market and where it finished rather than only where it sits now.

What a Circa price looks like

Every event returns an odds object keyed by oddID. Here is a trimmed NFL spread with the bookmaker list cut to two books:

{
  "eventID": "...",
  "leagueID": "NFL",
  "odds": {
    "points-home-game-sp-home": {
      "oddID": "points-home-game-sp-home",
      "marketName": "Spread",
      "statID": "points",
      "statEntityID": "home",
      "periodID": "game",
      "betTypeID": "sp",
      "sideID": "home",
      "fairOdds": "-104",
      "fairSpread": "-3.5",
      "bookOdds": "-108",
      "byBookmaker": {
        "circa": { "odds": "-105", "spread": "-3.5", "available": true },
        "draftkings": { "odds": "-115", "spread": "-3.5", "available": true }
      }
    }
  }
}

Two things are worth knowing. Odds values are strings, so -105 arrives as "-105" and the plus sign survives on an underdog price. And fairOdds is the vig-free consensus across every book pricing that market, while bookOdds keeps the margin in, which hands you a benchmark without having to compute one.

In the example above Circa is ten cents better than DraftKings on the same number. That difference is the entire product for a line shopping tool.

Circa and Pinnacle

These are the two sharp books in the feed and they are not interchangeable. Pinnacle is the low-margin global operator most modelling work benchmarks against, and it is the usual reference for closing line value. Circa is a US book with high limits whose early numbers on American football carry more weight than most.

Reading both is more useful than picking one. Where two independent sharp opinions agree, the number is probably right. Where they split, something is going on. The Pinnacle Odds API page covers what that feed returns.

Use cases for Circa data

Line shopping is the obvious one. A sharp price sitting next to the retail market is what tells a user whether the number in front of them is good, and Circa is often the side of that comparison that moves first. See the odds comparison API.

For positive EV work, Circa functions as a sanity check on your own fair price. If your model and the de-vigged consensus both say one thing and Circa says another, that is worth investigating before you act on it.

Closing line value tracking uses the same mechanic in reverse. With includeOpenCloseOdds=true you get Circa's open and close per market, which lets you measure a bet against where a sharp book finished rather than where the field finished.

Arbitrage tools tend to find Circa on one leg more often than its size would suggest, because it prices independently rather than following.

Circa API technical specifications

Circa data comes through the same REST endpoints as every other book. One /v2/events call returns the event, its markets, and each book's price under byBookmaker, so there is no separate request or separate schema for sharp books.

Billing is per event object rather than per market or per book. Ten NFL games is ten objects whether you pull Circa alone or Circa alongside eighty others, which means adding books to a request costs response size and nothing else.

Odds refresh sub-minute on Pro. Live scores update in real time on every plan. The API documentation covers authentication, pagination and the full parameter list.

Frequently asked questions

What is the bookmakerID for Circa?
circa, in lowercase. Pass bookmakerID=circa to /v2/events, and read Circa's price from byBookmaker.circa on each odd. The display name and the ID are not always the same across books, so build against the ID.
Which plans include Circa?
Pro and above. Circa sits in the same group as Pinnacle, Bet365, PrizePicks and Fanatics, none of which are in the free Amateur tier or the Rookie book list. A request filtered to bookmakerID=circa on a plan that does not carry it returns an empty result rather than an error.
Which markets does Circa price?
Coverage is deepest on sides, totals and moneylines across the major US leagues, and it also appears on team and game markets many books skip, such as NFL team touchdown totals and team field goals. Availability changes, so read byBookmaker on each odd or query the /markets endpoint rather than hardcoding an assumption.
Can I get Circa's opening line as well as the current one?
Yes. Add includeOpenCloseOdds=true to your /events request and each book returns its own openOdds and closeOdds, plus openSpread, closeSpread, openOverUnder and closeOverUnder where they apply. That gives you Circa's open and close rather than only its current number.
How do I compare Circa against the rest of the market?
Every odd carries fairOdds, the vig-free consensus across all books pricing that market, alongside each individual book under byBookmaker. Comparing byBookmaker.circa to fairOdds on the same oddID gives you the gap between one sharp opinion and the market as a whole, in one response.
Is Circa the same as Pinnacle for modelling purposes?
No, and carrying both is more useful than choosing. Pinnacle is the low-margin global book most closing line value work benchmarks against. Circa is a US operator with high limits whose early American football numbers tend to lead the market. They are two independent opinions, and where they disagree is usually the interesting case.

Put a sharp line next to the retail market

Circa, Pinnacle and every other book we carry in one request. Start free and upgrade when you need the sharp book list.

1xBet
Sportsbook
888 Sport
Sportsbook
Bally Bet
Sportsbook
Barstool
Sportsbook
Bet365
Sportsbook
BetAnySports
Sportsbook
BetClic
Sportsbook
Betfair Sportsbook
Sportsbook
BetMGM
Sportsbook
BetOnline
Sportsbook
BetPARX
Sportsbook
BetRivers
Sportsbook
Betr Sportsbook
Sportsbook
Betsson
Sportsbook
BetUS
Sportsbook
Bet Victor
Sportsbook
Betway
Sportsbook
BlueBet
Sportsbook
Bookmaker.eu
Sportsbook
Bovada
Sportsbook
BoyleSports
Sportsbook
Caesars
Sportsbook
Casumo
Sportsbook
Coolbet
Sportsbook
Coral
Sportsbook
DraftKings
Sportsbook
ESPN BET
Sportsbook
Everygame
Sportsbook
Fanatics
Sportsbook
FanDuel
Sportsbook
Fliff
Sportsbook
FOX Bet
Sportsbook
FourWinds
Sportsbook
Grosvenor
Sportsbook
GTbets
Sportsbook
Ladbrokes
Sportsbook
LeoVegas
Sportsbook
LiveScore Bet
Sportsbook
LowVig
Sportsbook
Marathon Bet
Sportsbook
Mr Green
Sportsbook
MyBookie
Sportsbook
Neds
Sportsbook
NordicBet
Sportsbook
Paddy Power
Sportsbook
Pinnacle
Sportsbook
PlayUp
Sportsbook
PointsBet
Sportsbook
Prophet Exchange
Sportsbook
SI Sportsbook
Sportsbook
Sky Bet
Sportsbook
SportsBet
Sportsbook
SugarHouse
Sportsbook
SportsBetting.ag
Sportsbook
Superbook
Sportsbook
Suprabets
Sportsbook
TAB
Sportsbook
TABtouch
Sportsbook
Tipico
Sportsbook
TopSport
Sportsbook
Unibet
Sportsbook
Virgin Bet
Sportsbook
William Hill
Sportsbook
Wind Creek (Betfred PA)
Sportsbook
WynnBet
Sportsbook
Betfred
Sportsbook
Betsafe
Sportsbook
BoomBet
Sportsbook
NorthStar Bets
Sportsbook
Stake
Sportsbook
theScore Bet
Sportsbook
Bodog
Sportsbook
Prime Sports
Sportsbook