Webhook 是用於接收事件通知的 HTTP 端點。當特定事件發生時,系統會主動向預先定義的 URL(Webhook URL)傳送 HTTP 請求。Webhook 通常用於通知外部系統狀態變更或非同步任務結果。常見使用情境#
| 使用情境 | 說明 |
|---|
| 付款通知 | 付款平台在訂單成功付款時傳送通知 |
| 驗證更新 | 第三方登入服務更新登入狀態 |
| 非同步任務結果 | 背景任務在完成時傳送結果 |
| 事件觸發 | 系統在特定事件發生時通知外部服務 |
與一般端點的主要差異#
雖然從技術上來說,Webhook 只是一個 HTTP 端點,但它的使用方式有所不同:建立 Webhook 端點#
1
在你的 Apidog 專案中,點擊左側側邊欄的
"+" 圖示,並選擇
"New Other Protocol APIs" →
"Webhook"。
2
建立 Webhook 後,請在編輯器中填寫以下欄位:
| 欄位 | 說明 |
|---|
| 請求方法 | 通常為 POST |
| Webhook 名稱 | 顯示於 API 文件和 OpenAPI 匯出中(例如 order) |
| 偵錯 URL | 選填。用於傳送測試請求的實際 URL(僅供測試使用,不會包含在文件中) |
| 其他資訊 | 請求主體、標頭和其他設定 |
偵錯 Webhook 端點#
Webhook 偵錯會模擬事件觸發,以驗證外部服務是否能正確接收請求。1.
將你的 Webhook URL 輸入到 Debug URL 欄位
Webhook 文件#
Webhook 文件包含 Webhook 名稱、請求方法和請求主體等詳細資訊。這能讓使用者更容易了解當特定事件發生時,會傳送哪種類型的資料。Debug URL 不會包含在文件或 OpenAPI 匯出中 — 它僅供內部測試使用。
在匯出的 OpenAPI 檔案中,Webhook 端點會列在 webhooks 欄位下,這不同於一般端點的 paths 欄位。常見問題#
根據 OpenAPI 3.1 規範:
Webhook 端點定義在 webhooks 欄位下
在 Apidog 中,Webhook 會被視為一種獨立的端點類型,以準確反映這種方向性的差異,並確保 OpenAPI 匯出時格式正確。orderPaid 是在訂單成功付款時由系統觸發的 Webhook