
どうも、今回はn8nを使ってbotを作った話
AIと連携することでめちゃくちゃ簡単に作れるようになりました
記事作成日:2026年3月24日
はじめに
私は市場調査としてAppStoreのランキングを眺める事がよくあるのですが、
定期的に観測したり、資料としてまとめる事に対しては手動で行っていたため、
時間がかかっていました。
今回はそれをある程度自動化してしまえる話です。
まずn8nとは?

・クラウドサービスは有料
・ローカルサーバーを組めば無料(Windowsでも動作)
できること
-
複数アプリの連携・自動化: Gmail、Slack、スプレッドシートなどのWebサービスを繋ぎ、データ連携を自動化できます。
-
トリガー実行: 定期実行(毎日〇時など)や、特定のアクション(メール受信など)をきっかけに処理を自動開始できます。
-
AIの組み込み: ChatGPTなどのAPIと連携し、情報の要約や自動分類を処理フロー内に組み込めます。
-
自社サーバーでの運用: 自身の環境(セルフホスト)に構築でき、実行回数制限やコストを抑えた運用が可能です。
できないこと(苦手なこと)
-
画面(UI)の作成: ユーザーが操作するWebサイトやスマホアプリの画面は作れません。バックエンド(裏側)の自動化専用です。
-
大規模データの高速処理: 数百万件規模のデータを一括で変換・処理するような用途には向いていません。
-
高度なメディア加工: 画像や動画の複雑な編集を単体で行うことは困難であり、外部APIとの連携が必要です。
-
完全なノーコードでの複雑な構築: 実用的な仕組みを作る場合、データの構造(JSON)の理解や、JavaScriptによる簡単なコード記述が必要になるケースが多いです。
作れるものの例
-
SNS自動投稿bot: 指定したサイトの更新情報(RSSなど)を取得し、AIで要約文を作成してX(旧Twitter)へ自動で投稿する仕組み。
-
監視・通知システム: 競合サイトの価格や更新状況を定期的に自動チェックし、変化があった場合のみSlackやDiscordへ通知するbot。
-
問い合わせの自動仕分けと記録: フォームから問い合わせを受信した際、AIで「質問」「営業」などに分類し、担当者のチャットへ転送しつつ、スプレッドシートに記録するフロー。
ということで、無料で使いたいので、
自分ちにあるWindowsミニPCにサーバーとして稼働してもらうことにしました。

Claude Codeと連携ができる
さて、例えばn8nを通じてAIにコンテンツを要約させるには、
ChatGPT APIやClaude APIなど「API契約」が当然必要なのですが、
n8nのワークフローを外部から組み立てるための「n8n API」は
n8nインストール後に、API Keyを無料で発行して使えます。
つまり、初心者にはハードルが高いワークフローの開発を、
Claude Codeにやってもらうことができるということです。
私も当然のようにClaude Codeを使って1日もかからずbotを組み立てたのが事実になります。
なので、ワークフローの作り方・中身はあまり良く分かっていません。
(ちなみにCodexだとローカルネットワークアクセスに失敗してしまいました)
とりあえず、作り方だけ記します。
n8n API Key発行
Settings-n8n API からAPIキーを発行。
これをtxtなりに保存して、Claude Codeに読み込ませる。

要求仕様作成
まず、AppStoreの100位までのランキングは、
Apple公式がrssで出力しています。
これを加工して自動でスプレッドシートにまとめてほしいという話。
https://itunes.apple.com/${countryCode}/rss/${rankingType}/limit=100/genre=${genreId}/json
で取得できます。
古くから使われている旧iTunes Store RSS Feed 系のURLというやつです。
このRSSの使い方もClaude Codeが勝手に調査してくれました。
こんな「手動取得」の完成イメージを最初に作ってから考えます。

つまり、公式RSSを加工して、
① ある国の単一のジャンルを、手動で取得してスプシにまとめられること
② ある国の、全ジャンルを一括して取得できること
③ 定期的に、ある曜日のある時刻になったら、日本のランキングをすべて取得すること
という段階で作成していきました。
ワークフロー作成
まずClaude Codeに対して、
「① ある国の単一のジャンルを、手動で取得してスプシにまとめられること」
に作って欲しいものを投げかけ、雛形の要求仕様.mdを作成。
その要求仕様.mdを確認し、さらに手を加える。
こんな感じ
概要
App Store の現在のランキングを取得し、Google スプレッドシートに出力する。 手動実行(フォーム入力)と自動スケジュール実行の両方に対応する。
提供されるrssから、
・すべての国
・すべてのジャンル
・有料/無料
をそれぞれ指定して取得できること。
処理フロー
- フォーム入力を受け取り、Apple RSS フィード URL を生成する
- Apple iTunes RSS API からランキング上位100件を取得する
- 取得したアプリID一覧で iTunes Lookup API を叩き、詳細情報を取得する
- ランキング順位・詳細情報を結合して行データを生成する
- 実行日時を含むタイトルで Google スプレッドシートを新規作成する
- Google Drive 内の指定フォルダに「YYYY-MM-DD」形式の日付フォルダを作成(既存の場合はそれを使用)する
- スプレッドシートをデータ行追記後、日付フォルダへ移動する
出力スプレッドシート
- タイトル形式: iPhoneAppランキング_{国名}_{ジャンル名}_{無料/有料}_{YYYY-MM-DD-HHmmss}
- 保存先: Google Drive 指定フォルダ → 日付サブフォルダ
カラム構成
| 列 | 内容 |
|---|---|
| 国名 | 選択した国 |
| ジャンル | 選択したジャンル |
| fee | 無料/有料 |
| 順位 | ランキング順位(1〜100) |
| アイコン | アイコン画像 |
| タイトル | アプリ名 |
| 評価件数 | ユーザー評価件数 |
| 平均 | 平均評価(小数点1桁) |
| 年齢 | 年齢レーティング |
| カテゴリ | ジャンル |
| デベロッパ | 開発者名 |
| 言語対応 | 対応言語コード |
| サイズ | ファイルサイズ(MB表示) |
ワークフロー作成
あとはClaude Codeに
・n8nのローカルサーバーのアドレス
・n8nのAPI Key
を指定し、
「では要求仕様どおりに作成してください」
と指示を投げかけただけ。
n8nのワークフローまで自動的に作成されました。
Google スプレッドシート作成のためのサービス連携
Claude Codeに言われるがまま、
Googleアカウントとも連携し、Client ID, Client Secretの設定、
更にはGoogle Driveの自分の自動的にドライブを生成させるためのIDなどもハードコーディング。

最初のテスト
作成されたら、一旦テストをします。
ここでエラーが出たら一緒にデバッグです。
手動実行して、無事rssからスプシ生成できることを確認したら、
ちょっとカラム幅や高さを調整するコードも追加

定期実行部分を追加
最後に、自動実行部分も追加してもらう。
最終的に何ができたか
毎週日曜日の夜に、日本のiPhoneAppランキング100を自動的に取ってきて、
スプシにまとめてくれるbotができあがったよ!

Schedule Triggerで不具合っぽいのがある
クラウドサービスを使ったことがないので定かではないですが、
ローカル版で「Schedule Trigger」での定期実行の設定にバグらしき挙動を発見しました。
どうやら、最初に設定したあと、変更が反映されないです
これを避けるには、
① Publish状態を一度Unpublish に戻す
② Schedule Triggerの設定を変更
③ 再度Publish
という手順で設定が反映される模様。

ずっと悩んでいましたが、どうやらリアルタイム反映されないっぽいですね。
さいごに
AIを使った開発自体が、
企画→要求仕様→コーディング(ワークフロー作成)→テスト→仕様追加 と、
リアルなチーム開発っぽくてとても楽しい。
こうやって個人開発もどんどん上流側に行くんだろうなぁと思っています。
何かお役に立てれば幸いです。
ではまたー

