ライブ試合のモニタリング
SofaScoreエンドポイントを使えば、「ライブ試合のモニタリング」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
SofaScoreのライブスポーツ試合、チーム、選手、順位表、フォーメーション、オッズ、イベント、統計、対戦成績データを正規化JSONで収集できます。
公開されているSofaScoreのライブ試合、チーム、選手、順位表、試合統計、フォーメーション、オッズ、イベント、対戦成績データを構造化JSONとして抽出できます。
エンドポイントファミリー
6
ドキュメント化されたパラメータ
310
サンプル数
109
ライブカタログスナップショット
稼働エンドポイント
109
メソッド
GET
必須パラメータ
267
スキーマ参照
109
{
"platform": "SofaScore",
"endpoint": "sofascore-search",
"method": "GET",
"path": "/sofascore/search",
"auth": "apiKey"
}ユースケース
公開されているSofaScoreのライブ試合、チーム、選手、順位表、試合統計、フォーメーション、オッズ、イベント、対戦成績データを構造化JSONとして抽出できます。
SofaScoreエンドポイントを使えば、「ライブ試合のモニタリング」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
SofaScoreエンドポイントを使えば、「チーム・選手データの拡充」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
SofaScoreエンドポイントを使えば、「スポーツデータ分析」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
マネージド実行
以下の数値はすべて、稼働中のSofaScoreエンドポイントカタログから取得しています(エンドポイント109件、ドキュメント化されたリクエストパラメータ310個、公開レスポンススキーマ109件)。DocsとPlaygroundが参照しているカタログと同じものです。
SofaScoreのエンドポイントは109件、109つのリクエストファミリーに分類されています(Categories、Category Tournaments、Draftほか106件)。
これらのSofaScoreエンドポイントには310個のリクエストパラメータがドキュメント化されており、うち267個が必須です。統合コードを書く前に入力仕様をすべて確認できます。
109件のSofaScoreエンドポイントのうち109件が実際のサンプルレスポンスを、109件がドキュメント化されたレスポンススキーマを備えています。最初のリクエストの前に実データの形に合わせて実装できます。
SofaScoreのエンドポイントは成功時のスキーマに加えてエラーレスポンス(400、404、429、503)もドキュメント化しています。ブロック、レート制限、レコード欠損は空データではなく型付きのエラーとして返ります。
SofaScoreのエンドポイントは109個のホスト型MCPツールとして提供されており、エージェントは同じパラメータと同じJSON契約のまま、追加の実装なしに同じルートを呼び出せます。
カバレッジマップ
/sofascore/categories
/sofascore/category-tournaments
/sofascore/draft
/sofascore/draft-picks
/sofascore/esports-game
/sofascore/event
主要エンドポイント
/sofascore/searchSearches SofaScore for teams, players, and competitions matching a free-text query. An empty `results` list is a valid response when nothing matches.
レスポンスに関する注記
- An empty `results` array is a valid response when nothing matches the query (not an error). - Each result carries a `type` (e.g. `team`, `player`, `uniqueTournament`); player results also carry `team_id`/`team_name` for their current club. - A missing `q` value returns an invalid-parameter error before upstream IO.
MCPツール sofascore_search
/sofascore/live-eventsReturns currently live events for a sport. The `sport` enum accepts `american-football`, `aussie-rules`, `badminton`, `bandy`, `baseball`, `basketball`, `beach-volley`, `cricket`, `darts`, `esports`, `floorball`, `football`, `futsal`, `handball`, `ice-hockey`, `mma`, `minifootball`, `padel`, `rugby`, `snooker`, `table-tennis`, `tennis`, `volleyball`, and `waterpolo`; the sports endpoint lists them. An empty `events` list is a valid response when nothing is live right now.
レスポンスに関する注記
- An empty `events` array is a valid response when nothing is live right now (not an error). - Invalid `sport` values return an invalid-parameter error before upstream IO.
MCPツール sofascore_live_events
/sofascore/eventReturns one SofaScore match by event id: home and away teams and scores, status, start time, tournament, attendance and winner code, plus venue and referee when SofaScore has them. An unknown or malformed id surfaces as an upstream error.
レスポンスに関する注記
- `venue` and `referee` are omitted when SofaScore has no data for them (e.g. neutral/unconfirmed venues). - An unknown or malformed id surfaces as an upstream error (SofaScore returns 404 for a missing event).
MCPツール sofascore_event
/sofascore/event-statisticsReturns one match's statistics (possession, shots, passes, and more, grouped and split by period). Returns 404 when SofaScore has no tracked statistics for the match.
レスポンスに関する注記
- Successful responses are cached for 10 minutes by default. - A genuine not-found response is cached for 30 minutes by default. Repeating the same request during that window returns the cached `404`; upstream blocks and other failures are not cached by this policy. - Statistics can appear later for an upcoming or live match. A cached absence can delay their visibility by up to 30 minutes, so avoid immediate retries and recheck after that interval when new coverage is expected. - `404` responses consume the plan’s request-rate allowance but do not consume credits. - Returns `404` when SofaScore has no tracked statistics for the match (common for lower-tier/friendly fixtures). - `periods` groups statistics by period (e.g. `ALL`, `1ST`, `2ND`); each period has named `groups` (e.g. "Match overview", "Shots") of home/away `items`.
MCPツール sofascore_event_statistics
/sofascore/event-lineupsReturns one match's starting XI and substitutes per side, with formation. Returns 404 when SofaScore has no lineups for the match. A missing-lineup result may be reused for up to two minutes before checking again.
レスポンスに関する注記
- Returns `404` when SofaScore has no lineups for the match (not yet announced or not tracked). - A missing-lineup result may be reused for up to two minutes. Newly announced lineups can become visible after that window; upstream failures remain retryable. - An upstream `200` with `confirmed=false` and explicit empty player arrays on both sides also returns `404`. Predicted lineups with players remain valid; malformed or confirmed-empty payloads return `503`. - `confirmed` indicates whether the lineup is the official confirmed lineup rather than a predicted one. - `home`/`away` each carry a `formation` (e.g. `4-3-3`) and a `players` list; `substitute` marks bench players.
MCPツール sofascore_event_lineups
/sofascore/event-incidentsReturns one match's goal, card, substitution, and period timeline from SofaScore. An empty `incidents` list is a valid response before kickoff.
レスポンスに関する注記
- Successful responses are cached for 30 seconds, so repeated calls for the same event id within that window return the cached result rather than re-fetching from SofaScore. Errors are never cached. - An empty `incidents` array is a valid response before kickoff (not an error). - `type` is one of `period`, `goal`, `card`, `substitution`, `injuryTime`, or another SofaScore incident type; fields not relevant to a given type are omitted. - Card incidents carry `card_color` (`yellow` or `red`); substitutions carry `player_in`/`player_out`.
MCPツール sofascore_event_incidents
関連API
Media & Streaming
Follow German football from the Bundesliga down to the lowest Kreisklasse. Discover competitions in all 22 federations, then read matchdays, standings, scorers, clubs, teams, and players from the DFB's own amateur-football portal.
Media & Streaming
Browse Sportskeeda's sports and entertainment coverage, community wikis, quizzes, and fan games with the catalog's current slugs and filter limits.
Media & Streaming
Research streaming catalogs, title availability, providers, offers, seasons, episodes, and release changes from JustWatch with normalized JSON.
SofaScoreのスクレイピング方法
SofaScoreはサードパーティ開発者向けにドキュメント化されたAPIを提供していないため、あらゆる統合先は同じ公開JSONインターフェースを読み取っています。Crawloraの15個のSofaScoreエンドポイントはこのインターフェースをラップしており、各呼び出しはx-api-keyヘッダーで認証されるGETリクエストです。チーム・選手・試合のIDはすべて検索エンドポイントから取得します。
SofaScoreの検索エンドポイントにフリーテキストのクエリ(q=barcelona)を送ると、該当するチーム・選手・試合が数値IDとスポーツ種目とともに返されます。
試合、統計、フォーメーション、イベント、オッズ、対戦成績のエンドポイントはevent idを受け付け、チーム、チームの試合日程、チームの選手、選手のエンドポイントはそれぞれのidを受け付けます。順位表と節ごとの試合日程エンドポイントはさらにseasonも受け付けます。
各SofaScoreエンドポイントはx-api-keyヘッダー付きのGETリクエストです。SofaScoreへのログイン、Cookie、セッショントークンは不要です。
スポーツ種目(サッカー、バスケットボール、テニス)ごとにライブ試合を取得し、試合IDで詳細を呼び出します。試合統計の成功レスポンスは既定で10分、実際の未検出結果は30分キャッシュされるため、直後に再試行しても新しいデータは早く表示されません。
クライアントライブラリ
お使いの言語向けの SofaScore 専用クライアントをインストールできます。各パッケージはこのページの SofaScore エンドポイントに対応し、APIキーを使って Crawlora のホスト型 API を呼び出します。
npm install @crawlora-org/sofascorenpmpip install crawlora-sofascorePyPIgo get github.com/Crawlora-org/crawlora-sofascorepkg.go.devgem install crawlora-sofascoreRubyGemsnet.crawlora:crawlora-sofascoreMaven Centralcomposer require crawlora/sofascorePackagistcargo add crawlora-sofascorecrates.ioFAQ
SofaScoreはサードパーティ向けにドキュメント化されたAPIや開発者プログラムを提供していないため、申請できるSofaScore APIキーは存在しません。そのアプリの背後には認証不要の公開JSONインターフェースがあり、あらゆる統合先はそれを読み取っています。CrawloraはSofaScoreと提携関係にありません。この公開インターフェースを、x-api-keyヘッダーでご自身のCrawloraキーを使って認証する、安定したドキュメント化済みエンドポイントに正規化しています。無料プランは月2000クレジットを含み、クレジットカード不要で、成功呼び出しごとに課金されます。
検索エンドポイントを使用してください。フリーテキストパラメータqを受け付け、該当するチーム・選手・試合を数値id、slug、スポーツ種目、国とともに返します。これらのIDが他のすべてのSofaScoreエンドポイントに必要な値です。一致する結果がない場合、空の結果リストも正常なレスポンスです。
各レスポンスには収集元を示すsource_urlフィールドが含まれるため、対応関係はレスポンス自体から確認できます。例えば選手のエンドポイントはhttps://api.sofascore.com/api/v1/player/<id>を、検索エンドポイントはhttps://api.sofascore.com/api/v1/search/all?q=<query>を表示します。レスポンスにはfetched_atのタイムスタンプも含まれるため、データの鮮度を判断できます。
はい。ライブ試合エンドポイントはサッカー、バスケットボール、テニスの進行中の試合を返し、試合がない場合の空リストも正常です。統計の成功レスポンスは既定で10分、実際の404は30分キャッシュされ、404はプランのリクエストレート枠には数えられますがクレジットは消費しません。ラインアップが未提供の場合も404になり、上流が未確定かつ両チームの選手配列を明示的に空で返す場合を含みます。選手を含む予想ラインアップは有効です。
公開されているスポーツデータの収集は、一般にプライベートアカウントへのアクセスとは区別されますが、それは無条件に成立するわけではありません。公開データのみを収集し、SofaScoreの規約とレート制限を遵守し、転送や再配布の前に該当する権利を確認してください。スポーツの日程やオッズデータには個別のライセンス要件がある場合があります。これは法的助言ではありません。商用利用の前に、お住まいの地域の法律を確認してください。