在「設定」› API 存取中,你可以建立個人存取權杖,讓指令碼或 MCP 用戶端以你的身分使用 Dvina。管理員也可以在這裡新增 webhook,將 Livespace 的事件傳送到自己的系統。
Enterprise 方案包含 API 存取功能。每位成員都可以建立自己的權杖;只有擁有者和管理員能看到 Webhook。
建立權杖
- 開啟「設定」,選擇 API 存取。
- 在個人存取權杖下,選擇建立權杖。
- 輸入名稱,方便日後辨識哪些程式或服務使用這個權杖。
- 選擇存取權限:唯讀或讀取與寫入。
- 選擇到期時間:30 天後、90 天後、365 天後或永不到期。
- 選擇建立權杖。
- 在複製你的權杖下,複製權杖並妥善保存。權杖只會在此時顯示一次。
權杖會在你建立它的 Livespace 中,以你的身分和你目前在該 Livespace 中的角色運作。唯讀權杖可以讀取內容,但無法新增或變更任何內容。
若要在 MCP 用戶端中使用權杖,請參閱使用 API 金鑰而非 OAuth 連線。
檢查、輪替或撤銷權杖
你的權杖會列在個人存取權杖下,並顯示各自的存取權限。選擇一個權杖,即可查看它的開頭字元、存取權限、上次使用時間和到期時間。
- 若要替換權杖,選擇輪替…,再選擇輪替以確認。新權杖會取代舊權杖,舊權杖會立即失效。在複製你的權杖下複製新權杖。
- 若要停用權杖,選擇撤銷…,再選擇撤銷以確認。所有使用該權杖的程式或服務都會立即停止運作。
建立、輪替和撤銷權杖的操作都會記錄在稽核記錄中。
新增 webhook
Webhook 會將 Livespace 的事件傳送到你指定的網址,這些事件與稽核記錄中的記錄相同。
- 在「設定」› API 存取中的 Webhook 下,選擇新增 Webhook。
- 輸入名稱和 URL。請使用可公開存取的 HTTPS URL。
- 在事件下,留空即可接收所有事件,或列出操作和範圍,例如
member.added或sharing.*。 - 選擇新增。
- 在複製簽章密鑰下,複製密鑰。密鑰只會在此時顯示一次。
如果 Dvina 顯示 Dvina 無法連線至此網址,請使用可公開存取的 HTTPS URL。
驗證每個請求的簽章
Dvina 會以 JSON 格式分批傳送事件,並為每個請求加上簽章。使用簽章密鑰驗證請求是否來自 Dvina:
- 每個請求都有一個
X-Dvina-Signature標頭,格式如t=<timestamp>,v1=<signature>。 - 簽章是以你的簽章密鑰,對時間戳記、句點和請求本文依序串接後的內容計算出的 HMAC-SHA256,並以十六進位表示。
- 自行計算簽章並進行比對。如果請求的簽章不符,或時間戳記過舊,請拒絕該請求。
查看或變更 webhook
你的 webhook 會列在 Webhook 下,並顯示各自的狀態:已啟用、已暫停或失敗中。選取其中一個即可查看詳細資訊。
- 若要變更 webhook,請編輯其名稱、URL 或事件,然後選擇儲存。
- 若要暫停 webhook,請關閉傳送事件。再次開啟即可恢復傳送。
- 若要查看運作情況,請查看其狀態和已傳送的事件數量。失敗中的 webhook 會顯示其上次錯誤。Dvina 會持續重試,並將失敗記錄在稽核記錄中。
- 若要變更其密鑰,請選擇新增簽署密鑰…,然後確認。請求會立即改用新密鑰簽署,因此請立即更新接收端。
- 若要移除 webhook,請選擇刪除…,然後選擇刪除以確認。之後便不會再向它傳送任何內容。