MSN Sports API avatar

MSN Sports API

Pricing

from $0.62 / 1,000 sports lookups

Go to Apify Store
MSN Sports API

MSN Sports API

Unofficial wrapper around MSN's own public sports API for live scores, standings, schedules, and highlight videos across major leagues worldwide.

Pricing

from $0.62 / 1,000 sports lookups

Rating

0.0

(0)

Developer

Romy

Romy

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

5 days ago

Last modified

Categories

Share

Unofficial, reverse-engineered wrapper around MSN's own public sports content API. Returns real-time scores, standings, schedules, and highlight videos as structured JSON — no scraping, no HTML parsing, no login required.

What

A Standby REST API that proxies MSN's own backend for major-league sports data:

  • Scores: live and recently completed games for a league — period-by-period scores, game state, broadcast channels, win probabilities.
  • Standings: current league table/standings.
  • Schedule: upcoming or past games for a league on a given date.
  • Videos: recent highlight videos for a league.

Why

MSN's sports section aggregates live scores, standings, and highlights for every major league worldwide through one consistent API. This wrapper exposes that data as clean JSON for anyone who wants real-time sports data without building a scraper against MSN's web frontend.

How

This is a Standby Actor — it runs as a long-lived HTTP server, not a one-shot crawl. Send GET requests to its Standby URL with the query parameters documented below; each call returns JSON immediately.

Input

All parameters are passed as query string parameters on the request URL — there is no JSON input needed to start the Actor.

RouteParamsDescription
GET /scoresleagueId (e.g. IceHockey_NHL), sport (e.g. IceHockey)Live and recently completed games for a league — scores by period, game state, broadcast channels, win probabilities.
GET /standingsleagueId, seasonPhase (default regularSeason)Current league standings/table.
GET /scheduleleagueId, date (optional, YYYY-MM-DD, defaults to today)Upcoming/past schedule for a league.
GET /videosleagueIdRecent highlight videos for a league.

League ids follow the {Sport}_{League} pattern. Confirmed examples: Football_NFL/Football, Basketball_NBA/Basketball, Baseball_MLB/Baseball, IceHockey_NHL/IceHockey, Soccer_USAMajorLeagueSoccer/Soccer, Soccer_InternationalClubsUEFAChampionsLeague/Soccer, Soccer_UEFAEuropaLeague/Soccer.

Output

Each route returns MSN's own response JSON largely as-is — field names and shapes follow MSN's API directly, so the response is richer and more detailed than any fixed Apify Dataset schema could usefully flatten. See the Input table above for what each route's response contains.

Pricing

Pay-per-event:

  • apify-actor-start — flat fee per Actor Standby run.
  • sports-lookup — one charge per call.

Known limitations

  • Sports coverage depends on MSN's own league catalog; not every league/competition worldwide is available, and league ids must match MSN's own naming exactly (see the confirmed examples above).
  • This is an unofficial, reverse-engineered integration, not affiliated with or endorsed by Microsoft Corporation. Behavior may change if MSN changes its API.

Found a bug or have a feature request? Use the Issues tab on this Actor's page.