Skip to content

Commit 7e2111d

Browse files
committed
feat(docs): add audio-matches, dataproviders, and match-score endpoints from bundle audit
1 parent 6cba865 commit 7e2111d

2 files changed

Lines changed: 115 additions & 0 deletions

File tree

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ Full granular documentation for each endpoint family:
101101
* **[Competition & Standings](docs/endpoints/leagues.md)** - `leagues`, `allLeagues`
102102
* **[News & Transfers](docs/endpoints/news_transfers.md)** - `worldnews`, `transfers`, `trendingnews`
103103
* **[TV & Broadcast Listings](docs/endpoints/tv_listings.md)** - `tvlistings`
104+
* **[Audio, Data Providers & Match Score](docs/endpoints/audio_data.md)** - `audio-matches`, `dataproviders`, `match-score`
104105

105106
---
106107

docs/endpoints/audio_data.md

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
# Audio, Data Providers & Match Score Endpoints
2+
3+
These endpoints were discovered via analysis of the FotMob frontend JavaScript bundle chunks (`/_next/static/chunks/`) and are accessible without authentication.
4+
5+
---
6+
7+
## Audio Matches
8+
9+
A feed of commentary audio-ready matches for a given date.
10+
11+
### Endpoint
12+
`https://www.fotmob.com/api/data/audio-matches?date={YYYYMMDD}`
13+
14+
### Method
15+
`GET`
16+
17+
### Required Params
18+
- `date`: Date in `YYYYMMDD` format (e.g. `20240326`)
19+
20+
### Example Request
21+
```bash
22+
# Get audio match listings for a date
23+
curl "https://www.fotmob.com/api/data/audio-matches?date=20240326"
24+
```
25+
26+
### [VERIFIED] Example Response
27+
Returns a JSON array of match objects with provider language availability.
28+
```json
29+
[
30+
{"id": "4837401", "langs": ["ENG"]},
31+
{"id": "4837404", "langs": ["ENG"]},
32+
{"id": "4826055", "langs": ["ENG", "ESP"]}
33+
]
34+
```
35+
36+
### Verification Status
37+
**VERIFIED** — Returns `HTTP 200` with a list of audio-enabled match IDs and their supported language codes.
38+
39+
---
40+
41+
## Data Providers
42+
43+
Returns a directory of all supported data provider integrations (TV/broadcast/streaming platforms) keyed by provider ID.
44+
45+
### Endpoint
46+
`https://www.fotmob.com/api/data/dataproviders`
47+
48+
### Method
49+
`GET`
50+
51+
### Required Params
52+
None
53+
54+
### Example Request
55+
```bash
56+
curl "https://www.fotmob.com/api/data/dataproviders"
57+
```
58+
59+
### [VERIFIED] Example Response
60+
Returns a JSON object keyed by numeric provider IDs.
61+
```json
62+
{
63+
"14": { "name": "ESPN", "type": "TV" },
64+
"38": { "name": "BBC Sport", "type": "Stream" },
65+
"39": { "name": "Sky Sports", "type": "TV" }
66+
}
67+
```
68+
69+
### Verification Status
70+
**VERIFIED** — Returns `HTTP 200` with a mapping of broadcast provider IDs to their full metadata.
71+
72+
### Notes
73+
- The provider IDs returned here are the `stationId` values in the [TV Listings](tv_listings.md) endpoint responses.
74+
- Cross-reference these IDs to decode which network is airing each match.
75+
76+
---
77+
78+
## Match Score (Lightweight)
79+
80+
A lightweight match score endpoint returning a single `match` object — useful for polling live results without fetching full `matchDetails`.
81+
82+
### Endpoint
83+
`https://www.fotmob.com/api/data/match-score?matchId={matchId}`
84+
85+
### Method
86+
`GET`
87+
88+
### Required Params
89+
- `matchId`: The numeric FotMob match ID
90+
91+
### Example Request
92+
```bash
93+
# Get lightweight live score for a match
94+
curl "https://www.fotmob.com/api/data/match-score?matchId=4310531"
95+
```
96+
97+
### [VERIFIED] Example Response
98+
```json
99+
{
100+
"match": {
101+
"id": 4310531,
102+
"status": { "finished": true, "started": true, "cancelled": false },
103+
"home": { "id": 8456, "name": "Man City", "score": 3 },
104+
"away": { "id": 8650, "name": "Arsenal", "score": 1 }
105+
}
106+
}
107+
```
108+
109+
### Verification Status
110+
**VERIFIED** — Returns `HTTP 200` with a lightweight `match` key.
111+
112+
### Notes
113+
- Much lighter than `/api/matchDetails` — ideal for polling live score updates.
114+
- Keys include `status`, `home`, and `away` with team name and score.

0 commit comments

Comments
 (0)