Google Apps Script を利用したWebhook (POST) によるスプレッドシートへの書き込み では、Google Apps Script ( GAS ) に POST リクエスト をして Google スプレッドシートへの書き込みについて紹介をしました。今回は GAS への GET リクエストによるスプレッドシートデータの取得方法を確認します。
Claris FileMaker Pro から GAS へリクエスト送信
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205002a-1024x554.jpeg)
今回も GAS へのリクエストを送信するためのクライアントとして FileMaker Pro を使用します。FileMaker Pro の「URL から挿入」スクリプトステップを使用し、GAS に GET リクエストをします。
cURL オプション
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205003a.jpeg)
・cURL で HTTP リクエストをする際、デフォルトが GET リクエストとなっているため “-X GET” オプションを省略することができます。
・cURL で GAS にリクエストをする際、リダイレクトすることでレスポンスを取得することができます。リダイレクト先の URL は、GAS へのリクエストの戻り値として1度受け取ります。そして受け取った URL にリダイレクトするには”-L” オプションをつけます。
GAS で実行する処理
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205004a-1024x588.jpeg)
今回使用したコードは、FileMaker Pro からのリクエストで実行開始し、スプレッドシート内に存在するすべてのデータを取得します。そして、取得した情報とエラー内容をレスポンスとして FileMaker Pro に返します。
以下では GAS によるスプレッドシートとの操作について少しだけご紹介します。
スプレッドシートからデータを取得する
GAS でスプレッドシートからデータを取得したい場合は、まずスプレッドシートをファイルで取得する必要があります。それは次の1行で行うことができます。
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205005a.jpeg)
スプレッドシートの ID は スプレッドシートの URL に存在します。
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205006a-1024x43.jpeg)
※ID: 1-xR9VCzJZvARzm_fuAdhsldl8cWv7cKntZNdnSd0
取得したファイル情報から、更にシート情報をシート名を指定して取得します。
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205007a.jpeg)
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205008a-1024x539.jpeg)
今回のコードでは、次の1行でシート内のデータが存在する範囲すべてのデータを取得しています。
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205009a.jpeg)
getDataRange() は、シート内のデータが存在する範囲すべてのデータを取得します。データの取得範囲は自由に指定することができ、getRange() や getLastRow() などがあります。
getValues() はシートのデータを取得する際には必須のメソッドで、複数のセルの値を2次元配列で取得することができます。
これらの方法を使用して取得したデータをレスポンスとして FileMaker Pro に返します。
今回レスポンスとして取得した値は以下の画像の通りです。
![](https://kotovuki.co.jp/wp-content/uploads/2024/02/20240205010a-520x300.jpeg)
まとめ
今回は、FileMaker Pro から GAS への GET リクエストによるスプレッドシートデータの取得方法についてご紹介しました。
ご紹介したコードでは、GAS 側で予め1つのスプレッドシートで固定していました。しかし、FileMaker Pro から GAS に送信する URL パラメータに、「取得したいシートの範囲」、「スプレッドシートのID」、「取得したいシートの名前」といった情報を付与することで、FileMaker Pro 側から任意のスプレッドシートの好きな範囲のデータをリクエストする仕組みを構築することもできます。