Odds-API.io Outrights API
The Outrights API from Odds-API.io — 3 operation(s) for outrights.
The Outrights API from Odds-API.io — 3 operation(s) for outrights.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/odds-api-io:odds-api-io-outrights-api"
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.
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: 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: Outrights
paths:
/outrights:
get:
security:
- ApiKeyAuth: []
description: Lists outright (futures) tournaments for a sport, sorted by start date. bookmakerCount is how many bookmakers you can request in /outrights/odds currently price each one, counting any bookmaker with a current price for at least one golfer. Golf is the first sport. The default list covers the whole season, so later tournaments show bookmakerCount 0 until bookmakers price them; filter by league to narrow it. Part of the Outrights add-on on paid plans.
tags:
- Outrights
summary: List Outrights
parameters:
- description: API key for authentication
name: apiKey
in: query
required: true
schema:
type: string
- example: golf
description: Sport name or slug
name: sport
in: query
required: true
schema:
type: string
- example: pga-tour
description: 'League slug: pga-tour, dp-world-tour, liv-golf or majors'
name: league
in: query
schema:
type: string
- example: pending,live
description: 'Comma-separated statuses: pending, live, settled, cancelled. Default: pending,live'
name: status
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/dto.OutrightDto'
'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: Outrights add-on required
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
x-mint:
metadata:
description: 'List outright tournaments with the number of bookmakers pricing each. Golf first: PGA Tour, DP World Tour, LIV Golf and the majors.'
operationId: getOutrights
x-operation-id-source: derived
/outrights/odds:
get:
security:
- ApiKeyAuth: []
description: Returns Winner, Top 5, Top 10 and Top 20 (dead heat), Top 5 (Incl. Ties), Top 10 (Incl. Ties) and Top 20 (Incl. Ties) (ties paid in full) and Make Cut prices for one outright from the selected bookmakers. Bookmakers follow the same rules as /odds. A bookmaker without a current market is left out; settled and cancelled outrights return an empty bookmakers object. Part of the Outrights add-on on paid plans.
tags:
- Outrights
summary: Get Outright Odds
parameters:
- description: API key for authentication
name: apiKey
in: query
required: true
schema:
type: string
- example: 1001
description: Outright id from /outrights
name: id
in: query
required: true
schema:
type: integer
- example: DraftKings,Kalshi
description: Comma-separated list of bookmaker names (max 30)
name: bookmakers
in: query
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/dto.OutrightOddsResponse'
'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: Outrights add-on required, or bookmaker not allowed on your plan
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'404':
description: Outright not found
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
x-mint:
metadata:
description: 'Outright odds for one tournament from your bookmakers: Winner, Top 5/10/20, Top 5/10/20 (Incl. Ties) and Make Cut.'
operationId: getOutrightsOdds
x-operation-id-source: derived
/outrights/results:
get:
security:
- ApiKeyAuth: []
description: Returns final positions and the winners of each market for one outright. results and winners are empty until the outright is settled. Tied golfers share a position with tied true, so a Top N list can be longer than N; Top N and Top N (Incl. Ties) list the same golfers and differ only in how a boundary tie is paid. madeCut is null on events without a cut, and Make Cut is then absent from winners. Part of the Outrights add-on on paid plans.
tags:
- Outrights
summary: Get Outright Results
parameters:
- description: API key for authentication
name: apiKey
in: query
required: true
schema:
type: string
- example: 1000
description: Outright id from /outrights
name: id
in: query
required: true
schema:
type: integer
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/dto.OutrightResultsResponse'
'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: Outrights add-on required
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'404':
description: Outright not found
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/controllers.ErrorResponse'
x-mint:
metadata:
description: Final tournament results with positions, ties, made cut and the winners of each outright market.
operationId: getOutrightsResults
x-operation-id-source: derived
components:
schemas:
dto.OutrightResultsResponse:
type: object
properties:
id:
type: integer
format: int64
example: 1000
name:
type: string
example: Mexico Open 2026
status:
type: string
enum:
- pending
- live
- settled
- cancelled
results:
type: array
items:
$ref: '#/components/schemas/dto.OutrightResultRow'
winners:
type: object
description: Participant ids that won each market (Winner, Top 5/10/20, Top 5/10/20 (Incl. Ties), Make Cut). Top N and Top N (Incl. Ties) list the same golfers. Empty until settled. Make Cut is absent on events without a cut
additionalProperties:
type: array
items:
type: integer
format: int64
dto.OutrightRunner:
type: object
properties:
label:
type: string
example: Ben Griffin
participantId:
type: integer
format: int64
description: Participant id from /participants
example: 991291386379
odds:
type: string
description: Decimal back price (Winner and Top N markets)
example: '16.129'
layOdds:
type: string
description: Decimal lay price on exchanges and prediction markets (Winner and Top N markets)
example: '18.182'
'yes':
type: string
description: Decimal price that the golfer makes the cut (Make Cut)
example: '1.149'
'no':
type: string
description: Decimal price that the golfer misses the cut (Make Cut)
example: '6.667'
layYes:
type: string
description: Lay price of yes on exchanges (Make Cut)
example: '1.16'
layNo:
type: string
description: Lay price of no on exchanges (Make Cut)
example: '7.00'
dto.OutrightOddsResponse:
type: object
properties:
id:
type: integer
format: int64
example: 1001
name:
type: string
example: World Wide Technology Championship 2026
date:
type: string
format: date-time
status:
type: string
enum:
- pending
- live
- settled
- cancelled
sport:
$ref: '#/components/schemas/dto.Sport'
league:
$ref: '#/components/schemas/dto.League'
bookmakers:
type: object
description: Markets per bookmaker name
additionalProperties:
type: array
items:
$ref: '#/components/schemas/dto.OutrightMarketDto'
dto.OutrightMarketDto:
type: object
properties:
name:
type: string
enum:
- Winner
- Top 5
- Top 5 (Incl. Ties)
- Top 10
- Top 10 (Incl. Ties)
- Top 20
- Top 20 (Incl. Ties)
- Make Cut
description: Top N settles boundary ties under dead-heat rules; Top N (Incl. Ties) pays boundary ties in full. The two are separate markets.
updatedAt:
type: string
format: date-time
description: When a price in this market last changed
odds:
type: array
items:
$ref: '#/components/schemas/dto.OutrightRunner'
dto.OutrightDto:
type: object
properties:
id:
type: integer
format: int64
example: 1001
name:
type: string
example: World Wide Technology Championship 2026
date:
type: string
format: date-time
description: Scheduled start of the first round
status:
type: string
enum:
- pending
- live
- settled
- cancelled
sport:
$ref: '#/components/schemas/dto.Sport'
league:
$ref: '#/components/schemas/dto.League'
bookmakerCount:
type: integer
description: 'How many bookmakers you can request in /outrights/odds currently price this outright: any bookmaker with a current price for at least one golfer counts.'
example: 40
dto.Sport:
type: object
properties:
name:
type: string
slug:
type: string
controllers.ErrorResponse:
type: object
properties:
error:
type: string
example: Error message
dto.OutrightResultRow:
type: object
properties:
label:
type: string
example: Andrew Novak
participantId:
type: integer
format: int64
example: 991570904131
position:
type:
- integer
- 'null'
description: Final position; shared by tied golfers; null for cut, withdrawn and disqualified
example: 1
tied:
type: boolean
madeCut:
type:
- boolean
- 'null'
description: null when the event has no cut, or the golfer withdrew before round 1
status:
type: string
enum:
- finished
- cut
- withdrawn
- disqualified
dto.League:
type: object
properties:
name:
type: string
slug:
type: string
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