使用說明 使用說明
API 使用介紹

用「HTTP 請求」節點呼叫外部 API

在工作流裡用「HTTP 請求」節點呼叫其他服務的 API,用憑證帶上金鑰,並把回應交給下一個節點。

本頁內容 5

「HTTP 請求」節點在「動作」這一組。它會呼叫一個外部的 HTTP API,把回應變成資料,交給下一個節點。

每一筆資料呼叫一次

進到這個節點的每一筆資料,都會各發出一次請求:進來 100 筆,就呼叫 100 次。在工作流執行時,沒有資料進來的話,這個節點會被跳過,不會發出請求。只有在畫布上單獨執行這個節點、前面還沒有資料時,它才會發出一次請求。

「網址」、「查詢參數」、「標頭」與要送出的內容都可以用算式,所以每一次呼叫可以用不同的網址或內容。

欄位

  • HTTP 方法 (Method):GET、POST、PUT、PATCH、DELETE 或 HEAD,預設是 GET。
  • 網址:要呼叫的網址,一定要填,例如 https://example.com/api/orders。沒有填時,節點會失敗,訊息是「HTTP 請求節點沒有填網址。」。
  • 憑證:對方要求身分驗證時才選,請看下面的憑證。
  • 傳送查詢參數:打開後,在「查詢參數」填名稱與值,它們會加在網址後面。
  • 傳送標頭:打開後,在「標頭」填要送出的標頭。
  • 傳送請求 Body:打開後,選「內容類型 (Content-Type)」:
    • 「JSON」:填「JSON Body」。內容不是合法的 JSON 時,節點會失敗,訊息是「JSON 內容不是合法的 JSON。」。
    • 「表單 (form-urlencoded)」:填「表單欄位」。
    • 「原始內容 (Raw)」:填「原始 Body」,內容照原樣送出。
  • 逾時秒數:等對方回應最多幾秒。預設 30 秒,可以設 1 到 300 秒。
  • 忽略 HTTP 狀態錯誤:預設關閉。關閉時,對方回應 4xx 或 5xx,這個節點就會失敗,訊息像是「呼叫 … 失敗,對方回應 404。」,其中 … 是呼叫的網址,404 會換成對方回應的狀態碼。打開後,4xx 與 5xx 的回應也照常輸出。
  • 輸出完整回應:預設關閉,請看下面的輸出。

工作流是由設成「跑完再回傳資料」的 Webhook 啟動時,節點等待的時間,最多只到 Webhook 的時間上限用完為止,請看 Webhook 的回應、狀態碼與上限。

這個節點目前不能用 OAuth2 登入、不能傳送檔案,也不會自動一頁一頁讀取。

憑證

「憑證」只列出開放給這個工作流的憑證裡,下面這三種。選了一個之後,每一次呼叫都會自動加上它的標頭:

憑證種類 加上的標頭
基本驗證 Authorization: Basic …,內容是「帳號:密碼」的 Base64
Bearer Token Authorization: Bearer …,內容是存好的 Token
標頭驗證 你存的「標頭名稱」與「標頭值」

沒有選時,顯示「不使用憑證」。郵件與 AI 模型的憑證不會出現在這裡,也不會被加到請求上。一個能選的都沒有時,框下面寫著「還沒有憑證開放給這個工作流。請憑證的擁有者在憑證的「權限」分頁加上它。」

選好的憑證要開放給這個工作流,執行時才會加到請求上:它的「權限」分頁要加上這個工作流,請看工作流用得到哪些憑證。沒有開放時,這個節點會執行失敗,寫著「憑證「名稱」沒有開放給這個工作流。請憑證的擁有者在憑證的「權限」分頁加上這個工作流。」選的是沒有開放給這個工作流的私人憑證時,寫著「節點「…」選的私人憑證沒有開放給這個工作流。請私人憑證的擁有者在憑證的「權限」分頁加上這個工作流。」

選的憑證在清單上找不到時,例如它被刪掉了,或它沒有開放給這個工作流,框下面會寫「這裡找不到選的憑證。」,後面有「清掉」,按了就會清掉。

憑證要先建立好,才能在這裡選,請看憑證:保存 API 金鑰與密碼。

不能呼叫的網址

  • 網址只能用 http 或 https。用別的,例如 ftp://,節點會失敗,訊息是「網址只能用 http 或 https,不能用「ftp」。」。網址前面沒有寫 https:// 時,也會收到這個訊息,括號裡寫的是「(沒有)」。
  • 不能呼叫網站自己內部網路的位址,例如 localhost、127.0.0.1、私人網段(像 192.168.x.x),或雲端主機的中繼資料位址。網址寫的是主機名稱時,網站會先查它指向哪裡:指向內部位址的,一樣不行;查不到位址的主機名稱,也會被擋下來。訊息是「不允許呼叫內部網址「…」。」,引號裡是網址的主機名稱。
  • 網址讀不出主機時,訊息是「看不懂這個網址:「…」。」,引號裡是你填的網址。
  • 對方回應轉址時,每一次轉址的目的地都會再檢查一次。

這些限制是網站的設定,使用者不能關掉。

輸出

每一次呼叫變成一筆資料。對方回應的內容是 JSON 時,會讀成資料;不是 JSON 時,保留成文字。

  • 「輸出完整回應」關閉時(預設):只輸出回應的內容。內容是一個不是空的物件(例如 {"id": 7})時,它就是這筆資料。其他的內容,例如陣列、文字、數字,或是空物件 {},會放在 data 欄位下,例如 {"data": [1, 2, 3]}。
  • 「輸出完整回應」打開時:輸出三個欄位:statusCode(狀態碼)、headers(回應的標頭)與 body(回應的內容)。