1. All Collections >
  2. 產品 >
  3. 工作流程 >
  4. 步驟:HTTP 請求

步驟:HTTP 請求

Avatar
Shing-Yi Tan
4 分鐘

此步驟允許發送 HTTP 請求並將其回應儲存為變數。

此步驟僅適用於商業計劃及以上版本。

配置

HTTP請求步驟中有兩個關鍵配置:

HTTP 請求方法

請求所需的特定方法。 從下拉清單中選擇適當的方法。

網址

在 URL 欄位中,輸入外部 API 的 URL 端點以檢索資料。 若要包含變量,請使用 "$" 前綴來支援靜態文字和變數的內插。

現在您可以在 HTTP 請求步驟中使用 IP 位址和連接埠號,從而可以直接存取伺服器並靈活地存取非標準連接埠上的服務。

請注意,respond.io 和白標域名均被列入黑名單。 不允許向這些網域發送 API 呼叫,因為這可能會導致循環問題。

身體

為了確保請求接收者正確解碼,請展開 Body 部分並包含正文和 Content-Type Header。

標題

在 Header 部分,您可以成對地在 HTTP 請求中新增標頭。 key 表示標頭名稱,value 表示標頭值。 您可以透過加上前綴 "$"將變數用作標題。 但請記住,最多只允許 10 個標題。

回應映射

對於具有鍵值對的 JSON API 回應,您可以將特定的回應元素儲存為變數。 在Response Mapping部分,左側輸入JSON物件的鍵,右側為變數分配一個名稱。 請記住,只能儲存 JSON 回應,並且最多可以有 10 個回應映射設定。

例子:

若要以不同的格式儲存回應,請填入與要儲存的資料相對應的 JSON 鍵。

{  
    “name”: “Jason”,  
    “zip_codes”: “12345”,  
    “phone”: “123123”  
}

若要儲存上述回應中的電話號碼,請使用 $.phone 作為 JSON 鍵。

{ 
    "custom_fields": {  
        "firstName": "John",  
        "lastName": "Doe",  
        "locale": "zh_TW",  
        "timezone": "5",  
        "gender": "male",  
        "phone": "123123",  
        "email": "zy@respond.io",  
        "customerid": "1"  
    },  
    "created_at": 1575618542  
}

若要儲存上述回應中的電話號碼,請使用 $.custom_fields.phone

{  
        "data": {  
            "id":"1776025372480910",  
            "contacts" : [  
                {  
                    "firstName":"John",  
                    "lastName":"Doe",  
		    "locale": "zh_TW"  
                },  
                {  
                    "firstName":"Jane",  
                    "lastName":"Doe",  
		    "locale": "zh_TW"  
                }  
	    ]  
        }  
    }

若要儲存上述回覆中的名字 'Jane' ,請使用 $.data.contacts[1].firstName

將回應狀態儲存為變數

若要將 HTTP 請求的回應狀態儲存為變量,請開啟 將回應狀態儲存為變數 切換開關。 然後,在提供的欄位中命名變數。

工作原理

啟動後,此步驟將使用定義的主體和標頭向指定的 URL 發送 HTTP 請求。

您可以根據回應狀態來指導工作流程。 例如,您可以為 "狀態代碼等於 200"建立一個分支。 如果收到任何其他回應狀態代碼,跳轉步驟可以將聯絡人返回 HTTP 請求步驟。 或者,如果分支條件不滿足,聯絡人可能會被導向到失敗分支。 如果失敗分支下沒有設定步驟,工作流程將會結束。

如果你的HTTP請求超過10秒,就會導致逾時,進而導致請求失敗。

潛在的失敗

為避免執行 HTTP 請求時出現潛在失敗,請確保符合下列條件:

  • 使用正確的 HTTP 方法和 Content-Type Header。

  • 確保根據您的系統支援的內容在 URL 中包含所需的協定 http://https:// ,以避免請求失敗。

  • 確保 Content-Type 有效。

  • 從 URL 中排除連接埠號碼。

  • 避免在 URL 中使用自簽名憑證。

  • 驗證授權是否有效。

  • 確保我們的 IP 位址(52.74.35.155、18.138.31.163、54.169.155.20)沒有被封鎖。

如果上述任何條件不滿足,聯絡人將跳過此步驟並繼續剩餘的旅程。

當使用動態變數驗證 HTTP 請求輸出時,請記住沒有值的變數會回傳為 nullundefined

最佳實踐

您可以遵循以下此步驟的一些最佳實踐來優化您的工作流程:

當 HTTP 請求成功時

  1. 將回應狀態儲存為變數:

    1. 確保第一步是將 回應狀態儲存為變數 以便採取進一步行動。

  2. 分支步驟:

    1. 新增分支步驟來評估 HTTP 請求狀態。

    2. 若狀態為 200,則請求成功。

    3. 如果沒有,請配置警報以通知經理有關請求不成功的情況。

  3. Google Sheet 用於監控:

    1. 在 Google Sheet 中記錄回應狀態,以便清楚了解請求的成功或失敗。

  4. 評論:

    1. 在您的工作流程中新增評論以記錄回應狀態。 這將幫助您更有效地追蹤和審查錯誤。

當 HTTP 請求失敗時

  1. 將回應狀態儲存為變數:

    1. 與成功請求類似, 將回應狀態儲存為變數 以進行錯誤處理。

  2. 使用等待或跳躍步驟重試

    1. 實施等待步驟,在重試不成功的請求之前暫停。

    2. 或者,使用跳轉步驟返回 HTTP 請求步驟並再次嘗試請求。

  3. 評論

    1. 透過建立註解來記錄 HTTP 請求錯誤

    2. 包括聯絡資訊並標記負責人。

  4. 用於監控的 Google Sheet:

    1. 利用 Google Sheet 步驟記錄聯絡資訊和錯誤詳情以供監控和審查。

  5. 任務分配:

    1. 將任務指派給特定使用者以啟動工作流程中的另一個流程並重試。

建議用例

以下是使用 HTTP 請求步驟的一些方法:

  • 路由 VIP 聯絡人:利用 HTTP 請求步驟從 CRM 等資料倉儲取得聯絡人詳細資料。 這使您能夠識別 VIP 聯絡人,從而提供個人化的客戶體驗並將其與非 VIP 聯絡人區分開來。

分享這篇文章
Telegram
Facebook
Linkedin
Twitter

找不到您想要的東西? 🔎