帳戶授權
建立渠道授權會話
為 auth_mode=qrcode 嘅 WhatsApp 帳號建立短期託管授權會話。請喺用戶瀏覽器開 authorize_url,並將完整 URL 當成敏感憑證,唔好記錄或者分享。
https://api.unifyport.ai/v1/accounts/{account_id}/auth-sessions呼叫前準備
在伺服器端使用資源所屬工作區的 X-Api-Key,執行範例前替換所有預留位置。
參數從哪裡取得
- account_id
- 從建立或查詢帳號的回應取得 data.id。帳號屬於 X-Api-Key 對應的工作區。 攞帳號
請求參數
請求標頭
X-Api-Key工作區 API Key,工作區會由呢個標頭解析得出嚟。
路徑參數
account_id用嚟識別嗰條 authentication 路由嘅 ID。
請求內容
呢個介面唔需要 JSON 請求內容。
如何理解結果
依文件解讀回應欄位與 HTTP 狀態。204 成功沒有回應本文,排查時使用 X-Request-Id。下一步請參閱相關操作。
回應 201 Created
{
"request_id": "<REQUEST_ID>",
"data": {
"account_id": "acc_example",
"provider": "whatsapp",
"auth_mode": "qrcode",
"status": "passkey_required",
"auth_payload": {
"type": "passkey",
"public_key": {
"challenge": "<BASE64URL_CHALLENGE>"
}
},
"authorize_url": "https://auth.example.com/authorize/whatsapp/<SESSION_TOKEN>",
"expires_at": "2026-08-12T08:10:00Z",
"switchable": false,
"available_auth_modes": [
"qrcode"
]
}
}
回應內容
account_id呢個回應所指嘅渠道帳號。
provider管道識別碼。呼叫其他介面時原樣使用 API 回傳的值;此介面的回傳範圍請看下方列舉。
enum: whatsapp
auth_mode呢個授權會話嘅認證模式;目前係 qrcode。
status目前授權流程狀態,例如 pending_auth、awaiting_qr_scan、awaiting_code、pending、passkey_required、passkey_pending、passkey_confirmation、passkey_confirmation_sent、authorized 或 failed。
auth_payload目前步驟所需嘅標準載荷。普通 QR 用 qr_code;驗證碼步驟用 type=code;Passkey 用 type=passkey 同 public_key。互斥步驟嘅載荷唔會同時出現。
authorize_url包含不透明憑證嘅短期託管授權 URL,唔好記錄或者分享完整值。
format: uri
expires_atRFC3339 時間戳,過咗呢個時間之後而家個 auth_payload 就唔再有效。
format: date-time
switchable託管授權會話係咪允許用戶切換認證模式。
available_auth_modes[]託管授權會話入面可用嘅認證模式。
回應
201201 Created
請求成功,回應內容嘅例子如上。
400請求錯誤
請求內容、路徑或者參數無效。
401未授權
X-Api-Key 請求標頭缺少或者無效。
500伺服器錯誤
服務遇到咗未預期嘅錯誤。
503服務不可用
所需嘅後端服務暫時不可用。
失敗後如何處理
檢查 HTTP 狀態和 error.code/numeric_code,保留 request_id。依原因修正參數、繼續授權或檢查狀態。重試傳送及寫入前確認上次結果,避免重複操作。 錯誤碼參考
- invalid_request · 10000 · 400
- 檢查必填欄位、格式與渠道條件,修正請求後再呼叫。
- invalid_api_key · 11001 · 401
- 檢查 X-Api-Key 與工作區是否有效。