Chat Channel
This page is not available in English.
Please select another language.
概要
チャットのチャンネルを操作する為の API です。
![]() |
|
![]() | ゲームチャットの使い方に関しては、こちらのチュートリアルをご確認下さい。 |
ChatChannel オブジェクトフィールド
チャンネルを表すオブジェクトです。
値 |
説明 |
型 |
名前空間 |
補足 |
---|---|---|---|---|
id |
チャンネル ID |
xs:string |
http://ns.dena.jp/mbga/gameapi/v1 | チャンネルを一意に示す識別子 |
name |
チャンネル名 |
xs:string |
http://ns.dena.jp/mbga/gameapi/v1 | チャンネルの名称 |
shorName |
短縮チャンネル名 |
xs:string |
http://ns.dena.jp/mbga/gameapi/v1 | チャンネルの短縮名称 |
owner |
チャンネルオーナー |
xs:string |
http://ns.dena.jp/mbga/gameapi/v1 | ChatChannelOwner オブジェクト |
published |
生成日時 |
xs:date |
http://ns.dena.jp/mbga/gameapi/v1 | 生成日時 (ISO8601, GMT表記) |
updated |
更新日時 |
xs:date |
http://ns.dena.jp/mbga/gameapi/v1 | 更新日時 (ISO8601, GMT表記) |
ChatChannelOwner オブジェクトフィールド
チャンネルのオーナーを表すオブジェクトです。
値 |
説明 |
型 |
名前空間 |
補足 |
---|---|---|---|---|
id |
ChatChannelOwner オブジェクトの ID |
xs:string |
http://ns.dena.jp/mbga/gameapi/v1 | チャンネルのオーナーを一意に示す識別子 |
objectType |
ChatChannelOwner オブジェクトの型 |
xs:string |
http://ns.dena.jp/mbga/gameapi/v1 | "application" のみ指定可能 |
API リクエスト
HTTP メソッド
Trusted モデル
- GET
- チャンネルの取得
- POST
- チャンネルの作成
- PUT
- チャンネルの更新
- DELETE
- チャンネルの削除
エンドポイント URL
- Sandbox 環境
http://sb.sp.app.mbga.jp/social/api/restful/v2/chat/{appId}/channels/{-prefix|/|channelId}
- 本番環境
http://sp.app.mbga.jp/social/api/restful/v2/chat/{appId}/channels/{-prefix|/|channelId}
URI Template パラメータ
appId
appId パラメータは下記のいずれかの値を指定します。
値 |
説明 |
備考 |
---|---|---|
@app |
現在実行中のアプリケーション ID |
必須 |
channelId
channelId パラメータは下記のいずれかの値を指定します。
値 |
説明 |
備考 |
---|---|---|
{channelId} |
チャンネル ID |
任意 |
クエリパラメータ
下記のクエリパラメータを指定する事が出来ます。
format
レスポンス形式を指定する事が出来ます。
値 |
説明 |
備考 |
---|---|---|
json |
"application/json; charset=utf8" |
任意、デフォルト値 |
fields
取得したいチャンネル情報を指定する事が出来ます。指定可能なフィールド名については ChatChannel オブジェクトフィールドを参照して下さい。
複数指定する場合はスペース無しのカンマ (,) 区切りで指定します。
fields パラメータを省略した場合、下記の属性情報全てを取得します。
パフォーマンス向上の為に、必要な属性のみを取得するようにして下さい。
API レスポンス
レスポンスコード
API のレスポンスコードは以下のいずれかになります。
リクエスト HTTP メソッド |
レスポンスコード |
レスポンスメッセージ |
説明 |
---|---|---|---|
GET/PUT |
200 |
OK |
チャンネルの取得に成功した場合 |
POST |
201 |
Created |
チャンネルの追加が成功した場合 |
DELETE |
204 |
No Content |
チャンネルの削除が成功した場合 |
GET/POST/DELETE/PUT |
400 |
Bad Request |
データ形式が不正な場合 |
GET/POST/DELETE/PUT |
401 |
Unauthorized |
不正な Authorization ヘッダの場合 |
GET/POST/DELETE/PUT |
403 |
Forbidden |
実行しようと操作の権限がない場合 |
GET/POST/DELETE/PUT |
404 |
Not Found |
存在しない appId, channelId, id が指定された場合 |
POST |
409 |
Conflict |
変更できないフィールドを変更しようとした場合 |
GET/POST/DELETE/PUT |
500 |
Internal Server Error |
サーバー側の処理でエラーが発生した場合 |
GET/POST/DELETE/PUT |
503 |
Service Unavailable |
サーバー側が一時的にサービス停止している場合 |
制限事項
- 1アプリケーションにつき生成できるチャンネルの最大エントリ数は 1,000,000 件 になります。
サンプル
チャンネル取得
リクエスト形式
GET /social/api/restful/v2/chat/@app/channels/100?fields=id%2Cname%2Cowner
レスポンス形式
200 OK HTTP/1.1 Content-Type: application/json; charset=utf-8 { "id" : "100", "name" : "Mobage を語るスレ", "owner" : { "id" : "application:12000129", "objectType" : "application" } }
複数のチャンネル取得
複数のチャンネルがコレクションで取得できます。リクエスト形式
GET /social/api/restful/v2/chat/12000129/channels/100,200
レスポンス形式
200 OK Content-Type: application/json; charset=utf-8 { "entry" : [ { "name" : "Mobageを語るスレ1", "id" : "100", "shortName" : "Moba語り1" }, { "name" : "Mobageを語るスレ2", "id" : "200", "shortName" : "Moba語り2" } ], "startIndex" : 1, "sorted" : false, "itemsPerPage" : 2, "totalResults" : 2 }
チャンネルの作成
リクエスト形式
POST /social/api/restful/v2/chat/@app/channels Content-Type: application/json; charset=utf8 { "name" : "comm でいいじゃん", "shortName" : "comm" }
レスポンス形式
201 Created Content-Type: application/json; charset=utf-8 { "id" : "6550", "name" : "comm でいいじゃん", "shortName" : "comm", "published" : "2013-03-24T09:36:40", "updated" : "2013-03-24T09:36:40" }
チャンネルの更新
リクエスト形式
PUT /social/api/restful/v2/chat/@app/channels/344?fields=name,shortName Content-Type: application/json; charset=utf8 { "name" : "Gloovy fun room", "shortName" : "gloovy" }
レスポンス形式
202 Accepted Content-Type: application/json; charset=utf-8 { "id" : "344", "name" : "Gloovy fun room", "shortName" : "gloovy", "published" : "2013-03-30T15:14:47", "updated" : "2013-03-30T15:24:47" }
チャンネルの削除
リクエスト形式
DELETE /social/api/restful/v2/chat/@app/channels/50
レスポンス形式
204 No Content
![]() | APIにより生成されたチャンネルはユーザ操作によって削除することは出来ませんのでイベント終了などのタイミングにあわせて削除リクエストを行って下さい。 |
参考資料
The OAuth 1.0 Protocol (RFC 5849)
URI Template (RFC6570)
5.6. Internet Date/Time Format - Date and Time on the Internet: Timestamps (RFC 3339)
7.3.1. date-time - JSON Schema: interactive and non interactive validation draft-fge-json-schema-validation-00
9.3 Partial Updates - OpenSocial RESTful Protocol Specification v0.9
更新履歴
- 2019/09/04
- チャンネル取得のサンプルのレスポンス形式を修正しました。
- 2013/11/27
- チャンネル生成の最大エントリ数と削除リクエストに関する記述を追加しました。
- 2013/10/31
- 複数のチャンネル取得の記述を追加しました。
- 2013/10/01
- OAuth Signed Request (xoauth_requestor_id) に関する記述を削除しました。
- 2013/09/05
- PUTに関するサンプルを修正
- 2013/06/20
- サンプルの誤植の修正
- 2013/05/01
- チャンネル一覧の取得を削除
- 2013/04/25
- 新規作成