api de odds da pinnacle / rest / sse / websocket
API de odds da Pinnacle: odds ao vivo e pré-jogo em JSON
GET/kit/v1/markets?sport_id=2
header x-portal-apikey: <your key>
application/json200 OK
Odds ao vivo e pré-jogo da Pinnacle, a casa que os apostadores sharp tratam como linha de referência, servidas em JSON pela API de odds da Pinnacle. Consulte um snapshot, receba as quedas enviadas a você ou pegue cada frame bruto.
Criar uma chave gratuitaUS$ 0 · 100 requisições por dia · 20 por minuto · sem cartão
Os planos pagos começam em US$ 99 por mês. Compare os planos
{
"sport_name": "Tennis",
"last": 141,
"events": [{
"event_id": 1628594960,
"league_name": "ATP Tour",
"home": "Novak Djokovic",
"away": "Carlos Alcaraz",
"starts": "2026-04-17T12:00:00Z",
"periods": { "num_0": {
"money_line": {
"home": 1.95,
"away": 1.90 },
"spreads": { "-0.5": {
"hdp": -0.5, "home": 2.06,
"away": 1.82, "max": 500 } }
} }
}]
}
loop[3 s na chave gratuita, 0,1 s no poll]
GET/kit/v1/markets?sport_id=2&since=141
só o que mudou200 OK
Devolva last como since e só os movimentos voltam
Toda resposta traz um cursor last. Passe-o como since na próxima chamada e o feed responde apenas com os eventos que mudaram depois dele. Um mercado parado retorna uma carga curta; um mercado agitado retorna exatamente os preços que se moveram.
A chave gratuita permite 20 chamadas por minuto e 100 por dia. poll permite 10 por segundo sem limite diário, e bulk 30.
{
"sport_name": "Tennis",
"last": 157,
"events": [{
"event_id": 1628594960,
"periods": { "num_0": {
"money_line": {
"home": 1.87,
"away": 1.99 }
} }
}]
}
Quedas recentes de tênis pré-jogo como o endpoint REST de quedas as descreve, das mais novas para as mais antigas, em cache no host deste site. O stream de quedas abaixo envia movimentos como estes conforme acontecem, com seus próprios nomes de campo.
O stream enviado vem com push, poll + push e bulk.
Obtenha uma chave e leia as quedasRetry-After: 41429 rate_limited
Acima do limite o feed responde 429 com um header Retry-After em segundos. Espere esse tempo e repita a chamada com o mesmo since. O cursor não avançou, então nenhuma mudança é pulada.
{
"error": "rate_limited",
"window": "minute",
"limit": 20,
"retry_after_ms": 41052
}
GET/odds-drop?min_drop=5
header Accept: text/event-stream, chave como ?key= ou header
stream abertodata: {"type": "connected"}
um preço caiu 5,59%data: [ alert ]
Ou mantenha uma conexão aberta e deixe as quedas chegarem até você
O stream de quedas envia as quedas de preço da Pinnacle conforme são detectadas: /odds-drop para mercados ao vivo, /odds-drop-prematch antes do início. min_drop define a menor queda que merece um alerta: passe-o explicitamente, a partir de 1%. O exemplo documentado usa 5.
Cada alerta traz o preço antes e depois da queda e nvp, o preço sem margem: a linha da Pinnacle com sua margem removida. Compare o número de uma casa soft com ele sem fazer outra requisição.
Incluído em push, poll + push e bulk.
data: [{
"id": 1629729400,
"sport": "Basketball",
"league": "Australia - NBL1 Women",
"home": "Sunshine Coast Phoenix",
"away": "Cairns Dolphins",
"sect": "Moneyline",
"outcome": "Home",
"period": 4,
"from_price": 2.86,
"to_price": 2.7,
"nvp": 3.04,
"alerted": 1777625196,
...
}]
WSS/ws/feed?key=<your key>
{"type": "subscribe", ...}em até 5 s
baseline primeirosnapshot
depois cada atualizaçãoao vivo
{"type": "ping", "ts": 1779200030000}
{"type": "pong"}
Ou pegue cada frame
O stream WebSocket bruto envia um snapshot de cada stream em que você se inscreve, depois cada atualização seguinte. Inscreva-se em até cinco segundos após conectar, filtre por esporte ou por até 200 IDs de evento por stream e responda a cada ping com um pong.
Se o socket cair, reconecte, inscreva-se de novo e reconstrua a partir do novo snapshot. Frames perdidos não são reenviados.
Complemento para poll, poll + push e bulk: US$ 99 por mês.
{
"type": "subscribe",
"streams": ["live", "prematch"],
"sport_ids": [1, 2]
}
o que vem pelo fio
Treze IDs de esporte, todas as linhas que a Pinnacle precifica neles
Cada evento chega com seus períodos, e cada período com a money line, os spreads e totais em cada handicap que a Pinnacle oferece, totais por equipe e a aposta máxima em cada linha. Especiais como props de jogadores vêm junto quando você adiciona include_specials=1. Ao vivo e pré-jogo são chamadas separadas com o mesmo formato.
- 1Futebolpinnacle 29
- 2Tênispinnacle 33
- 3Basquetepinnacle 4
- 4Hóqueipinnacle 19
- 5Futebol americanopinnacle 15
- 6Beisebolpinnacle 3
- 7Rugbypinnacle 27, 26
- 8MMApinnacle 22
- 9Boxepinnacle 6
- 10Vôlei, handebolpinnacle 34, 18
- 11Esportspinnacle 12
- 12Golfepinnacle 17
- 13Críquetepinnacle 8
- sem arquivo históricoNão há armazenamento de odds históricas. Guarde o que você precisa: um loop com
sincegravando na sua própria tabela é o histórico. - somente leituraÉ um feed de dados. As apostas são feitas na sua casa de apostas, não por ele.
- uma casaApenas os preços da Pinnacle. Compare-os com outras casas no seu próprio código.
limites de taxa, desenhados
Preços da API de odds da Pinnacle: você paga pela frequência com que pode perguntar
Cada faixa são dez segundos de requisições no limite do plano. Com 20 por minuto dá para contar os traços. A 10 por segundo eles se fecham em uma hachura, a 30 por segundo quase em uma barra sólida. As quedas chegam em sua própria linha, sempre que a Pinnacle se move.
-
trialREST, ao vivo e pré-jogo
US$ 0100 por dia
-
pushquedas, polling leve
US$ 99por mês
-
pollREST em velocidade
US$ 99por mês
-
poll + pushvelocidade e quedas
US$ 149por mês
-
bulk30 por segundo
US$ 229por mês
Complemento WebSocket: +US$ 99 por mês em poll, poll + push e bulkTermos de 3 e 6 meses custam menos: preços completos
PRÓXIMOsua primeira requisição
Comece com a chave gratuita e faça upgrade quando o loop crescer além dela
A chave é emitida no cadastro e nunca expira: sem cartão, e a chave é o seu login. Ela funciona em todos os endpoints acima, exceto nos streams; para esses, peça a demonstração completa de três dias (SSE + WebSocket bruto + 10 por segundo). A documentação lista a URL base e todos os parâmetros.