Chat Channel

概要

チャットのチャンネルを操作する為の API です。

ゲームチャットの使い方に関しては、こちらのチュートリアルをご確認下さい。
  • 1 ユーザにつき、1 チャットルームを作成し、特定ユーザーのみにメッセージ(ゲームからのお知らせ)を送る行為は禁止されています。
  • 1アプリケーションにつき生成できるチャンネルの最大エントリ数は 1,000,000 件 になります。

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 メソッド

Authorization Code Grant

  • GET チャンネルの取得
  • POST チャンネルの作成
  • PUT チャンネルの更新
  • DELETE チャンネルの削除

Client Credentials Grant

  • GET チャンネルの取得
  • POST チャンネルの作成
  • PUT チャンネルの更新
  • DELETE チャンネルの削除
     

    エンドポイント URL

  • Sandbox 環境
    https://sb-app.mobage.jp/social/api/restful/v2/chat/{appId}/channels/{-prefix|/|channelId}
    
  • 本番環境
    https://app.mobage.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" : "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により生成されたチャンネルはユーザ操作によって削除することは出来ませんのでイベント終了などのタイミングにあわせて削除リクエストを行って下さい。
PREVIOUS

BlackList

NEXT

Chat Member