Data types
JSON
Any valid JSON
OID
24 character hex string to represent a unique identifier
PLUG_ID
String: "PLUG_PREFIX-ID" // unique identifier for a Produciton Thing or Controller in the CloudPlugs IoT platform
PLUG_ID_CSV
String: PLUG_ID,... (comma separated PLUG_IDs)
PLUG_FILTER
Array of device PLUG_IDs || null ( If null allow all PLUG_IDs. If the Array is empty, deny access to all PLUG_IDs)
PERM_FILTER
Object: {
of : {
r : PLUG_FILTER, PLUG_FILTER, PLUG_FILTER, PLUG_FILTER, // grant read permission to the PLUG_IDs listed in PLUG_FILTER
w : PLUG_FILTER // grant read/write permission to the PLUG_IDs listed in PLUG_FILTER
},
ctrl : "r" || "rw" || null
// Permissions for a Controller of the current Thing (r=Read Only; rw=Read/Write; Deny=""; null=Read/Write)
}
PLUG_PREFIX
String: "dev" || "com" || "mod" // Prefix dev describes a Controller;
// com=Company (as data publisher); mod=Production template
ROLE
String: "iot_pt" || "iot_tg" || "iot_ctrl" ;
STATUS
String: "ok" || "disabled" || "reactivate"
// Applies to Produciton Things and Controllers
//(ok=working; Disabled=not operational; reactivate=allowed to re-enroll)
SECRET
String: "Secret Key of a Production template"
// You can use it to auto generate the Enrollment password and the Control password for a Production Thing
ENROLLMENT PASSWORD
String: base64( sha1( SECRET + HWID ))
// Password used to enroll a Thing.
// String used if the Thing's Enroll password was not uploaded to platform; otherwise, it is
// Enroll password uploaded from the Thing's Production Template.
CONTROL PASSWORD
String: base64( sha1( HWID + SECRET ))
// Password used to enroll a Controller. String used if the Control password
// for a Thing's serial number or HWID was not uploaded to the platform; otherwise,
// it is the Control password uploaded from the Thing's Production Template.
TIMESTAMP
String or Number: an ISO date string or a string/number contains the milliseconds since the Epoch
TIMESTAMP_CSV
String: TIMESTAMP,... (comma separated TIMESTAMPs)
CHANNEL
String: channel name (max 200 bytes)
CHMASK
String: channel mask (max 200 bytes) // allows to filter channel names using single or multi level wildcards (+/#)
HWID
String: the hwid (or serial number)
PROP_LINKS
Object: { // Note: JSON format for linked properties object
property_name1 : {
channel: String
},
...
}