Discover/Netkeiba API
live

Netkeiba APIrace.netkeiba.com

Access JRA race listings, race cards with runners/jockeys/weights, and official results with lap splits, payouts, and finishing order from netkeiba.com.

Endpoint health
verified 2h ago
list_races
get_race_card
get_race_result
3/3 passing latest checkself-healing
Endpoints
3
Verified account required
Updated
3h ago

What is the Netkeiba API?

The race.netkeiba.com API exposes 3 endpoints covering JRA thoroughbred racing data from netkeiba.com. Use list_races to retrieve every race held on a given date grouped by meeting, get_race_card to pull declared runners with frame numbers, weights, equipment codes, and prize money for any 12-digit race_id, and get_race_result to fetch official finishing order, times, margins, lap splits, corner passing order, and pari-mutuel payouts for completed races.

This call costs1 credit / call— charged only on success
Try it
Calendar date of the racing day as an ISO date YYYY-MM-DD. JRA races are normally held on Saturdays, Sundays and holidays.
api.parse.bot/scraper/48ae249f-a709-4c04-aaa5-71fafae286ae/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/48ae249f-a709-4c04-aaa5-71fafae286ae/list_races?date=2026-09-06' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 3 totalmissing one? ·

Lists every JRA race held on one calendar date, grouped by meeting (racecourse day). Each meeting carries its venue, meeting round/day, weather code and turf/dirt track conditions; each race carries its 12-digit race_id (the key accepted by get_race_card and get_race_result), race number, name, grade, start time, surface, distance and declared field size. A date with no racing returns an empty meetings list (race_count 0), which is a valid result. One request per call; no pagination.

Input
ParamTypeDescription
daterequiredstringCalendar date of the racing day as an ISO date YYYY-MM-DD. JRA races are normally held on Saturdays, Sundays and holidays.
Response
{
  "type": "object",
  "fields": {
    "date": "the requested ISO date",
    "meetings": "array of meetings held that day; each has kaisai_id, meeting (site label), venue, meeting_round, meeting_day, weather_code (site weather icon code), turf_condition, dirt_condition and races",
    "race_count": "total number of races across all meetings",
    "meetings[].races": "array of races: race_id (12-digit key for get_race_card / get_race_result), race_number, race_name, grade (G1/G2/G3/OP or null), grade_code (raw site grade icon code, null for ordinary races), start_time (HH:MM), surface (turf/dirt/jump), distance_m, headcount, has_result (true when the site already links a result page)"
  },
  "sample": {
    "data": {
      "date": "2026-09-06",
      "meetings": [
        {
          "races": [
            {
              "grade": null,
              "race_id": "202606040201",
              "surface": "jump",
              "headcount": 7,
              "race_name": "3歳以上障害未勝利",
              "distance_m": 2880,
              "grade_code": null,
              "has_result": true,
              "start_time": "10:05",
              "race_number": 1
            },
            {
              "grade": "G2",
              "race_id": "202606040211",
              "surface": "turf",
              "headcount": 11,
              "race_name": "紫苑S",
              "distance_m": 2000,
              "grade_code": "2",
              "has_result": true,
              "start_time": "15:45",
              "race_number": 11
            }
          ],
          "venue": "中山",
          "meeting": "4回 中山 2日目",
          "kaisai_id": "2026060402",
          "meeting_day": 2,
          "weather_code": "03",
          "meeting_round": 4,
          "dirt_condition": "不",
          "turf_condition": "重"
        }
      ],
      "race_count": 36
    },
    "status": "success"
  }
}

About the Netkeiba API

Race Listings by Date

list_races takes a single date parameter in ISO YYYY-MM-DD format and returns all JRA meetings scheduled that day. Each meeting object includes venue, meeting_round, meeting_day, weather_code, and separate track-condition codes for turf and dirt. Nested inside each meeting is an array of races, each carrying a race_id (the 12-digit key used by the other two endpoints), race_number, race_name, grade designation (G1/G2/G3/OP or null), and distance. The top-level race_count field gives the total across all meetings that day. JRA races run primarily on Saturdays and Sundays, so requests for weekday dates will typically return empty meeting arrays.

Race Cards (Shutuba)

get_race_card accepts a race_id and returns a full pre-race entry list. The race header includes surface (turf, dirt, or jump), distance_m, weather, grade, venue, meeting, headcount, and prize_money. Each row in the runners array covers frame_number, horse_number, horse_id, horse_name, horse marks (e.g. 地/外 for domestic/international), equipment (array of codes — B indicates blinkers), jockey_id, jockey_name, trainer_id, trainer_name, age, sex, weight_carried_kg, and the horse's declared weight_kg. Weather and track condition fields may be null before race day.

Race Results

get_race_result returns the official outcome for a completed race. The results array is ordered by finish_position (integer) and also carries finish_status — the site's raw Japanese text, which covers non-finishers such as 取消 (scratch), 除外 (exclusion), and 中止 (withdrawal). Per-runner fields include time, margin, popularity (market rank at race time), and winner_odds. The payouts array lists each bet type with bet_type_code, bet_type label, and per-combination numbers, payout_yen, and popularity. Lap timing is in lap_times, which contains a pace label (S/M/H — null for jump races) and a splits array of objects with distance_m, cumulative_time, and lap_time. Corner passing order is also included. Jump races omit lap splits.

Reliability & maintenanceVerified

The Netkeiba API is a managed, monitored endpoint for race.netkeiba.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when race.netkeiba.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official race.netkeiba.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
2h ago
Latest check
3/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a JRA race-day dashboard showing all meetings, venues, and graded races for a given date using list_races
  • Populate a horse racing form guide with jockey, trainer, weight, and equipment data from get_race_card
  • Analyse pace scenarios by processing lap_times.splits and pace labels from get_race_result
  • Calculate historical payout distributions across bet types (win, place, exacta, trio) using the payouts array
  • Track jockey or trainer performance by aggregating finish_position and winner_odds across multiple race results
  • Detect non-finishers and scratches by filtering finish_status values such as 取消 and 中止 in result rows
  • Cross-reference pre-race market rank (popularity) with actual finishing position to study market efficiency
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does netkeiba.com have an official developer API?+
No. Netkeiba does not publish a public developer API or documented data feed. This Parse API is the structured programmatic interface for accessing that data.
What does get_race_result return for horses that did not finish?+
Non-finishers appear in the results array with a finish_status field set to the site's raw Japanese text: 取消 (late scratch), 除外 (exclusion before the race), or 中止 (race abandonment by the rider). The finish_position field for these runners will reflect their listed position or a non-numeric status depending on the official record.
Does the API cover NAR (regional/local Japanese racing) in addition to JRA?+
Not currently. The API covers JRA central racing only — the meetings, race cards, and results returned by list_races, get_race_card, and get_race_result reflect JRA fixtures. You can fork this API on Parse and revise it to add an endpoint targeting NAR regional racing data.
Are historical race results available, or only recent races?+
The endpoints accept any valid 12-digit race_id, and netkeiba.com holds an extensive historical archive. list_races will return an empty or minimal response for dates with no JRA fixture, but get_race_result should work for any completed race whose race_id is known. The practical depth of the archive depends on what netkeiba.com retains.
Does the API return horse speed ratings, past performance lines, or breeding data?+
Not currently. The API covers race-day data: meeting listings, declared runners with weights and equipment, and official results with times, margins, and payouts. Historical form lines, speed figures, and pedigree data are not included. You can fork this API on Parse and revise it to add endpoints that retrieve per-horse past performance or breeding information.
Page content last updated . Spec covers 3 endpoints from race.netkeiba.com.
Related APIs in SportsSee all →
racing.hkjc.com API
Access comprehensive horse racing data from the Hong Kong Jockey Club. Retrieve race results, detailed horse profiles including pedigree and form records, jockey and trainer season rankings, upcoming race meeting fixtures, and horse search by name.
racenet.com.au API
Access data from racenet.com.au.
form.tab.com.au API
Access data from form.tab.com.au.
racingtv.com API
Access detailed information about UK and international horse racing meetings, including complete racecards, runner details, Timeform analysis, pace bias data, and draw commentary. Plan your racing strategy or stay informed on upcoming races with comprehensive meeting schedules and expert insights all in one place.
racingpost.com API
Access comprehensive horse racing data from Racing Post, including daily racecards, meeting schedules, race results, and detailed horse profiles with form history, stats, and pedigree.
attheraces.com API
Access comprehensive horse racing intelligence from At The Races, including detailed racecards, draw statistics, pace analysis, and form scan data to inform your betting decisions. Get all the performance metrics and positional data you need to analyze races and horses in one place.
neds.com.au API
Get up-to-date horse racing information from Neds, including upcoming races, event details, and past results. View which races are next to jump and access comprehensive race data all in one place.
tab.com.au API
Access live horse racing meetings, race cards, fixed odds, and results from TAB Australia. Retrieve real-time sports betting information and racing data, including upcoming races, current odds, and historical race outcomes.