API ตรวจสอบผลลัพธ์

คำอธิบาย

เซิร์ฟเวอร์ของ APP เรียกใช้อินเทอร์เฟซนี้เพื่อส่งข้อมูลที่เข้ารหัส (payload) ที่ Engagelab SDK ส่งกลับมาไปยังเซิร์ฟเวอร์ Engagelab เพื่อตรวจสอบความตรงกันของหมายเลขโทรศัพท์

ข้อมูลอินเทอร์เฟซ

รายการ คำอธิบาย
เส้นทางคำขอ POST /v1/verify
โปรโตคอล HTTPS
วิธีการยืนยันตัวตน HTTP Basic Auth
Content-Type application/json

โดเมนล่าสุด: authapi.engagelab.com

ตัวอย่างคำขอ

curl -X POST 'https://{authapi.engagelab.com}/v1/verify' \ -H 'Authorization: Basic dG40bm0wcXgwMzJ5eDZmMTdxMnRzYThmOnlvdXJfYXBwX3NlY3JldF9oZXJl' \ -H 'Content-Type: application/json' \ -d '{ "payload": "uh/vX6WTi0vipwIBnUyt11h1OuDVImzWR/JuyySaztqmQLx1FKz6Xkpq83IhlEMi..." }'
              
              curl -X POST 'https://{authapi.engagelab.com}/v1/verify' \
  -H 'Authorization: Basic dG40bm0wcXgwMzJ5eDZmMTdxMnRzYThmOnlvdXJfYXBwX3NlY3JldF9oZXJl' \
  -H 'Content-Type: application/json' \
  -d '{
    "payload": "uh/vX6WTi0vipwIBnUyt11h1OuDVImzWR/JuyySaztqmQLx1FKz6Xkpq83IhlEMi..."
  }'

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

วิธีการยืนยันตัวตน

ใช้ HTTP Basic Auth ในการยืนยันตัวตน:

Authorization: Basic base64(appKey:appSecret)
              
              Authorization: Basic base64(appKey:appSecret)

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

ตัวอย่าง:

  • appKey: tn4nm0qx032yx6f17q2tsa8f
  • appSecret: your_app_secret_here
  • การเข้ารหัส base64: dG40bm0wcXgwMzJ5eDZmMTdxMnRzYThmOnlvdXJfYXBwX3NlY3JldF9oZXJl
Authorization: Basic dG40bm0wcXgwMzJ5eDZmMTdxMnRzYThmOnlvdXJfYXBwX3NlY3JldF9oZXJl
              
              Authorization: Basic dG40bm0wcXgwMzJ5eDZmMTdxMnRzYThmOnlvdXJfYXBwX3NlY3JldF9oZXJl

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

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

ชื่อพารามิเตอร์ ชนิด จำเป็น คำอธิบาย
payload string ใช่ ข้อมูลที่เข้ารหัสซึ่ง Engagelab SDK ส่งกลับมา และ APP ส่งต่อตามเดิม

ตัวอย่างเนื้อหาคำขอ:

{ "payload": "uh/vX6WTi0vipwIBnUyt11h1OuDVImzWR/JuyySaztqmQLx1FKz6Xkpq83IhlEMi..." }
              
              {
  "payload": "uh/vX6WTi0vipwIBnUyt11h1OuDVImzWR/JuyySaztqmQLx1FKz6Xkpq83IhlEMi..."
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

พารามิเตอร์การตอบกลับ

การตอบกลับสำเร็จ (HTTP 200)

ชื่อพารามิเตอร์ ชนิด คำอธิบาย
code int รหัสสถานะ; 0 หมายถึงสำเร็จ
msg string คำอธิบายสถานะ
data object ข้อมูลการตอบกลับ
data.message_id string ตัวระบุข้อความที่ไม่ซ้ำกัน ใช้สำหรับการแก้ไขปัญหาได้
data.verified boolean ผลการตรวจสอบหมายเลข; true หมายถึงตรงกัน, false หมายถึงไม่ตรงกัน

ตัวอย่างสำเร็จ (ตรวจสอบผ่าน):

{ "code": 0, "msg": "success", "data": { "message_id": "1876123456789012345", "verified": true } }
              
              {
  "code": 0,
  "msg": "success",
  "data": {
    "message_id": "1876123456789012345",
    "verified": true
  }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

ตัวอย่างสำเร็จ (ตรวจสอบไม่ผ่าน):

{ "code": 0, "msg": "success", "data": { "message_id": "1876123456789012345", "verified": false } }
              
              {
  "code": 0,
  "msg": "success",
  "data": {
    "message_id": "1876123456789012345",
    "verified": false
  }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

การตอบกลับข้อผิดพลาด (HTTP 4xx/5xx)

ชื่อพารามิเตอร์ ชนิด คำอธิบาย
code int รหัสข้อผิดพลาด
msg string คำอธิบายข้อผิดพลาด

ตัวอย่างข้อผิดพลาด:

{ "code": 2001, "msg": "auth failed" }
              
              {
  "code": 2001,
  "msg": "auth failed"
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

คำอธิบายรหัสข้อผิดพลาด

รหัสข้อผิดพลาด รหัสสถานะ HTTP คำอธิบาย คำแนะนำในการจัดการ
1000 500 ข้อผิดพลาดภายในเซิร์ฟเวอร์ โปรดลองใหม่ภายหลัง หากยังเกิดขึ้นต่อเนื่องโปรดติดต่อฝ่ายสนับสนุนทางเทคนิค
2001 401 การยืนยันตัวตนล้มเหลว ตรวจสอบว่า appKey และ appSecret ถูกต้องหรือไม่ และรูปแบบ Authorization เป็นไปตามข้อกำหนดหรือไม่
2004 401 appKey ไม่ถูกต้อง ตรวจสอบว่า appKey ถูกต้องหรือไม่ หรือติดต่อฝ่ายสนับสนุนทางเทคนิคเพื่อยืนยันว่าเปิดใช้บริการแล้วหรือไม่
3001 400 รูปแบบพารามิเตอร์ไม่ถูกต้อง ตรวจสอบว่าเนื้อหาคำขอเป็น JSON ที่ถูกต้องหรือไม่
3002 400 การตรวจสอบพารามิเตอร์ล้มเหลว ตรวจสอบว่าพารามิเตอร์ payload มีอยู่และมีรูปแบบถูกต้องหรือไม่
3003 400 appKey ไม่ตรงกัน appKey ใน payload ไม่ตรงกับ appKey ในส่วนหัวการยืนยันตัวตน โปรดตรวจสอบให้แน่ใจว่าใช้คู่คีย์ที่ถูกต้อง
3004 400 การกำหนดค่ายังไม่เปิดใช้งาน การกำหนดค่าบริการยังไม่ได้เปิดใช้งาน โปรดติดต่อฝ่ายสนับสนุนทางเทคนิคเพื่อเปิดใช้งาน
3005 400 ยอดเงินไม่เพียงพอ ยอดเงินในบัญชีไม่เพียงพอ โปรดเติมเงินแล้วลองใหม่
4001 400 ไม่พบการกำหนดค่า ไม่พบการกำหนดค่าบริการที่เกี่ยวข้อง โปรดติดต่อฝ่ายสนับสนุนทางเทคนิค
5001 400 การตรวจสอบล้มเหลว เกิดข้อยกเว้นระหว่างกระบวนการยืนยันตัวตนของผู้ให้บริการเครือข่าย สามารถตรวจสอบตามข้อมูลใน msg หรือติดต่อฝ่ายสนับสนุนทางเทคนิค

ข้อควรระวัง

  1. การส่งต่อ payload: หลังจาก APP ได้รับ payload ที่ Engagelab SDK ส่งกลับมา ต้องส่งต่อตามเดิมไปยังเซิร์ฟเวอร์ของ APP จากนั้นเซิร์ฟเวอร์ของ APP จึงเรียกใช้อินเทอร์เฟซนี้ อย่าแก้ไข payload ไม่ว่ากรณีใด ๆ
  2. คำแนะนำด้านความปลอดภัย: โปรดเก็บ appSecret ไว้อย่างปลอดภัยและใช้เฉพาะฝั่งเซิร์ฟเวอร์เท่านั้น อย่าเปิดเผยใน APP
  3. ผลการตรวจสอบ: ค่า verified เท่ากับ false หมายความว่าหมายเลขโทรศัพท์ที่ผู้ใช้กรอกไม่ตรงกับหมายเลขของซิมการ์ด และควรปฏิเสธการเข้าสู่ระบบของผู้ใช้
Icon Solid Transparent White Qiyu
ติดต่อฝ่ายขาย