Princess — Public REST API
夢の世界へご招待なのです
Public RESTful Application Programming Interface Series.
開発者向けの API を提供しています。
リクエスト / レスポンスの共通仕様
- API の成功・失敗は HTTP のステータスコードにより判別できます。成功した場合には必ず 200 が返ります。
- レスポンスは整形された JSON です。クエリに
prettyPrint=false
を指定すると整形されない状態で取得でき、レスポンスが高速になります。 - リクエストパラメータには、文字列、整数、浮動小数点数、真偽値、時刻、列挙型の 6 種類の型と、その配列型があります。
- 真偽値は
true
またはfalse
で、それ以外の文字列は指定できません。値を省略した場合はtrue
とみなされます。 - 時刻は Ruby の
Time.parse
で受理できるあらゆる表記を受け付けますが、2022-02-04T01:23:45+09:00
などのように ISO 8601 形式で指定すると確実です。また、now
を指定すると現在時刻と解釈します。 - 配列型のクエリパラメータは、複数の値をカンマ区切りで指定することができます。また、整数の配列型は
1-10,15,20
のように範囲指定も可能です。 - なお、配列型のクエリパラメータは、Rack の振舞いに従って
idolId[]=21&idolID[]=22
などのような方法でも指定可能です。 - 列挙型はイベントやカードのタイプなどに用いられます。ドキュメントに示している文字列のほか、対応する整数でも指定可能です。
- レスポンスの JSON には 32bit に収まらない巨大な整数が含まれることがあります。JSON の処理系によっては、このような整数を parse する際に精度が落ちる可能性があります。
- 一部の API のレスポンスヘッダには ETag が含まれます。If-None-Match と組み合わせることで、キャッシュを活用した高速化が可能です。詳細については MDN のドキュメントを参照してください。
注意事項
- 本 API はあくまで善意による利用を想定しております。特定のアイドルを担当するプロデューサーさんや特定のラウンジに所属するプロデューサーさんが快く思わないようなデータの利用はご遠慮ください。
- 本 API を利用した公開 Web サービス(Twitter などの bot を含む)などを運営する場合には、情報源が matsurihi.me であることの明記をお願いします。
- 短時間に多数のリクエストを行うと 429 Too Many Requests を返します。
- Princess には現在 v1 と v2 の 2 つのバージョンが存在します。v1 の API は非推奨(deprecated)です。v1 の API については今後機能の追加などは行われず、将来的には廃止されます。
シアターデイズ エンドポイント一覧
ベースのパスは、v2 は /api/mltd/v2/
、v1 は /mltd/v1/
です。
が付された API は海外版に対応しています。韓国語版、繁体字版のベースパスはそれぞれ /api/mltd/v2/ko/
および /api/mltd/v2/zh/
です。日本語版は同様に /api/mltd/v2/ja/
からも利用できます。v1 の一部 API についても同様に海外版に対応しています。
バージョン関連 API
最新のアプリ・アセットバージョンの取得
最新のアプリバージョン、アセットバージョンを取得します。
GET https://api.matsurihi.me/api/mltd/v2/version/latest
レスポンス
レスポンスボディ
Object app アプリのバージョン情報
String version バージョン
DateTime updatedAt 強制アップデート日時
Integer|null revision リビジョン番号
配信されていないバージョンの場合には
null
が返ります。
Object asset アセットのバージョン情報
Integer version バージョン
DateTime updatedAt 配信日時
String indexName
サンプル
https://api.matsurihi.me/api/mltd/v2/version/latest
curl 'https://api.matsurihi.me/api/mltd/v2/version/latest'
レスポンスボディ
{
"app": {
"version": "5.1.050",
"updatedAt": "2022-11-26T12:00:00+09:00",
"revision": 749332
},
"asset": {
"version": 773000,
"updatedAt": "2022-11-26T12:00:00+09:00",
"indexName": "41f0f6c8d80bc95f405c66875a0b1308b6e67443.data"
}
}
GET https://api.matsurihi.me/mltd/v1/version/latest
レスポンス
レスポンスボディ
Object app アプリのバージョン情報
必須アプリバージョンにもとづくため、実際には配信されていないバージョンが返される可能性があります。
String version バージョン
DateTime updateTime 強制アップデート日時
Integer revision リビジョン番号
配信されていないバージョンの場合には
0
が返ります。
Object res アセットのバージョン情報
Integer version バージョン
DateTime updateTime 配信日時
String indexName
サンプル
https://api.matsurihi.me/mltd/v1/version/latest
curl 'https://api.matsurihi.me/mltd/v1/version/latest'
レスポンスボディ
{
"app": {
"version": "5.1.050",
"updateTime": "2022-11-26T12:00:00+09:00",
"revision": 749332
},
"res": {
"version": 773000,
"updateTime": "2022-11-26T12:00:00+09:00",
"indexName": "41f0f6c8d80bc95f405c66875a0b1308b6e67443.data"
}
}
アプリバージョンの取得
アプリのバージョン情報を取得します。
必須アプリバージョンにもとづくため、実際には配信されていないバージョンが返される可能性があります。
GET https://api.matsurihi.me/api/mltd/v2/version/apps/:version
リクエスト
パスパラメータ
- String version バージョン
バージョンを指定しない場合、レスポンスはすべてのバージョンの配列になります。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
String version バージョン
DateTime updatedAt 強制アップデート日時
Integer|null revision リビジョン番号
配信されていないバージョンの場合は
null
が返ります。
サンプル
https://api.matsurihi.me/api/mltd/v2/version/apps
curl 'https://api.matsurihi.me/api/mltd/v2/version/apps'
レスポンスボディ
[
{
"version": "1.0.6",
"updatedAt": "2017-06-28T00:00:00+09:00",
"revision": 63141
},
{
"version": "1.0.7",
"updatedAt": "2017-07-15T15:00:00+09:00",
"revision": 66894
},
{
"version": "1.0.9",
"updatedAt": "2017-07-27T15:00:00+09:00",
"revision": 70661
},
{
"version": "1.1.0",
"updatedAt": "2017-08-09T15:00:00+09:00",
"revision": 76059
}
]
https://api.matsurihi.me/api/mltd/v2/version/apps/1.0.6
curl 'https://api.matsurihi.me/api/mltd/v2/version/apps/1.0.6'
レスポンスボディ
{
"version": "1.0.6",
"updatedAt": "2017-06-28T00:00:00+09:00",
"revision": 63141
}
GET https://api.matsurihi.me/mltd/v1/version/apps/:version
リクエスト
パスパラメータ
- String version バージョン
バージョンを指定しない場合、レスポンスはすべてのバージョンの配列になります。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
String version バージョン
DateTime updateTime 強制アップデート日時
Integer revision リビジョン番号
配信されていないバージョンの場合には
0
が返ります。
サンプル
https://api.matsurihi.me/mltd/v1/version/apps
curl 'https://api.matsurihi.me/mltd/v1/version/apps'
レスポンスボディ
[
{
"version": "1.0.6",
"updateTime": "2017-06-28T00:00:00+09:00",
"revision": 63141
},
{
"version": "1.0.7",
"updateTime": "2017-07-15T15:00:00+09:00",
"revision": 66894
},
{
"version": "1.0.9",
"updateTime": "2017-07-27T15:00:00+09:00",
"revision": 70661
},
{
"version": "1.1.0",
"updateTime": "2017-08-09T15:00:00+09:00",
"revision": 76059
}
]
https://api.matsurihi.me/mltd/v1/version/apps/1.0.6
curl 'https://api.matsurihi.me/mltd/v1/version/apps/1.0.6'
レスポンスボディ
{
"version": "1.0.6",
"updateTime": "2017-06-28T00:00:00+09:00",
"revision": 63141
}
アセットバージョンの取得
アセットのバージョン情報を取得します。
GET https://api.matsurihi.me/api/mltd/v2/version/assets/:version
リクエスト
パスパラメータ
- Integer version バージョン
バージョンを指定しない場合、レスポンスはすべてのバージョンの配列になります。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer version バージョン
DateTime updatedAt 配信日時
String indexName
サンプル
https://api.matsurihi.me/api/mltd/v2/version/assets
curl 'https://api.matsurihi.me/api/mltd/v2/version/assets'
レスポンスボディ
[
{
"version": 1,
"updatedAt": "2017-06-29T12:00:00+09:00",
"indexName": "6b976a4c875a1984592a66b621872ce44c944e72.data"
},
{
"version": 2,
"updatedAt": "2017-07-11T17:00:00+09:00",
"indexName": "83a751e34531a81e83ac5e47393bbb7d483c3da5.data"
},
{
"version": 3,
"updatedAt": "2017-07-13T15:00:00+09:00",
"indexName": "77104ecc982fd2344e965f6aba2e83c35a4d49f2.data"
}
]
https://api.matsurihi.me/api/mltd/v2/version/assets/1
curl 'https://api.matsurihi.me/api/mltd/v2/version/assets/1'
レスポンスボディ
{
"version": 1,
"updatedAt": "2017-06-29T12:00:00+09:00",
"indexName": "6b976a4c875a1984592a66b621872ce44c944e72.data"
}
GET https://api.matsurihi.me/mltd/v1/version/assets/:version
リクエスト
パスパラメータ
- Integer version バージョン
バージョンを指定しない場合、レスポンスはすべてのバージョンの配列になります。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer version バージョン
DateTime updateTime 配信日時
String indexName
サンプル
https://api.matsurihi.me/mltd/v1/version/assets
curl 'https://api.matsurihi.me/mltd/v1/version/assets'
レスポンスボディ
[
{
"version": 1,
"updateTime": "2017-06-29T12:00:00+09:00",
"indexName": "6b976a4c875a1984592a66b621872ce44c944e72.data"
},
{
"version": 2,
"updateTime": "2017-07-11T17:00:00+09:00",
"indexName": "83a751e34531a81e83ac5e47393bbb7d483c3da5.data"
},
{
"version": 3,
"updateTime": "2017-07-13T15:00:00+09:00",
"indexName": "77104ecc982fd2344e965f6aba2e83c35a4d49f2.data"
}
]
https://api.matsurihi.me/mltd/v1/version/assets/1
curl 'https://api.matsurihi.me/mltd/v1/version/assets/1'
レスポンスボディ
{
"version": 1,
"updateTime": "2017-06-29T12:00:00+09:00",
"indexName": "6b976a4c875a1984592a66b621872ce44c944e72.data"
}
アイドル関連 API
アイドルの情報の取得
アイドルの情報を取得します。
アイドルの情報のみ取得できます。事務員の情報は取得できません。
GET https://api.matsurihi.me/api/mltd/v2/idols/:idolId
リクエスト
パスパラメータ
- Integer idolId アイドルの ID
ID を指定しない場合、レスポンスはすべてのアイドルの配列になります。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer id ID
Integer sortId 表示時のソートに用いられる ID
String resourceId リソースアクセス用の ID
Integer type アイドルのタイプ
- 1: Princess
- 2: Fairy
- 3: Angel
- 5: Ex
String fullName アイドルのフルネーム
String displayName アイドルの表示名
String lastName アイドルの苗字
ジュリア、詩花、玲音の場合には
"ジュリア"
、"詩花"
、"玲音"
がそれぞれ返ります。String|null firstName アイドルの下の名前
ジュリア、詩花、玲音は
null
です。String alphabetName アイドルのアルファベット表記の名前
String fullNameRuby アイドルの名前の読み
Integer|null age アイドルの年齢
年齢が不明な場合は
null
になります。Object birthplace アイドルの出身地
Integer id 出身地の ID
String name 出身地の名前
Object handednessType アイドルの利き手
Integer id 利き手の ID
String name 利き手
Float height アイドルの身長
単位は cm です。不明な場合は
0.0
になります。Float weight アイドルの体重
単位は kg です。不明な場合は
0.0
になります。String hobby アイドルの趣味
String speciality アイドルの特技
String favorites アイドルの好きなもの
String cv アイドルの声優
String colorCode アイドルのパーソナルカラー(サイリウムカラー)のカラーコード
Object birthday アイドルの誕生日
誕生日が不明な場合は 0 月 0 日になります。
Integer month 月
Integer day 日
Object constellation アイドルの誕生星座
Integer id 星座の ID
String name 星座の名前
Object bloodType アイドルの血液型
Integer id 血液型の ID
String name 血液型
Object measurements アイドルのスリーサイズ
単位は cm です。不明な場合は
0.0
になります。Float bust
Float waist
Float hip
サンプル
https://api.matsurihi.me/api/mltd/v2/idols/21
curl 'https://api.matsurihi.me/api/mltd/v2/idols/21'
レスポンスボディ
{
"id": 21,
"sortId": 21,
"resourceId": "021mat",
"type": 1,
"fullName": "徳川 まつり",
"displayName": "徳川 まつり",
"lastName": "徳川",
"firstName": "まつり",
"alphabetName": "MATSURI TOKUGAWA",
"fullNameRuby": "とくがわ まつり",
"age": 19,
"birthplace": {
"id": 23,
"name": "愛知県"
},
"handednessType": {
"id": 1,
"name": "右"
},
"height": 163.0,
"weight": 44.0,
"hobby": "漫画あつめ",
"speciality": "演技",
"favorites": "焼きマシュマロ、ウミウシ",
"cv": "諏訪彩花",
"colorCode": "#5abfb7",
"birthday": {
"month": 2,
"day": 4
},
"constellation": {
"id": 11,
"name": "水瓶座"
},
"bloodType": {
"id": 4,
"name": "AB"
},
"measurements": {
"bust": 85.0,
"waist": 59.0,
"hip": 85.0
}
}
カード関連 API
カードの情報の取得
カードの情報を取得します。
任意の Lv におけるカードのアピール値の計算方法については、シアターデイズのアピール値の計算方法についてを参照してください。
GET https://api.matsurihi.me/api/mltd/v2/cards/:cardId
リクエスト
パスパラメータ
- Integer[] cardId カードの ID
ID を 1 つのみ指定した場合でもレスポンスは配列になります。複数レアリティの存在するカード(周年記念イベントのカードなど)では複数の要素が返ります。v1 とは異なり、ID を指定した場合でもクエリパラメータは有効です。
クエリパラメータ
- Integer[] idolId アイドルの ID
- Enum[] rarity レアリティ
<Integer>
|n
|r
|sr
|ssr
- Enum[] exType カードの種類
<Integer>
|none
|pst
|pstr
|pstp
|fes
|anniversary
|extra
|shs
- Boolean includeCostumes 衣装の詳細情報を含める
- Boolean includeParameters パラメータ情報を含める
- Boolean includeLines セリフ情報を含める
- Boolean includeSkills スキル情報を含める
- Boolean includeEvents イベント情報を含める
- String[] orderBy ソート順序
id
|sortId
|rarity
|idolId
|addedAt
|id!
|sortId!
|rarity!
|idolId!
|addedAt!
!
を末尾に付けると降順になります。デフォルトはsortId,rarity
です。
レスポンス
レスポンスボディ(配列)
Integer id ID
String name カード名
Integer sortId 表示時のソートに用いられる ID
Integer idolId アイドルの ID
Integer idolType アイドルのタイプ
- 1: Princess
- 2: Fairy
- 3: Angel
- 5: Ex
Integer variation バリエーション(アイドルに対して何番目のカードかを示す値)
Integer rarity レアリティ
- 1: N
- 2: R
- 3: SR
- 4: SSR
String resourceId リソースアクセス用の ID
Integer exType カードの種類
- 0: なし
- 2: PST ランキング報酬
- 3: PST ポイント報酬
- 4: フェス限定
- 5: 1 周年記念イベント報酬
- 6: Extra カード
- 7: 2 周年記念イベント報酬
- 8: Extra PST ランキング報酬
- 9: Extra PST ポイント報酬
- 10: 3 周年記念イベント報酬
- 11: Extra PST ランキング報酬
- 12: Extra PST ポイント報酬
- 13: 4 周年記念イベント報酬
- 14: セカンドヘアスタイル
- 15: セットなどで販売されたカード
- 16: 5 周年記念イベント報酬
- 17: PR カード
- 18: ミリオンライブ! 10 周年記念イベント報酬
- 19: 6 周年記念イベント報酬
- 20: ミリオンリンケージ限定
Integer category カードのカテゴリ
- 0: カテゴリ未設定
- 10: ノーマル
- 20: 恒常ガシャ
- 21: 期間限定ガシャ
- 22: フェス限定
- 24: プレミアムピックアップ SR ガシャ限定
- 25: セカンドヘアスタイルガシャ限定
- 26: ミリオンリンケージ限定
- 30: ミリコレ(SR)
- 31: イベント報酬カード
- 32: イベント報酬カード
- 33: 周年記念イベント報酬カード
- 34: THE@TER BOOST! 追加カード(「超ビーチバレー[プチキング] ロコ」など)
- 35: ミリコレ(R)
- 36: ミリオンライブ! 周年記念イベント報酬カード
- 37: THE@TER CHALLENGE!! 追加カード(「アウトサイダー[アイビー] 望月杏奈」など)
- 41: Ex カード
- 42: セット販売カード(Ex)
- 43: 海外版追加カード
- 44: PR カード
- 99: その他
Object costumes 衣装情報
Object default デフォルトの衣装
includeCostume
がfalse
の場合にはid
のみ含まれます。Integer id 衣装 ID
Integer sortId? 表示時のソートに用いられる ID
String name? 衣装名
String description? 衣装の説明
String resourceId? リソースアクセス用の ID
String modelId? 3D モデルの ID
Integer|null costumeGroupId? 衣装グループ ID
海外版では
null
になります。Integer|null collaborationNumber? テクスチャバリエーションのある衣装におけるテクスチャの ID
海外版では
null
になります。適用されない場合は0
になります。Integer|null defaultHairstyle? デフォルトのヘアスタイルの ID
海外版では
null
になります。Integer|null defaultHairColor? デフォルトのヘアカラーの ID
海外版では
null
になります。Boolean|null hasAnotherShader? アナザーシェーダーの有無
海外版では
null
になります。Object|null accessory? アクセサリ情報
海外版では
null
になります。Integer id アクセサリ ID
String resourceId リソースアクセス用の ID
Integer default デフォルトの ID
DateTime releasedAt? 衣装が追加された日時
Object bonus ☆4 ボーナスの衣装
$.costumes.default
と同じ形式です。Object rank5 ☆5 ボーナスの衣装
$.costumes.default
と同じ形式です。
Integer masterRankMax 最大マスターランク
Integer skillLvMax 最大スキルレベル
Object parameters? パラメータ情報
includeParameters
がtrue
の場合にのみ含まれます。Object vocal ボーカルパラメータ
Integer base レベル 0 時の値
Object beforeAwakened 覚醒前の情報
Float diff レベル 1 あたりの増加量
Integer max 最大レベルのときの値
Object afterAwakened 覚醒後の情報
$.parameters.vocal.beforeAwakened
と同じ形式です。Integer masterBonus マスターランク 1 あたりのボーナス
Object dance ダンスパラメータ
$.parameters.vocal
と同じ形式です。Object visual ビジュアルパラメータ
$.parameters.vocal
と同じ形式です。Object lvMax 最大レベル
Integer beforeAwakened 覚醒前の最大レベル
Integer afterAwakened 覚醒後の最大レベル
Object life ライフ
現在覚醒前後でライフが変化することはありませんが、覚醒前後で個別に返します。
Integer beforeAwakened 覚醒前のライフ
Integer afterAwakened 覚醒後のライフ
Object centerEffect? センター効果の情報
includeSkills
がtrue
の場合にのみ含まれます。Integer id センター効果の ID
String name センター効果の名前
String description センター効果の説明
Integer idolType センター効果が適用されるアイドルのタイプ
- 1: Princess
- 2: Fairy
- 3: Angel
- 4: すべて
Integer specificIdolType センター効果が適用される際に全アイドルがあるべきタイプ
- 0: 制約なし
- 1: Princess のみ
- 2: Fairy のみ
- 3: Angel のみ
- 4: すべてのタイプを含む
Integer songType センター効果が適用されるために必要な楽曲のタイプ
- 0: なし
- 1: Princess
- 2: Fairy
- 3: Angel
Integer[] attributes センター効果が適用されるパラメータ
- 1: Vocal
- 2: Dance
- 3: Visual
- 4: 全アピール値
- 5: ライフ
- 6: スキル発動率
- 7: ダブルブースト効果量
- 8: ダブルエフェクト効果量
- 9: 獲得親愛度
Integer[] values センター効果の適用値(パーセント)
String skillName? スキルの名前
includeSkills
がtrue
の場合にのみ含まれます。Object[] skills? スキルの情報
includeSkills
がtrue
の場合にのみ含まれます。スキルは複数取る可能性があるため配列で返ります。Integer id スキルの ID
Integer effectId スキル効果の ID
- 1: スコアアップ
- 2: コンボボーナス
- 3: ライフ回復
- 4: ダメージガード
- 5: コンボ継続
- 6: 判定強化
- 7: ダブルブースト
- 8: マルチアップ
- 9: マルチボーナス
- 10: オーバークロック
- 11: オーバーロンド
- 12: ダブルエフェクト
- 17: フュージョンスコア
- 18: フュージョンコンボ
Integer duration スキルの持続時間(秒)
Integer interval スキルの発動間隔(秒)
Integer probability スキルの発動確率(スキルレベル 0 時・パーセント)
Integer[] evaluationTypes スキルの発動条件
- 0: すべて
- 1: Perfect
- 2: Perfect/Great
- 3: Great
- 4: Great/Good/Fast/Slow
- 5: Perfect/Great/Good
- 6: Perfect/Great/Good/Fast/Slow
- 7: Great/Good
Integer[] values スキルの効果値
String description スキルの説明文
発動率のプレースホルダは
{0}
です。
Object lines? セリフの情報
includeLines
がtrue
の場合にのみ含まれます。プロデューサー名のプレースホルダは{$P$}
です。Object flavor フレーバーテキスト
String beforeAwakened 覚醒前のフレーバーテキスト
String afterAwakened 覚醒後のフレーバーテキスト
Object contact ふれあいセリフ
過去の誤った実装との互換性を保つためフィールド名が奇妙になっていますが無意味です。
String beforeAwakened ふれあいセリフ 1 行目
String afterAwakened ふれあいセリフ 2 行目
String awakening 覚醒セリフ
DateTime addedAt カードの実装日時
Object event イベント情報
includeEvents
が指定されていて、カードがイベント報酬の場合にのみ含まれます。形式はイベント API(/api/mltd/v2/events
)のレスポンスと同様です。
サンプル
https://api.matsurihi.me/api/mltd/v2/cards?idolId=21&rarity=4
curl 'https://api.matsurihi.me/api/mltd/v2/cards?idolId=21&rarity=4'
レスポンスボディ
[
{
"id": 278,
"name": "ロマンティックランド 徳川まつり",
"sortId": 278,
"idolId": 21,
"idolType": 1,
"variation": 6,
"rarity": 4,
"resourceId": "021mat0064",
"exType": 0,
"category": 20,
"costumes": {
"default": {
"id": 30101210
},
"bonus": {
"id": 30101211
},
"rank5": {
"id": 30101212
}
},
"masterRankMax": 5,
"skillLvMax": 12,
"addedAt": "2018-05-11T15:00:00+09:00"
},
{
"id": 329,
"name": "BRAND NEW PERFORMANCE 徳川まつり",
"sortId": 326,
"idolId": 21,
"idolType": 1,
"variation": 7,
"rarity": 4,
"resourceId": "021mat0074",
"exType": 5,
"category": 33,
"costumes": {
"default": {
"id": 20104210
},
"bonus": {
"id": 20104211
}
},
"masterRankMax": 4,
"skillLvMax": 10,
"addedAt": "2018-06-29T00:00:00+09:00"
},
{
"id": 391,
"name": "きのこの国のお姫様♪ 徳川まつり",
"sortId": 391,
"idolId": 21,
"idolType": 1,
"variation": 8,
"rarity": 4,
"resourceId": "021mat0084",
"exType": 0,
"category": 21,
"costumes": {
"default": {
"id": 30102210
},
"bonus": {
"id": 30102211
},
"rank5": {
"id": 30102212
}
},
"masterRankMax": 5,
"skillLvMax": 10,
"addedAt": "2018-08-31T15:00:00+09:00"
}
]
https://api.matsurihi.me/api/mltd/v2/cards/2151?includeCostumes&includeParameters&includeLines&includeSkills&includeEvents
curl 'https://api.matsurihi.me/api/mltd/v2/cards/2151?includeCostumes&includeParameters&includeLines&includeSkills&includeEvents'
レスポンスボディ
[
{
"id": 2151,
"name": "暁天のアステリズム 中谷育",
"sortId": 2151,
"idolId": 30,
"idolType": 1,
"variation": 43,
"rarity": 4,
"resourceId": "030iku0434",
"exType": 20,
"category": 26,
"costumes": {
"default": {
"id": 30111300,
"sortId": 30111300,
"name": "[ベテルギウス∴KO]中谷育",
"description": "どんな大人になるんだろう…?\n描く未来には、希望がいっぱい。\nこの夢は、小さくも確かに煌めく\nまだ名もない星たちだけのもの。",
"resourceId": "030iku0434",
"modelId": "ss011",
"costumeGroupId": 0,
"collaborationNumber": 0,
"defaultHairstyle": 1,
"defaultHairColor": 1,
"hasAnotherShader": true,
"accessory": {
"id": 30111300,
"resourceId": "030iku",
"default": 2
},
"releasedAt": "2023-12-26T15:00:00+09:00"
},
"bonus": {
"id": 30111301,
"sortId": 30111301,
"name": "[ベテルギウス∴KO+]中谷育",
"description": "「ベテルギウス∴KO」の\nアナザー衣装です。",
"resourceId": "030iku0434_v",
"modelId": "ss111",
"costumeGroupId": 0,
"collaborationNumber": 0,
"defaultHairstyle": 1,
"defaultHairColor": 1,
"hasAnotherShader": true,
"accessory": {
"id": 30111301,
"resourceId": "030iku",
"default": 2
},
"releasedAt": "2023-12-26T15:00:00+09:00"
}
},
"masterRankMax": 4,
"skillLvMax": 10,
"parameters": {
"vocal": {
"base": 2824,
"beforeAwakened": {
"diff": 35.294444444444444,
"max": 5648
},
"afterAwakened": {
"diff": 39.21604938271605,
"max": 6353
},
"masterBonus": 191
},
"dance": {
"base": 4183,
"beforeAwakened": {
"diff": 52.28333333333333,
"max": 8366
},
"afterAwakened": {
"diff": 58.09259259259259,
"max": 9411
},
"masterBonus": 282
},
"visual": {
"base": 1422,
"beforeAwakened": {
"diff": 17.772222222222222,
"max": 2844
},
"afterAwakened": {
"diff": 19.746913580246915,
"max": 3199
},
"masterBonus": 96
},
"lvMax": {
"beforeAwakened": 80,
"afterAwakened": 90
},
"life": {
"beforeAwakened": 40,
"afterAwakened": 40
}
},
"centerEffect": {
"id": 8005,
"name": "トリプル・スワイプス",
"description": "3タイプ編成時、ダンス値が105%アップし、さらにスキル発動率が15%アップ、ダブルブーストの効果量を2%プラス、ダブルエフェクトの効果量を1%プラス",
"idolType": 4,
"specificIdolType": 4,
"songType": 0,
"attributes": [
2,
6,
7,
8
],
"values": [
105,
15,
2,
1
]
},
"skillName": "小さな星たち",
"skills": [
{
"id": 140,
"effectId": 1,
"duration": 5,
"interval": 9,
"probability": 40,
"evaluationTypes": [
2
],
"values": [
36
],
"description": "9秒ごとに{0}%の確率で5秒間、Perfect/Greatのスコアが36%アップ"
}
],
"lines": {
"flavor": {
"beforeAwakened": "うどん学園、すっごく楽しかった!\n夕ご飯のうどんもおいしかったし……\n環ちゃん、桃子ちゃん、まだ眠くない?\nわたし、もうすこしだけ\nみんなでおしゃべりしたいなぁ……♪",
"afterAwakened": "このみさんの歌、大人っぽくてステキ……\nわたしも大人になって恋をしたら、\nこの気持ちがわかるようになるのかなぁ?\n今は、大好きで大切なみんなに……\nわたしたちの歌、届くといいな。"
},
"contact": {
"beforeAwakened": "学校の友達にね、同じクラスの\n男の子のことが好きって\n相談されちゃったんだ…。",
"afterAwakened": "わたしもいつか、誰かのことを\n好きになったりするのかな。\nうーん、よくわかんないかも…?"
},
"awakening": "桃子ちゃん、環ちゃん……ふたりといっしょなら、\nわたしも怖くないよ。ライブ、成功させようね!"
},
"addedAt": "2023-12-26T15:00:00+09:00"
}
]
GET https://api.matsurihi.me/mltd/v1/cards/:cardId
リクエスト
パスパラメータ
- Integer[] cardId カードの ID
ID を 1 つのみ指定した場合でもレスポンスは配列になります。複数レアリティの存在するカード(周年記念イベントのカードなど)では複数の要素が返ります。ID を指定した場合はクエリパラメータは無視されます。
クエリパラメータ
- Integer[] idolId アイドルの ID
- Enum[] rarity レアリティ
<Integer>
|n
|r
|sr
|ssr
- Enum[] extraType カードの種類
<Integer>
|none
|pst
|pstr
|pstp
|fes
|anniversary
|ex
|shs
レスポンス
レスポンスボディ(配列)
Integer id ID
String name カード名
Integer sortId 表示時のソートに用いられる ID
Integer idolId アイドルの ID
Integer idolType アイドルのタイプ
- 1: Princess
- 2: Fairy
- 3: Angel
- 5: Ex
String resourceId リソースアクセス用の ID
Integer rarity レアリティ
- 1: N
- 2: R
- 3: SR
- 4: SSR
Integer eventId? 報酬となったイベントの ID
String category カテゴリ
このフィールドは非推奨です。
Integer extraType カードの種類
- 0: なし
- 2: PST ランキング報酬
- 3: PST ポイント報酬
- 4: フェス限定
- 5: 1 周年記念イベント報酬
- 6: Extra カード
- 7: 2 周年記念イベント報酬
- 8: Extra PST ランキング報酬
- 9: Extra PST ポイント報酬
- 10: 3 周年記念イベント報酬
- 11: Extra PST ランキング報酬
- 12: Extra PST ポイント報酬
- 13: 4 周年記念イベント報酬
- 14: セカンドヘアスタイル
- 15: セットなどで販売されたカード
- 16: 5 周年記念イベント報酬
- 17: PR カード
- 18: ミリオンライブ! 10 周年記念イベント報酬
- 19: 6 周年記念イベント報酬
- 20: ミリオンリンケージ限定
Object costume? 衣装情報
Integer id 衣装 ID
String name 衣装名
String description 衣装の説明
String resourceId リソースアクセス用の ID
String modelId 3D モデルの ID
Integer sortId 表示時のソートに用いられる ID
Object bonusCostume? ☆4 ボーナスの衣装
$.costume
と同じ形式です。Object rank5Costume? ☆5 ボーナスの衣装
$.costume
と同じ形式です。String flavorText 覚醒前のフレーバーテキスト
プロデューサー名のプレースホルダは
{$P$}
です。String flavorTextAwakened 覚醒後のフレーバーテキスト
プロデューサー名のプレースホルダは
{$P$}
です。String awakeningText 覚醒セリフ
プロデューサー名のプレースホルダは
{$P$}
です。Integer levelMax 覚醒前の最大レベル
Integer levelMaxAwakened 覚醒後の最大レベル
Integer vocalMin 覚醒前の Lv. 1 時のボーカル値
Integer vocalMax 覚醒前の最大レベル時のボーカル値
Integer vocalMinAwakened 覚醒後の Lv. 1 時のボーカル値
Integer vocalMaxAwakened 覚醒後の最大レベル時のボーカル値
Integer vocalMasterBonus マスターランク 1 あたりのボーカル値のボーナス
Integer danceMin 覚醒前の Lv. 1 時のダンス値
Integer danceMax 覚醒前の最大レベル時のダンス値
Integer danceMinAwakened 覚醒後の Lv. 1 時のダンス値
Integer danceMaxAwakened 覚醒後の最大レベル時のダンス値
Integer danceMasterBonus マスターランク 1 あたりのダンス値のボーナス
Integer visualMin 覚醒前の Lv. 1 時のビジュアル値
Integer visualMax 覚醒前の最大レベル時のビジュアル値
Integer visualMinAwakened 覚醒後の Lv. 1 時のビジュアル値
Integer visualMaxAwakened 覚醒後の最大レベル時のビジュアル値
Integer visualMasterBonus マスターランク 1 あたりのビジュアル値のボーナス
Integer life ライフ
Integer masterRankMax 最大マスターランク
Object centerEffect センター効果の情報
Integer id センター効果の ID
String description センター効果の説明
Integer idolType センター効果が適用されるアイドルのタイプ
- 1: Princess
- 2: Fairy
- 3: Angel
- 4: すべて
Integer specificIdolType? センター効果が適用される際に全アイドルがあるべきタイプ
- 0: 制約なし
- 1: Princess のみ
- 2: Fairy のみ
- 3: Angel のみ
- 4: すべてのタイプを含む
Integer attribute? センター効果が適用されるパラメータ
- 1: Vocal
- 2: Dance
- 3: Visual
- 4: 全アピール値
- 5: ライフ
- 6: スキル発動率
- 7: ダブルブースト効果量
- 8: ダブルエフェクト効果量
- 9: 獲得親愛度
Integer value? センター効果の適用値(パーセント)
Integer songType? センター効果が適用されるために必要な楽曲のタイプ
- 0: なし
- 1: Princess
- 2: Fairy
- 3: Angel
Integer attribute2? センター効果が適用されるパラメータ(2 つめ)
Integer value2? センター効果の適用値(2 つめの効果・パーセント)
Integer attribute3? センター効果が適用されるパラメータ(3 つめ)
Integer value3? センター効果の適用値(3 つめの効果・パーセント)
Integer attribute? センター効果が適用されるパラメータ(4 つめ)
Integer value4? センター効果の適用値(4 つめの効果・パーセント)
Integer attribute5? センター効果が適用されるパラメータ(5 つめ)
Integer value5? センター効果の適用値(5 つめの効果・パーセント)
String centerEffectName センター効果の名前
Object[] skill? スキルの情報
スキルは複数取る可能性があるため配列で返ります。スキルがない場合には含まれません。
Integer id スキルの ID
String description スキルの説明文
発動率のプレースホルダは
{0}
です。Integer effectId スキル効果の ID
- 1: スコアアップ
- 2: コンボボーナス
- 3: ライフ回復
- 4: ダメージガード
- 5: コンボ継続
- 6: 判定強化
- 7: ダブルブースト
- 8: マルチアップ
- 9: マルチボーナス
- 10: オーバークロック
- 11: オーバーロンド
- 12: ダブルエフェクト
- 17: フュージョンスコア
- 18: フュージョンコンボ
Integer evaluation スキルの発動条件
- 0: すべて
- 1: Perfect
- 2: Perfect/Great
- 3: Great
- 4: Great/Good/Fast/Slow
- 5: Perfect/Great/Good
- 6: Perfect/Great/Good/Fast/Slow
- 7: Great/Good
Integer evaluation2 スキルの発動条件(2 つめ)
Integer evaluation3 スキルの発動条件(3 つめ)
Integer duration スキルの持続時間(秒)
Integer interval スキルの発動間隔(秒)
Integer probability スキルの発動確率(スキルレベル 0 時・パーセント)
Integer[] value スキルの効果値
Integer skillLevelMax 最大スキルレベル
String skillName スキルの名前
DateTime addDate? カードの実装日時
初期実装のカードは省略されます。
Integer galleryType
このフィールドは非推奨です。
サンプル
https://api.matsurihi.me/mltd/v1/cards/1515
curl 'https://api.matsurihi.me/mltd/v1/cards/1515'
レスポンスボディ
[
{
"id": 1515,
"name": "Vacation vs Summer! 徳川まつり",
"sortId": 1515,
"idolId": 21,
"idolType": 1,
"resourceId": "021mat0343",
"rarity": 3,
"eventId": 239,
"category": "event2",
"extraType": 2,
"costume": {
"id": 40237210,
"name": "[VSサマーセーラー]徳川まつり",
"description": "夏休みだからって弛んじゃダメ。\n外で太陽と大自然を浴びるか、\nクーラーの効いた部屋でのんびり\nするか…合戦の幕開けなのです!",
"resourceId": "021mat0343",
"modelId": "sra037",
"sortId": 40237210
},
"bonusCostume": {
"id": 40237211,
"name": "[VSサマーセーラー+]徳川まつり",
"description": "「VSサマーセーラー」の\nアナザー衣装です。",
"resourceId": "021mat0343_v",
"modelId": "sra137",
"sortId": 40237211
},
"flavorText": "ほ? いつの間にか、こんなにチップが\n集まっていたのです。……ほ?\n伊織ちゃん、もうおしまいなのです?\n他に、姫の相手をしてくれる人は\nいないのですか? 誰でも大歓迎ですよ♪",
"flavorTextAwakened": "夏休みは、お家で優雅に過ごすのが一番\nなのです! アイスを食べたり、漫画を\n読んだり、ゲームをしたり……。暑さを\n気にせず、楽しく遊べるのですよ!\nインドア派に、清き一票をお願いなのです!",
"awakeningText": "さあ、勝負なのです! 姫たちインドア派の主張で、\nアウトドア派のみんなも引き込んじゃうのです。",
"levelMax": 60,
"levelMaxAwakened": 70,
"vocalMin": 3076,
"vocalMax": 6052,
"vocalMinAwakened": 3084,
"vocalMaxAwakened": 7060,
"vocalMasterBonus": 212,
"danceMin": 2379,
"danceMax": 4680,
"danceMinAwakened": 2385,
"danceMaxAwakened": 5460,
"danceMasterBonus": 164,
"visualMin": 1668,
"visualMax": 3282,
"visualMinAwakened": 1672,
"visualMaxAwakened": 3830,
"visualMasterBonus": 115,
"life": 35,
"masterRankMax": 4,
"centerEffect": {
"id": 1302,
"description": "Princessタイプのボーカル値が60%アップ",
"idolType": 1,
"attribute": 1,
"value": 60
},
"centerEffectName": "Princessハーモニー",
"skill": [
{
"id": 210,
"description": "11秒ごとに{0}%の確率で5秒間、コンボボーナスが20%アップ",
"effectId": 2,
"evaluation": 0,
"evaluation2": 0,
"evaluation3": 0,
"duration": 5,
"interval": 11,
"probability": 35,
"value": [
20
]
}
],
"skillLevelMax": 10,
"skillName": "億万長者の余裕",
"addDate": "2022-06-16T15:00:00+09:00",
"galleryType": 0
}
]
イベント関連 API
イベントの情報の取得
イベントの情報を取得します。
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId
リクエスト
パスパラメータ
- Integer eventId イベントの ID
クエリパラメータ
- DateTime at その時刻に開催されているイベントの情報を取得する
- Enum[] type イベントの種類
<Integer>
|showtime
|millicolle
|theater
|tour
|anniversary
|working
|aprilfool
|gamecorner
|twinstage
|tune
|tale
|talkparty
|treasure
- String[] orderBy ソート順序
id
|type
|beginAt
|id!
|type!
|beginAt!
末尾に
!
を付けると降順になります。デフォルトはbeginAt
です。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer id ID
Integer type イベントの種類
- 1: ショータイム
- 2: ミリコレ!
- 3: シアター・トラスト
- 4: ツアー・ツアービンゴ
- 5: 周年記念イベント
- 6: ワーキング
- 7: エイプリルフール
- 8: ゲームコーナー
- 9: ミリコレ!(ボックスガシャ)
- 10: ツインステージ(楽曲別ハイスコア)
- 11: チューン
- 12: ツインステージ(合計ハイスコア)
- 13: テール・タイム・チーム
- 14: トークパーティー
- 16: トレジャー
Integer appealType ボーナスが適用されるアピール値
- 0: なし
- 1: ボーカル
- 2: ダンス
- 3: ビジュアル
String name イベントの名前
Object schedule イベントのスケジュール情報
DateTime beginAt イベントの開始日時
DateTime endAt イベントの終了日時
DateTime pageOpenedAt イベントページの表示開始日時
DateTime pageClosedAt イベントページの表示終了日時
DateTime|null boostBeginAt 後半戦の開始日時
DateTime|null boostEndAt 後半戦の終了日時
Object item PST イベントなどのアイテム情報
アイテムの存在しないイベントにもこのフィールドが含まれますが、内容は
null
になります。String|null name アイテムの名前
String|null shortName アイテムの短縮名
Object cards? 報酬カードの情報
パスパラメータ指定時のみに含まれます。フォーマットは、すべてのクエリパラメータを指定しない場合のカード API(
/api/mltd/v2/cards
)と同様です。
サンプル
https://api.matsurihi.me/api/mltd/v2/events?type=4,9
curl 'https://api.matsurihi.me/api/mltd/v2/events?type=4,9'
レスポンスボディ
[
{
"id": 181,
"type": 4,
"appealType": 0,
"name": "プラチナスターツアー~ABSOLUTE RUN!!!~",
"schedule": {
"beginAt": "2021-04-18T15:00:00+09:00",
"endAt": "2021-04-26T20:59:59+09:00",
"pageOpenedAt": "2021-04-18T15:00:00+09:00",
"pageClosedAt": "2021-04-28T14:59:59+09:00",
"boostBeginAt": "2021-04-22T15:00:00+09:00",
"boostEndAt": "2021-04-26T20:59:59+09:00"
},
"item": {
"name": "仲間と繋ぐバトン",
"shortName": "バトン"
}
},
{
"id": 184,
"type": 9,
"appealType": 0,
"name": "ミリコレ!~MILLIONLIVE COLLECTION~",
"schedule": {
"beginAt": "2021-05-11T15:00:00+09:00",
"endAt": "2021-05-16T20:59:59+09:00",
"pageOpenedAt": "2021-05-11T15:00:00+09:00",
"pageClosedAt": "2021-05-18T14:59:59+09:00",
"boostBeginAt": null,
"boostEndAt": null
},
"item": {
"name": null,
"shortName": null
}
}
]
https://api.matsurihi.me/api/mltd/v2/events/212
curl 'https://api.matsurihi.me/api/mltd/v2/events/212'
レスポンスボディ
{
"id": 212,
"type": 11,
"appealType": 1,
"name": "プラチナスターチューン~ミラージュ・ミラー~",
"schedule": {
"beginAt": "2021-11-30T15:00:00+09:00",
"endAt": "2021-12-08T20:59:59+09:00",
"pageOpenedAt": "2021-11-30T15:00:00+09:00",
"pageClosedAt": "2021-12-10T14:59:59+09:00",
"boostBeginAt": "2021-12-04T15:00:00+09:00",
"boostEndAt": "2021-12-08T20:59:59+09:00"
},
"item": {
"name": "すずらんの花束",
"shortName": "花束"
},
"cards": [
{
"id": 1354,
"name": "鏡の中のあなた エミリー",
"sortId": 1354,
"idolId": 32,
"idolType": 1,
"variation": 30,
"rarity": 3,
"resourceId": "032emi0303",
"exType": 2,
"category": 31,
"costumes": {
"default": {
"id": 40225320
},
"bonus": {
"id": 40225321
}
},
"masterRankMax": 4,
"skillLvMax": 10,
"addedAt": "2021-11-30T15:00:00+09:00"
},
{
"id": 1355,
"name": "鏡の中のあなた 徳川まつり",
"sortId": 1355,
"idolId": 21,
"idolType": 1,
"variation": 30,
"rarity": 3,
"resourceId": "021mat0303",
"exType": 3,
"category": 31,
"costumes": {},
"masterRankMax": 4,
"skillLvMax": 10,
"addedAt": "2021-11-30T15:00:00+09:00"
}
]
}
GET https://api.matsurihi.me/mltd/v1/events/:eventId
リクエスト
パスパラメータ
- Integer eventId イベントの ID
クエリパラメータ
- DateTime at その時刻に開催されているイベントの情報を取得する
- Enum[] type イベントの種類
<Integer>
|showtime
|millicolle
|theater
|tour
|anniversary
|working
|aprilfool
|gamecorner
|twinstage
|tune
|tale
|talkparty
|treasure
- String[] orderBy ソート順序
id
|beginTime
デフォルト:
beginTime
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer id ID
String name イベントの名前
Integer type イベントの種類
- 1: ショータイム
- 2: ミリコレ!
- 3: シアター・トラスト
- 4: ツアー・ツアービンゴ
- 5: 周年記念イベント
- 6: ワーキング
- 7: エイプリルフール
- 8: ゲームコーナー
- 9: ミリコレ!(ボックスガシャ)
- 10: ツインステージ(楽曲別ハイスコア)
- 11: チューン
- 12: ツインステージ(合計ハイスコア)
- 13: テール・タイム・チーム
- 14: トークパーティー
- 16: トレジャー
Integer appealType ボーナスが適用されるアピール値
- 0: なし
- 1: ボーカル
- 2: ダンス
- 3: ビジュアル
Object schedule イベントのスケジュール情報
DateTime beginDate イベントの開始日時
DateTime endDate イベントの終了日時
DateTime pageBeginDate イベントページの表示開始日時
DateTime pageEndDate イベントページの表示終了日時
DateTime boostBeginDate? 後半戦の開始日時
DateTime boostEndDate? 後半戦の終了日時
サンプル
https://api.matsurihi.me/mltd/v1/events?type=11,13
curl 'https://api.matsurihi.me/mltd/v1/events?type=11,13'
レスポンスボディ
[
{
"id": 146,
"name": "プラチナスターチューン~BORN ON DREAM!~",
"type": 11,
"appealType": 2,
"schedule": {
"beginDate": "2020-08-03T15:00:00+09:00",
"endDate": "2020-08-10T20:59:59+09:00",
"pageBeginDate": "2020-08-03T15:00:00+09:00",
"pageEndDate": "2020-08-12T14:59:59+09:00",
"boostBeginDate": "2020-08-07T15:00:00+09:00",
"boostEndDate": "2020-08-10T20:59:59+09:00"
}
},
{
"id": 158,
"name": "プラチナスターチューン~餞の鳥~",
"type": 11,
"appealType": 1,
"schedule": {
"beginDate": "2020-11-02T15:00:00+09:00",
"endDate": "2020-11-09T20:59:59+09:00",
"pageBeginDate": "2020-11-02T15:00:00+09:00",
"pageEndDate": "2020-11-11T14:59:59+09:00",
"boostBeginDate": "2020-11-06T15:00:00+09:00",
"boostEndDate": "2020-11-09T20:59:59+09:00"
}
},
{
"id": 164,
"name": "プラチナスターテール~聖ミリオン女学園 はじまりの花~",
"type": 13,
"schedule": {
"beginDate": "2020-12-18T15:00:00+09:00",
"endDate": "2020-12-24T20:59:59+09:00",
"pageBeginDate": "2020-12-18T15:00:00+09:00",
"pageEndDate": "2020-12-26T14:59:59+09:00",
"boostBeginDate": "2020-12-21T15:00:00+09:00",
"boostEndDate": "2020-12-24T20:59:59+09:00"
}
}
]
https://api.matsurihi.me/mltd/v1/events/212
curl 'https://api.matsurihi.me/mltd/v1/events/212'
レスポンスボディ
{
"id": 212,
"name": "プラチナスターチューン~ミラージュ・ミラー~",
"type": 11,
"appealType": 1,
"schedule": {
"beginDate": "2021-11-30T15:00:00+09:00",
"endDate": "2021-12-08T20:59:59+09:00",
"pageBeginDate": "2021-11-30T15:00:00+09:00",
"pageEndDate": "2021-12-10T14:59:59+09:00",
"boostBeginDate": "2021-12-04T15:00:00+09:00",
"boostEndDate": "2021-12-08T20:59:59+09:00"
}
}
イベントランキング関連 API
matsurihi.me 側で取得していない順位・時刻のデータは取得できません。「Good-Sleep, Baby♡」から「花ざかり Weekend✿」までの個人ランキングのデータは TheaterGate 提供です。pt・スコアは v1 では Float で、v2 では Integer で返します。
ボーダー情報の取得
ランキングイベントの報酬ボーダーの情報を取得します。
この API は v1 と v2 でまったく同じレスポンスを返します。
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/borders
リクエスト
パスパラメータ
- Integer eventId イベントの ID
レスポンス
レスポンスボディ
Integer[] eventPoint? イベント pt ランキング
Integer[] highScore? ハイスコアランキング
Integer[] highScore2? ハイスコアランキング(2 曲目・ツインステージのみ)
Integer[] highScoreTotal? 合計ハイスコアランキング(チューンなど)
Integer[] loungePoint? ラウンジランキング
Object[] idolPoint? アイドル別ランキング
Integer idolId アイドルの ID
Integer[] borders 報酬ボーダーのポイント
10 位以内限定の称号が追加された「私たちの R@inbow!」以降とそれ以前のイベントでは異なります。
サンプル
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borders
curl 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borders'
レスポンスボディ
{
"eventPoint": [
100,
2500,
5000,
10000,
25000,
50000,
100000
],
"highScore": [
100,
2000,
5000,
10000,
20000
],
"loungePoint": [
10,
50,
100,
250,
500
],
"idolPoint": [
{
"idolId": 21,
"borders": [
100,
1000
]
},
{
"idolId": 22,
"borders": [
100,
1000
]
}
]
}
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/borders
リクエスト
パスパラメータ
- Integer eventId イベントの ID
レスポンス
レスポンスボディ
Integer[] eventPoint? イベント pt ランキング
Integer[] highScore? ハイスコアランキング
Integer[] highScore2? ハイスコアランキング(2 曲目・ツインステージのみ)
Integer[] highScoreTotal? 合計ハイスコアランキング(チューンなど)
Integer[] loungePoint? ラウンジランキング
Object[] idolPoint? アイドル別ランキング
Integer idolId アイドルの ID
Integer[] borders 報酬ボーダーのポイント
10 位以内限定の称号が追加された「私たちの R@inbow!」以降とそれ以前のイベントでは異なります。
サンプル
https://api.matsurihi.me/mltd/v1/events/192/rankings/borders
curl 'https://api.matsurihi.me/mltd/v1/events/192/rankings/borders'
レスポンスボディ
{
"eventPoint": [
100,
2500,
5000,
10000,
25000,
50000,
100000
],
"highScore": [
100,
2000,
5000,
10000,
20000
],
"loungePoint": [
10,
50,
100,
250,
500
],
"idolPoint": [
{
"idolId": 21,
"borders": [
100,
1000
]
},
{
"idolId": 22,
"borders": [
100,
1000
]
}
]
}
現在のボーダーのスコアの取得
現在の報酬ボーダの pt・スコアを取得します。
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/borderPoints
ETag / If-None-Match が利用できます。
リクエスト
パスパラメータ
- Integer eventId イベントの ID
リクエストヘッダ
- String If-None-Match
レスポンス
レスポンスヘッダ
- String ETag
レスポンスボディ
Object eventPoint? イベント pt ランキング
Object scores ボーダーのスコアの一覧
Integer rank 順位
Integer score スコア
DateTime aggregatedAt ランキングの集計日時
DateTime updatedAt? ランキングの更新日時
ランキング発表時刻が不明な場合にはこのフィールドは存在しません。
Integer count ランキング参加人数
Object highScore? ハイスコアランキング
フォーマットは
$.eventPoint
と同じです。Object highScore2? ハイスコアランキング(2 曲目・ツインステージのみ)
フォーマットは
$.eventPoint
と同じです。Object highScoreTotal? 合計ハイスコアランキング(チューンなど)
フォーマットは
$.eventPoint
と同じです。Object loungePoint? ラウンジランキング
フォーマットは
$.eventPoint
と同じです。Object[] idolPoint? アイドル別ランキング
アイドル別ランキングのみ、ランキング参加人数が含まれません。
Integer idolId アイドルの ID
Object scores ボーダーのスコアの一覧
Integer rank 順位
Integer score スコア
DateTime aggregatedAt ランキングの集計日時
DateTime updatedAt? ランキングの更新日時
ランキング発表時刻が不明な場合にはこのフィールドは存在しません。
サンプル
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borderPoints
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borderPoints'
レスポンスヘッダ
- ETag:
"c10c461d47c21e417ca4f458f692a0f0"
レスポンスボディ
{
"eventPoint": {
"scores": [
{
"rank": 1,
"score": 7970172
},
{
"rank": 2,
"score": 7962705
},
{
"rank": 3,
"score": 7949841
}
],
"aggregatedAt": "2021-07-12T00:30:00+09:00",
"updatedAt": "2021-07-12T12:00:14+09:00",
"count": 159417
},
"idolPoint": [
{
"idolId": 21,
"scores": [
{
"rank": 1,
"score": 7532366
},
{
"rank": 2,
"score": 7487553
},
{
"rank": 3,
"score": 7364562
},
{
"rank": 100,
"score": 2354702
},
{
"rank": 1000,
"score": 579411
}
],
"aggregatedAt": "2021-07-12T00:30:00+09:00",
"updatedAt": "2021-07-12T12:00:04+09:00"
}
]
}
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borderPoints
リクエストヘッダ
- If-None-Match:
"c10c461d47c21e417ca4f458f692a0f0"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borderPoints' \
-H 'If-None-Match: "c10c461d47c21e417ca4f458f692a0f0"'
ステータスコード: 304 Not Modified
レスポンスヘッダ
- ETag:
"c10c461d47c21e417ca4f458f692a0f0"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/borderPoints
歴史的事情により、アイドル別ランキングのボーダーは含まれません。
リクエスト
パスパラメータ
- Integer eventId イベントの ID
レスポンス
レスポンスボディ
Object eventPoint? イベント pt ランキング
Object scores ボーダーのスコアの一覧
Integer rank 順位
Float score スコア
DateTime summaryTime ランキングの集計日時
Integer count ランキング参加人数
Object highScore? ハイスコアランキング
フォーマットは
$.eventPoint
と同じです。Object highScore2? ハイスコアランキング(2 曲目・ツインステージのみ)
フォーマットは
$.eventPoint
と同じです。Object highScoreTotal? 合計ハイスコアランキング(チューンなど)
フォーマットは
$.eventPoint
と同じです。Object loungePoint? ラウンジランキング
フォーマットは
$.eventPoint
と同じです。
サンプル
https://api.matsurihi.me/mltd/v1/events/192/rankings/borderPoints
curl 'https://api.matsurihi.me/mltd/v1/events/192/rankings/borderPoints'
レスポンスボディ
{
"eventPoint": {
"scores": [
{
"rank": 1,
"score": 7970172.0
},
{
"rank": 2,
"score": 7962705.0
},
{
"rank": 3,
"score": 7949841.0
}
],
"summaryTime": "2021-07-12T00:30:00+09:00",
"count": 159417
}
}
ランキングの集計情報の取得
ランキングの集計情報を取得します。
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/:type/summaries
ETag / If-None-Match が利用できます。
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Enum type ランキングの種類
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
リクエストヘッダ
- String If-None-Match
レスポンス
レスポンスヘッダ
- String ETag
レスポンスボディ(配列)
Integer count ランキング参加人数
DateTime aggregatedAt 集計時刻
DateTime updatedAt? 更新時刻
ランキング発表時刻が不明な場合にはこのフィールドは存在しません。
サンプル
https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/summaries
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/summaries'
レスポンスヘッダ
- ETag:
"09de5b28ae3ac9b715876ed07a8dc457"
レスポンスボディ
[
{
"count": 9016,
"aggregatedAt": "2021-11-30T15:30:00+09:00",
"updatedAt": "2021-11-30T15:35:00+09:00"
},
{
"count": 13439,
"aggregatedAt": "2021-11-30T16:00:00+09:00",
"updatedAt": "2021-11-30T16:06:00+09:00"
},
{
"count": 16242,
"aggregatedAt": "2021-11-30T16:30:00+09:00",
"updatedAt": "2021-11-30T16:36:00+09:00"
}
]
https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/summaries
リクエストヘッダ
- If-None-Match:
"09de5b28ae3ac9b715876ed07a8dc457"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/summaries' \
-H 'If-None-Match: "09de5b28ae3ac9b715876ed07a8dc457"'
ステータスコード: 304 Not Modified
レスポンスヘッダ
- ETag:
"09de5b28ae3ac9b715876ed07a8dc457"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/summaries/:type
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Enum type ランキングの種類
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
レスポンス
レスポンスボディ(配列)
Integer count ランキング参加人数
DateTime summaryTime 集計時刻
DateTime updateTime? 更新時刻
ランキング発表時刻が不明な場合にはこのフィールドは存在しません。
サンプル
https://api.matsurihi.me/mltd/v1/events/212/rankings/summaries/eventPoint
curl 'https://api.matsurihi.me/mltd/v1/events/212/rankings/summaries/eventPoint'
レスポンスボディ
[
{
"count": 9016,
"summaryTime": "2021-11-30T15:30:00+09:00",
"updateTime": "2021-11-30T15:35:00+09:00"
},
{
"count": 13439,
"summaryTime": "2021-11-30T16:00:00+09:00",
"updateTime": "2021-11-30T16:06:00+09:00"
},
{
"count": 16242,
"summaryTime": "2021-11-30T16:30:00+09:00",
"updateTime": "2021-11-30T16:36:00+09:00"
}
]
ランキングの集計情報の取得(アイドル別)
アイドル別ランキングの集計情報を取得します。
v2 の API ではイベント終了 24 時間以前は 30 分ごと、イベント終了 24 時間以内は 5 分ごとのすべてのデータを返します。v1 では常に 30 分ごとのデータのみ返します。
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/idolPoint/:idolId/summaries
ETag / If-None-Match が利用できます。
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Integer idolId アイドルの ID
クエリパラメータ
- Boolean all 指定すると 30 分ごとに間引かずにすべてのデータを取得します
リクエストヘッダ
- String If-None-Match
レスポンス
レスポンスヘッダ
- String ETag
レスポンスボディ(配列)
DateTime aggregatedAt 集計時刻
DateTime updatedAt? 更新時刻
ランキング発表時刻が不明な場合にはこのフィールドは存在しません。
サンプル
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/summaries
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/summaries'
レスポンスヘッダ
- ETag:
"5a07c2b93dd2e0c742e7ab54f3a58f94"
レスポンスボディ
[
{
"aggregatedAt": "2021-06-29T00:30:00+09:00",
"updatedAt": "2021-06-29T00:31:04+09:00"
},
{
"aggregatedAt": "2021-06-29T01:00:00+09:00",
"updatedAt": "2021-06-29T01:01:34+09:00"
},
{
"aggregatedAt": "2021-06-29T01:30:00+09:00",
"updatedAt": "2021-06-29T01:31:04+09:00"
},
{
"aggregatedAt": "2021-06-29T02:00:00+09:00",
"updatedAt": "2021-06-29T02:01:35+09:00"
}
]
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/summaries
リクエストヘッダ
- If-None-Match:
"5a07c2b93dd2e0c742e7ab54f3a58f94"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/summaries' \
-H 'If-None-Match: "5a07c2b93dd2e0c742e7ab54f3a58f94"'
ステータスコード: 304 Not Modified
レスポンスヘッダ
- ETag:
"5a07c2b93dd2e0c742e7ab54f3a58f94"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/summaries/idolPoint/:idolId
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Integer idolId アイドルの ID
レスポンス
レスポンスボディ(配列)
DateTime summaryTime 集計時刻
DateTime updateTime? 更新時刻
ランキング発表時刻が不明な場合にはこのフィールドは存在しません。
サンプル
https://api.matsurihi.me/mltd/v1/events/192/rankings/summaries/idolPoint/21
curl 'https://api.matsurihi.me/mltd/v1/events/192/rankings/summaries/idolPoint/21'
レスポンスボディ
[
{
"summaryTime": "2021-06-29T00:30:00+09:00",
"updateTime": "2021-06-29T00:31:04+09:00"
},
{
"summaryTime": "2021-06-29T01:00:00+09:00",
"updateTime": "2021-06-29T01:01:34+09:00"
},
{
"summaryTime": "2021-06-29T01:30:00+09:00",
"updateTime": "2021-06-29T01:31:04+09:00"
},
{
"summaryTime": "2021-06-29T02:00:00+09:00",
"updateTime": "2021-06-29T02:01:35+09:00"
}
]
ランキングのログの取得
順位に対するランキングのログを取得します。
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/:type/logs/:ranks
ETag / If-None-Match が利用できます。
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Enum type ランキングの種類
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
- Integer[] ranks 取得する順位のリスト
クエリパラメータ
- DateTime since 取得するログの開始時刻
このクエリパラメータを指定すると、その時刻以降のデータのみ返します。指定した時刻のデータは含まれません。
リクエストヘッダ
- String If-None-Match
レスポンス
レスポンスヘッダ
- String ETag
レスポンスボディ(配列)
Integer rank 順位
Object[] data ランキングのログ
Integer score スコア
DateTime aggregatedAt ランキングの集計日時
サンプル
https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/logs/1
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/logs/1'
レスポンスヘッダ
- ETag:
"a205260df8ddd3cc363f5d7b97d64a6d"
レスポンスボディ
[
{
"rank": 1,
"data": [
{
"score": 5754,
"aggregatedAt": "2021-11-30T15:30:00+09:00"
},
{
"score": 10920,
"aggregatedAt": "2021-11-30T16:00:00+09:00"
},
{
"score": 16674,
"aggregatedAt": "2021-11-30T16:30:00+09:00"
},
{
"score": 21840,
"aggregatedAt": "2021-11-30T17:00:00+09:00"
}
]
}
]
https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/logs/1
リクエストヘッダ
- If-None-Match:
"a205260df8ddd3cc363f5d7b97d64a6d"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/logs/1' \
-H 'If-None-Match: "a205260df8ddd3cc363f5d7b97d64a6d"'
ステータスコード: 304 Not Modified
レスポンスヘッダ
- ETag:
"a205260df8ddd3cc363f5d7b97d64a6d"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/logs/:type/:ranks
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Enum type ランキングの種類
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
- Integer[] ranks 取得する順位のリスト
クエリパラメータ
- DateTime timeMin 取得するログの開始時刻
このクエリパラメータを指定すると、その時刻以降のデータのみ返します。指定した時刻のデータを含みます。
リクエストヘッダ
- String If-None-Match
レスポンス
レスポンスボディ(配列)
Integer rank 順位
Object[] data ランキングのログ
Float score スコア
DateTime summaryTime ランキングの集計日時
サンプル
https://api.matsurihi.me/mltd/v1/events/212/rankings/logs/eventPoint/1
curl 'https://api.matsurihi.me/mltd/v1/events/212/rankings/logs/eventPoint/1'
レスポンスボディ
[
{
"rank": 1,
"data": [
{
"score": 5754.0,
"summaryTime": "2021-11-30T15:30:00+09:00"
},
{
"score": 10920.0,
"summaryTime": "2021-11-30T16:00:00+09:00"
},
{
"score": 16674.0,
"summaryTime": "2021-11-30T16:30:00+09:00"
},
{
"score": 21840.0,
"summaryTime": "2021-11-30T17:00:00+09:00"
}
]
}
]
ランキングのログの取得(アイドル別)
順位に対するアイドル別ランキングのログを取得します。
v2 の API ではイベント終了 24 時間以前は 30 分ごと、イベント終了 24 時間以内は 5 分ごとのすべてのデータを返します。v1 では常に 30 分ごとのデータのみ返します。
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/idolPoint/:idolId/logs/:ranks
ETag / If-None-Match が利用できます。
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Integer idolId アイドルの ID
- Integer[] ranks 取得する順位のリスト
クエリパラメータ
- DateTime since 取得するログの開始時刻
このクエリパラメータを指定すると、その時刻以降のデータのみ返します。指定した時刻のデータは含まれません。
- Boolean all 指定すると 30 分ごとに間引かずにすべてのデータを取得します
リクエストヘッダ
- String If-None-Match
レスポンス
レスポンスヘッダ
- String ETag
レスポンスボディ(配列)
Integer rank 順位
Object[] data ランキングのログ
Integer score スコア
DateTime aggregatedAt ランキングの集計日時
サンプル
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/logs/1
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/logs/1'
レスポンスヘッダ
- ETag:
"aef5c2e813c96fd099bd9ef7a92abaa0"
レスポンスボディ
[
{
"rank": 1,
"data": [
{
"score": 13888,
"aggregatedAt": "2021-06-29T00:30:00+09:00"
},
{
"score": 40782,
"aggregatedAt": "2021-06-29T01:00:00+09:00"
},
{
"score": 53640,
"aggregatedAt": "2021-06-29T01:30:00+09:00"
},
{
"score": 79416,
"aggregatedAt": "2021-06-29T02:00:00+09:00"
}
]
}
]
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/logs/1
リクエストヘッダ
- If-None-Match:
"aef5c2e813c96fd099bd9ef7a92abaa0"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/logs/1' \
-H 'If-None-Match: "aef5c2e813c96fd099bd9ef7a92abaa0"'
ステータスコード: 304 Not Modified
レスポンスヘッダ
- ETag:
"aef5c2e813c96fd099bd9ef7a92abaa0"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/logs/idolPoint/:idolId/:ranks
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Integer idolId アイドルの ID
- Integer[] ranks 取得する順位のリスト
クエリパラメータ
- DateTime timeMin 取得するログの開始時刻
このクエリパラメータを指定すると、その時刻以降のデータのみ返します。指定した時刻のデータを含みます。
リクエストヘッダ
- String If-None-Match
レスポンス
レスポンスボディ(配列)
Integer rank 順位
Object[] data ランキングのログ
Float score スコア
DateTime summaryTime ランキングの集計日時
サンプル
https://api.matsurihi.me/mltd/v1/events/192/rankings/logs/idolPoint/21/1
curl 'https://api.matsurihi.me/mltd/v1/events/192/rankings/logs/idolPoint/21/1'
レスポンスボディ
[
{
"rank": 1,
"data": [
{
"score": 13888.0,
"summaryTime": "2021-06-29T00:30:00+09:00"
},
{
"score": 40782.0,
"summaryTime": "2021-06-29T01:00:00+09:00"
},
{
"score": 53640.0,
"summaryTime": "2021-06-29T01:30:00+09:00"
},
{
"score": 79416.0,
"summaryTime": "2021-06-29T02:00:00+09:00"
}
]
}
]
ラウンジ関連 API
matsurihi.me のデータベース内のキャッシュを利用しているため、最新の情報ではない場合があります。
ラウンジ情報の取得
ラウンジの情報を取得します。
GET https://api.matsurihi.me/api/mltd/v2/lounges/:loungeId
リクエスト
パスパラメータ
- String loungeId ラウンジの ID
実 ID(UUID)および viewer Id(8 桁 Base32 のラウンジ ID)のどちらも利用できます。大文字小文字を無視します。
レスポンス
レスポンスボディ
String id ラウンジの実 ID(UUID)
String viewerId ラウンジの viewer Id(8 桁 Base32 のラウンジ ID)
String name ラウンジの名前
String comment ラウンジのコメント
Object master ラウンジマスターの情報
String name ラウンジマスターの名前
String icon ラウンジマスターのアイコン
Integer fan ファン数
32bit に収まらない可能性があります。64bit の整数型を利用してください。
Integer rank ランク
- 1: F
- 2: E
- 3: D
- 4: C
- 5: B
- 6: A
- 7: S
- 8: SS
Integer playStyleType プレイスタイル
- 1: フリーダム
- 2: まったり
- 3: 楽しく
- 4: コツコツ
- 5: 本気
Integer moodType 雰囲気
- 1: フリーダム
- 2: ゆるふわ
- 3: 紳士淑女
- 4: にぎやか
- 5: 無礼講
Integer approvalType 承認設定
- 1: 入室自由
- 2: 承認制
Integer numUsers ラウンジ参加人数
Integer numUsersLimit ラウンジ参加人数上限
DateTime createdAt ラウンジ開設日時
DateTime updatedAt 情報更新日時
GET https://api.matsurihi.me/mltd/v1/lounges/:loungeId
リクエスト
パスパラメータ
- String loungeId ラウンジの ID
実 ID(UUID)および viewer Id(8 桁 Base32 のラウンジ ID)のどちらも利用できます。大文字小文字を無視します。
レスポンス
レスポンスボディ
String id ラウンジの実 ID(UUID)
String viewerId ラウンジの viewer Id(8 桁 Base32 のラウンジ ID)
String name ラウンジの名前
String comment ラウンジのコメント
Integer userCount ラウンジ参加人数
Integer userCountLimit ラウンジ参加人数上限
Integer fan ファン数
32bit に収まらない可能性があります。64bit の整数型を利用してください。
String masterName ラウンジマスターの名前
DateTime createTime ラウンジ開設日時
DateTime updateTime 情報更新日時
ラウンジ検索
ラウンジを名前で検索します。
GET https://api.matsurihi.me/api/mltd/v2/lounges
リクエスト
クエリパラメータ
- String name ラウンジの名前
2 文字以上で指定してください。大文字小文字を無視します。
レスポンス
レスポンスボディ(配列)
ラウンジの情報の配列(/api/mltd/v2/lounges
と同じ形式です)
サンプル
https://api.matsurihi.me/api/mltd/v2/lounges?name=徳川まつり
curl 'https://api.matsurihi.me/api/mltd/v2/lounges?name=%E5%BE%B3%E5%B7%9D%E3%81%BE%E3%81%A4%E3%82%8A'
GET https://api.matsurihi.me/mltd/v1/lounges/search
リクエスト
パスパラメータ
- String name ラウンジの名前
2 文字以上で指定してください。大文字小文字を無視します。
- Boolean includeDeleted
このクエリはほとんど意味をなしません。非推奨です。
レスポンス
レスポンスボディ(配列)
String id ラウンジの実 ID(UUID)
String viewerId ラウンジの viewer Id(8 桁 Base32 のラウンジ ID)
String name ラウンジの名前
DateTime updateTime 情報更新日時
サンプル
https://api.matsurihi.me/mltd/v1/lounges/search?name=徳川まつり
curl 'https://api.matsurihi.me/mltd/v1/lounges/search?name=%E5%BE%B3%E5%B7%9D%E3%81%BE%E3%81%A4%E3%82%8A'
ラウンジのイベント実績の取得
ラウンジの過去のイベント実績を取得します。
GET https://api.matsurihi.me/api/mltd/v2/lounges/:loungeId/eventResults
リクエスト
パスパラメータ
- String loungeId ラウンジの ID
実 ID(UUID)および viewer Id(8 桁 Base32 のラウンジ ID)のどちらも利用できます。大文字小文字を無視します。
レスポンス
レスポンスボディ
Integer rank イベントの最終順位
Integer score イベントの最終スコア
Object event イベント情報
/api/mltd/v2/events
と同じ形式です。
GET https://api.matsurihi.me/mltd/v1/lounges/:loungeId/eventHistory
リクエスト
パスパラメータ
- String loungeId ラウンジの ID
実 ID(UUID)および viewer Id(8 桁 Base32 のラウンジ ID)のどちらも利用できます。大文字小文字を無視します。
レスポンス
レスポンスボディ
Integer eventId イベントの ID
String eventName イベントの名前
DateTime summaryTime 最終ランキングの集計時刻
Integer rank イベントの最終順位
Float score イベントの最終スコア
スターライトステージ エンドポイント一覧
ベースのパスは、v2 は /api/cgss/v2/
、v1 は /cgss/v1/
です。
バージョン関連 API
最新のアプリ・アセットバージョンの取得
最新のアプリバージョン、アセットバージョンを取得します。
GET https://api.matsurihi.me/api/cgss/v2/version/latest
レスポンス
レスポンスボディ
Object app アプリのバージョン情報
String version バージョン
DateTime updatedAt 強制アップデート日時
Object asset アセットのバージョン情報
Integer version バージョン
DateTime updatedAt 配信日時
サンプル
https://api.matsurihi.me/api/cgss/v2/version/latest
curl 'https://api.matsurihi.me/api/cgss/v2/version/latest'
レスポンスボディ
{
"app": {
"version": "8.4.0",
"updatedAt": "2022-12-07T12:01:00+09:00"
},
"asset": {
"version": 10102310,
"updatedAt": "2022-12-09T17:13:00+09:00"
}
}
GET https://api.matsurihi.me/cgss/v1/version/latest
レスポンス
レスポンスボディ
Object app アプリのバージョン情報
String version バージョン
DateTime updateTime 強制アップデート日時
Object res アセットのバージョン情報
Integer version バージョン
DateTime updateTime 配信日時
サンプル
https://api.matsurihi.me/cgss/v1/version/latest
curl 'https://api.matsurihi.me/cgss/v1/version/latest'
レスポンスボディ
{
"app": {
"version": "8.4.0",
"updateTime": "2022-12-07T12:01:00+09:00"
},
"res": {
"version": 10102310,
"updateTime": "2022-12-09T17:13:00+09:00"
}
}
アプリバージョンの取得
アプリのバージョン情報を取得します。
matsurihi.me が収集を開始した以降のバージョンのみ取得できます。
GET https://api.matsurihi.me/api/cgss/v2/version/apps/:version
リクエスト
パスパラメータ
- String version バージョン
バージョンを指定しない場合、レスポンスはすべてのバージョンの配列になります。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
String version バージョン
DateTime updatedAt 強制アップデート日時
サンプル
https://api.matsurihi.me/api/cgss/v2/version/apps
curl 'https://api.matsurihi.me/api/cgss/v2/version/apps'
レスポンスボディ
[
{
"version": "3.8.8",
"updatedAt": "2018-05-09T12:00:00+09:00"
},
{
"version": "3.8.9",
"updatedAt": "2018-06-14T12:04:00+09:00"
},
{
"version": "3.9.0",
"updatedAt": "2018-06-22T12:04:00+09:00"
},
{
"version": "3.9.1",
"updatedAt": "2018-07-19T15:28:00+09:00"
}
]
https://api.matsurihi.me/api/cgss/v2/version/apps/4.0.0
curl 'https://api.matsurihi.me/api/cgss/v2/version/apps/4.0.0'
レスポンスボディ
{
"version": "4.0.0",
"updatedAt": "2018-07-30T12:03:00+09:00"
}
アセットバージョンの取得
アセットのバージョン情報を取得します。
matsurihi.me が収集を開始した以降のバージョンのみ取得できます。
GET https://api.matsurihi.me/api/cgss/v2/version/assets/:version
リクエスト
パスパラメータ
- Integer version バージョン
バージョンを指定しない場合、レスポンスはすべてのバージョンの配列になります。
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer version バージョン
DateTime updatedAt 配信日時
サンプル
https://api.matsurihi.me/api/cgss/v2/version/assets
curl 'https://api.matsurihi.me/api/cgss/v2/version/assets'
レスポンスボディ
[
{
"version": 10038700,
"updatedAt": "2018-05-08T14:54:00+09:00"
},
{
"version": 10038710,
"updatedAt": "2018-05-08T20:03:00+09:00"
},
{
"version": 10038800,
"updatedAt": "2018-05-10T14:54:00+09:00"
}
]
https://api.matsurihi.me/api/cgss/v2/version/assets/10100000
curl 'https://api.matsurihi.me/api/cgss/v2/version/assets/10100000'
レスポンスボディ
{
"version": 10100000,
"updatedAt": "2022-09-23T15:00:00+09:00"
}
デレぽ関連 API
デレぽの投稿の取得
デレぽへの投稿を取得します。
GET https://api.matsurihi.me/api/cgss/v2/derepo/statuses/:statusId
リクエスト
パスパラメータ
- Integer statusId 投稿の ID
クエリパラメータ
- Integer idolId アイドルの ID
アイドルの ID は Starlight DB の URL のパスパラメータで確認できます。
- Integer groupId スレッドの ID
- Integer hashtagId ハッシュタグの ID
- DateTime until 投稿日時の上限
このパラメータで指定された日時を含みません。
- DateTime since 投稿日時の下限
このパラメータで指定された日時を含みます。
- Integer limit 取得する投稿の数
1 から 100 の範囲で指定できます。デフォルトは 10 です。
- Enum orderBy ソート順
postedAt
|id
|postedAt!
|id!
!
を付けると降順になります。デフォルト:postedAt!
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer id 投稿の ID
Integer groupId スレッドの ID
Integer groupOrder スレッド内の投稿の順序
Integer idolId アイドルの ID
String name 投稿時の名前
アイドルの名前ではなく投稿時の名前を返します。
String message 投稿の本文
HTML として表示されるテキストをそのまま返すため、
<br>
などのマークアップ文字列がそのまま含まれます。スタンプの投稿の場合には、stamp_only:stampId
の形式の特殊な本文が返ります。String iconPath
String|null imagePath
DateTime postedAt 投稿日時
Object[] hashtags ハッシュタグ
Integer id ハッシュタグの ID
String hashtag ハッシュタグの文字列
Object stamp? スタンプの情報
String id スタンプの ID
String name スタンプの名前
matsurihi.me 側で決定した非公式の名前を含みます。
サンプル
https://api.matsurihi.me/api/cgss/v2/derepo/statuses?limit=5&until=2022-12-15T18:48:00+09:00
curl 'https://api.matsurihi.me/api/cgss/v2/derepo/statuses?limit=5&until=2022-12-15T18:48:00+09:00'
レスポンスボディ
[
{
"id": 23489,
"groupId": 7470,
"groupOrder": 5,
"idolId": 127,
"name": "前川みく",
"message": "stamp_only:stamp_000092",
"iconPath": "7f2f2e676abb3c722e75984d18f27e43",
"imagePath": null,
"postedAt": "2022-12-15T18:47:00+09:00",
"hashtags": [],
"stamp": {
"id": "stamp_000092",
"name": "オラァ!"
}
},
{
"id": 23488,
"groupId": 7470,
"groupOrder": 4,
"idolId": 154,
"name": "安部菜々",
"message": "美味しそうですねぇ♪",
"iconPath": "2c0885cd5a23ae4fe8afdc20f0c4b836",
"imagePath": null,
"postedAt": "2022-12-15T18:43:00+09:00",
"hashtags": []
},
{
"id": 23487,
"groupId": 7470,
"groupOrder": 3,
"idolId": 178,
"name": "多田李衣菜",
"message": "みくちゃんがお魚を…!",
"iconPath": "41b54cbf88ce23e6389666aefda8aed7",
"imagePath": null,
"postedAt": "2022-12-15T18:41:00+09:00",
"hashtags": []
},
{
"id": 23486,
"groupId": 7470,
"groupOrder": 2,
"idolId": 192,
"name": "浅利七海",
"message": "ふわふわ♪おいしい♪<br>お魚ハンバーグ♪",
"iconPath": "2adcb8cf61115b7a739110f79f8b6d15",
"imagePath": null,
"postedAt": "2022-12-15T18:37:00+09:00",
"hashtags": []
},
{
"id": 23485,
"groupId": 7470,
"groupOrder": 1,
"idolId": 192,
"name": "浅利七海",
"message": "ハンバーグ♪<br>ハンバーグ♪",
"iconPath": "2adcb8cf61115b7a739110f79f8b6d15",
"imagePath": "f8aeecb8ce20f1ff9db85463995b4c4c",
"postedAt": "2022-12-15T18:36:00+09:00",
"hashtags": [
{
"id": 1642,
"hashtag": "晩ごはん!"
}
]
}
]
GET https://api.matsurihi.me/cgss/v1/derepo/statuses/:statusId
リクエスト
パスパラメータ
- Integer statusId 投稿の ID
クエリパラメータ
- Integer idolId アイドルの ID
アイドルの ID は Starlight DB の URL のパスパラメータで確認できます。
- Integer groupId スレッドの ID
- Integer hashtagId ハッシュタグの ID
- DateTime timeMax 投稿日時の上限
このパラメータで指定された日時を含みません。
- DateTime timeMin 投稿日時の下限
このパラメータで指定された日時を含みます。
- Integer maxResults 取得する投稿の数
1 から 100 の範囲で指定できます。デフォルトは 10 です。
- Enum orderBy ソート順
postedAt
|id
降順です。デフォルト:
postedAt
レスポンス
レスポンスボディ(パスパラメータ省略時のみ配列)
Integer id 投稿の ID
Integer groupId スレッドの ID
Integer groupOrder スレッド内の投稿の順序
Integer idolId アイドルの ID
String name 投稿時の名前
アイドルの名前ではなく投稿時の名前を返します。
String message 投稿の本文
HTML として表示されるテキストをそのまま返すため、
<br>
などのマークアップ文字列がそのまま含まれます。スタンプの投稿の場合には、stamp_only:stampId
の形式の特殊な本文が返ります。String iconPath
String imagePath?
DateTime postTime 投稿日時
Object[] hashtags ハッシュタグ
Integer id ハッシュタグの ID
String word ハッシュタグの文字列
サンプル
https://api.matsurihi.me/cgss/v1/derepo/statuses?maxResults=5&timeMax=2022-12-15T18:48:00+09:00
curl 'https://api.matsurihi.me/cgss/v1/derepo/statuses?maxResults=5&timeMax=2022-12-15T18:48:00+09:00'
レスポンスボディ
[
{
"id": 23489,
"groupId": 7470,
"groupOrder": 5,
"idolId": 127,
"name": "前川みく",
"message": "stamp_only:stamp_000092",
"iconPath": "7f2f2e676abb3c722e75984d18f27e43",
"postTime": "2022-12-15T18:47:00+09:00",
"hashtags": []
},
{
"id": 23488,
"groupId": 7470,
"groupOrder": 4,
"idolId": 154,
"name": "安部菜々",
"message": "美味しそうですねぇ♪",
"iconPath": "2c0885cd5a23ae4fe8afdc20f0c4b836",
"postTime": "2022-12-15T18:43:00+09:00",
"hashtags": []
},
{
"id": 23487,
"groupId": 7470,
"groupOrder": 3,
"idolId": 178,
"name": "多田李衣菜",
"message": "みくちゃんがお魚を…!",
"iconPath": "41b54cbf88ce23e6389666aefda8aed7",
"postTime": "2022-12-15T18:41:00+09:00",
"hashtags": []
},
{
"id": 23486,
"groupId": 7470,
"groupOrder": 2,
"idolId": 192,
"name": "浅利七海",
"message": "ふわふわ♪おいしい♪<br>お魚ハンバーグ♪",
"iconPath": "2adcb8cf61115b7a739110f79f8b6d15",
"postTime": "2022-12-15T18:37:00+09:00",
"hashtags": []
},
{
"id": 23485,
"groupId": 7470,
"groupOrder": 1,
"idolId": 192,
"name": "浅利七海",
"message": "ハンバーグ♪<br>ハンバーグ♪",
"iconPath": "2adcb8cf61115b7a739110f79f8b6d15",
"imagePath": "f8aeecb8ce20f1ff9db85463995b4c4c",
"postTime": "2022-12-15T18:36:00+09:00",
"hashtags": [
{
"id": 1642,
"word": "晩ごはん!"
}
]
}
]
デレぽのハッシュタグの一覧の取得
デレぽの投稿のハッシュタグの一覧を取得します。
GET https://api.matsurihi.me/api/cgss/v2/derepo/hashtags
レスポンス
レスポンスボディ(配列)
Integer id ハッシュタグの ID
String hashtag ハッシュタグの文字列
サンプル
https://api.matsurihi.me/api/cgss/v2/derepo/hashtags
curl 'https://api.matsurihi.me/api/cgss/v2/derepo/hashtags'
レスポンスボディ
[
{
"id": 1001,
"hashtag": "LIVEステージ裏"
},
{
"id": 1002,
"hashtag": "役作り"
},
{
"id": 1003,
"hashtag": "みんなでオフ !"
}
]
GET https://api.matsurihi.me/cgss/v1/derepo/hashtags
レスポンス
レスポンスボディ(配列)
Integer id ハッシュタグの ID
String word ハッシュタグの文字列
サンプル
https://api.matsurihi.me/cgss/v1/derepo/hashtags
curl 'https://api.matsurihi.me/cgss/v1/derepo/hashtags'
レスポンスボディ
[
{
"id": 1001,
"word": "LIVEステージ裏"
},
{
"id": 1002,
"word": "役作り"
},
{
"id": 1003,
"word": "みんなでオフ !"
}
]
デレぽのスタンプの一覧の取得
デレぽの投稿のスタンプの一覧を取得します。
ゲーム内で実装されているスタンプをもとに作成しているため、実際には使われていないスタンプも含まれています。一部のスタンプの名称は、matsurihi.me 側で決定した非公式な名称です。この API は v1 と v2 でまったく同じ結果を返します。
GET https://api.matsurihi.me/api/cgss/v2/derepo/stamps
レスポンス
レスポンスボディ(配列)
String id スタンプの ID
String name スタンプの名前
サンプル
https://api.matsurihi.me/api/cgss/v2/derepo/stamps
curl 'https://api.matsurihi.me/api/cgss/v2/derepo/stamps'
レスポンスボディ
[
{
"id": "stamp_000001",
"name": "がんばります!"
},
{
"id": "stamp_000002",
"name": "全力で行くよ"
},
{
"id": "stamp_000003",
"name": "ファイト!"
}
]
GET https://api.matsurihi.me/cgss/v1/derepo/stamps
レスポンス
レスポンスボディ(配列)
String id スタンプの ID
String name スタンプの名前
サンプル
https://api.matsurihi.me/cgss/v1/derepo/stamps
curl 'https://api.matsurihi.me/cgss/v1/derepo/stamps'
レスポンスボディ
[
{
"id": "stamp_000001",
"name": "がんばります!"
},
{
"id": "stamp_000002",
"name": "全力で行くよ"
},
{
"id": "stamp_000003",
"name": "ファイト!"
}
]
シャイニーカラーズ エンドポイント一覧
ベースのパスは /sc/v1/
です。
シャイニーカラーズ関連 API のみ、プロデュースアイドル・サポートアイドルとの混同を避けるため、アイドルを character
と表記します。
シャイニーカラーズの現行 API は v1 です。v2 API は現在開発中です。
バージョン関連 API
最新のアプリ・アセットバージョンの取得
最新のアプリバージョン、アセットバージョンを取得します。
GET https://api.matsurihi.me/c/v1/version/latest
レスポンス
レスポンスボディ
Object script スクリプトのバージョン情報
Integer version バージョン
DateTime updateTime 配信日時
Object asset アセットのバージョン情報
Integer version バージョン
DateTime updateTime 配信日時
サンプル
https://api.matsurihi.me/sc/v1/version/latest
curl 'https://api.matsurihi.me/sc/v1/version/latest'
レスポンスボディ
{
"script": {
"version": 269,
"updateTime": "2022-12-09T12:04:58+09:00"
},
"asset": {
"version": 225,
"updateTime": "2022-12-09T19:02:45+09:00"
}
}
ファンランキングイベント(プロデューサーズカップ)関連 API
2.5 周年以降のイベントのみ取得できます。
イベントの一覧の取得
ファンランキングイベントの一覧を取得します。
GET https://api.matsurihi.me/sc/v1/events/fanRanking
レスポンス
レスポンスボディ(配列)
Integer id ハッシュタグの ID
String name イベント名
DateTime beginTime イベント開始日時
DateTime endTime イベント終了日時
サンプル
https://api.matsurihi.me/sc/v1/events/fanRanking
curl 'https://api.matsurihi.me/sc/v1/events/fanRanking'
レスポンスボディ
[
{
"id": 40005,
"name": "2.5Anniversaryプロデューサーズカップ",
"beginTime": "2020-10-12T15:00:00+09:00",
"endTime": "2020-10-21T11:59:59+09:00"
},
{
"id": 40006,
"name": "3rd Anniversaryプロデューサーズカップ",
"beginTime": "2021-04-12T15:00:00+09:00",
"endTime": "2021-04-20T11:59:59+09:00"
},
{
"id": 40007,
"name": "3.5Anniversaryプロデューサーズカップ",
"beginTime": "2021-10-12T15:00:00+09:00",
"endTime": "2021-10-18T11:59:59+09:00"
},
{
"id": 40008,
"name": "4th Anniversaryプロデューサーズカップ",
"beginTime": "2022-04-11T15:00:00+09:00",
"endTime": "2022-04-17T11:59:59+09:00"
},
{
"id": 40009,
"name": "4.5Anniversaryプロデューサーズカップ",
"beginTime": "2022-10-11T15:00:00+09:00",
"endTime": "2022-10-16T11:59:59+09:00"
}
]
ランキングのログの取得
順位に対するランキングのログを取得します。
30 分ごとのログのみ取得できます。
GET https://api.matsurihi.me/sc/v1/events/fanRanking/:eventId/rankings/logs/:characterId/:ranks
リクエスト
パスパラメータ
- Integer eventId イベントの ID
- Integer characterId アイドルの ID
- 1: 櫻木真乃
- 2: 風野灯織
- 3: 八宮めぐる
- 4: 月岡恋鐘
- 5: 田中摩美々
- 6: 白瀬咲耶
- 7: 三峰結華
- 8: 幽谷霧子
- 9: 小宮果穂
- 10: 園田智代子
- 11: 西城樹里
- 12: 杜野凛世
- 13: 有栖川夏葉
- 14: 大崎甘奈
- 15: 大崎甜花
- 16: 桑山千雪
- 17: 芹沢あさひ
- 18: 黛冬優子
- 19: 和泉愛依
- 20: 浅倉透
- 21: 樋口円香
- 22: 福丸小糸
- 23: 市川雛菜
- 24: 七草にちか
- 25: 緋田美琴
- 26: 斑鳩ルカ
- Integer[] ranks 取得する順位のリスト
レスポンス
レスポンスボディ(配列)
Integer rank 順位
Object[] data ランキングのログ
Integer score スコア
DateTime summaryTime ランキングの集計日時
サンプル
https://api.matsurihi.me/sc/v1/events/fanRanking/40005/rankings/logs/1/1,2,3
curl 'https://api.matsurihi.me/sc/v1/events/fanRanking/40005/rankings/logs/1/1,2,3'
レスポンスボディ
[
{
"rank": 1,
"data": [
{
"score": 10232976,
"summaryTime": "2020-10-12T16:00:00+09:00"
},
{
"score": 19265458,
"summaryTime": "2020-10-12T16:30:00+09:00"
},
{
"score": 23650324,
"summaryTime": "2020-10-12T17:00:00+09:00"
}
]
},
{
"rank": 2,
"data": [
{
"score": 10080470,
"summaryTime": "2020-10-12T16:00:00+09:00"
},
{
"score": 16423491,
"summaryTime": "2020-10-12T16:30:00+09:00"
},
{
"score": 20916404,
"summaryTime": "2020-10-12T17:00:00+09:00"
}
]
},
{
"rank": 3,
"data": [
{
"score": 9999826,
"summaryTime": "2020-10-12T16:00:00+09:00"
},
{
"score": 16311059,
"summaryTime": "2020-10-12T16:30:00+09:00"
},
{
"score": 18641723,
"summaryTime": "2020-10-12T17:00:00+09:00"
}
]
}
]
必須アプリバージョンにもとづくため、実際には配信されていないバージョンが返される可能性があります。