On the wire · 04:54:45 UTC Live 549 · Prematch 14,380 · Markets 56,929 Vol. I · No. 5 · Friday 13 November 2026 wss://pinnfeed.io/v1/stream
PinnFeed
Respuesta · Movimiento de línea · Chart

API de movimiento de línea Pinnacle

Actualizado el · PinnFeed · 1 min de lectura

Respuesta: PinnFeed da tres piezas: el stream live (delta en el WebSocket Builder), caídas recientes (GET /v1/drops) y el precio de cierre (GET /v1/closing, Builder). No hay endpoint de historial tick-a-tick: para un gráfico completo registra los deltas desde la suscripción.

Record deltas (Python, Builder)#

# pip install websockets
import asyncio, json, os, sqlite3, time, websockets

db = sqlite3.connect("moves.db")
db.execute("create table if not exists moves(ts real, market_id text, event_id int, type text, line real, outcome text, decimal real)")

async def main():
    url = "wss://pinnfeed.io/v1/stream"
    async with websockets.connect(url, additional_headers={"x-api-key": os.environ["PINNFEED_KEY"]}, max_size=None) as ws:
        await ws.send(json.dumps({"type": "subscribe", "sports": ["soccer"], "markets": ["moneyline", "total"], "main": True}))
        async for raw in ws:
            msg = json.loads(raw)
            if msg["type"] == "ping":
                await ws.send(json.dumps({"type": "pong"}))
            elif msg["type"] == "delta":
                for ch in msg["changes"]:
                    if ch["kind"] == "market" and ch["op"] == "upsert":
                        m = ch["market"]
                        for o in m["outcomes"]:
                            db.execute("insert into moves values(?,?,?,?,?,?,?)",
                                       (time.time(), m["id"], m["eventId"], m["type"], m.get("line"), o["name"], o["decimal"]))
                db.commit()

asyncio.run(main())

CTA#

Builder (€99/mes). Prueba de 3 días; tarjeta requerida. REST gratis: signup. Related: dropping odds, closing/CLV.

Preguntas frecuentes#

¿Hay historial tick-a-tick?#

No. Registra los deltas tú mismo.

¿Contenido educativo para adultos?#

Sí (18+).

Contenido educativo para mayores de 18 años. Sin pronósticos ni ganancias garantizadas. En España, apuesta solo con operadores con licencia de la DGOJ.

El plan WebSocket: Builder, 99 €/mes.

Cuotas de Pinnacle en tiempo real por un único WebSocket: los 13 deportes, todos los mercados, cuotas justas sin margen y cuotas de cierre. 3 días gratis y cancelas con un clic.

Form K-1 · Free API key

Get your free API key.

One field. No password, no card: enter your email, click the link we send, and your key is on screen.

By continuing you agree to the Terms and Privacy Policy.

One free key per email. Link valid for 20 minutes.