【Googleスプレッドシート】LINE通知をスプレッドシートから送る!LINE Notify APIの使い方

【Googleスプレッドシート】LINE通知をスプレッドシートから送る!LINE Notify APIの使い方
🛡️ 超解決

スプレッドシートで管理している在庫やタスクの更新を、リアルタイムでLINEに通知できたら便利だと思いませんか。この記事では、GoogleスプレッドシートとLINE Notify APIを連携する方法を詳しく解説します。Apps Scriptを使った具体的なコードと設定手順を紹介しますので、初心者の方でも簡単に実装できます。これを読めば、スプレッドシート上のデータ変更を自動でLINEに送信できるようになります。

【要点】LINE Notify APIでスプレッドシートからLINE通知を送る手順

  • LINE Notifyのアクセストークン発行: LINE Notifyサイトでトークンを発行し、通知先のグループまたは自分自身を選択します。
  • Apps Scriptで通知関数を記述: スプレッドシートからデータを取得し、UrlFetchAppでLINE Notify APIにPOSTリクエストを送信する関数を作成します。
  • トリガーで自動化: 時間主導型や編集時トリガーを設定し、定期的または条件に応じて関数を自動実行します。

ADVERTISEMENT

LINE Notify APIとスプレッドシート連携の仕組み

LINE Notifyは、外部サービスからLINEにメッセージを送信するための公式APIです。スプレッドシート側では、Google Apps Script(GAS)を使ってHTTPリクエストを送ります。スプレッドシートのセル値を引数にメッセージを作成し、LINE NotifyのエンドポイントにPOSTすることで、任意のテキストをLINEに投稿できます。この仕組みにより、在庫のしきい値超えやタスクの期限切れなどを自動通知できます。

事前準備:LINE Notifyのアクセストークンを取得する手順

  1. LINE Notifyサイトにログインする
    LINEアカウントでログインします。初めての方は「ログイン」ボタンから進んでください。
  2. マイページでトークンを発行する
    「アクセストークンを発行する」ボタンをクリックし、トークン名(例:スプレッドシート通知)を入力します。通知先は「1:1でLINE Notifyから通知を受け取る」か、自分が管理者のグループを選択できます。
  3. 発行されたトークンをコピーする
    表示されたトークン文字列をメモ帳などに保存します。このトークンは後でスクリプト内で使用するため、安全な場所に保管してください。

スプレッドシートでApps Scriptを記述する手順

スプレッドシートの「拡張機能」メニューから「Apps Script」を開き、スクリプトエディタを表示します。以下の手順でコードを記述します。

  1. 関数sendLineNotifyを作成する
    次のコードを貼り付けます。
    function sendLineNotify(message) {
    var token = 'YOUR_TOKEN'; // ここに発行したトークンを記述
    var options = {
    'method' : 'post',
    'headers' : {
    'Authorization' : 'Bearer ' + token,
    },
    'payload' : {
    'message' : message,
    },
    };
    UrlFetchApp.fetch('https://notify-api.line.me/api/notify', options);
    }
  2. 通知内容を組み立てる関数を作成する
    例えば在庫アラートの場合、次のようにセルの値を取得してメッセージを生成します。
    function sendStockAlert() {
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('在庫管理');
    var item = sheet.getRange('A2').getValue();
    var stock = sheet.getRange('B2').getValue();
    var message = '【在庫アラート】' + item + 'の在庫が' + stock + '個になりました。';
    sendLineNotify(message);
    }
  3. スクリプトを保存して実行する
    Ctrl+Sで保存し、実行ボタン(▶)をクリックして関数をテストします。初回は権限の承認が必要です。LINEに通知が届けば成功です。

ADVERTISEMENT

トリガーを設定して自動通知する手順

トリガーを設定すると、手動で実行しなくても自動的に通知が送られます。

  1. Apps Scriptのトリガー画面を開く
    左メニューの「時計アイコン(トリガー)」をクリックし、「トリガーを追加」を押します。
  2. 実行する関数とイベントを選択する
    「実行する関数」で先ほど作った関数(例:sendStockAlert)を選びます。「イベントのソース」は「時間主導型」または「スプレッドシートから」を選べます。時間主導型なら「時間ベースのタイマー」で頻度(1時間ごとなど)を設定します。編集時に通知したい場合は「スプレッドシートから」→「変更時」を選びますが、その場合はonEdit関数を別途記述する必要があります。
  3. トリガーを保存して動作を確認する
    保存後、条件が揃ったときに自動実行されます。実行ログはApps Scriptの「実行」メニューで確認できます。

注意点とよくあるエラー

アクセストークンが無効な場合

トークンが間違っていると401エラーが発生します。LINE Notifyのマイページでトークンを再発行し、スクリプト内のtoken変数を更新してください。トークンは他人に見られないように注意しましょう。

メッセージ送信回数制限

LINE Notify APIには1時間あたりの送信上限があります。大量の通知を短時間に送るとエラーになるため、間隔を空けるか、必要最低限の通知に絞りましょう。時間主導型トリガーでは送信間隔を1時間以上に設定することをお勧めします。

トリガーが正しく動作しない場合

トリガーが実行されない原因として、権限不足やスクリプトのエラーが考えられます。Apps Scriptの「実行」メニューでログを確認し、エラー内容を特定してください。また、トリガー設定時に必要な権限を承認しているか確認しましょう。

編集時トリガーの注意点

編集時トリガーはセルの変更ごとに動作するため、短時間に大量の編集があると通知が殺到します。条件分岐をonEdit関数内で行い、特定のシートやセル範囲の編集時のみ通知するように制御しましょう。

サービス終了に注意

LINE Notifyは2025年3月にサービスを終了する予定です。今後はLINE Messaging APIなどへの移行をご検討ください。

通知内容の応用例

用途 通知内容の例
在庫管理 商品名と在庫数がしきい値を下回ったときに通知
タスクリマインダー 期限当日のタスク一覧を定時に通知
営業データ更新 新規リードが追加されたときに担当者に通知

まとめ

この記事では、GoogleスプレッドシートとLINE Notify APIを連携して、セルの値に応じたLINE通知を送る方法を解説しました。アクセストークンの発行、Apps Scriptのコード記述、トリガー設定の3ステップで自動化を実現できます。まずはサンプルコードを試し、在庫管理やタスク管理に応用してみてください。今後の更新では、LINE Messaging APIへの移行も視野に入れておくとよいでしょう。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。