Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/the-odds-api:the-odds-api-sports-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
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.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Odds Sports API
description: The Odds API provides sports betting odds from major bookmakers worldwide. Access current and historical odds for head-to-head, spreads, totals, and outrights markets across 100+ sports. Also provides live scores and event listings. Requires an API key for all requests. Quota is consumed per request based on number of regions and markets requested.
version: 4.0.0
contact:
url: https://the-odds-api.com/
termsOfService: https://the-odds-api.com/terms
servers:
- url: https://api.the-odds-api.com
description: Primary API server
- url: https://ipv6-api.the-odds-api.com
description: IPv6 API server
security:
- apiKey: []
tags:
- name: Sports
description: Available sports and their keys.
paths:
/v4/sports:
get:
operationId: getSports
summary: Get Available Sports
description: Returns a list of available sports and their keys. Free endpoint — no quota consumed. Use the all parameter to include out-of-season sports.
tags:
- Sports
parameters:
- name: apiKey
in: query
required: true
description: Your API key.
schema:
type: string
- name: all
in: query
required: false
description: When true, includes out-of-season sports in the response.
schema:
type: boolean
default: false
responses:
'200':
description: List of available sports.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Sport'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
components:
schemas:
Sport:
type: object
description: A sport available for betting odds.
properties:
key:
type: string
description: Unique identifier for the sport (e.g., basketball_nba).
group:
type: string
description: Sport group/category (e.g., Basketball, American Football).
title:
type: string
description: Human-readable title (e.g., NBA).
description:
type: string
description: Description of the sport or competition.
active:
type: boolean
description: Whether the sport currently has events with odds.
has_outrights:
type: boolean
description: Whether outrights/futures markets are available.
Error:
type: object
properties:
message:
type: string
description: Error description.
responses:
Unauthorized:
description: Unauthorized — invalid or missing API key.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
RateLimited:
description: Too many requests — quota exceeded.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
apiKey:
type: apiKey
name: apiKey
in: query