Open1

GASからAPI Gatewayを叩く

enumuraenumura

前提

事前にAPIのエンドポイントはPOSTで作成されてる想定。

GASのソース

GASのスクリプトは下記の通り。

function sendDataToApiGateway() {
  const SPREADSHEET_ID = 'スプシのID';
  const API_ENDPOINT = 'APIのエンドポイント';

  try {
    const spreadsheet = SpreadsheetApp.openById(SPREADSHEET_ID);
    const sheet = spreadsheet.getActiveSheet();
    const values = sheet.getRange('A1:A5').getValues();

    for (let i = 0; i < values.length; i++) {
      if (values[i][0]) {
        const requestOptions = {
          'method': 'POST',
          'headers': {
            'Content-Type': 'application/json'
          },
          'muteHttpExceptions': true,
          'payload': JSON.stringify({
            'data': values[i][0]
          })
        };
        
        const response = UrlFetchApp.fetch(API_ENDPOINT, requestOptions);
        Logger.log('Response: ' + response.getContentText());
        Utilities.sleep(1000);
      }
    }
  } catch (error) {
    Logger.log(error);
  }
}

動確

GASの実行ボタンを押下し、200でレスポンスが返ってくることを確認