NewConnect Claude, Gemini, ChatGPT, and other AI agents to API Ninjas via our MCP server →

La Liga API

A football (soccer) API for La Liga, Spain's top division: get the fixtures for every matchday, live scores with the match minute on paid plans, results with goals per half, the league table with the European and relegation places, and the squads of Real Madrid, Barcelona, Atlético Madrid and every other club. The free plan covers the current season's fixtures, results, table and squads.

La Liga is served by the Football (Soccer) API with league=laliga. The same API key works for every sports API.

Available endpoints:

La Liga data at a glance

Season valueseason=2026 is the 2026-27 season (season_label 2026-27)
Format20 clubs, 38 matchdays, home and away; league matches have season_type=regular
Match daydate is the date in Spain (Central European time)
ScoringGoals per half in period_scores; draws have winner: null
Live matchesOn paid plans: score, half, match minute and halftime
Club idssoccer-real-madrid, soccer-barcelona and so on: the same id in La Liga, the Champions League and the Europa League
SquadsPosition (G, D, M, F), shirt number, nationality, birth date, height and weight

La Liga table fields

points, wins, draws, losses, goals_for, goals_against, goal_difference and league_rank, the table position with La Liga's tiebreakers applied (head-to-head results come before goal difference). qualification shows the places for the Champions League, Europa League, Conference League qualifying and Relegation.

4 endpoints

https://api.api-ninjas.com/v1/soccermatches

Returns fixtures, live scores and results. Ask for one day, a team's season or one match; with only league you get today's matches. Paid plans see matches in progress with the score, half and match minute updated throughout the match; the free plan sees their status and the final score once they end. The free plan covers the current season. Developer plans add the three previous seasons, and the Business tier and above gets the full season archive.

Full parameter and response reference: /v1/soccermatches.

Live Demo

Live demo · no API key required
Query parameters
league
date
team
season
season_type
status
game_id
limit
offset

Get a free API key to get started — no credit card required.

Headers
X-Api-KeyLog in or sign up to get your API key
GET
https://api.api-ninjas.com/v1/soccermatches?league=laliga
Sample response
[
{
"game_id": "laliga-20261025-rma-bar",
"league": "laliga",
"sport": "soccer",
"season": 2026,
"season_label": "2026-27",
"season_type": "regular",
"round": null,
"leg": null,
"date": "2026-10-25",
"start_time": "2026-10-25T20:00:00Z",
"status": "final",
"status_detail": null,
"period": 2,
"clock": null,
"home_team": {
"team_id": "soccer-barcelona",
"name": "Barcelona",
"abbreviation": "BAR"
},
"away_team": {
"team_id": "soccer-real-madrid",
"name": "Real Madrid",
"abbreviation": "RMA"
},
"home_score": 1,
"away_score": 2,
"period_scores": {
"home": [
0,
1
],
"away": [
1,
1
]
},
"penalty_scores": null,
"aggregate_scores": null,
"decided_in": "regulation",
"winner": "soccer-real-madrid",
"venue": {
"name": "Spotify Camp Nou",
"city": "Barcelona",
"state": null,
"country": "ES"
},
"neutral_site": false,
"original_date": null,
"updated_at": "2026-10-27T23:14:17Z"
}
]

Code Examples

curl -X GET "https://api.api-ninjas.com/v1/soccermatches?league=laliga" \ -H "X-Api-Key: YOUR_API_KEY"

https://api.api-ninjas.com/v1/soccerstandings

Returns the table for a season, ordered by league rank, or by conference or division rank when you filter. Tables update throughout the season, shortly after each match ends. The free plan covers the current season. Developer plans add the three previous seasons, and the Business tier and above gets the full season archive.

Full parameter and response reference: /v1/soccerstandings.

Live Demo

Live demo · no API key required
Query parameters
league
season
conference

Get a free API key to get started — no credit card required.

Headers
X-Api-KeyLog in or sign up to get your API key
GET
https://api.api-ninjas.com/v1/soccerstandings?league=laliga
Sample response
[
{
"league": "laliga",
"sport": "soccer",
"season": 2026,
"season_label": "2026-27",
"team": {
"team_id": "soccer-barcelona",
"name": "Barcelona",
"abbreviation": "BAR"
},
"conference": null,
"division": null,
"games_played": 10,
"wins": 9,
"draws": 0,
"losses": 1,
"points": 27,
"goals_for": 40,
"goals_against": 11,
"goal_difference": 29,
"league_rank": 1,
"qualification": "Champions League",
"final": false
}
]

Code Examples

curl -X GET "https://api.api-ninjas.com/v1/soccerstandings?league=laliga" \ -H "X-Api-Key: YOUR_API_KEY"

https://api.api-ninjas.com/v1/soccerclubs

Lists clubs with their domestic league, country and home venue. Available on every plan.

Full parameter and response reference: /v1/soccerclubs.

Live Demo

Live demo · no API key required
Query parameters
league
team
active

Get a free API key to get started — no credit card required.

Headers
X-Api-KeyLog in or sign up to get your API key
GET
https://api.api-ninjas.com/v1/soccerclubs?league=laliga
Sample response
[
{
"team_id": "soccer-real-madrid",
"league": "laliga",
"sport": "soccer",
"abbreviation": "RMA",
"name": "Real Madrid",
"short_name": "Real Madrid",
"city": "Madrid",
"country": "ES",
"venue": {
"name": "Santiago Bernabéu",
"city": "Madrid",
"state": null,
"country": "ES"
},
"active": true
}
]

Code Examples

curl -X GET "https://api.api-ninjas.com/v1/soccerclubs?league=laliga" \ -H "X-Api-Key: YOUR_API_KEY"

https://api.api-ninjas.com/v1/soccerplayers

Returns current squads and player profiles, by team or by name. Rosters refresh every day. Available on every plan.

Full parameter and response reference: /v1/soccerplayers.

Live Demo

Live demo · no API key required
Query parameters
league
team
name
player_id
position
limit
offset

Get a free API key to get started — no credit card required.

Headers
X-Api-KeyLog in or sign up to get your API key
GET
https://api.api-ninjas.com/v1/soccerplayers?league=laliga&team=RMA
Sample response
[
{
"player_id": "soccer-p-b00914ee33",
"league": "laliga",
"team": {
"team_id": "soccer-real-madrid",
"name": "Real Madrid",
"abbreviation": "RMA"
},
"name": "Kylian Mbappé",
"first_name": "Kylian",
"last_name": "Mbappé",
"position": "F",
"jersey_number": "10",
"height_in": 70,
"height_cm": 178,
"weight_lb": 163,
"weight_kg": 74,
"birth_date": "1998-12-20",
"birth_place": null,
"roster_status": "active",
"nationality": "France"
}
]

Code Examples

curl -X GET "https://api.api-ninjas.com/v1/soccerplayers?league=laliga&team=RMA" \ -H "X-Api-Key: YOUR_API_KEY"

Frequently Asked Questions

  • Yes, but you must have a premium subscription. Commercial use of the La Liga API is not permitted on the free tier. See our pricing page to choose a plan that fits your needs.
  • Sign up for a free account to instantly get your API key, then pass it in the X-Api-Key header on every request. The documentation above includes ready-to-run examples in cURL, Python, JavaScript, Node.js, and more.
  • Your API requests will simply be denied once you hit your monthly quota — you will never be charged more than the plan you signed up for. To increase your quota, you can upgrade your plan any time on our pricing page.
  • The API responds with a standard HTTP status code and a JSON error message describing the problem. See our error codes reference for the full list of codes and how to resolve each one, or contact support if you need help.
  • La Liga does not publish a public API for developers. The API Ninjas Football (Soccer) API provides La Liga fixtures, live scores, results, the table and squads with league=laliga. API Ninjas is not affiliated with or endorsed by La Liga.
  • Call /v1/soccermatches?league=laliga&team=RMA or team=BAR for the club's fixtures and results in the current season. The club ids are soccer-real-madrid and soccer-barcelona.
  • league_rank is the official position with La Liga's tiebreakers applied, which put head-to-head results before goal difference. The row still includes goal_difference, goals_for and goals_against.
  • date is the match day in Spain (Central European time). start_time is the kick-off in UTC, so convert it for display in other time zones.

API Ninjas is not affiliated with or endorsed by the NFL, the NBA, the NHL or any other league, competition or team. League, competition and team names are trademarks of their owners and are used only to identify them.