---
{
  "id": "platform.webhook.fire-events",
  "topic": "webhook",
  "title": "Webhook Fire Event 除錯",
  "locale": "zh-TW",
  "version": "2026-08-25",
  "summary": "Fire-event metadata 與 payload 存取需要明確的 per-Webhook read grant；保留的 function details 可解釋 workflow dispatch 與通知行為。",
  "content": "先用 `arinova.webhook.list_fire_events` 看 status、時間、function outcome 與 `targetWorkflowId`；它不回 request body。用 `list_function_executions` 查看保留的逐 function audit rows，包括 status、target type、rendered size、denial reason 與 duration。這些 reads 都要求 Agent 的明確 `read`／`write` grant；不存在與未授權都回 `resource_not_found`。\n\n需要內容時才用 `get_fire_event_payload` 並提供 `webhookId`／`fireEventId`。Owner scope 與 grant 都會檢查；payload/headers 從 persisted result redaction，每次嘗試以 `mcp_payload_access` 稽核。\n\n`arinova.webhook.send_test_event` 需要 strict 使用者確認與 write grant。它會簽一個受限的 management test payload，並走正常 inbound pipeline，因此可能 dispatch target 並建立真實 fire/function audit rows；dry run 不會送出。Management test 每 owner 每小時限 10 次。\n\nPayload 只可讀 24 小時；到期或被 sweep 後回 `{status: \"payload_expired\"}`。每 caller-agent 每分鐘 30 次，limiter 不可用時 fail closed。\n\n`run_workflow` 的 `workflow_rate_limited` 是 `skipped` 無 run；`workflow_unavailable` 是 target 缺少或非 active；超限／render 失敗是 `render_error`。Durable outbox 只重試 transient failures，最多五次。Success/skipped 抑制 owner result notification；error 仍通知。Success 只證明建立 run。\n\nPayload/filtered headers 是敏感資料；先看 metadata，只取必要事件，不可寫入 telemetry/knowledge。16 KiB 以下 inline，較大至 inbound 1 MiB 使用 object storage。\n",
  "aliases": [
    "webhook delivery history",
    "webhook 失敗",
    "inbound endpoint 紀錄",
    "fire event",
    "回呼失敗",
    "payload detail",
    "payload 過期",
    "事件除錯",
    "稽核紀錄"
  ],
  "tags": [
    "audit",
    "debugging",
    "payload",
    "retention"
  ],
  "relatedActions": [
    "arinova.webhook.list_fire_events",
    "arinova.webhook.get_fire_event_payload",
    "arinova.webhook.list_function_executions",
    "arinova.webhook.send_test_event"
  ],
  "relatedActionPrefixes": [],
  "url": "https://docs.arinova.ai/zh-tw/kb/webhook/fire-events/"
}
---

先用 `arinova.webhook.list_fire_events` 看 status、時間、function outcome 與 `targetWorkflowId`；它不回 request body。用 `list_function_executions` 查看保留的逐 function audit rows，包括 status、target type、rendered size、denial reason 與 duration。這些 reads 都要求 Agent 的明確 `read`／`write` grant；不存在與未授權都回 `resource_not_found`。

需要內容時才用 `get_fire_event_payload` 並提供 `webhookId`／`fireEventId`。Owner scope 與 grant 都會檢查；payload/headers 從 persisted result redaction，每次嘗試以 `mcp_payload_access` 稽核。

`arinova.webhook.send_test_event` 需要 strict 使用者確認與 write grant。它會簽一個受限的 management test payload，並走正常 inbound pipeline，因此可能 dispatch target 並建立真實 fire/function audit rows；dry run 不會送出。Management test 每 owner 每小時限 10 次。

Payload 只可讀 24 小時；到期或被 sweep 後回 `{status: "payload_expired"}`。每 caller-agent 每分鐘 30 次，limiter 不可用時 fail closed。

`run_workflow` 的 `workflow_rate_limited` 是 `skipped` 無 run；`workflow_unavailable` 是 target 缺少或非 active；超限／render 失敗是 `render_error`。Durable outbox 只重試 transient failures，最多五次。Success/skipped 抑制 owner result notification；error 仍通知。Success 只證明建立 run。

Payload/filtered headers 是敏感資料；先看 metadata，只取必要事件，不可寫入 telemetry/knowledge。16 KiB 以下 inline，較大至 inbound 1 MiB 使用 object storage。
