REST API

認證票證 API

POST /api/v1/auth/ticket

功能說明

取得 WebSocket 連線用的一次性 Ticket。由於瀏覽器原生 WebSocket API 不支援自訂 HTTP Header,VAS 採用 Ticket 機制:先以 API Key 換取一次性 Ticket,再透過 Sec-WebSocket-Protocol 建立 WebSocket 連線。

認證方式

Header:X-API-Key(詳見 認證機制)

請求參數

此端點不需要任何請求參數。

請求範例

curl -X POST "https://vas-poc.vurbo.ai/api/v1/auth/ticket" \
  -H "X-API-Key: vas_aB3dE5fG7hI9jK1lM3nO5pQ7rS9tU1vW"

成功回應

HTTP 200

{
  "ticket": "aBcDeFgHiJkLmNoPqRsTuVwXyZ012345",
  "expires_in": 60
}

回應欄位說明

欄位類型說明
ticketstring一次性 Ticket(32 字元隨機字串)
expires_ininteger有效期(秒),固定為 60

Ticket 特性

特性說明
有效期60 秒內必須使用
一次性使用使用後立即刪除,無法重複使用
使用方式透過 Sec-WebSocket-Protocol 傳遞,格式為 ticket.{ticket_value}

使用範例

取得 Ticket 後,使用以下方式建立 WebSocket 連線:

const ws = new WebSocket('wss://vas-poc.vurbo.ai/ws', [`ticket.${ticket}`]);

特有錯誤碼

錯誤碼HTTP 狀態碼說明處理建議
plan_daily_limit_reached402已達方案每日用量上限(吃到飽方案,v1.9.0)依方案規則重置(隔日)後再取得 Ticket;可用 GET /api/v1/me/plan 查用量與恢復時間

ticket_* 不是本端點的錯誤碼:Ticket 的驗證發生在建立 WebSocket 連線時, 這四個碼是那個階段以 WebSocket 訊息回給客戶端的,不會出現在本 REST 端點的 HTTP 回應裡。

實務上只會收到兩個:Ticket 一律以「取用即刪」的方式驗證, 所以無效、過期、已使用三種情況都回 ticket_invalid; ticket_expired 與 ticket_already_used 目前不會送出。 驗證程序本身出錯時回 ticket_validation_failed(401,不是 500)。


版本:V1.24.1 最後更新:2026-09-28

Copyright © 2026