{
  "openapi": "3.0.1",
  "info": {
    "title": "Sofascore Live Scores & Fixtures Scraper",
    "description": "Scrape live scores, fixtures, and results from Sofascore across 21 sports — football, tennis, basketball, and more. Get period scores, tennis points, live match minutes, winners, seeds, and optional betting odds in clean JSON. Filter by tournament, pick any date, and export or automate via API.",
    "version": "0.0",
    "x-build-id": "vnOM081KreFPo3g9x"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/teodor_banea~sofascore-live-scores-fixtures-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-teodor_banea-sofascore-live-scores-fixtures-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/teodor_banea~sofascore-live-scores-fixtures-scraper/runs": {
      "post": {
        "operationId": "runs-sync-teodor_banea-sofascore-live-scores-fixtures-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/teodor_banea~sofascore-live-scores-fixtures-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-teodor_banea-sofascore-live-scores-fixtures-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": "What to scrape",
            "enum": [
              "live",
              "scheduled"
            ],
            "type": "string",
            "description": "Choose \"Live now\" for everything currently in play, or \"Fixtures & results by date\" for a day's full card (scheduled, in-play, and finished with scores).",
            "default": "live"
          },
          "sports": {
            "title": "Sports",
            "uniqueItems": true,
            "type": "array",
            "description": "Select one or more sports to scrape.",
            "items": {
              "type": "string",
              "enum": [
                "football",
                "tennis",
                "basketball",
                "ice-hockey",
                "volleyball",
                "handball",
                "baseball",
                "american-football",
                "rugby",
                "cricket",
                "darts",
                "snooker",
                "table-tennis",
                "esports",
                "mma",
                "badminton",
                "futsal",
                "waterpolo",
                "floorball",
                "bandy",
                "aussie-rules"
              ],
              "enumTitles": [
                "Football",
                "Tennis",
                "Basketball",
                "Ice Hockey",
                "Volleyball",
                "Handball",
                "Baseball",
                "American Football",
                "Rugby",
                "Cricket",
                "Darts",
                "Snooker",
                "Table Tennis",
                "Esports",
                "MMA",
                "Badminton",
                "Futsal",
                "Water Polo",
                "Floorball",
                "Bandy",
                "Aussie Rules"
              ]
            },
            "default": [
              "football"
            ]
          },
          "date": {
            "title": "Date",
            "type": "string",
            "description": "The day to scrape in \"Fixtures & results by date\" mode. Defaults to today. Past dates return final results, future dates return the schedule."
          },
          "tournamentFilter": {
            "title": "Tournament filter",
            "type": "string",
            "description": "Only include competitions whose tournament, category, or country name contains this text (case-insensitive) — e.g. \"Premier League\", \"ATP\", \"NBA\", \"Romania\". In date mode this also skips fetching non-matching tournaments, making runs faster and cheaper."
          },
          "includeOdds": {
            "title": "Include betting odds",
            "type": "boolean",
            "description": "Also fetch the featured \"Full time\" market (home/draw/away, decimal odds, opening and current) for every event. Costs one extra request per event, so large runs take proportionally longer.",
            "default": false
          },
          "maxEvents": {
            "title": "Maximum events",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Cap on how many events are returned in total. Set to 0 for unlimited — unlimited runs without a tournament filter are capped at 10,000 to protect against surprise bills.",
            "default": 200
          },
          "maxConcurrency": {
            "title": "Maximum concurrency",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many requests run in parallel. The default is safe; lower it if you see rate-limit errors.",
            "default": 5
          },
          "maxRequestsPerMinute": {
            "title": "Maximum requests per minute",
            "minimum": 10,
            "maximum": 300,
            "type": "integer",
            "description": "Throttle the overall request rate.",
            "default": 120
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}