Málaga schedule & live scores API

Get Málaga fixtures, live scores, odds and results as JSON from Realtime Sports API. The team id is 99 in soccer/esp.1; filter the LaLiga events, live and schedule endpoints by it. Data is aggregated from public sources and is typically 20-30 seconds behind live play (about 1 second after our source). There is no SLA.

Team id
99
Abbreviation
MCF
Home venue
La Rosaleda, Malaga
2026-27 Spanish LALIGA season
38 games · record 0 won, 3 drawn, 4 lost

Next game: Málaga host Espanyol on Fri, Oct 9, 3:00 PM ET at La Rosaleda.

Upcoming Málaga games

Upcoming Málaga games
DateAwayHomeTime / ResultVenue
Fri, Oct 9EspanyolMálaga3:00 PM ETLa Rosaleda · Malaga
Sun, Oct 18Real SociedadMálaga12:30 PM ETLa Rosaleda · Malaga
Fri, Oct 23MálagaAlavés3:00 PM ETMendizorrotza · Vitoria-Gasteiz
Sat, Oct 31MálagaReal Betis1:30 PM ETEstadio La Cartuja · Sevilla
Sun, Nov 8Racing SantanderMálagaTBDLa Rosaleda · Malaga
Sun, Nov 22MálagaOsasunaTBDEl Sadar · Pamplona

Times are US Eastern; refreshed hourly. Full Málaga schedule with JSON/CSV download

Recent Málaga results

Recent Málaga results
DateAwayHomeTime / ResultVenue
Sun, Sep 20MálagaGetafe0 - 1 FinalEstadio Coliseum · Getafe
Thu, Sep 17VillarrealMálaga3 - 1 FinalLa Rosaleda · Malaga
Sun, Sep 13MálagaCelta Vigo1 - 1 FinalBalaidos · Vigo
Sun, Sep 6LevanteMálaga0 - 0 FinalLa Rosaleda · Malaga
Sun, Aug 30MálagaReal Madrid0 - 4 FinalSantiago Bernabéu · Madrid

Live example: team detail

Request

curl -H "Authorization: Bearer $RSA_API_KEY" \
  "https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/esp.1/teams/99"

Response captured from live data at 2026-10-07 15:37 UTC (refreshed every few minutes). Long arrays are trimmed; meta.rateLimit values are illustrative for a Free key. Captured hourly; logos trimmed to one.

Response

{
  "success": true,
  "data": {
    "id": "99",
    "uid": "s:600~t:99",
    "slug": "esp.malaga",
    "location": "Málaga",
    "name": "Málaga",
    "abbreviation": "MCF",
    "displayName": "Málaga",
    "shortDisplayName": "Málaga",
    "color": "b9e8f0",
    "alternateColor": "D19CA4",
    "league": {},
    "venue": {
      "id": "10638",
      "name": "La Rosaleda",
      "city": "Malaga"
    },
    "isActive": true,
    "isAllStar": false,
    "logos": [
      {
        "href": "https://realtimesportsapi.com/api/images/proxy?id=GgcVSgNPTUMITUgaFFQVVVQXBVwOHV5LRQBZD1lbBllDXQAOWRMQEENcUx1GXQNYQVRe",
        "width": 500,
        "height": 500,
        "alt": "",
        "rel": [
          "full",
          "default"
        ],
        "lastUpdated": "2019-05-08T16:07Z"
      },
      "... 1 more"
    ]
  }
}

Get Málaga scores in code

The events endpoint returns the whole LaLiga scoreboard, so keep the games where either team id is 99.

curl + jq

curl -H "Authorization: Bearer $RSA_API_KEY" \
  "https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/esp.1/teams/99"

# This team's games in the current scoreboard (filter by team id 99)
curl -s -H "Authorization: Bearer $RSA_API_KEY" "https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/esp.1/events" \
  | jq '.data[] | select(.homeTeam.id == "99" or .awayTeam.id == "99") | {name, date, status: .status.detail, home: .homeTeam.score, away: .awayTeam.score}'

JavaScript (fetch)

const TEAM_ID = "99"; // Málaga
const res = await fetch("https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/esp.1/events", {
  headers: { Authorization: `Bearer ${process.env.RSA_API_KEY}` }
});
const { data } = await res.json();
const games = data.filter((e) => e.homeTeam.id === TEAM_ID || e.awayTeam.id === TEAM_ID);
for (const g of games) {
  console.log(g.shortName, g.status.detail, `${g.awayTeam.score}-${g.homeTeam.score}`);
}

Python (requests)

import os, requests

TEAM_ID = "99"  # Málaga
res = requests.get(
    "https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/esp.1/events",
    headers={"Authorization": f"Bearer {os.environ['RSA_API_KEY']}"},
    timeout=10,
)
for g in res.json()["data"]:
    if TEAM_ID in (g["homeTeam"]["id"], g["awayTeam"]["id"]):
        print(g["shortName"], g["status"]["detail"], g["awayTeam"]["score"], g["homeTeam"]["score"])

MCP prompt (Claude, Cursor, ChatGPT)

Using the Realtime Sports MCP server (https://www.realtimesportsapi.com/api/mcp), call get_schedule with sport "soccer" and league "esp.1" for the next 14 days and list the Málaga games (team id 99) with dates and opponents; then call get_live_events and tell me if they are playing now.

Connect the hosted MCP server first: setup guide.

More endpoints for this team: /sports/soccer/leagues/esp.1/teams/99/roster, /sports/soccer/leagues/esp.1/news?team=99. Step-by-step builds: guides.

FAQ

How do I get live Málaga scores in JSON?
Call GET https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/esp.1/events/live with a free API key and keep the games where homeTeam.id or awayTeam.id is "99". The live endpoint returns the score, period, clock and status for games in progress. Data is aggregated from public sources and is typically 20-30 seconds behind live play (about 1 second after our source). There is no SLA.
Is there a free Málaga API?
Yes. The Free plan of Realtime Sports API is $0 with 1,000 calls in the first 30 days, then 125 calls per month, no card. The same key covers every LaLiga team and the other leagues.
What is the Málaga team id?
"99" in league "esp.1" (sport "soccer"). Use it with /sports/soccer/leagues/esp.1/teams/99 for team details and /sports/soccer/leagues/esp.1/teams/99/roster for the roster, and to filter events by homeTeam.id or awayTeam.id.
When is the next Málaga game?
Málaga host Espanyol on Fri, Oct 9, 3:00 PM ET at La Rosaleda. Times are US Eastern; this page refreshes hourly.
Does the API include Málaga betting odds?
Yes, for upcoming LaLiga games that have a line: GET /sports/soccer/leagues/esp.1/events/{eventId}/odds returns the spread, moneyline and total from a single source book, and /odds/history returns line moves. It is not a multi-book comparison feed.
Can I get Málaga score alerts pushed to me?
Yes, on paid plans: register a webhook for event.score_change and event.final filtered to league "esp.1", then keep deliveries where data.homeTeam.id or data.awayTeam.id is "99" (webhooks filter by league, not team). WebSocket works the same way.

All LaLiga team APIs · LaLiga API · Free LaLiga scoreboard widget