n8n http requestn8n api 串接n8n 節點教學n8n 外部 apin8n 教學

n8n HTTP Request 節點全攻略:串接任何 API 的標準做法

沒有現成整合節點的服務,怎麼在 n8n 接?答案就是 HTTP Request。這篇用一份 API 文件的角度,把方法、Header、認證、Body、分頁、批次一次講清楚,並附上常見錯誤對照,讓你看懂任何 API 文件就能接上世界上幾乎任何服務。

N8NMarket 2026年6月11日

n8n HTTP Request 節點是用來呼叫任何外部 API 的萬用節點:只要對方有 API,即使 n8n 沒有現成整合,你也能用它送出 GET/POST 請求、帶上認證與參數,把資料抓回工作流。學會這一顆,n8n 才從「玩具」變成真正的生產工具。

n8n 內建上百個整合節點,但總有那麼一個服務沒有現成節點——可能是冷門 SaaS、公司內部系統,或剛上線的新 API。這時候不必放棄,HTTP Request 就是那把萬用鑰匙。它本質上就是把一份 API 文件「翻譯」成節點設定,只要看得懂文件那幾欄,幾乎任何服務都接得上。

本文是 n8n 核心節點完全攻略 的延伸深入。建議先讀完核心節點地圖,對節點分類有整體框架後,再回頭逐顆深入這篇。

為什麼 HTTP Request 是最值錢的一顆節點

整合節點(Slack、Notion、Shopify)本質上都是包好的 HTTP Request——n8n 幫你把認證和欄位預先填好,你只要點選。但包裝越多,能調整的就越少。HTTP Request 是「沒包裝」的原始版本:自由度最高,能接的服務也最廣。

實務上的判斷很簡單:有現成整合節點就先用整合節點(省事),沒有、或整合節點少了你要的功能,才換 HTTP Request。前期練手可以全用整合節點,但這顆遲早要會,它是 n8n 能力的天花板。

一份 API 文件,對應節點的哪幾欄

接 API 不用背,只要把 API 文件上的資訊對到節點欄位。每份 REST API 文件都會給你這四樣,缺一不可:

  • Method(請求方法)GET 讀資料、POST 新增、PUTPATCH 更新、DELETE 刪除。文件會明寫。
  • URL(端點網址):例如 https://api.example.com/v1/users
  • Headers(請求標頭):放認證 token、Content-Type 等。
  • Body(請求內容)POSTPUT 才需要,通常是一包 JSON。

把這四欄填對,請求就送得出去。剩下的都是細節。

認證:四種最常見的方式

認證:四種最常見的方式

API 文件最關鍵的一段就是「Authentication」。n8n 的 HTTP Request 把認證拆成 Predefined Credential Type(預定義)Generic Credential Type(通用) 兩條路。能用預定義就用預定義——n8n 已經幫熱門服務寫好認證邏輯,你只要填 key。沒有的話走通用,自己對著文件設。常見四種:

  • API Key in Header:最常見。文件叫你在 Header 放 Authorization: Bearer <token>X-API-Key: <key>
  • API Key in Query:把 key 當網址參數,例如 ?api_key=xxx。安全性較低,但有些舊 API 還這樣。
  • Basic Auth:帳號+密碼,n8n 有現成的 Basic Auth credential 可填。
  • OAuth2:最完整也最麻煩,需要先在對方平台建 App 拿 Client ID/Secret。n8n 有 OAuth2 credential 流程協助。

鐵則:token、key、密碼一律存進 n8n 的 Credentials,不要直接打在 Header 欄位裡。 存 credential 才能跨工作流重用,也不會在匯出時外洩。

Body 怎麼填:JSON 是主流

POST 一筆資料時,Body 的格式選 JSON 最常用。你可以直接貼一段 JSON,也可以用 {{ }} 表達式把前一個節點的資料塞進去,例如:

{
  "name": "{{ $json.customerName }}",
  "email": "{{ $json.email }}"
}

這裡的 $json 就是上一顆節點傳來的資料。表達式語法不熟的,先補 n8n 表達式語法入門,這是用好 HTTP Request 的前提。除了 JSON,Body 還有 Form-UrlencodedForm-Data(傳檔案用)、Raw 等選項,照文件指定的 Content-Type 選即可。

分頁(Pagination):一次抓不完的資料怎麼辦

很多 API 為了效能,一次只回 50 或 100 筆,剩下的要「翻頁」拿。HTTP Request 內建 Pagination 選項,不必自己寫迴圈。三種模式對應不同 API 設計:

  • Update a Parameter in Each Request:每次請求把 pageoffset 參數加一,直到沒資料。適合「第幾頁」式 API。
  • Response Contains Next URL:API 回應裡直接給下一頁網址,n8n 自動跟著抓。適合 GitHub、Stripe 這類 cursor-based API。
  • Off:關閉分頁。

設定分頁時記得加 Max Pages 上限,避免 API 設計異常時無限翻頁。官方分頁範例見 n8n HTTP Request 分頁文件

批次(Batching):別被對方擋 API

批次(Batching):別被對方擋 API

短時間打太多請求,對方會回 429 Too Many Requests(rate limit)。HTTP Request 的 Batching 選項能幫你節流:

  • Items per Batch:每批送幾個 item。設小一點,請求就分散。
  • Batch Interval:每批之間等幾毫秒。例如設 1000,每批間隔 1 秒。

如果你要對「每一筆資料各打一次 API」(例如一次更新 200 個聯絡人),更穩的做法是搭配 Loop Over Items 批次節點 來控制節奏,把大批資料切小慢慢送。

常見錯誤對照表

接 API 卡關,九成是下面這幾個:

  • 401 Unauthorized:認證錯。檢查 token 是否過期、Header 名稱(Authorization vs X-API-Key)有沒有照文件。
  • 403 Forbidden:認證對了但沒權限。確認這把 key 的 scope 含這個操作。
  • 404 Not Found:URL 打錯,或少了版本路徑(/v1/)。
  • 400 Bad Request:Body 格式錯,常是 JSON 少逗號、欄位名拼錯,或 Content-Type 沒設對。
  • 429 Too Many Requests:打太快,開 Batching 節流(見上一段)。

遇到錯誤先看 n8n 節點回傳的 response 內容,對方 API 通常會在 body 裡寫明原因,比猜更快。完整錯誤排查見 n8n 常見錯誤 Top 10

從哪裡開始練

不用找正式專案,先拿一個免費公開 API 練手最快——抓天氣、抓匯率、抓一段 GitHub 公開資料都行。流程就三步:建一個 Manual Trigger → 接 HTTP Request 填上 GET 與網址 → 按 Execute 看資料回來。跑通一次,你就懂了八成。

整體的觸發、處理、輸出三段式架構,可以回頭看 n8n 三節點架構解析;想複習其他核心積木,回 n8n 核心節點完全攻略。HTTP Request 看似最難,其實最值得投資——它一通,整個 n8n 的天花板就被你打開了。