curl --request POST \
--url https://api.scrapeunblocker.com/sports/sofascore-events \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/sports/sofascore-events"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/sports/sofascore-events', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}SofaScore matches of a sport on a day, or live now
Lists a sport’s matches from sofascore.com for one day in your time zone (or live=true for those in progress), biggest competitions first, as JSON: id, url, tournament (id, name, url, category / country, stage), season, round, status (type notstarted, inprogress, finished, postponed, canceled, with its description such as ‘2nd half’), startTime (ISO, UTC) and startTimestamp, homeTeam / awayTeam (id, name, short name, code, country, url), homeScore / awayScore (current plus per-period and normal-time scores), winner, red cards, seeds and first server (tennis), venue and referee when known. Narrow with country (a country or category) or tournament (id, link or name), and status. Pass a match id to /sports/sofascore-match for its stats and lineups. Motorsport and cycling are races, not matches, and have no day list.
curl --request POST \
--url https://api.scrapeunblocker.com/sports/sofascore-events \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/sports/sofascore-events"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/sports/sofascore-events', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Your ScrapeUnblocker API key. Apply on every request.
Query Parameters
The sport: football, basketball, tennis, ice-hockey, american-football, baseball, handball, volleyball, cricket, rugby, futsal, table-tennis, esports, darts, snooker, mma, aussie-rules, waterpolo, floorball, bandy, badminton, beach-volley, minifootball, padel, motorsport, cycling (soccer, hockey, nba, nfl and the like are accepted).
Day as YYYY-MM-DD, or today / yesterday / tomorrow (in timezone). Default today.
Time zone the day is read in: an IANA name ('Europe/London', 'America/New_York') or a UTC offset ('+02:00'). Default UTC.
true for the matches in progress right now (date is then ignored).
Keep only: all, live, upcoming, finished.
Only one country or category, by name, slug, ISO code or id: 'england', 'Spain', 'US', and for tennis 'ATP', 'WTA'.
Only one competition: an id, a sofascore.com tournament link or a name such as 'Premier League' or 'NBA'.
Matches to return (1-500), the biggest competitions first.
Response
JSON with an events array (empty when there are none).

