ユーザーグループ

WebhookからGoogle スプレッドシートにデータを登録する方法

WebhookからGoogle スプレッドシートにデータを登録する方法

メルマガなどを運用していて、フォームから申し込みがあった時にメールアドレスだけをデータベース化したい場合があります。

クローバ PAGE にはWebフックの機能があるので、Zapierなどと連携すれば様々なサービスにデータを送信することができるのですが、Google スプレッドシートで簡単なスクリプトを書くだけで、Zapierを使わなくてもGoogle スプレッドシートにデータを送信することができます。

さっそくやってみましょう。


スプレッドシートを作成する

Googleドライブにアクセスして、新しいスプレッドシートを作成します。一行目に、ヘッダー行を作成しておきます。


「拡張機能」メニューから、「AppScript」を開きます。

以下のようにコードを入力します。


function doPost(e) { 
  var json = e.postData.getDataAsString(); 
  var data = JSON.parse(jsonString); 
  var type = data.type; 
  var name = data.name; 
  var email = data.email;
  var ss = SpreadsheetApp.openById(SpreadsheetApp.getActiveSpreadsheet().getId()); 
  var sheet = ss.getSheetByName("シート1"); 
  if (type == 'created') { 
    sheet.appendRow([name, email]); 
  } 
}


ウェブアプリケーションとして公開する

コードを入力し終わったら、「デプロイ」から「新しいデプロイ」をクリックします。「種類の選択」をクリックして、

「ウェブアプリ」を選択します。

「アプリケーションにアクセスできるユーザー」を、「全員(匿名ユーザーを含む)」にします。

「デプロイ」をクリックすると、認証を求められる場合があります。説明が表示されますので、適宜認証を行なってください。

「このアプリはGoogleで確認されていません」というメッセージが表示される場合は、「詳細」リンクから、認証画面に移動してください。

デプロイが成功するとデプロイIDとウェブアプリのURLが表示されます。このURLをクローバ PAGE のWebフックに設定します。

クローバ PAGE の設定

まず、フォームからの申し込み時にメールアドレスを受け付けるようにします。フォームの入力項目の設定で、メールアドレスの要求を有効にします。


「サービス連携」から新しいWebフックを作成します。Webフックの詳細についてはヘルプサイトを参考にしてください。

標準Webhookを作成し、URLに先ほど取得したURLを設定します。

Webフックをテストする

これで準備は完了です。クローバ PAGE のフォームから申し込みを行ってみます。

スプレッドシートにデータが登録されましたね!

こちらも合わせてオススメです。

無料で始める