การอนุญาตบัญชี
นำเข้า session
ทำการยืนยันให้เสร็จด้วยการนำเข้า session URL หรือ cookie/session ที่มีอยู่ ในตัวอย่าง client ให้ใช้ค่าตัวแทนและไม่บันทึก session จริงลง log
https://api.unifyport.ai/v1/accounts/{account_id}/auth/sessionก่อนเรียกใช้
ใช้ X-Api-Key ของ workspace เจ้าของทรัพยากรบนเซิร์ฟเวอร์ แทนค่าตัวอย่างทั้งหมดก่อนเรียกใช้
WhatsApp Protocol เป็นช่องทางแยกต่างหาก โดยใช้ provider=whatsapp-protocol ปัจจุบันรองรับเฉพาะการนำเข้าเซสชัน (auth_mode=session) เพื่อให้สิทธิ์บัญชีด้วยข้อมูลเซสชันที่มีอยู่ การให้สิทธิ์ WhatsApp Protocol
ที่มาของพารามิเตอร์
- account_id
- รับ data.id จากการสร้างหรือค้นหาบัญชี รหัสเป็นของ workspace ที่ระบุด้วย X-Api-Key ดูบัญชี
พารามิเตอร์คำขอ
ส่วนหัว
X-Api-KeyAPI key ของพื้นที่ทำงาน ระบบจะระบุพื้นที่ทำงานจากส่วนหัวนี้
Content-Typeใช้ application/json เมื่อต้องส่งเนื้อหาของคำขอเป็น JSON
พารามิเตอร์ใน path
account_idตัวระบุที่ใช้ใน route ของ authentication
เนื้อหาของคำขอ
session_urlURL หรือ reference ของ session artifact ที่มีอยู่ของผู้ให้บริการ
format: uri
whatsapp-protocolobjectข้อมูลรับรองสำหรับนำเข้าเซสชัน WhatsApp Protocol ส่งได้เฉพาะที่ /v1/accounts/{account_id}/auth/session ผ่านออบเจ็กต์ซ้อนนี้ ไม่ใช่ provider_data เมื่อระบุออบเจ็กต์นี้ ต้องมี phone, static_pub_key, static_pri_key, identity_pub_key และ identity_pri_key การตอบกลับไม่ส่งคืนคีย์โปรโตคอลหรือข้อมูลรับรองที่ละเอียดอ่อนอื่น phone ใช้ตรวจสอบความสอดคล้องของตัวตน ส่วนคีย์สาธารณะและคีย์ส่วนตัวของโปรโตคอลใช้เฉพาะสำหรับเริ่มต้นระบบต้นทาง แพลตฟอร์มใส่ edge_routing แบบตายตัว ห้ามผู้เรียกส่งฟิลด์นี้
whatsapp-protocolข้อมูลรับรองสำหรับนำเข้าเซสชัน WhatsApp Protocol ส่งได้เฉพาะที่ /v1/accounts/{account_id}/auth/session ผ่านออบเจ็กต์ซ้อนนี้ ไม่ใช่ provider_data เมื่อระบุออบเจ็กต์นี้ ต้องมี phone, static_pub_key, static_pri_key, identity_pub_key และ identity_pri_key การตอบกลับไม่ส่งคืนคีย์โปรโตคอลหรือข้อมูลรับรองที่ละเอียดอ่อนอื่น phone ใช้ตรวจสอบความสอดคล้องของตัวตน ส่วนคีย์สาธารณะและคีย์ส่วนตัวของโปรโตคอลใช้เฉพาะสำหรับเริ่มต้นระบบต้นทาง แพลตฟอร์มใส่ edge_routing แบบตายตัว ห้ามผู้เรียกส่งฟิลด์นี้
phoneหมายเลขโทรศัพท์มีช่องว่าง ขีด วงเล็บ หรือเครื่องหมายบวกได้ เซิร์ฟเวอร์จะปรับให้เป็นสตริงตัวเลขจำนวนบวก
minLength: 1
platformค่าแพลตฟอร์มสำหรับนำเข้าเซสชัน WhatsApp Protocol (int32)
format: int32
app_versionเวอร์ชันแอปสำหรับนำเข้าเซสชัน WhatsApp Protocol
server_addressที่อยู่เซิร์ฟเวอร์ของ provider สำหรับนำเข้าเซสชัน WhatsApp Protocol
fallback_server_addresses[]รายการที่อยู่เซิร์ฟเวอร์สำรองสำหรับนำเข้าเซสชัน WhatsApp Protocol
countryรหัสประเทศสำหรับนำเข้าเซสชัน WhatsApp Protocol
deviceค่าอุปกรณ์สำหรับนำเข้าเซสชัน WhatsApp Protocol (uint32)
format: uint32
static_pub_keyคีย์สาธารณะของโปรโตคอล เขียนได้อย่างเดียว
minLength: 1
static_pri_keyคีย์ส่วนตัวของโปรโตคอล เขียนได้อย่างเดียว
minLength: 1
identity_pub_keyคีย์สาธารณะของตัวตน เขียนได้อย่างเดียว
minLength: 1
identity_pri_keyคีย์ส่วนตัวของตัวตน เขียนได้อย่างเดียว
minLength: 1
hashฟิลด์ความเข้ากันได้ที่เลิกใช้แล้ว ปัจจุบันค่าจะถูกละเลยและไม่บันทึก แนะนำให้ละไว้
peer_kem_publicคีย์สาธารณะ KEM ของอีกฝ่าย เขียนได้อย่างเดียว
auth_hex_dataข้อมูลยืนยันตัวตนปัจจุบันในรูปเลขฐานสิบหก เขียนได้อย่างเดียว
authhexdataฟิลด์ข้อมูลยืนยันตัวตนแบบเก่าในรูปเลขฐานสิบหกที่เลิกใช้แล้ว เขียนได้อย่างเดียว
pq_handshake_modeโหมด PQ handshake สำหรับนำเข้าเซสชัน WhatsApp Protocol
use_xxkem_handshakeระบุว่าจะใช้ XXKEM handshake สำหรับนำเข้าเซสชัน WhatsApp Protocol หรือไม่
ทำความเข้าใจผลลัพธ์
อ่านผลยืนยันตัวตนแล้วตรวจสอบ runtime_status การนำเข้าเซสชันและการเชื่อมต่อออนไลน์เป็นคนละขั้นตอน
การตอบกลับ 200 OK
{
"request_id": "<REQUEST_ID>",
"data": {
"account_id": "acc_example",
"status": "authorized"
}
}
เนื้อหาการตอบกลับ
account_idบัญชีของผู้ให้บริการที่การตอบกลับนี้อ้างถึง
statusสถานะ flow การให้สิทธิ์ปัจจุบัน เช่น pending_auth, awaiting_qr_scan, awaiting_code, pending, passkey_required, passkey_pending, passkey_confirmation, passkey_confirmation_sent, authorized หรือ failed
การตอบกลับ
200200 OK
คำขอสำเร็จ ดูตัวอย่างเนื้อหาตอบกลับด้านบน
400Bad Request
เนื้อหาของคำขอ path หรือพารามิเตอร์ไม่ถูกต้อง
401Unauthorized
ส่วนหัว X-Api-Key หายไปหรือไม่ถูกต้อง
409Conflict
การดำเนินการขัดแย้งกับบัญชีของผู้ให้บริการหรือทรัพยากรที่มีอยู่
500Internal Server Error
บริการพบข้อผิดพลาดที่ไม่คาดคิด
502Bad Gateway
อะแดปเตอร์หรือ upstream provider ไม่สามารถทำรายการให้เสร็จได้
เมื่อคำขอล้มเหลว
ตรวจ HTTP และ error.code/numeric_code เก็บ request_id แล้วแก้พารามิเตอร์ ยืนยันตัวตนต่อ หรือตรวจ runtime ตามสาเหตุ ตรวจผลครั้งก่อนก่อนส่งหรือเขียนซ้ำ อ้างอิงรหัสข้อผิดพลาด
- invalid_request · 10000 · 400
- ตรวจฟิลด์บังคับ รูปแบบ และเงื่อนไขช่องทาง แล้วแก้คำขอ
- invalid_api_key · 11001 · 401
- ตรวจ X-Api-Key และว่า workspace ยังใช้งานอยู่
- provider_invalid_request · 30001 · 400
- ตรวจฟิลด์บังคับ รูปแบบ และเงื่อนไขช่องทาง แล้วแก้คำขอ