メディア拡張API - kmycode/mastodon GitHub Wiki
通常のMastodonでは1つの投稿にメディアは4枚までしかありません。kmyblueでは、連合から来た投稿に限り、5枚目以降の取得にも対応しています(23/4現在、8枚まで)。kmyblueから投稿できるメディアは今まで通り4枚です。既存のクライアントアプリで表示崩れ・エラーを防ぐため、投稿取得時のAPIプロパティを分けています。
ただしkmyblueは今後8枚を超えた分にも対応する可能性があります。kmyblue以外のサーバーが将来、kmyblueよりも多くの枚数に対応する可能性もあります。クライアントアプリがUIを設計する時には、それを考慮することを推奨します。
廃止について
本APIは、多数のクライアントアプリで、Statusオブジェクトにおける5個以上の要素を含むmedia_attachmentsへの対応が確認されているため、近日廃止される見込みです。廃止後は/api/v1/instanceでkmyblue_extra_media_attachmentsが削除され、Statusオブジェクトのmedia_attachments_exプロパティが削除されます。その代わり、media_attachments配列には5個以上のメディア情報が含まれます
対応可否の判定方法
下記のエンドポイントで取得できるJSONについて
/api/v1/instance
/api/v2/instance
下記の配列に値があるかで判定してください
{
"fedibird_capabilities": [
"kmyblue_extra_media_attachments"
]
}
既存のオブジェクトに追加されたプロパティ
statusオブジェクトに以下のプロパティが追加されています。
{
"media_attachments_ex": []
}
中身のフォーマットはmedia_attachmentsと同一です。
media_attachmentsには1~4枚目、media_attachments_exには5枚目以降のメディア情報が含まれます。concatで利用することも可能です。