為什麼要先搞懂 API?HTTP協議又是什麼?
要用 n8n 來串接各種服務(例如 Google Sheets、LINE、Notion…),第一步就是了解「API」到底是什麼。
簡單來說,API 就是不同軟體之間溝通的橋樑,定義了如何交換資料的規範。

另外,就是HTTP協議,可以參考李元魁寫的HTTP 協議是什麼,也就是我們在n8n的 http request/webhook節點會看到的東東:
- 你要跟某個服務拿資料,就用 GET
- 你要新增資料,就用 POST
- 你要更新資料,就用 PUT 或 PATCH
- 你要刪除資料,就用 DELETE
難懂?沒事,身為一個文組人,我其實也困惑很久,尤其是我沒有朋友可以問XD。
所以,我們換個方式說~
讓我們把它變成是運動來解釋
API 就是軟體之間「傳球」的規則與流程,讓它們能夠準確地將資料傳送、更新或刪除,確保整個系統像一個默契的球隊一樣運作順暢。
- GET:讀取或查詢資源
就像教練叫球員去儲藏室拿球,告訴你「這裡有球」。
→ 你只是問:「把球給我看看!」(讀取資料) - POST:新增資料
就像教練把一個新球丟給球員,讓球隊新增一個球。
→ 你主動把新球送出去。(新增資料) - PUT:更新或取代資源(整體更新)
就像教練發現手上的球不夠好,直接換一個全新的球。
→ 你把整個球換掉。(整體更新) - PATCH:對資源進行部分更新
就像球員發現球上有個小洞,只需要修補那個洞,而不必換整個球。
→ 你只修補球的部分。(部分更新) - DELETE:刪除資源
就像教練發現某個球已經損壞,決定把它從比賽中拿掉。
→ 你把這個球丟掉,不再使用。(刪除資料) - HEAD:取得與 GET 相同的相應標題,但不返回主體內容
就像教練只看球的外表,知道球的狀況,但不把球拿出來細看。
→ 你只檢查球的外觀資訊,不拿球出來。(只獲得標題) - OPTIONS:查詢伺服器支援哪些 HTTP 方法
就像比賽前,教練問球員:「今天我們可以做哪些動作?」
→ 你詢問「這場比賽,我們有哪些進攻、防守的選項?」(了解可用的選擇) - CONNECT:建立網絡隧道
就像球隊在比賽中建立一條專用通道,讓球能順利傳到指定位置。(這個很少用) - TRACE:回顧服務器收到的請求
就像教練回顧比賽影像,檢查球的傳球路徑是否正確。
→ 你追蹤球的路徑,看看是否有偏差。(用於診斷問題)
如何?這樣有清楚點了嗎? 接下來我們進重點!
什麼是 MyGPT?
MyGPT 是一個把 ChatGPT 包裝成更個人化服務的工具,這裡就不再贅述,基本上就是可以讓ChatGPT對外與其他軟體溝通的一種工具。
但注意,MyGPT 其實只能送資料出去(也就是說所有的動作、對話都要從MyGPT開始),你不能從別的地方送資料進去MyGPT,因為它不會主動抓取資料,而是等待 n8n(或其他軟體) 透過 Webhook 將資料送進來,再把這些資料轉送給 ChatGPT(或其他 AI),然後把回應結果推回給你。
沒關係,我們繼續用範例來理解。
用範例來說明API與HTTP協議:拿n8n 串接 MyGPT
n8n 與 MyGPT 互動的流程大概4這樣:
- Step 1:先在n8n建立一個 Webhook 節點,作為接收來自 MyGPT 訊息的入口。
- Step 2:到MyGPT建立指令、設定與建立動作(Actions)讓MyGPT可以跟n8n連起來。
- Step 3:接著MyGPT會要求與n8n建立關係,把你的 prompt 或參數傳送進n8n,MyGPT 處理後會把結果推送回 Webhook。
- Step 4:在 n8n 裡檢查 Webhook 輸出,再進行後續處理。
Step 1:建立 Workflow 並新增 Webhook 節點
目的:
用來接收 MyGPT 回傳的資料。由於 MyGPT 本身不會主動抓資料,而是等待外部請求處理後再推送結果,所以我們必須先在 n8n 裡建立一個 Webhook 節點。當 MyGPT 處理完你的請求後,會把回應推送到這個 Webhook 節點,就像一個網子,專門用來捕捉外部推送進來的資料。
設定方式:
- 在 n8n 裡新建一個 Workflow,新增一個 Webhook 節點。
- HTTP 方法: POST
- Path: 例如
/webhook/mygpt-callback
對照一下下圖,應該能懂~

Step 2:觸發 MyGPT 呼叫
目的:
從外部發出請求,把你的 prompt 或參數傳給 MyGPT。
設定方式:
1.到ChatGPT裡面建立一個MyGPT:
點擊“配置”這個標籤,接著找到:指令。

2. 接著到“功能”:
看你的需求,把相關開關打開,這裡我們就勾第四個先,也可以全開啦,其實沒差。

3. 然後到“動作”這裡,建立新動作。
這裡就是重點了,這就是讓MyGPT可以跟n8n進行溝通的設定。

4. 點開之後,腦袋空白。

對,我知道,我也是,但是不要慌,我們可以不要那麼辛苦。
我們只需要把你的目標、指令、n8n節點截圖、每一個節點的細節畫面截圖,丟進去ChatGPT,請他協助你建立動作的Json格式資料,就搞定了!
把下面的截圖都丟進去ChatGPT,並且告訴他:
這是我的n8n的webhook:https://n8n.ohya.co/webhook/mygpt-callback
我是新手,我要設定MyGPT的動作(Actions),我不會寫,請協助我。
這裡是範例結構:
{
“openapi”: “3.1.0”,
“info”: {
“title”: “Get weather data”,
“description”: “Retrieves current weather data for a location.”,
“version”: “v1.0.0”
},以下省略….


然後ChatGPT會吐出:
{
“openapi”: “3.1.0”,
“info”: {
“title”: “MyGPT Callback”,
“description”: “示範如何將資料傳送到 n8n 的 Webhook。”,
“version”: “v1.0.0”
},
“servers”: [
{
“url”: “https://n8n.ohya.co”
}
],
“paths”: {
“/webhook/mygpt-callback”: {
“post”: {
“description”: “將資料 POST 給 n8n Webhook。”,
“operationId”: “SendDataToN8n”,
“requestBody”: {
“required”: true,
“content”: {
“application/json”: {
“schema”: {
“type”: “object”,
“properties”: {
“message”: {
“type”: “string”,
“description”: “想要傳給 n8n 的文字訊息”
},
“userId”: {
“type”: “string”,
“description”: “(可選)用戶 ID 或其他參考資訊”
}
},
“required”: [
“message”
]
}
}
}
},
“responses”: {
“200”: {
“description”: “成功送出並由 n8n 處理。”
}
}
}
}
},
“components”: {
“schemas”: {}
}
}
貼進去就搞定了!
這裡可以留意,你會發現當你的自訂動作設定完成之後,會看到有個名稱,我們要把它丟到指令中。

接著,我們來設定指令,舉例來說,這是我寫的範例的指令:
你的主要任務
接收使用者的自然語言指令
使用者可能會說「新增問題」、「我想問」等。
例如:「台灣面積多大?」、「你可以陪我聊天嗎?」等等。
當你接受到類似指令,則啟動SendDataToN8n動作
並透過 Webhook 呼叫 n8n,以執行實際的操作,並回傳資料
記得!
- MyGPT 只是一個資料傳遞的窗口,它不會主動抓資料,而是等待請求後回傳結果。
- 你會透過外部請求觸發 MyGPT,然後它會把結果推送回你在 Step 1 設定的 Webhook 節點中。
- 如果ChatGPT產出的 Json資料貼進去之後出錯,沒關係,你就再回頭問就好了!
Step 3:檢視與處理 Webhook 輸出
目的:
檢查 Webhook 節點收到的 MyGPT 回應資料,並根據需要進行後續處理(例如格式整理、串接到其他應用)。
操作方式:
- 先到n8n,點開webhook節點,找到Test URL,把它複製下來,貼回去MyGPT的動作裡面,我們先測試。

2. 你看到範例這邊,他是來自n8n節點裡面的production的URL,這是用來上線之後溝通的網址,但是我們因為要先測試,所以這裡畫紅線的地方,要改為/webhook-test/mygpt-callback

3. 接著點開Listen for Test Event,讓n8n可以接收來自MyGPT的訊息

4. 到MyGPT去發送訊息試試看

若是有成功接收,則右側的output就會看到這個一堆密密麻麻的東西了!
後續若是都有設定正確,就可以看到MyGPT正確回傳資料咯!
5. 最後,回到n8n的Webhook節點,我們去Production URL確認一下網址,接著回到MyGPT裡面的動作,將/webhook-test/mygpt-callback,改為/webhook/mygpt-callback

結論來一下
看完這篇文章,你應該能夠明白 API 的基本概念,並知道如何用 n8n 串接 MyGPT 來實現自動化流程。
先理解基礎,再談自動化,這樣的學習方式才不會讓你像無頭蒼蠅一樣迷失方向。