One Time Password (OTP) คือชุดรหัสผ่านใช้ครั้งเดียวที่ระบบของเราสร้างขึ้นเพื่อความปลอดภัยในการสมัครสมาชิก เข้าสู่ระบบ และเป็นรหัสผ่านผู้ใช้งาน โดยเป็นตัวเลขจำนวน 6 หลัก ที่ระบบจะส่งรหัสไปยัง SMS โทรศัพท์มือถือ หรืออีเมลเพื่อใช้ตรวจสอบและยืนยันการเป็นเจ้าของบัญชี ก่อนการเข้าถึงและเปลี่ยนแปลงข้อมูลส่วนตัวต่างๆ ซึ่งรหัสผ่านชุดนี้จะการกำหนดระยะเวลา สำหรับการใช้งานครั้งนั้นๆ หากเลยเวลาดังกล่าวจะไม่สามารถนำกลับมาใช้ได้อีก ในที่นี้จะแบ่งเป็น
- ขอรหัส OTP
- ยืนยันรหัส OTP หรือตรวจสอบรหัส OTP
ขอรหัส OTP
สำหรับการขอรหัส OTP จำเป็นจะต้องส่ง email หรือเบอร์โทรศัพท์มือถือ ไปขึ้นอยู่กับระบบที่ได้ทำการตั้งค่าไว้ ซึ่งในที่นี้ใช้เป็น เบอร์โทรศัพท์มือถือ Get OTP
curl --location --request GET 'https://buzzebees-dev.azure-api.net/api/auth/otp?app_id=123456&uuid=xxxxx&contact_number=0111111111&'
--header 'Content-Type: application/x-www-form-urlencoded; charset=utf-8'
--header 'Ocp-Apim-Subscription-Key: {Subscription-Key}'
--header 'Ocp-Apim-Trace: 1 '
--header 'App-Id: {App-Id}'
--header 'Authorization: token {token}'
ยืนยันรหัส OTP
การยืนยันรหัสผ่าน หรือการตรวจสอบรหัส OTP เป็นขั้นตอนการเช็คว่า code ที่ผู้ใช้งานกรอกนั้นถูกต้อง ซึ่งสามารถเช็คได้จาก API Check OTP หรือตามตัวอย่างด้านล่าง
curl --location --request POST 'https://buzzebees-dev.azure-api.net/api/auth/bzbs_authen'
--header 'Content-Type: application/x-www-form-urlencoded; charset=utf-8'
--header 'Ocp-Apim-Subscription-Key: {Subscription-Key}'
--header 'Ocp-Apim-Trace: 1 '
--header 'App-Id: {App-Id}'
--header 'Authorization: token {token}'
--form 'otp="xxxxxx"'
--form 'refcode="xxxxxx"'
--form 'contact_number="0111111111"'
เมื่อเช็ครหัส OTP ผ่านเรียบร้อยแล้วก็จะขึ้นอยู่กับ Flow ภายในแอปว่าต้องการจะทำไรต่อ เช่น สมัครสมาชิก หรือ เปลี่ยนเบอร์โทร อื่นๆ