Authenticate the Pinnacle odds API
Answer: on REST (/v1/*) and MCP, pass your key as x-api-key: ps_live_..., Authorization: Bearer ps_live_... or ?key=ps_live_.... The WebSocket (/v1/stream) reads the x-api-key header or ?key=; it does not read a Bearer header. Prefer the header: URLs end up in logs. Full guide: docs/authentication.
curl#
curl -H "x-api-key: $PINNFEED_KEY" https://pinnfeed.io/v1/sports
A missing key returns 401 missing_key; an unknown or revoked key 401 invalid_key. Revoking a key closes its open sockets with code 4001 key_revoked: key rotation.
Trial CTA#
Builder (€99/mo) for WebSocket and closing history. 3-day trial; card required, charged after day 3 unless cancelled. Free REST: signup. Related: answers hub, docs.
Related: curl OpenAPI recipes, Python account bootstrap.
Questions people ask#
One key for REST and WS?#
Yes. The REST rate limit is per key; WebSocket connection caps and your chosen sports apply per account across keys.
Where do I rotate keys?#
Dashboard → API keys: create the new key, deploy it, then revoke the old one. Step by step: rotate a key.
Is this educational content for adults?#
Yes (18+).