reiwa互換API
reiwa互換APIは外部ツールとの互換性を持つエンドポイントです。CHUNITHMのバージョン、楽曲・譜面データを取得できます。APIトークン認証を使用します。
GET /compat/reiwa/1/chunirec_all.json
Section titled “GET /compat/reiwa/1/chunirec_all.json”通常楽曲とWORLD’S END楽曲を楽曲単位の配列で返します。削除済み楽曲は除外します。
meta.idはchunisupportの楽曲識別子で、chunirecの楽曲IDとは異なります。
同名の通常楽曲とWORLD’S END楽曲は別要素として返します。
- 認証: APIトークン必須。
Authorization: Bearer <token>を使用します。 - クエリパラメータ: なし。
- レスポンス: HTTP 200、トップレベル配列。
- エラー形式・レート制限・メンテナンス制御: 他のreiwa互換APIと同じです。クライアント切断はHTTP 499です。
| 項目 | 型 | 通常楽曲 | WORLD’S END |
|---|---|---|---|
id | string | 楽曲識別子 | 楽曲識別子 |
title | string | 保存された曲名 | 保存された曲名の末尾に 【属性】 を付加 |
genre | string | マスタのジャンル名。POPS & ANIME は POPS&ANIME に変換 | WORLD'S END |
artist | string | アーティスト名 | アーティスト名 |
release | string | リリース日を YYYY-MM-DD で表現 | 同左 |
bpm | number | BPM | BPM |
img | string | 拡張子なしのジャケット画像識別子 | 項目を省略 |
idx | string | 公式インデックス。数値化せず文字列で返す | 項目を省略 |
未設定の文字列は空文字、未設定の数値は0を返します。nullは返しません。
WORLD’S ENDの属性は譜面に保存された値を使用し、星数はタイトルに含めません。
属性が未設定または空文字の場合は、属性の括弧を付けず曲名のみを返します。
通常楽曲は存在する難易度の BAS、ADV、EXP、MAS、ULT を返します。
存在しない難易度は項目ごと省略します。空オブジェクトや null は返しません。
WORLD’S ENDは WE のみを返します。
| 各難易度の項目 | 型 | 通常譜面 | WORLD’S END |
|---|---|---|---|
level | number | 既存互換APIと同じ表記レベル。定数の小数部が0.5未満なら整数、0.5以上なら整数部+0.5 | 0 |
const | number | 保存された譜面定数 | 0 |
maxcombo | number | ノーツ数。未設定なら0 | ノーツ数。未設定なら0 |
is_const_unknown | number | 定数が推定値なら1、それ以外は0 | 常に0 |
is_const_unknownはbooleanではなく整数の0または1です。
WORLD’S ENDの level は星数ではありません。
[ { "meta": { "id": "0000000000000001", "title": "通常楽曲", "genre": "ORIGINAL", "artist": "アーティスト", "release": "2026-10-01", "bpm": 180, "img": "jacket_identifier", "idx": "100" }, "data": { "MAS": { "level": 14.5, "const": 14.7, "maxcombo": 1000, "is_const_unknown": 0 } } }, { "meta": { "id": "0000000000000002", "title": "WORLD'S END楽曲【狂】", "genre": "WORLD'S END", "artist": "アーティスト", "release": "2026-10-01", "bpm": 180 }, "data": { "WE": { "level": 0, "const": 0, "maxcombo": 1500, "is_const_unknown": 0 } } }]通常楽曲を先に、WORLD’S END楽曲を後に返します。 通常楽曲は公式インデックスを数値として昇順に並べ、同値の場合は楽曲識別子の昇順に並べます。 公式インデックスが空または数値として解釈できない通常楽曲は、有効なインデックスを持つ通常楽曲の後に楽曲識別子の昇順で並べます。 WORLD’S END楽曲は楽曲識別子の昇順で並べます。 オブジェクト内のキーの順序は契約に含めません。
GET /compat/reiwa/1/chunithm_versions.json
Section titled “GET /compat/reiwa/1/chunithm_versions.json”リリース済みのCHUNITHMバージョン一覧を取得します。
リクエスト:
GET /compat/reiwa/1/chunithm_versions.jsonAuthorization: Bearer <APIトークン>レスポンス: 200 OK
[ { "version": "CHUNITHM", "release": "2015-07-16" }, { "version": "CHUNITHM PLUS", "release": "2016-02-04" }]| フィールド | 型 | 説明 |
|---|---|---|
version | string | CHUNITHMのバージョン名 |
release | string | リリース日(YYYY-MM-DD) |
リリース日の昇順で返します。
GET /compat/reiwa/1/chunithm_record/original
Section titled “GET /compat/reiwa/1/chunithm_record/original”WORLD’S ENDを除く全楽曲の通常譜面情報を、譜面単位のフラットな配列で取得します。削除済み楽曲は含まれません。
リクエスト:
GET /compat/reiwa/1/chunithm_record/originalAuthorization: Bearer <APIトークン>レスポンス: 200 OK
[ { "title": "B.B.K.K.B.K.K.", "artist": "nora2r", "img": "d739ba44da6798a0", "genre": "VARIETY", "const": 4, "level": 4, "diff": "BAS", "notes": 333, "unknown": 0, "chunirec_id": "6a88218b1a936bd3", "idx": "3", "bpm": 170, "release": 14370588, "version": "" }]| フィールド | 型 | 説明 |
|---|---|---|
title | string | 楽曲タイトル |
artist | string | アーティスト名 |
img | string | ジャケット画像識別子 |
genre | string | ジャンル名(POPS&ANIME は POPS & ANIME に変換) |
const | number | 譜面定数 |
level | number | 表記レベル(.5区切り。例: 13+ → 13.5) |
diff | string | 難易度(BAS、ADV、EXP、MAS、ULT) |
notes | number | ノーツ数 |
unknown | number | 譜面定数不明フラグ(0: 既知、1: 不明) |
chunirec_id | string | 楽曲の内部ID |
idx | string | 公式インデックス |
bpm | number | BPM |
release | number | リリース日のJST 0時Unixタイムスタンプ ÷ 100 |
version | string | バージョン名から CHUNITHM を除去した名称(初代CHUNITHMは空文字) |
idx の数値昇順、次に難易度順(BAS → ADV → EXP → MAS → ULT)で返します。