Princess — Public REST API
I invite you to the dreamy world
Public RESTful Application Programming Interface Series.
We provide APIs for developers.
Common Specification of Requests and Responses
- The success or failure of the API call can be determined by the HTTP status code. Status 200 means the API call is successful.
- The responses are formatted in JSON, and the responses are prettified in default. If you specify
prettyPrint=false
in the query, the responses will be minified, and the response will be a little faster. - There are 7 types of request parameters: string, integer, floating point number, boolean, datetime, enum, and array of those 6 types.
- Boolean values must be either
true
orfalse
. Other strings are not allowed. If the value is omitted, it is treated astrue
. - Time values can be specified in any format that Ruby's
Time.parse
accepts, but it is recommended to use the ISO 8601 format, like2022-02-04T01:23:45+09:00
. If the value isnow
, the value is treated as the current date and time. - Array-type query parameters can be specified by separating multiple values with commas.
Integer[]
query parameters can also be specified by ranges, like1-10,15,20
. - Array-type query parameters can also be specified like
idolId[]=21&idolID[]=22
according to the behavior of Rack. - Enum-type query parameters are used for event and card types. In addition to the strings shown in the document, the corresponding integer values are also accepted.
- The responses may contain integers that are too large to be represented in 32 bits. Depending on the JSON parser, the precision of such integers may be lost when parsing.
- Some API responses include an ETag header for each response. By using an ETag and an If-None-Match header, you can check whether the server has new data. For more details, please refer to the MDN documentation.
Notices
- This service shall be used for Good, not Evil. Do not use these APIs for a purpose that is offensive or derogatory to any other producers.
- Please cite the source as matsurihi.me whenever you host any public web services, Twitter bots, and so on.
- If you send too many requests in a short period, the server will return a 429 Too Many Requests response.
- Princess has two API versions: v1 and v2. V1 is now deprecated. We will not add any new feature to v1, and it will be removed in the future.
APIs for TheaterDays
The base path is /api/mltd/v2/
for v2 and /mltd/v1/
for v1.
indicates that the API is available for the global version. The base paths for the Korean version and the Traditional Chinese version is /api/mltd/v2/ko/
and /api/mltd/v2/zh/
, respectively. The Japanese version is also available from /api/mltd/v2/ja/
. Some v1 APIs are also available for the global version.
APIs for Version Information
Get the latest app and asset versions
Get the latest app and asset versions.
GET https://api.matsurihi.me/api/mltd/v2/version/latest
Response
Response Body
Object app App version information
String version Version
DateTime updatedAt Forced update date and time
Integer|null revision Revision number
The value will be
null
if the version is not actually released.
Object asset Asset version information
Integer version Version
DateTime updatedAt Delivery date and time
String indexName
Examples
https://api.matsurihi.me/api/mltd/v2/version/latest
curl 'https://api.matsurihi.me/api/mltd/v2/version/latest'
Response Body
{
"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
Response
Response Body
Object app App version information
Since this API is based on the required version, the app version may not be actually released.
String version Version
DateTime updateTime Forced update date and time
Integer revision Revision number
The value will be
0
if the version is not actually released.
Object res Asset version information
Integer version Version
DateTime updateTime Delivery date and time
String indexName
Examples
https://api.matsurihi.me/mltd/v1/version/latest
curl 'https://api.matsurihi.me/mltd/v1/version/latest'
Response Body
{
"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 the app versions
Get the app version information.
Since this API is based on the required version, some app versions may not be actually released.
GET https://api.matsurihi.me/api/mltd/v2/version/apps/:version
Request
Path Parameters
- String version Version
If the version is not specified, the response will be an array of all versions.
Response
Response Body (Array only when the path parameter is not specified)
String version Version
DateTime updatedAt Forced update date and time
Integer|null revision Revision number
The value will be
null
if the version is not actually released.
Examples
https://api.matsurihi.me/api/mltd/v2/version/apps
curl 'https://api.matsurihi.me/api/mltd/v2/version/apps'
Response Body
[
{
"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'
Response Body
{
"version": "1.0.6",
"updatedAt": "2017-06-28T00:00:00+09:00",
"revision": 63141
}
GET https://api.matsurihi.me/mltd/v1/version/apps/:version
Request
Path Parameters
- String version Version
If the version is not specified, the response will be an array of all versions.
Response
Response Body (Array only when the path parameter is not specified)
String version Version
DateTime updateTime Forced update date and time
Integer revision Revision number
The value will be
0
if the version is not actually released.
Examples
https://api.matsurihi.me/mltd/v1/version/apps
curl 'https://api.matsurihi.me/mltd/v1/version/apps'
Response Body
[
{
"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'
Response Body
{
"version": "1.0.6",
"updateTime": "2017-06-28T00:00:00+09:00",
"revision": 63141
}
Get the asset versions
Get the asset version information.
GET https://api.matsurihi.me/api/mltd/v2/version/assets/:version
Request
Path Parameters
- Integer version Version
If the version is not specified, the response will be an array of all versions.
Response
Response Body (Array only when the path parameter is not specified)
Integer version Version
DateTime updatedAt Delivery date and time
String indexName
Examples
https://api.matsurihi.me/api/mltd/v2/version/assets
curl 'https://api.matsurihi.me/api/mltd/v2/version/assets'
Response Body
[
{
"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'
Response Body
{
"version": 1,
"updatedAt": "2017-06-29T12:00:00+09:00",
"indexName": "6b976a4c875a1984592a66b621872ce44c944e72.data"
}
GET https://api.matsurihi.me/mltd/v1/version/assets/:version
Request
Path Parameters
- Integer version Version
If the version is not specified, the response will be an array of all versions.
Response
Response Body (Array only when the path parameter is not specified)
Integer version Version
DateTime updateTime Delivery date and time
String indexName
Examples
https://api.matsurihi.me/mltd/v1/version/assets
curl 'https://api.matsurihi.me/mltd/v1/version/assets'
Response Body
[
{
"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'
Response Body
{
"version": 1,
"updateTime": "2017-06-29T12:00:00+09:00",
"indexName": "6b976a4c875a1984592a66b621872ce44c944e72.data"
}
APIs for Idol Information
Get the idol information
Get the information of the idols.
This API provides only the information of the idols. The information of the staffs cannot be obtained.
GET https://api.matsurihi.me/api/mltd/v2/idols/:idolId
Request
Path Parameters
- Integer idolId ID of the idol
If the ID is not specified, the response will be an array of all idols.
Response
Response Body (Array only when the path parameter is not specified)
Integer id ID
Integer sortId ID used for sorting when displayed
String resourceId ID used for resource access
Integer type Type of the idol
- 1: Princess
- 2: Fairy
- 3: Angel
- 5: Ex
String fullName Full name of the idol
String displayName Display name of the idol
String lastName Last name of the idol
For Julia, Shika and Leon, the value will be
"ジュリア"
,"詩花"
, and"玲音"
, respectively.String|null firstName First name of the idol
The value will be
null
for Julia, Shika or Leon.String alphabetName Full name of the idol in English
String fullNameRuby Pronunciation of the idol's name
Integer|null age Age of the idol
If the age is unknown, the value will be
null
.Object birthplace Birthplace of the idol
Integer id ID of the birthplace
String name Name of the birthplace
Object handednessType Handedness of the idol
Integer id ID of the handedness
String name Handedness
Float height Height of the idol
The unit is cm. If the height is unknown, the value will be
0.0
.Float weight Weight of the idol
The unit is kg. If the height is unknown, the value will be
0.0
.String hobby Hobby of the idol
String speciality Specialty of the idol
String favorites Favorite things of the idol
String cv Voice actress of the idol
String colorCode Color code of the idol's personal color
Object birthday Birthday of the idol
If the birthday is unknown, the value will be 0/0.
Integer month Month
Integer day Day
Object constellation Birth constellation of the idol
Integer id ID of the constellation
String name Name of the constellation
Object bloodType Blood type of the idol
Integer id ID of the blood type
String name Blood type
Object measurements Vital statistics of the idol
The unit is cm. If the size is unknown, the value will be
0.0
.Float bust
Float waist
Float hip
Examples
https://api.matsurihi.me/api/mltd/v2/idols/21
curl 'https://api.matsurihi.me/api/mltd/v2/idols/21'
Response Body
{
"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
}
}
APIs for Card Information
Get information of the cards
Get the information of the cards.
For the calculation method of the appeal values of the cards at any level, see How to calculate the appeal values in TheaterDays.
GET https://api.matsurihi.me/api/mltd/v2/cards/:cardId
Request
Path Parameters
- Integer[] cardId ID of the card
Even if only one ID is specified, the response will be an array. For cards with multiple rarities (such as anniversary event cards), the response array will contain multiple elements. Unlike v1 API, the query parameters are still valid even if the ID is specified.
Query Parameters
- Integer[] idolId ID of the idol
- Enum[] rarity Rarity
<Integer>
|n
|r
|sr
|ssr
- Enum[] exType Type of the card
<Integer>
|none
|pst
|pstr
|pstp
|fes
|anniversary
|extra
|shs
- Boolean includeCostumes Whether to include detailed costume information
- Boolean includeParameters Whether to include parameter information
- Boolean includeLines Whether to include lines
- Boolean includeSkills Whether to include skill information
- Boolean includeEvents Whether to include event information
- String[] orderBy Sort order
id
|sortId
|rarity
|idolId
|addedAt
|id!
|sortId!
|rarity!
|idolId!
|addedAt!
Append
!
to the end to sort in descending order. The default issortId,rarity
.
Response
Response Body (Array)
Integer id ID
String name Name of the card
Integer sortId ID used for sorting when displayed
Integer idolId ID of the idol
Integer idolType Type of the idol
- 1: Princess
- 2: Fairy
- 3: Angel
- 5: Ex
Integer variation Variation (value indicating the number of card for the idol)
Integer rarity Rarity
- 1: N
- 2: R
- 3: SR
- 4: SSR
String resourceId ID used for resource access
Integer exType Type of the card
- 0: None
- 2: Reward for high ranks in PST events
- 3: Reward for earning points in PST events
- 4: Fes-limited
- 5: Rewards in the 1st anniversary event
- 6: Extra
- 7: Rewards in the 2nd anniversary event
- 8: Reward for high ranks in PST events (Extra)
- 9: Reward for earning points in PST events (Extra)
- 10: Rewards in the 3rd anniversary event
- 11: Reward for high ranks in PST events (Extra)
- 12: Reward for earning points in PST events (Extra)
- 13: Rewards in the 4th anniversary event
- 14: Provided in Second Hair Style Gashas
- 15: Sold in special events
- 16: Rewards in the 5th anniversary event
- 17: PR cards
- 18: Rewards in the Million Live! 10th anniversary event
- 19: Rewards in the 6th anniversary event
- 20: Million-linkage-limited
Integer category Category of the card
- 0: Unknown
- 10: Normal
- 20: Gasha (permanently available)
- 21: Gasha (limited)
- 22: Gasha (only available in Fes)
- 24: Gasha (only available in Premium Pickup SR Gashas)
- 25: Gasha (only available in Second Hairstyle Gashas)
- 26: Gasha (only available in Million Linkage Gashas)
- 30: Event rewards (Millionlive Collection / SR)
- 31: Event rewards
- 32: Event rewards
- 33: Event rewards (anniversary events)
- 34: Extra cards for THE@TER BOOST! (such as “三姉妹カフェ[黒ネコ] 北沢志保”)
- 35: Event rewards (Millionlive Collection / R)
- 36: Event rewards (Million Live! anniversary events)
- 37: Extra cards for THE@TER CHALLENGE!! (such as “孤島サスペンスホラー[娘] 水瀬伊織”)
- 41: Cards for extra idols
- 42: Cards for extra idols (sold in some packages)
- 43: Improted cards from foreign versions (such as “Kawaii最先端♡ 星井美希”)
- 44: PR cards
- 99: Others
Object costumes Costumes of the card
Object default Default costume
If
includeCostume
isfalse
, onlyid
will be included.Integer id Costume ID
Integer sortId? ID of the costume used for sorting when displayed
String name? Name of the costume
String description? Description of the costume
String resourceId? ID used for resource access
String modelId? ID of the 3D model
Integer|null costumeGroupId? ID of the costume group
The value will be
null
in foreign versions.Integer|null collaborationNumber? ID of the texture of the costume with texture variations
The value will be
null
in foreign versions. The value will be0
if the texture is not applied.Integer|null defaultHairstyle? ID of the default hairstyle
The value will be
null
in foreign versions.Integer|null defaultHairColor? ID of the default hair color
The value will be
null
in foreign versions.Boolean|null hasAnotherShader? Whether another shader is available
The value will be
null
in foreign versions.Object|null accessory? Accessory information
The value will be
null
in foreign versions.Integer id Accessory ID
String resourceId ID used for resource access
Integer default Default ID
DateTime releasedAt? Date and time when the costume was added
Object bonus Bonus costume for the 4th master rank
The format is the same as
$.costumes.default
.Object rank5 Bonus costume for the 5th master rank
The format is the same as
$.costumes.default
.
Integer masterRankMax Maximum master rank
Integer skillLvMax Maximum skill level
Object parameters? Parameter information
This will be included only if
includeParameters
istrue
.Object vocal Vocal parameter
Integer base Value at the 0th level
Object beforeAwakened Information before awakening
Float diff Amount of increase per level
Integer max Value at the maximum level
Object afterAwakened Information after awakening
The format is the same as
$.parameters.vocal.beforeAwakened
.Integer masterBonus Bonus value per master rank
Object dance Dance parameter
The format is the same as
$.parameters.vocal
.Object visual Visual parameter
The format is the same as
$.parameters.vocal
.Object lvMax Maximum level
Integer beforeAwakened Maximum level before awakening
Integer afterAwakened Maximum level after awakening
Object life Life
The life does not change before and after awakening, but it is returned separately before and after awakening.
Integer beforeAwakened Life before awakened
Integer afterAwakened Life after awakened
Object centerEffect? Information of center effect
This will be included only if
includeSkills
istrue
.Integer id ID of the center effect
String name Name of the center effect
String description Description of the center effect
Integer idolType Idol type to which the center effect is applied
- 1: Princess
- 2: Fairy
- 3: Angel
- 4: All
Integer specificIdolType Idol type that all idols should have when the center effect is applied
- 0: No requirements
- 1: All idols must be Princess
- 2: All idols must be Fairy
- 3: All idols must be Angel
- 4: All types must be included
Integer songType Song type required for the center effect to be applied
- 0: No requirements
- 1: Princess
- 2: Fairy
- 3: Angel
Integer[] attributes Parameters to which the center effect is applied
- 1: Vocal
- 2: Dance
- 3: Visual
- 4: All appeal parameters
- 5: Life
- 6: Skill activation probability
- 7: Amount of double boost
- 8: Amount of double effect
- 9: Affection points
Integer[] values Value of the center effect (in percentage)
String skillName? Name of the skill
This will be included only if
includeSkills
istrue
.Object[] skills? Information of the skills
This will be included only if
includeSkills
istrue
. The skill can be taken multiple times, so this field is an array.Integer id ID of the skill
Integer effectId ID of the effect of the skill
- 1: Score bonus
- 2: Combo bonus
- 3: Healer
- 4: Life guard
- 5: Combo guard
- 6: Perfect lock
- 7: Double boost
- 8: Multi-up
- 9: Multi-bonus
- 10: Overclock
- 11: Over-rondo
- 12: Double effect
- 17: Fusion score
- 18: Fusion combo
Integer duration Duration of the skill (in seconds)
Integer interval Interval of the skill activation (in seconds)
Integer probability Probability of the skill activation (in percentage, at skill level 0)
Integer[] evaluationTypes Conditions of the skill activation
- 0: All
- 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 Value of the skill effect
String description Description of the skill
The placeholder for the activation probability is
{0}
.
Object lines? Information of the lines
This will be included only if
includeLines
istrue
. The placeholder for the producer name is{$P$}
.Object flavor Flavor text
String beforeAwakened Flavor text before awakening
String afterAwakened Flavor text after awakening
Object contact Lines at the time of contact
For compatibility with past wrong implementations, the field names are meaningless since they are left as they were initially implemented.
String beforeAwakened First line at the time of contact
String afterAwakened Second line at the time of contact
String awakening Lines at the time of awakening
DateTime addedAt Date and time when the card was added
Object event Information of the event
This will be included only if
includeEvents
is specified and the card is a event reward. The format is the same as the response of the event API (/api/mltd/v2/events
).
Examples
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'
Response Body
[
{
"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'
Response Body
[
{
"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
Request
Path Parameters
- Integer[] cardId ID of the card
Even if only one ID is specified, the response will be an array. For cards with multiple rarities (such as anniversary event cards), the response array will contain multiple elements. If the ID is specified, query parameters will be ignored.
Query Parameters
- Integer[] idolId ID of the idol
- Enum[] rarity Rarity
<Integer>
|n
|r
|sr
|ssr
- Enum[] extraType Type of the card
<Integer>
|none
|pst
|pstr
|pstp
|fes
|anniversary
|ex
|shs
Response
Response Body (Array)
Integer id ID
String name Name of the card
Integer sortId ID used for sorting when displayed
Integer idolId ID of the idol
Integer idolType Type of the idol
- 1: Princess
- 2: Fairy
- 3: Angel
- 5: Ex
String resourceId ID used for resource access
Integer rarity Rarity
- 1: N
- 2: R
- 3: SR
- 4: SSR
Integer eventId? ID of the event that the card was rewarded in
String category Category
This field is deprecated.
Integer extraType Type of the card
- 0: None
- 2: Reward for high ranks in PST events
- 3: Reward for earning points in PST events
- 4: Fes-limited
- 5: Rewards in the 1st anniversary event
- 6: Extra
- 7: Rewards in the 2nd anniversary event
- 8: Reward for high ranks in PST events (Extra)
- 9: Reward for earning points in PST events (Extra)
- 10: Rewards in the 3rd anniversary event
- 11: Reward for high ranks in PST events (Extra)
- 12: Reward for earning points in PST events (Extra)
- 13: Rewards in the 4th anniversary event
- 14: Provided in Second Hair Style Gashas
- 15: Sold in special events
- 16: Rewards in the 5th anniversary event
- 17: PR cards
- 18: Rewards in the Million Live! 10th anniversary event
- 19: Rewards in the 6th anniversary event
- 20: Million-linkage-limited
Object costume? Costumes of the card
Integer id Costume ID
String name Name of the costume
String description Description of the costume
String resourceId ID used for resource access
String modelId ID of the 3D model
Integer sortId ID of the costume used for sorting when displayed
Object bonusCostume? Bonus costume for the 4th master rank
The format is the same as
$.costume
.Object rank5Costume? Bonus costume for the 5th master rank
The format is the same as
$.costume
.String flavorText Flavor text before awakening
The placeholder for the producer name is
{$P$}
.String flavorTextAwakened Flavor text after awakening
The placeholder for the producer name is
{$P$}
.String awakeningText Lines at the time of awakening
The placeholder for the producer name is
{$P$}
.Integer levelMax Maximum level before awakening
Integer levelMaxAwakened Maximum level after awakening
Integer vocalMin Vocal value at Lv. 1 before awakening
Integer vocalMax Vocal value at maximum level before awakening
Integer vocalMinAwakened Vocal value at Lv. 1 after awakening
Integer vocalMaxAwakened Vocal value at maximum level after awakening
Integer vocalMasterBonus Bonus vocal value per master rank
Integer danceMin Dance value at Lv. 1 before awakening
Integer danceMax Dance value at maximum level before awakening
Integer danceMinAwakened Dance value at Lv. 1 after awakening
Integer danceMaxAwakened Dance value at maximum level after awakening
Integer danceMasterBonus Bonus dance value per master rank
Integer visualMin Visual value at Lv. 1 before awakening
Integer visualMax Visual value at maximum level before awakening
Integer visualMinAwakened Visual value at Lv. 1 after awakening
Integer visualMaxAwakened Visual value at maximum level after awakening
Integer visualMasterBonus Bonus visual value per master rank
Integer life Life
Integer masterRankMax Maximum master rank
Object centerEffect Information of center effect
Integer id ID of the center effect
String description Description of the center effect
Integer idolType Idol type to which the center effect is applied
- 1: Princess
- 2: Fairy
- 3: Angel
- 4: All
Integer specificIdolType? Idol type that all idols should have when the center effect is applied
- 0: No requirements
- 1: All idols must be Princess
- 2: All idols must be Fairy
- 3: All idols must be Angel
- 4: All types must be included
Integer attribute? Parameter to which the center effect is applied
- 1: Vocal
- 2: Dance
- 3: Visual
- 4: All appeal parameters
- 5: Life
- 6: Skill activation probability
- 7: Amount of double boost
- 8: Amount of double effect
- 9: Affection points
Integer value? Value of the center effect (in percentage)
Integer songType? Song type required for the center effect to be applied
- 0: No requirements
- 1: Princess
- 2: Fairy
- 3: Angel
Integer attribute2? 2nd parameter to which the center effect is applied
Integer value2? Value of the center effect for the 2nd effect (in percentage)
Integer attribute3? 3rd parameter to which the center effect is applied
Integer value3? Value of the center effect for the 3rd effect (in percentage)
Integer attribute? 4th parameter to which the center effect is applied
Integer value4? Value of the center effect for the 4th effect (in percentage)
Integer attribute5? 5th parameter to which the center effect is applied
Integer value5? Value of the center effect for the 5th effect (in percentage)
String centerEffectName Name of the center effect
Object[] skill? Information of the skills
This will be omitted if the card has no skills. The skill can be taken multiple times, so this field is an array.
Integer id ID of the skill
String description Description of the skill
The placeholder for the activation probability is
{0}
.Integer effectId ID of the effect of the skill
- 1: Score bonus
- 2: Combo bonus
- 3: Healer
- 4: Life guard
- 5: Combo guard
- 6: Perfect lock
- 7: Double boost
- 8: Multi-up
- 9: Multi-bonus
- 10: Overclock
- 11: Over-rondo
- 12: Double effect
- 17: Fusion score
- 18: Fusion combo
Integer evaluation Conditions of the skill activation
- 0: All
- 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 Condition of the 2nd skill activation
Integer evaluation3 Condition of the 3rd skill activation
Integer duration Duration of the skill (in seconds)
Integer interval Interval of the skill activation (in seconds)
Integer probability Probability of the skill activation (in percentage, at skill level 0)
Integer[] value Value of the skill effect
Integer skillLevelMax Maximum skill level
String skillName Name of the skill
DateTime addDate? Date and time when the card was added
This will be omitted if the card was implemented at the time of release.
Integer galleryType
This field is deprecated.
Examples
https://api.matsurihi.me/mltd/v1/cards/1515
curl 'https://api.matsurihi.me/mltd/v1/cards/1515'
Response Body
[
{
"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
}
]
APIs for Event Information
Get information of the events.
Get information of the events.
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId
Request
Path Parameters
- Integer eventId ID of the event
Query Parameters
- DateTime at Get information of the event held at the specified date and time.
- Enum[] type Type of the event
<Integer>
|showtime
|millicolle
|theater
|tour
|anniversary
|working
|aprilfool
|gamecorner
|twinstage
|tune
|tale
|talkparty
|treasure
- String[] orderBy Sort order
id
|type
|beginAt
|id!
|type!
|beginAt!
Append
!
to the end to sort in descending order. The default isbeginAt
.
Response
Response Body (Array only when the path parameter is not specified)
Integer id ID
Integer type Type of the event
- 1: Showtime
- 2: Millicolle!
- 3: Theater / Trust
- 4: Tour / Tour Bingo
- 5: Anniversary
- 6: Working
- 7: April Fool
- 8: Game Corner
- 9: Millicolle! (Box Gasha)
- 10: Twin Stage (High Score by Song)
- 11: Tune
- 12: Twin Stage (Total High Score)
- 13: Tale / Time / Team
- 14: Talk Party
- 16: Treasure
Integer appealType Parameter that the bonus is applied to
- 0: None
- 1: Vocal
- 2: Dance
- 3: Visual
String name Name of the event
Object schedule Schedule information of the event
DateTime beginAt Start date and time of the event
DateTime endAt End date and time of the event
DateTime pageOpenedAt Start date and time of the event page
DateTime pageClosedAt End date and time of the event page
DateTime|null boostBeginAt Start date and time of the second half
DateTime|null boostEndAt End date and time of the second half
Object item Item information of PST events, etc.
This field is included even if the event does not have an item, but the content will be
null
.String|null name Name of the item
String|null shortName Short name of the item
Object cards? Information of the reward cards
Included only when the pass parameter is specified. The format is the same as the card API (
/api/mltd/v2/cards
) with no query parameters.
Examples
https://api.matsurihi.me/api/mltd/v2/events?type=4,9
curl 'https://api.matsurihi.me/api/mltd/v2/events?type=4,9'
Response Body
[
{
"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'
Response Body
{
"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
Request
Path Parameters
- Integer eventId ID of the event
Query Parameters
- DateTime at Get information of the event held at the specified date and time.
- Enum[] type Type of the event
<Integer>
|showtime
|millicolle
|theater
|tour
|anniversary
|working
|aprilfool
|gamecorner
|twinstage
|tune
|tale
|talkparty
|treasure
- String[] orderBy Sort order
id | beginTime
Default:
beginTime
Response
Response Body (Array only when the path parameter is not specified)
Integer id ID
String name Name of the event
Integer type Type of the event
- 1: Showtime
- 2: Millicolle!
- 3: Theater / Trust
- 4: Tour / Tour Bingo
- 5: Anniversary
- 6: Working
- 7: April Fool
- 8: Game Corner
- 9: Millicolle! (Box Gasha)
- 10: Twin Stage (High Score by Song)
- 11: Tune
- 12: Twin Stage (Total High Score)
- 13: Tale / Time / Team
- 14: Talk Party
- 16: Treasure
Integer appealType Parameter that the bonus is applied to
- 1: Vocal
- 2: Dance
- 3: Visual
Object schedule Schedule information of the event
DateTime beginDate Start date and time of the event
DateTime endDate End date and time of the event
DateTime pageBeginDate Start date and time of the event page
DateTime pageEndDate End date and time of the event page
DateTime boostBeginDate? Start date and time of the second half
DateTime boostEndDate? End date and time of the second half
Examples
https://api.matsurihi.me/mltd/v1/events?type=11,13
curl 'https://api.matsurihi.me/mltd/v1/events?type=11,13'
Response Body
[
{
"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'
Response Body
{
"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"
}
}
APIs for Event Ranking Information
Data that is not obtained by matsurihi.me cannot be obtained. Data for individual rankings from “Good-Sleep, Baby♡” to ”花ざかり Weekend✿” is provided by TheaterGate. Points and scores are returned as Float in v1 and Integer in v2.
Get the border information
Get the information about the reward borders for the ranking events.
This API returns the same response for v1 and v2.
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/borders
Request
Path Parameters
- Integer eventId ID of the event
Response
Response Body
Integer[] eventPoint? Event point ranking
Integer[] highScore? High score ranking
Integer[] highScore2? High score ranking (the second song / for twin stage events)
Integer[] highScoreTotal? Total high score ranking (for tune events, etc.)
Integer[] loungePoint? Lounge ranking
Object[] idolPoint? Ranking by idol
Integer idolId ID of the idol
Integer[] borders Points of the reward borders
This field is different from events before and after “私たちの R@inbow!,” where the top-10 titles are added.
Examples
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borders
curl 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borders'
Response Body
{
"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
Request
Path Parameters
- Integer eventId ID of the event
Response
Response Body
Integer[] eventPoint? Event point ranking
Integer[] highScore? High score ranking
Integer[] highScore2? High score ranking (the second song / for twin stage events)
Integer[] highScoreTotal? Total high score ranking (for tune events, etc.)
Integer[] loungePoint? Lounge ranking
Object[] idolPoint? Ranking by idol
Integer idolId ID of the idol
Integer[] borders Points of the reward borders
This field is different from events before and after “私たちの R@inbow!,” where the top-10 titles are added.
Examples
https://api.matsurihi.me/mltd/v1/events/192/rankings/borders
curl 'https://api.matsurihi.me/mltd/v1/events/192/rankings/borders'
Response Body
{
"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 the current scores on the reward borders
Get the current points or scores on the reward borders.
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/borderPoints
ETag / If-None-Match is available.
Request
Path Parameters
- Integer eventId ID of the event
Request Headers
- String If-None-Match
Response
Response Headers
- String ETag
Response Body
Object eventPoint? Event point ranking
Object scores List of scores on the reward borders
Integer rank Rank
Integer score Score
DateTime aggregatedAt Date and time of the ranking aggregation
DateTime updatedAt? Date and time of the ranking update
This field does not exist if the time of the ranking update is unknown.
Integer count Number of participants in the ranking
Object highScore? High score ranking
The format is the same as
$.eventPoint
.Object highScore2? High score ranking (the second song / for twin stage events)
The format is the same as
$.eventPoint
.Object highScoreTotal? Total high score ranking (for tune events, etc.)
The format is the same as
$.eventPoint
.Object loungePoint? Lounge ranking
The format is the same as
$.eventPoint
.Object[] idolPoint? Ranking by idol
The number of participants in the ranking is not included for the ranking by idol.
Integer idolId ID of the idol
Object scores List of scores on the reward borders
Integer rank Rank
Integer score Score
DateTime aggregatedAt Date and time of the ranking aggregation
DateTime updatedAt? Date and time of the ranking update
This field does not exist if the time of the ranking update is unknown.
Examples
https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borderPoints
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borderPoints'
Response Headers
- ETag:
"c10c461d47c21e417ca4f458f692a0f0"
Response Body
{
"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
Request Headers
- If-None-Match:
"c10c461d47c21e417ca4f458f692a0f0"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/borderPoints' \
-H 'If-None-Match: "c10c461d47c21e417ca4f458f692a0f0"'
Status Code: 304 Not Modified
Response Headers
- ETag:
"c10c461d47c21e417ca4f458f692a0f0"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/borderPoints
The border of the per-idol ranking is not included due to historical reasons.
Request
Path Parameters
- Integer eventId ID of the event
Response
Response Body
Object eventPoint? Event point ranking
Object scores List of scores on the reward borders
Integer rank Rank
Float score Score
DateTime summaryTime Date and time of the ranking aggregation
Integer count Number of participants in the ranking
Object highScore? High score ranking
The format is the same as
$.eventPoint
.Object highScore2? High score ranking (the second song / for twin stage events)
The format is the same as
$.eventPoint
.Object highScoreTotal? Total high score ranking (for tune events, etc.)
The format is the same as
$.eventPoint
.Object loungePoint? Lounge ranking
The format is the same as
$.eventPoint
.
Examples
https://api.matsurihi.me/mltd/v1/events/192/rankings/borderPoints
curl 'https://api.matsurihi.me/mltd/v1/events/192/rankings/borderPoints'
Response Body
{
"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 the summaries of the rankings
Get the summaries of the rankings.
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/:type/summaries
ETag / If-None-Match is available.
Request
Path Parameters
- Integer eventId ID of the event
- Enum type Type of the ranking
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
Request Headers
- String If-None-Match
Response
Response Headers
- String ETag
Response Body (Array)
Integer count Number of participants in the ranking
DateTime aggregatedAt Time of aggregation
DateTime updatedAt? Time of update
This field does not exist if the time of the ranking update is unknown.
Examples
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'
Response Headers
- ETag:
"09de5b28ae3ac9b715876ed07a8dc457"
Response Body
[
{
"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
Request Headers
- If-None-Match:
"09de5b28ae3ac9b715876ed07a8dc457"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/summaries' \
-H 'If-None-Match: "09de5b28ae3ac9b715876ed07a8dc457"'
Status Code: 304 Not Modified
Response Headers
- ETag:
"09de5b28ae3ac9b715876ed07a8dc457"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/summaries/:type
Request
Path Parameters
- Integer eventId ID of the event
- Enum type Type of the ranking
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
Response
Response Body (Array)
Integer count Number of participants in the ranking
DateTime summaryTime Time of aggregation
DateTime updateTime? Time of update
This field does not exist if the time of the ranking update is unknown.
Examples
https://api.matsurihi.me/mltd/v1/events/212/rankings/summaries/eventPoint
curl 'https://api.matsurihi.me/mltd/v1/events/212/rankings/summaries/eventPoint'
Response Body
[
{
"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"
}
]
Get the summaries of the rankings by idol
Get the summaries of the rankings by idol.
For v2, by default, this API returns summaries every 30 minutes before 24 hours before the end of the event, and those every 5 minutes within 24 hours before the end of the event. For v1, this API returns summaries only every 30 minutes.
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/idolPoint/:idolId/summaries
ETag / If-None-Match is available.
Request
Path Parameters
- Integer eventId ID of the event
- Integer idolId ID of the idol
Query Parameters
- Boolean all Flag to get all the data without downsampling
Request Headers
- String If-None-Match
Response
Response Headers
- String ETag
Response Body (Array)
DateTime aggregatedAt Time of aggregation
DateTime updatedAt? Time of update
This field does not exist if the time of the ranking update is unknown.
Examples
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'
Response Headers
- ETag:
"5a07c2b93dd2e0c742e7ab54f3a58f94"
Response Body
[
{
"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
Request Headers
- If-None-Match:
"5a07c2b93dd2e0c742e7ab54f3a58f94"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/192/rankings/idolPoint/21/summaries' \
-H 'If-None-Match: "5a07c2b93dd2e0c742e7ab54f3a58f94"'
Status Code: 304 Not Modified
Response Headers
- ETag:
"5a07c2b93dd2e0c742e7ab54f3a58f94"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/summaries/idolPoint/:idolId
Request
Path Parameters
- Integer eventId ID of the event
- Integer idolId ID of the idol
Response
Response Body (Array)
DateTime summaryTime Time of aggregation
DateTime updateTime? Time of update
This field does not exist if the time of the ranking update is unknown.
Examples
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'
Response Body
[
{
"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 ranking logs
Get the logs of the rankings by rank.
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/:type/logs/:ranks
ETag / If-None-Match is available.
Request
Path Parameters
- Integer eventId ID of the event
- Enum type Type of the ranking
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
- Integer[] ranks List of ranks to get
Query Parameters
- DateTime since Start time of the logs to get
If this query parameter is specified, this API returns only the data after the specified time. The data at the specified time is not included.
Request Headers
- String If-None-Match
Response
Response Headers
- String ETag
Response Body (Array)
Integer rank Rank
Object[] data Logs of the ranking
Integer score Score
DateTime aggregatedAt Date and time of the ranking aggregation
Examples
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'
Response Headers
- ETag:
"a205260df8ddd3cc363f5d7b97d64a6d"
Response Body
[
{
"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
Request Headers
- If-None-Match:
"a205260df8ddd3cc363f5d7b97d64a6d"
curl --include 'https://api.matsurihi.me/api/mltd/v2/events/212/rankings/eventPoint/logs/1' \
-H 'If-None-Match: "a205260df8ddd3cc363f5d7b97d64a6d"'
Status Code: 304 Not Modified
Response Headers
- ETag:
"a205260df8ddd3cc363f5d7b97d64a6d"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/logs/:type/:ranks
Request
Path Parameters
- Integer eventId ID of the event
- Enum type Type of the ranking
eventPoint
|highScore
|highScore2
|highScoreTotal
|loungePoint
- Integer[] ranks List of ranks to get
Query Parameters
- DateTime timeMin Start time of the logs to get
If this query parameter is specified, this API returns only the data after the specified time. The data at the specified time is included.
Request Headers
- String If-None-Match
Response
Response Body (Array)
Integer rank Rank
Object[] data Logs of the ranking
Float score Score
DateTime summaryTime Date and time of the ranking aggregation
Examples
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'
Response Body
[
{
"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"
}
]
}
]
Get ranking logs (by idol)
Get the logs of the per-idol rankings by rank.
For v2, by default, this API returns logs every 30 minutes before 24 hours before the end of the event, and those every 5 minutes within 24 hours before the end of the event. For v1, this API returns logs only every 30 minutes.
GET https://api.matsurihi.me/api/mltd/v2/events/:eventId/rankings/idolPoint/:idolId/logs/:ranks
ETag / If-None-Match is available.
Request
Path Parameters
- Integer eventId ID of the event
- Integer idolId ID of the idol
- Integer[] ranks List of ranks to get
Query Parameters
- DateTime since Start time of the logs to get
If this query parameter is specified, this API returns only the data after the specified time. The data at the specified time is not included.
- Boolean all Flag to get all the data without downsampling
Request Headers
- String If-None-Match
Response
Response Headers
- String ETag
Response Body (Array)
Integer rank Rank
Object[] data Logs of the ranking
Integer score Score
DateTime aggregatedAt Date and time of the ranking aggregation
Examples
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'
Response Headers
- ETag:
"aef5c2e813c96fd099bd9ef7a92abaa0"
Response Body
[
{
"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
Request Headers
- 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"'
Status Code: 304 Not Modified
Response Headers
- ETag:
"aef5c2e813c96fd099bd9ef7a92abaa0"
GET https://api.matsurihi.me/mltd/v1/events/:eventId/rankings/logs/idolPoint/:idolId/:ranks
Request
Path Parameters
- Integer eventId ID of the event
- Integer idolId ID of the idol
- Integer[] ranks List of ranks to get
Query Parameters
- DateTime timeMin Start time of the logs to get
If this query parameter is specified, this API returns only the data after the specified time. The data at the specified time is included.
Request Headers
- String If-None-Match
Response
Response Body (Array)
Integer rank Rank
Object[] data Logs of the ranking
Float score Score
DateTime summaryTime Date and time of the ranking aggregation
Examples
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'
Response Body
[
{
"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"
}
]
}
]
APIs for Lounge Information
These APIs are provided using caches on matsurihi.me's database, so the data may not be up-to-date.
Get the lounge information
Get the information about the specified lounge.
GET https://api.matsurihi.me/api/mltd/v2/lounges/:loungeId
Request
Path Parameters
- String loungeId ID of the lounge
You can use either the actual ID (UUID) or the viewer ID (8-digit Base32 lounge ID). This field is case-insensitive.
Response
Response Body
String id Actual ID (UUID) of the lounge
String viewerId Viewer ID (8-digit Base32 lounge ID) of the lounge
String name Name of the lounge
String comment Comment of the lounge
Object master Information of the master of the lounge
String name Name of the master of the lounge
String icon Icon of the master of the lounge
Integer fan Number of fans
This value may exceed 32 bits. Please use a 64-bit integer type.
Integer rank Rank
- 1: F
- 2: E
- 3: D
- 4: C
- 5: B
- 6: A
- 7: S
- 8: SS
Integer playStyleType Play style
- 1: Freely
- 2: Relaxing
- 3: With fun
- 4: Constantly
- 5: Seriously
Integer moodType Mood of the lounge
- 1: Freely
- 2: Relaxing
- 3: Gentlemanly
- 4: Lively
- 5: Informal
Integer approvalType Approval
- 1: Free to enter
- 2: Approval required
Integer numUsers Number of producers in the lounge
Integer numUsersLimit Maximum number of producers in the lounge
DateTime createdAt Creation date and time of the lounge
DateTime updatedAt Date and time of the last update of the lounge information
GET https://api.matsurihi.me/mltd/v1/lounges/:loungeId
Request
Path Parameters
- String loungeId ID of the lounge
You can use either the actual ID (UUID) or the viewer ID (8-digit Base32 lounge ID). This field is case-insensitive.
Response
Response Body
String id Actual ID (UUID) of the lounge
String viewerId Viewer ID (8-digit Base32 lounge ID) of the lounge
String name Name of the lounge
String comment Comment of the lounge
Integer userCount Number of producers in the lounge
Integer userCountLimit Maximum number of producers in the lounge
Integer fan Number of fans
This value may exceed 32 bits. Please use a 64-bit integer type.
String masterName Name of the master of the lounge
DateTime createTime Creation date and time of the lounge
DateTime updateTime Date and time of the last update of the lounge information
Search lounges
Search lounges by name.
GET https://api.matsurihi.me/api/mltd/v2/lounges
Request
Query Parameters
- String name Name of the lounge
Please specify at least 2 characters. This field is case-insensitive.
Response
Response Body (Array)
Array of the lounge information (same format as /api/mltd/v2/lounges
)
Examples
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
Request
Path Parameters
- String name Name of the lounge
Please specify at least 2 characters. This field is case-insensitive.
- Boolean includeDeleted
This query is almost meaningless. It is deprecated.
Response
Response Body (Array)
String id Actual ID (UUID) of the lounge
String viewerId Viewer ID (8-digit Base32 lounge ID) of the lounge
String name Name of the lounge
DateTime updateTime Date and time of the last update of the lounge information
Examples
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 the event results of the specified lounge
Get the event results of the specified lounge.
GET https://api.matsurihi.me/api/mltd/v2/lounges/:loungeId/eventResults
Request
Path Parameters
- String loungeId ID of the lounge
You can use either the actual ID (UUID) or the viewer ID (8-digit Base32 lounge ID). This field is case-insensitive.
Response
Response Body
Integer rank Final rank of the event
Integer score Final score of the event
Object event Event information
Same format as
/api/mltd/v2/events
.
GET https://api.matsurihi.me/mltd/v1/lounges/:loungeId/eventHistory
Request
Path Parameters
- String loungeId ID of the lounge
You can use either the actual ID (UUID) or the viewer ID (8-digit Base32 lounge ID). This field is case-insensitive.
Response
Response Body
Integer eventId ID of the event
String eventName Name of the event
DateTime summaryTime Time when the final ranking was calculated
Integer rank Final rank of the event
Float score Final score of the event
APIs for Starlight Stage
The base path is /api/cgss/v2/
for v2 and /cgss/v1/
for v1.
APIs for Version Information
Get the latest app and asset versions
Get the latest app and asset versions.
GET https://api.matsurihi.me/api/cgss/v2/version/latest
Response
Response Body
Object app App version information
String version Version
DateTime updatedAt Forced update date and time
Object asset Asset version information
Integer version Version
DateTime updatedAt Delivery date and time
Examples
https://api.matsurihi.me/api/cgss/v2/version/latest
curl 'https://api.matsurihi.me/api/cgss/v2/version/latest'
Response Body
{
"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
Response
Response Body
Object app App version information
String version Version
DateTime updateTime Forced update date and time
Object res Asset version information
Integer version Version
DateTime updateTime Delivery date and time
Examples
https://api.matsurihi.me/cgss/v1/version/latest
curl 'https://api.matsurihi.me/cgss/v1/version/latest'
Response Body
{
"app": {
"version": "8.4.0",
"updateTime": "2022-12-07T12:01:00+09:00"
},
"res": {
"version": 10102310,
"updateTime": "2022-12-09T17:13:00+09:00"
}
}
Get the app versions
Get the app version information.
You can only get the version information after matsurihi.me started collecting.
GET https://api.matsurihi.me/api/cgss/v2/version/apps/:version
Request
Path Parameters
- String version Version
If the version is not specified, the response will be an array of all versions.
Response
Response Body (Array only when the path parameter is not specified)
String version Version
DateTime updatedAt Forced update date and time
Examples
https://api.matsurihi.me/api/cgss/v2/version/apps
curl 'https://api.matsurihi.me/api/cgss/v2/version/apps'
Response Body
[
{
"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'
Response Body
{
"version": "4.0.0",
"updatedAt": "2018-07-30T12:03:00+09:00"
}
Get the asset versions
Get the asset version information.
You can only get the version information after matsurihi.me started collecting.
GET https://api.matsurihi.me/api/cgss/v2/version/assets/:version
Request
Path Parameters
- Integer version Version
If the version is not specified, the response will be an array of all versions.
Response
Response Body (Array only when the path parameter is not specified)
Integer version Version
DateTime updatedAt Delivery date and time
Examples
https://api.matsurihi.me/api/cgss/v2/version/assets
curl 'https://api.matsurihi.me/api/cgss/v2/version/assets'
Response Body
[
{
"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'
Response Body
{
"version": 10100000,
"updatedAt": "2022-09-23T15:00:00+09:00"
}
APIs for Derepo Information
Get Derepo Posts
Get Derepo posts.
GET https://api.matsurihi.me/api/cgss/v2/derepo/statuses/:statusId
Request
Path Parameters
- Integer statusId Post ID
Query Parameters
- Integer idolId Idol ID
The idol ID can be found in the path parameter of the URL of Starlight DB.
- Integer groupId Thread ID
- Integer hashtagId Hashtag ID
- DateTime until Upper limit of post date
The response will not include the posts posted at date specified by this parameter.
- DateTime since Lower limit of post date
The response will include the posts posted at date specified by this parameter.
- Integer limit Number of posts to get
The value must be between 1 and 100. The default value is 10.
- Enum orderBy Sort order
postedAt
|id
|postedAt!
|id!
Append
!
to sort in descending order. Default:postedAt!
Response
Response Body (Array only when the path parameter is not specified)
Integer id Post ID
Integer groupId Thread ID
Integer groupOrder Post order in thread
Integer idolId Idol ID
String name Username
The username at the time of posting is returned, not the idol name.
String message Post body
The text to be displayed as HTML is returned as it is, so markup strings such as
<br>
are included. If it is a stamp post, the message will be formatted instamp_only:stampId
.String iconPath
String|null imagePath
DateTime postedAt Post date
Object[] hashtags Hashtags
Integer id Hashtag ID
String hashtag Hashtag
Object stamp? Stamp information
String id Stamp ID
String name Stamp name
Some stamps have unofficial names determined by matsurihi.me.
Examples
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'
Response Body
[
{
"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
Request
Path Parameters
- Integer statusId Post ID
Query Parameters
- Integer idolId Idol ID
The idol ID can be found in the path parameter of the URL of Starlight DB.
- Integer groupId Thread ID
- Integer hashtagId Hashtag ID
- DateTime timeMax Upper limit of post date
The response will not include the posts posted at date specified by this parameter.
- DateTime timeMin Lower limit of post date
The response will include the posts posted at date specified by this parameter.
- Integer maxResults Number of posts to get
The value must be between 1 and 100. The default value is 10.
- Enum orderBy Sort order
postedAt
|id
The results are sorted in descending order. Default:
postedAt
Response
Response Body (Array only when the path parameter is not specified)
Integer id Post ID
Integer groupId Thread ID
Integer groupOrder Post order in thread
Integer idolId Idol ID
String name Username
The username at the time of posting is returned, not the idol name.
String message Post body
The text to be displayed as HTML is returned as it is, so markup strings such as
<br>
are included. If it is a stamp post, the message will be formatted instamp_only:stampId
.String iconPath
String imagePath?
DateTime postTime Post date
Object[] hashtags Hashtags
Integer id Hashtag ID
String word Hashtag
Examples
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'
Response Body
[
{
"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 Derepo hashtag list
Get the list of hashtags of Derepo posts.
GET https://api.matsurihi.me/api/cgss/v2/derepo/hashtags
Response
Response Body (Array)
Integer id Hashtag ID
String hashtag Hashtag
Examples
https://api.matsurihi.me/api/cgss/v2/derepo/hashtags
curl 'https://api.matsurihi.me/api/cgss/v2/derepo/hashtags'
Response Body
[
{
"id": 1001,
"hashtag": "LIVEステージ裏"
},
{
"id": 1002,
"hashtag": "役作り"
},
{
"id": 1003,
"hashtag": "みんなでオフ !"
}
]
GET https://api.matsurihi.me/cgss/v1/derepo/hashtags
Response
Response Body (Array)
Integer id Hashtag ID
String word Hashtag
Examples
https://api.matsurihi.me/cgss/v1/derepo/hashtags
curl 'https://api.matsurihi.me/cgss/v1/derepo/hashtags'
Response Body
[
{
"id": 1001,
"word": "LIVEステージ裏"
},
{
"id": 1002,
"word": "役作り"
},
{
"id": 1003,
"word": "みんなでオフ !"
}
]
Get Derepo stamp list
Get the list of the stamps of Derepo posts.
The list of the stamps is based on the stamps implemented in the game, so it includes stamps that are not actually used in the posts. Some stamps have unofficial names determined by matsurihi.me. This API returns the same result for both v1 and v2.
GET https://api.matsurihi.me/api/cgss/v2/derepo/stamps
Response
Response Body (Array)
String id Stamp ID
String name Stamp name
Examples
https://api.matsurihi.me/api/cgss/v2/derepo/stamps
curl 'https://api.matsurihi.me/api/cgss/v2/derepo/stamps'
Response Body
[
{
"id": "stamp_000001",
"name": "がんばります!"
},
{
"id": "stamp_000002",
"name": "全力で行くよ"
},
{
"id": "stamp_000003",
"name": "ファイト!"
}
]
GET https://api.matsurihi.me/cgss/v1/derepo/stamps
Response
Response Body (Array)
String id Stamp ID
String name Stamp name
Examples
https://api.matsurihi.me/cgss/v1/derepo/stamps
curl 'https://api.matsurihi.me/cgss/v1/derepo/stamps'
Response Body
[
{
"id": "stamp_000001",
"name": "がんばります!"
},
{
"id": "stamp_000002",
"name": "全力で行くよ"
},
{
"id": "stamp_000003",
"name": "ファイト!"
}
]
APIs for Shiny Colors
The base path is /sc/v1/
.
For Shiny Colors APIs, the term character
is used instead of idol
to avoid confusion with the term Produce Idols and Support Idols.
The current API version for Shiny Colors is v1. V2 API is under development.
APIs for Version Information
Get the latest app and asset versions
Get the latest app and asset versions.
GET https://api.matsurihi.me/c/v1/version/latest
Response
Response Body
Object script Script version information
Integer version Version
DateTime updateTime Release date and time
Object asset Asset version information
Integer version Version
DateTime updateTime Release date and time
Examples
https://api.matsurihi.me/sc/v1/version/latest
curl 'https://api.matsurihi.me/sc/v1/version/latest'
Response Body
{
"script": {
"version": 269,
"updateTime": "2022-12-09T12:04:58+09:00"
},
"asset": {
"version": 225,
"updateTime": "2022-12-09T19:02:45+09:00"
}
}
APIs for Fan Ranking Events (Producer's Cup)
Only events after the 2.5th anniversary can be retrieved.
Get a list of events
Get a list of fan ranking events.
GET https://api.matsurihi.me/sc/v1/events/fanRanking
Response
Response Body (Array)
Integer id Hashtag ID
String name Event name
DateTime beginTime Event start date and time
DateTime endTime Event end date and time
Examples
https://api.matsurihi.me/sc/v1/events/fanRanking
curl 'https://api.matsurihi.me/sc/v1/events/fanRanking'
Response Body
[
{
"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"
}
]
Get ranking logs
Get the logs of the rankings by rank.
This API returns logs only every 30 minutes.
GET https://api.matsurihi.me/sc/v1/events/fanRanking/:eventId/rankings/logs/:characterId/:ranks
Request
Path Parameters
- Integer eventId ID of the event
- Integer characterId ID of the idol
- 1: Mano Sakuragi
- 2: Hiori Kazano
- 3: Meguru Hachimiya
- 4: Kogane Tsukioka
- 5: Mamimi Tanaka
- 6: Sakuya Shirase
- 7: Yuika Mitsumine
- 8: Kiriko Yukoku
- 9: Kaho Komiya
- 10: Chiyoko Sonoda
- 11: Juri Saijo
- 12: Rinze Morino
- 13: Natsuha Arisugawa
- 14: Amana Osaki
- 15: Tenka Osaki
- 16: Chiyuki Kuwayama
- 17: Asahi Serizawa
- 18: Fuyuko Mayuzumi
- 19: Mei Izumi
- 20: Toru Asakura
- 21: Madoka Higuchi
- 22: Koito Fukumaru
- 23: Hinana Ichikawa
- 24: Nichika Nanakusa
- 25: Mikoto Aketa
- 26: Luca Ikaruga
- Integer[] ranks List of ranks to get
Response
Response Body (Array)
Integer rank Rank
Object[] data Logs of the ranking
Integer score Score
DateTime summaryTime Date and time of the ranking aggregation
Examples
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'
Response Body
[
{
"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"
}
]
}
]
Since this API is based on the required version, the app version may not be actually released.