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
   },
   ... 
 }
Still need help? Get in touch!
Last updated on 6th May 2021