VOOZH about

URL: https://apify.com/extractify-labs/flashscore-basketball-match-stats

โ‡ฑ Flashscore Basketball Box Scores & Player Stats ยท Apify


๐Ÿ‘ Flashscore Basketball Box Scores & Team Stats Scraper avatar

Flashscore Basketball Box Scores & Team Stats Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store

Flashscore Basketball Box Scores & Team Stats Scraper

Extract basketball match box scores, player statistics, and quarter-by-quarter team performance data from Flashscore. Covers FG%, 3P%, FT%, rebounds, assists, steals, blocks, and 21 per-player stats. No proxy required.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

๐Ÿ‘ Extractify Labs

Extractify Labs

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

0

Monthly active users

2 months ago

Last modified

Categories

Share

Extract detailed basketball match statistics from Flashscore โ€” 21 per-player box score fields and per-quarter team performance metrics โ€” for any completed or live basketball match. Supply Flashscore match URLs or raw match IDs; the actor returns one structured item per match with a full nested players array and team statistics breakdown.

Data source: Flashscore internal feed endpoints (df_st_1 for team stats, df_psn_1 for player box scores). No proxy required.


What basketball data can you extract?

Player box scores (21 statistics per player)

For every player on both teams, the actor returns:

Stat groupFields
Identityplayer_name, team, team_abbreviation, player_url, nationality, height_cm
Scoringpoints, fg_made, fg_attempted, fg2_made, fg2_attempted, fg3_made, fg3_attempted, ft_made, ft_attempted
Reboundingtotal_rebounds, offensive_rebounds, defensive_rebounds
Playmakingassists, turnovers
Defensesteals, blocks, blocks_against, personal_fouls, technical_fouls
Efficiencyplus_minus, minutes

Per-player fields that are not recorded for a given match (e.g. blocks_against, technical_fouls) are omitted from that player's object โ€” they will not appear as zero or null.

Team statistics (per quarter and match total)

For each period (Match, 1st Quarter, 2nd Quarter, 3rd Quarter, 4th Quarter, OT), the actor returns rows across three categories:

  • Scoring: Field goals %, 3-point field goals %, Free throws %
  • Rebounds: Total rebounds, Offensive rebounds, Defensive rebounds
  • Other: Assists, Blocks, Steals, Turnovers, Personal fouls

Key features

  • 21 player statistics per match โ€” complete box score for all players on both teams
  • Per-quarter team statistics โ€” FG%, 3P%, FT%, rebounds, assists, blocks, steals, turnovers, fouls broken down by quarter and match total
  • Flexible input โ€” supply Flashscore match URLs (startUrls) or raw 8-character match IDs (matchIds), or both
  • Selective data fetching โ€” toggle team stats and player box scores independently; each toggle corresponds to one HTTP request per match
  • No proxy required โ€” direct requests to Flashscore feed APIs; 2 requests per match in the default configuration
  • Covers all basketball leagues โ€” NBA, EuroLeague, national leagues, and any other basketball sport on Flashscore
  • Clean, absent-field output โ€” missing player stats are omitted (not null), compatible with strict dataset schema validation

Limitations

LimitationDetail
Final scores not availablehome_score and away_score are not present in the Flashscore df_st_1 historical feed. This actor does not output a final score field.
Quarter scores not availablequarter_scores is always an empty array ([]). The per-quarter score data (IGรท/IHรท fields) exists only in live feeds, not in the historical df_st_1 endpoint used by this actor.
Team names require player statshome_team and away_team are sourced from the player stats feed (df_psn_1). If includePlayerStats is disabled, team names will be absent from output.
Height data qualityheight_cm is sourced directly from Flashscore. For some non-NBA leagues the field contains placeholder values (e.g. 102). If the value appears implausible, treat it as not recorded.
Point-in-time snapshotEach run captures data at the moment of execution. The actor does not subscribe to live updates.
Basketball onlySport ID 3 (basketball). For football or other sports, use the relevant Flashscore actor.

Input parameters

ParameterTypeRequiredDefaultDescription
startUrlsarrayYes (if matchIds absent)โ€”Flashscore basketball match page URLs. The match ID is extracted from the URL path or ?mid= query parameter.
matchIdsarrayYes (if startUrls absent)โ€”Raw Flashscore match IDs โ€” 8-character alphanumeric strings (e.g. "OxuYoJH6").
includeTeamStatsbooleanNotrueFetch per-quarter team statistics. Disabling skips the df_st_1 feed request (one fewer HTTP request per match).
includePlayerStatsbooleanNotrueFetch per-player box scores. Disabling skips the df_psn_1 feed request. Also removes home_team and away_team from output.
maxItemsintegerNo(unlimited)Maximum number of matches to process. Leave blank for no limit.

Validation rules:

  • At least one of startUrls or matchIds must be provided and non-empty.
  • At least one of includeTeamStats or includePlayerStats must be true. If both are false, the actor exits immediately with an error.

Supported URL formats

The actor accepts two Flashscore URL formats:

Format A โ€” with ?mid= query parameter:

https://www.flashscore.com/match/basketball/new-york-knicks-WCNO4nbt/philadelphia-76ers-vwRW2QSh/?mid=OxuYoJH6

Match ID extracted from ?mid=OxuYoJH6.

Format B โ€” match ID in trailing path segment:

https://www.flashscore.com/match/basketball/knicks-76ers-OxuYoJH6/

Match ID extracted from the final 8-character path segment.

URLs from which a match ID cannot be extracted are logged as warnings and skipped.

Sample input (both toggles enabled)

{
"matchIds":["OxuYoJH6","nRQtuO9m"],
"includeTeamStats":true,
"includePlayerStats":true
}

Sample input (player stats only, from URL)

{
"startUrls":[
"https://www.flashscore.com/match/basketball/new-york-knicks-WCNO4nbt/philadelphia-76ers-vwRW2QSh/?mid=OxuYoJH6"
],
"includeTeamStats":false,
"includePlayerStats":true
}

Output fields

Top-level fields (one item per match)

FieldTypeAlways presentDescription
match_idstringYesFlashscore internal match identifier (8 characters)
match_urlstringYesFlashscore match page URL
home_teamstringOnly when includePlayerStats: trueFull home team name
away_teamstringOnly when includePlayerStats: trueFull away team name
quarter_scoresarrayYesAlways [] โ€” see Limitations
team_statsarrayOnly when includeTeamStats: trueTeam statistics rows (see below)
playersarrayOnly when includePlayerStats: truePlayer box scores (see below)
scraped_atstringYesISO 8601 UTC timestamp

team_stats[] element fields

FieldTypeExampleDescription
periodstring"Match"Period label: "Match", "1st Quarter", "2nd Quarter", "3rd Quarter", "4th Quarter", "OT"
categorystring"Scoring"Stat group: "Scoring", "Rebounds", "Other"
stat_namestring"Field goals %"Stat label from Flashscore feed
home_valuestring"50.63%"Home team value (raw string โ€” may include %)
away_valuestring"45.33%"Away team value

players[] element fields

FieldTypeNotes
teamstringFull team name
team_abbreviationstringE.g. "NYK", "PHI"
player_namestringDisplay name as shown on Flashscore
player_urlstringRelative Flashscore player profile URL
nationalitystringPlayer nationality
height_cmintegerHeight in centimetres; absent if not recorded
pointsintegerPoints scored
total_reboundsintegerTotal rebounds
assistsintegerAssists
minutesstringMinutes played in MM:SS format
fg_madeintegerField goals made
fg_attemptedintegerField goals attempted
fg2_madeinteger2-point field goals made
fg2_attemptedinteger2-point field goals attempted
fg3_madeinteger3-point field goals made
fg3_attemptedinteger3-point field goals attempted
ft_madeintegerFree throws made
ft_attemptedintegerFree throws attempted
plus_minusintegerPlus/minus; absent if not recorded
offensive_reboundsintegerOffensive rebounds; absent if not recorded
defensive_reboundsintegerDefensive rebounds; absent if not recorded
personal_foulsintegerPersonal fouls; absent if not recorded
stealsintegerSteals; absent if not recorded
turnoversintegerTurnovers; absent if not recorded
blocksintegerBlocks; absent if not recorded
blocks_againstintegerBlocks against; absent if not recorded
technical_foulsintegerTechnical fouls; absent if not recorded

Sample output

The following is real output from match OxuYoJH6 (New York Knicks vs Philadelphia 76ers, NBA). Two players shown (10 per team in the actual dataset); team_stats truncated to 4 of ~40 rows.

{
"match_id":"OxuYoJH6",
"match_url":"https://www.flashscore.com/match/basketball/OxuYoJH6/",
"home_team":"New York Knicks",
"away_team":"Philadelphia 76ers",
"quarter_scores":[],
"team_stats":[
{
"period":"Match",
"category":"Scoring",
"stat_name":"Field goals %",
"home_value":"50.63%",
"away_value":"45.33%"
},
{
"period":"Match",
"category":"Scoring",
"stat_name":"3-point field goals %",
"home_value":"25.00%",
"away_value":"43.59%"
},
{
"period":"Match",
"category":"Rebounds",
"stat_name":"Total rebounds",
"home_value":"37",
"away_value":"32"
},
{
"period":"1st Quarter",
"category":"Scoring",
"stat_name":"Field goals %",
"home_value":"57.14%",
"away_value":"38.46%"
}
],
"players":[
{
"team":"New York Knicks",
"team_abbreviation":"NYK",
"player_name":"Anunoby OG.",
"player_url":"/player/anunoby-og-ogugua/jiNJMxEa/",
"nationality":"United Kingdom",
"height_cm":197,
"points":24,
"total_rebounds":5,
"assists":2,
"minutes":"37:25",
"fg_made":9,
"fg_attempted":17,
"fg2_made":7,
"fg2_attempted":10,
"fg3_made":2,
"fg3_attempted":7,
"ft_made":4,
"ft_attempted":4,
"plus_minus":12,
"offensive_rebounds":2,
"defensive_rebounds":3,
"personal_fouls":3,
"steals":4,
"blocks":1
},
{
"team":"Philadelphia 76ers",
"team_abbreviation":"PHI",
"player_name":"Maxey T.",
"player_url":"/player/maxey-tyrese/r9DvnZeC/",
"nationality":"USA",
"height_cm":200,
"points":26,
"total_rebounds":3,
"assists":6,
"minutes":"46:48",
"fg_made":9,
"fg_attempted":23,
"fg2_made":8,
"fg2_attempted":17,
"fg3_made":1,
"fg3_attempted":6,
"ft_made":7,
"ft_attempted":9,
"defensive_rebounds":3,
"personal_fouls":1,
"steals":1,
"turnovers":6
}
],
"scraped_at":"2026-05-09T18:19:58Z"
}

Use cases

Fantasy sports developers

Build or power fantasy basketball applications with per-match player box score data. The 21-field player output covers every statistic used in standard fantasy scoring systems: points, rebounds, assists, steals, blocks, turnovers, three-pointers made, plus/minus, and more. Fetch historical match data to backfill a season, or run the actor on a schedule after each match to keep your scoring engine current.

Betting analytics

Enrich sports betting models with historical per-quarter team performance metrics. The team_stats output provides field goal %, 3-point %, free throw %, and rebounding breakdowns split by quarter โ€” useful for building pre-match and historical spread models, identifying teams that struggle in specific quarters, or validating line movement against statistical trends.

Sports research and analytics

Conduct season-level analysis by extracting box scores across hundreds of matches. Compare player efficiency across different leagues (NBA, EuroLeague, national leagues), study team-level performance patterns, or track individual player progression across a season. All 21 player stat fields are available; absent fields are omitted (not zero), preserving data fidelity.

Sports journalism and fact-checking

Verify game statistics quickly for match reporting and fact-checking. Query a specific match by ID and retrieve the complete box score in seconds โ€” no browser automation, no scraping overhead. Useful for confirming player scoring lines, team shooting percentages, or quarter-by-quarter performance narratives before publication.


How it works

  1. The actor fetches the Flashscore homepage to extract an authentication token from the core JavaScript bundle.
  2. For each match ID (from startUrls or matchIds), the actor makes up to two direct HTTP requests to Flashscore's internal feed endpoints:
    • df_st_1_{matchId} โ€” team statistics (if includeTeamStats: true)
    • df_psn_1_{matchId} โ€” player box scores (if includePlayerStats: true)
  3. Responses are parsed using a state-machine feed parser (delimiter-separated text format used internally by Flashscore).
  4. One dataset item is emitted per match.

Request budget: 2 fixed requests (homepage + token) + up to 2 per match. A 10-match run with both toggles on = 22 HTTP requests total.

No browser, no proxy, no JavaScript rendering. All data comes from lightweight feed endpoints.


Related actors

ActorWhat it does
Flashscore Basketball Live MatchesLive basketball scores, current quarter, team lineups โ€” for in-progress matches
Flashscore: Match Listings, Scores & FixturesMulti-sport match listings by date โ€” get match IDs for use with this actor
Flashscore ResultsCompleted match results with scores across all sports
Flashscore Team FixturesUpcoming and past fixtures for a specific team
Flashscore Countries & LeaguesFull directory of sports, countries, and league URLs on Flashscore

FAQ

Q: How do I find a Flashscore basketball match ID?

Navigate to any basketball match page on Flashscore. The match ID is the 8-character alphanumeric segment in the URL, or the value of the ?mid= query parameter. You can also use the Flashscore: Match Listings, Scores & Fixtures actor to retrieve match IDs for a given date and sport.

Q: Why is quarter_scores always an empty array?

Quarter score data (IGรท/IHรท fields) is only available in Flashscore's live feed endpoints, not in the historical df_st_1 feed used by this actor. The field is always present but always empty. Per-quarter team statistics (FG%, rebounds, etc.) are still available through the team_stats array.

Q: Why are home_score and away_score missing from the output?

Final score data is not available in the df_st_1 or df_psn_1 Flashscore feed endpoints. To get final scores, use the Flashscore: Match Listings, Scores & Fixtures or Flashscore Results actor.

Q: Does this actor cover leagues outside the NBA?

Yes. Any basketball match on Flashscore is supported โ€” NBA, EuroLeague, FIBA competitions, national leagues, and more. Data availability depends on Flashscore's coverage for that league. Matches with no team statistics recorded will return an absent team_stats field; player stats are typically available regardless of league.

Q: What happens if a player stat field is not recorded?

Fields are omitted from that player's object entirely โ€” they will never appear as null or 0. For example, if a player did not record any blocks, the blocks field will not be present in their object at all.

Q: Can I use this for live matches?

The actor fetches a point-in-time snapshot. For matches currently in progress, it will return whatever statistics Flashscore has recorded up to the moment of the request. For continuous live monitoring, schedule the actor to run at regular intervals (e.g. every 5 minutes). For dedicated live match tracking, consider the Flashscore Basketball Live Matches actor.

You might also like

Flashscore Team Statistics Scraper - Football & Basketball

extractify-labs/flashscore-team-stats

Extract season-level team stats from Flashscore standings: wins, losses, goals, points and more. Supports football and basketball. No proxy required.

๐Ÿ‘ User avatar

Extractify Labs

5

Flashscore Basketball Live Matches

extractify-labs/flashscore-basketball-live-matches

Scrape all live basketball matches from Flashscore. Returns scores, quarter breakdowns, per-quarter stats, starting five lineups, referees, and optional live 1x2 odds for every in-progress game โ€” NBA, EuroLeague, ACB, and more. No proxy required.

๐Ÿ‘ User avatar

Extractify Labs

3

FlashScore Live Scores Scraper

jungle_synthesizer/flashscore-scraper

Scrape live and scheduled match scores from FlashScore (flashscore.com). Supports football, basketball, tennis, hockey, baseball, and 10+ other sports. Returns match ID, teams, live score, status, league, country, and start time. Fetches data via FlashScore internal data API - no browser required.

๐Ÿ‘ User avatar

BowTiedRaccoon

2

Basketball Reference Scraper | NBA Stats and History

parseforge/basketball-reference-scraper

Pull NBA player, team, and game stats from Basketball Reference including box scores, season averages, advanced metrics, standings, awards, and historical records. Perfect for sports analytics, fantasy tools, betting models, and basketball data journalism projects.

Flashscore Results: Match Listings & Historical Data

extractify-labs/flashscore-results

Extract match results from Flashscore tournaments and teams. Get scores, dates, teams, leagues, and more for football, basketball, and other sports.

๐Ÿ‘ User avatar

Extractify Labs

13

Flashscore Scraper Team Statistic

statanow/flashscore-scraper-team-statistic

Use this alternative FlashScore API to scrape last any number matches any Team from FlashScore, including scores, status, league, kick-off time, detailed event history, and other stats. Export match data, run the scraper using the API, manage and schedule runs, or integrate with external tools.

Flashscore: Match Listings, Scores & Fixtures

extractify-labs/flashscore-extractor

Extract match listings from Flashscore for football and basketball. Filter by date (-7 to +7 days), match status, or league. Returns teams, scores, tournament, and match metadata.

๐Ÿ‘ User avatar

Extractify Labs

199

5.0

Flashscore Data Extractor

dataizi-srl/flashscore-data-extractor

Flashscore Match Scraper - fast, reliable extractor of fixtures and match metadata from Flashscore. Outputs clean JSON with team names, team IDs, tournament info, datetimes, and match URLs - ready for analytics, dashboards, arbitrage and betting models.

290

1.0

Flashscore Team Fixtures, Results & Standings

extractify-labs/flashscore-team-fixtures

Extract upcoming team fixtures, past match results, and current league standings from Flashscore team profile URLs. Supports football, basketball, and other sports. Returns all future matches, configurable result history (default 50), and full division tables with W/D/L stats โ€” no proxy required.

๐Ÿ‘ User avatar

Extractify Labs

13

Bcboysbasketball Score Scraper

getdataforme/bcboysbasketball-score-scraper

Extract detailed basketball player stats like points, rebounds, and assists from BC Boys Basketball leagues with this reliable Apify Actor. Supports multiple seasons, customizable URLs, and delivers structured JSON output for easy analysis....