API仕様書作ってみた

前提条件

仕様書を書くにあたって必要となる知識を先に埋めておこうと思います。 構成としては、Google Apps Script(GAS)とGoogle Sheetsを使用してAPIとデータベースを構築しています。APIはREST API設計思想を踏襲して作成します。

データベースの仕様は、デスクトップであれば右上、モバイルであれば上の部分に書いてあります。IDとcreatedはAPI側で自動生成します。作成の場合では、stateはFALSEで登録されます。 また、GASの制限で[POST/GET]のHTTPメソッドしか使用することができず、ステータコードは200しか返すことができません。ちなみにURLも一つのGASファイルにつき一つです。回避策として以下の図のようにすべてをPOSTで送信し、データにメソッドとルートを表すデータを渡すことでREST APIを再現します。ステータスコードも同様の方法で再現します。サンプルのJSON形式をいかにおいておきます。

API仕様書

POST item
TODOのアイテム登録

request・responseの仕様

request
task string
response
task string
created string
ID string
state boolean

想定されるステータスコード

201

リクエスト成功やでぇ~データ作成するで。

400

リクエストのパラメータが間違っているかもしれません。

404

リクエストのURLが間違っているかもしれません。

405

許されてるメソッドはPOST/GET/PUT/DELETEのみっす!

request・response例

GET item
TODOのアイテム取得

request・responseの仕様

request
なし
response
task string
created string
ID string
state boolean

想定されるステータスコード

200

リクエスト成功やでぇ~データ返答するで。

400

リクエストのパラメータが間違っているかもしれません。

404

リクエストのURLが間違っているかもしれません。

405

許されてるメソッドはPOST/GET/PUT/DELETEのみっす!

request・response例

PUT item
TODOのアイテム編集

request・responseの仕様

request
task string
created string
ID string
state boolean
response
なし

想定されるステータスコード

204

リクエスト成功やでぇ~処理しました。

400

リクエストのパラメータが間違っているかもしれません。

404

リクエストのURLが間違っているかもしれません。

405

許されてるメソッドはPOST/GET/PUT/DELETEのみっす!

request・response例

DELETE item
TODOのアイテム編集

request・responseの仕様

request
ID string
response
なし

想定されるステータスコード

204

リクエスト成功やでぇ~処理しました。

400

リクエストのパラメータが間違っているかもしれません。

404

リクエストのURLが間違っているかもしれません。

405

許されてるメソッドはPOST/GET/PUT/DELETEのみっす!

request・response例