Equibase Scraper - Horse Racing Entries & Results
Pricing
from $0.80 / 1,000 equibase scraper - horse racing entries & results
Equibase Scraper - Horse Racing Entries & Results
Scrape Equibase horse racing data: race entries with horse, jockey, trainer, post position and morning line, plus race results with order of finish, win-place-show payoffs, exotic payoffs, also-rans and scratches. No login.
Pricing
from $0.80 / 1,000 equibase scraper - horse racing entries & results
Rating
0.0
(0)
Developer
Vitalii Bondarev
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Collect North American Thoroughbred racing data from Equibase, the official data source of the sport, without a login or an API key. The Actor reads the public Equibase mobile pages, which are plain HTML and are not behind the bot-challenge wall that guards the main site's entry and result pages, so it runs fast and cheaply with ordinary HTTP requests.
What it collects
Pick one of two result types. Every record is one flat JSON row.
- Race entries - one row per horse declared in a race: track, date, race number, post time, race conditions, program number, post position, horse name, jockey, trainer and the morning line.
- Race results - one row per horse in a finished race: the top three finishers with finish position and win, place and show payoffs for a $2 bet, the exotic payoffs (exacta, trifecta, superfecta, daily double, Pick N and so on) attached to the winner's row, the also-ran horses and the scratched horses.
Only fields that Equibase really publishes on these pages are returned. A value that is not on the page is left out, never guessed. Horse career profiles, owner, breeder, sire and dam are not available on the public pages and are not part of this Actor.
Input
| Field | Meaning |
|---|---|
resultType | entries or results. |
tracks | Track codes (BEL, KEE, SA) or names (Belmont Park). Empty means every track with a card. |
date | One race day, YYYY-MM-DD. |
dateFrom, dateTo | Inclusive date range. |
maxDays | Race days read per track (default 1). Equibase lists about the last five days of results and the next few days of entries. |
maxResults | Maximum number of records (default 50). The run stops as soon as it is reached. |
proxyConfiguration | Optional. Public pages normally work without a proxy. |
Example input:
{"resultType": "entries","tracks": ["BEL"],"maxDays": 1,"maxResults": 50}
Example output
Entry row:
{"trackCode": "BEL","track": "Belmont Park","raceDate": "2026-10-15","raceNumber": 3,"postTime": "2:16","raceType": "Allowance Optional Claiming","programNumber": "1","postPosition": 1,"morningLine": "9/2","horseName": "Sherlock's Jewel","jockey": "Kendrick Carmouche","trainer": "Joe Sharp","url": "https://mobile.equibase.com/html/entriesBEL2026101503.html","scrapedAt": "2026-10-14T08:00:00+00:00"}
Result row (winner):
{"trackCode": "BEL","track": "Belmont Park","raceDate": "2026-10-11","raceNumber": 7,"postTime": "4:33","raceName": "Starter Allowance","outcome": "finished","finishPosition": 1,"programNumber": "1","horseName": "Our Preferred Pal","winPayoff": 25.64,"placePayoff": 11.9,"showPayoff": 4.88,"exotics": [{"betType": "Exacta", "combination": "1-4", "payoff": 65.34}]}
Price
You pay per result: each dataset item (one horse row) is billed by the platform at the price shown on the Actor page, and nothing else. Use maxResults to cap the cost of a run.
Notes
The Actor waits half a second between requests to stay polite. Post times are shown as Equibase prints them, in the track's local time.