このレッスンのロックを解除するには、まず「レッスン1:n8nとビジュアルエディターの入門」を完了してください。前のレッスンに戻る

はじめに

n8nでは、すべての自動化はトリガーノード(ワークフローを開始させるもの)から始まり、その後ろに実際の処理を行う1つ以上のアクションノードが続きます。このレッスンでは、小さくても実用的なワークフローを構築します:Google Sheetsのスプレッドシートに新しい行が追加されるたびに、ワークフローがメールアドレスと名前を抽出し、Gmail経由でパーソナライズされたウェルカムメールを送信し、送信完了のステータスをシートに書き込むことで記録します。この trigger → transform → act → record というパターンは、今後あなたが構築するほぼすべての自動化のバックボーンです。

Google SheetsトリガーノードがGmailアクションノードに接続され、さらにGoogle Sheets更新ノードに接続するフローチャート。各ステップに矢印とラベルが付いています。

トリガーとアクションの理解

トリガーノードはイベントをリッスンし、ワークフローを開始します。n8nはポーリングトリガー(スケジュールに従って新しいデータを確認する)とWebhookトリガー(HTTP呼び出しで即座にデータを受信する)を区別しています。このレッスンでは、ポーリングトリガーをGoogle Sheetsから使用します。これは公開URLを公開する必要がなく、最も簡単にセットアップできるためです。

アクションノードはそのデータを使って何かを行います——メール送信、データベース書き込み、API呼び出しなど。アクションノードはトリガーが発火し、少なくとも1件のデータアイテムを生成した後にのみ実行されます。各アイテムはノードからノードへと流れ、各ノードはそれを読み取ったり変換したりできます。

ワークフローをステップバイステップで構築する

n8nを開き、新しいワークフローを作成します。最初のノードを追加し、「Google Sheets」を検索して「Google Sheets Trigger」ノードを選択します。特定のスプレッドシートと特定のシート(例:「Signups」)を監視するように設定し、トリガーを「On Row Added」(行が追加されたとき)に発火するよう設定します。これは、n8nがシートを1分ごとにポーリングし、新たに挿入された行を検出することを意味します。

トリガーは新しい行ごとに1つのアイテムを生成し、そのアイテムには列の値が含まれます。次に、トリガーの直後に「Set」ノードを追加します。Setノードを使用すると、保持したいフィールドを明示的にマッピングしたり名前を変更したりでき、後でデータを参照しやすくなります。メールアドレスの列を`email`というフィールドに、名前の列を`firstName`というフィールドにマッピングします。

次に、「Gmail」ノードを追加し、「Send Message」操作を選択します。メッセージ本文内で、先ほど定義したフィールドを参照することで、各メールがパーソナライズされるようにします。n8nでは二重波括弧の式を使って前のノードからデータを注入します。

javascript
To: {{ $json.email }}
Subject: Welcome, {{ $json.firstName }}!
Body: Hi {{ $json.firstName }}, thanks for signing up. We're glad to have you.

最後に、もう1つGoogle Sheetsノードを追加しますが、今回は「Update Row」操作を選択します。トリガーから取得した同じ行番号を使って更新対象の行をマッピングし、「Status」という列に「Email Sent」という値を設定します。これにより、スプレッドシート自体に明確な監査記録が残ります。

テストと有効化

ワークフローをオンにする前に、「Execute Workflow」ボタンを使って手動で実行します。メールアドレスと名前を含むテスト用の行をシートに追加します。トリガーが発火し、Setノードがマッピングされた値を渡し、Gmailノードがメッセージを送信し、更新ノードがその行に「Email Sent」を書き込むはずです。いずれかのステップが失敗した場合は、ノードをクリックして入力と出力を確認してください——これが最速のデバッグ方法です。

テストが成功したら、ワークフローを「Inactive」から「Active」に切り替えます。これ以降、新しいサインアップの行が追加されるたびに、自動的にウェルカムメールが生成され、処理済みとしてマークされます。

避けるべきよくある間違い

よくある間違いは、ポーリングトリガーには遅延があることを忘れてしまうことです——n8nは一定間隔でシートを確認するため、0秒に追加された行が59秒まで処理されないことがあります。即時処理が必要な場合は、代わりにWebhookトリガーを使用してください。もう1つのよくある間違いは、ノード名を変更した後に`$node["Node Name"].json`を間違ったノード名で使用してしまうことです。式は大文字・小文字を区別し、ノードの現在のラベル名を参照します。最後に、Google SheetsとGmailの認証情報に、読み取りと書き込みの両方に必要なスコープが含まれていることを確認してください。スコープの不足は認証エラーのように見えますが、実際には権限エラーです。

まとめ

Google SheetsのTriggerで新しいサインアップを検出し、Setノードでデータを整形し、Gmailノードでパーソナライズされたウェルカムメッセージを送信し、Google Sheetsの更新ノードで結果を記録する、完全な4ノードのワークフローを構築しました。この trigger → transform → act → record パターンは、ほぼあらゆるビジネスプロセスで再利用可能です——GmailノードをSlack、データベース書き込み、HTTPコールなどに置き換えることで、同じ骨組みを無数のシナリオに適応させることができます。

レッスンの練習

レッスンのチェックポイント

学んだ内容を復習し、回答へのフィードバックを受けましょう。

0/1
回答済み · 0/1
レッスン2:トリガーとアクションを使った初めてのワークフロー構築