# Sofascore Live Events Scraper (`parseforge/sofascore-live-scraper`) Actor

Scrape live and scheduled sports events from Sofascore including football, basketball, tennis, ice hockey, baseball, handball, volleyball, snooker, rugby, MMA, cricket, American football, and esports. No API key required.

- **URL**: https://apify.com/parseforge/sofascore-live-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** News, Business, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $25.13 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/main/banners/banner-default.jpg?raw=true)

## 🏆 Sofascore Live Events Scraper

> 🚀 **Export live and scheduled sports events in seconds.** Pull matches, scores, tournaments, team logos, players, and managers across 13 sports from the official Sofascore live data feed. No sign-up, no manual scraping, no setup.

> 🕒 **Last updated:** 2026-05-15 · **📊 20+ fields** per record · **🏆 13 sports** · **⚽ Live + scheduled** · **🔍 Player / Manager / Team search**

The **Sofascore Live Events Scraper** exports live and scheduled events from one of the world's most trusted live-sports data sources. Each record returns up to **20+ structured fields**, including event ID, slug, tournament + season + status, kickoff timestamp, home and away teams (with country, logo, slug, ID), live and final scores, winner code, and direct links to the public Sofascore page.

The scraper covers **13 sports**: football, basketball, tennis, ice hockey, baseball, handball, volleyball, snooker, rugby, MMA, cricket, American football, and esports. Beyond live events, you can search the public catalogue for any **player, manager, or team** by name and return canonical IDs, country, sport, current team, jersey number, and image URLs ready to use in your product.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Sports media, betting analytics teams, fantasy-sports apps, fan-engagement platforms, journalists, indie sports devs | Live scoreboards, fixture feeds, team + player lookups, tournament dashboards, social-media bots, content automation |

---

### 📋 What the Sofascore Live Events Scraper does

Four lookup modes in a single run:

- ⚽ **Live events.** Every in-progress match in a chosen sport, with running scores and status.
- 📅 **Scheduled events.** All matches on a chosen date (YYYY-MM-DD) for any of 13 sports.
- 🔍 **Player search.** Resolve players by name with team, country, jersey number, position, and image.
- 👔 **Manager search.** Resolve managers by name with current team, country, and image.
- 🏟️ **Team search.** Resolve teams by name with sport, country, gender, tournament, and crest logo.

Each event record includes the canonical Sofascore identifiers, tournament + category + uniqueTournament hierarchy, season label, status code and description, kickoff Unix + ISO timestamp, both teams (with crest logos and country), live + final scores broken down per period, winner code, and a public deep-link to the match page.

> 💡 **Why it matters:** real-time sports data powers everything from live betting widgets to fan-engagement bots. Building your own data feed means juggling multiple sources, reconciling team IDs, and keeping logos fresh. This Actor returns one clean dataset per run, refreshed live.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td><code>mode</code></td><td>string</td><td><code>"events"</code></td><td>One of <code>events</code>, <code>player-search</code>, <code>manager-search</code>, <code>team-search</code>.</td></tr>
<tr><td><code>sport</code></td><td>string</td><td><code>"football"</code></td><td>13-sport enum: football, basketball, tennis, ice-hockey, baseball, handball, volleyball, snooker, rugby, mma, cricket, american-football, esports.</td></tr>
<tr><td><code>date</code></td><td>string</td><td><code>""</code></td><td>YYYY-MM-DD. Empty = live events. Supplied = scheduled events on that date.</td></tr>
<tr><td><code>query</code></td><td>string</td><td><code>""</code></td><td>Free-text query for player / manager / team search modes.</td></tr>
<tr><td><code>fetchDetails</code></td><td>boolean</td><td><code>false</code></td><td>Pull additional per-event detail (one extra lookup per event).</td></tr>
<tr><td><code>maxItems</code></td><td>integer</td><td><code>10</code></td><td>Free plan caps at 10, paid plan at 1,000,000.</td></tr>
</tbody>
</table>

**Example: every live football match right now.**

```json
{
    "mode": "events",
    "sport": "football",
    "maxItems": 50
}
````

**Example: search for "Messi" across the player database.**

```json
{
    "mode": "player-search",
    "query": "Messi",
    "maxItems": 10
}
```

> ⚠️ **Good to Know:** scoreboards are live, not historical. To pull yesterday's results, set `date` to the date you want and the Actor returns the scheduled-event feed for that day with final scores already populated.

***

### 📊 Output

Each record contains **20+ fields**. Download the dataset as CSV, Excel, JSON, or XML.

#### 🧾 Schema (events mode)

| Field | Type | Example |
|---|---|---|
| 🆔 `id` | number | `12436472` |
| 🔖 `slug` | string | `"manchester-city-arsenal"` |
| 🔗 `url` | string | `"https://www.sofascore.com/football/match/..."` |
| 🏆 `tournament` | object | `{"name": "Premier League", "category": {"country": "England"}}` |
| 📅 `season` | object | `{"name": "Premier League 24/25", "year": "24/25"}` |
| 🚦 `status` | object | `{"code": 7, "description": "1st half", "type": "inprogress"}` |
| ⏰ `startTimestamp` | number | `1729690200` |
| 🗓️ `startDate` | ISO 8601 | `"2026-05-15T14:30:00.000Z"` |
| 🏠 `homeTeam` | object | `{"name": "Manchester City", "country": "England", "logo": "..."}` |
| 🛫 `awayTeam` | object | `{"name": "Arsenal", "country": "England", "logo": "..."}` |
| 📊 `homeScore` | object | `{"current": 2, "period1": 1, "period2": 1}` |
| 📊 `awayScore` | object | `{"current": 1, "period1": 0, "period2": 1}` |
| 🥇 `winnerCode` | number | `1` |
| 🎬 `hasGlobalHighlights` | boolean | `true` |
| 📈 `hasEventPlayerStatistics` | boolean | `true` |
| 🕒 `scrapedAt` | ISO 8601 | `"2026-05-15T00:00:00.000Z"` |

#### 📦 Sample record (live football match)

<details>
<summary><strong>⚽ Premier League: Manchester City vs Arsenal</strong></summary>

```json
{
    "id": 12436472,
    "slug": "manchester-city-arsenal",
    "url": "https://www.sofascore.com/football/match/manchester-city-arsenal/abcdef#id:12436472",
    "tournament": {
        "name": "Premier League",
        "slug": "premier-league",
        "category": {"name": "England", "country": "England"}
    },
    "season": {"name": "Premier League 24/25", "year": "24/25", "id": 61627},
    "status": {"code": 7, "description": "1st half", "type": "inprogress"},
    "startTimestamp": 1729690200,
    "startDate": "2026-05-15T14:30:00.000Z",
    "homeTeam": {
        "id": 17,
        "name": "Manchester City",
        "slug": "manchester-city",
        "country": "England",
        "logo": "https://www.sofascore.com/static/images/placeholders/team.svg"
    },
    "awayTeam": {
        "id": 42,
        "name": "Arsenal",
        "slug": "arsenal",
        "country": "England",
        "logo": "https://www.sofascore.com/static/images/placeholders/team.svg"
    },
    "homeScore": {"current": 2, "period1": 1, "period2": 1},
    "awayScore": {"current": 1, "period1": 0, "period2": 1},
    "winnerCode": 1,
    "scrapedAt": "2026-05-15T00:00:00.000Z"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🏆 | **13 sports.** Football, basketball, tennis, ice hockey, baseball, handball, volleyball, snooker, rugby, MMA, cricket, American football, esports. |
| ⚽ | **Live + scheduled.** Pull in-progress matches now, or grab any date's fixtures with one input. |
| 🔍 | **Entity search.** Players, managers, and teams resolved by name with canonical IDs and crest images. |
| 🖼️ | **Crest + portrait images.** Direct image URLs for teams, players, and managers ready to embed. |
| 🌍 | **Tournament hierarchy.** Tournament + category + uniqueTournament + season decoded for easy filtering. |
| 🔁 | **Always fresh.** Every run pulls live data, so scores and lineups reflect the current state. |
| 🚫 | **No sign-up.** Works against the public Sofascore live feed. No login required. |

> 📊 Live sports data is the heartbeat of every fan-facing product. Skip the pipeline engineering and ship faster.

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| **⭐ Sofascore Live Events Scraper** *(this Actor)* | $5 free credit, then pay-per-use | **13 sports**, live + scheduled, players/managers/teams | **Live per run** | mode, sport, date, query | ⚡ 2 min |
| Commercial sports data vendors | $$$$/month + license | Full + enrichment | Streaming | Many | ⏳ Weeks |
| Manual scraping of news sites | Free | Inconsistent | On demand | None | 🐢 Days |
| Free public scoreboards | Free | Football-only mostly | Live | Limited | 🕒 Limited fields |

Pick this Actor when you want broad sport coverage, structured fields, and zero pipeline maintenance.

***

### 🚀 How to use

1. 📝 **Sign up.** [Create a free account w/ $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) (takes 2 minutes).
2. 🌐 **Open the Actor.** Go to the Sofascore Live Events Scraper page on the Apify Store.
3. 🎯 **Set input.** Choose a mode, sport, and either a date or a search query.
4. 🚀 **Run it.** Click **Start** and let the Actor collect your data.
5. 📥 **Download.** Grab your results in the **Dataset** tab as CSV, Excel, JSON, or XML.

> ⏱️ Total time from signup to downloaded dataset: **3-5 minutes.** No coding required.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%" valign="top">

#### 📺 Sports Media & Publishing

- Auto-populate live scoreboards on news sites
- Power match-preview articles with squads and stats
- Run "today in sport" digests across leagues
- Trigger breaking-news alerts on goals or upsets

</td>
<td width="50%" valign="top">

#### 🎲 Betting & Trading Analytics

- Live odds-modelling inputs across 13 sports
- Track tournament progression in real time
- Backtest strategies against scheduled-event datasets
- Surface upcoming-fixture lists for traders

</td>
</tr>
<tr>
<td width="50%" valign="top">

#### 🏟️ Fantasy & Fan Engagement

- Roster-availability checks before lineups lock
- Push notifications when your favourite team scores
- Player performance feeds for fantasy scoring
- Crest galleries for fan-customisation widgets

</td>
<td width="50%" valign="top">

#### 📊 Analytics & Data Science

- Build cross-league analytics dashboards
- Train models on scheduled fixture metadata
- Cluster tournaments by attendance and outcomes
- Cross-reference player IDs across multiple feeds

</td>
</tr>
</table>

***

### 🔌 Automating Sofascore Live Events Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

- 🟢 **Node.js.** Install the `apify-client` NPM package.
- 🐍 **Python.** Use the `apify-client` PyPI package.
- 📚 See the [Apify documentation](https://docs.apify.com/) for full details.

The [Apify Schedules feature](https://docs.apify.com/platform/schedules) lets you trigger this Actor on any cron interval. Refresh the live scoreboard every minute, daily fixture digests, or weekly tournament snapshots are all one click.

***

### 🌟 Beyond business use cases

Live sports data powers more than commercial workflows. The same records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Sports analytics coursework with real fixture datasets
- Statistical studies on home-advantage and timing effects
- Cross-league comparisons for sociology of sport
- Reproducible research pulls with cited timestamps

</td>
<td width="50%">

#### 🎨 Personal and creative

- Hobbyist live-score widgets and Discord bots
- Personal "team tracker" dashboards
- Creator content automation (highlight-reel scripts)
- Fan-art generators with current squad metadata

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Community-league publicity dashboards
- Grassroots-sport coverage for local journalism
- Inclusion analyses across women's and men's competitions
- Open-data hackathons on global sport calendars

</td>
<td width="50%">

#### 🧪 Experimentation

- Train upset-prediction ML models with live data
- Prototype agent pipelines that resolve team IDs
- Validate fan-engagement product hypotheses
- Test live-stream UX concepts with real fixtures

</td>
</tr>
</table>

***

### 🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:

- 💬 [**ChatGPT**](https://chat.openai.com/?q=How%20do%20I%20use%20the%20Sofascore%20Live%20Events%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🧠 [**Claude**](https://claude.ai/new?q=How%20do%20I%20use%20the%20Sofascore%20Live%20Events%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🔍 [**Perplexity**](https://perplexity.ai/search?q=How%20do%20I%20use%20the%20Sofascore%20Live%20Events%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🅒 [**Copilot**](https://copilot.microsoft.com/?q=How%20do%20I%20use%20the%20Sofascore%20Live%20Events%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

Pick a mode (`events`, `player-search`, `manager-search`, `team-search`), choose a sport, and either provide a date or a query. The Actor pulls fresh records from the public Sofascore live feed and emits a clean structured row per event or entity.

#### 🏆 Which sports are supported?

13 sports: football, basketball, tennis, ice hockey, baseball, handball, volleyball, snooker, rugby, MMA, cricket, American football, and esports.

#### 📅 Can I get scheduled matches for a specific date?

Yes. Set `date` to a `YYYY-MM-DD` value (e.g. `2026-05-15`) and the Actor returns the scheduled events for that day. Leave it empty to pull only currently live matches.

#### 🔍 How do I look up a player or team?

Set `mode` to `player-search`, `manager-search`, or `team-search`, and put the name in the `query` field (e.g. `"Messi"`, `"Guardiola"`, `"Arsenal"`). The Actor returns the canonical Sofascore record with image URLs.

#### 🖼️ Do I get team and player images?

Yes. Each team record includes a direct `logo` URL and each player record an `image` URL pointing at the public Sofascore image asset.

#### ⚡ How fast is a typical run?

A 50-event live football pull completes in seconds. Larger runs scale linearly. Search modes typically resolve in under a second per query.

#### ⏰ Can I schedule regular runs?

Yes. Use Apify Schedules to run this Actor every minute, hourly, or daily. The dataset always reflects the current live state.

#### ⚖️ Is this data legal to use?

Only publicly available scoreboard data is collected. Review the source's terms of use for your specific use case, particularly if you redistribute content commercially.

#### 💳 Do I need a paid Apify plan to use this Actor?

No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit and unlocks scheduling and higher concurrency.

#### 🔁 What happens if a run fails or gets interrupted?

Apify automatically retries transient errors. If a run still fails, you can inspect the log in the Runs tab, fix the input, and re-run. Partial datasets from failed runs are preserved so you never lose progress.

#### 🆘 What if I need help?

Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.

***

### 🔌 Integrate with any app

Sofascore Live Events Scraper connects to any cloud service via [Apify integrations](https://apify.com/integrations):

- [**Make**](https://docs.apify.com/platform/integrations/make) - Automate multi-step workflows
- [**Zapier**](https://docs.apify.com/platform/integrations/zapier) - Connect with 5,000+ apps
- [**Slack**](https://docs.apify.com/platform/integrations/slack) - Get score updates in your channels
- [**n8n**](https://docs.apify.com/platform/integrations/n8n) - Self-hosted workflow automation
- [**Pipedream**](https://docs.apify.com/platform/integrations/pipedream) - Event-driven serverless workflows
- [**Airbyte**](https://docs.apify.com/platform/integrations/airbyte) - Pipe sports data into your warehouse
- [**GitHub**](https://docs.apify.com/platform/integrations/github) - Trigger runs from commits
- [**Google Drive**](https://docs.apify.com/platform/integrations/drive) - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push fresh fixtures into your product backend, or alert your fans in Slack when a goal is scored.

***

### 🔗 Recommended Actors

- [**⚾ MLB Stats Scraper**](https://apify.com/parseforge/mlb-stats-scraper) - Schedules, teams, rosters, player stats, live game feeds
- [**🏒 NHL Stats Scraper**](https://apify.com/parseforge/nhl-stats-scraper) - 32-team standings, schedule, player landing
- [**🥅 TheSportsDB Scraper**](https://apify.com/parseforge/thesportsdb-scraper) - Crowd-sourced sports database across leagues
- [**🛡️ CWE MITRE Scraper**](https://apify.com/parseforge/cwe-mitre-scraper) - Software weakness reference catalogue
- [**📊 OurAirports Scraper**](https://apify.com/parseforge/ourairports-scraper) - Global airport reference dataset

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more reference-data scrapers.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) to request a new scraper, propose a custom data project, or report an issue.

***

> **⚠️ Disclaimer:** this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Sofascore. All trademarks mentioned are the property of their respective owners. Only publicly available scoreboard data is collected.

# Actor input Schema

## `mode` (type: `string`):

What to fetch from Sofascore. 'events' returns live or scheduled matches; the search modes return entities by name.

## `query` (type: `string`):

Free-text query for player-search / manager-search / team-search modes (e.g. 'Messi', 'Guardiola', 'Arsenal').

## `sport` (type: `string`):

Sport to scrape events for. Leave empty to default to football.

## `date` (type: `string`):

Optional date to fetch scheduled events. Leave empty to fetch live events.

## `fetchDetails` (type: `boolean`):

Fetch additional per-event details (extra request per event).

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "mode": "events",
  "sport": "football",
  "fetchDetails": false,
  "maxItems": 10
}
```

# Actor output Schema

## `overview` (type: `string`):

Overview of scraped data

## `fullData` (type: `string`):

Complete dataset

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "events",
    "query": "",
    "sport": "football",
    "date": "",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/sofascore-live-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "events",
    "query": "",
    "sport": "football",
    "date": "",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/sofascore-live-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "events",
  "query": "",
  "sport": "football",
  "date": "",
  "maxItems": 10
}' |
apify call parseforge/sofascore-live-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/sofascore-live-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Sofascore Live Events Scraper",
        "description": "Scrape live and scheduled sports events from Sofascore including football, basketball, tennis, ice hockey, baseball, handball, volleyball, snooker, rugby, MMA, cricket, American football, and esports. No API key required.",
        "version": "0.0",
        "x-build-id": "fiHHdP9cVonLI7QL9"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~sofascore-live-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-sofascore-live-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~sofascore-live-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-sofascore-live-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~sofascore-live-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-sofascore-live-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "events",
                            "player-search",
                            "manager-search",
                            "team-search"
                        ],
                        "type": "string",
                        "description": "What to fetch from Sofascore. 'events' returns live or scheduled matches; the search modes return entities by name.",
                        "default": "events"
                    },
                    "query": {
                        "title": "Search Query",
                        "type": "string",
                        "description": "Free-text query for player-search / manager-search / team-search modes (e.g. 'Messi', 'Guardiola', 'Arsenal')."
                    },
                    "sport": {
                        "title": "Sport",
                        "enum": [
                            "",
                            "football",
                            "basketball",
                            "tennis",
                            "ice-hockey",
                            "baseball",
                            "handball",
                            "volleyball",
                            "snooker",
                            "rugby",
                            "mma",
                            "cricket",
                            "american-football",
                            "esports"
                        ],
                        "type": "string",
                        "description": "Sport to scrape events for. Leave empty to default to football.",
                        "default": ""
                    },
                    "date": {
                        "title": "Date (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Optional date to fetch scheduled events. Leave empty to fetch live events."
                    },
                    "fetchDetails": {
                        "title": "Fetch Event Details",
                        "type": "boolean",
                        "description": "Fetch additional per-event details (extra request per event).",
                        "default": false
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
