第11回 / 応用コース 全4回

API連携・自動化・スケジュール実行

サービスをつなぎ、放っておいても動く仕組みを作る
Claude Code パーソナル講座 | 講師: 山本 朋美
オンライン / 対面(120分)

今日のゴール

この2時間が終わったら、こんなことができるようになります

今日の持ち帰り成果物: 自動実行される仕組み1つ(GASトリガー or cron)

今日の流れ(120分)

時間内容形式
00:00 - 00:10前回振り返り・今日のゴール対話
00:10 - 00:30APIって何?サービス同士をつなぐ仕組み座学
00:30 - 00:55ワーク1: API連携を体験するハンズオン
00:55 - 01:05休憩---
01:05 - 01:25自動化とスケジュール実行座学
01:25 - 01:50ワーク2: 定期実行の仕組みを作るハンズオン
01:50 - 02:00まとめ・次回予告対話

前回の振り返り(第10回: データ分析・可視化)

学んだこと

  • データ分析の基本フロー
  • Pythonでのデータ処理
  • グラフ・チャートの自動生成

できるようになったこと

  • CSVデータの集計・可視化
  • レポートの自動生成
  • 分析結果のグラフ化

今日のステップアップ

  • 外部サービスとの連携
  • 処理の自動化・定期実行
  • 「放っておいても動く」仕組み
01

APIって何?

サービス同士をつなぐ仕組みを理解しよう

API = ソフトウェア同士の「会話の約束事」

API = Application Programming Interface

人間同士の会話

「今日の天気は?」と聞けば
「晴れです」と返ってくる

お互い日本語という約束事
コミュニケーションしている

ソフトウェア同士の会話

「東京の天気を教えて」とリクエスト
「晴れ、最高気温25度」とレスポンス

お互いAPIという約束事
データをやりとりしている

ポイント: APIは「どういう形式でお願いすれば、どういう形式で返してくれるか」の取り決め

身近なたとえ: レストランのウェイター

あなた(客)
ウェイター(API)
キッチン(サービス)

あなた(客)

メニューを見て注文する
キッチンの中身は知らなくていい
= あなたのプログラム

ウェイター(API)

注文を聞いてキッチンに伝える
料理ができたら運んでくる
= API(橋渡し役)

キッチン(サービス)

注文通りに料理を作る
専門的な処理を担当
= 外部サービス

身の回りのAPI活用例

実は皆さんも毎日APIの恩恵を受けています

サービスAPIでやっていること身近な場面
天気予報API天気データを取得iPhoneの天気アプリ
Google Maps API地図・経路情報を取得食べログの地図表示
LINE Messaging APILINEにメッセージ送信お店からの通知
決済API(Stripe等)クレジットカード決済ネットショッピング
freee API会計データの取得・登録レシート自動仕訳
気づきましたか? スマホの多くのアプリは、裏側でAPIを使って他のサービスとデータをやりとりしています

MCPとAPIの関係

第9回で学んだMCPは、APIを「Claude Codeから簡単に使えるようにした」もの

APIを直接使う場合

認証コードを書く
リクエストの形式を調べる
レスポンスを解析する
エラー処理を書く
プログラミング知識が必要

MCPを使う場合

MCPサーバーを設定するだけ
日本語で指示するだけ
Claude Codeが全部やってくれる
エラーも自動で対処
「使うだけ」なら簡単!

今日のテーマ: MCPの「裏側」であるAPIの仕組みを理解し、自分でもAPI連携を作れるようになる

APIキー = サービスにアクセスするための「鍵」

APIキーの役割

「あなたは誰ですか?」を証明するID

たとえると:
会員制レストランの会員カード
マンションのオートロックの鍵
会社の社員証

APIキーの管理が超重要!

  • 他人に見せない・共有しない
  • GitHubに公開しない
  • 環境変数(.env)で管理する
  • 漏洩したら即座に再発行
APIキーが漏洩すると: 他人があなたのアカウントで勝手にAPIを使えてしまう。高額な請求が来たり、データを盗まれたりするリスクがあります

APIリクエストの基本構造

APIへのお願い(リクエスト)には型があります

URL(どこに)
+
メソッド(何を)
+
データ(中身)
+
APIキー(誰が)
メソッド意味たとえ
GETデータを取得する「メニューを見せて」
POSTデータを送信・作成する「この料理を注文します」
PUT / PATCHデータを更新する「注文を変更します」
DELETEデータを削除する「注文をキャンセルします」
覚えなくてOK! Claude Codeに「APIを使って〇〇して」と言えば、適切なメソッドを選んでくれます

実例: こんなAPI連携を実際に使っています

freee会計API連携

やっていること:
Claude Codeから直接freeeの取引データを取得・登録

メリット:
経理作業が大幅に時短。請求書の取引登録や残高確認を、ターミナルから一発で実行

LINE Bot API連携

やっていること:
Google Driveの共有通知をLINEに自動送信

メリット:
重要な共有リクエストを見逃さない。GASが自動検知してLINEカルーセルで通知

ポイント: API連携は「便利ツール同士をつなぐ配線」。一度つなげば、あとは自動で動き続ける
02

ワーク1: API連携を体験する

GASからLINE APIにメッセージを送ってみよう

ワーク1: やること

Google Apps Script から LINE Messaging API を使って、自分のLINEにメッセージを送ります

GAS(スクリプト)
LINE API
あなたのLINE

コースA: LINE Messaging API

GASからLINEにメッセージを送る
おすすめ: LINE Bot の基本を体験したい方

コースB: freee API

freeeから取引データを取得する
おすすめ: 経理・会計業務を効率化したい方

受講者の環境に応じて選択 LINEアカウントがある方はコースA、freeeを使っている方はコースBがおすすめ
ハンズオン準備

LINE Messaging API の準備(5分)

  1. 1LINE Developers(developers.line.biz)にアクセス
  2. 2「Messaging API」でチャネルを作成
  3. 3チャネルアクセストークン(長期)を発行
  4. 4自分のユーザーIDを確認
APIキーの取り扱い注意! チャネルアクセストークンは絶対に他人に見せないでください。講座中もスクリーンに映さないように注意。
ハンズオン

Claude Code にスクリプトを書いてもらおう(20分)

入力するプロンプト
Google Apps Scriptで、LINE Messaging APIを使って
自分のLINEにメッセージを送るスクリプトを書いてください。

【条件】
・チャネルアクセストークン: [トークンを貼る]
・送信先ユーザーID: [ユーザーIDを貼る]
・送るメッセージ: 「APIテスト成功!Claude Codeから送信しました」
・GASのスクリプトエディタにコピペして使える形式で
成功のイメージ: AIが書いたコードでLINEにメッセージが届いた!

今やったことを整理しよう

Claude Code に依頼
GASコード生成
GASに貼り付け
LINE に届く!

コードの中で起きていたこと

  • GASが LINE API の URL に POST リクエスト
  • ヘッダーにAPIキーを付けて認証
  • 本文にメッセージ内容をJSON形式で送信
  • LINEサーバーが受け取ってあなたに配信

あなたがやったこと

  • APIキーを取得した
  • Claude Code にプロンプトを書いた
  • 生成されたコードをGASに貼り付けた
  • 実行ボタンを押した

プログラミング知識ゼロでもAPI連携ができた!

API連携の応用パターン

同じ仕組みで、こんなことができます

通知系

  • スプシ更新 → LINE通知
  • メール受信 → Slack通知
  • フォーム送信 → メール通知

データ連携系

  • freee → スプシに自動転記
  • フォーム → freeeに仕訳登録
  • CSV → 各種サービスにインポート

自動処理系

  • 定期的にデータを集計
  • 条件に合うデータを抽出・通知
  • レポートを自動生成・送信
共通パターン: トリガー(きっかけ) → 処理(APIでデータ取得・加工) → アウトプット(通知・保存)

☕ 休憩(10分)

APIの概念はつかめましたか?
後半は「自動化・定期実行」の仕組みを作ります
03

自動化とスケジュール実行

「毎朝9時に自動で実行」の仕組み

自動化の本質: 「人がやらなくていい」仕組み

手動でやっている状態

毎朝スプシを開く
データを確認・集計する
結果をメールで送る
毎日繰り返す...
忘れることもある

自動化した状態

スクリプトが自動で起動
データを自動で集計
結果を自動でメール送信
毎日確実に実行
人間は結果を見るだけ

自動化のゴール: 「定型作業を仕組みに任せて、人間は判断と創造に集中する」

GASトリガー: Googleの定期実行の仕組み

Google Apps Script には「トリガー」という自動実行の機能が標準搭載

トリガーの種類いつ実行されるか使いどころ
時間主導型毎時/毎日/毎週/毎月定期レポート、データ集計
スプシ編集時スプレッドシートが編集された時データ検証、自動計算
フォーム送信時Googleフォームが送信された時自動返信、データ転記
カレンダー更新時予定が追加・変更された時通知、記録
GASトリガーの良いところ: 無料で使える / Googleアカウントがあればすぐ設定できる / サーバー不要

cron: PCやサーバーで定期実行するUNIXの仕組み

GASトリガーのPC版・サーバー版。より柔軟な設定が可能

cronの書き方(例)

0 9 * * *   python3 /path/to/script.py

意味: 「毎日9時0分に script.py を実行する」

分 時 日 月 曜日   実行するコマンド

GASトリガー向き

  • Google系サービスとの連携
  • サーバーを持っていない場合
  • 簡単な定期処理

cron向き

  • ローカルPC上のスクリプト実行
  • Python/Node.js等の処理
  • より複雑な定期処理

自動化の設計パターン

どんな自動化も、この3ステップで考えられます

トリガー
何がきっかけ?
処理
何をする?
通知・保存
結果をどうする?

トリガー例

  • 毎朝9時(時間主導)
  • フォーム送信時(イベント)
  • ファイル共有時(変更検知)

処理例

  • データを集計する
  • APIでデータを取得する
  • 条件に合うものを抽出する

通知・保存例

  • LINEに通知を送る
  • メールでレポートを送る
  • スプシに結果を書き込む

実例: 実際に動いている自動化の仕組み

Gmail自動アーカイブ

トリガー: 毎時(1時間ごと)
処理: 受信トレイのメールをルールに基づいて自動アーカイブ
結果: 受信トレイが常にスッキリ

→ GASトリガーで実現

Google Drive共有 → LINE通知

トリガー: 5分ごとにチェック
処理: Driveの共有リクエストを検知
結果: LINEカルーセルで通知

→ GASトリガー + LINE API で実現

どちらも「放っておいても動く」仕組み。 一度作れば、あとは自動で動き続けます
04

ワーク2: 定期実行の仕組みを作る

GASトリガーで「毎朝自動で動く」スクリプトを作ろう

ワーク2: やること

GASトリガーで「毎朝9時にスプレッドシートのデータを集計してメール送信」する仕組みを作ります

GASトリガー
毎朝9時
データ集計
スプシのデータ
メール送信
集計結果を配信

ステップ1: スクリプト作成

Claude Code にスプシ集計+メール送信のGASコードを書いてもらう

ステップ2: トリガー設定

GASのトリガー設定画面で「毎日9時に実行」を設定する

ハンズオン

Claude Code にスクリプトを書いてもらおう(25分)

入力するプロンプト
GASで毎朝9時にスプレッドシートのデータを集計して
メール送信するスクリプトを書いてください。

【条件】
・スプレッドシートID: [スプシのIDを貼る]
・集計対象: [シート名・列の説明]
・送信先メール: [自分のメールアドレス]
・トリガー設定の手順も教えてください
ヒント: スプシがない場合は、サンプルデータ(売上、タスクリスト等)を含むスプシを先にClaude Codeに作ってもらいましょう
ハンズオン

GASトリガーの設定手順

  1. 1GASエディタの左メニュー「トリガー」(時計アイコン)をクリック
  2. 2右下の「+ トリガーを追加」をクリック
  3. 3実行する関数を選択(例: sendDailyReport)
  4. 4イベントのソース:「時間主導型」を選択
  5. 5時間ベースのトリガーのタイプ:「日付ベースのタイマー」を選択
  6. 6時刻: 「午前9時〜10時」を選択 → 保存
成功のイメージ: 明日の朝9時に、自動で集計メールが届く!

今やったことを整理しよう

作った仕組みの全体像

  • トリガー: 毎朝9時(GASトリガー)
  • 処理: スプシのデータを読み取り・集計
  • 出力: 集計結果をメールで送信

→ 明日から毎朝、自動でレポートが届く!

応用アイデア

  • 集計結果をLINEに送る(API連携!)
  • 条件に合うデータだけアラート通知
  • 週次・月次のレポートにカスタマイズ
  • 複数シートのデータを横断集計
ワーク1 + ワーク2 を組み合わせると: 「毎朝9時にデータを集計してLINEに通知」という本格的な自動化も可能!

自動化を成功させる3つのコツ

よくある失敗: 一度作って放置 → いつの間にかエラーで止まっていた。定期的な動作確認も忘れずに!

今日のまとめ

持ち帰り成果物: 自動実行される仕組み1つ(GASトリガー or cron) ✓

次回までにやってみてほしいこと

基本(10分でできます)

今日作ったGASトリガーが
明日ちゃんと動くか確認する。

→ 動いたら、自分なりにカスタマイズしてみる

チャレンジ(余裕がある人)

ワーク1とワーク2を組み合わせて
「毎朝集計 → LINEに通知」を作ってみる。

→ 2つのAPIを連携させる体験

コツ: 「毎日やっているルーチン作業」を1つ思い浮かべて、「これ自動化できないかな?」と考えてみてください

次回予告 -- 第12回: 総合演習(最終回)

次回やること

  • 全11回の学びを総復習
  • 自分だけの業務自動化システムを設計
  • オリジナルプロジェクトに挑戦
  • 卒業制作の発表

最終回の成果物

全12回で学んだスキルを総動員した
「自分だけの業務自動化システム」

→ 講座修了後も使い続けられる
あなた専用のAIワークフロー

最終回に向けて: 「こんな業務を自動化したい」というアイデアを1つ考えておいてください。Claude Code + API + 自動化で実現します!

お疲れさまでした!

第11回: API連携・自動化・スケジュール実行 -- 完了

次回: 総合演習(最終回)

ご質問はいつでもお気軽にどうぞ -- LINE / メール / 次回の講座で

Claude Code パーソナル講座

講師: 山本 朋美

← 一覧へ戻る