Keirin (Japan Track Cycling) — Race Cards, Results & Payouts avatar

Keirin (Japan Track Cycling) — Race Cards, Results & Payouts

Pricing

from $20.00 / 1,000 race analyzeds

Go to Apify Store
Keirin (Japan Track Cycling) — Race Cards, Results & Payouts

Keirin (Japan Track Cycling) — Race Cards, Results & Payouts

Japanese keirin (track cycling) as clean English JSON: race cards with rating points, riding style, S/B and winning-move counts, gear ratio, plus finish order, kimarite and every payout pool. No login, one call per race. From $0.02 — no subscription. 競輪の出走表・結果・払戻を1コールで。

Pricing

from $20.00 / 1,000 race analyzeds

Rating

0.0

(0)

Developer

h ichi

h ichi

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Structured, English-normalized data for keirin — Japan's public-gambling track cycling, racing nearly 365 days a year across 43 velodromes with roughly ¥1 trillion in annual betting turnover. Data comes on demand from the public netkeirin pages (no login; robots.txt allows all). One call per race returns:

  • Race card — every rider (fields are 7 or 9 strong depending on the meeting) with rating points (競走得点), riding style (nige / makuri / oikomi), S and B counts, winning-move counts (nige / makuri / sashi / mark), finish-position counts (1st / 2nd / 3rd / unplaced), win, top-2 and top-3 rates, gear ratio, prefecture, age, class (S1/S2/A1…), graduating class, and the rider's own pre-race comment
  • Result (once the race is official) — finish order with bracket and car number (they are not the same in keirin), margin, last-lap time, the winning move (kimarite), S/B flags, and every payout pool with popularity rank: quinella, exacta, wide, trio, trifecta — plus bracket quinella/exacta when the meeting offers them
  • Race metadata — grade (GI/GII/GIII/FI/FII), event title, race name, start and betting-close time, distance, laps, and the velodrome's bank length and home straight

Why this exists

The official keirin.jp portal disallows crawling of its race pages, and there is no free public API for keirin cards or payouts (the one paid voting API was withdrawn in 2024). This actor is the on-demand structured view of the public netkeirin pages: race-day cards and same-day results, in one call, with English field names. Nothing is stored between runs.

Built for betting-model developers, data scientists and analytics tools — keirin is one of the most feature-rich Japanese racing datasets, and every column a keirin model normally starts from is in the card.

Pricing — from $0.02 per race, no subscription

EventPriceWhen
Race summary (card + result + payouts)$0.02Per race that returned data
Individual rider entry$0.002Only if you enable Include individual entries

A default run (1 race) costs $0.02. Races that do not exist (day off, shorter card, card not published yet) come back as status: "no_data" and are never charged.

Input

FieldExampleNotes
velodrome"35"Required. 2-digit velodrome code: 11=Hakodate … 35=Hiratsuka … 87=Kumamoto (pick from the dropdown)
date"20260630"Optional. Race day (YYYYMMDD or YYYY-MM-DD). Leave it empty and the actor uses this velodrome's latest race day
races[1]Race numbers 1-12; empty = the whole card
includeResulttrueFetch result/payouts per race
includeIndividualEntriesfalsePush each rider as its own record

The 12-digit netkeirin race_id is simply YYYYMMDD + velodrome code + race number, so the actor never has to search for races.

Latest race day (default) — with date left empty the actor reads the velodrome's own schedule page: the meeting in progress if there is one, otherwise the most recent finished meeting, and takes the newest day that has a published card. That costs one extra request and keeps a saved input working forever, which a hard-coded date would not — netkeirin only keeps about a month of history.

Output example (one race)

{
"type": "race_summary",
"raceId": "202606303501",
"date": "2026-06-30",
"velodromeCode": 35,
"velodrome": "Hiratsuka",
"raceNumber": 1,
"grade": "FI",
"eventTitle": "HPCJC×ウィンチケット杯",
"raceName": "A級 予選",
"startTime": "15:51",
"distanceM": 1625,
"laps": 4,
"bankLengthM": 400.0,
"homeStraightM": 54.2,
"riders": 7,
"status": "finished",
"entries": [
{"bracket": 1, "carNumber": 1, "playerId": 15893, "name": "岩辺陸",
"prefecture": "静岡", "age": 21, "period": 127, "classGrade": "A2",
"ratingPoints": 91.5, "style": "逃", "styleEn": "nige (front runner)",
"sCount": 7, "bCount": 9,
"winningMoves": {"nige": 3, "makuri": 8, "sashi": 2, "mark": 3},
"finishCounts": {"first": 8, "second": 8, "third": 4, "unplaced": 4},
"winPct": 33.3, "top2Pct": 66.6, "top3Pct": 83.3,
"gearRatio": 3.92, "comment": "自力で。"}
],
"result": {
"placings": [
{"position": 1, "bracket": 4, "carNumber": 4, "playerId": 15548,
"name": "白井優太朗", "margin": null, "lastLapSeconds": 11.4,
"kimarite": "捲", "kimariteEn": "makuri (outside sweep)",
"tookS": false, "tookB": false}
],
"payouts": [
{"betType": "quinella", "betTypeJa": "2車複", "combination": "3-4",
"payoutJpy": 7500, "popularity": 15},
{"betType": "trifecta", "betTypeJa": "3連単", "combination": "4>3>1",
"payoutJpy": 20090, "popularity": 54}
]
}
}

Use cases

  • Prediction models — pull the full feature set (rating points, style, winning-move mix, gear ratio) before the race and the result after, without scraping a disallowed site
  • Payout research — trifecta / trio payout distributions per velodrome, bank length or grade in a handful of calls
  • Dashboards & bots — same-day results with kimarite and last-lap times, as JSON

Notes & limits

  • A field is 7 or 9 riders depending on the meeting, and the bracket number is not the car number — both are returned separately
  • Bet types vary by meeting (bracket pools only appear in 9-rider fields), so every payout row is returned rather than a fixed list
  • status is finished (card + result), not_run_yet (asked for the result, race not official yet), result_not_requested (includeResult was off) or no_data (no such race — free)
  • If the result page itself fails, the race card is still returned and resultError carries the reason — you never lose a card you paid for
  • Odds pages are not server-rendered and are out of scope for v1
  • Read-only and throttled (~1 request / 1.5 s). No login, no personal data beyond the public rider register, nothing stored between runs

日本語ガイド

競輪(netkeirin)の出走表・結果・全賭式払戻を1コールで構造化JSONにして返す Actor です。

  • 概要: レース単位で、出走表(7車立て/9車立て可変。競走得点・脚質・S/B・決まり手別回数・着別度数・勝率/2連対率/3連対率・ギヤ倍数・府県/年齢/期別/級班・選手コメント)と、確定後は着順(枠番と車番を別々に・着差・上り・決まり手・S/B)と全賭式の払戻(人気順位付き)を英語フィールド名で返します。
  • 使い方: 必須は velodrome(2桁の競輪場コード。35=平塚、45=豊橋 など全43場をプルダウンから選択)だけです。races を空にするとその日の全レースを取得します。
  • 開催日の自動解決: date省略可です。空(または auto)にすると、その競輪場の最新開催日(開催中ならその節、節間なら直近に終了した節)を日程ページから自動で解決します(追加リクエスト1回)。netkeirin の履歴保持は約1ヶ月のため、固定日付を保存しておくといずれ取得できなくなります。特定の日を指定したいときだけ date(YYYYMMDD)を入れてください。
  • 料金: レースサマリー1件 $0.02。個別選手レコードが必要な場合のみ includeIndividualEntries を ON(+$0.002/車)。開催のない日・存在しないレース番号は no_data として返り、課金されません。 サブスクリプション不要です。
  • status の値: finished(結果まで確定)/ not_run_yet(結果を要求したが未確定)/ result_not_requested(includeResult が OFF)/ no_data(該当レースなし・無課金)。結果ページだけ失敗した場合も出走表は返り、理由が resultError に入ります。
  • 注意: 公式 keirin.jp は robots.txt でレースページのクロールを禁じているため一切アクセスしません。オッズは非SSRのため v1 対象外です。