> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sportsapipro.com/llms.txt
> Use this file to discover all available pages before exploring further.

# V1 Sports & Data Format

> Sport IDs, response format, status codes, and image URLs for the V1 API

## Sports & IDs

| Sport             | ID | Slug                |
| ----------------- | -- | ------------------- |
| Football          | 1  | `football`          |
| Basketball        | 2  | `basketball`        |
| Tennis            | 3  | `tennis`            |
| Hockey            | 4  | `hockey`            |
| Handball          | 5  | `handball`          |
| American Football | 6  | `american-football` |
| Baseball          | 7  | `baseball`          |
| Volleyball        | 8  | `volleyball`        |
| Rugby             | 9  | `rugby`             |

## Response Format

All endpoints return:

```json theme={null}
{
  "success": true,
  "type": "live",
  "cacheHit": false,
  "sport": "football",
  "data": { ... }
}
```

## Game Object Structure

```json theme={null}
{
  "id": 4467358,
  "sportId": 1,
  "competitionId": 11,
  "competitionDisplayName": "LaLiga",
  "seasonNum": 98,
  "stageNum": 1,
  "roundNum": 30,
  "startTime": "2026-04-04T14:15:00+00:00",
  "statusGroup": 4,
  "statusText": "Ended",
  "shortStatusText": "FT",
  "gameTime": 90.0,
  "gameTimeDisplay": "90'",
  "hasStats": true,
  "hasStandings": true,
  "hasLineups": true,
  "hasBrackets": false,
  "hasPreviousMeetings": true,
  "homeCompetitor": {
    "id": 142,
    "name": "Mallorca",
    "longName": "RCD Mallorca",
    "score": 2.0,
    "isWinner": true,
    "color": "#D40034",
    "lineups": { "status": "Confirmed", "formation": "4-1-2-1-2", "members": [] }
  },
  "awayCompetitor": { ... },
  "events": [],
  "stages": [
    { "name": "Halftime", "homeCompetitorScore": 1.0, "awayCompetitorScore": 0.0 },
    { "name": "End of 90 Minutes", "homeCompetitorScore": 2.0, "awayCompetitorScore": 1.0 }
  ],
  "venue": { "id": 13515, "name": "Estadi Mallorca Son Moix", "capacity": 23142, "attendance": 23015 },
  "officials": [],
  "members": []
}
```

## Status Groups

| Value | Meaning                |
| ----- | ---------------------- |
| 1     | Upcoming / Not started |
| 2     | Postponed / Cancelled  |
| 3     | Live / In Progress     |
| 4     | Ended                  |

## Event Types

Common values returned in `events[].eventType.id`:

| ID | Name           |
| -- | -------------- |
| 1  | Goal           |
| 2  | Yellow Card    |
| 3  | Red Card       |
| 5  | Substitution   |
| 7  | Penalty Missed |
| 8  | Own Goal       |
| 11 | VAR            |

## Competition Stats

The `/competition/{id}/stats` endpoint returns two arrays:

* `data.stats.athletesStats[]` — 16 player categories
* `data.stats.competitorsStats[]` — 9 team categories

### Athlete categories

| ID | Category                 |
| -- | ------------------------ |
| 1  | Goals                    |
| 2  | Expected Goals           |
| 3  | Assists                  |
| 4  | Expected Assists         |
| 5  | Goals and Assists        |
| 6  | Expected Goals + Assists |
| 7  | Shots On Target          |
| 8  | Big Chances Created      |
| 9  | Successful Dribbles      |
| 10 | Tackles Won              |
| 11 | Interceptions            |
| 12 | Clearances               |
| 13 | Clean Sheets             |
| 14 | Saves                    |
| 15 | Yellow Cards             |
| 16 | Red Cards                |

### Team categories

| ID | Category        |
| -- | --------------- |
| 1  | Goals Scored    |
| 2  | Goals Conceded  |
| 3  | Shots On Target |
| 4  | Possession %    |
| 5  | Pass Accuracy % |
| 6  | Tackles Won     |
| 7  | Clean Sheets    |
| 8  | Yellow Cards    |
| 9  | Red Cards       |

## Image URLs

### Team/Competition Logos

```
https://api.sportsapipro.com/v1/football/images/competitors/{competitorId}?imageVersion={v}
```

No API key required for V1 images.

### Image paths by type

| Type             | Path                                   |
| ---------------- | -------------------------------------- |
| Competition logo | `/images/competitions/{competitionId}` |
| Team logo        | `/images/competitors/{competitorId}`   |
| Country flag     | `/images/countries/{countryId}`        |
| Athlete photo    | `/images/athletes/{athleteId}`         |

## Standings Row Object

```json theme={null}
{
  "competitor": { "id": 132, "name": "FC Barcelona", "symbolicName": "BAR" },
  "position": 1,
  "gamePlayed": 29,
  "gamesWon": 24,
  "gamesLost": 4,
  "gamesEven": 1,
  "for": 78,
  "against": 28,
  "ratio": 50.0,
  "points": 73.0,
  "recentForm": [1, 1, 1, 1, 1],
  "destinationNum": 1
}
```

## Cache TTLs

| Endpoint                     | TTL  |
| ---------------------------- | ---- |
| Live / Current scores        | 5s   |
| Game details                 | 10s  |
| Competition games / results  | 30s  |
| Search                       | 30s  |
| Standings / Brackets / Stats | 60s  |
| News / Transfers             | 60s  |
| Competitions / Countries     | 60s  |
| Sports list                  | 300s |
