試合関連のAPI(matches コントローラ)
create
試合を作成する。
作成直後は自分だけが参加した状態となり、対戦相手を待つ必要がある。
リクエスト: POST
URL: /matches/create.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
作成した試合の show と同じレスポンス
waiting_list
募集中の試合の一覧を取得する (最大20件)
リクエスト: GET
URL: /matches/waiting_list.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
XML の場合
試合ID
作成日時
……
join
試合に参加する。
リクエスト: POST
URL: /matches/:id/join.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
参加した試合の show と同じレスポンス
show
試合の詳細情報を取得する。
リクエスト: GET
URL: /matches/:id.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
XML の場合
試合ID
ステータス
作成日時
(black|white) <- 参加者の場合
destroy
試合を削除する。作成した本人のみ削除可能。
リクエスト: POST
URL: /matches/:id/destroy.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
削除した試合の show と同じレスポンス
is_my_turn
自分のターンか否か取得する。
リクエスト: GET
URL: /matches/:id/is_my_turn.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
XML の場合
true
盤面関連のAPI(board コントローラ)
board は1つの試合に所属するため、/matches/:id/board というURLから始まるURLでAPIを提供する。
latest
試合の盤面の最新情報を取得する。
リクエスト: GET
URL: /matches/:id/board/latest.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
XML の場合
(black|white)
[[1,0,-1,0,0,0...]...]
turn
試合の任意の手番の盤面の情報を取得する。
リクエスト: GET
URL: /matches/:id/board/:number_of_turn/turn.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
指定された手番の latest と同じレイアウトのレスポンス。
puttable_list
試合の盤面で打つことができる座標のリストを取得する。
リクエスト: GET
URL: /matches/:id/board/puttable_list.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
なし
レスポンス:
XML の場合
0
6
……
put
石を置く。
リクエスト: POST
URL: /matches/:id/board/put.format
(format は xml, json のうちのいずれかを指定)
パラメータ:
x: x座標
y: y座標
レスポンス:
石が置かれひっくり返った後の latest と同じレスポンス