リクエスト/レスポンス仕様

APIリクエストとレスポンスの形式について解説します。

HTTPメソッド

すべてのエンドポイントは POST メソッドを使用します。

POST https://dev.api.bigtime.world/v1/{endpoint}?api_key=API_KEY

リクエストヘッダー

ヘッダー名必須値説明
Content-Type必須application/jsonリクエストボディの形式
x-user-key必須YOUR_AUTH_KEY認証キー (x-user-key) — ダッシュボードで取得

リクエストパラメータ

リクエストボディはJSON形式で送信します。エンドポイントの種類によって使用するパラメータが異なります。

今週データ(t_*)

パラメータ型形式説明
racedatestringYYYYMMDD開催日(例: "20251129")
racekeystring8桁レースキー(例: "05250101")

※ racedate または racekey のいずれかを指定します。

過去データ(d_*)— /dse・/dra・/dky・/dzk・/dpd

パラメータ型形式説明
start_racedatestringYYYYMMDD期間開始日(例: "20251101")
end_racedatestringYYYYMMDD期間終了日(例: "20251130")
racekeystring8桁レースキー(例: "05250101")
limitinteger1〜50000最大取得件数(省略時 10000、上限 50000)
  • ※ start_racedate(+ 任意で end_racedate)または racekey のいずれかを指定します。end_racedate を省略すると、データベース上の最新日付までが対象になります。
  • ※ 期間指定は 365日 までです。これを超えると 400 エラーになります。
  • ※ 1リクエストの返却件数は limit で制御します(既定 10000 / 最大 50000)。長期間を取る場合は年単位などに分割してください。

マスタデータ(m_*)

エンドポイントパラメータ形式説明
/mukhorse_id12桁馬ID(例: "2328aaa95a05")
/mjkjockey_cd5桁騎手コード(例: "01234")
/mtntrainer_cd5桁調教師コード(例: "01234")

キー形式の詳細

レースキー(racekey)

8桁の数字で、レースを一意に識別します。

05250101
競馬場
(01-10)
年
(西暦下2桁)
回/日
(第N回M日)
レース番号
(01-12)

例: 05250101 = 東京競馬場(05)、2025年、第1回1日目、1R

競馬場コード

01: 札幌
02: 函館
03: 福島
04: 新潟
05: 東京
06: 中山
07: 中京
08: 京都
09: 阪神
10: 小倉

競走成績キー(resultkey)

16桁の数字で、馬の各レース出走を一意に識別します。

1910181420240210
競走馬ID(8桁)
開催日(8桁・YYYYMMDD)

例: 1910181420240210 = 競走馬ID「19101814」の2024年2月10日のレース

レスポンス形式

すべてのエンドポイントは統一されたJSON形式でレスポンスを返します。

成功レスポンス

{
  "request": {
    "racedate": "20251129"
  },
  "result": {
    "status": "success",
    "data": [
      {
        "racekey": "05250101",
        "race_name": "3歳未勝利",
        "distance": "1600",
        // ... 他のフィールド
      },
      // ... 他のレコード
    ]
  }
}

レスポンスフィールド

フィールド型説明
requestobject送信されたリクエストパラメータ
result.statusstring"success" または "error"
result.dataarray取得したレコードの配列

エラーレスポンス

{
  "error": {
    "code": "INVALID_PARAMETER",
    "message": "racedate または racekey を指定してください"
  }
}

データ型について

nullable フィールド

多くの数値フィールドは null になる可能性があります。 データが存在しない場合(例: 未発表のオッズ、未計測の調教タイム)は null が返されます。

日付・時刻

日付は YYYYMMDD 形式の文字列、 時刻は HHMM 形式の文字列で返されます。

コード値

天候、馬場状態、脚質などのコード値は文字列で返されます。 各コードの意味は各エンドポイントのドキュメントを参照してください。

リクエスト例

日付指定で取得

curl -X POST "https://dev.api.bigtime.world/v1/tra?api_key=API_KEY" \
  -H "Content-Type: application/json" \
  -H "x-user-key: YOUR_AUTH_KEY" \
  -d '{"racedate": "20251129"}'

レースキー指定で取得

curl -X POST "https://dev.api.bigtime.world/v1/tky?api_key=API_KEY" \
  -H "Content-Type: application/json" \
  -H "x-user-key: YOUR_AUTH_KEY" \
  -d '{"racekey": "05250101"}'

期間指定で取得(過去データ)

curl -X POST "https://dev.api.bigtime.world/v1/dse?api_key=API_KEY" \
  -H "Content-Type: application/json" \
  -H "x-user-key: YOUR_AUTH_KEY" \
  -d '{"start_racedate": "20251101", "end_racedate": "20251130"}'

注意事項

  • •過去データの期間指定は最大1ヶ月までを推奨します。大量データの取得はレスポンスが遅くなる可能性があります。
  • •今週データは木曜日の情報更新後から取得可能になります。
  • •直前情報(/tpd)はレース当日の朝以降に更新されます。
  • •レート制限があります。短時間での大量リクエストは避けてください。