Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
description: 'Odds-API.io is a powerful sports betting odds comparison API, providing real-time data from 450+ bookmakers across 34 sports with near zero latency.
- 450+ bookmakers supported
- 34 sports including Football, Basketball, Tennis, Esports and more
- Real-time odds with close to zero latency
- Pre-match & In-play odds coverage
- 99.9% uptime for reliability'
title: Odds-API.io - Real-Time Sports Betting Odds API (v3)…
contact: {}
version: 3.0.0
servers:
- url: https://api.odds-api.io/v3
tags:
- name: Leagues
paths:
/leagues:
get:
security:
- ApiKeyAuth: []
description: Returns a list of leagues (name, slug, event count) for a specified sport
tags:
- Leagues
summary: Get Leagues
parameters:
- description: API key for authentication
name: apiKey
in: query
required: true
schema:
type: string
- example: '"football"'
description: Sport name or slug (e.g. Football or football)
name: sport
in: query
required: true
schema:
type: string
- example: false
description: If true, include leagues without active events
name: all
in: query
schema:
type: boolean
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/controllers.LeagueResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
x-mint:
metadata:
description: List the leagues for a sport with each league's name, slug and event count. Filter events by slug, or set all=true to add leagues with no active events.
operationId: getLeagues
x-operation-id-source: derived
components:
schemas:
controllers.LeagueResponse:
type: object
properties:
eventsCount:
type: integer
example: 32
name:
type: string
example: England - Premier League
slug:
type: string
example: england-premier-league
controllers.ErrorResponse:
type: object
properties:
error:
type: string
example: Error message
securitySchemes:
ApiKeyAuth:
type: apiKey
in: query
name: apiKey
description: Your Odds-API.io API key, sent as the apiKey query parameter. Get one at https://odds-api.io/pricing.
x-origin:
- url: https://api.odds-api.io/v3/docs/doc.json
format: swagger
version: '2.0'
converter:
url: https://github.com/mermade/oas-kit
version: 7.0.8