จะเป็น Function ที่ใช้ในการดึงข้อมูลเพียงอย่างเดียว ประกอบด้วย
สำหรับเข้าถึงข้อมูล Billing Account ซึ่งเป็นข้อมูล Account ที่จะรับผิดชอบค่าใช้จ่ายที่เกิดขึ้นจากการใช้งาน Platform รายละเอียดดังนี้
Arguments
billingaccountid
: String คือ รหัสของ Billing Account (ต้องระบุค่า)
Query Variables
Authorization
: JWT Token
Response Type : [BillingAccount]
ตอบกลับเป็น Array ของ Object Type BillingAccount ประกอบด้วย
billingaccountid
: String คือ รหัสของ Billing Account
billingaccountname
: String คือ ชื่อของ Billing Account
balance
: Int คือ ยอดเงินคงเหลือจากการเติมเงินเพื่อใช้บริการ (Prepaid)
quota
: JSON คือ โควต้าการใช้งานที่ยังสามารถใช้บริการต่าง ๆ ใน Platform ได้ ประกอบด้วย
apicall
: Int คือ โควต้าคงเหลือของการใช้บริการที่เกี่ยวกับ API
message
: Int คือ โควต้าคงเหลือที่นับเป็น message ของการใช้บริการ Platform
shadowops
: Int คือ โควต้าคงเหลือของการใช้บริการเกี่ยวกับ Shadow
store
: Int คือ โควต้าคงเหลือเกี่ยวกับการเก็บข้อมูล (Feed)
trigger
: Int คือ โควต้าคงเหลือของการใช้บริการเกี่ยวกับ Trigger(รายละเอียดการคิดโควต้าการใช้งานสามารถดูได้ที่หัวข้อ Billing)
available
: Boolean คือ สถานะการอนุญาตให้ใช้งาน Platform (true
อนุญาตให้ใช้งาน,false
ไม่อนุญาตให้ใช้งาน)
createdtime
: Timestamp คือ วันเวลาที่สร้าง Billing Account
updatedtime
: Timestamp คือ วันเวลาที่มีการอัพเดทข้อมูลล่าสุด
ตัวอย่างการเข้าถึงข้อมูล Billing Account ดังรูปด้านล่าง
สำหรับขอข้อมูลจำนวน Device ภายใต้แต่ละ Project รายละเอียดดังนี้
Arguments
projectid
: String คือ รหัสของ Project ที่ต้องการทราบจำนวน Device ที่อยู่ภายใต้ (ต้องระบุค่า)
Query Variables
Authorization
: JWT Token
Response Type : Count
ตอบกลับเป็น Object Type Count ประกอบด้วย
length
: Int คือ จำนวน Device ทั้งหมดที่อยู่ภายใต้ Project
ตัวอย่างการขอข้อมูลจำนวน Device ภายใต้แต่ละ Project ดังรูปด้านล่าง
สำหรับขอข้อมูลจำนวน Group ภายใต้แต่ละ Project รายละเอียดดังนี้
Arguments
projectid
: String คือ รหัสของ Project ที่ต้องการทราบจำนวน Group ที่อยู่ภายใต้ (ต้องระบุค่า)
Query Variables
Authorization
: JWT Token
Response Type : Count
ตอบกลับเป็น Object Type Count ประกอบด้วย
length
: Int คือ จำนวน Group ทั้งหมดที่อยู่ภายใต้ Project
ตัวอย่างการขอข้อมูลจำนวน Group ภายใต้แต่ละ Project ดังรูปด้านล่าง
สำหรับขอข้อมูลจำนวน Project ที่มีสิทธิ์เข้าถึงได้ รายละเอียดดังนี้
Arguments
ไม่มี
Query Variables
Authorization
: JWT Token
Response Type : Count
ตอบกลับเป็น Object Type Count ประกอบด้วย
length
: Int คือ จำนวน Project ที่มีสิทธิ์เข้าถึงได้
ตัวอย่างการขอข้อมูลจำนวน Project ที่มีสิทธิ์เข้าถึงได้ ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูลการตั้งค่า Event Hook รายละเอียดดังนี้
Arguments
projectid: String คือ รหัสของ Project (ต้องระบุ)
hookid: String คือ รหัสของ Hook
Query Variables
Authorization
: JWT Token
Response Type : [Hook]
ตอบกลับเป็น Array ของ Object Type Hook ประกอบด้วย
projectid
: String คือ รหัสของ Project
name
: String คือ ชื่อของ Event Hook
hookid
: String คือ รหัสของ Event Hook
description
: String คือ คำอธิบายของ Event Hook
type
: String คือ ประเภทของ Event Hook
enabled
: Boolean คือ สถานะการทำงานของ Event Hook (true
เปิดให้ทำงาน,false
ปิดการทำงาน)
param
: JSON คือ Parameter ต่างๆ ที่ตั้งค่าไว้ใน Event Hook
ตัวอย่างการเข้าถึงข้อมูล Event Hook ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูล Device รายละเอียดดังนี้
Arguments (ต้องระบุอย่างน้อย 1 ค่า ที่ไม่ใช่ตัวแปร Option)
deviceid
: String คือ รหัสของ Device
projectid
: String คือ รหัสของ Project
groupid
: String คือ รหัสของ Group
tag
: String คือ แท็กของ Device
sort
: OptionSort คือ การเรียงลำดับข้อมูล Object Type OptionSort ประกอบด้วย
createdtime
: Boolean คือ เรียงตามวันเวลาที่สร้าง Device ใช่หรอไม่ (true
ใช่ ค่า default,false
ไม่ใช่)
desc
: Boolean คือ ประเภทการเรียงลำดับจากวันเวลาที่สร้าง Device (true
จากใหม่ไปเก่า,false
จากเก่าไปใหม่)(ณ ปัจจุบัน ฟิลด์ที่ใช้เรียงลำดับได้มีเพียง createdtime เท่านั้น)
limit
: OptionLimit คือ การจำกัดจำนวนข้อมูล Object Type OptionLimit ประกอบด้วย
start
: Int คือ เริ่มต้นดึงข้อมูลที่ชุดข้อมูลลำดับเท่าไหร่ (เริ่มต้นที่ศูนย์)
count
: Int คือ จำนวนชุดข้อมูลที่ต้องการ
Query Variables
Authorization
: JWT Token
Response Type : [Device]
ตอบกลับเป็น Array ของ Object Type Device ประกอบด้วย
alias
: String คือ ชื่อของ Device
billing
: String คือ รหัสผู้ใช้ที่รับผิดชอบค่าใช้จ่าย
createdtime
: Timestamp คือ วันเวลาที่สร้าง Device
credential
: credential คือ ข้อมูลสำหรับยืนยันตัวตน Object Type credential ประกอบด้วย
secret
: String คือ รหัสลับของ Device สำหรับใช้ Authentication
description
: String คือ คำอธิบาย Device
deviceid
: String คือ รหัสของ Device
groupid
: String คือ รหัสของ Group ที่ Device อยู่ภายใต้
groupname
: String คือ ชื่อของ Group ที่ Device อยู่ภายใต้
projectid
: String คือ รหัสของ Project ที่ Device อยู่ภายใต้
status
: Int คือ สถานะการเชื่อมต่อ Platform ของ Device (0
offline,1
online)
tag
: String คือ แท็กของ Device
user
: String คือ รหัสผู้ใช้ที่สร้าง Device
id
: String คือ Primary Key ของ Device
ตัวอย่างการเข้าถึงข้อมูล Device ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูล Token ของ Device รายละเอียดดังนี้
Arguments
deviceid
: String คือ รหัสของ Device (ต้องระบุค่า)
Query Variables
Authorization
: JWT Token
Response Type : DeviceToken
ตอบกลับเป็น Object Type DeviceToken ประกอบด้วย
deviceid
: String คือ รหัสของ Device
tokencode
: String คือ รหัสของ Token
iat
: String คือ วันเวลาที่ออก Token (issued at)
nbf
: String คือ วันเวลาที่ Token จะเริ่มใช้งานได้ (not before)
exp
: String คือ วันเวลาหมดอายุของ Token (expiration time)
expireIn
: String คือ อายุของ Token
ตัวอย่างการเข้าถึงข้อมูล Token ของ Device ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูล Group ซึ่งใช้ในการจัดกลุ่ม Device โดย Device ที่อยู่กลุ่มเดียวกันถึงจะสามารถสื่อสารกันได้ รายละเอียดดังนี้
Arguments (ต้องระบุอย่างน้อย 1 ค่า)
groupid
: String คือ รหัสของ Group
projectid
: String คือ รหัสของ Project
tag
: String คือ แท็กของ Group
Query Variables
Authorization
: JWT Token
Response Type : [Group]
ตอบกลับเป็น Array ของ Object Type Group ประกอบด้วย
groupid
: String คือ รหัสของ Group
groupname
: String คือ ชื่อของ Group
projectid
: String คือ รหัสของ Project ที่ Group อยู่ภายใต้
createdtime
: Timestamp คือ วันเวลาที่สร้าง Group
description
: String คือ คำอธิบาย Group
tag
: String คือ แท็กของ Group
ตัวอย่างการเข้าถึงข้อมูล Group ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูล Membership ใช้ในการให้สิทธิ์ผู้ใช้คนอื่นสามารถเข้าถึงข้อมูลในแต่ละ Project ที่ตนเองไม่ได้เป็นเจ้าของได้ รายละเอียดดังนี้
Arguments
projectid
: String คือ รหัสของ Project (ต้องระบุค่า)
Query Variables
Authorization
: JWT Token
Response Type : [Membership]
ตอบกลับเป็น Array ของ Object Type Membership ประกอบด้วย
createdtime
: Timestamp คือ วันเวลาที่สร้าง Membership
level
: String คือ ระดับชั้นของการเป็นสมาชิก
projectid
: String คือ รหัสของ Project ที่ Membership อยู่ภายใต้
ตัวอย่างการเข้าถึงข้อมูล Membership ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูล Project รายละเอียดดังนี้
Arguments (ต้องระบุอย่างน้อย 1 ค่า)
projectid
: String คือ รหัสของ Project
tag
: String คือ แท็กของ Project
Query Variables
Authorization
: JWT Token
Response Type : [Project]
ตอบกลับเป็น Array ของ Object Type Project ประกอบด้วย
projectname
: String คือ ชื่อของ Project
projectid
: String คือ รหัสของ Project
createdtime
: Timestamp คือ วันเวลาที่สร้าง Project
description
: String คือ คำอธิบาย Project
tag
: String คือ แท็กของ Project
numberdevice
: Int คือ จำนวน Device ภายใต้ Project
numbergroup
: Int คือ จำนวน Group ภายใต้ Project
numberdeviceonline
: Int คือ จำนวน Device ที่เชื่อมต่อ Platform อยู่ ณ ขณะนั้นภายใต้ Project
numberdeviceoffline
: Int คือ จำนวน Device ที่ไม่ได้เชื่อมต่อ Platform อยู่ ณ ขณะนั้นภายใต้ Project
ตัวอย่างการเข้าถึงข้อมูล Project ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูลการใช้บริการทั้งหมดของแต่ละ Project รายละเอียดดังนี้
Arguments
projectid
: String คือ รหัสของ Project (ต้องระบุ)
Query Variables
Authorization
: JWT Token
Response Type : ProjectBilling
ตอบกลับเป็น Object Type ProjectBilling ประกอบด้วย
billingaccountid
: String คือ รหัสของ Billing Account
createdtime
: Timestamp คือ วันเวลาที่สร้าง Project Billing
updatedtime
: Timestamp คือ วันเวลาที่อัพเดทข้อมูลล่าสุด
usage
: JSON คือ ข้อมูลการใช้บริการ
ตัวอย่างการเข้าถึงข้อมูล Project Billing ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูล Shadow Schema ของ Device รายละเอียดดังนี้
Arguments
deviceid
: String คือ รหัสของ Device (ต้องระบุค่า)
Query Variables
Authorization
: JWT Token
Response Type : Schema
ตอบกลับเป็น Object Type Schema ประกอบด้วย
deviceid
: String คือ รหัสของ Device
value
: JSON คือ Shadow Schema ที่กำหนดไว้ ซึ่งจะอยู่ในรูปแบบ JSON
ตัวอย่างการเข้าถึงข้อมูล Shadow Schema ของ Device ดังรูปด้านล่าง
สำหรับเข้าถึงข้อมูล Shadow ของ Device รายละเอียดดังนี้
Arguments
deviceid
: String คือ รหัสของ Device (ต้องระบุค่า)
command
: String คือ ระบุ JSON Path โครงสร้าง Shadow ที่ต้องการเข้าถึงค่า (กรณีที่ต้องการข้อมูลบางส่วนใน Shadow)
Query Variables
Authorization
: JWT Token
Response Type : Shadow
ตอบกลับเป็น Object Type Shadow ประกอบด้วย
deviceid
: String คือ รหัสของ Device
data
: JSON คือ Shadow ที่กำหนดไว้ ซึ่งจะอยู่ในรูปแบบ JSON
rev
: Int คือ เลขที่ Revision
modified
: Timestamp คือ วันเวลาที่มีการแก้ไขข้อมูลล่าสุด
ตัวอย่างการเข้าถึงข้อมูล Shadow ของ Device แบบไม่ระบุ command
จะได้ Shadow มาทั้งหมด ดังรูปด้านล่าง
ตัวอย่างการเข้าถึงข้อมูล Shadow ของ Device แบบไม่ระบุ command
จะได้ Shadow มาทั้งหมด ดังรูปด้านล่าง
Note
การส่งค่า command
Parameter ในการ Query Shadow
ตัวอย่างโครงสร้างข้อมูล Shadow เป็นดังนี้
{ "bedroom": { "humit": 60.3, "temp": 25.4 }, "humit": 67.9, "temp": 29 }
สามารถกำหนด command
ได้ 2 แบบ คือ
แบบที่ 1 value:[Shadow Path ของ Attribute ที่ต้องการค่า] เช่น
command
: "value:bedroom.temp" ได้ผลลัพธ์เป็น 25.4
command
: "value:temp" ได้ผลลัพธ์เป็น 29
แบบที่ 2 กำหนดในรูปแบบ JSON String เช่น
command
: "{'value':'bedroom.temp'}" ได้ผลลัพธ์เป็น 25.4
command
: "{'value':'temp'}" ได้ผลลัพธ์เป็น 29
สำหรับเข้าถึงข้อมูล Trigger ของ Device รายละเอียดดังนี้
Arguments
deviceid
: String คือ รหัสของ Device (ต้องระบุค่า)
Query Variables
Authorization
: JWT Token
Response Type : Trigger
ตอบกลับเป็น Object Type Trigger ประกอบด้วย
id
: String คือ Primary Key ของ Device
deviceid
: String คือ รหัสของ Device
value
: JSON คือ การตั้งค่า Trigger ที่กำหนดไว้ ซึ่งจะอยู่ในรูปแบบ JSON
ตัวอย่างการเข้าถึงข้อมูล Trigger ของ Device ดังรูปด้านล่าง