เอกสารอ้างอิง API
การยืนยันตัวตนPOST

เริ่มยืนยันด้วยรหัส

เริ่ม flow การล็อกอินด้วยรหัสยืนยัน หลังจากเรียกแล้วให้ส่งรหัสผ่าน /auth/code หากต้องการ 2FA ให้เรียก /auth/password ต่อ WhatsApp ก็ใช้ จุดเชื่อมต่อ เดียวกันนี้สำหรับการจับคู่ด้วยหมายเลขโทรศัพท์ โดยอ่านหมายเลขจากบัญชี (ที่บันทึกไว้ตอนสร้างผ่าน provider_data.phone) จึงไม่ต้องระบุที่นี่อีก

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

ส่วนหัว

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

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

Content-Type
stringจำเป็น

ใช้ application/json เมื่อต้องส่งเนื้อหาของคำขอเป็น JSON

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

account_id
stringจำเป็น

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

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

จุดเชื่อมต่อนี้ไม่ต้องใช้เนื้อหา JSON

เนื้อหาการตอบกลับ

account_id
string

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

status
string

สถานะ flow การยืนยันตัวตนปัจจุบัน เช่น awaiting_code, awaiting_qr_scan, authorized หรือ cancelled

auth_fields
object[]

อธิบายว่าขั้นตอนถัดไปต้องการอะไร — แต่ละรายการมี type และระบุว่าจำเป็นหรือไม่

auth_payload
object

ข้อมูลที่ client ต้องนำไปแสดงผลในขั้นถัดไป เช่น qr_code หรือ verify_code

expires_at
string

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

การตอบกลับ

200
200 OK

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

400
Bad Request

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

401
Unauthorized

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

409
Conflict

การดำเนินการขัดแย้งกับบัญชีของผู้ให้บริการหรือทรัพยากรที่มีอยู่

500
Internal Server Error

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

คำขอ

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

การตอบกลับ

{
  "data": {
    "account_id": "acc_example",
    "status": "awaiting_code",
    "auth_fields": [
      { "type": "code", "required": true }
    ],
    "auth_payload": {
      "verify_code": "ABCD-EFGH"
    },
    "expires_at": "2026-01-01T00:00:00Z"
  }
}