Aston Villa schedule & live scores API

Get Aston Villa fixtures, live scores, odds and results as JSON from Realtime Sports API. The team id is 362 in soccer/eng.1; filter the Premier League 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
362
Abbreviation
AVL
Home venue
Villa Park, Birmingham
2026-27 English Premier League season
38 games · record 1 won, 1 drawn, 3 lost

Next game: Aston Villa host Brentford on Sat, Oct 10, 10:00 AM ET at Villa Park.

Upcoming Aston Villa games

Upcoming Aston Villa games
DateAwayHomeTime / ResultVenue
Sat, Oct 10BrentfordAston Villa10:00 AM ETVilla Park · Birmingham
Sat, Oct 17Aston VillaNewcastle United12:30 PM ETSt. James' Park · Newcastle-upon-Tyne
Sat, Oct 24Manchester CityAston Villa7:30 AM ETVilla Park · Birmingham
Sat, Oct 31FulhamAston Villa4:00 PM ETVilla Park · Birmingham
Sun, Nov 8Aston VillaManchester United11:30 AM ETOld Trafford · Manchester
Sat, Nov 21SunderlandAston Villa10:00 AM ETVilla Park · Birmingham

Times are US Eastern; refreshed hourly. Full Aston Villa schedule with JSON/CSV download

Recent Aston Villa results

Recent Aston Villa results
DateAwayHomeTime / ResultVenue
Sat, Sep 19Aston VillaTottenham Hotspur3 - 2 FinalTottenham Hotspur Stadium · London
Sat, Sep 12Nottingham ForestAston Villa2 - 1 FinalVilla Park · Birmingham
Sat, Sep 5Aston VillaHull City0 - 0 FinalThe MKM Stadium · Hull
Mon, Aug 31ArsenalAston Villa1 - 0 FinalVilla Park · Birmingham
Sun, Aug 23Aston VillaBrighton & Hove Albion0 - 4 FinalAmerican Express Stadium · Falmer

Live example: team detail

Request

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

Response captured from live data at 2026-10-07 18:41 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": "362",
    "uid": "s:600~t:362",
    "slug": "eng.aston_villa",
    "location": "Aston Villa",
    "name": "Aston Villa",
    "nickname": "Aston Villa",
    "abbreviation": "AVL",
    "displayName": "Aston Villa",
    "shortDisplayName": "Aston Villa",
    "color": "660e36",
    "alternateColor": "000000",
    "league": {},
    "venue": {
      "id": "307",
      "name": "Villa Park",
      "city": "Birmingham"
    },
    "isActive": true,
    "isAllStar": false,
    "logos": [
      {
        "href": "https://realtimesportsapi.com/api/images/proxy?id=GgcVSgNPTUMITUgaFFQVVVQXBVwOHV5LRQBZD1lbBllDXQAOWRMQEENcUx1GVwxEH0pXAQ",
        "width": 500,
        "height": 500,
        "alt": "",
        "rel": [
          "full",
          "default"
        ],
        "lastUpdated": "2025-03-21T13:31Z"
      },
      "... 1 more"
    ]
  }
}

Get Aston Villa scores in code

The events endpoint returns the whole Premier League scoreboard, so keep the games where either team id is 362.

curl + jq

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

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

JavaScript (fetch)

const TEAM_ID = "362"; // Aston Villa
const res = await fetch("https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/eng.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 = "362"  # Aston Villa
res = requests.get(
    "https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/eng.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 "eng.1" for the next 14 days and list the Aston Villa games (team id 362) 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/eng.1/teams/362/roster, /sports/soccer/leagues/eng.1/news?team=362. Step-by-step builds: guides.

FAQ

How do I get live Aston Villa scores in JSON?
Call GET https://www.realtimesportsapi.com/api/v1/sports/soccer/leagues/eng.1/events/live with a free API key and keep the games where homeTeam.id or awayTeam.id is "362". 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 Aston Villa 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 Premier League team and the other leagues.
What is the Aston Villa team id?
"362" in league "eng.1" (sport "soccer"). Use it with /sports/soccer/leagues/eng.1/teams/362 for team details and /sports/soccer/leagues/eng.1/teams/362/roster for the roster, and to filter events by homeTeam.id or awayTeam.id.
When is the next Aston Villa game?
Aston Villa host Brentford on Sat, Oct 10, 10:00 AM ET at Villa Park. Times are US Eastern; this page refreshes hourly.
Does the API include Aston Villa betting odds?
Yes, for upcoming Premier League games that have a line: GET /sports/soccer/leagues/eng.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 Aston Villa score alerts pushed to me?
Yes, on paid plans: register a webhook for event.score_change and event.final filtered to league "eng.1", then keep deliveries where data.homeTeam.id or data.awayTeam.id is "362" (webhooks filter by league, not team). WebSocket works the same way.

All Premier League team APIs · Premier League API · Free Premier League scoreboard widget