Skip to main content
Cada linha de odds é identificada por (period, market, line) e tem um line_id inteiro estável.

Tipos de mercado

Para os mercados 2-way (spread/totals), odds0 é null.

units — a unidade da linha (ténis: jogos vs sets)

Alguns desportos cotam o mesmo mercado em duas unidades diferentes. No ténis, um spread pode ser um handicap de sets (linha ±1.5) ou um handicap de jogos (linha -4.5, +5.5…), e um totals pode referir-se aos sets (2.5) ou aos jogos (21.5). O campo units elimina a ambiguidade: Os totais por jogador (home_totals / away_totals) do ténis estão sempre em jogos (units = "Games"). O campo está presente em /api/odds, /api/opening, /api/closing, /api/history e nos fluxos em tempo real.

Períodos

period = 0 = jogo completo. Os outros períodos dependem do desporto (1 = 1.ª parte / set, etc.). Obtenha o catálogo através de /api/periods.

Linhas principais vs alt-lines

Por defeito, /api/odds devolve todas as linhas (incluindo as alternativas). Adicione main_lines_only=1 para manter apenas a linha principal de cada mercado (alt_line_id nulo).

max_win

max_win = aposta máxima aceite (limite Pinnacle) na linha, indicador de liquidez.

Histórico: max_win e status são pontos da série

/api/history devolve um ponto por alteração real, nunca um valor repetido. É criado um ponto assim que um destes campos muda: Um max_win a subir enquanto a odd não mexe é um sinal de confiança da casa; um max_win que colapsa precede muitas vezes uma suspensão. A série já vem deduplicada do servidor.

Isolar uma única aposta

Sem filtro, /api/history devolve a cronologia de todas as linhas do jogo. Num jogo de basquetebol com as suas alt-lines isso ultrapassa habitualmente os 24 000 pontos repartidos por mais de 400 apostas — quando só queria uma curva. Duas formas de designar a aposta, consoante o que já tenha à mão:
Para um mercado sem linha (moneyline), passe line=null ou line=. Omitir o parâmetro significa «nenhum filtro sobre a linha» — receberia também todos os handicaps.
Os filtros valem igualmente para opening e closing: obtém a abertura e o fecho da aposta pedida, não os das outras 414. Medido num jogo real:

Os três níveis de estado

A Pinnacle publica um estado em três escalas diferentes, cada uma com o seu vocabulário. Confundi-las é o erro mais frequente: um mercado fechado não significa um jogo terminado, e uma parte liquidada não fecha as apostas no jogo inteiro.

Nível linha

O estado pertence à linha, não ao mercado. Dentro do mesmo (event_id, period, market) os degraus divergem — a Pinnacle fecha um total concreto e mantém abertos os vizinhos:
Dois campos o descrevem: status, um inteiro em paridade BIC (1 = aberto, 2 = todo o resto), e status_raw, a palavra tal como a Pinnacle a envia.
status_raw só é preenchido nas odds atuais. O histórico (/api/history, full_history=1) guarda apenas o inteiro: a palavra original não é armazenada, pelo que o campo vale null.

Nível período

/api/fixtures expõe periods, uma lista {period, status, cutoff}. É aqui que a Pinnacle declara que uma parte está fechada, independentemente das linhas e do estado do jogo:
A liquidação de um período é um evento por direito próprio no fluxo: uma parte que passa a settled desencadeia uma trama event: update, sem que qualquer odd precise de se mover.
Aqui a primeira parte está liquidada enquanto o jogo inteiro continua aberto a apostas.

Distinguir uma suspensão de um fecho definitivo

Não é um campo que o diz: é o tempo:
  • suspensão — a linha continua publicada, passa a closed, conserva a última odd conhecida (não a apagamos, tal como a interface da Pinnacle esbate o preço) e depois volta a open;
  • fecho definitivo — a linha deixa de ser republicada: o seu cutoff expira, sai de /api/odds e uma remoção é anunciada no fluxo (ver Pré-jogo e direto).
Em 327 832 estados observados continuamente no fluxo, status_raw só assume os valores "open" e "closed" — uma suspensão de ténis entre dois pontos também chega como "closed". Não conte portanto com uma palavra dedicada para distinguir os dois casos; a medição cobre uma janela de observação, não uma garantia contratual da Pinnacle.