n8nでWebの情報を集める方法は3つあります。相手が用意したAPIを呼ぶ、RSSを読む、ページのHTMLから値を取り出す(スクレイピング)です。この記事では、社員30名ほどの法人向けサービス会社が、業界ニュースと競合のお知らせを毎朝Slackの #業界ニュース にまとめて流す仕組みを作ります。読み終わると、RSSは重複なしで届き、RSSの無いページはHTMLノードで必要な所だけ取れて、取ってはいけないページも見分けられます。前提は、n8n 2.44.7(2026年10月時点の安定版)が動いていて、SlackとGoogleスプレッドシートのCredential(認証情報)があることです。
この記事の内容
先に決めること
集める順番は、API、RSS、HTMLの取り出し
同じ情報でも、取り方によって壊れやすさが大きく違います。上から順に探し、見つかった時点で下は使いません。
- 公式のAPI。項目名と形が約束されていて、相手がページのデザインを変えても壊れない。利用条件も文書になっている
- RSS(Atomなど同じ仕組みのフィードを含む)。「更新を外に配る」ために相手が用意したもので、取りに行くこと自体が想定されている
- HTMLの取り出し。人が読むためのページを機械で読むので、デザインが変わった日に黙って0件になる。取ってよいかの確認も一番重い
実際に本番で動かしていると、HTMLから取っている仕組みは年に1〜2回は相手のリニューアルで止まります。APIやRSSで取れるものをわざわざHTMLから取る理由はありません。
何に使うか、どこまで広げるか
この記事の例は「社内のSlackに見出しとリンクを流し、本文は元のサイトで読む」使い方です。本文を丸ごと保存して社外に出す、他社のページを自社サイトに転載する、といった使い方は、取り方とは別に権利の確認が要ります。
取ってよいかを誰が見るか
取る前に、相手のサイトの利用規約と robots.txt を見る人を決めます。n8nのHTTP Requestには robots.txt を確かめる設定が無いので、作る人が自分で確かめます。この記事は法的な判断を示すものではないので、迷うものは社内の法務か弁護士に確認してから動かします。
集め方の一覧
| 集め方 | 使うノード | 向くもの | 壊れやすさ | 例 |
|---|---|---|---|---|
| 公式のAPI | 専用ノード、無ければ「HTTP Request」 | 決まった形のデータを継続して取る | 低い | 自社の広告の数字、政府や自治体の公開データ |
| RSS(定時に読む) | 「Schedule Trigger」+「RSS Read」(RSSを読む) | 複数のサイトの新着を毎朝まとめる | 低い | 業界ニュース、競合のブログ |
| RSS(更新を待つ) | 「RSS Feed Trigger」(RSSの更新で動く) | 1つのフィードの新着をすぐ知らせる | 低い | 取引先のプレスリリース |
| HTMLの取り出し | 「HTTP Request」+「HTML」(Extract HTML Content) | RSSもAPIも無いページの一部 | 高い | 競合の「お知らせ」一覧 |
| 外部の取得サービス | 「Airtop」「Jina AI」など | JavaScriptで描くページ | 中くらい | 動的に表示される一覧 |
| 人の目 | 人が確認してスプレッドシートに入力 | ログインが要る、規約で禁止されている | なし | 会員向けの価格表 |

HTTP Requestの基本(メソッド、ヘッダー、認証、リトライ)は「n8nで外部サービスとつなぐ:Webhook・HTTP Request・API」に書いたので、ここではWebページを取るときに違うところだけ書きます。
RSSで業界ニュースと競合の更新を毎朝Slackへ
この章で作るもの
| ノード | 役割 | 主な設定 |
|---|---|---|
| Schedule Trigger | 毎朝8時に動く | Trigger Interval: Days、Trigger at Hour: 8am |
| Google Sheets | 「情報源一覧」を読む | Get Row(s) |
| RSS Read | フィードを1本ずつ読む | URL: {{ $json['URL'] }} |
| Edit Fields (Set) | 項目をそろえる | 情報源・タイトル・URL・識別子・公開日時 |
| Filter | 古い記事を落とす | 公開日時が36時間以内、または日付が無い |
| Remove Duplicates | 前に送った記事を落とす | Remove Items Processed in Previous Executions |
| Aggregate | 1通にまとめる | All Item Data (Into a Single List) |
| Slack | #業界ニュース に送る | Message の Send |


RSSのURLを見つける
RSSのURLはページに書かれていないことが多いので、次の順で探します。
- サイトのフッターや「お知らせ」ページに、RSSのアイコンやリンクが無いか見る
- ページを右クリックして「ページのソースを表示」を開き、
application/rss+xmlかapplication/atom+xmlで検索する。<link rel="alternate" ...>のhrefがフィードのURL - WordPressで作られたサイトは標準でフィードを出している。URLの形は設定で変わり、末尾に
/feed/か?feed=rss2を付けると開けることが多い - 見つからなければ、そのサイトはRSSが無いものとして、APIかHTMLの取り出しに進む
ブラウザで開いてXMLの文字が並べばフィードです。Googleアラートのように結果がメールで届くものは、Gmailで受けて処理します。
情報源をスプレッドシートで管理する
フィードのURLをノードに直接書くと、増やすたびにワークフローを直すことになります。Googleスプレッドシートに「情報源一覧」というシートを作り、営業企画の人がそこに行を足せば済む形にします。
| 名前 | URL | 種類 |
|---|---|---|
| 業界ニュースA | https://news.example.com/feed/ | 業界 |
| 競合B社ブログ | https://www.example.com/blog/feed/ | 競合 |
| 取引先C社リリース | https://c.example.com/rss.xml | 取引先 |
ワークフローを組む
- 新しいワークフローを作り、名前を「業界ニュース収集」にする。
- 最初のノードに「Schedule Trigger」を追加し、「Trigger Interval」を「Days」、「Trigger at Hour」を「8am」、「Trigger at Minute」を
0にする。 - 後ろに「Google Sheets」を追加し、「Operation」を「Get Row(s)」にして「情報源一覧」のシートを選ぶ。
- 後ろに「RSS Read」を追加し、「URL」を式にして
{{ $json['URL'] }}を入れる。 - RSS Readの「Settings」タブで「On Error」を「Continue (using error output)」にする。
- エラー用の出口にSlackノードをつなぎ、「フィードが読めませんでした」と情報源の名前を送る。
- 通常の出口に「Edit Fields (Set)」を追加し、下の表の項目を作る。
- 「Execute workflow」(ワークフローを実行)を押し、Edit Fieldsの出力に記事が並ぶことを確かめる。
| 項目 | 式 | ねらい |
|---|---|---|
| 情報源 | {{ $('Google Sheets').item.json['名前'] }} | どのフィードの記事かをSlackに出す |
| タイトル | {{ $json.title }} | 見出し |
| URL | {{ $json.link }} | 記事のリンク |
| 識別子 | {{ $json.guid ? $json.guid : $json.link }} | 重複の判定に使う。guidが無いフィードはURLで代える |
| 公開日時 | {{ $json.isoDate }} | 古い記事を落とすのに使う |

RSS Readは、前のノードから届いたアイテムの数だけ動きます。情報源一覧に3行あれば3本のフィードを読み、記事を1件1アイテムにして出します。isoDate は世界標準時なので、日本時間で見せるなら {{ DateTime.fromISO($json.isoDate).setZone('Asia/Tokyo').format('M/d HH:mm') }} と直します。日付の式は「n8nの式(Expression)とデータの扱い:$json・ノードの参照・日付・JSON」で扱います。
手順5は、1本のフィードが消えただけで全体が止まるのを避けるためです。「Continue」だけにすると読めなかったことに誰も気づかないので、エラー用の出口から知らせます。
重複を出さない
毎朝同じフィードを読むと、昨日送った記事がまた入ってきます。ここを2段で防ぎます。
- Edit Fieldsの後ろに「Filter」を追加する。
- 1つめの条件の左に
{{ $json['公開日時'] }}、型を「Date & Time」、比べ方を「is after」、右に{{ $now.minus({ hours: 36 }) }}を入れる。 - 条件を足し、
{{ $json['公開日時'] }}が「is empty」を入れ、2つの条件のつなぎを「OR」にする。 - Filterの後ろに「Remove Duplicates」を追加し、「Operation」を「Remove Items Processed in Previous Executions」にする。
- 「Keep Items Where」を「Value Is New」、「Value to Dedupe On」を
{{ $json['識別子'] }}にする。

Remove Duplicatesは、前の実行までに通した値を覚えておき、同じ値のアイテムを落とします。覚えておく件数は「History Size」で、初期値は10,000件です。1日50件でも半年以上もつので触りません。覚えた値は初期設定ではこのノードだけのものです。
Filterを前に置くのは、初日や履歴を消した直後に、フィードに残った古い記事が一度に流れるのを防ぐためです。日付の無い記事は「is empty」で通し、Remove Duplicatesのほうで止めます。
判定のキーにはURLよりguidを使います。運用しているn8nで、記事のURLの後ろに配信元が計測用の ?utm_source=... を付けたり外したりするサイトがあり、URLで判定していたら同じ記事が週に何度も届きました。
Slackに1通にまとめて送る
記事ごとに送ると、新着が20件の朝はチャンネルが20通で埋まります。1通にまとめます。
- Remove Duplicatesの後ろに「Limit」を追加し、「Max Items」を
30にする(多すぎる朝の保険)。 - 後ろに「Aggregate」を追加し、「Aggregate」を「All Item Data (Into a Single List)」、「Put Output in Field」を
articlesにする。 - 後ろに「Slack」を追加し、「Resource」を「Message」、「Operation」を「Send」にして #業界ニュース を選ぶ。
- 「Message Text」に下の式を入れる。
- 「Options」の「Include Link to Workflow」をオフにする(初期値はオンで、メッセージの末尾にn8nへのリンクが付く)。
- 「Publish」(公開)を押す。Schedule Triggerは公開しないと動かない。
{{ '今朝の新着 ' + $json.articles.length + '件\n' + $json.articles.map(a => '• <' + a['URL'] + '|' + a['タイトル'].replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>') + '>(' + a['情報源'] + ')').join('\n') }}
Slackでは <URL|表示する文字> がリンクになります。&・<・> は記号として読まれるので、タイトルの中のものは &・<・> に置き換えます。
新着が0件の朝は、Remove Duplicatesから先にアイテムが流れないので、Slackには何も届きません。Slackノードの細かい使い方は「n8nとSlack連携:通知・投稿・ボタンで承認・スラッシュコマンド」に、毎朝動かす設定とタイムゾーンは「n8nの定期実行とサブワークフロー:Schedule Triggerと部品化」に書いています。
RSS Feed Triggerとの使い分け
RSSには、更新を待って動く「RSS Feed Trigger」もあります。
| Schedule Trigger+RSS Read | RSS Feed Trigger | |
|---|---|---|
| 読めるフィード | スプレッドシートの行の数だけ | ノード1つにつき1本 |
| 動くタイミング | 決めた時刻 | 「Poll Times」で決めた間隔で見に行き、新着があったとき |
| 重複の防ぎ方 | Remove Duplicatesで自分で作る | ノードが最後に見た記事の日時を覚える |
| n8n Cloudの実行回数 | 動くたびに1回 | 新着があったときだけ1回 |
| 向く使い方 | 複数のフィードを朝にまとめて読む | 1本のフィードの新着をすぐ知らせる |
RSS Feed Triggerは、記事の日時(isoDate)が前回見た一番新しい記事より後のものだけを流します。日付の無いフィードでは一度も動かず、公開前からある記事も流れません。テストの「Fetch Test Event」(テストイベントを取得)で出るのは先頭の1件だけです。
RSSの無いページからHTMLノードで取り出す
競合のB社がRSSを出しておらず、「お知らせ」ページ(https://www.example.com/news/)にだけ新着が載るとします。利用規約と robots.txt で禁止されていないことを確かめた前提で進めます。
JavaScriptで描くページかを先に確かめる
HTTP Requestが受け取るのは、サーバーが最初に返すHTMLだけです。ブラウザがあとからJavaScriptで読み込んで描く一覧は、n8nには届きません。作り始める前に見分けます。
- ブラウザで「お知らせ」ページを開く。
- 右クリックして「ページのソースを表示」を開く。
- 一覧に出ている記事のタイトルを1つコピーし、ソースの画面で検索する。
- 見つかればHTTP Requestで取れる。見つからなければ、この章の手順では取れないので「取れないときの代わり」に進む。
CSSセレクタを決める
HTMLノードは、CSSセレクタ(ページの中の場所を指す書き方)で取り出す場所を指定します。ページのソースが次の形だったとします。
<ul class="news-list">
<li>
<time datetime="2026-10-20">2026.10.20</time>
<a href="/news/1024/">料金プラン改定のお知らせ</a>
</li>
<li>
<time datetime="2026-10-14">2026.10.14</time>
<a href="/news/1019/">年末年始の営業について</a>
</li>
</ul>
記事のタイトルを右クリックして「検証」を選ぶと、該当するHTMLの行が開発者ツールに出ます。そこでコピーできるセレクタは body > div:nth-child(3) > ul > li:nth-child(1) > a のように長く、構成が少し変わるだけで外れるので、クラス名を使った短い形に書き直します。
| 書き方 | 指す場所 | 例 |
|---|---|---|
.クラス名 | そのクラスが付いた要素 | .news-list |
親 子 | 親の中にある子(何段下でもよい) | .news-list li |
親 > 子 | 親の直下の子だけ | ul.news-list > li |
要素[属性] | その属性を持つ要素 | a[href] |
要素[属性="値"] | 属性が特定の値の要素 | meta[property="og:title"] |
:nth-child(n) | n番目の要素 | table tr td:nth-child(2) |
ページを取る
- 新しいワークフロー「競合お知らせ収集」を作り、「Schedule Trigger」で毎朝8時10分に動くようにする。
- 「HTTP Request」を追加し、「Method」を
GET、「URL」をhttps://www.example.com/news/にする。 - 「Send Headers」をオンにし、「Name」に
User-Agent、「Value」にn8n-news-check/1.0 (+mailto:info@example.co.jp)を入れる。 - 「Add option」から「Timeout」を足し、
30000にする。 - 「Add option」から「Response」を足し、「Response Format」を「Text」、「Put Output in Field」を
dataにする。 - 「Execute step」(このノードだけ実行)を押し、出力の
dataにページのHTMLが文字列で入っていることを確かめる。

User-Agentに連絡先を書くのは、相手のサーバーの管理者が「どこの誰が取りに来ているか」を分かるようにするためです。ブラウザのふりをするUser-Agentは使いません。
HTMLノードで1件ずつに分けてから取り出す
いきなり日付とタイトルとリンクを別々に配列で取ると、日付の無い記事が1件混ざっただけで、日付とタイトルが1つずつずれます。まず記事1件ぶんのHTMLを取り、1件ずつに分けてから中身を取ります。
- HTTP Requestの後ろに「HTML」を追加し、「Operation」を「Extract HTML Content」にする。
- 「Source Data」を「JSON」、「JSON Property」を
dataにする。 - 「Extraction Values」の「Key」に
rows、「CSS Selector」にul.news-list > li、「Return Value」に「HTML」を入れ、「Return Array」をオンにする。 - 後ろに「Split Out」を追加し、「Fields To Split Out」に
rowsを入れる。 - 後ろにもう1つ「HTML」を追加し、「Extract HTML Content」、「JSON Property」を
rowsにする。 - 下の表の3つを「Extraction Values」に足す。
- 「Execute step」を押し、記事が1件1アイテムで、日付・タイトル・リンクがそろって出ることを確かめる。
| Key | CSS Selector | Return Value | Attribute |
|---|---|---|---|
| 日付 | time | Attribute | datetime |
| タイトル | a | Text | |
| リンク | a | Attribute | href |


「Options」の「Trim Values」と「Clean Up Text」は初期値がオンで、余分な空白と改行を落とします。タイトルに「NEW」の印などの文字が混ざるときは、「Text」の行に出る「Skip Selectors」に .new-icon のように除く場所を書きます。
リンクを完全なURLに直してSlackへ
href には /news/1024/ のように、サイトの中の住所だけが書かれていることが多いです。そのままSlackに出しても開けないので、Edit Fieldsで直します。
| 項目 | 式 |
|---|---|
| URL | {{ $json['リンク'].startsWith('http') ? $json['リンク'] : 'https://www.example.com' + $json['リンク'] }} |
| 情報源 | 競合B社お知らせ |
この後ろはRSSの章と同じで、Remove Duplicatesの「Value to Dedupe On」を {{ $json['URL'] }} にし、Aggregateでまとめて送ります。
文字化けするページ
古い日本語のサイトには、文字コードがShift_JISのものがあります。サーバーの返すヘッダーに charset=Shift_JIS があればそのまま読めますが、ページの中の <meta charset> にしか無いと文字化けすることがあります。その場合は受け取り方を変えます。
- HTTP Requestの「Response Format」を「File」にする。
- 後ろに「Extract from File」を追加し、「Operation」を「Extract From Text File」にする。
- 「Options」から「File Encoding」を足し、
shiftjisを選ぶ(EUC-JPのページはeucjp)。 - 出力の
dataを、HTMLノードの「JSON Property」に指定する。
やってはいけないこと・気を付けること
| 項目 | 気を付けること | この記事での扱い |
|---|---|---|
| 利用規約 | 自動での取得や転載を禁止しているサイトがある | 禁止なら取らない。迷えば法務に確認 |
| robots.txt | 機械で見てほしくない場所を示すファイル。守らせる仕組みは無く、従うかは取る側次第 | 開いて Disallow の場所は取らない |
| アクセス頻度 | 短い間隔で何度も取ると相手のサーバーの負担になる | 1サイト1日数回まで。複数ページは「Batching」で数秒あける |
| ログインが要るページ | 規約で機械での取得を禁止していることが多く、パスワードもn8nに預けることになる | 取らない |
| JavaScriptで描くページ | HTTP Requestでは中身が届かない | 「取れないときの代わり」へ |
| 取ったものの使い方 | 本文を保存して社外に配ると、取り方とは別の問題になる | 見出しとリンクだけ社内に流す |
| ボット対策の画面 | 確認画面やアクセス拒否は、相手が機械での取得を望んでいない合図 | 回避しない |
| 個人の情報 | 名前や連絡先を集めて名簿にすると個人情報の扱いになる | 集めない |
robots.txt は https://www.example.com/robots.txt のようにサイトの直下にあります。User-agent: * はすべての取得プログラムへの指示で、Disallow: /members/ は「/members/ 以下は見ないでほしい」という意味です。
User-agent: *
Disallow: /members/
Disallow: /search
アクセス頻度は、n8nの側では「動かす間隔」と「1回に取るページ数」で決まります。競合のお知らせは1日1回、朝に見れば足ります。n8n CloudではSchedule Triggerは動くたびに1回の実行と数えられるので、間隔を詰めると実行回数の枠も減ります(「n8nの料金:Cloudとセルフホストの費用、商用利用の線引き」)。
取れないときの代わり
| 取れない理由 | 代わりの手 | 押さえどころ |
|---|---|---|
| JavaScriptで描くページ | 開発者ツールの「ネットワーク」で、ページが裏で呼んでいるJSONのURLを探す | 公開APIでないものは予告なく変わる。規約も確かめる |
| JavaScriptで描くページ | 「Airtop」ノード(クラウド上のブラウザを操作する)や「Jina AI」ノード(URLの中身を読みやすい形に変える) | 外部サービスの契約と費用が要る。規約で禁止されていれば使わない |
| 規約で禁止、ログインが要る | 相手に公式のAPIやデータ提供の有無を問い合わせる | 取引先なら更新をメールで知らせてもらう形でも足りる |
| 規約で禁止、ログインが要る | データ提供サービスや官公庁の公開データを探す | 有料のものは契約の範囲を読む |
| 年に数回しか変わらない | 人が確認してスプレッドシートに入力し、n8nは入力をきっかけにSlackへ知らせる | 月初に1回など回数を決める |
応用
AIで要約して、関係の深い記事だけ流す
見出しが多い朝は、全部を読む人がいなくなります。Aggregateの前に、AIで「自社に関係があるか」を判定する段を入れます。
- Remove Duplicatesの後ろに「Information Extractor」(文章から決めた項目を取り出す)を追加する。
- 「Text」に
{{ $json['タイトル'] }}を入れる。 - 「Schema Type」を「From Attribute Descriptions」にし、「関連度」(1〜3の数字)を足す。
- 後ろに「Filter」を置き、関連度が2以上だけを残す。
モデルのつなぎ方と費用は「n8nでAIエージェントを作る:ChatGPT・Claude・Geminiをつなぐ」に書いています。AIに渡すのは見出しまでにします。本文を取りに行くと、相手へのアクセスが記事の数だけ増えます。
ページの内容が変わったときだけ知らせる
料金ページや採用ページのように、一覧ではなく1ページの中身が変わったかを見たいときは、取り出した文字列の指紋(ハッシュ)を比べます。
- HTMLノードで見たい場所(例
.price-table)を「Text」で取る。 - 後ろに「Crypto」を追加し、「Action」を「Hash」、「Type」を「SHA256」にして、取った文字列を「Value」に入れる。
- 後ろに「Remove Duplicates」を置き、「Value to Dedupe On」にハッシュの値を入れる。
- 値が前回と違うときだけアイテムが残るので、そのままSlackに知らせる。
ページの中に日時やアクセス数のような毎回変わる部分が入ると、毎朝「変わった」と届きます。取る場所を、変化を見たい部分だけに絞ります。
できないことと、その代わり
| できないこと | 代わりの手 |
|---|---|
| HTTP RequestでJavaScriptを動かしてから中身を取る | 裏で呼んでいるJSONを探す、Airtopなど外部のブラウザサービスを使う |
| HTMLノードでXPathを使う | CSSセレクタで書く。書けない複雑な条件は「Code」ノードで文字列を処理する |
| robots.txt を読んで自動で止まる | 作る人が先に読み、取ってよい場所だけをURLに書く |
| RSS Feed Triggerで日付の無いフィードを見張る | Schedule Trigger+RSS Read+Remove Duplicatesにする |
| RSS Feed Trigger1つで複数のフィードを見る | フィードごとにトリガーを置くか、Schedule Trigger+RSS Readで一覧を読む |
| ログインして会員ページを取り続ける | 公式のAPI、書き出し機能、人の目に切り替える |
よく詰まるところ
| 症状 | 原因 | 直し方 |
|---|---|---|
| HTMLノードの出力が空 | JavaScriptで描くページで、HTTP Requestで取ったHTMLに一覧が無い | 「ページのソースを表示」で探す。無ければ代わりの手へ |
| 先月まで取れていたのに急に0件 | 相手がページのデザインを変え、セレクタが外れた | 取れた件数が0件の日はSlackに警告を出す。セレクタを書き直す |
| 日付とタイトルの組み合わせがずれる | 項目ごとに配列で取り、1件だけ日付が無かった | 記事1件ぶんのHTMLを取り、Split Outで分けてから中身を取る |
| Slackのリンクを押しても開かない | href がサイト内の住所だけ | Edit Fieldsでドメインを付けて完全なURLにする |
| 文字化けする | Shift_JISのページで、ヘッダーに文字コードが無い | 「File」で受けて「Extract From Text File」の「File Encoding」で shiftjis を選ぶ |
| 同じ記事が何度も届く | URLに計測用の文字が付いたり外れたりする | 判定のキーをguidにする |
| テストで動いたのに、公開後の初回に何も届かない | 2.44.7では、テストの実行でもRemove Duplicatesが記事を覚える | 公開前に「Clear Deduplication History」を1回流すか、翌日の新着から届くものとして扱う |
| RSS Feed Triggerがずっと動かない | フィードに日付が無い、または公開後に新着がまだ無い | ブラウザでフィードを開き pubDate を確かめる。無ければSchedule Trigger+RSS Readにする |
| 1本のフィードの不調で朝のまとめが届かない | RSS Readのエラーでワークフロー全体が止まった | 「On Error」を「Continue (using error output)」にし、エラーの出口から知らせる |
| 403が返る | 相手が機械での取得を拒否している | 回避しない。APIや問い合わせなど別の手段にする |
| タイムアウトする | 相手のページが重い、または初期値10秒で足りない | 「Timeout」を 30000 にする。続くならそのサイトは対象から外す |
| 新着20件がSlackに20通で届く | 記事ごとにSlackノードが動いた | Aggregateで1アイテムにまとめてから送る |


0件の日を見逃さないのが一番大事です。HTMLから取る仕組みは、壊れてもエラーになりません。セレクタが外れると、HTMLノードは1アイテムのまま rows が空の配列で出し、Split Outの後ろは0件になって何も流れません。HTMLノードの後ろにIFノードを置いて rows が空かを見て、空ならSlackに「お知らせページから1件も取れませんでした」と送る段を足しておきます。止まったことに気づく仕組み全体は「n8nを止めずに運用する:アップデート・バックアップ・エラー通知・脆弱性」に書いています。
次にやること
- n8nで外部サービスとつなぐ:Webhook・HTTP Request・API
- n8nの定期実行とサブワークフロー:Schedule Triggerと部品化
- n8nとSlack連携:通知・投稿・ボタンで承認・スラッシュコマンド
- n8nでできること:中小企業の業務自動化の事例20