Skip to main content
The V1 API covers 9 sports behind one auth key, with sub-100ms responses and a real-time WebSocket. This page gets you to a working call quickly.

1. Get your API key

Sign in to the Dashboard and copy your x-api-key. The same key works across every V1 sport host (v1.football, v1.basketball, etc.) and the WebSocket.

2. Pick a base URL

https://v1.{sport}.sportsapipro.com
{sport} is one of: football, basketball, tennis, hockey, handball, american-football, baseball, volleyball, rugby.

3. Your first call — live scores

curl -H "x-api-key: YOUR_API_KEY" \
  "https://v1.football.sportsapipro.com/api/v1/football/live"

Response envelope

Every V1 endpoint returns the same wrapper:
{
  "success": true,
  "type": "live",
  "cacheHit": false,
  "sport": "football",
  "data": { "games": [], "competitions": [], "countries": [] }
}
See Response Format for the full envelope, status codes, and cache TTLs.

4. Open the WebSocket

const ws = new WebSocket(
  'wss://v1.football.sportsapipro.com/ws?x-api-key=YOUR_API_KEY'
);
ws.onopen = () => ws.send(JSON.stringify({ type: 'subscribe', channel: 'live' }));
ws.onmessage = (e) => console.log(JSON.parse(e.data));
Full protocol: WebSocket.

Where to next

Scores

Live, scheduled, and date-range scores across all 9 sports.

Game Detail

Events, lineups, stats, venue, play-by-play, predictions.

Competitions

Standings, results, brackets, transfers, top scorers.

Recipes

Copy-paste snippets for tickers, tables, and match pages.
V1 and V2 share the same key. Use V1 when you need the fastest score updates; reach for V2 when you need deeper data like fantasy, rankings, or detailed odds.
Last modified on June 12, 2026