PinnFeed sport ids and slugs
Answer: pass sport as a slug or an id, comma-separated for several (sport=soccer,tennis or sport=1,2). The same values work in the WebSocket "sports" array. GET /v1/sports lists all 13 with current live and prematch event counts and whether each is in your plan (inPlan).
| id | slug | id | slug |
|---|---|---|---|
| 1 | soccer | 8 | mma |
| 2 | tennis | 9 | boxing |
| 3 | basketball | 10 | volleyball-handball |
| 4 | hockey | 11 | esports |
| 5 | american-football | 12 | golf |
| 6 | baseball | 13 | cricket |
| 7 | rugby |
These are PinnFeed's ids, not Pinnacle's internal sport ids. An unknown value returns invalid_filter with the list of valid slugs.
Check what is live now#
curl -s https://pinnfeed.io/v1/sports -H "x-api-key: ps_live_your_key" \
| jq '.sports[] | select(.live > 0) | {slug, live, prematch, inPlan}'
Plan limits per sport#
| Plan | Sports |
|---|---|
| Free | 2 of your choice (30 s delay) |
| Hobby | 3 of your choice |
| Builder, Pro | All 13 |
Choose your sports in the dashboard on Free and Hobby. Asking for a sport outside your plan returns a plan error on REST and sport_not_in_plan on the WebSocket.
Plans#
Builder (€99/mo) covers all 13 sports with WebSocket push. 3-day trial; a card is required and it is charged after day 3 unless you cancel. Free key · OpenAPI.
Educational content for adults (18+).
One page per sport: soccer, tennis, basketball (NBA), hockey (NHL), American football, baseball (MLB), rugby, MMA / UFC, boxing, volleyball and handball, golf, cricket, all sports overview.
Related: Multi-sport subscribe.
Questions people ask#
Where are handball and volleyball?#
Both are under volleyball-handball (id 10); tell them apart by league.
Is esports one sport?#
Yes, id 11 groups esports titles; see esports odds.
Do ids ever change?#
They are fixed in PinnFeed's plan catalogue; league and event ids come from Pinnacle.