Skip to content
Live Tennis API Free API key ↗
Menu
Tennis market prices

Tennis odds API: match-winner market prices

Live Tennis API returns prediction-market match-winner quotes. These are probability-like values between 0 and 1, not bookmaker odds or an official line. Prices can lag live scores.

A price of 0.62 reads as an implied probability of 62 percent, and decimal odds are 1 divided by the price. That conversion describes the quoted value. It does not turn a market quote into a forecast or a promise about the match result.

Reading a price

The side field identifies the player's outcome: 1 for the first player and 2 for the second. Our match-to-market mapping sets this order. Do not infer it from how a venue displays its players.

bid, ask, mid and spread describe the quote for that side. Preserve null values in your application. A missing bid or ask does not mean a price of zero.

price_source names the feed category. timestamp is when we observed the quote in UTC, not when a venue published it. Read synthetic before treating the spread as an observed order book.

Pre-match ticks can be synthetic. They use the observed midpoint with estimated bid and ask values, and carry synthetic: true by design. A false value means real top-of-book data. A null value means the origin is unknown. Synthetic or unknown ticks should not be treated as an executable book.

Ticks follow market events. Quiet markets write nothing, and a stream outage can produce synthetic fallback quotes. The score feed and price feed have separate observations, so a newer score does not imply a newer price.

Price endpoints on PRO and up

All four endpoints require the PRO plan or above. Choose the response shape that fits your application, then check pricing for access and limits.

Use cursor paging to read older ticks for a finished match. The minutes filter looks back from now. A match without a mapped market has no price ticks, and the price endpoints return a no-market response.

This request uses a match ID. Set the environment variable KEY to your API key. The response below reproduces the example in the documentation.

curl -H "X-API-Key: $KEY" \
  "https://api.livetennisapi.com/api/public/v1/markets/17464/prices?limit=3"
{
  "id": 12986,
  "question": "Liege: Andres Santamarta vs Gilles Arnaud Bailly",
  "status": "active", "volume": 148097.41, "liquidity": 298353.79,
  "end_date": null,
  "prices": [
    { "side": 2, "bid": 0.999, "ask": null, "mid": 0.9995, "spread": null,
      "price_source": "prediction_market", "synthetic": false,
      "timestamp": "2026-07-06T19:45:58Z" },
    { "side": 1, "bid": null, "ask": 0.001, "mid": 0.0005, "spread": null,
      "price_source": "prediction_market", "synthetic": false,
      "timestamp": "2026-07-06T19:45:58Z" }
  ]
}

Measured market coverage

Measured 2026-09-23: share of singles matches completed in the prior 30 days with a mapped market. These shares describe that window, not a guarantee for a future fixture.

Share of matches with a mapped market, measured 2026-09-23
TourShare
WTA94.1%
Challenger90.5%
ITF79.1%
ATP71.9%

What this is not

These are prediction-market quotes, not bookmaker odds and not an official line. Prices can lag live scores. Match results describe the tennis outcome, while each market's rules determine settlement.

Read the tennis odds documentation for response details and the tennis odds API guide for a longer walkthrough. Our prediction markets page connects match state with market rules. Start with a free API key to inspect live scores, then choose PRO or above for prices.

Last updated 13 November 2026.