On the wire · 04:33:30 UTC Live 548 · Prematch 14,368 · Markets 56,922 Vol. I · No. 5 · Friday 13 November 2026 wss://pinnfeed.io/v1/stream
PinnFeed
Getting started · 60 seconds

Quickstart — key to first odds

Updated · PinnFeed · 1 min read

Answer: signup → copy ps_live_... once from the dashboard → export PINNFEED_KEY=... → curl /v1/odds. That is the 60-second path. Python, Node and Sheets follow. WebSocket is step 5 (Builder). Full protocol docs stay at /docs.

Step 1 — Key#

  1. Create a free account.
  2. Dashboard → Create key → copy ps_live_... (shown once).
  3. Environment only:
export PINNFEED_KEY="ps_live_..."

Step 2 — curl#

curl -sS -H "x-api-key: $PINNFEED_KEY" \
  "https://pinnfeed.io/v1/odds?sport=soccer&main=true&limit=5"

You should see JSON events with markets and outcomes (decimal, american, fair, fairProb). Contract: openapi.json.

Step 3 — Python#

import os, urllib.request, json
req = urllib.request.Request(
    "https://pinnfeed.io/v1/odds?sport=soccer&main=true&limit=5",
    headers={"x-api-key": os.environ["PINNFEED_KEY"]},
)
print(json.load(urllib.request.urlopen(req))["events"][0]["home"])

Step 4 — Node#

const key = process.env.PINNFEED_KEY;
const r = await fetch(
  "https://pinnfeed.io/v1/odds?sport=soccer&main=true&limit=5",
  { headers: { "x-api-key": key } },
);
const data = await r.json();
console.log(data.events?.[0]?.home);

Step 5 — Google Sheets#

IMPORTDATA cannot send x-api-key. Use Extensions → Apps Script:

function pinnfeedOdds() {
  const key = PropertiesService.getScriptProperties().getProperty('PINNFEED_KEY');
  const url = 'https://pinnfeed.io/v1/odds?sport=soccer&main=true&limit=10';
  const res = UrlFetchApp.fetch(url, { headers: { 'x-api-key': key } });
  return JSON.parse(res.getContentText());
}

Longer guide: Sheets IMPORTDATA answer.

When you need push#

WebSocket wss://pinnfeed.io/v1/stream requires Builder (€99/mo). Free/Hobby get 403 plan_lacks_ws. Python/Node examples: /docs and vibe coding hub.

AI assistants#

Connect MCP: /docs/mcp. Agent files: llms-api.txt, AGENTS.md, SKILL.md.

Trial CTA#

Free delayed REST: signup. Builder WebSocket: pricing — 3-day trial; card required, charged after day 3 unless cancelled. Related: vibe coding, docs, answers.

Questions people ask#

Is /quickstart different from /docs?#

Yes. This page is the 60-second path. /docs is the full developer quickstart (WebSocket book, schema, examples).

Can I put the key in the sheet cell?#

No — use Script Properties or an env/secret. Keys in cells get copied and leaked.

Is this educational content for adults?#

Yes (18+).

The WebSocket plan: Builder, €99/mo.

Real-time Pinnacle odds pushed over one WebSocket, all 13 sports, every market, no-vig fair odds and closing lines. 3 days free, cancel in one click.

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.