Frame grezzi Pinnacle sul WebSocket (Pro)
Risposta: su Pro (e Enterprise), aggiungi "format":"raw" al tuo subscribe. Invece dei frame normalizzati snapshot/delta, PinnFeed invia frame raw: i record di partite e mercati di Pinnacle, così come Pinnacle li pubblica, dentro una piccola busta PinnFeed. I frame grezzi sono filtrati solo per sport: i filtri di lega, evento, mercato e main non si applicano, non c'è snapshot all'iscrizione e non vengono aggiunti fair, fairProb né margin. Su Builder la stessa richiesta restituisce un frame error con codice plan_lacks_raw.
Subscribe#
{"type":"subscribe","sports":["soccer","tennis"],"format":"raw"}
Il server risponde subscribed con "format":"raw". Continua a rispondere a {"type":"ping"} con {"type":"pong"} ogni 20 s; il timeout pong di 60 s e la chiusura 4008 slow_consumer (buffer oltre 16 MB) restano validi. Il raw di solito è più pesante del normalizzato.
Formato del frame#
{"type":"raw","seq":1842,"ts":1794217196688,"sportId":29,"sport":"soccer","channel":"live","kind":"matchup","action":"upsert","eventId":1640275337,"data":{"id":1640275337,"league":{},"participants":[],"markets":[]}}
| Campo | Significato |
|---|---|
type | Sempre raw. |
seq | Contatore crescente dei frame grezzi su questo server. |
ts | Quando PinnFeed ha inviato il frame (ms da epoch). |
sportId, sport | Id sport di Pinnacle e nome sport di PinnFeed. |
channel | live o prematch. |
kind | matchup (un evento), matchups (lista di eventi), markets (tutti i mercati di un evento) o snapshot (lista completa di eventi con mercati, al (ri)avvio del feed). |
action | upsert, remove (data è solo {"id":…}) o replace (la lista sostituisce ciò che hai per quell'evento o sport). |
eventId | L'evento a cui si riferisce il frame (matchup e markets). |
part, final | Solo per liste markets grandi inviate a parti: applica la lista quando arriva la parte con final: true. |
data | Record Pinnacle non normalizzati: quote americane, nomi dei campi di Pinnacle. |
Normalizzato o grezzo?#
| Normalizzato (tutti i piani WS) | Grezzo (Pro, Enterprise) | |
|---|---|---|
| Schema | PinnFeed v1 documentato (schema) | Busta PinnFeed + record propri di Pinnacle (campi Pinnacle) |
| Filtri | sports, leagues, events, markets, live, main, specials | solo sports |
| Snapshot in subscribe | Sì (opt-out snapshot:false) | No |
| Fair odds e margin | Inclusi | Non aggiunti |
| Uso tipico | App, bot, dashboard | Normalizzatore proprio, archivio, debug |
La maggior parte dei progetti resta sui frame normalizzati. Scegli il raw solo se vuoi costruire un tuo normalizzatore sul formato dei record di Pinnacle o archiviare i record.
Piani#
Pro costa 199 €/mese con 10 connessioni WebSocket e 30 req/s REST; Builder (99 €/mese) ha frame normalizzati con 3 connessioni. Prova di 3 giorni; carta richiesta, addebitata dopo il giorno 3 salvo disdetta. Prezzi · Docs WebSocket.
Contenuto educativo per maggiorenni (18+): non pronostici né promesse di guadagno. In Italia scommetti solo con operatori autorizzati ADM.
Vedi anche: snapshot e delta · Map snapshot/delta in Node.
Domande frequenti#
Una connessione può mescolare raw e normalizzato?#
No. Il formato è per connessione; apri una seconda connessione per l'altro formato.
Il raw è più veloce?#
Salta la normalizzazione, ma PinnFeed non pubblica una cifra di latenza per nessuno dei due formati. Misura dal tuo lato.
I frame grezzi sono documentati?#
La busta qui sopra fa parte del protocollo PinnFeed v1. I record dentro data seguono il formato proprio di Pinnacle, che PinnFeed non versiona; se ti serve uno schema stabile, usa i frame normalizzati.