🌐 GASで外部APIを実行する方法 - UrlFetchApp入門

post-cover

Google Apps Script(GAS)には、外部のAPIと通信するための強力なツール、UrlFetchAppがあります。この記事では、UrlFetchAppの基本的な使い方と、実際に外部APIを呼び出す方法をステップバイステップで紹介します。

UrlFetchAppを使ったAPIリクエストの送信

UrlFetchAppは、HTTPリクエストを外部のURLに送信できるGoogle Apps Scriptのサービスです。GET、POST、PUT、DELETEなどのHTTPメソッドをサポートしており、カスタムヘッダーやペイロードの追加も可能です。これにより、外部のREST APIにアクセスし、データの取得や送信が行えます。

GETメソッドでデータを取得

以下の例は、GETリクエストを使って外部APIからデータを取得する方法を示しています。

function getPosts() {
  var url = 'https://jsonplaceholder.typicode.com/posts';
  var response = UrlFetchApp.fetch(url);
  var json = JSON.parse(response.getContentText());
  Logger.log(json);
}

POSTメソッドでデータを送信

POSTリクエストを利用して、新しいデータをAPIに送信する方法です。

function createPost() {
  var url = 'https://jsonplaceholder.typicode.com/posts';
  var data = {
    title: 'foo',
    body: 'bar',
    userId: 1
  };
  var options = {
    'method' : 'post',
    'contentType': 'application/json',
    'payload' : JSON.stringify(data)
  };
  var response = UrlFetchApp.fetch(url, options);
  var json = JSON.parse(response.getContentText());
  Logger.log(json);
}

エラーハンドリングの実装

エラーが発生した場合に備えて、try-catchを用いたエラーハンドリングを行います。

function safeFetch(url, options) {
  try {
    var response = UrlFetchApp.fetch(url, options);
    return JSON.parse(response.getContentText());
  } catch (e) {
    Logger.log('Error: ' + e.toString());
    return null;
  }
}

まとめ

UrlFetchAppを使えば、Google Apps Scriptから簡単に外部APIとの通信が可能です。


Profile picture
michael ☻︎ 🇯🇵
Web Engineer(PHP/Laravel, Python/FastAPI/Flask, TypeScript/Vue/React, AWS/GCP, etc.) / Freelance /
Profile picture
michael ☻︎ 🇯🇵
Web Engineer(PHP/Laravel, Python/FastAPI/Flask, TypeScript/Vue/React, AWS/GCP, etc.) / Freelance /
FebMarAprMayJunJul
© 2024, PWE