losant_rest 2.0.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. checksums.yaml +4 -4
  2. data/docs/_schemas.md +140925 -67028
  3. data/docs/application.md +27 -27
  4. data/docs/applicationApiToken.md +1 -1
  5. data/docs/applicationApiTokens.md +1 -1
  6. data/docs/applicationCertificate.md +3 -3
  7. data/docs/applicationCertificateAuthorities.md +2 -2
  8. data/docs/applicationCertificateAuthority.md +3 -3
  9. data/docs/applicationCertificates.md +5 -4
  10. data/docs/applicationDashboard.md +5 -5
  11. data/docs/applicationDashboards.md +2 -2
  12. data/docs/applicationJobLog.md +1 -1
  13. data/docs/applicationJobLogs.md +1 -1
  14. data/docs/applicationKey.md +3 -3
  15. data/docs/applicationKeys.md +2 -2
  16. data/docs/applicationTemplate.md +1 -1
  17. data/docs/applicationTemplates.md +3 -3
  18. data/docs/applications.md +5 -5
  19. data/docs/auditLog.md +1 -1
  20. data/docs/auditLogs.md +1 -1
  21. data/docs/auth.md +1 -1
  22. data/docs/credential.md +4 -4
  23. data/docs/credentials.md +2 -2
  24. data/docs/dashboard.md +4 -4
  25. data/docs/dashboards.md +3 -2
  26. data/docs/data.md +3 -3
  27. data/docs/dataTable.md +5 -5
  28. data/docs/dataTableRow.md +4 -4
  29. data/docs/dataTableRows.md +9 -9
  30. data/docs/dataTables.md +2 -2
  31. data/docs/device.md +15 -15
  32. data/docs/deviceAttribute.md +3 -3
  33. data/docs/deviceAttributes.md +2 -2
  34. data/docs/deviceRecipe.md +4 -4
  35. data/docs/deviceRecipes.md +2 -2
  36. data/docs/devices.md +14 -14
  37. data/docs/edgeDeployment.md +1 -1
  38. data/docs/edgeDeployments.md +7 -7
  39. data/docs/embeddedDeployment.md +1 -1
  40. data/docs/embeddedDeployments.md +8 -8
  41. data/docs/event.md +3 -3
  42. data/docs/events.md +6 -6
  43. data/docs/experience.md +3 -3
  44. data/docs/experienceDomain.md +3 -3
  45. data/docs/experienceDomains.md +2 -2
  46. data/docs/experienceEndpoint.md +4 -4
  47. data/docs/experienceEndpoints.md +3 -3
  48. data/docs/experienceGroup.md +3 -3
  49. data/docs/experienceGroups.md +2 -2
  50. data/docs/experienceSlug.md +3 -3
  51. data/docs/experienceSlugs.md +2 -2
  52. data/docs/experienceUser.md +3 -3
  53. data/docs/experienceUsers.md +2 -2
  54. data/docs/experienceVersion.md +3 -3
  55. data/docs/experienceVersions.md +2 -2
  56. data/docs/experienceView.md +4 -4
  57. data/docs/experienceViews.md +2 -2
  58. data/docs/file.md +9 -9
  59. data/docs/files.md +3 -3
  60. data/docs/flow.md +11 -11
  61. data/docs/flowVersion.md +6 -6
  62. data/docs/flowVersions.md +4 -4
  63. data/docs/flows.md +5 -5
  64. data/docs/instance.md +8 -8
  65. data/docs/instanceApiToken.md +1 -1
  66. data/docs/instanceApiTokens.md +2 -2
  67. data/docs/instanceAuditLog.md +1 -1
  68. data/docs/instanceAuditLogs.md +1 -1
  69. data/docs/instanceCustomNode.md +5 -5
  70. data/docs/instanceCustomNodes.md +2 -2
  71. data/docs/instanceMember.md +2 -2
  72. data/docs/instanceMembers.md +1 -1
  73. data/docs/instanceNotificationRule.md +5 -5
  74. data/docs/instanceNotificationRules.md +2 -2
  75. data/docs/instanceOrg.md +8 -8
  76. data/docs/instanceOrgInvite.md +3 -3
  77. data/docs/instanceOrgInvites.md +2 -2
  78. data/docs/instanceOrgMember.md +1 -1
  79. data/docs/instanceOrgMembers.md +3 -2
  80. data/docs/instanceOrgs.md +3 -3
  81. data/docs/instanceSandbox.md +7 -7
  82. data/docs/instanceSandboxes.md +1 -1
  83. data/docs/instances.md +1 -1
  84. data/docs/integration.md +3 -3
  85. data/docs/integrations.md +2 -2
  86. data/docs/me.md +21 -21
  87. data/docs/notebook.md +10 -10
  88. data/docs/notebooks.md +2 -2
  89. data/docs/org.md +14 -14
  90. data/docs/orgs.md +2 -2
  91. data/docs/privateFile.md +9 -9
  92. data/docs/privateFiles.md +3 -3
  93. data/docs/resourceJob.md +8 -8
  94. data/docs/resourceJobs.md +2 -2
  95. data/docs/userApiToken.md +3 -3
  96. data/docs/userApiTokens.md +4 -4
  97. data/docs/userOauthToken.md +125 -0
  98. data/docs/userOauthTokens.md +87 -0
  99. data/docs/webhook.md +3 -3
  100. data/docs/webhooks.md +2 -2
  101. data/lib/platform_rest/application.rb +21 -21
  102. data/lib/platform_rest/application_api_token.rb +1 -1
  103. data/lib/platform_rest/application_api_tokens.rb +1 -1
  104. data/lib/platform_rest/application_certificate.rb +3 -3
  105. data/lib/platform_rest/application_certificate_authorities.rb +2 -2
  106. data/lib/platform_rest/application_certificate_authority.rb +3 -3
  107. data/lib/platform_rest/application_certificates.rb +7 -4
  108. data/lib/platform_rest/application_dashboard.rb +5 -5
  109. data/lib/platform_rest/application_dashboards.rb +2 -2
  110. data/lib/platform_rest/application_job_log.rb +1 -1
  111. data/lib/platform_rest/application_job_logs.rb +1 -1
  112. data/lib/platform_rest/application_key.rb +3 -3
  113. data/lib/platform_rest/application_keys.rb +2 -2
  114. data/lib/platform_rest/application_template.rb +1 -1
  115. data/lib/platform_rest/application_templates.rb +3 -3
  116. data/lib/platform_rest/applications.rb +3 -3
  117. data/lib/platform_rest/audit_log.rb +1 -1
  118. data/lib/platform_rest/audit_logs.rb +1 -1
  119. data/lib/platform_rest/client.rb +10 -2
  120. data/lib/platform_rest/credential.rb +4 -4
  121. data/lib/platform_rest/credentials.rb +2 -2
  122. data/lib/platform_rest/dashboard.rb +4 -4
  123. data/lib/platform_rest/dashboards.rb +3 -2
  124. data/lib/platform_rest/data.rb +3 -3
  125. data/lib/platform_rest/data_table.rb +5 -5
  126. data/lib/platform_rest/data_table_row.rb +4 -4
  127. data/lib/platform_rest/data_table_rows.rb +9 -9
  128. data/lib/platform_rest/data_tables.rb +2 -2
  129. data/lib/platform_rest/device.rb +15 -15
  130. data/lib/platform_rest/device_attribute.rb +3 -3
  131. data/lib/platform_rest/device_attributes.rb +2 -2
  132. data/lib/platform_rest/device_recipe.rb +4 -4
  133. data/lib/platform_rest/device_recipes.rb +2 -2
  134. data/lib/platform_rest/devices.rb +14 -14
  135. data/lib/platform_rest/edge_deployment.rb +1 -1
  136. data/lib/platform_rest/edge_deployments.rb +7 -7
  137. data/lib/platform_rest/embedded_deployment.rb +1 -1
  138. data/lib/platform_rest/embedded_deployments.rb +8 -8
  139. data/lib/platform_rest/event.rb +3 -3
  140. data/lib/platform_rest/events.rb +6 -6
  141. data/lib/platform_rest/experience.rb +3 -3
  142. data/lib/platform_rest/experience_domain.rb +3 -3
  143. data/lib/platform_rest/experience_domains.rb +2 -2
  144. data/lib/platform_rest/experience_endpoint.rb +4 -4
  145. data/lib/platform_rest/experience_endpoints.rb +3 -3
  146. data/lib/platform_rest/experience_group.rb +3 -3
  147. data/lib/platform_rest/experience_groups.rb +2 -2
  148. data/lib/platform_rest/experience_slug.rb +3 -3
  149. data/lib/platform_rest/experience_slugs.rb +2 -2
  150. data/lib/platform_rest/experience_user.rb +3 -3
  151. data/lib/platform_rest/experience_users.rb +2 -2
  152. data/lib/platform_rest/experience_version.rb +3 -3
  153. data/lib/platform_rest/experience_versions.rb +2 -2
  154. data/lib/platform_rest/experience_view.rb +4 -4
  155. data/lib/platform_rest/experience_views.rb +2 -2
  156. data/lib/platform_rest/file.rb +6 -6
  157. data/lib/platform_rest/files.rb +2 -2
  158. data/lib/platform_rest/flow.rb +11 -11
  159. data/lib/platform_rest/flow_version.rb +6 -6
  160. data/lib/platform_rest/flow_versions.rb +3 -3
  161. data/lib/platform_rest/flows.rb +5 -5
  162. data/lib/platform_rest/instance.rb +8 -8
  163. data/lib/platform_rest/instance_api_token.rb +1 -1
  164. data/lib/platform_rest/instance_api_tokens.rb +2 -2
  165. data/lib/platform_rest/instance_audit_log.rb +1 -1
  166. data/lib/platform_rest/instance_audit_logs.rb +1 -1
  167. data/lib/platform_rest/instance_custom_node.rb +5 -5
  168. data/lib/platform_rest/instance_custom_nodes.rb +2 -2
  169. data/lib/platform_rest/instance_member.rb +2 -2
  170. data/lib/platform_rest/instance_members.rb +1 -1
  171. data/lib/platform_rest/instance_notification_rule.rb +5 -5
  172. data/lib/platform_rest/instance_notification_rules.rb +2 -2
  173. data/lib/platform_rest/instance_org.rb +8 -8
  174. data/lib/platform_rest/instance_org_invite.rb +3 -3
  175. data/lib/platform_rest/instance_org_invites.rb +3 -3
  176. data/lib/platform_rest/instance_org_member.rb +1 -1
  177. data/lib/platform_rest/instance_org_members.rb +3 -2
  178. data/lib/platform_rest/instance_orgs.rb +3 -3
  179. data/lib/platform_rest/instance_sandbox.rb +7 -7
  180. data/lib/platform_rest/instance_sandboxes.rb +1 -1
  181. data/lib/platform_rest/instances.rb +1 -1
  182. data/lib/platform_rest/integration.rb +3 -3
  183. data/lib/platform_rest/integrations.rb +2 -2
  184. data/lib/platform_rest/me.rb +21 -21
  185. data/lib/platform_rest/notebook.rb +9 -9
  186. data/lib/platform_rest/notebooks.rb +2 -2
  187. data/lib/platform_rest/org.rb +14 -14
  188. data/lib/platform_rest/orgs.rb +2 -2
  189. data/lib/platform_rest/private_file.rb +6 -6
  190. data/lib/platform_rest/private_files.rb +2 -2
  191. data/lib/platform_rest/resource_job.rb +8 -8
  192. data/lib/platform_rest/resource_jobs.rb +2 -2
  193. data/lib/platform_rest/user_api_token.rb +3 -3
  194. data/lib/platform_rest/user_api_tokens.rb +4 -4
  195. data/lib/platform_rest/user_oauth_token.rb +170 -0
  196. data/lib/platform_rest/user_oauth_tokens.rb +132 -0
  197. data/lib/platform_rest/version.rb +1 -1
  198. data/lib/platform_rest/webhook.rb +3 -3
  199. data/lib/platform_rest/webhooks.rb +2 -2
  200. data/lib/platform_rest.rb +2 -0
  201. data/schemas/advancedApplicationCertQuery.json +1885 -0
  202. data/schemas/advancedApplicationKeyQuery.json +763 -763
  203. data/schemas/apiToken.json +110 -1
  204. data/schemas/apiTokenPatch.json +100 -0
  205. data/schemas/apiTokenPost.json +118 -0
  206. data/schemas/apiTokens.json +120 -2
  207. data/schemas/application.json +15 -2
  208. data/schemas/applicationCertificate.json +90 -58
  209. data/schemas/applicationCertificateAuthorities.json +24 -0
  210. data/schemas/applicationCertificateAuthority.json +24 -0
  211. data/schemas/applicationCertificatePatch.json +32 -4
  212. data/schemas/applicationCertificatePost.json +28 -30
  213. data/schemas/applicationCertificates.json +90 -58
  214. data/schemas/applicationCreationByTemplateResult.json +15 -2
  215. data/schemas/applicationDashboardPost.json +183 -128
  216. data/schemas/applicationImportExecutions.json +3 -5
  217. data/schemas/applicationImportResult.json +674 -0
  218. data/schemas/applicationJobLog.json +129 -123
  219. data/schemas/applicationJobLogs.json +129 -123
  220. data/schemas/applicationKey.json +41 -41
  221. data/schemas/applicationKeyPatch.json +4 -4
  222. data/schemas/applicationKeyPost.json +36 -29
  223. data/schemas/applicationKeys.json +41 -41
  224. data/schemas/applicationSearchResult.json +10 -10
  225. data/schemas/applicationTemplates.json +9 -2
  226. data/schemas/applications.json +15 -2
  227. data/schemas/auditLog.json +2 -6
  228. data/schemas/auditLogs.json +2 -6
  229. data/schemas/authedDevice.json +3 -0
  230. data/schemas/credential.json +7 -0
  231. data/schemas/credentialLinkedResources.json +19724 -344
  232. data/schemas/credentialPatch.json +3 -0
  233. data/schemas/credentialPost.json +3 -0
  234. data/schemas/credentials.json +7 -0
  235. data/schemas/dashboard.json +203 -128
  236. data/schemas/dashboardBlockSuggestCodePost.json +19 -0
  237. data/schemas/dashboardPatch.json +183 -128
  238. data/schemas/dashboardPost.json +183 -128
  239. data/schemas/dashboardUpdateEventsResult.json +266 -0
  240. data/schemas/dashboards.json +203 -128
  241. data/schemas/dataTable.json +11 -0
  242. data/schemas/dataTableRowPatch.json +16 -0
  243. data/schemas/dataTableRowPost.json +39 -0
  244. data/schemas/dataTableRowPostResult.json +54 -0
  245. data/schemas/dataTables.json +11 -0
  246. data/schemas/device.json +259 -107
  247. data/schemas/deviceConnectionStatus.json +4 -0
  248. data/schemas/deviceLog.json +3 -0
  249. data/schemas/deviceRecipe.json +259 -108
  250. data/schemas/deviceRecipes.json +259 -108
  251. data/schemas/devices.json +287 -116
  252. data/schemas/edgeDeploymentRelease.json +4252 -39
  253. data/schemas/edgeDeployments.json +28 -0
  254. data/schemas/embeddedDeploymentRelease.json +2073 -0
  255. data/schemas/embeddedDeployments.json +25 -0
  256. data/schemas/error.json +14 -0
  257. data/schemas/event.json +4 -1
  258. data/schemas/eventPlusNewCount.json +4 -1
  259. data/schemas/events.json +4 -1
  260. data/schemas/experienceDomains.json +19 -0
  261. data/schemas/experienceEndpoint.json +19 -0
  262. data/schemas/experienceEndpoints.json +24 -0
  263. data/schemas/experienceLinkedResources.json +19728 -313
  264. data/schemas/experienceSlugs.json +19 -0
  265. data/schemas/experienceUsers.json +16 -2
  266. data/schemas/experienceVersions.json +25 -0
  267. data/schemas/experienceView.json +5 -0
  268. data/schemas/experienceViews.json +10 -0
  269. data/schemas/fileUploadPostResponse.json +92 -103
  270. data/schemas/files.json +5 -1
  271. data/schemas/flow.json +211 -46
  272. data/schemas/flowPatch.json +199 -46
  273. data/schemas/flowPost.json +199 -46
  274. data/schemas/flowStorageMetadata.json +2 -2
  275. data/schemas/flowVersion.json +450 -101
  276. data/schemas/flowVersionPost.json +199 -46
  277. data/schemas/flowVersions.json +9903 -113
  278. data/schemas/flows.json +9637 -46
  279. data/schemas/flowsImportPost.json +398 -92
  280. data/schemas/flowsImportResult.json +661 -147
  281. data/schemas/githubLogin.json +18 -0
  282. data/schemas/historicalSummaries.json +3 -2
  283. data/schemas/historicalSummary.json +3 -2
  284. data/schemas/instanceAuditLog.json +2 -6
  285. data/schemas/instanceAuditLogs.json +90 -1
  286. data/schemas/instanceCustomNode.json +41 -2
  287. data/schemas/instanceCustomNodePatch.json +59 -6
  288. data/schemas/instanceCustomNodePost.json +59 -6
  289. data/schemas/instanceCustomNodes.json +41 -2
  290. data/schemas/instanceOrg.json +4 -1
  291. data/schemas/instanceOrgInvite.json +102 -0
  292. data/schemas/instanceOrgInviteSent.json +12 -0
  293. data/schemas/instanceOrgInvites.json +145 -0
  294. data/schemas/instanceOrgMember.json +52 -0
  295. data/schemas/instanceOrgMemberPatch.json +2 -2
  296. data/schemas/instanceOrgMemberPost.json +4 -4
  297. data/schemas/instanceOrgMembers.json +105 -1
  298. data/schemas/instanceOrgPost.json +5 -5
  299. data/schemas/instanceOrgs.json +5 -2
  300. data/schemas/instanceSandbox.json +5 -1
  301. data/schemas/instanceSandboxes.json +9 -1
  302. data/schemas/integration.json +38 -39
  303. data/schemas/integrationPatch.json +8 -8
  304. data/schemas/integrationPost.json +8 -8
  305. data/schemas/integrations.json +38 -39
  306. data/schemas/jobEnqueuedResult.json +1 -1
  307. data/schemas/me.json +685 -88
  308. data/schemas/notebook.json +33 -21
  309. data/schemas/notebookExecutionLogs.json +20 -0
  310. data/schemas/notebookMinuteCounts.json +1 -1
  311. data/schemas/notebookPatch.json +29 -21
  312. data/schemas/notebookPost.json +29 -21
  313. data/schemas/notebooks.json +33 -21
  314. data/schemas/notificationRule.json +4 -0
  315. data/schemas/notificationRules.json +8 -0
  316. data/schemas/oauthClient.json +107 -0
  317. data/schemas/oauthClientPost.json +89 -0
  318. data/schemas/oauthDcrError.json +23 -0
  319. data/schemas/oauthError.json +31 -0
  320. data/schemas/org.json +16 -3
  321. data/schemas/orgInvite.json +2 -2
  322. data/schemas/orgInviteCollection.json +2 -2
  323. data/schemas/orgInvitePost.json +2 -2
  324. data/schemas/orgInvites.json +77 -82
  325. data/schemas/orgInvitesUser.json +44 -47
  326. data/schemas/orgMemberPatch.json +2 -2
  327. data/schemas/orgRoleInfo.json +2 -2
  328. data/schemas/orgs.json +16 -3
  329. data/schemas/paletteResponse.json +372 -364
  330. data/schemas/periodSummaries.json +1 -1
  331. data/schemas/recentItemList.json +226 -27
  332. data/schemas/resourceJob.json +33 -9
  333. data/schemas/resourceJobExecutionLogs.json +34 -20
  334. data/schemas/resourceJobExecutionOptions.json +1 -1
  335. data/schemas/resourceJobPatch.json +9 -9
  336. data/schemas/resourceJobPost.json +9 -9
  337. data/schemas/resourceJobs.json +33 -9
  338. data/schemas/samlResponse.json +18 -0
  339. data/schemas/tagValuesResponse.json +1 -2
  340. data/schemas/templateKeywords.json +1 -0
  341. data/schemas/timeSeriesData.json +36 -4
  342. data/schemas/userCredentials.json +18 -0
  343. data/schemas/userOauthToken.json +210 -0
  344. data/schemas/userOauthTokenPatch.json +123 -0
  345. data/schemas/userOauthTokenPost.json +197 -0
  346. data/schemas/userOauthTokens.json +251 -0
  347. data/schemas/userPost.json +18 -0
  348. data/schemas/validateContextError.json +71 -24
  349. data/schemas/validateContextSuccess.json +71 -24
  350. metadata +22 -1
@@ -29,7 +29,6 @@
29
29
  },
30
30
  "deviceName": {
31
31
  "type": "string",
32
- "minLength": 1,
33
32
  "maxLength": 255
34
33
  },
35
34
  "description": {
@@ -41,155 +40,307 @@
41
40
  "maxLength": 32767
42
41
  },
43
42
  "tags": {
44
- "type": "array",
45
- "items": {
46
- "type": "object",
47
- "properties": {
48
- "key": {
49
- "type": "string",
50
- "pattern": "^[0-9a-zA-Z_-]{1,255}$"
51
- },
52
- "value": {
53
- "type": "string",
54
- "minLength": 1,
55
- "maxLength": 255
56
- }
57
- },
58
- "required": [
59
- "key",
60
- "value"
61
- ],
62
- "additionalProperties": false
63
- },
64
- "maxItems": 100
65
- },
66
- "attributes": {
67
- "type": "array",
68
- "items": {
69
- "type": "object",
70
- "properties": {
71
- "name": {
72
- "type": "string",
73
- "pattern": "^[0-9a-zA-Z_-]{1,255}$"
74
- },
75
- "dataType": {
76
- "type": "string",
77
- "enum": [
78
- "string",
79
- "number",
80
- "gps",
81
- "boolean",
82
- "blob"
83
- ]
84
- },
85
- "contentType": {
86
- "type": "string",
87
- "maxLength": 64
88
- },
89
- "description": {
90
- "type": "string",
91
- "maxLength": 32767
92
- },
93
- "attributeTags": {
43
+ "oneOf": [
44
+ {
45
+ "type": "array",
46
+ "items": {
94
47
  "type": "object",
95
- "patternProperties": {
96
- "^[0-9a-zA-Z_-]{1,255}$": {
48
+ "properties": {
49
+ "key": {
50
+ "type": "string",
51
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
52
+ },
53
+ "value": {
97
54
  "type": "string",
98
55
  "minLength": 1,
99
56
  "maxLength": 255
100
57
  }
101
58
  },
59
+ "required": [
60
+ "key",
61
+ "value"
62
+ ],
102
63
  "additionalProperties": false
103
64
  },
104
- "system": {
65
+ "maxItems": 100
66
+ },
67
+ {
68
+ "type": "object",
69
+ "patternProperties": {
70
+ "^[0-9a-zA-Z_-]{1,255}$": {
71
+ "type": "array",
72
+ "items": {
73
+ "type": "string",
74
+ "minLength": 1,
75
+ "maxLength": 255
76
+ }
77
+ }
78
+ },
79
+ "additionalProperties": false
80
+ }
81
+ ]
82
+ },
83
+ "attributes": {
84
+ "oneOf": [
85
+ {
86
+ "type": "array",
87
+ "items": {
105
88
  "type": "object",
106
89
  "properties": {
107
- "aggregation": {
90
+ "name": {
91
+ "type": "string",
92
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
93
+ },
94
+ "dataType": {
108
95
  "type": "string",
109
96
  "enum": [
110
- "FIRST",
111
- "LAST",
112
- "COUNT",
113
- "MAX",
114
- "MIN",
115
- "MEDIAN",
116
- "MEAN",
117
- "SUM",
118
- "STD_DEV"
97
+ "string",
98
+ "number",
99
+ "gps",
100
+ "boolean",
101
+ "blob"
119
102
  ]
120
103
  },
121
- "aggregationOptions": {
122
- "type": "array",
123
- "items": {
104
+ "contentType": {
105
+ "type": "string",
106
+ "maxLength": 64
107
+ },
108
+ "description": {
109
+ "type": "string",
110
+ "maxLength": 32767
111
+ },
112
+ "attributeTags": {
113
+ "type": "object",
114
+ "patternProperties": {
115
+ "^[0-9a-zA-Z_-]{1,255}$": {
116
+ "type": "string",
117
+ "minLength": 1,
118
+ "maxLength": 255
119
+ }
120
+ },
121
+ "additionalProperties": false
122
+ },
123
+ "system": {
124
+ "type": "object",
125
+ "properties": {
126
+ "aggregation": {
127
+ "type": "string",
128
+ "enum": [
129
+ "FIRST",
130
+ "LAST",
131
+ "COUNT",
132
+ "MAX",
133
+ "MIN",
134
+ "MEDIAN",
135
+ "MEAN",
136
+ "SUM",
137
+ "STD_DEV"
138
+ ]
139
+ },
140
+ "aggregationOptions": {
141
+ "type": "array",
142
+ "items": {
143
+ "type": "object",
144
+ "additionalProperties": false
145
+ },
146
+ "maxItems": 0
147
+ },
148
+ "childAttributes": {
149
+ "type": "array",
150
+ "items": {
151
+ "type": "object",
152
+ "properties": {
153
+ "name": {
154
+ "type": "string",
155
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
156
+ },
157
+ "mode": {
158
+ "type": "string",
159
+ "enum": [
160
+ "all",
161
+ "whitelist",
162
+ "blacklist"
163
+ ]
164
+ },
165
+ "deviceIds": {
166
+ "type": "array",
167
+ "items": {
168
+ "type": "string",
169
+ "pattern": "^[A-Fa-f\\d]{24}$"
170
+ },
171
+ "maxItems": 1000
172
+ },
173
+ "deviceTags": {
174
+ "type": "array",
175
+ "items": {
176
+ "type": "object",
177
+ "properties": {
178
+ "key": {
179
+ "type": "string",
180
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
181
+ },
182
+ "value": {
183
+ "type": "string",
184
+ "minLength": 1,
185
+ "maxLength": 255
186
+ }
187
+ },
188
+ "additionalProperties": false
189
+ },
190
+ "maxItems": 100
191
+ }
192
+ },
193
+ "required": [
194
+ "name",
195
+ "mode"
196
+ ],
197
+ "additionalProperties": false
198
+ },
199
+ "maxItems": 256
200
+ }
201
+ },
202
+ "additionalProperties": false
203
+ }
204
+ },
205
+ "required": [
206
+ "name",
207
+ "dataType"
208
+ ],
209
+ "additionalProperties": false
210
+ },
211
+ "maxItems": 256
212
+ },
213
+ {
214
+ "type": "object",
215
+ "patternProperties": {
216
+ "^[0-9a-zA-Z_-]{1,255}$": {
217
+ "type": "object",
218
+ "properties": {
219
+ "name": {
220
+ "type": "string",
221
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
222
+ },
223
+ "dataType": {
224
+ "type": "string",
225
+ "enum": [
226
+ "string",
227
+ "number",
228
+ "gps",
229
+ "boolean",
230
+ "blob"
231
+ ]
232
+ },
233
+ "contentType": {
234
+ "type": "string",
235
+ "maxLength": 64
236
+ },
237
+ "description": {
238
+ "type": "string",
239
+ "maxLength": 32767
240
+ },
241
+ "attributeTags": {
124
242
  "type": "object",
243
+ "patternProperties": {
244
+ "^[0-9a-zA-Z_-]{1,255}$": {
245
+ "type": "string",
246
+ "minLength": 1,
247
+ "maxLength": 255
248
+ }
249
+ },
125
250
  "additionalProperties": false
126
251
  },
127
- "maxItems": 0
128
- },
129
- "childAttributes": {
130
- "type": "array",
131
- "items": {
252
+ "system": {
132
253
  "type": "object",
133
254
  "properties": {
134
- "name": {
135
- "type": "string",
136
- "pattern": "^[0-9a-zA-Z_-]{1,255}$"
137
- },
138
- "mode": {
255
+ "aggregation": {
139
256
  "type": "string",
140
257
  "enum": [
141
- "all",
142
- "whitelist",
143
- "blacklist"
258
+ "FIRST",
259
+ "LAST",
260
+ "COUNT",
261
+ "MAX",
262
+ "MIN",
263
+ "MEDIAN",
264
+ "MEAN",
265
+ "SUM",
266
+ "STD_DEV"
144
267
  ]
145
268
  },
146
- "deviceIds": {
269
+ "aggregationOptions": {
147
270
  "type": "array",
148
271
  "items": {
149
- "type": "string",
150
- "pattern": "^[A-Fa-f\\d]{24}$"
272
+ "type": "object",
273
+ "additionalProperties": false
151
274
  },
152
- "maxItems": 1000
275
+ "maxItems": 0
153
276
  },
154
- "deviceTags": {
277
+ "childAttributes": {
155
278
  "type": "array",
156
279
  "items": {
157
280
  "type": "object",
158
281
  "properties": {
159
- "key": {
282
+ "name": {
160
283
  "type": "string",
161
284
  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
162
285
  },
163
- "value": {
286
+ "mode": {
164
287
  "type": "string",
165
- "minLength": 1,
166
- "maxLength": 255
288
+ "enum": [
289
+ "all",
290
+ "whitelist",
291
+ "blacklist"
292
+ ]
293
+ },
294
+ "deviceIds": {
295
+ "type": "array",
296
+ "items": {
297
+ "type": "string",
298
+ "pattern": "^[A-Fa-f\\d]{24}$"
299
+ },
300
+ "maxItems": 1000
301
+ },
302
+ "deviceTags": {
303
+ "type": "array",
304
+ "items": {
305
+ "type": "object",
306
+ "properties": {
307
+ "key": {
308
+ "type": "string",
309
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
310
+ },
311
+ "value": {
312
+ "type": "string",
313
+ "minLength": 1,
314
+ "maxLength": 255
315
+ }
316
+ },
317
+ "additionalProperties": false
318
+ },
319
+ "maxItems": 100
167
320
  }
168
321
  },
322
+ "required": [
323
+ "name",
324
+ "mode"
325
+ ],
169
326
  "additionalProperties": false
170
327
  },
171
- "maxItems": 100
328
+ "maxItems": 256
172
329
  }
173
330
  },
174
- "required": [
175
- "name",
176
- "mode"
177
- ],
178
331
  "additionalProperties": false
179
- },
180
- "maxItems": 256
181
- }
182
- },
183
- "additionalProperties": false
184
- }
185
- },
186
- "required": [
187
- "name",
188
- "dataType"
189
- ],
190
- "additionalProperties": false
191
- },
192
- "maxItems": 256
332
+ }
333
+ },
334
+ "required": [
335
+ "name",
336
+ "dataType"
337
+ ],
338
+ "additionalProperties": false
339
+ }
340
+ },
341
+ "additionalProperties": false
342
+ }
343
+ ]
193
344
  },
194
345
  "deviceClass": {
195
346
  "type": "string",