Developer Guide

How to Get Pinnacle Odds via API

Pinnacle runs the sharpest lines in sports betting. Here's how to access them programmatically — with code examples and a free tier.

By theFounder·SharpAPI

You can get Pinnacle odds via API by using an odds aggregation service like SharpAPI. Sign up for a free account, generate an API key, and make a single REST call to get Pinnacle moneylines, spreads, totals, and props alongside 20+ other sportsbooks. No Pinnacle account required. Pinnacle's own API exists but requires a funded account and regional access. Most developers use third-party aggregators for easier integration and multi-book coverage.

Why Pinnacle Odds Matter

Pinnacle is the benchmark for sharp sports betting lines. Unlike DraftKings, FanDuel, or BetMGM, Pinnacle doesn't limit winning bettors. This means their lines reflect true market sentiment from the most informed players in the world.

Pinnacle's business model is fundamentally different: low margins (1-3% vig on major markets), high volume, and no bet restrictions. When you see Pinnacle's line on an NBA game, that price has been shaped by professional syndicates, algorithmic traders, and the sharpest money in sports betting.

1-3%

Vig on major markets (vs. 5-10% at recreational books)

97+

Soccer leagues covered, more than any other sportsbook

No limits

On winning bettors — lines reflect true sharp money

Your Options for Getting Pinnacle Data

MethodRequirementsDataBest For
Pinnacle Partner APIFunded Pinnacle account, regional access, affiliate/partner approvalPinnacle onlyPinnacle affiliates
SharpAPIFree sign-up, no Pinnacle account neededPinnacle + 20 other booksDevelopers building betting tools
The Odds APIFree tier (500 credits/mo)Pinnacle + 40 other booksSimple REST access, basic comparison
Web scrapingProxy infrastructure, anti-bot bypass, ongoing maintenancePinnacle only (fragile)Not recommended

Recommendation: Using an aggregation API is the fastest path. You avoid the complexity of maintaining Pinnacle scrapers, handling rate limits, and dealing with geo-restrictions — and you get multi-book data for cross-referencing.

Step-by-Step: Get Pinnacle Odds in 5 Minutes

1

Create a free SharpAPI account

Sign up at sharpapi.io — no credit card required. You get 12 requests/minute immediately, including full Pinnacle coverage.

2

Generate an API key

Go to your API Keys dashboard and create a new key. Copy it for use in the Authorization header.

3

Install the SDK (optional)

npm install @sharp-api/sdk or pip install sharpapi. Or use plain HTTP with any language.

4

Request Pinnacle odds

Pass bookmakers=pinnacle to filter for Pinnacle data specifically, or omit it to get all sportsbooks at once.

Code Examples

TypeScript (SDK)

import SharpAPI from '@sharp-api/sdk'

const client = new SharpAPI({ apiKey: process.env.SHARPAPI_KEY })

// Fetch Pinnacle odds for NBA
const odds = await client.odds.list({
  sport: 'basketball_nba',
  bookmakers: ['pinnacle'],
  markets: ['h2h', 'spreads', 'totals'],
})

for (const event of odds.data) {
  console.log(event.home_team, 'vs', event.away_team)
  for (const market of event.bookmakers[0].markets) {
    console.log(`  ${market.key}:`, market.outcomes)
  }
}

Python (SDK)

import sharpapi

client = sharpapi.Client(api_key="YOUR_API_KEY")

# Fetch Pinnacle odds for NBA
odds = client.odds.list(
    sport="basketball_nba",
    bookmakers=["pinnacle"],
    markets=["h2h", "spreads", "totals"],
)

for event in odds.data:
    print(f"{event.home_team} vs {event.away_team}")
    for market in event.bookmakers[0].markets:
        print(f"  {market.key}: {market.outcomes}")

cURL (any language)

curl -X GET "https://api.sharpapi.io/api/v1/odds?sport=basketball_nba&bookmakers=pinnacle&markets=h2h,spreads,totals" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Calculating No-Vig Fair Odds from Pinnacle

Pinnacle's low vig makes them the ideal source for computing fair odds (true probability without the sportsbook's margin). Here's the math:

Worked Example: Vig Removal

Pinnacle line:  Team A -115  |  Team B +105

Step 1: Convert to implied probability
  Team A: 115 / (115 + 100) = 53.5%
  Team B: 100 / (105 + 100) = 48.8%

Step 2: Sum implied probabilities
  Total = 53.5% + 48.8% = 102.3%  (2.3% is Pinnacle's vig)

Step 3: Divide each by total to get fair probability
  Team A fair: 53.5% / 102.3% = 52.3%
  Team B fair: 48.8% / 102.3% = 47.7%

Step 4: Convert back to American odds
  Team A fair: -109.6  (was -115)
  Team B fair: +109.6  (was +105)

SharpAPI does this automatically. Every odds response includes pre-computed no-vig fair odds derived from Pinnacle lines. No manual calculation needed.

Using Pinnacle Lines for +EV Detection

Once you have Pinnacle's fair odds, you can compare them against every other sportsbook to find positive expected value (+EV) opportunities — bets where the sportsbook is offering better odds than the true probability suggests.

+EV Calculation Example

Pinnacle fair probability for Team A: 52.3%

DraftKings offers Team A at -105 (1.952 decimal)

EV% = (fair_probability x decimal_odds - 1) x 100
EV% = (0.523 x 1.952 - 1) x 100
EV% = (1.021 - 1) x 100
EV% = +2.1%  <-- Positive EV! This is a value bet.

SharpAPI's +EV endpoint computes this across all sportsbooks in real-time. You can also stream +EV alerts via SSE.

Frequently Asked Questions

Can I get Pinnacle odds for free?+
Yes. SharpAPI's free tier includes Pinnacle odds with 12 requests/minute (17,280/day). No credit card required. You get the same Pinnacle data on the free tier as on paid plans, just with rate limits.
Does Pinnacle have its own API?+
Pinnacle has a partner API, but it requires an active funded account and is restricted to certain regions. For most developers, using an odds aggregation API like SharpAPI is easier — you get Pinnacle data alongside 20+ other sportsbooks through a single endpoint.
Why are Pinnacle odds considered the sharpest?+
Pinnacle operates a low-margin model (1-3% vig on major markets) and does not limit winning bettors. This means their lines are shaped by the sharpest money in the market. When the smart money moves, Pinnacle's lines adjust first, making them the closest approximation of true probability available.
How fast are Pinnacle odds updated?+
Through SharpAPI, Pinnacle odds update every 3-5 seconds via polling. For real-time streaming, SSE delivers Pinnacle odds changes with sub-89ms latency. The pipeline processes 121K+ game odds per cycle from Pinnacle alone.
What sports does Pinnacle cover?+
Pinnacle covers all major US sports (NFL, NBA, MLB, NHL, NCAAF, NCAAB), MMA/UFC, and 97+ soccer leagues worldwide. It is particularly strong on soccer with coverage of niche leagues that most other sportsbooks don't offer.
Can I use Pinnacle odds to calculate no-vig fair odds?+
Yes. Pinnacle's low vig makes them the ideal source for calculating fair odds. Remove the 1-3% vig mathematically and you get the closest estimate of true probability. SharpAPI does this automatically — every odds response includes no-vig fair odds computed from Pinnacle lines.
What is vig removal and how does it work with Pinnacle?+
Vig (vigorish) is the sportsbook's margin built into odds. To remove it: convert both sides to implied probabilities, sum them (which exceeds 100% by the vig amount), then divide each side by the total. Example: Pinnacle -115/+105 gives implied 53.5%/48.8% = 102.3% total. Fair probabilities: 52.3%/47.7%.
How do I compare Pinnacle odds with other sportsbooks?+
SharpAPI returns odds from all covered sportsbooks in the same response. Compare Pinnacle's line against DraftKings, FanDuel, BetMGM, etc. in a single API call. The +EV endpoint does this automatically, flagging any sportsbook offering better odds than Pinnacle's fair line.

Related Resources

Ready to Build?
Start free. Scale when you're ready. No credit card required.

No credit card required