Tham chiếu API
Xác thựcPOST

Kiểm tra xác thực QR

Kiểm tra luồng QR cho đến khi nhà cung cấp báo thành công hoặc thất bại. QR đang chờ trả về auth_payload.qr_code mới nhất; WhatsApp có thể trả về passkey_required cùng auth_payload.public_key cho bước WebAuthn tiếp theo.

https://api.unifyport.ai/v1/accounts/{account_id}/auth/qr/check

Tiêu đề

X-Api-Key
stringbắt buộc

API key của không gian làm việc. Không gian làm việc được xác định từ tiêu đề này.

Content-Type
stringbắt buộc

Dùng application/json khi gửi nội dung yêu cầu JSON.

Tham số đường dẫn

account_id
stringbắt buộc

Định danh dùng cho route authentication.

Nội dung yêu cầu

Điểm cuối này nhận một đối tượng JSON rỗng; hãy gửi {} như trong ví dụ yêu cầu.

Nội dung phản hồi

provider
string

Provider có runtime xử lý hành động.

enum: telegram, whatsapp, line, twitter, zalo, tiktok, whatsapp_protocol

action
string

Hành động runtime đã yêu cầu.

status
string

Trạng thái hiện tại của luồng ủy quyền, ví dụ pending_auth, awaiting_qr_scan, awaiting_code, pending, passkey_required, passkey_pending, passkey_confirmation, passkey_confirmation_sent, authorized hoặc failed.

auth_status
string

Trạng thái xác thực chuẩn hóa sau action Passkey. Poll GET /auth đến khi authorized hoặc failed.

auth_payload
object

Payload chuẩn cần cho bước hiện tại. QR dùng qr_code; bước xác minh mã dùng type=code; Passkey dùng type=passkey và public_key. Payload của các bước loại trừ nhau không xuất hiện cùng lúc.

type
string

Loại payload của bước hiện tại; code biểu thị bước xác minh mã và passkey biểu thị bước Passkey.

qr_code
string

Nội dung QR chỉ hiển thị khi auth_status là awaiting_qr_scan.

public_key
object

WebAuthn PublicKeyCredentialRequestOptions truyền vào browser credentials API khi auth_status là passkey_required.

account_id
string

Tài khoản nhà cung cấp mà phản hồi này tham chiếu tới.

expires_at
string

Dấu thời gian RFC3339 mà sau đó auth_payload hiện tại không còn hợp lệ.

Phản hồi

200
200 OK

Yêu cầu thành công. Xem ví dụ nội dung phản hồi.

400
Bad Request

Body, đường dẫn hoặc tham số yêu cầu không hợp lệ.

401
Unauthorized

Header X-Api-Key thiếu hoặc không hợp lệ.

409
Conflict

Thao tác đang yêu cầu xung đột với tài khoản hoặc tài nguyên nhà cung cấp đã có.

500
Internal Server Error

Dịch vụ gặp lỗi không mong muốn.

502
Bad Gateway

Adapter hoặc upstream provider không thể hoàn tất thao tác.

Yêu cầu

curl -X POST https://api.unifyport.ai/v1/accounts/{account_id}/auth/qr/check \
  -H "X-Api-Key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{}'

Phản hồi

{
  "data": {
    "provider": "whatsapp",
    "action": "check_qr_auth",
    "status": "awaiting_qr_scan",
    "auth_status": "awaiting_qr_scan",
    "auth_payload": {
      "qr_code": "<QR_CODE>"
    }
  }
}

Phản hồi

{
  "data": {
    "provider": "whatsapp",
    "action": "check_qr_auth",
    "status": "passkey_required",
    "auth_status": "passkey_required",
    "auth_payload": {
      "type": "passkey",
      "public_key": {
        "challenge": "<BASE64URL_CHALLENGE>"
      }
    }
  }
}