เอกสารอ้างอิง API

การอนุญาตบัญชี

สร้างเซสชันการให้สิทธิ์ของผู้ให้บริการ

สร้างเซสชันการให้สิทธิ์ WhatsApp แบบสาธารณะสำหรับขั้น Passkey เพิ่มเติมใน QR flow ใช้ authorize_url ที่โฮสต์ไว้หรือ auth_payload.public_key เพื่อเรียก WebAuthn โดยตรง ห้ามบันทึก URL, challenge หรือ credential ลง log สาธารณะหรือแชร์ให้ผู้อื่น

POSThttps://api.unifyport.ai/v1/accounts/{account_id}/auth-sessions

ก่อนเรียกใช้

ใช้ X-Api-Key ของ workspace เจ้าของทรัพยากรบนเซิร์ฟเวอร์ แทนค่าตัวอย่างทั้งหมดก่อนเรียกใช้

ที่มาของพารามิเตอร์
account_id
รับ data.id จากการสร้างหรือค้นหาบัญชี รหัสเป็นของ workspace ที่ระบุด้วย X-Api-Key ดูบัญชี

พารามิเตอร์คำขอ

ส่วนหัว

X-Api-Key
stringจำเป็น

API key ของพื้นที่ทำงาน ระบบจะระบุพื้นที่ทำงานจากส่วนหัวนี้

พารามิเตอร์ใน path

account_id
stringจำเป็น

ตัวระบุที่ใช้ใน route ของ authentication

เนื้อหาของคำขอ

จุดเชื่อมต่อนี้ไม่ต้องใช้เนื้อหา 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
string

บัญชีของผู้ให้บริการที่การตอบกลับนี้อ้างถึง

provider
string

รหัสช่องทาง ใช้ค่าที่ API ส่งกลับโดยไม่แก้ไขในการเรียกครั้งต่อไป ดูค่าที่ API นี้คืนได้จาก enum ด้านล่าง

enum: whatsapp

auth_mode
string

โหมดการให้สิทธิ์ของเซสชัน Passkey เป็นสาขาเพิ่มเติมของ WhatsApp qrcode

status
string

สถานะ flow การให้สิทธิ์ปัจจุบัน เช่น pending_auth, awaiting_qr_scan, awaiting_code, pending, passkey_required, passkey_pending, passkey_confirmation, passkey_confirmation_sent, authorized หรือ failed

auth_payload
object

payload มาตรฐานที่ต้องใช้ในขั้นปัจจุบัน QR ใช้ qr_code; ขั้นยืนยัน code ใช้ type=code; Passkey ใช้ type=passkey และ public_key payload ของขั้นที่แยกกันจะไม่ปรากฏพร้อมกัน

authorize_url
string

URL ชั่วคราวที่โฮสต์ไว้สำหรับทำขั้น Passkey ห้ามบันทึกหรือแชร์ค่านี้

format: uri

expires_at
string

timestamp แบบ RFC3339 ที่หลังจากนั้น auth_payload ปัจจุบันจะไม่ใช้ได้แล้ว

format: date-time

switchable
boolean

ระบุว่าผู้ใช้เปลี่ยนไปใช้โหมดการให้สิทธิ์อื่นที่พร้อมใช้งานได้หรือไม่

available_auth_modes[]
string[]

โหมดการให้สิทธิ์ที่เปลี่ยนไปใช้ได้อย่างปลอดภัยจากเซสชันปัจจุบัน

การตอบกลับ

201

201 Created

คำขอสำเร็จ ดูตัวอย่างเนื้อหาตอบกลับด้านบน

400

Bad Request

เนื้อหาของคำขอ path หรือพารามิเตอร์ไม่ถูกต้อง

401

Unauthorized

ส่วนหัว X-Api-Key หายไปหรือไม่ถูกต้อง

500

Internal Server Error

บริการพบข้อผิดพลาดที่ไม่คาดคิด

503

Service Unavailable

บริการ backend ที่จำเป็นไม่พร้อมใช้งานชั่วคราว

เมื่อคำขอล้มเหลว

ตรวจ HTTP และ error.code/numeric_code เก็บ request_id แล้วแก้พารามิเตอร์ ยืนยันตัวตนต่อ หรือตรวจ runtime ตามสาเหตุ ตรวจผลครั้งก่อนก่อนส่งหรือเขียนซ้ำ อ้างอิงรหัสข้อผิดพลาด

invalid_request · 10000 · 400
ตรวจฟิลด์บังคับ รูปแบบ และเงื่อนไขช่องทาง แล้วแก้คำขอ
invalid_api_key · 11001 · 401
ตรวจ X-Api-Key และว่า workspace ยังใช้งานอยู่