MENU
  • はじめての n8n
  • 作り方
  • エラー対処
  • Claude 活用
  • 運営者
n8n × Claude 自動化の実践記録 | 自動化ラボ
自動化ラボ
  • はじめての n8n
  • 作り方
  • エラー対処
  • Claude 活用
  • 運営者
  • はじめての n8n
  • 作り方
  • エラー対処
  • Claude 活用
自動化ラボ
  • はじめての n8n
  • 作り方
  • エラー対処
  • Claude 活用
  • 運営者
  1. ホーム
  2. ワークフローの作り方
  3. n8nでGoogleドライブのフォルダにファイルが追加されたらSlackに通知するワークフロー

n8nでGoogleドライブのフォルダにファイルが追加されたらSlackに通知するワークフロー

2026 10/07
ワークフローの作り方
Google ドライブ Slack
2026年10月1日2026年10月7日
当ページのリンクには広告が含まれています。
ワークフロー全体(Google Drive Trigger → Make Message → Slack)
  • 動作確認日:2026-10-01
  • n8nのバージョン:2.41.3(Docker、セルフホスト)
目次

① 結論:このワークフローでできること

Googleドライブの決めたフォルダに新しいファイルが追加されたら、そのファイル名とリンクを、Slackのチャンネルに知らせます。

  • 起動には、n8nの「Google Drive Trigger」を使います。n8nが1分ごとにドライブを確かめに行くしくみ(ポーリング)なので、n8nを localhost で動かしていても使えます。
  • 見張るのは、指定した1つのフォルダの中だけです。その中のサブフォルダの変化では動きません。
  • ファイルの持ち主や、最後に編集した人の名前・メールアドレスは、Slackには送りません。
  • 使う認証情報(Credentials)は、Google DriveとSlackの2つです。

② 完成イメージ

ワークフロー全体(Google Drive Trigger → Make Message → Slack)

テスト用に n8nテスト というフォルダを作り、ワークフローを有効にしてから、フォルダの中にGoogleドキュメントを作りました。Slackのチャンネルに、次のような通知が届きます。

Slackに届いた通知

送ったメッセージは、次のとおりです(実際の内容です。Slackでは、ファイル名がそのファイルへのリンクになります)。

:file_folder: フォルダに新しいファイルが追加されました(10/01 13:10)
*<ファイルのURL|n8nテスト_議事録>*

ただし、1回目は、すぐには届きませんでした(⑤で説明します)。実際の流れは、次のとおりです。

時刻できごと
13:08ワークフローを有効にした
13:10フォルダに「n8nテスト_議事録」を作った
13:13まだ1回も実行されていなかった
13:15ワークフローを無効にしてから、有効にし直した。その場で確認が動き、「n8nテスト_議事録」をSlackに送った
13:18フォルダに「n8nテスト_資料2」を作った
13:191分ごとの確認で見つけて、Slackに送った

有効にし直したあとは、ファイルを作ってから1分ほどで通知が届きました。

実行したときの件数の流れは、次のとおりです(1回の実行につき、ファイル1件)。

ノード出てきた件数
Google Drive Trigger1
Make Message(Code)1
Slack1

動かしてみて気づいた点として、Google Drive Triggerの出力には、40近くの項目が入っていました。その中には、owners(持ち主)や lastModifyingUser(最後に編集した人)のように、名前やメールアドレスが入る項目もあります。今回は、ファイル名、リンク、作成日時だけを使っています。

③ 使うノードと必要なもの

必要なもの

  • n8n(今回はバージョン2.41.3をDockerで動かしました)
  • Googleドライブと、見張るフォルダのID
  • 認証情報:Google Drive OAuth2 API(Google Cloudで作ったOAuthクライアントを使います。Google CloudでGoogle Drive APIを有効にしておきます)
  • Slackのワークスペースとチャンネル、Slackアプリの「Bot User OAuth Token」、チャンネルID
  • 認証情報:Slack API

フォルダのIDは、ブラウザでそのフォルダを開いたときのURL(https://drive.google.com/drive/folders/ のあとの文字列)で確かめられます。Slackアプリの作り方は、「n8nでブログの新着記事をSlackに通知するワークフロー」の記事で説明しています。

使うノード

ノード役割設定したこと
Google Drive Triggerフォルダに新しいファイルが入ったら動くPoll Times:Every Minute、Trigger On:Changes Involving a Specific Folder、Folder:By ID、Watch For:File Created
Code(Make Message)Slackに送る文章を作る下のコード
Slackメッセージを送るSend Message To:Channel、Channel:By ID、Message Text:{{ $json.text }}、Include Link to Workflow:オフ
Google Drive Triggerの設定画面

Google Drive Triggerの画面には、「Changes within subfolders won’t trigger this node」(サブフォルダの中の変化では動きません)という注意書きが出ます。フォルダの中にさらにフォルダを作って整理している場合は、見張りたいフォルダごとにトリガーを用意する必要があります。

Make Message(Codeノード)の設定画面

Make Messageでは、次の処理をしています。

// 追加されたファイルを、Slackに送る文章にする
const esc = s => (s || '').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
return $input.all().map(i => {
  const f = i.json;
  const at = f.createdTime ? DateTime.fromISO(f.createdTime).setZone('Asia/Tokyo').toFormat('MM/dd HH:mm') : '';
  const name = f.webViewLink ? `<${f.webViewLink}|${esc(f.name)}>` : esc(f.name);
  return { json: { text: `:file_folder: フォルダに新しいファイルが追加されました(${at})\n*${name}*` } };
});
  • webViewLink は、ブラウザでそのファイルを開くためのURLです。Slackの <URL|表示する文字> の書き方で、ファイル名をリンクにしています。
  • createdTime(UTC)を、日本時間に直しています。
  • 1分の間に複数のファイルが入ったときは、ファイルごとに1通ずつ送ります。

④ JSON

n8nの公開API(POST /api/v1/workflows)でこのJSONからワークフローを作成し、有効化してから、上の結果を確認しました。

使うときは、次の箇所を自分の環境に合わせて書き換えてください。

  • YOUR_FOLDER_ID:見張るフォルダのID
  • YOUR_GOOGLE_DRIVE_CREDENTIAL_ID:n8nに登録したGoogle Driveの認証情報のID
  • YOUR_SLACK_CREDENTIAL_ID:n8nに登録したSlack APIの認証情報のID
  • YOUR_CHANNEL_ID:送り先のチャンネルID

読み込んだあとに、ノードの画面で認証情報を選び直しても大丈夫です。

{
  "name": "test-drive-slack",
  "nodes": [
    { "parameters": {
        "pollTimes": { "item": [ { "mode": "everyMinute" } ] },
        "triggerOn": "specificFolder",
        "folderToWatch": { "__rl": true, "value": "YOUR_FOLDER_ID", "mode": "id" },
        "event": "fileCreated",
        "options": {} },
      "id": "b1600000-0001-4000-8000-000000000001", "name": "Google Drive Trigger", "type": "n8n-nodes-base.googleDriveTrigger", "typeVersion": 1, "position": [0, 0],
      "credentials": { "googleDriveOAuth2Api": { "id": "YOUR_GOOGLE_DRIVE_CREDENTIAL_ID", "name": "Google Drive account" } } },
    { "parameters": { "jsCode": "// 追加されたファイルを、Slackに送る文章にする\nconst esc = s => (s || '').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');\nreturn $input.all().map(i => {\n  const f = i.json;\n  const at = f.createdTime ? DateTime.fromISO(f.createdTime).setZone('Asia/Tokyo').toFormat('MM/dd HH:mm') : '';\n  const name = f.webViewLink ? `<${f.webViewLink}|${esc(f.name)}>` : esc(f.name);\n  return { json: { text: `:file_folder: フォルダに新しいファイルが追加されました(${at})\\n*${name}*` } };\n});" },
      "id": "b1600000-0002-4000-8000-000000000002", "name": "Make Message", "type": "n8n-nodes-base.code", "typeVersion": 2, "position": [220, 0] },
    { "parameters": {
        "select": "channel",
        "channelId": { "__rl": true, "value": "YOUR_CHANNEL_ID", "mode": "id" },
        "text": "={{ $json.text }}",
        "otherOptions": { "includeLinkToWorkflow": false } },
      "id": "b1600000-0003-4000-8000-000000000003", "name": "Slack", "type": "n8n-nodes-base.slack", "typeVersion": 2.3, "position": [440, 0],
      "webhookId": "b1600000-bbbb-4000-8000-000000000003",
      "credentials": { "slackApi": { "id": "YOUR_SLACK_CREDENTIAL_ID", "name": "Slack account" } } }
  ],
  "connections": {
    "Google Drive Trigger": { "main": [[{ "node": "Make Message", "type": "main", "index": 0 }]] },
    "Make Message": { "main": [[{ "node": "Slack", "type": "main", "index": 0 }]] }
  },
  "settings": { "executionOrder": "v1" }
}

⑤ つまずきポイントと対処

有効にしたのに、1分ごとの確認が始まらなかった

  • 起きたこと:ワークフローを有効にして、フォルダにファイルを作ったのに、5分たっても1回も実行されませんでした。n8nのログにも、エラーは出ていませんでした。
  • 確かめたこと:Google DriveのAPIで、同じ条件(このフォルダの中で、有効にした時刻より後に作られたファイル)を直接検索すると、ファイルは見つかりました。条件は正しく、1分ごとの確認そのものが動いていないようでした。
  • 対処:ワークフローを一度無効にしてから、もう一度有効にしました。すると、その場で確認が動いて、待っていたファイルを見つけました。そのあとは、1分ごとの確認も動き続けました。
  • 原因はわかっていません。同じ日に同じ方法で有効にしたGmail Triggerは、1回目から動いていました。有効にしたあと、しばらくしても動かないときは、有効にし直してみてください。

有効にし直しても、待っていたファイルを取りこぼさなかった

Google Drive Triggerは、「最後に確かめた時刻」をワークフローに保存していて、次の確認では、その時刻より後に作られたファイルを探します。今回は、最初に有効にした時刻(13:08)が残っていたので、有効にし直したときに、13:10に作ったファイルも見つかりました。

⑥ 応用アイデア

どれも、まだ試していないアイデアです。

  • Watch Forを「File Updated」にして、ファイルが更新されたときに知らせる
  • 共有フォルダに置いて、チームの誰かがファイルを追加したら知らせる
  • 追加されたファイルの名前と日時を、Google Sheetsにも記録する
  • 通知先を、DiscordやLINE、Telegramに替える
ワークフローの作り方
Google ドライブ Slack
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
  • n8nでGmailに特定のメールが届いたらSlackに通知するワークフロー(Gmail Trigger)

この記事を書いた人

自動化ラボ管理人のアバター 自動化ラボ管理人

コードは書けないけれど、n8n と Claude(Claude Code)で仕事とブログを自動化しています。実際に動かしたワークフローを、動作確認日・JSON・つまずいたところまで記録しています。

関連記事

  • n8nで通知を送る方法まとめ:Discord・LINE・Telegram・Slackを実際に試して比べた
    2026年10月3日
  • n8nのGoogle連携まとめ:Sheets・Gmail・Calendar・Driveを、1つのOAuthクライアントで使う
    2026年10月3日
  • Slack APIで「missing_scope」が出るとき(n8nでSlackに通知する前の確認)
    2026年10月3日
  • n8nのGoogle Drive Triggerが動かないときに試したこと(有効にし直したら動いた)
    2026年10月3日
  • ワークフロー全体(Gmail Trigger → Make Message → Slack)
    n8nでGmailに特定のメールが届いたらSlackに通知するワークフロー(Gmail Trigger)
    2026年10月1日
  • ワークフロー全体(Webhook → RSS Read → Pick New → Has New → Slack / Respond None)
    n8nでブログの新着記事をSlackに通知するワークフロー(重複なし)
    2026年10月1日

記事の種類

  • Claude 活用
  • n8n リリース情報
  • はじめての n8n
  • エラー・つまずき対処
  • サーバー・WordPress
  • テンプレート配布
  • ワークフローの作り方
  • 運営記録
つなぐサービス
Google スプレッドシートRSSLINESlackGmailDiscordTelegramWebhookn8n API天気 APIGoogle カレンダーGoogle ドライブ
目次
  • プロフィール
  • お問い合わせ
  • プライバシーポリシー

© 自動化ラボ.

目次