Pinnacle-Quoten-WebSocket mit wscat testen
Antwort: führen Sie npx wscat -c "wss://pinnfeed.io/v1/stream?key=ps_live_ihr_schluessel&sports=soccer&main=true" aus. Weil die URL sports enthält, abonniert der Server sofort und sendet welcome, subscribed, die snapshot-Teile und danach delta-Frames. Ohne Filter in der URL schicken Sie innerhalb von 30 Sekunden ein JSON-subscribe, sonst schließt der Server mit 4002 no_subscription. Erfordert einen Builder- oder Pro-Schlüssel.
Option A: Filter in der URL#
npx wscat -c "wss://pinnfeed.io/v1/stream?key=ps_live_your_key&sports=tennis&markets=moneyline&main=true"
URL-Filter nutzen dieselben Namen wie die JSON-Nachricht (sports, events, leagues, markets, live, main), kommagetrennt. Das automatische Abo greift, sobald sports oder events gesetzt ist.
Option B: Header + JSON#
npx wscat -c wss://pinnfeed.io/v1/stream -H "x-api-key: ps_live_your_key"
> {"type":"subscribe","sports":["basketball"],"markets":["spread","total"],"main":true}
websocat funktioniert genauso: websocat -H "x-api-key: ps_live_ihr_schluessel" wss://pinnfeed.io/v1/stream.
Verbindung halten#
Der Server sendet alle 20 s {"type":"ping"} und schließt den Socket nach 60 s ohne pong. wscat beantwortet JSON-Pings nicht selbst; tippen Sie in längeren Sitzungen {"type":"pong"} oder wechseln Sie zu einem Skript: Python-Beispiel.
Typische Antworten beim Verbinden#
| Sie sehen | Bedeutung |
|---|---|
401 missing_key / invalid_key | Kein Schlüssel, oder unbekannt bzw. widerrufen |
403 plan_lacks_ws | Free/Hobby-Schlüssel: WebSocket ab Builder |
429 connection_limit | Schon 3 (Builder) oder 10 (Pro) offene Verbindungen |
Close 4002 no_subscription | Kein subscribe innerhalb von 30 s |
Tarife#
Builder (99 €/Monat, 3 Verbindungen) oder Pro (10). 3 Tage Testphase; eine Karte ist erforderlich und wird nach Tag 3 belastet, sofern Sie nicht kündigen. Doku.
Bildungsinhalt für Erwachsene (18+).
Häufige Fragen#
Ist der Schlüssel in der URL sicher?#
Es funktioniert, aber URLs landen in der Shell-Historie und in Logs. Außerhalb kurzer Tests den Header nutzen und den Schlüssel rotieren, falls er geleakt ist.
Warum ist die erste Nachricht so groß?#
Der Snapshot enthält alle Events und Märkte Ihrer Filter, in Teilen; engere Filter ergeben einen leichteren Test.
Kann ich Kompression aktivieren?#
wscat handelt permessage-deflate standardmäßig nicht aus; viele Bibliotheken schon.