losant_rest 1.20.1 → 1.21.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +140 -14
  3. data/docs/_schemas.md +3150 -646
  4. data/docs/application.md +1 -0
  5. data/docs/devices.md +45 -2
  6. data/docs/instance.md +41 -0
  7. data/docs/instanceNotificationRule.md +219 -0
  8. data/docs/instanceNotificationRules.md +91 -0
  9. data/docs/instanceOrg.md +49 -5
  10. data/docs/instanceSandbox.md +179 -3
  11. data/docs/me.md +1 -0
  12. data/docs/org.md +1 -0
  13. data/lib/platform_rest/application.rb +2 -0
  14. data/lib/platform_rest/client.rb +10 -2
  15. data/lib/platform_rest/devices.rb +52 -2
  16. data/lib/platform_rest/instance.rb +50 -0
  17. data/lib/platform_rest/instance_notification_rule.rb +275 -0
  18. data/lib/platform_rest/instance_notification_rules.rb +136 -0
  19. data/lib/platform_rest/instance_org.rb +57 -5
  20. data/lib/platform_rest/instance_sandbox.rb +211 -3
  21. data/lib/platform_rest/me.rb +2 -0
  22. data/lib/platform_rest/org.rb +2 -0
  23. data/lib/platform_rest/version.rb +1 -1
  24. data/lib/platform_rest.rb +2 -0
  25. data/schemas/advancedDeviceQuery.json +103 -0
  26. data/schemas/apiTokenPost.json +16 -0
  27. data/schemas/applicationSearchResult.json +46 -6
  28. data/schemas/bulkRestoreResponse.json +12 -0
  29. data/schemas/credentialLinkedResources.json +12 -0
  30. data/schemas/dataExport.json +103 -0
  31. data/schemas/device.json +4 -0
  32. data/schemas/devices.json +4 -0
  33. data/schemas/devicesDeleteOrRestorePost.json +2061 -0
  34. data/schemas/devicesExportPayloadCountPost.json +103 -0
  35. data/schemas/devicesExportPost.json +103 -0
  36. data/schemas/devicesPatch.json +103 -0
  37. data/schemas/devicesRemoveDataPost.json +103 -0
  38. data/schemas/experienceEndpoint.json +6 -1
  39. data/schemas/experienceEndpointPatch.json +6 -1
  40. data/schemas/experienceEndpointPost.json +6 -1
  41. data/schemas/experienceEndpoints.json +6 -1
  42. data/schemas/experienceLinkedResources.json +18 -1
  43. data/schemas/flow.json +4 -0
  44. data/schemas/flowPatch.json +4 -0
  45. data/schemas/flowPost.json +4 -0
  46. data/schemas/flowVersion.json +8 -0
  47. data/schemas/flowVersionPost.json +4 -0
  48. data/schemas/flowVersions.json +8 -0
  49. data/schemas/flows.json +4 -0
  50. data/schemas/flowsImportPost.json +8 -0
  51. data/schemas/flowsImportResult.json +12 -0
  52. data/schemas/githubLogin.json +16 -0
  53. data/schemas/instance.json +9 -0
  54. data/schemas/instanceAuditLog.json +2 -1
  55. data/schemas/instanceAuditLogFilter.json +2 -1
  56. data/schemas/instanceOrg.json +4 -0
  57. data/schemas/instanceOrgs.json +4 -0
  58. data/schemas/instances.json +9 -0
  59. data/schemas/lastValueQuery.json +103 -0
  60. data/schemas/multiDeviceCommand.json +103 -0
  61. data/schemas/notificationRule.json +161 -0
  62. data/schemas/notificationRuleDeliveryLogs.json +123 -0
  63. data/schemas/notificationRuleEvaluationOptions.json +10 -0
  64. data/schemas/notificationRulePatch.json +128 -0
  65. data/schemas/notificationRulePost.json +140 -0
  66. data/schemas/notificationRules.json +212 -0
  67. data/schemas/samlResponse.json +16 -0
  68. data/schemas/timeSeriesQuery.json +103 -0
  69. data/schemas/userCredentials.json +16 -0
  70. data/schemas/userPost.json +16 -0
  71. metadata +14 -2
@@ -397,6 +397,10 @@
397
397
  }
398
398
  },
399
399
  "maxItems": 100
400
+ },
401
+ "configName": {
402
+ "type": "string",
403
+ "maxLength": 1024
400
404
  }
401
405
  },
402
406
  "additionalProperties": false
@@ -3473,6 +3477,10 @@
3473
3477
  }
3474
3478
  },
3475
3479
  "maxItems": 100
3480
+ },
3481
+ "configName": {
3482
+ "type": "string",
3483
+ "maxLength": 1024
3476
3484
  }
3477
3485
  },
3478
3486
  "additionalProperties": false
@@ -6509,6 +6517,10 @@
6509
6517
  }
6510
6518
  },
6511
6519
  "maxItems": 100
6520
+ },
6521
+ "configName": {
6522
+ "type": "string",
6523
+ "maxLength": 1024
6512
6524
  }
6513
6525
  },
6514
6526
  "additionalProperties": false
@@ -177,6 +177,7 @@
177
177
  "devices.attributeNames",
178
178
  "devices.patch",
179
179
  "devices.delete",
180
+ "devices.restore",
180
181
  "devices.removeData",
181
182
  "devices.detailedSummary",
182
183
  "devices.deviceNames",
@@ -371,6 +372,7 @@
371
372
  "instance.patch",
372
373
  "instance.historicalSummaries",
373
374
  "instance.generateReport",
375
+ "instance.payloadCounts",
374
376
  "instance.payloadCountsBreakdown",
375
377
  "instance.deviceCounts",
376
378
  "instance.notebookMinuteCounts",
@@ -378,6 +380,7 @@
378
380
  "instanceOrg.get",
379
381
  "instanceOrg.patch",
380
382
  "instanceOrg.delete",
383
+ "instanceOrg.payloadCounts",
381
384
  "instanceOrg.payloadCountsBreakdown",
382
385
  "instanceOrg.deviceCounts",
383
386
  "instanceOrg.notebookMinuteCounts",
@@ -422,10 +425,23 @@
422
425
  "instanceCustomNode.delete",
423
426
  "instanceCustomNode.errors",
424
427
  "instanceCustomNode.stats",
428
+ "instanceNotificationRules.*",
429
+ "instanceNotificationRules.get",
430
+ "instanceNotificationRules.post",
431
+ "instanceNotificationRule.*",
432
+ "instanceNotificationRule.get",
433
+ "instanceNotificationRule.patch",
434
+ "instanceNotificationRule.delete",
435
+ "instanceNotificationRule.evaluate",
436
+ "instanceNotificationRule.logs",
425
437
  "instanceSandbox.*",
426
438
  "instanceSandbox.get",
427
439
  "instanceSandbox.delete",
428
440
  "instanceSandbox.undelete",
441
+ "instanceSandbox.payloadCounts",
442
+ "instanceSandbox.payloadCountsBreakdown",
443
+ "instanceSandbox.deviceCounts",
444
+ "instanceSandbox.notebookMinuteCounts",
429
445
  "instanceSandboxes.*",
430
446
  "instanceSandboxes.get",
431
447
  "instanceAuditLog.*",
@@ -93,6 +93,15 @@
93
93
  "organization": {
94
94
  "type": "integer"
95
95
  },
96
+ "instanceApiToken": {
97
+ "type": "integer"
98
+ },
99
+ "instanceNotificationRule": {
100
+ "type": "integer"
101
+ },
102
+ "instanceCustomNode": {
103
+ "type": "integer"
104
+ },
96
105
  "apitoken": {
97
106
  "type": "integer"
98
107
  },
@@ -28,7 +28,8 @@
28
28
  "Organization",
29
29
  "ApiToken",
30
30
  "User",
31
- "InstanceCustomNode"
31
+ "InstanceCustomNode",
32
+ "NotificationRule"
32
33
  ]
33
34
  },
34
35
  "primaryTargetName": {
@@ -17,7 +17,8 @@
17
17
  "Organization",
18
18
  "ApiToken",
19
19
  "User",
20
- "InstanceCustomNode"
20
+ "InstanceCustomNode",
21
+ "NotificationRule"
21
22
  ]
22
23
  },
23
24
  "name": {
@@ -19,6 +19,10 @@
19
19
  "type": "string",
20
20
  "pattern": "^[A-Fa-f\\d]{24}$"
21
21
  },
22
+ "orgId": {
23
+ "type": "string",
24
+ "pattern": "^[A-Fa-f\\d]{24}$"
25
+ },
22
26
  "instanceId": {
23
27
  "type": "string",
24
28
  "pattern": "^[A-Fa-f\\d]{24}$"
@@ -26,6 +26,10 @@
26
26
  "type": "string",
27
27
  "pattern": "^[A-Fa-f\\d]{24}$"
28
28
  },
29
+ "orgId": {
30
+ "type": "string",
31
+ "pattern": "^[A-Fa-f\\d]{24}$"
32
+ },
29
33
  "instanceId": {
30
34
  "type": "string",
31
35
  "pattern": "^[A-Fa-f\\d]{24}$"
@@ -100,6 +100,15 @@
100
100
  "organization": {
101
101
  "type": "integer"
102
102
  },
103
+ "instanceApiToken": {
104
+ "type": "integer"
105
+ },
106
+ "instanceNotificationRule": {
107
+ "type": "integer"
108
+ },
109
+ "instanceCustomNode": {
110
+ "type": "integer"
111
+ },
103
112
  "apitoken": {
104
113
  "type": "integer"
105
114
  },
@@ -370,6 +370,109 @@
370
370
  }
371
371
  ]
372
372
  },
373
+ "deletedAt": {
374
+ "oneOf": [
375
+ {
376
+ "type": [
377
+ "string",
378
+ "number",
379
+ "boolean",
380
+ "null"
381
+ ]
382
+ },
383
+ {
384
+ "type": "object",
385
+ "properties": {
386
+ "$eq": {
387
+ "type": [
388
+ "string",
389
+ "number",
390
+ "boolean",
391
+ "null"
392
+ ]
393
+ },
394
+ "$ne": {
395
+ "type": [
396
+ "string",
397
+ "number",
398
+ "boolean",
399
+ "null"
400
+ ]
401
+ },
402
+ "$gt": {
403
+ "type": [
404
+ "string",
405
+ "number",
406
+ "boolean",
407
+ "null"
408
+ ]
409
+ },
410
+ "$lt": {
411
+ "type": [
412
+ "string",
413
+ "number",
414
+ "boolean",
415
+ "null"
416
+ ]
417
+ },
418
+ "$gte": {
419
+ "type": [
420
+ "string",
421
+ "number",
422
+ "boolean",
423
+ "null"
424
+ ]
425
+ },
426
+ "$lte": {
427
+ "type": [
428
+ "string",
429
+ "number",
430
+ "boolean",
431
+ "null"
432
+ ]
433
+ },
434
+ "$startsWith": {
435
+ "type": "string",
436
+ "minLength": 1
437
+ },
438
+ "$endsWith": {
439
+ "type": "string",
440
+ "minLength": 1
441
+ },
442
+ "$contains": {
443
+ "type": "string",
444
+ "minLength": 1
445
+ },
446
+ "$ci": {
447
+ "type": "boolean"
448
+ },
449
+ "$in": {
450
+ "type": "array",
451
+ "maxItems": 100,
452
+ "items": {
453
+ "type": [
454
+ "string",
455
+ "number",
456
+ "boolean"
457
+ ]
458
+ }
459
+ },
460
+ "$nin": {
461
+ "type": "array",
462
+ "maxItems": 100,
463
+ "items": {
464
+ "type": [
465
+ "string",
466
+ "number",
467
+ "boolean"
468
+ ]
469
+ }
470
+ }
471
+ },
472
+ "additionalProperties": false
473
+ }
474
+ ]
475
+ },
373
476
  "name": {
374
477
  "oneOf": [
375
478
  {
@@ -394,6 +394,109 @@
394
394
  }
395
395
  ]
396
396
  },
397
+ "deletedAt": {
398
+ "oneOf": [
399
+ {
400
+ "type": [
401
+ "string",
402
+ "number",
403
+ "boolean",
404
+ "null"
405
+ ]
406
+ },
407
+ {
408
+ "type": "object",
409
+ "properties": {
410
+ "$eq": {
411
+ "type": [
412
+ "string",
413
+ "number",
414
+ "boolean",
415
+ "null"
416
+ ]
417
+ },
418
+ "$ne": {
419
+ "type": [
420
+ "string",
421
+ "number",
422
+ "boolean",
423
+ "null"
424
+ ]
425
+ },
426
+ "$gt": {
427
+ "type": [
428
+ "string",
429
+ "number",
430
+ "boolean",
431
+ "null"
432
+ ]
433
+ },
434
+ "$lt": {
435
+ "type": [
436
+ "string",
437
+ "number",
438
+ "boolean",
439
+ "null"
440
+ ]
441
+ },
442
+ "$gte": {
443
+ "type": [
444
+ "string",
445
+ "number",
446
+ "boolean",
447
+ "null"
448
+ ]
449
+ },
450
+ "$lte": {
451
+ "type": [
452
+ "string",
453
+ "number",
454
+ "boolean",
455
+ "null"
456
+ ]
457
+ },
458
+ "$startsWith": {
459
+ "type": "string",
460
+ "minLength": 1
461
+ },
462
+ "$endsWith": {
463
+ "type": "string",
464
+ "minLength": 1
465
+ },
466
+ "$contains": {
467
+ "type": "string",
468
+ "minLength": 1
469
+ },
470
+ "$ci": {
471
+ "type": "boolean"
472
+ },
473
+ "$in": {
474
+ "type": "array",
475
+ "maxItems": 100,
476
+ "items": {
477
+ "type": [
478
+ "string",
479
+ "number",
480
+ "boolean"
481
+ ]
482
+ }
483
+ },
484
+ "$nin": {
485
+ "type": "array",
486
+ "maxItems": 100,
487
+ "items": {
488
+ "type": [
489
+ "string",
490
+ "number",
491
+ "boolean"
492
+ ]
493
+ }
494
+ }
495
+ },
496
+ "additionalProperties": false
497
+ }
498
+ ]
499
+ },
397
500
  "name": {
398
501
  "oneOf": [
399
502
  {
@@ -0,0 +1,161 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "type": "string",
7
+ "pattern": "^[A-Fa-f\\d]{24}$"
8
+ },
9
+ "notificationRuleId": {
10
+ "type": "string",
11
+ "pattern": "^[A-Fa-f\\d]{24}$"
12
+ },
13
+ "ownerId": {
14
+ "type": "string",
15
+ "pattern": "^[A-Fa-f\\d]{24}$"
16
+ },
17
+ "ownerType": {
18
+ "type": "string",
19
+ "enum": [
20
+ "instance"
21
+ ]
22
+ },
23
+ "creationDate": {
24
+ "type": "string",
25
+ "format": "date-time"
26
+ },
27
+ "lastUpdated": {
28
+ "type": "string",
29
+ "format": "date-time"
30
+ },
31
+ "createdById": {
32
+ "type": "string",
33
+ "pattern": "^[A-Fa-f\\d]{24}$"
34
+ },
35
+ "createdByType": {
36
+ "type": "string",
37
+ "enum": [
38
+ "apiToken",
39
+ "user"
40
+ ]
41
+ },
42
+ "lastUpdatedById": {
43
+ "type": "string",
44
+ "pattern": "^[A-Fa-f\\d]{24}$"
45
+ },
46
+ "lastUpdatedByType": {
47
+ "type": "string",
48
+ "enum": [
49
+ "apiToken",
50
+ "user"
51
+ ]
52
+ },
53
+ "targetType": {
54
+ "type": "string",
55
+ "enum": [
56
+ "organization"
57
+ ]
58
+ },
59
+ "targetQueryJson": {
60
+ "type": "string",
61
+ "maxLength": 8192
62
+ },
63
+ "name": {
64
+ "type": "string",
65
+ "minLength": 1,
66
+ "maxLength": 255
67
+ },
68
+ "description": {
69
+ "type": "string",
70
+ "maxLength": 32767
71
+ },
72
+ "enabled": {
73
+ "type": "boolean"
74
+ },
75
+ "callbackUrl": {
76
+ "type": "string",
77
+ "format": "uri",
78
+ "maxLength": 1024
79
+ },
80
+ "emailConfig": {
81
+ "type": "object",
82
+ "properties": {
83
+ "subjectTemplate": {
84
+ "type": "string",
85
+ "minLength": 1,
86
+ "maxLength": 1024
87
+ },
88
+ "bodyTemplate": {
89
+ "type": "string",
90
+ "maxLength": 32767
91
+ },
92
+ "sendToTarget": {
93
+ "type": "string",
94
+ "enum": [
95
+ "admins",
96
+ "members",
97
+ "none"
98
+ ]
99
+ },
100
+ "sendToOwner": {
101
+ "type": "string",
102
+ "enum": [
103
+ "admins",
104
+ "members",
105
+ "none"
106
+ ]
107
+ },
108
+ "sendToAddresses": {
109
+ "type": "array",
110
+ "maxItems": 10,
111
+ "items": {
112
+ "type": "string",
113
+ "format": "email",
114
+ "maxLength": 1024
115
+ }
116
+ }
117
+ },
118
+ "required": [
119
+ "subjectTemplate",
120
+ "bodyTemplate"
121
+ ],
122
+ "additionalProperties": false
123
+ },
124
+ "ruleConfig": {
125
+ "type": "object",
126
+ "properties": {
127
+ "ruleType": {
128
+ "type": "string",
129
+ "enum": [
130
+ "payloadUsage",
131
+ "notebookMinuteUsage"
132
+ ]
133
+ },
134
+ "thresholdType": {
135
+ "type": "string",
136
+ "enum": [
137
+ "percentOfLimit"
138
+ ]
139
+ },
140
+ "threshold": {
141
+ "type": "number",
142
+ "minimum": 0,
143
+ "maximum": 1000
144
+ },
145
+ "maxFrequency": {
146
+ "type": "string",
147
+ "enum": [
148
+ "billingCycle",
149
+ "daily"
150
+ ]
151
+ }
152
+ },
153
+ "required": [
154
+ "ruleType",
155
+ "thresholdType",
156
+ "threshold"
157
+ ],
158
+ "additionalProperties": false
159
+ }
160
+ }
161
+ }
@@ -0,0 +1,123 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "array",
4
+ "items": {
5
+ "type": "object",
6
+ "properties": {
7
+ "id": {
8
+ "type": "string",
9
+ "pattern": "^[A-Fa-f\\d]{24}$"
10
+ },
11
+ "notificationRuleDeliveryId": {
12
+ "type": "string",
13
+ "pattern": "^[A-Fa-f\\d]{24}$"
14
+ },
15
+ "notificationRuleId": {
16
+ "type": "string",
17
+ "pattern": "^[A-Fa-f\\d]{24}$"
18
+ },
19
+ "ownerId": {
20
+ "type": "string",
21
+ "pattern": "^[A-Fa-f\\d]{24}$"
22
+ },
23
+ "ownerType": {
24
+ "type": "string",
25
+ "enum": [
26
+ "instance"
27
+ ]
28
+ },
29
+ "requestedById": {
30
+ "type": "string",
31
+ "pattern": "^[A-Fa-f\\d]{24}$"
32
+ },
33
+ "requestedByType": {
34
+ "type": "string",
35
+ "enum": [
36
+ "user",
37
+ "apiToken",
38
+ "system"
39
+ ]
40
+ },
41
+ "sentAt": {
42
+ "type": "string",
43
+ "format": "date-time"
44
+ },
45
+ "targetType": {
46
+ "type": "string",
47
+ "enum": [
48
+ "organization"
49
+ ]
50
+ },
51
+ "targetId": {
52
+ "type": "string",
53
+ "pattern": "^[A-Fa-f\\d]{24}$"
54
+ },
55
+ "targetName": {
56
+ "type": "string",
57
+ "minLength": 1,
58
+ "maxLength": 255
59
+ },
60
+ "callbackUrl": {
61
+ "type": "string",
62
+ "format": "uri",
63
+ "maxLength": 1024
64
+ },
65
+ "email": {
66
+ "type": "object",
67
+ "properties": {
68
+ "subject": {
69
+ "type": "string"
70
+ },
71
+ "body": {
72
+ "type": "string"
73
+ },
74
+ "addresses": {
75
+ "type": "array",
76
+ "items": {
77
+ "type": "string",
78
+ "format": "email",
79
+ "maxLength": 1024
80
+ }
81
+ }
82
+ }
83
+ },
84
+ "evaluation": {
85
+ "type": "object",
86
+ "properties": {
87
+ "value": {
88
+ "type": "number"
89
+ },
90
+ "limit": {
91
+ "type": "number"
92
+ },
93
+ "ruleType": {
94
+ "type": "string",
95
+ "enum": [
96
+ "payloadUsage",
97
+ "notebookMinuteUsage"
98
+ ]
99
+ },
100
+ "thresholdType": {
101
+ "type": "string",
102
+ "enum": [
103
+ "percentOfLimit"
104
+ ]
105
+ },
106
+ "threshold": {
107
+ "type": "number",
108
+ "minimum": 0,
109
+ "maximum": 1000
110
+ },
111
+ "maxFrequency": {
112
+ "type": "string",
113
+ "enum": [
114
+ "billingCycle",
115
+ "daily",
116
+ "unlimited"
117
+ ]
118
+ }
119
+ }
120
+ }
121
+ }
122
+ }
123
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "ignoreFrequencyCheck": {
6
+ "type": "boolean"
7
+ }
8
+ },
9
+ "additionalProperties": false
10
+ }