Bet365 Sports Data Scraper | Scores, Players, Stats, Odds
Pricing
from $2.99 / 1,000 results
Bet365 Sports Data Scraper | Scores, Players, Stats, Odds
Extract scores, fixtures, player profiles, match stats, lineups, transfers, and betting odds from Bet365. 15 actions across 13 sports and 2600+ competitions. Team and player names auto-resolved. Squad rankings, historical scores, 1X2 odds in three formats.
Pricing
from $2.99 / 1,000 results
Rating
0.0
(0)
Developer
Zen Studio
Actor stats
0
Bookmarked
5
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
| Zen Studio Sports Betting • Real-time odds and scores across every major sportsbook | |||
|
➤ You are here |
39 sports, all markets |
13 sports, real-time |
Lines, props, SGP |
Scores, fixtures, player profiles, match stats, lineups, transfers, betting trends, and more. 15 actions across 13 sports and 2600+ competitions.
One actor for all sports data. Pull historical scores, full season fixtures, detailed match data with 42 stat types, player profiles with market values, squad rankings, transfers, and betting insights.
Copy to your AI assistant
Copy this block into ChatGPT, Claude, Cursor, or any LLM to start building with this API.
zen-studio/bet365-sports-data on Apify. Call: ApifyClient("TOKEN").actor("zen-studio/bet365-sports-data").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items for results. Key inputs: action (string, required), competitionIds (string), gameIds (array). Full actor spec (input schema with all params/enums/defaults, output dataset fields, README): GET https://api.apify.com/v2/acts/zen-studio~bet365-sports-data/builds/default (Bearer TOKEN) → inputSchema, actorDefinition.storages.dataset, readme. Pricing: $2.99/1k results, item-scraped $0.00299/item. Get token: https://console.apify.com/account/integrations
Also available as an MCP server — add zen-studio/bet365-sports-data for natural language access.
Output Example
|
Use Cases
Full season match data — Pull all 380 Premier League games or 850 NBA games for the current season. Switch to "Last season" or "2 seasons ago" for historical data (football leagues have up to 3 seasons).
Player game logs — Game-by-game stats for any player. Football: goals, assists, minutes, clean sheets. Basketball: full box scores with points, rebounds, assists, FG%, 3PT, blocks, steals.
Squad rankings — Rank a team's players by goals, xG, assists, tackles, clean sheets, or any of 12 stat types within a competition.
Betting analysis — Match odds (1X2) with opening and current prices, head-to-head trends, and daily tip agent track records with ROI and win rates.
Multi-sport coverage — 13 sports including football, basketball, tennis, hockey, American football, baseball, rugby, handball, volleyball. 2600+ competitions from Premier League to NBA to ATP.
Transfer tracker — Latest player transfers with fees, filtered by competition.
Actions
Scores & Games
| Action | Description | Required Input |
|---|---|---|
scores | Games by competition (paginated, supports historical pulls) | competitionIds |
fixtures | Full season fixtures with results | competitionIds |
gameDetail | Complete game data: events, lineups, 42 stat types, venue, officials | gameIds |
teamGames | Team's recent and upcoming matches | competitorId |
Players
| Action | Description | Required Input |
|---|---|---|
playerProfile | Player profiles with market value, career stats, photo (batch supported) | athleteIds |
playerGames | Player match history with per-game stats | athleteIds (first) |
squadStats | Squad ranked by any stat type (goals, xG, assists, cards, etc.) | competitorId, competitionIds (first), statType |
teamStats | Team player stats overview across all stat categories | competitorId |
Discovery
| Action | Description | Required Input |
|---|---|---|
popular | Popular athletes, teams, and competitions | sportType |
search | Find players, teams, and competitions by name | searchQuery |
competitions | Full competition catalog (2600+) | sportType |
transfers | Recent player transfers with fees | competitionIds (first) |
Betting
| Action | Description | Required Input |
|---|---|---|
odds | 1X2 match odds from Bet365 (decimal, fractional, American) | competitionIds |
trends | Betting trends and head-to-head insights with recommendations | gameIds (first) |
dailyTip | Daily tip agent track records (win rate, ROI, units) | None |
Example Inputs
Premier League scores (last 50 games):
{"action": "scores","competitionIds": "premier-league","maxResults": 50}
Multiple competitions at once:
{"action": "scores","competitionIds": "premier-league, champions-league, bundesliga","maxResults": 30}
Player profiles by name:
{"action": "playerProfile","athleteIds": ["Mbappe", "Haaland", "Salah"]}
Real Madrid squad goal scorers in LaLiga:
{"action": "squadStats","competitorId": "Real Madrid","competitionIds": "laliga","statType": "Goals"}
Player match history:
{"action": "playerGames","athleteIds": ["Raphinha"],"maxResults": 20}
Betting trends for a game:
{"action": "trends","gameIds": ["4679449"]}
Popular basketball players and teams:
{"action": "popular","sportType": "Basketball"}
Output Examples
Scores (scores, fixtures, teamGames)
{"gameId": 4452851,"sportType": "Football","competition": "Premier League","competitionId": 7,"season": 131,"round": 30,"roundName": "Round","startTime": "2026-03-14T15:00:00Z","status": "finished","minute": 100,"progress": 100.0,"homeTeam": "Sunderland","homeTeamId": 117,"homeTeamCode": "SUN","homeTeamLogo": "https://cdn.example.com/.../Competitors/117","awayTeam": "Brighton","awayTeamId": 38,"awayTeamCode": "BHA","awayTeamLogo": "https://cdn.example.com/.../Competitors/38","homeScore": 0,"awayScore": 1,"homeHalftimeScore": 0,"awayHalftimeScore": 0,"result": "away","attendance": 45497,"televised": false,"fanVote": { "home": 3603, "draw": 1629, "away": 3021 },"odds": {"bookmaker": "Bet365","settled": true,"homeWinOdds": 3.5,"homeWinFractional": "5/2","homeWinAmerican": "+250","homeWinOpeningOdds": 3.3,"drawOdds": 3.6,"awayWinOdds": 2.05,"awayWinWon": true}}
Game Detail (gameDetail)
{"gameId": 4679449,"competition": "UEFA Champions League","homeTeam": "FC Barcelona","awayTeam": "Newcastle United","homeScore": 7,"awayScore": 2,"homeHalftimeScore": 3,"awayHalftimeScore": 2,"status": "finished","result": "home","attendance": 56662,"leg": 2,"aggregateScore": [8.0, 3.0],"events": [{ "type": "Goal", "subType": "Open Play", "minute": 6.0, "minuteDisplay": "6'", "player": "Raphinha", "team": "home", "assistPlayers": ["Fermín López"] },{ "type": "Goal", "subType": "Open Play", "minute": 15.0, "minuteDisplay": "15'", "player": "Anthony Elanga", "team": "away", "assistPlayers": ["Lewis Hall"] }// ... and 11 more events],"lineups": {"home": {"formation": "4-2-3-1","players": [{ "name": "Joan García", "jerseyNumber": 13, "position": 1, "isStarter": false, "age": 24, "rating": 6.1 }// ... 23 players per team]},"away": { "formation": "4-3-3", "players": [ /* ... */ ] }},"statistics": {"corners": { "home": "1", "away": "3", "homePct": 0.25, "awayPct": 0.75 },"shots": { "home": "18", "away": "8", "homePct": 0.69, "awayPct": 0.31 },"shotsOnTarget": { "home": "13", "away": "5" },"possession": { "home": "2", "away": "2" }// ... 42 stat types total},"venue": { "name": "Spotify Camp Nou", "capacity": 105000, "location": { "lat": 2.12, "lng": 41.38 } },"officials": [{ "name": "Francois Letexier", "role": "Referee" }],"coaches": [{ "name": "Hans-Dieter Flick", "team": "home" }, { "name": "Eddie Howe", "team": "away" }],"fanVote": { "home": 172862, "draw": 16238, "away": 43109 },"connectedGame": { "gameId": 4679448, "startTime": "2026-03-10T20:00:00Z", "homeTeam": "Newcastle Utd", "awayTeam": "Barcelona", "homeScore": 1, "awayScore": 1 },"qualifies": "home","missingPlayers": [{ "name": "Jules Koundé", "athleteId": 55138, "team": "home", "jerseyNumber": 23 }// ... more injured/suspended players]}
Player Profile (playerProfile)
{"athleteId": 39789,"name": "Raphinha","birthdate": "1996-12-14T00:00:00Z","age": 29,"nationality": "Brazil","club": "FC Barcelona","clubId": 132,"position": "Attacker","formationPosition": "Left Forward","height": "1.76","weight": "62 kg","marketValue": 85000000,"marketValueCurrency": "EUR","status": "Active","photo": "https://cdn.example.com/.../Athletes/39789","seasonStats": [{"competition": "LaLiga","competitionId": 11,"Goals": "11","Assists": "3","Yellow Cards": "3","Appearances": "19","Lineups": "16","Time Played": "1210","Minutes Per Goal": "110"}// ... more competitions],"popularityRank": 175}
Search (search)
[{"type": "athlete","id": 76962,"name": "Florian Wirtz","shortName": "Wirtz","club": "Liverpool","position": "Midfielder","age": 22,"nationality": "Germany","sport": 1},{"type": "team","id": 132,"name": "FC Barcelona","code": "BAR","sport": 1,"mainCompetition": 11},{"type": "competition","id": 7,"name": "Premier League","slug": "premier-league","sport": 1,"currentSeason": "2025/2026"}]
Squad Stats (squadStats)
[{ "position": 1, "athleteId": 39820, "name": "Kylian Mbappe", "teamId": 131, "Goals": "23", "photo": "https://cdn.example.com/.../Athletes/39820" },{ "position": 2, "athleteId": 48298, "name": "Vinicius Júnior", "teamId": 131, "Goals": "9" },{ "position": 3, "athleteId": 73000, "name": "Jude Bellingham", "teamId": 131, "Goals": "4" }// ... full squad]
Transfers (transfers)
{"transferId": 354519,"playerName": "Raúl Jiménez","athleteId": 23,"position": 4,"origin": "Fulham","originId": 120,"target": "Everton","targetId": 107,"time": "2026-03-21T19:38:00Z","price": "Terms Agreed","priceValue": 0,"status": "Rumor","photo": "https://cdn.example.com/.../Athletes/23"}
Odds (odds)
{"gameId": 4452851,"competition": "Premier League","startTime": "2026-03-14T15:00:00Z","status": "finished","homeTeam": "Sunderland","homeTeamCode": "SUN","awayTeam": "Brighton","awayTeamCode": "BHA","homeScore": 0,"awayScore": 1,"bookmaker": "Bet365","settled": true,"homeWinOdds": 3.5,"homeWinFractional": "5/2","homeWinAmerican": "+250","homeWinOpeningOdds": 3.3,"drawOdds": 3.6,"awayWinOdds": 2.05,"awayWinWon": true}
Betting Trends (trends)
{"category": "Team Trends","text": "Barcelona won - 5/6 Last Matches","cause": "Barcelona won","trendText": "5/6 Last Matches","recommendation": "Barcelona to win","gameId": 4679449,"homeTeam": "Barcelona","awayTeam": "Newcastle Utd"}
Quick Reference
Competition Slugs
Use these in competitionIds. Comma-separate for multiple.
| Slug | Competition |
|---|---|
premier-league | Premier League |
laliga | LaLiga |
bundesliga | Bundesliga |
serie-a | Serie A |
ligue-1 | Ligue 1 |
champions-league | UEFA Champions League |
europa-league | UEFA Europa League |
fa-cup | FA Cup |
copa-del-rey | Copa del Rey |
nba | NBA |
nfl | NFL |
nhl | NHL |
70+ slugs built in. Use the competitions action to discover all 2600+.
Teams and Players
Type names directly, no IDs needed:
- Teams:
"Real Madrid","Arsenal","Inter Miami"— auto-resolved via search (football teams prioritized) - Players:
"Mbappe","Haaland","Salah"— auto-resolved to the best match - Numeric IDs also accepted for backwards compatibility
Input Reference
| Field | Type | Used By | Description |
|---|---|---|---|
action | enum | All | Which action to run (required) |
competitionIds | string | scores, fixtures, odds (all), squadStats, transfers (first) | Competition slugs, comma-separated. E.g. premier-league, champions-league |
season | enum | fixtures | Current season, Last season, or 2 seasons ago |
gameIds | string[] | gameDetail (all), trends (first) | Game IDs (from scores or fixtures output) |
competitorId | string | teamGames, squadStats, teamStats | Team name or ID. E.g. Real Madrid or 131 |
athleteIds | string[] | playerProfile (all), playerGames (first) | Player names or IDs. E.g. ["Mbappe", "Haaland"] |
statType | enum | squadStats | Goals, Assists, Expected Goals (xG), Rating, etc. |
searchQuery | string | search | Search by name (teams, competitions) |
sportType | enum | popular, competitions | Football, Basketball, Tennis, etc. |
maxResults | int | All | Max items to return (default: 500) |
includeOdds | bool | scores, teamGames | Add Bet365 1X2 odds |
language | enum | All | English, Deutsch, Español, Français, etc. |
Pricing
Pay per dataset item. No subscriptions.
$2.99 per 1,000 results.
Examples
| Use Case | Items | Cost |
|---|---|---|
| Full EPL season fixtures | 380 | $1.14 |
| 3 player profiles | 3 | $0.01 |
| 50 historical EPL scores | 50 | $0.15 |
| Squad goals ranking (LaLiga team) | ~20 | $0.06 |
FAQ
Do I need to know any IDs?
No. Competitions use slugs (premier-league, champions-league). Teams and players accept names directly (Real Madrid, Mbappe), which are auto-resolved to IDs. Sports and stats are dropdown menus. Only game IDs (from scores output) are numeric, since games don't have names.
Can I pull historical data?
Yes. The scores action paginates backwards through history. Set maxResults: 5000 to pull multiple seasons. The fixtures action returns the full current season in one call.
Why are odds empty?
Bet365 odds are included automatically when using the odds action or includeOdds=true on scores.
What's the difference between this and the Live Scores actor? This actor is for batch pulls: historical data, player profiles, transfers, full seasons. The Live Scores actor is a real-time Standby API for polling live games every 30-60 seconds.
What sports are covered? Football (813 competitions), Basketball (215), Tennis (1105), Hockey (47), Handball (38), American Football (15), Baseball (24), Volleyball (323), Rugby (35).
Support
Bug reports, feature requests, or questions? Open an issue in the Issues tab.
15 actions. 13 sports. 2600+ competitions. Scores, players, stats, transfers, odds, trends.