コンテンツにスキップ

chunirec互換API

chunirecとの互換性を持つエンドポイントです。/v1 と同様にAPIトークン認証を使用します。

WORLD’S ENDを除く全楽曲をchunirec互換形式で取得します。

リクエスト:

GET /compat/chunirec/2.0/music/showall
Authorization: Bearer <APIトークン>

レスポンス: 200 OK

[
{
"meta": {
"id": "e9e66c56cb8388e9",
"title": "GEMINI -C-",
"genre": "ORIGINAL",
"artist": "Tatsh",
"release": "2016-03-17",
"bpm": 180
},
"data": {
"BAS": {
"level": 4,
"const": 4,
"maxcombo": 549,
"is_const_unknown": false
},
"ADV": {
"level": 7,
"const": 7,
"maxcombo": 769,
"is_const_unknown": false
},
"EXP": {
"level": 11,
"const": 11.3,
"maxcombo": 1319,
"is_const_unknown": false
},
"MAS": {
"level": 14,
"const": 14.2,
"maxcombo": 1587,
"is_const_unknown": false
}
}
}
]
フィールド型説明
[].meta.idstring楽曲のID
[].meta.titlestring楽曲名
[].meta.genrestring | nullジャンル名
[].meta.artiststringアーティスト名
[].meta.releasestring | nullリリース日(YYYY-MM-DD 形式)
[].meta.bpmnumber | nullBPM
[].data.BASobject | nullBASIC譜面
[].data.ADVobject | nullADVANCED譜面
[].data.EXPobject | nullEXPERT譜面
[].data.MASobject | nullMASTER譜面
[].data.ULTobject | nullULTIMA譜面
[].data.*.levelnumber表記レベル(.0または.5刻み)
[].data.*.constnumber譜面定数
[].data.*.maxcombonumber | nullノーツ数
[].data.*.is_const_unknownboolean譜面定数が未確定の場合 true

譜面が存在しない難易度は null になります。


指定された1楽曲の情報をchunirec互換形式で取得します。

リクエスト:

GET /compat/chunirec/2.0/music/show?id=e9e66c56cb8388e9
Authorization: Bearer <APIトークン>

クエリパラメータ:

パラメータ型必須説明
idstring必須楽曲のID(16文字)

レスポンス: 200 OK

{
"meta": {
"id": "e9e66c56cb8388e9",
"title": "GEMINI -C-",
"genre": "ORIGINAL",
"artist": "Tatsh",
"release": "2016-03-17",
"bpm": 180
},
"data": {
"BAS": {
"level": 4,
"const": 4,
"maxcombo": 549,
"is_const_unknown": false
},
"ADV": {
"level": 7,
"const": 7,
"maxcombo": 769,
"is_const_unknown": false
},
"EXP": {
"level": 11,
"const": 11.3,
"maxcombo": 1319,
"is_const_unknown": false
},
"MAS": {
"level": 14,
"const": 14.2,
"maxcombo": 1587,
"is_const_unknown": false
}
}
}

フィールドの詳細は GET /compat/chunirec/2.0/music/showall を参照してください。

エラー:

コードHTTP説明
validation_failed400クエリパラメータ id が未指定です
song_not_found404指定された楽曲が見つかりません

指定したユーザーの通常譜面のプレイ済みレコードを、chunirec互換形式で取得します。未プレイ譜面とWORLD’S END譜面は含まれません。

リクエスト:

GET /compat/chunirec/2.0/records/showall?user_name=kjumanenobikto
Authorization: Bearer <APIトークン>

クエリパラメータ:

パラメータ型必須説明
user_namestring取得対象のユーザー名。未指定の場合はAPIトークン所有者自身のレコードを返します

レスポンス: 200 OK

{
"records": [
{
"id": "6a88218b1a936bd3",
"diff": "EXP",
"level": 10,
"title": "B.B.K.K.B.K.K.",
"const": 10,
"score": 1003215,
"rating": 11.32,
"is_const_unknown": true,
"is_clear": true,
"is_fullcombo": false,
"is_alljustice": false,
"is_fullchain": false,
"genre": "VARIETY",
"updated_at": "1970-01-01T09:00:00+0900",
"is_played": true
}
]
}
フィールド型説明
recordsarray通常譜面のプレイ済みレコード一覧
records[].idstring楽曲の識別ID(16桁)
records[].diffstring難易度(BAS、ADV、EXP、MAS、ULT)
records[].levelnumber表記レベル(.0または.5刻み)
records[].titlestring楽曲名
records[].constnumber譜面定数
records[].scorenumberスコア
records[].ratingnumber単曲レーティング
records[].is_const_unknownboolean譜面定数が未確定の場合 true
records[].is_clearbooleanクリアランプが付いている場合 true
records[].is_fullcombobooleanコンボランプがFULL COMBOまたはALL JUSTICEの場合 true
records[].is_alljusticebooleanコンボランプがALL JUSTICEの場合 true
records[].is_fullchainbooleanフルチェインランプが付いている場合 true
records[].genrestringジャンル名
records[].updated_atstringレコード更新日時(YYYY-MM-DDTHH:mm:ss+0900形式)
records[].is_playedboolean常に true

エラー:

コードHTTP説明
user_not_found404ユーザーが見つかりません(非公開ユーザーを含む)

指定されたユーザーのプロフィールをchunirec互換形式で取得します。

リクエスト:

GET /compat/chunirec/2.0/records/profile?user_name=kjumanenobikto
Authorization: Bearer <APIトークン>

クエリパラメータ:

パラメータ型必須説明
user_namestring取得対象のユーザー名。未指定の場合はAPIトークン所有者自身のプロフィールを返します

レスポンス: 200 OK

{
"user_id": 0,
"player_name": "0xFF31",
"title": "Gate of Fate",
"title_rarity": "ultima",
"level": 245,
"rating": 17.46,
"rating_max": 17.46,
"classemblem": "inf",
"classemblem_base": null,
"is_joined_team": null,
"updated_at": "2026-06-22T08:39:49+09:00"
}
フィールド型説明
user_idnumber内部ユーザーIDを公開しないため常に 0
player_namestringプレイヤー名
titlestring | nullスロット1の称号
title_raritystring | nullスロット1称号のレアリティ
levelnumberプレイヤーレベル
ratingnumber | nullレーティング(小数点以下2桁で切り捨てた数値)
rating_maxnumber | null最大レーティング(現在は rating と同じ値)
classemblemstring | nullクラスエンブレム
classemblem_basestring | nullクラスエンブレムベース
is_joined_teamnullチーム参加状態(常に null)
updated_atstringプレイヤーデータの最終更新日時(RFC3339形式)

プレイヤー未連携の場合は 200 OK とJSONの null を返します。レーティング未設定の場合、rating・rating_max はともに null です。

エラー:

コードHTTP説明
user_not_found404ユーザーが見つからない、またはアクセス権のない非公開ユーザー

Deprecatedです。新規利用には GET /compat/chunirec/2.0/records/profile を使用してください。既存利用者向けに rating・rating_max を文字列で返します。それ以外のレスポンス項目とアクセス制御は records/profile と同じです。

指定されたユーザーのプロフィールをchunirec互換形式で取得します。

リクエスト:

GET /compat/chunirec/2.0/users/show?user_name=kjumanenobikto
Authorization: Bearer <APIトークン>

クエリパラメータ:

パラメータ型必須説明
user_namestring取得対象のユーザー名。未指定の場合はAPIトークン所有者自身のプロフィールを返します

レスポンス: 200 OK

{
"user_id": 0,
"player_name": "0xFF31",
"title": "Gate of Fate",
"title_rarity": "ultima",
"level": 245,
"rating": "17.46",
"rating_max": "17.46",
"classemblem": "inf",
"classemblem_base": null,
"is_joined_team": null,
"updated_at": "2026-06-22T08:39:49+09:00"
}
フィールド型説明
user_idnumber内部ユーザーIDを公開しないため常に 0
player_namestringプレイヤー名
titlestring | nullスロット1の称号
title_raritystring | nullスロット1称号のレアリティ
levelnumberプレイヤーレベル
ratingstring | nullレーティング(小数点以下2桁の文字列)
rating_maxstring | null最大レーティング(現在は rating と同じ値)
classemblemstring | nullクラスエンブレム
classemblem_basestring | nullクラスエンブレムベース
is_joined_teamnullチーム参加状態(常に null)
updated_atstringプレイヤーデータの最終更新日時(RFC3339形式)

エラー:

コードHTTP説明
user_not_found404ユーザーが見つからない、またはアクセス権のない非公開ユーザー