สำหรับ User จะใช้การยืนยันตัวตนผ่านมาตรฐาน OAuth2.0 (Open Authentication) และ JWT (JSON Web Token) โดยให้บริการเป็นแบบ REST API อยู่ที่ Domain : https://oauth.nexpie.io รายละเอียดการใช้งานมีดังนี้
1. การ Login หรือทำการขอ Access Token ด้วย Username และ Password
https://oauth.nexpie.io/oauth/token
POST
Content-type : application/form-data
Authorization : Basic Application Client ID
grant_type
:string ระบุเป็น "password" (เป็นค่าตามมาตรฐานของ OAuth)
username
:string คือ Account หรือ Email ที่ลงทะเบียนไว้ใน Platform
password
:string คือ Password ที่ลงทะเบียนไว้ใน Platform
UserToken
:object (หรือ Error Message)
access_token => JWT ที่จะนำไปใช้แสดงตัวตนเมื่อจะใช้งาน Services อื่น ๆ ภายใน Platform
token_type => ประเภทของ Token (ค่า Default คือ Bearer)
expires_in => วันเวลาที่ Access Token จะหมดอายุ (Timestamp)
refresh_token => รหัสที่ใช้ในการขอ Access Token ใหม่กรณีที่หมดอายุ
scope => สิทธิ์การใช้งาน (Authorization)
userinfo => ข้อมูล User (Object)
2. การ Re-new Token เมื่อ Access Token กำลังจะหมดอายุ
https://oauth.nexpie.io/oauth/token
POST
Content-type : application/form-data
Authorization : Basic Application Client ID
grant_type
:string ระบุเป็น "refresh_token" (เป็นค่าตามมาตรฐานของ OAuth)
refresh_token
:string คือ รหัสที่ใช้ในการขอ Access Token ใหม่กรณีที่หมดอายุ
userid
:string คือ User ID
NewToken
:object (หรือ Error Message)
access_token => JWT ที่จะนำไปใช้แสดงตัวตนเมื่อจะใช้งาน Services อื่น ๆ ภายใน Platform
token_type => ประเภทของ Token (ค่า Default คือ Bearer)
expires_in => วันเวลาที่ Access Token จะหมดอายุ (Timestamp)
refresh_token => รหัสที่ใช้ในการขอ Access Token ใหม่กรณีที่หมดอายุ
3. การ Logout หรือยกเลิกการใช้งาน Access Token และ Refresh Token
https://oauth.nexpie.io/user/logout
POST
refresh_token
:string คือ รหัสที่ใช้ในการขอ Access Token ใหม่กรณีที่หมดอายุ
NewToken
:object (หรือ Error Message)
status => Response Code
error => ข้อความแจ้งความผิดพลาด(ถ้าดำเนินการไม่สำเร็จ)
result => ข้อมูล User Token ที่ยกเลิกการใช้งานได้สำเร็จ
สำหรับ Device จะใช้การยืนยันตัวตนโดยใช้ Device ID (Unique ID) และ Token โดยเข้าไปที่ https://portal.nexpie.io เพื่อเข้าไปสร้างข้อมูล Device ที่จะต้องใช้ในการเชื่อมต่อ Platform ดูรายเอียดได้ที่ การนำ Key ไปใช้กับ Device เพื่อเชื่อมต่อ Platform