18+ Only  |  Gambling can be addictive — please gamble responsibly  |  Gambling Help: 1800 858 858  |  GambleAware

API reference / Racing Archive

GET /v1/racing/closing-lines/coverage

What the closing-line archive actually holds

The archive's own measurements of itself — depth, date floor, how much of it is a genuine closing line, how much has a result, and how many rows carry a contamination flag. Results are collected for Australian and New Zealand racing only, from `results_from` onward. Races in other countries appear in the archive because an Australian book priced them, and they carry closing prices but never a finish position. So `resulted_races_pct` is the share of the WHOLE archive with a result, while `settleable_races` / `settleable_resulted_pct` count only AU and NZ races that started after results collection began — the figure to read if you intend to settle against the archive. `by_category` carries `resulted_races` per code for the same reason. `finish_position_pct` is the finish-position fill rate: of the rows whose race has a result (runners marked scratched left out), the share that carry a position. AU thoroughbred and greyhound results publish every finisher's position, so those codes run near 100%; harness and NZ results name the placegetters only, so theirs is roughly the placed share of the field. `by_category` carries it per code. `consensus_close_pct` (from 2026-10-05) is the share of genuine closing lines that carry `consensus_close_prob`, the market's margin-free probability stored at the close. Rows without one belong to races where fewer than two complete-field books closed. This exists so nobody has to take a marketing number on trust before paying for a bulk pull. Every figure is computed from the table at request time. Open to every key, Free included, so you can check the archive before paying for it; the numbers describe the whole archive. Reading the rows themselves (/v1/racing/closing-lines) is a paid endpoint.

Requires X-API-Key 1 credit

Request

curl 'https://api.puntersedge.online/v1/racing/closing-lines/coverage' \
  -H 'X-API-Key: YOUR_KEY'

Parameters

This endpoint takes no parameters beyond authentication.

Responses

Status codes: 200, 401, 402, 422, 429, 500. Response bodies are JSON; the full schema is in /openapi.json.

Example response

200 application/json — this call costs 1 credit. Field names and types are as the API returns them; values are a real sample, trimmed to a few items.

{
  "archive_from": "2026-08-04T09:22:00Z",
  "archive_to": "2026-09-29T04:10:00Z",
  "rows": 1474236,
  "races": 40953,
  "bookmakers": 14,
  "is_closing_line_pct": 84.34,
  "open_is_baseline_pct": 62.13,
  "resulted_races_pct": 23.82,
  "results_from": "2026-08-15T05:53:00Z",
  "settleable_races": 10296,
  "settleable_resulted_pct": 94.69,
  "results_scope": "Results are collected for Australian and New Zealand racing only, from results_from onward. Races in other countries carry closing prices but no finish position. settleable_races counts AU and NZ races that started after results_from.",
  "venue_split_suspect_rows": 13323,
  "name_fragment_suspect_rows": 387,
  "scratched_rows": 9058,
  "finish_position_pct": 61.29,
  "by_category": [
    {
      "category": "greyhound",
      "rows": 654868,
      "races": 15309,
      "resulted_races": 5570,
      "finish_position_pct": 71.51
    },
    {
      "category": "horse",
      "rows": 514720,
      "races": 19466,
      "resulted_races": 2214,
      "finish_position_pct": 57.53
    },
    {
      "category": "harness",
      "rows": 304648,
      "races": 6178,
      "resulted_races": 1965,
      "finish_position_pct": 43.14
    }
  ]
}

Guides that use this endpoint

Related endpoints

Try it against live data

The free tier needs no credit card, and the sandbox endpoints need no key at all.

Get a free API key Quickstart
This site contains wagering-related analysis and is intended for Australian users aged 18+. Gambling involves risk. Please gamble responsibly.