APIChannels APIgetchannel 一覧の取得postchannel の作成getchannel 情報の取得putchannel の更新delchannel の削除Users APIputchannel への User の登録deluser を channel から削除Messages APIpostmessage の投稿get指定した message の取得put指定した message の更新del指定した message の削除スキーマChannelUserMessageAPI docs by RedoclyRICOH Live Streaming REST API: Messaging Application Server API (v1)Download OpenAPI specification:DownloadRICOH Live Streaming REST API は Live Streaming サービスの REST API です。本ページは そのうちのMessaging の アプリサーバー用 REST API の仕様について記載します。Messaging REST API についてMessaging REST API は、現在 β 版として提供しております。そのため、商用サービスでの利用をご検討される際には、必ず事前にお問い合わせください。本 β 版の利用料金は無料です。正式版は有償での提供を検討しておりますので、あらかじめご了承ください。正式版を公開せずに β 版の公開を終了する、もしくは、正式版では β 版から機能や仕様が変更される可能性がありますので、あらかじめご了承ください。共通仕様HTTP レスポンスについてAPI の認証/認可に失敗した場合、ステータスコード 401 のレスポンスが返却されますPath と Method がマッチしていない場合、ステータスコード 405 のレスポンスが返却されますサーバ内部での未知のエラーが発生した場合、ステータスコード 500 のレスポンスが返却されますイベントに対する通知についてuser が channel に追加された時、invited_channel が送信されますuser が channel から削除された時、banned_channel が送信されます参加している channel が更新された時、channel_updated が送信されますchannel 削除、更新などにより、今までチャンネル経由でのつながりがなかった user との繋がりがなくなった場合には、そのユーザについての update_presence が送信されます(banned_channel で分かる場合を除く)。Channels APIchannel 一覧の取得 channel の一覧を返しますlimit と page_token をURL クエリーに指定することができますAuthorizations:ClientBasicquery Parameterslimitnumber 一度に取得する Channel の件数です1 以上 100 以下の値を指定可能です範囲外の文字や数値が指定された場合や limit 要素が省略された場合は、 100 を指定したものとして扱われますpage_tokenstring クエリ結果のレスポンスボディに含まれる next_token 要素を指定することで、次のページを取得します省略した場合は最初のページを取得しますResponses200 channel の List と次ページ用の page_token をセットにした JSON が返ります400 不正な page_token などリクエストの指定不備がある場合get/channelsMessaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels Response samples 200400Content typeapplication/jsonCopy Expand all Collapse all {"next_token": "string","channels": [{"name": "string","channel_id": "string","user_ids": ["string"]}]}channel の作成 channel を新規に作成しますAuthorizations:ClientBasicRequest Body schema: application/jsonnamerequiredstring <= 255 characters チャンネルの表示名user_idsrequiredArray of strings[ items <= 255 characters /^[a-zA-Z0-9.%+^_"`{|}~<>\-]{1,255}$/ ] Responses201 Channel の作成に成功400 文字数オーバーや使用できない文字が使用されているなど、リクエストの指定不備post/channelsMessaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels Request samples PayloadContent typeapplication/jsonCopy Expand all Collapse all {"name": "string","user_ids": ["string"]} Response samples 201400Content typeapplication/jsonCopy Expand all Collapse all {"name": "string","channel_id": "string","user_ids": ["string"]}channel 情報の取得 パラメータで指定した channel_id に該当するchannelの情報を返しますAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDResponses200 Channel 情報404 指定した channel_id に対応する channel が存在しませんget/channels/{channel_id}Messaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id} Response samples 200404Content typeapplication/jsonCopy Expand all Collapse all {"name": "string","channel_id": "string","user_ids": ["string"]}channel の更新 channel_id で指定した channel の情報を指定値で更新しますAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDRequest Body schema: application/jsonnamerequiredstring <= 255 characters チャンネルの表示名user_idsrequiredArray of strings[ items <= 255 characters /^[a-zA-Z0-9.%+^_"`{|}~<>\-]{1,255}$/ ] Responses200 Channel の更新に成功400 文字数オーバーや使用できない文字が使用されているなど、リクエストの指定不備404 指定された channel_id の Channel が存在しませんput/channels/{channel_id}Messaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id} Request samples PayloadContent typeapplication/jsonCopy Expand all Collapse all {"name": "string","user_ids": ["string"]} Response samples 200400404Content typeapplication/jsonCopy Expand all Collapse all {"name": "string","channel_id": "string","user_ids": ["string"]}channel の削除 channel_id で指定した channel を削除しますAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDResponses204 channel 削除の受付け成功ボディは空です404 指定した channel_id に対応する channel が存在しませんdelete/channels/{channel_id}Messaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id} Response samples 404Content typeapplication/jsonCopy{"error_id": "not_found","message": "string"}Users APIchannel への User の登録 指定した channel_id に対応する Channel のメンバーに、user_id で指定されるユーザーを追加しますAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDuser_idrequiredstring <= 255 characters /^[a-zA-Z0-9.%+^_"`{|}~<>\-]{1,255}$/ User IDResponses200 Channel へのユーザー追加に成功400 user_id が最大文字数を超えている、または文字列ではない場合put/channels/{channel_id}/users/{user_id}Messaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id}/users/{user_id} Response samples 200400Content typeapplication/jsonCopy{"user_id": "string"}user を channel から削除 パラメータで指定した user_id で表されるユーザーを、channel_id で表される Channel から削除しますAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDuser_idrequiredstring <= 255 characters /^[a-zA-Z0-9.%+^_"`{|}~<>\-]{1,255}$/ User IDResponses204 User 削除の受付け成功ボディは空です404 指定した channel_id に対応する channel、または user_id に対応するユーザーが存在しませんdelete/channels/{channel_id}/users/{user_id}Messaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id}/users/{user_id} Response samples 404Content typeapplication/jsonCopy{"error_id": "not_found","message": "string"}Messages APImessage の投稿 パラメータで指定した channel_id に一致する channel 内に message を投稿します投稿に成功すると、message_createdメッセージが、該当チャンネルに所属し接続中の全てのユーザーに送信されますuser_id で指定したユーザーが作成したという扱いになりますAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDuser_idrequiredstring <= 255 characters /^[a-zA-Z0-9.%+^_"`{|}~<>\-]{1,255}$/ User IDRequest Body schema: application/jsontyperequiredstring 実テキストか画像 URL か Markdown かなどの分類文字列bodyrequiredobject or string 投稿するmessage。文字列もしくは任意の JSON object を指定可能。object の場合、サイズの上限は文字列にエンコードして 300 万文字までResponses201 messageの受付け成功400 文字数オーバーや使用できない文字が使用されているなど、リクエストの指定不備404 指定した channel_id に対応する channel が存在しませんuser_id で指定したユーザが channel のメンバーではありませんpost/channels/{channel_id}/users/{user_id}/messagesMessaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id}/users/{user_id}/messages Request samples PayloadContent typeapplication/jsonCopy Expand all Collapse all {"type": "string","body": { }} Response samples 201400404Content typeapplication/jsonCopy Expand all Collapse all {"seq": 1,"author_id": "string","body": { },"type": "string","revision": 1,"created_at": 0,"updated_at": 0}指定した message の取得 指定された channel_id に該当する channel から message を取得しますAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDquery Parametersfromnumber message の検索時に、検索対象とする seq の終点を指定します。つまり、from で指定した seq から遡って count 件の message が検索対象となります - 省略された場合、1 が指定されたものとして動作しますcountnumber message の検索時に、最大何件までの結果を返すかを指定します - 省略された場合、500 が指定されたものとして扱われますResponses200 message の受付け成功該当する message が存在しない場合でも、レスポンスコードは200が返り、空のListがレスポンスボディに格納されます400 from や count に負値を指定するなどのリクエストの指定不備404 指定した channel_id が存在しませんchannel_id が存在していて、from などの条件で該当する message が存在しない場合は、レスポンスコードは200で空のListが返りますget/channels/{channel_id}/messagesMessaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id}/messages Response samples 200400404Content typeapplication/jsonCopy Expand all Collapse all [{"seq": 1,"author_id": "string","body": { },"type": "string","revision": 1,"created_at": 0,"updated_at": 0}]指定した message の更新 seq で指定された message を更新します更新に成功すると、message_updatedメッセージが、該当チャンネルに所属し接続中の全てのユーザーに送信されますwebsocket の update_message リクエストとは異なり、どの user_id のユーザーが作成した message であっても更新可能ですAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDseqrequirednumber Message の生成時に割り振られた seq 番号Request Body schema: application/jsontyperequiredstring 実テキストか画像 URL か Markdown かなどの分類文字列bodyrequiredobject or string 投稿する message。文字列もしくは任意の JSON object を指定可能。object の場合、サイズの上限は文字列にエンコードして 300 万文字までResponses200 message の更新受付け成功400 サイズが大きすぎる、使用できない文字が使用されているなど、指定した message 本文が不適切。404 指定した channel_id、seq に対応する message が存在しませんput/channels/{channel_id}/messages/{seq}Messaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id}/messages/{seq} Request samples PayloadContent typeapplication/jsonCopy Expand all Collapse all {"type": "string","body": { }} Response samples 200400404Content typeapplication/jsonCopy Expand all Collapse all {"seq": 1,"author_id": "string","body": { },"type": "string","revision": 1,"created_at": 0,"updated_at": 0}指定した message の削除 seq で指定された message を削除します削除に成功すると、message_deletedメッセージが、該当チャンネルに所属し接続中の全てのユーザーに送信されますwebsocket の delete_message リクエストとは異なり、どの user_id のユーザーが作成した message であっても削除可能ですAuthorizations:ClientBasicpath Parameterschannel_idrequiredstring Channel IDseqrequirednumber Message の生成時に割り振られた seq 番号Responses204 message の削除受付け成功レスポンスボディはありません404 指定した channel_id、seq に対応する message が存在しませんdelete/channels/{channel_id}/messages/{seq}Messaging Endpointhttps://messaging.livestreaming.mw.smart-integration.ricoh.com/channels/{channel_id}/messages/{seq} Response samples 404Content typeapplication/jsonCopy{"error_id": "not_found","message": "string"}Channelnamestring <= 255 characters チャンネルの表示名channel_idstring チャンネル作成時に決まる不変 IDuser_idsArray of strings[ items <= 255 characters /^[a-zA-Z0-9.%+^_"`{|}~<>\-]{1,255}$/ ] Copy Expand all Collapse all {"name": "string","channel_id": "string","user_ids": ["string"]}Useruser_idstring <= 255 characters User の IDCopy{"user_id": "string"}Messageseqinteger >= 1 channel 内で振られた連番author_idstring messageを書き込んだユーザのuser_idbodyobject or string 書き込まれた中身typestring 実テキストか画像 URL か Markdown かなどの分類文字列revisioninteger >= 1 何回改訂されたか。初期値は 1created_atinteger 投稿時間(unixtime)。サーバで seq が振られた時間でありクライアントが送信した時間ではありませんupdated_atinteger 最終更新時間(unixtime)。サーバで更新が確定した時間が記録されますCopy Expand all Collapse all {"seq": 1,"author_id": "string","body": { },"type": "string","revision": 1,"created_at": 0,"updated_at": 0} const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.0.2","info":{"title":"RICOH Live Streaming REST API: Messaging Application Server API","version":"v1","description":"RICOH Live Streaming REST API は Live Streaming サービスの REST API です。 \n本ページは そのうちのMessaging の アプリサーバー用 REST API の仕様について記載します。\n\n### Messaging REST API について\n\n**Messaging REST API は、現在 β 版として提供しております。**
\n**そのため、商用サービスでの利用をご検討される際には、必ず事前に
お問い合わせください。**
\n**本 β 版の利用料金は無料です。正式版は有償での提供を検討しておりますので、あらかじめご了承ください。**
\n**正式版を公開せずに β 版の公開を終了する、もしくは、正式版では β 版から機能や仕様が変更される可能性がありますので、あらかじめご了承ください。**
\n\n### 共通仕様\n\n- HTTP レスポンスについて\n - API の認証/認可に失敗した場合、ステータスコード 401 のレスポンスが返却されます\n - Path と Method がマッチしていない場合、ステータスコード 405 のレスポンスが返却されます\n - サーバ内部での未知のエラーが発生した場合、ステータスコード 500 のレスポンスが返却されます\n- イベントに対する通知について\n - user が channel に追加された時、invited_channel が送信されます\n - user が channel から削除された時、banned_channel が送信されます\n - 参加している channel が更新された時、channel_updated が送信されます\n - channel 削除、更新などにより、今までチャンネル経由でのつながりがなかった user との繋がりがなくなった場合には、そのユーザについての update_presence が送信されます(banned_channel で分かる場合を除く)。\n"},"servers":[{"url":"https://messaging.livestreaming.mw.smart-integration.ricoh.com/","description":"Messaging Endpoint"}],"x-tagGroups":[{"name":"API","tags":["api_channels","api_users","api_messages"]},{"name":"スキーマ","tags":["Channel","User","Message"]}],"tags":[{"name":"api_channels","x-displayName":"Channels API"},{"name":"api_users","x-displayName":"Users API"},{"name":"api_messages","x-displayName":"Messages API"},{"name":"Channel","x-displayName":"Channel","description":"
"},{"name":"User","x-displayName":"User","description":""},{"name":"Message","x-displayName":"Message","description":""}],"security":[{"ClientBasic":[]}],"paths":{"/channels":{"get":{"summary":"channel 一覧の取得","description":"- channel の一覧を返します\n- limit と page_token をURL クエリーに指定することができます\n","parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/page_token"}],"tags":["api_channels"],"responses":{"200":{"description":"- channel の List と次ページ用の page_token をセットにした JSON が返ります\n","content":{"application/json":{"schema":{"type":"object","properties":{"next_token":{"type":"string","description":"- ペジネーション用のトークン\n- リストの末尾の場合は要素が省略されます\n- この値を次回の page_token に設定すると今回の続きから取得できます\n"},"channels":{"type":"array","description":"- channel の List\n- channel が 1 つも存在していない場合、空の List が返ります\n- 一回のリクエストで取得できる channel の最大個数は、limit で指定した値になります\n- 取得される Channel は、channel_id の昇順でソートされます\n","items":{"$ref":"#/components/schemas/Channel"}}}}}}},"400":{"description":"- 不正な page_token などリクエストの指定不備がある場合\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["invalid_page_token"]}}}]}}}}}},"post":{"summary":"channel の作成","description":"- channel を新規に作成します\n","tags":["api_channels"],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["name","user_ids"],"properties":{"name":{"type":"string","maxLength":255,"description":"チャンネルの表示名"},"user_ids":{"type":"array","items":{"type":"string","pattern":"/^[a-zA-Z0-9.%+^_\"`{|}~<>\\-]{1,255}$/","maxLength":255,"description":"チャンネルに入室できる User の ID"}}}}}}},"responses":{"201":{"description":"Channel の作成に成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Channel"}}}},"400":{"description":"- 文字数オーバーや使用できない文字が使用されているなど、リクエストの指定不備\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["invalid_channel","invalid_request","invalid_name","invalid_user_ids","invalid_classification_label"]}}}]}}}}}}},"/channels/{channel_id}":{"get":{"summary":"channel 情報の取得","description":"- パラメータで指定した channel_id に該当するchannelの情報を返します\n","tags":["api_channels"],"parameters":[{"$ref":"#/components/parameters/channel_id"}],"responses":{"200":{"description":"Channel 情報","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Channel"}}}},"404":{"description":"- 指定した channel_id に対応する channel が存在しません\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}},"put":{"summary":"channel の更新","description":"- channel_id で指定した channel の情報を指定値で更新します\n","tags":["api_channels"],"parameters":[{"$ref":"#/components/parameters/channel_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["name","user_ids"],"properties":{"name":{"type":"string","maxLength":255,"description":"チャンネルの表示名"},"user_ids":{"type":"array","items":{"type":"string","pattern":"/^[a-zA-Z0-9.%+^_\"`{|}~<>\\-]{1,255}$/","maxLength":255,"description":"チャンネルに入室できる User の ID"}}}}}}},"responses":{"200":{"description":"Channel の更新に成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Channel"}}}},"400":{"description":"- 文字数オーバーや使用できない文字が使用されているなど、リクエストの指定不備\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["invalid_request","invalid_name","invalid_user_ids"]}}}]}}}},"404":{"description":"- 指定された channel_id の Channel が存在しません\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}},"delete":{"summary":"channel の削除","description":"- channel_id で指定した channel を削除します\n","tags":["api_channels"],"parameters":[{"$ref":"#/components/parameters/channel_id"}],"responses":{"204":{"description":"- channel 削除の受付け成功\n- ボディは空です\n"},"404":{"description":"- 指定した channel_id に対応する channel が存在しません\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}}},"/channels/{channel_id}/users/{user_id}":{"put":{"summary":"channel への User の登録","description":"- 指定した channel_id に対応する Channel のメンバーに、user_id で指定されるユーザーを追加します\n","tags":["api_users"],"parameters":[{"$ref":"#/components/parameters/channel_id"},{"$ref":"#/components/parameters/user_id"}],"responses":{"200":{"description":"Channel へのユーザー追加に成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}},"400":{"description":"- user_id が最大文字数を超えている、または文字列ではない場合\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["invalid_user_id"]}}}]}}}}}},"delete":{"summary":"user を channel から削除","description":"- パラメータで指定した user_id で表されるユーザーを、channel_id で表される Channel から削除します\n","tags":["api_users"],"parameters":[{"$ref":"#/components/parameters/channel_id"},{"$ref":"#/components/parameters/user_id"}],"responses":{"204":{"description":"User 削除の受付け成功\n- ボディは空です\n"},"404":{"description":"- 指定した channel_id に対応する channel、または user_id に対応するユーザーが存在しません\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}}},"/channels/{channel_id}/users/{user_id}/messages":{"post":{"summary":"message の投稿","description":"- パラメータで指定した channel_id に一致する channel 内に message を投稿します\n- 投稿に成功すると、message_createdメッセージが、該当チャンネルに所属し接続中の全てのユーザーに送信されます\n- user_id で指定したユーザーが作成したという扱いになります\n","tags":["api_messages"],"parameters":[{"$ref":"#/components/parameters/channel_id"},{"$ref":"#/components/parameters/user_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["type","body"],"properties":{"type":{"type":"string","description":"実テキストか画像 URL か Markdown かなどの分類文字列"},"body":{"anyOf":[{"type":"object"},{"type":"string","maxLength":4096}],"description":"- 投稿するmessage。文字列もしくは任意の JSON object を指定可能。\n- object の場合、サイズの上限は文字列にエンコードして 300 万文字まで\n"}}}}}},"responses":{"201":{"description":"messageの受付け成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Message"}}}},"400":{"description":"- 文字数オーバーや使用できない文字が使用されているなど、リクエストの指定不備\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["invalid_message"]}}}]}}}},"404":{"description":"- 指定した channel_id に対応する channel が存在しません\n- user_id で指定したユーザが channel のメンバーではありません\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}}},"/channels/{channel_id}/messages":{"get":{"summary":"指定した message の取得","description":"指定された channel_id に該当する channel から message を取得します","tags":["api_messages"],"parameters":[{"$ref":"#/components/parameters/channel_id"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/count"}],"responses":{"200":{"description":"- message の受付け成功\n- 該当する message が存在しない場合でも、レスポンスコードは200が返り、空のListがレスポンスボディに格納されます\n","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Message"}}}}},"400":{"description":"- from や count に負値を指定するなどのリクエストの指定不備\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["invalid_message"]}}}]}}}},"404":{"description":"- 指定した channel_id が存在しません\n - channel_id が存在していて、from などの条件で該当する message が存在しない場合は、レスポンスコードは200で空のListが返ります\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}}},"/channels/{channel_id}/messages/{seq}":{"put":{"summary":"指定した message の更新","description":"- seq で指定された message を更新します\n- 更新に成功すると、message_updatedメッセージが、該当チャンネルに所属し接続中の全てのユーザーに送信されます\n- websocket の update_message リクエストとは異なり、どの user_id のユーザーが作成した message であっても更新可能です\n","tags":["api_messages"],"parameters":[{"$ref":"#/components/parameters/channel_id"},{"$ref":"#/components/parameters/seq"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["type","body"],"properties":{"type":{"type":"string","description":"実テキストか画像 URL か Markdown かなどの分類文字列"},"body":{"anyOf":[{"type":"object"},{"type":"string","maxLength":4096}],"description":"- 投稿する message。文字列もしくは任意の JSON object を指定可能。\n- object の場合、サイズの上限は文字列にエンコードして 300 万文字まで\n"}}}}}},"responses":{"200":{"description":"message の更新受付け成功","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Message"}}}},"400":{"description":"- サイズが大きすぎる、使用できない文字が使用されているなど、指定した message 本文が不適切。\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["invalid_message"]}}}]}}}},"404":{"description":"- 指定した channel_id、seq に対応する message が存在しません\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}},"delete":{"summary":"指定した message の削除","description":"- seq で指定された message を削除します\n- 削除に成功すると、message_deletedメッセージが、該当チャンネルに所属し接続中の全てのユーザーに送信されます\n- websocket の delete_message リクエストとは異なり、どの user_id のユーザーが作成した message であっても削除可能です\n","tags":["api_messages"],"parameters":[{"$ref":"#/components/parameters/channel_id"},{"$ref":"#/components/parameters/seq"}],"responses":{"204":{"description":"- message の削除受付け成功\n- レスポンスボディはありません\n"},"404":{"description":"- 指定した channel_id、seq に対応する message が存在しません\n","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Error"},{"type":"object","properties":{"error_id":{"type":"string","enum":["not_found"]}}}]}}}}}}}},"components":{"schemas":{"Channel":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"description":"チャンネルの表示名"},"channel_id":{"type":"string","description":"チャンネル作成時に決まる不変 ID"},"user_ids":{"type":"array","items":{"type":"string","pattern":"/^[a-zA-Z0-9.%+^_\"`{|}~<>\\-]{1,255}$/","maxLength":255,"description":"チャンネルに入室できる User の ID"}}}},"User":{"type":"object","properties":{"user_id":{"type":"string","maxLength":255,"description":"User の ID"}}},"Message":{"type":"object","properties":{"seq":{"type":"integer","minimum":1,"description":"channel 内で振られた連番"},"author_id":{"type":"string","description":"messageを書き込んだユーザのuser_id"},"body":{"anyOf":[{"type":"object"},{"type":"string","maxLength":4096}],"description":"書き込まれた中身"},"type":{"type":"string","description":"実テキストか画像 URL か Markdown かなどの分類文字列"},"revision":{"type":"integer","minimum":1,"description":"何回改訂されたか。初期値は 1"},"created_at":{"type":"integer","description":"投稿時間(unixtime)。サーバで seq が振られた時間でありクライアントが送信した時間ではありません"},"updated_at":{"type":"integer","description":"最終更新時間(unixtime)。サーバで更新が確定した時間が記録されます"}}},"Error":{"type":"object","required":["error_id"],"properties":{"error_id":{"type":"string","description":"- API を利用するプログラムが機械的に分岐することを意図したエラー内容の ID\n"},"message":{"type":"string","description":"- API を利用するプログラムの開発者のデバッグ補助になるエラーメッセージ\n"}}}},"parameters":{"channel_id":{"in":"path","name":"channel_id","schema":{"type":"string"},"required":true,"description":"- Channel ID\n"},"user_id":{"in":"path","name":"user_id","schema":{"type":"string","pattern":"/^[a-zA-Z0-9.%+^_\"`{|}~<>\\-]{1,255}$/","maxLength":255},"required":true,"description":"- User ID\n"},"seq":{"in":"path","name":"seq","schema":{"type":"number"},"required":true,"description":"- Message の生成時に割り振られた seq 番号\n"},"from":{"in":"query","name":"from","schema":{"type":"number"},"required":false,"description":"- message の検索時に、検索対象とする seq の終点を指定します。つまり、from で指定した seq から遡って count 件の message が検索対象となります - 省略された場合、1 が指定されたものとして動作します\n"},"count":{"in":"query","name":"count","schema":{"type":"number"},"required":false,"description":"- message の検索時に、最大何件までの結果を返すかを指定します - 省略された場合、500 が指定されたものとして扱われます\n"},"page_token":{"in":"query","name":"page_token","schema":{"type":"string"},"required":false,"description":"- クエリ結果のレスポンスボディに含まれる next_token 要素を指定することで、次のページを取得します\n- 省略した場合は最初のページを取得します\n"},"limit":{"in":"query","name":"limit","schema":{"type":"number"},"required":false,"description":"- 一度に取得する Channel の件数です\n- 1 以上 100 以下の値を指定可能です\n- 範囲外の文字や数値が指定された場合や limit 要素が省略された場合は、 100 を指定したものとして扱われます\n"}},"securitySchemes":{"ClientBasic":{"type":"http","scheme":"basic","description":"Client ID を username、Client Secretを password にした Basic 認証"}}}}},"searchIndex":{"store":["tag/api_channels","tag/api_channels/paths/~1channels/get","tag/api_channels/paths/~1channels/post","tag/api_channels/paths/~1channels~1{channel_id}/get","tag/api_channels/paths/~1channels~1{channel_id}/put","tag/api_channels/paths/~1channels~1{channel_id}/delete","tag/api_users","tag/api_users/paths/~1channels~1{channel_id}~1users~1{user_id}/put","tag/api_users/paths/~1channels~1{channel_id}~1users~1{user_id}/delete","tag/api_messages","tag/api_messages/paths/~1channels~1{channel_id}~1users~1{user_id}~1messages/post","tag/api_messages/paths/~1channels~1{channel_id}~1messages/get","tag/api_messages/paths/~1channels~1{channel_id}~1messages~1{seq}/put","tag/api_messages/paths/~1channels~1{channel_id}~1messages~1{seq}/delete","tag/Channel","tag/User","tag/Message"],"index":{"version":"2.3.9","fields":["title","description"],"fieldVectors":[["title/0",[0,0.028,1,1.711]],["description/0",[]],["title/1",[0,0.028,2,0.269]],["description/1",[0,0.032,2,0.428,3,2.078,4,2.078,5,2.078]],["title/2",[0,0.028,2,0.269]],["description/2",[0,0.041,2,0.401]],["title/3",[0,0.028,2,0.269]],["description/3",[0,0.03,2,0.383,6,0.98,7,1.833]],["title/4",[0,0.028,2,0.269]],["description/4",[0,0.028,2,0.415,6,0.918,7,1.717]],["title/5",[0,0.028,2,0.269]],["description/5",[0,0.028,2,0.415,6,0.918,7,1.717]],["title/6",[1,1.711,8,1.449]],["description/6",[]],["title/7",[0,0.02,2,0.29,8,1.048]],["description/7",[0,0.025,2,0.423,6,0.815,9,1.103,10,1.837]],["title/8",[0,0.02,2,0.29,8,1.048]],["description/8",[0,0.025,2,0.423,6,0.815,9,1.103,10,1.837]],["title/9",[1,1.711,11,0.563]],["description/9",[]],["title/10",[2,0.269,11,0.563]],["description/10",[0,0.018,2,0.441,6,0.584,9,0.791,11,0.36,12,1.659,13,1.659,14,1.659]],["title/11",[2,0.323,11,0.473]],["description/11",[0,0.025,2,0.423,6,0.815,11,0.502,15,2.312]],["title/12",[2,0.323,11,0.473]],["description/12",[2,0.437,9,0.706,11,0.505,16,1.175,17,1.48,18,1.48,19,1.175,20,1.48,21,1.175]],["title/13",[2,0.323,11,0.473]],["description/13",[2,0.437,9,0.706,11,0.505,16,1.175,19,1.175,21,1.175,22,1.48,23,1.48,24,1.48]],["title/14",[0,0.034]],["description/14",[2,0.334,25,2.12,26,3.217]],["title/15",[8,1.791]],["description/15",[2,0.334,25,2.12,27,3.217]],["title/16",[11,0.696]],["description/16",[2,0.334,25,2.12,28,3.217]]],"invertedIndex":[["",{"_index":2,"title":{"1":{},"2":{},"3":{},"4":{},"5":{},"7":{},"8":{},"10":{},"11":{},"12":{},"13":{}},"description":{"1":{},"2":{},"3":{},"4":{},"5":{},"7":{},"8":{},"10":{},"11":{},"12":{},"13":{},"14":{},"15":{},"16":{}}}],["api",{"_index":1,"title":{"0":{},"6":{},"9":{}},"description":{}}],["channel",{"_index":0,"title":{"0":{},"1":{},"2":{},"3":{},"4":{},"5":{},"7":{},"8":{},"14":{}},"description":{"1":{},"2":{},"3":{},"4":{},"5":{},"7":{},"8":{},"10":{},"11":{}}}],["channel_id",{"_index":6,"title":{},"description":{"3":{},"4":{},"5":{},"7":{},"8":{},"10":{},"11":{}}}],["channels/{channel_id",{"_index":7,"title":{},"description":{"3":{},"4":{},"5":{}}}],["channels/{channel_id}/messag",{"_index":15,"title":{},"description":{"11":{}}}],["channels/{channel_id}/messages/{seq",{"_index":21,"title":{},"description":{"12":{},"13":{}}}],["channels/{channel_id}/users/{user_id",{"_index":10,"title":{},"description":{"7":{},"8":{}}}],["channels/{channel_id}/users/{user_id}/messag",{"_index":14,"title":{},"description":{"10":{}}}],["delete_messag",{"_index":24,"title":{},"description":{"13":{}}}],["href='https://livestreaming.ricoh/docs/messaging-app-client/#%e3%83%a1%e3%83%83%e3%82%bb%e3%83%bc%e3%82%b8%e3%81%ae%e4%bd%9c%e6%88%90%e9%80%9a%e7%9f%a5",{"_index":12,"title":{},"description":{"10":{}}}],["href='https://livestreaming.ricoh/docs/messaging-app-client/#%e3%83%a1%e3%83%83%e3%82%bb%e3%83%bc%e3%82%b8%e3%81%ae%e5%89%8a%e9%99%a4%e9%80%9a%e7%9f%a5",{"_index":22,"title":{},"description":{"13":{}}}],["href='https://livestreaming.ricoh/docs/messaging-app-client/#%e3%83%a1%e3%83%83%e3%82%bb%e3%83%bc%e3%82%b8%e3%81%ae%e6%9b%b4%e6%96%b0%e9%80%9a%e7%9f%a5",{"_index":17,"title":{},"description":{"12":{}}}],["limit",{"_index":3,"title":{},"description":{"1":{}}}],["messag",{"_index":11,"title":{"9":{},"10":{},"11":{},"12":{},"13":{},"16":{}},"description":{"10":{},"11":{},"12":{},"13":{}}}],["page_token",{"_index":4,"title":{},"description":{"1":{}}}],["schemadefinit",{"_index":25,"title":{},"description":{"14":{},"15":{},"16":{}}}],["schemaref=\"#/components/schemas/channel",{"_index":26,"title":{},"description":{"14":{}}}],["schemaref=\"#/components/schemas/messag",{"_index":28,"title":{},"description":{"16":{}}}],["schemaref=\"#/components/schemas/us",{"_index":27,"title":{},"description":{"15":{}}}],["seq",{"_index":16,"title":{},"description":{"12":{},"13":{}}}],["target='_parent'>message_createdメッセージmessage_deletedメッセージmessage_updatedメッセージ