search
LoginSignup
170

More than 3 years have passed since last update.

posted at

updated at

Googleスプレッドシートで簡易APIを3分で作るよ

1. データ用のスプレッドシートを作る

ここでは、Online Data Generatorを使ってサクッとダミーデータを作りました。
apitest_-_Google_Sheets.png

2. スクリプトエディタを起動

メニューバーから Tools > Script editor を選ぶ。
Screen Shot 2018-12-27 at 3.11.53 pm.png

3. データをJSON化して返すスクリプトを書く

スクリプトエディタに以下のコードをコピペして適当な名前を付けて保存。

function doGet() {

  // スプレッドシートを取得。(シート名を指定してね!)
  const sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1')

  const rows = sheet.getDataRange().getValues()  // 全ての行を取得
  const keys = rows.splice(0, 1)[0]  // 最初の行はkeysだよ

  // データをJSONに整形するよ
  const data = rows.map(function (row) {
    var item = {}
    row.map(function (val, i) {
      item[String(keys[i])] = val
    })
    return item
  })

  return ContentService.createTextOutput(JSON.stringify(data)).setMimeType(ContentService.MimeType.JSON)
}

4. スクリプトをWebアプリ化

メニューから Publish > Deploy as web app... を選ぶ。
Screen Shot 2018-12-27 at 3.19.06 pm.png

設定は以下のようにすると公開できるよ。権限の確認があるのでOKすべし。
apitest.png

5. ブラウザからアクセスしてみる。

以上、こんな感じでバッチリ機能してますね。実際のAPIはこちら
Screen Shot 2018-12-27 at 3.23.31 pm.png

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
170