API リファレンス
mixi2 API のリファレンスです。
共通仕様
プロトコル
gRPC を使用します。
Protocol Buffers 定義は以下のリポジトリで公開しています。
認証
OAuth 2.0 による認証が必要です。認証情報の取得方法はクイックスタートを参照してください。
RPC一覧
GetUsers
指定したユーザーIDリストに対応するユーザー情報を取得します。
GetUsersRequest
ユーザー情報取得リクエストです。
| Field | Type | Description |
|---|---|---|
| user_id_list | repeated string | 取得対象のユーザーIDを指定してください。 |
GetUsersResponse
ユーザー情報取得レスポンスです。
| Field | Type | Description |
|---|---|---|
| users | repeated User | ユーザー情報の一覧です。 |
GetPosts
指定したポストIDリストに対応するポスト情報を取得します。
GetPostsRequest
ポスト情報取得リクエストです。
| Field | Type | Description |
|---|---|---|
| post_id_list | repeated string | 取得対象のポストIDを指定してください。 |
GetPostsResponse
ポスト情報取得レスポンスです。
| Field | Type | Description |
|---|---|---|
| posts | repeated Post | ポスト情報の一覧です。 |
CreatePost
ポストを作成します(返信/引用/メディア添付等に対応)。
CreatePostRequest
in_reply_to_post_id と quoted_post_id は同時に指定できません。
| Field | Type | Description |
|---|---|---|
| text | string | ポストの本文を指定してください。 |
| in_reply_to_post_id | optional string | 返信先ポストIDを指定してください(任意)。 |
| quoted_post_id | optional string | 引用対象ポストIDを指定してください(任意)。 |
| media_id_list | repeated string | 添付するメディアID一覧を指定してください(最大4件)。 |
| post_mask | optional PostMask | ポストに適用するマスクを指定してください(任意)。 |
| publishing_type | optional PostPublishingType | ポストの配信設定を指定してください。 |
CreatePostResponse
ポスト作成レスポンスです。
| Field | Type | Description |
|---|---|---|
| post | Post | 作成されたポスト情報です。 |
InitiatePostMediaUpload
ポストやメッセージ(ルーム送信/DM)に添付するメディアのアップロードを開始し、アップロード先URLを発行します。
InitiatePostMediaUploadRequest
メディアアップロード開始リクエストです。
| Field | Type | Description |
|---|---|---|
| content_type | string | アップロードするデータのContent-Typeを指定してください。 |
| data_size | uint64 | アップロードするデータサイズ(バイト)を指定してください。 |
| media_type | Type | メディア種別を指定してください。 |
| description | optional string | メディアの説明を指定してください(任意)。 |
InitiatePostMediaUploadResponse
メディアアップロード開始レスポンスです。
| Field | Type | Description |
|---|---|---|
| media_id | string | アップロード状況確認や、ポスト/メッセージに送信時にメディアを添付するためのIDです。 |
| upload_url | string | メディアデータをアップロードするためのURLです。 |
GetPostMediaStatus
指定したメディアIDのアップロード/処理状況を取得します。
GetPostMediaStatusRequest
メディアアップロード状況取得リクエストです。
| Field | Type | Description |
|---|---|---|
| media_id | string | アップロード状況を確認する対象のメディアIDを指定してください。 |
GetPostMediaStatusResponse
メディアアップロード状況取得レスポンスです。
| Field | Type | Description |
|---|---|---|
| status | Status | メディアのアップロード/処理状況です。 |
SendChatMessage
指定したルームにチャットメッセージを送信します(テキスト/メディア添付)。
SendChatMessageRequest
text または media_id のいずれかは必須です。
| Field | Type | Description |
|---|---|---|
| room_id | string | 送信先ルームIDを指定してください。 |
| text | optional string | 送信するテキストを指定してください(任意)。 |
| media_id | optional string | 添付するメディアIDを指定してください(任意)。 |
SendChatMessageResponse
チャットメッセージ送信レスポンスです。
| Field | Type | Description |
|---|---|---|
| message | ChatMessage | 送信されたメッセージです。 |
GetStamps
スタンプ一覧を取得します。
GetStampsRequest
スタンプ一覧取得リクエストです。
| Field | Type | Description |
|---|---|---|
| official_stamp_language | optional LanguageCode | 取得する公式スタンプの言語を指定してください(任意)。未指定の場合、公式スタンプ一覧は空で返されます。 |
GetStampsResponse
スタンプ一覧取得レスポンスです。
| Field | Type | Description |
|---|---|---|
| official_stamp_sets | repeated OfficialStampSet | 指定言語の公式スタンプセット一覧です。 |
AddStampToPost
指定したポストにスタンプを付与します。
AddStampToPostRequest
ポストへのスタンプ付与リクエストです。
| Field | Type | Description |
|---|---|---|
| post_id | string | スタンプを付与する対象のポストIDを指定してください。指定可能なポストIDは次の通りです。• アプリケーションにメンションしているポストID |
| stamp_id | string | 付与するスタンプIDを指定してください。指定可能なスタンプIDは次の通りです。• 公式スタンプID |
AddStampToPostResponse
ポストへのスタンプ付与レスポンスです。
| Field | Type | Description |
|---|---|---|
| post | Post | 更新されたポストです。 |
SubscribeEvents
イベントをストリーミングで購読します。
SubscribeEventsRequest
イベント購読リクエストです。
(no fields)
SubscribeEventsResponse
イベント購読レスポンスです。
| Field | Type | Description |
|---|---|---|
| events | repeated Event | 受信したイベントの情報です。 |
メッセージ型
ChatMessageReceivedEvent
チャットメッセージを受信したことを通知するイベントです。
| field_name | field_type | field_description |
|---|---|---|
| event_reason_list | repeated EventReason | イベントが発生した理由を示します。 |
| message | ChatMessage | 受信したメッセージの情報です。 |
| issuer | User | メッセージを送信したユーザーです。 |
Event
アプリケーションが受信するイベントを表します。
| field_name | field_type | field_description |
|---|---|---|
| event_id | string | イベントIDです。 |
| event_type | EventType | イベントの種別です。 |
| ping_event | oneof (body) PingEvent | event_type が EVENT_TYPE_PING の場合に設定されます。 |
| post_created_event | oneof (body) PostCreatedEvent | event_type が EVENT_TYPE_POST_CREATED の場合に設定されます。 |
| chat_message_received_event | oneof (body) ChatMessageReceivedEvent | event_type が EVENT_TYPE_CHAT_MESSAGE_RECEIVED の場合に設定されます。 |
PingEvent
疎通確認用のイベントです。
(no fields)
PostCreatedEvent
ポストが作成されたことを通知するイベントです。
| field_name | field_type | field_description |
|---|---|---|
| event_reason_list | repeated EventReason | イベントが発生した理由を示します。 |
| post | Post | 作成されたポストの情報です。 |
| issuer | User | ポストしたユーザーの情報です。 |
Media
メディアを表します。
| field_name | field_type | field_description |
|---|---|---|
| media_type | MediaType | メディアの種別です。 |
| image | oneof (content) MediaImage | media_type が MEDIA_TYPE_IMAGE の場合に設定されます。 |
| video | oneof (content) MediaVideo | media_type が MEDIA_TYPE_VIDEO の場合に設定されます。 |
MediaImage
画像の情報を表します。
| field_name | field_type | field_description |
|---|---|---|
| large_image_url | string | 大きいサイズの画像のURLです。 |
| large_image_mime_type | string | 大きいサイズの画像のMIMEタイプです。 |
| large_image_height | uint32 | 大きいサイズの画像の高さ(ピクセル)です。 |
| large_image_width | uint32 | 大きいサイズの画像の幅(ピクセル)です。 |
| small_image_url | string | 小さいサイズの画像のURLです。 |
| small_image_mime_type | string | 小さいサイズの画像のMIMEタイプです。 |
| small_image_height | uint32 | 小さいサイズの画像の高さ(ピクセル)です。 |
| small_image_width | uint32 | 小さいサイズの画像の幅(ピクセル)です。 |
MediaStamp
スタンプ画像の情報を表します。
| field_name | field_type | field_description |
|---|---|---|
| url | string | スタンプ画像のURLです。 |
| mime_type | string | スタンプ画像のMIMEタイプです。 |
| height | uint32 | スタンプ画像の高さ(ピクセル)です。 |
| width | uint32 | スタンプ画像の幅(ピクセル)です。 |
MediaVideo
動画の情報を表します。
| field_name | field_type | field_description |
|---|---|---|
| video_url | string | 動画のURLです。 |
| video_mime_type | string | 動画のMIMEタイプです。 |
| video_height | uint32 | 動画の高さ(ピクセル)です。 |
| video_width | uint32 | 動画の幅(ピクセル)です。 |
| preview_image_url | string | 動画のプレビュー画像のURLです。 |
| preview_image_mime_type | string | 動画のプレビュー画像のMIMEタイプです。 |
| preview_image_height | uint32 | 動画のプレビュー画像の高さ(ピクセル)です。 |
| preview_image_width | uint32 | 動画のプレビュー画像の幅(ピクセル)です。 |
| duration | float | 動画の再生時間(秒)です。 |
ChatMessage
チャットメッセージを表します。
| field_name | field_type | field_description |
|---|---|---|
| room_id | string | メッセージが送信されたルームのIDです。 |
| message_id | string | メッセージIDです。 |
| creator_id | string | メッセージ送信者のユーザーIDです。 |
| text | string | メッセージのテキストです。 |
| created_at | Timestamp | メッセージ送信日時です。 |
| media_list | repeated Media | メッセージに添付されたメディア一覧です。 |
| post_id | optional string | メッセージに引用されているポストIDです。 |
Post
ポストを表します。
| field_name | field_type | field_description |
|---|---|---|
| post_id | string | ポストIDです。 |
| is_deleted | bool | ポストが削除されているかどうかを示します。削除されている場合、post_id 以外のフィールドはデフォルト値を返します。 |
| creator_id | string | ポスト作成者のユーザーIDです。 |
| text | string | ポストの本文です。 |
| created_at | Timestamp | ポスト作成日時です。 |
| post_media_list | repeated PostMedia | ポストに添付されたメディア一覧です。 |
| in_reply_to_post_id | optional string | 返信先のポストIDです。 |
| post_mask | optional PostMask | ポストに適用されるマスク情報です。 |
| visibility | PostVisibility | ポストを閲覧可能かどうかを示します。 |
| access_level | PostAccessLevel | ポストの公開設定を示します。 |
| stamps | repeated PostStamp | ポストに付与されたスタンプの一覧です。 |
| reader_stamp_id | optional string | 現在のアプリケーションがすでにこのポストに付与したスタンプIDです。 |
PostMask
ポストに適用されるマスク情報を表します。
| field_name | field_type | field_description |
|---|---|---|
| mask_type | PostMaskType | マスクのタイプです。 |
| caption | string | マスクのキャプションです。 |
PostMedia
ポストに添付されたメディアを表します。
| field_name | field_type | field_description |
|---|---|---|
| media_type | PostMediaType | メディアの種別です。 |
| image | oneof (content) PostMediaImage | media_type が POST_MEDIA_TYPE_IMAGE の場合に設定されます。 |
| video | oneof (content) PostMediaVideo | media_type が POST_MEDIA_TYPE_VIDEO の場合に設定されます。 |
PostMediaImage
ポストに添付された画像の情報を表します。
| field_name | field_type | field_description |
|---|---|---|
| large_image_url | string | 大きいサイズの画像のURLです。 |
| large_image_mime_type | string | 大きいサイズの画像のMIMEタイプです。 |
| large_image_height | uint32 | 大きいサイズの画像の高さ(ピクセル)です。 |
| large_image_width | uint32 | 大きいサイズの画像の幅(ピクセル)です。 |
| small_image_url | string | 小さいサイズの画像のURLです。 |
| small_image_mime_type | string | 小さいサイズの画像のMIMEタイプです。 |
| small_image_height | uint32 | 小さいサイズの画像の高さ(ピクセル)です。 |
| small_image_width | uint32 | 小さいサイズの画像の幅(ピクセル)です。 |
PostMediaVideo
ポストに添付された動画の情報を表します。
| field_name | field_type | field_description |
|---|---|---|
| video_url | string | 動画のURLです。 |
| video_mime_type | string | 動画のMIMEタイプです。 |
| video_height | uint32 | 動画の高さ(ピクセル)です。 |
| video_width | uint32 | 動画の幅(ピクセル)です。 |
| preview_image_url | string | 動画のプレビュー画像のURLです。 |
| preview_image_mime_type | string | 動画のプレビュー画像のMIMEタイプです。 |
| preview_image_height | uint32 | 動画のプレビュー画像の高さ(ピクセル)です。 |
| preview_image_width | uint32 | 動画のプレビュー画像の幅(ピクセル)です。 |
| duration | float | 動画の再生時間(秒)です。 |
PostStamp
ポストに付与されたスタンプを表します。
| field_name | field_type | field_description |
|---|---|---|
| stamp | MediaStamp | スタンプの情報です。 |
| count | uint64 | スタンプが押された回数です。 |
OfficialStamp
公式スタンプを表します。
| field_name | field_type | field_description |
|---|---|---|
| stamp_id | string | スタンプIDです。 |
| index | uint32 | スタンプセット(スプライト)内での並び順です。 |
| search_tags | repeated string | スタンプの検索用タグの一覧です。 |
| url | string | スタンプの画像のURLです。 |
OfficialStampSet
公式スタンプセットを表します。
| field_name | field_type | field_description |
|---|---|---|
| name | string | スタンプセットの名前です。 |
| sprite_url | string | スタンプセットのスプライト画像のURLです。 |
| stamps | repeated OfficialStamp | スタンプセットに含まれるスタンプ一覧です。 |
| stamp_set_id | string | スタンプセットIDです。 |
| start_at | optional Timestamp | スタンプセットが利用可能になる開始日時です。未指定の場合、開始日時は限定されません。 |
| end_at | optional Timestamp | スタンプセットが利用可能でなくなる終了日時です。未指定の場合、終了日時は限定されません。 |
| stamp_set_type | StampSetType | スタンプセットのタイプです。 |
User
ユーザーを表します。
| field_name | field_type | field_description |
|---|---|---|
| user_id | string | ユーザーIDです。 |
| is_disabled | bool | ユーザーが無効化されているかどうかを示します(無効化は退会やBANなどを含みます)。 |
| name | string | ユーザーの名前です。 |
| display_name | string | ユーザーの表示名です。 |
| profile | string | ユーザーのプロフィールです。 |
| user_avatar | UserAvatar | ユーザーのアバター情報です。 |
| visibility | UserVisibility | ユーザーの情報を閲覧可能かどうかを示します。 |
| access_level | UserAccessLevel | ユーザーの公開設定を示します。 |
UserAvatar
ユーザーのアバター画像の情報を表します。
| field_name | field_type | field_description |
|---|---|---|
| large_image_url | string | 大きいサイズのアバター画像のURLです。 |
| large_image_mime_type | string | 大きいサイズのアバター画像のMIMEタイプです。 |
| large_image_height | uint32 | 大きいサイズのアバター画像の高さ(ピクセル)です。 |
| large_image_width | uint32 | 大きいサイズのアバター画像の幅(ピクセル)です。 |
| small_image_url | string | 小さいサイズのアバター画像のURLです。 |
| small_image_mime_type | string | 小さいサイズのアバター画像のMIMEタイプです。 |
| small_image_height | uint32 | 小さいサイズのアバター画像の高さ(ピクセル)です。 |
| small_image_width | uint32 | 小さいサイズのアバター画像の幅(ピクセル)です。 |
列挙型
EventReason
イベントの発生理由を示す列挙型
| field | type | description |
|---|---|---|
| EVENT_REASON_UNSPECIFIED | 0 | 未指定 |
| EVENT_REASON_PING | 1 | 接続確認 |
| EVENT_REASON_POST_REPLY | 2 | ポストに返信された |
| EVENT_REASON_POST_MENTIONED | 3 | ポストでメンションされた |
| EVENT_REASON_POST_QUOTED | 4 | ポストが引用された |
| EVENT_REASON_DIRECT_MESSAGE_RECEIVED | 8 | チャット/ダイレクトメッセージを受信した |
EventType
イベントの種別を示す列挙型
| field | type | description |
|---|---|---|
| EVENT_TYPE_UNSPECIFIED | 0 | 未指定 |
| EVENT_TYPE_PING | 1 | 接続確認 |
| EVENT_TYPE_POST_CREATED | 2 | ポスト作成 |
| EVENT_TYPE_CHAT_MESSAGE_RECEIVED | 4 | メッセージ受信(チャット/ダイレクトメッセージ) |
LanguageCode
言語コードを示す列挙型
| field | type | description |
|---|---|---|
| LANGUAGE_CODE_UNSPECIFIED | 0 | 未指定 |
| LANGUAGE_CODE_JP | 1 | 日本語 |
| LANGUAGE_CODE_EN | 2 | 英語 |
MediaType
メッセージに添付されるメディア種別を示す列挙型
| field | type | description |
|---|---|---|
| MEDIA_TYPE_UNSPECIFIED | 0 | 未指定 |
| MEDIA_TYPE_IMAGE | 1 | 画像 |
| MEDIA_TYPE_VIDEO | 2 | 動画 |
PostAccessLevel
ポストの公開設定を示す列挙型
| field | type | description |
|---|---|---|
| POST_ACCESS_LEVEL_UNSPECIFIED | 0 | 未指定 |
| POST_ACCESS_LEVEL_PUBLIC | 1 | 公開 |
| POST_ACCESS_LEVEL_PRIVATE | 2 | 非公開(特定のユーザーのみ閲覧可能) |
PostMaskType
ポストに適用するマスク種別を示す列挙型
| field | type | description |
|---|---|---|
| POST_MASK_TYPE_UNSPECIFIED | 0 | 未指定 |
| POST_MASK_TYPE_SENSITIVE | 1 | 刺激的なコンテンツに対する注意喚起 |
| POST_MASK_TYPE_SPOILER | 2 | ネタバレ防止のための注意喚起 |
PostMediaType
ポストに添付されるメディア種別を示す列挙型
| field | type | description |
|---|---|---|
| POST_MEDIA_TYPE_UNSPECIFIED | 0 | 未指定 |
| POST_MEDIA_TYPE_IMAGE | 1 | 画像 |
| POST_MEDIA_TYPE_VIDEO | 2 | 動画 |
PostPublishingType
ポストの投稿先設定を示す列挙型
| field | type | description |
|---|---|---|
| POST_PUBLISHING_TYPE_UNSPECIFIED | 0 | 未指定(自分のフォロワーのタイムラインに公開) |
| POST_PUBLISHING_TYPE_NOT_PUBLISHING | 1 | ポストを自分のプロフィールにのみ公開 |
PostVisibility
ポストを閲覧できるかどうかを示す列挙型
| field | type | description |
|---|---|---|
| POST_VISIBILITY_UNSPECIFIED | 0 | 未指定 |
| POST_VISIBILITY_VISIBLE | 1 | ポストを閲覧できる |
| POST_VISIBILITY_INVISIBLE | 2 | ポストを閲覧できない |
StampSetType
公式スタンプセットの種別を示す列挙型
| field | type | description |
|---|---|---|
| STAMP_SET_TYPE_UNSPECIFIED | 0 | 未指定 |
| STAMP_SET_TYPE_DEFAULT | 1 | デフォルトのスタンプセット |
| STAMP_SET_TYPE_SEASONAL | 2 | 季節限定のスタンプセット |
UserAccessLevel
ユーザーの公開設定を示す列挙型
| field | type | description |
|---|---|---|
| USER_ACCESS_LEVEL_UNSPECIFIED | 0 | 未指定 |
| USER_ACCESS_LEVEL_PUBLIC | 1 | 公開ユーザー |
| USER_ACCESS_LEVEL_PRIVATE | 2 | 非公開ユーザー |
UserVisibility
ユーザーを閲覧できるか示す列挙型
| field | type | description |
|---|---|---|
| USER_VISIBILITY_UNSPECIFIED | 0 | 未指定 |
| USER_VISIBILITY_VISIBLE | 1 | ユーザーを閲覧できる |
| USER_VISIBILITY_INVISIBLE | 2 | ユーザーを閲覧できない |
GetPostMediaStatusResponse.Status
メディアのアップロード/処理状況を表します。
| field | type | description |
|---|---|---|
| STATUS_UNSPECIFIED | 0 | 未指定 |
| STATUS_UPLOAD_PENDING | 1 | アップロード待機中 |
| STATUS_PROCESSING | 2 | 処理中 |
| STATUS_COMPLETED | 3 | 完了 |
| STATUS_FAILED | 4 | 失敗 |
InitiatePostMediaUploadRequest.Type
アップロードするメディアの種別を指定してください。
| field | type | description |
|---|---|---|
| TYPE_UNSPECIFIED | 0 | 未指定 |
| TYPE_IMAGE | 1 | 画像 |
| TYPE_VIDEO | 2 | 動画 |