Odds-API.io Markets API

The Markets API from Odds-API.io — 1 operation(s) for markets.

GitHub OpenAPI

Operations 1

1 of 1 operations are conformant: apis.io called them with no credentials and the responses matched this contract. Checked 2026-11-12. how this works · status file

GET /markets Get Markets conformant #

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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/odds-api-io:odds-api-io-markets-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

odds-api-io-markets-api-openapi.yml Raw ↑
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: Markets
paths:
  /markets:
    get:
      description: Returns all available markets per sport. Use `shape` to parse a market's odds and `prematch`/`live` to see where it's offered. No API key required.
      tags:
      - Markets
      summary: Get Markets
      parameters:
      - example: '"football"'
        description: Sport name or slug (e.g. Football or football). Omit for all sports keyed by slug.
        name: sport
        in: query
        schema:
          type: string
      responses:
        '200':
          description: 'With `sport`: markets for that sport. Without: all sports keyed by slug.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.MarketsResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ErrorResponse'
        '404':
          description: Unknown sport slug
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ErrorResponse'
        '503':
          description: Catalogue warming up; retry shortly
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ErrorResponse'
      security: []
      operationId: getMarkets
      x-operation-id-source: derived
components:
  schemas:
    controllers.MarketInfo:
      type: object
      properties:
        name:
          type: string
          example: Spread
          description: Market name, as it appears in /odds responses.
        shape:
          type: string
          enum:
          - moneyline
          - line
          - outcomes
          - yesno
          - labelled
          example: line
          description: 'How to parse the odds. `moneyline`: home/away (+draw on 3-way markets). `line`: one entry per line, with hdp and over/under or home/away. `outcomes`: fixed outcomes (1X/12/X2, odd/even, home/away/none, home/away/neither). `yesno`: yes/no prices. `labelled`: one price per label ("2-1", "1st Half", a player name).'
        period:
          type: string
          enum:
          - match
          - first-half
          - second-half
          - quarter
          - set
          - game
          - inning
          example: match
          description: Which part of the event the market covers.
        prematch:
          type: boolean
          example: true
          description: Offered pre-match.
        live:
          type: boolean
          example: true
          description: Offered in-play.
    controllers.MarketsResponse:
      type: object
      properties:
        sport:
          type: object
          properties:
            name:
              type: string
              example: Football
            slug:
              type: string
              example: football
        markets:
          type: array
          items:
            $ref: '#/components/schemas/controllers.MarketInfo'
    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