losant_rest 1.4.2 → 1.5.0

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 (54) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -0
  3. data/docs/_schemas.md +560 -25
  4. data/docs/application.md +77 -0
  5. data/docs/dashboard.md +1 -0
  6. data/docs/devices.md +1 -0
  7. data/docs/edgeDeployments.md +173 -0
  8. data/docs/flows.md +1 -0
  9. data/lib/losant_rest.rb +1 -0
  10. data/lib/losant_rest/application.rb +91 -0
  11. data/lib/losant_rest/client.rb +6 -2
  12. data/lib/losant_rest/dashboard.rb +2 -0
  13. data/lib/losant_rest/devices.rb +2 -0
  14. data/lib/losant_rest/edge_deployments.rb +234 -0
  15. data/lib/losant_rest/flows.rb +2 -0
  16. data/lib/losant_rest/version.rb +1 -1
  17. data/schemas/application.json +2 -2
  18. data/schemas/applicationApiTokenPost.json +7 -0
  19. data/schemas/applicationPatch.json +2 -2
  20. data/schemas/applicationPost.json +2 -2
  21. data/schemas/applications.json +2 -2
  22. data/schemas/authedDevice.json +2 -1
  23. data/schemas/dashboard.json +4 -0
  24. data/schemas/dashboardPatch.json +4 -0
  25. data/schemas/dashboardPost.json +4 -0
  26. data/schemas/dashboards.json +4 -0
  27. data/schemas/device.json +6 -1
  28. data/schemas/devicePatch.json +2 -1
  29. data/schemas/devicePost.json +2 -1
  30. data/schemas/deviceRecipe.json +2 -1
  31. data/schemas/deviceRecipePatch.json +2 -1
  32. data/schemas/deviceRecipePost.json +2 -1
  33. data/schemas/deviceRecipes.json +2 -1
  34. data/schemas/devices.json +37 -1
  35. data/schemas/edgeDeploymentRelease.json +50 -0
  36. data/schemas/edgeDeploymentRemove.json +25 -0
  37. data/schemas/edgeDeploymentReplace.json +29 -0
  38. data/schemas/edgeDeployments.json +152 -0
  39. data/schemas/flow.json +13 -0
  40. data/schemas/flowPatch.json +6 -0
  41. data/schemas/flowPost.json +13 -0
  42. data/schemas/flowVersion.json +6 -0
  43. data/schemas/flowVersionPost.json +6 -0
  44. data/schemas/flowVersions.json +6 -0
  45. data/schemas/flows.json +20 -0
  46. data/schemas/me.json +4 -0
  47. data/schemas/mePatch.json +4 -0
  48. data/schemas/solution.json +2 -2
  49. data/schemas/solutionUser.json +4 -0
  50. data/schemas/solutionUserPatch.json +4 -0
  51. data/schemas/solutionUserPost.json +4 -0
  52. data/schemas/solutionUsers.json +4 -0
  53. data/schemas/solutions.json +2 -2
  54. metadata +8 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 83ad286b27fb7ca350881e4e994ceb1bfb7edff2
4
- data.tar.gz: 9a76752062e026144c00bd5682a7242062cf313f
3
+ metadata.gz: 7a975fe486d9244ac0335b9c509364c90f10a5b5
4
+ data.tar.gz: fdd4d5d4ceebaf9f0bc592f0e311d77666179f46
5
5
  SHA512:
6
- metadata.gz: 755a187aaf4c1b44a58b94ef9524340dd46b3081d3e11183bc67f0f1345e476b39a8df35a5b3d755c77dae9c749269deac725d99ca19b351d3caaa7464aed45e
7
- data.tar.gz: a11a553c42b9960d9824f12b453aa200fe0fa57e31434d9d5d69c02e169b0e62b1623d2c8f9d668ae1d8ad7fd5749e61e5f849d286a890e1dceebe6a726d36d2
6
+ metadata.gz: aa7a765ac4b234788d7c5efc31243fba48f31386ac89069a43c8647926460269728ae3ad93ea120c13f8c4648850f8215ed691fa5b5862ad0ea01a157354b72d
7
+ data.tar.gz: 48234ecbf10cdff78f5642d68389be53564d75e06eb0afe8fff5fe21741d12d7841e1f30e9a8089b3e87619553a3c3c3957ea07a67ed9397faa8796b5d0e440e
data/README.md CHANGED
@@ -137,6 +137,9 @@ Each of the following is a method on the client object, and returns a wrapper fo
137
137
  * [device_recipes](docs/deviceRecipes.md)
138
138
  Contains all the actions that can be performed against the collection of [Device Recipes](https://docs.losant.com/devices/device-recipes/) belonging to an Application - such as listing recipes or creating a new recipe.
139
139
 
140
+ * [edge_deployments](docs/edgeDeployments.md)
141
+ Contains all the actions that can be performed against the collection of [Edge Deployments](https://docs.losant.com/edge-compute/edge-deployments/) belonging to an Application - such as listing deployments or creating a new deployment.
142
+
140
143
  * [event](docs/event.md)
141
144
  Contains all the actions that can be performed against a single [Event](https://docs.losant.com/events/overview/), such as commenting on or changing the state of an event.
142
145
 
data/docs/_schemas.md CHANGED
@@ -55,6 +55,10 @@
55
55
  * [Device Tag Filter](#device-tag-filter)
56
56
  * [Devices](#devices)
57
57
  * [Disable Two Factor Auth](#disable-two-factor-auth)
58
+ * [Edge Deployment Release](#edge-deployment-release)
59
+ * [Edge Deployment Remove](#edge-deployment-remove)
60
+ * [Edge Deployment Replace](#edge-deployment-replace)
61
+ * [Edge Deployments](#edge-deployments)
58
62
  * [Enable Two Factor Auth](#enable-two-factor-auth)
59
63
  * [Error](#error)
60
64
  * [Event](#event)
@@ -341,8 +345,8 @@ Schema for a single Application
341
345
  "endpointSlug": {
342
346
  "type": "string",
343
347
  "minLength": 4,
344
- "maxLength": 255,
345
- "pattern": "^[0-9a-z_-]*$"
348
+ "maxLength": 63,
349
+ "pattern": "^[0-9a-z-]*$"
346
350
  },
347
351
  "expUserTokenCutoff": {
348
352
  "type": "string",
@@ -636,6 +640,7 @@ Schema for the body of an Application API Token creation request
636
640
  "deviceRecipe.*",
637
641
  "deviceRecipes.*",
638
642
  "devices.*",
643
+ "edgeDeployments.*",
639
644
  "event.*",
640
645
  "events.*",
641
646
  "experienceDomain.*",
@@ -656,6 +661,8 @@ Schema for the body of an Application API Token creation request
656
661
  "flowVersions.*",
657
662
  "webhook.*",
658
663
  "webhooks.*",
664
+ "application.archiveData",
665
+ "application.backfillArchiveData",
659
666
  "application.delete",
660
667
  "application.get",
661
668
  "application.patch",
@@ -709,6 +716,10 @@ Schema for the body of an Application API Token creation request
709
716
  "devices.get",
710
717
  "devices.post",
711
718
  "devices.sendCommand",
719
+ "edgeDeployments.get",
720
+ "edgeDeployments.release",
721
+ "edgeDeployments.remove",
722
+ "edgeDeployments.replace",
712
723
  "event.delete",
713
724
  "event.get",
714
725
  "event.patch",
@@ -1249,8 +1260,8 @@ Schema for the body of an Application modification request
1249
1260
  "endpointSlug": {
1250
1261
  "type": "string",
1251
1262
  "minLength": 4,
1252
- "maxLength": 255,
1253
- "pattern": "^[0-9a-z_-]*$"
1263
+ "maxLength": 63,
1264
+ "pattern": "^[0-9a-z-]*$"
1254
1265
  },
1255
1266
  "expUserTokenCutoff": {
1256
1267
  "type": "string",
@@ -1453,8 +1464,8 @@ Schema for the body of an Application creation request
1453
1464
  "endpointSlug": {
1454
1465
  "type": "string",
1455
1466
  "minLength": 4,
1456
- "maxLength": 255,
1457
- "pattern": "^[0-9a-z_-]*$"
1467
+ "maxLength": 63,
1468
+ "pattern": "^[0-9a-z-]*$"
1458
1469
  },
1459
1470
  "expUserTokenCutoff": {
1460
1471
  "type": "string",
@@ -1661,8 +1672,8 @@ Schema for a collection of Applications
1661
1672
  "endpointSlug": {
1662
1673
  "type": "string",
1663
1674
  "minLength": 4,
1664
- "maxLength": 255,
1665
- "pattern": "^[0-9a-z_-]*$"
1675
+ "maxLength": 63,
1676
+ "pattern": "^[0-9a-z-]*$"
1666
1677
  },
1667
1678
  "expUserTokenCutoff": {
1668
1679
  "type": "string",
@@ -2477,7 +2488,8 @@ Schema for the successful response when authenticating a Device
2477
2488
  "standalone",
2478
2489
  "gateway",
2479
2490
  "peripheral",
2480
- "floating"
2491
+ "floating",
2492
+ "edgeCompute"
2481
2493
  ]
2482
2494
  },
2483
2495
  "token": {
@@ -2820,6 +2832,10 @@ Schema for a single Dashboard
2820
2832
  "type": "string",
2821
2833
  "maxLength": 255
2822
2834
  },
2835
+ "description": {
2836
+ "type": "string",
2837
+ "maxLength": 32767
2838
+ },
2823
2839
  "applicationId": {
2824
2840
  "type": "string",
2825
2841
  "pattern": "^[A-Fa-f\\d]{24}$"
@@ -3036,6 +3052,10 @@ Schema for the body of a Dashboard modification request
3036
3052
  "type": "string",
3037
3053
  "maxLength": 255
3038
3054
  },
3055
+ "description": {
3056
+ "type": "string",
3057
+ "maxLength": 32767
3058
+ },
3039
3059
  "applicationId": {
3040
3060
  "type": "string",
3041
3061
  "pattern": "^[A-Fa-f\\d]{24}$"
@@ -3276,6 +3296,10 @@ Schema for the body of a Dashboard creation request
3276
3296
  "type": "string",
3277
3297
  "maxLength": 255
3278
3298
  },
3299
+ "description": {
3300
+ "type": "string",
3301
+ "maxLength": 32767
3302
+ },
3279
3303
  "applicationId": {
3280
3304
  "type": "string",
3281
3305
  "pattern": "^[A-Fa-f\\d]{24}$"
@@ -3612,6 +3636,10 @@ Schema for a collection of Dashboards
3612
3636
  "type": "string",
3613
3637
  "maxLength": 255
3614
3638
  },
3639
+ "description": {
3640
+ "type": "string",
3641
+ "maxLength": 32767
3642
+ },
3615
3643
  "applicationId": {
3616
3644
  "type": "string",
3617
3645
  "pattern": "^[A-Fa-f\\d]{24}$"
@@ -4747,13 +4775,18 @@ Schema for a single Device
4747
4775
  "standalone",
4748
4776
  "gateway",
4749
4777
  "peripheral",
4750
- "floating"
4778
+ "floating",
4779
+ "edgeCompute"
4751
4780
  ]
4752
4781
  },
4753
4782
  "gatewayId": {
4754
4783
  "type": "string",
4755
4784
  "pattern": "^[A-Fa-f\\d]{24}$"
4756
4785
  },
4786
+ "edgeAgentVersion": {
4787
+ "type": "string",
4788
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
4789
+ },
4757
4790
  "connectionInfo": {
4758
4791
  "type": "object",
4759
4792
  "properties": {
@@ -5145,7 +5178,8 @@ Schema for the body of a Device modification request
5145
5178
  "standalone",
5146
5179
  "gateway",
5147
5180
  "peripheral",
5148
- "floating"
5181
+ "floating",
5182
+ "edgeCompute"
5149
5183
  ]
5150
5184
  },
5151
5185
  "gatewayId": {
@@ -5256,7 +5290,8 @@ Schema for the body of a Device creation request
5256
5290
  "standalone",
5257
5291
  "gateway",
5258
5292
  "peripheral",
5259
- "floating"
5293
+ "floating",
5294
+ "edgeCompute"
5260
5295
  ]
5261
5296
  },
5262
5297
  "gatewayId": {
@@ -5399,7 +5434,8 @@ Schema for a single Device Recipe
5399
5434
  "standalone",
5400
5435
  "gateway",
5401
5436
  "peripheral",
5402
- "floating"
5437
+ "floating",
5438
+ "edgeCompute"
5403
5439
  ]
5404
5440
  },
5405
5441
  "gatewayId": {
@@ -5634,7 +5670,8 @@ Schema for the body of a Device Recipe modification request
5634
5670
  "standalone",
5635
5671
  "gateway",
5636
5672
  "peripheral",
5637
- "floating"
5673
+ "floating",
5674
+ "edgeCompute"
5638
5675
  ]
5639
5676
  },
5640
5677
  "gatewayId": {
@@ -5756,7 +5793,8 @@ Schema for the body of a Device Recipe creation request
5756
5793
  "standalone",
5757
5794
  "gateway",
5758
5795
  "peripheral",
5759
- "floating"
5796
+ "floating",
5797
+ "edgeCompute"
5760
5798
  ]
5761
5799
  },
5762
5800
  "gatewayId": {
@@ -5908,7 +5946,8 @@ Schema for a collection of Device Recipes
5908
5946
  "standalone",
5909
5947
  "gateway",
5910
5948
  "peripheral",
5911
- "floating"
5949
+ "floating",
5950
+ "edgeCompute"
5912
5951
  ]
5913
5952
  },
5914
5953
  "gatewayId": {
@@ -6371,13 +6410,18 @@ Schema for a collection of Devices
6371
6410
  "standalone",
6372
6411
  "gateway",
6373
6412
  "peripheral",
6374
- "floating"
6413
+ "floating",
6414
+ "edgeCompute"
6375
6415
  ]
6376
6416
  },
6377
6417
  "gatewayId": {
6378
6418
  "type": "string",
6379
6419
  "pattern": "^[A-Fa-f\\d]{24}$"
6380
6420
  },
6421
+ "edgeAgentVersion": {
6422
+ "type": "string",
6423
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
6424
+ },
6381
6425
  "connectionInfo": {
6382
6426
  "type": "object",
6383
6427
  "properties": {
@@ -6428,6 +6472,37 @@ Schema for a collection of Devices
6428
6472
  "applicationId": {
6429
6473
  "type": "string",
6430
6474
  "pattern": "^[A-Fa-f\\d]{24}$"
6475
+ },
6476
+ "deviceClass": {
6477
+ "type": "string",
6478
+ "enum": [
6479
+ "standalone",
6480
+ "gateway",
6481
+ "peripheral",
6482
+ "floating",
6483
+ "edgeCompute"
6484
+ ]
6485
+ },
6486
+ "tagFilter": {
6487
+ "title": "Device Tag Filter",
6488
+ "description": "Array of Tags for filtering devices. Tag keys and tag values are optional.",
6489
+ "type": "array",
6490
+ "items": {
6491
+ "type": "object",
6492
+ "properties": {
6493
+ "key": {
6494
+ "type": "string",
6495
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
6496
+ },
6497
+ "value": {
6498
+ "type": "string",
6499
+ "minLength": 1,
6500
+ "maxLength": 255
6501
+ }
6502
+ },
6503
+ "additionalProperties": false
6504
+ },
6505
+ "maxItems": 100
6431
6506
  }
6432
6507
  }
6433
6508
  }
@@ -6519,6 +6594,370 @@ Schema for the body of a request to disable two factor auth
6519
6594
 
6520
6595
  <br/>
6521
6596
 
6597
+ ## Edge Deployment Release
6598
+
6599
+ Schema for deploying an edge workflow to one or more edge devices
6600
+
6601
+ ### <a name="edge-deployment-release-schema"></a> Schema
6602
+
6603
+ ```json
6604
+ {
6605
+ "$schema": "http://json-schema.org/draft-04/schema#",
6606
+ "type": "object",
6607
+ "properties": {
6608
+ "flowId": {
6609
+ "type": "string",
6610
+ "pattern": "^[A-Fa-f\\d]{24}$"
6611
+ },
6612
+ "version": {
6613
+ "type": [
6614
+ "string",
6615
+ "null"
6616
+ ],
6617
+ "minLength": 1,
6618
+ "maxLength": 255
6619
+ },
6620
+ "deviceIds": {
6621
+ "type": "array",
6622
+ "items": {
6623
+ "type": "string",
6624
+ "pattern": "^[A-Fa-f\\d]{24}$"
6625
+ },
6626
+ "maxItems": 1000
6627
+ },
6628
+ "deviceTags": {
6629
+ "type": "array",
6630
+ "items": {
6631
+ "type": "object",
6632
+ "properties": {
6633
+ "key": {
6634
+ "type": "string",
6635
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
6636
+ },
6637
+ "value": {
6638
+ "type": "string",
6639
+ "minLength": 1,
6640
+ "maxLength": 255
6641
+ }
6642
+ },
6643
+ "additionalProperties": false
6644
+ },
6645
+ "maxItems": 100
6646
+ }
6647
+ },
6648
+ "additionalProperties": false,
6649
+ "required": [
6650
+ "flowId",
6651
+ "version"
6652
+ ]
6653
+ }
6654
+ ```
6655
+ ### <a name="edge-deployment-release-example"></a> Example
6656
+
6657
+ ```json
6658
+ {
6659
+ "flowId": "575ed18f7ae143cd83dc4aa6",
6660
+ "version": "v1.2.3",
6661
+ "deviceIds": [
6662
+ "575ecf887ae143cd83dc4aa2"
6663
+ ]
6664
+ }
6665
+ ```
6666
+
6667
+ <br/>
6668
+
6669
+ ## Edge Deployment Remove
6670
+
6671
+ Schema for removing edge deployments. Can remove a specific workflow from a specific device, can remove all workflows from a specific device, or can remove a specific workflow from all devices.
6672
+
6673
+ ### <a name="edge-deployment-remove-schema"></a> Schema
6674
+
6675
+ ```json
6676
+ {
6677
+ "$schema": "http://json-schema.org/draft-04/schema#",
6678
+ "type": "object",
6679
+ "properties": {
6680
+ "flowId": {
6681
+ "type": [
6682
+ "string",
6683
+ "null"
6684
+ ],
6685
+ "pattern": "^[A-Fa-f\\d]{24}$"
6686
+ },
6687
+ "deviceId": {
6688
+ "type": [
6689
+ "string",
6690
+ "null"
6691
+ ],
6692
+ "pattern": "^[A-Fa-f\\d]{24}$"
6693
+ }
6694
+ },
6695
+ "additionalProperties": false,
6696
+ "required": [
6697
+ "flowId",
6698
+ "deviceId"
6699
+ ]
6700
+ }
6701
+ ```
6702
+ ### <a name="edge-deployment-remove-example"></a> Example
6703
+
6704
+ ```json
6705
+ {
6706
+ "flowId": "575ed18f7ae143cd83dc4aa6",
6707
+ "deviceId": null
6708
+ }
6709
+ ```
6710
+
6711
+ <br/>
6712
+
6713
+ ## Edge Deployment Replace
6714
+
6715
+ Schema for replacing a deployment of a workflow version with a different workflow version
6716
+
6717
+ ### <a name="edge-deployment-replace-schema"></a> Schema
6718
+
6719
+ ```json
6720
+ {
6721
+ "$schema": "http://json-schema.org/draft-04/schema#",
6722
+ "type": "object",
6723
+ "properties": {
6724
+ "flowId": {
6725
+ "type": "string",
6726
+ "pattern": "^[A-Fa-f\\d]{24}$"
6727
+ },
6728
+ "oldVersion": {
6729
+ "type": "string",
6730
+ "minLength": 1,
6731
+ "maxLength": 255
6732
+ },
6733
+ "newVersion": {
6734
+ "type": [
6735
+ "string",
6736
+ "null"
6737
+ ],
6738
+ "minLength": 1,
6739
+ "maxLength": 255
6740
+ }
6741
+ },
6742
+ "additionalProperties": false,
6743
+ "required": [
6744
+ "flowId",
6745
+ "oldVersion",
6746
+ "newVersion"
6747
+ ]
6748
+ }
6749
+ ```
6750
+ ### <a name="edge-deployment-replace-example"></a> Example
6751
+
6752
+ ```json
6753
+ {
6754
+ "flowId": "575ed18f7ae143cd83dc4aa6",
6755
+ "oldVersion": "v1.2.3",
6756
+ "newVersion": "v1.2.4"
6757
+ }
6758
+ ```
6759
+
6760
+ <br/>
6761
+
6762
+ ## Edge Deployments
6763
+
6764
+ Schema for a collection of Edge Deployments
6765
+
6766
+ ### <a name="edge-deployments-schema"></a> Schema
6767
+
6768
+ ```json
6769
+ {
6770
+ "$schema": "http://json-schema.org/draft-04/schema#",
6771
+ "type": "object",
6772
+ "properties": {
6773
+ "items": {
6774
+ "type": "array",
6775
+ "items": {
6776
+ "title": "Edge Deployment",
6777
+ "description": "Schema for a single deployment of an edge workflow to an edge device",
6778
+ "type": "object",
6779
+ "properties": {
6780
+ "id": {
6781
+ "type": "string",
6782
+ "pattern": "^[A-Fa-f\\d]{24}$"
6783
+ },
6784
+ "edgeDeploymentId": {
6785
+ "type": "string",
6786
+ "pattern": "^[A-Fa-f\\d]{24}$"
6787
+ },
6788
+ "applicationId": {
6789
+ "type": "string",
6790
+ "pattern": "^[A-Fa-f\\d]{24}$"
6791
+ },
6792
+ "deviceId": {
6793
+ "type": "string",
6794
+ "pattern": "^[A-Fa-f\\d]{24}$"
6795
+ },
6796
+ "deviceName": {
6797
+ "type": "string",
6798
+ "minLength": 1,
6799
+ "maxLength": 255
6800
+ },
6801
+ "flowId": {
6802
+ "type": "string",
6803
+ "pattern": "^[A-Fa-f\\d]{24}$"
6804
+ },
6805
+ "flowName": {
6806
+ "type": "string",
6807
+ "minLength": 1,
6808
+ "maxLength": 255
6809
+ },
6810
+ "creationDate": {
6811
+ "type": "string",
6812
+ "format": "date-time"
6813
+ },
6814
+ "lastUpdated": {
6815
+ "type": "string",
6816
+ "format": "date-time"
6817
+ },
6818
+ "currentVersion": {
6819
+ "type": [
6820
+ "string",
6821
+ "null"
6822
+ ],
6823
+ "minLength": 1,
6824
+ "maxLength": 255
6825
+ },
6826
+ "desiredVersion": {
6827
+ "type": [
6828
+ "string",
6829
+ "null"
6830
+ ],
6831
+ "minLength": 1,
6832
+ "maxLength": 255
6833
+ },
6834
+ "logs": {
6835
+ "type": "array",
6836
+ "items": {
6837
+ "type": "object",
6838
+ "properties": {
6839
+ "sourceType": {
6840
+ "type": "string",
6841
+ "enum": [
6842
+ "flow",
6843
+ "user",
6844
+ "device",
6845
+ "apiToken"
6846
+ ]
6847
+ },
6848
+ "sourceId": {
6849
+ "type": "string",
6850
+ "pattern": "^[A-Fa-f\\d]{24}$"
6851
+ },
6852
+ "date": {
6853
+ "type": "string",
6854
+ "format": "date-time"
6855
+ },
6856
+ "changeType": {
6857
+ "type": "string",
6858
+ "enum": [
6859
+ "current",
6860
+ "desired"
6861
+ ]
6862
+ },
6863
+ "newValue": {
6864
+ "type": [
6865
+ "string",
6866
+ "null"
6867
+ ],
6868
+ "minLength": 1,
6869
+ "maxLength": 255
6870
+ },
6871
+ "previousValue": {
6872
+ "type": [
6873
+ "string",
6874
+ "null"
6875
+ ],
6876
+ "minLength": 1,
6877
+ "maxLength": 255
6878
+ },
6879
+ "attemptedValue": {
6880
+ "type": [
6881
+ "string",
6882
+ "null"
6883
+ ],
6884
+ "minLength": 1,
6885
+ "maxLength": 255
6886
+ },
6887
+ "error": {
6888
+ "type": "string"
6889
+ }
6890
+ }
6891
+ }
6892
+ }
6893
+ }
6894
+ }
6895
+ },
6896
+ "count": {
6897
+ "type": "integer"
6898
+ },
6899
+ "totalCount": {
6900
+ "type": "integer"
6901
+ },
6902
+ "applicationId": {
6903
+ "type": "string",
6904
+ "pattern": "^[A-Fa-f\\d]{24}$"
6905
+ },
6906
+ "deviceId": {
6907
+ "type": "string",
6908
+ "pattern": "^[A-Fa-f\\d]{24}$"
6909
+ },
6910
+ "flowId": {
6911
+ "type": "string",
6912
+ "pattern": "^[A-Fa-f\\d]{24}$"
6913
+ },
6914
+ "version": {
6915
+ "type": "string",
6916
+ "minLength": 1,
6917
+ "maxLength": 255
6918
+ }
6919
+ }
6920
+ }
6921
+ ```
6922
+ ### <a name="edge-deployments-example"></a> Example
6923
+
6924
+ ```json
6925
+ {
6926
+ "items": [
6927
+ {
6928
+ "id": "5a591be186b70d7b9f9b0954",
6929
+ "edgeDeploymentId": "5a591be186b70d7b9f9b0954",
6930
+ "applicationId": "575ec8687ae143cd83dc4a97",
6931
+ "deviceId": "575ecf887ae143cd83dc4aa2",
6932
+ "flowId": "575ed18f7ae143cd83dc4aa6",
6933
+ "creationDate": "2016-06-13T04:00:00.000Z",
6934
+ "lastUpdated": "2016-06-13T04:00:00.000Z",
6935
+ "desiredVersion": "v1.4.0",
6936
+ "currentVersion": null,
6937
+ "logs": [
6938
+ {
6939
+ "sourceType": "user",
6940
+ "sourceId": "575ed70c7ae143cd83dc4aa9",
6941
+ "date": "2016-06-13T04:00:00.000Z",
6942
+ "changeType": "desired",
6943
+ "newValue": "v1.4.0",
6944
+ "previousValue": null
6945
+ }
6946
+ ]
6947
+ }
6948
+ ],
6949
+ "count": 1,
6950
+ "totalCount": 4,
6951
+ "perPage": 1,
6952
+ "page": 0,
6953
+ "sortField": "id",
6954
+ "sortDirection": "asc",
6955
+ "applicationId": "575ec8687ae143cd83dc4a97"
6956
+ }
6957
+ ```
6958
+
6959
+ <br/>
6960
+
6522
6961
  ## Enable Two Factor Auth
6523
6962
 
6524
6963
  Schema for the body of a request to enable two factor auth
@@ -9075,6 +9514,17 @@ Schema for a single Workflow
9075
9514
  "type": "string",
9076
9515
  "pattern": "^[A-Fa-f\\d]{24}$"
9077
9516
  },
9517
+ "minimumAgentVersion": {
9518
+ "type": "string",
9519
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
9520
+ },
9521
+ "flowClass": {
9522
+ "type": "string",
9523
+ "enum": [
9524
+ "cloud",
9525
+ "edge"
9526
+ ]
9527
+ },
9078
9528
  "triggers": {
9079
9529
  "type": "array",
9080
9530
  "items": {
@@ -9088,6 +9538,7 @@ Schema for a single Workflow
9088
9538
  "type": "string",
9089
9539
  "enum": [
9090
9540
  "dataTable",
9541
+ "deviceCommand",
9091
9542
  "deviceId",
9092
9543
  "deviceIdConnect",
9093
9544
  "deviceIdDisconnect",
@@ -9100,6 +9551,7 @@ Schema for a single Workflow
9100
9551
  "event",
9101
9552
  "integration",
9102
9553
  "mqttTopic",
9554
+ "request",
9103
9555
  "timer",
9104
9556
  "virtualButton",
9105
9557
  "webhook"
@@ -9360,6 +9812,7 @@ Schema for the body of a Workflow modification request
9360
9812
  "type": "string",
9361
9813
  "enum": [
9362
9814
  "dataTable",
9815
+ "deviceCommand",
9363
9816
  "deviceId",
9364
9817
  "deviceIdConnect",
9365
9818
  "deviceIdDisconnect",
@@ -9372,6 +9825,7 @@ Schema for the body of a Workflow modification request
9372
9825
  "event",
9373
9826
  "integration",
9374
9827
  "mqttTopic",
9828
+ "request",
9375
9829
  "timer",
9376
9830
  "virtualButton",
9377
9831
  "webhook"
@@ -9463,6 +9917,10 @@ Schema for the body of a Workflow modification request
9463
9917
  "json"
9464
9918
  ]
9465
9919
  }
9920
+ },
9921
+ "minimumAgentVersion": {
9922
+ "type": "string",
9923
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
9466
9924
  }
9467
9925
  },
9468
9926
  "additionalProperties": false
@@ -9516,6 +9974,7 @@ Schema for the body of a Workflow creation request
9516
9974
  "type": "string",
9517
9975
  "enum": [
9518
9976
  "dataTable",
9977
+ "deviceCommand",
9519
9978
  "deviceId",
9520
9979
  "deviceIdConnect",
9521
9980
  "deviceIdDisconnect",
@@ -9528,6 +9987,7 @@ Schema for the body of a Workflow creation request
9528
9987
  "event",
9529
9988
  "integration",
9530
9989
  "mqttTopic",
9990
+ "request",
9531
9991
  "timer",
9532
9992
  "virtualButton",
9533
9993
  "webhook"
@@ -9619,6 +10079,17 @@ Schema for the body of a Workflow creation request
9619
10079
  "json"
9620
10080
  ]
9621
10081
  }
10082
+ },
10083
+ "flowClass": {
10084
+ "type": "string",
10085
+ "enum": [
10086
+ "cloud",
10087
+ "edge"
10088
+ ]
10089
+ },
10090
+ "minimumAgentVersion": {
10091
+ "type": "string",
10092
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
9622
10093
  }
9623
10094
  },
9624
10095
  "additionalProperties": false,
@@ -9803,6 +10274,7 @@ Schema for a single Workflow Version
9803
10274
  "type": "string",
9804
10275
  "enum": [
9805
10276
  "dataTable",
10277
+ "deviceCommand",
9806
10278
  "deviceId",
9807
10279
  "deviceIdConnect",
9808
10280
  "deviceIdDisconnect",
@@ -9815,6 +10287,7 @@ Schema for a single Workflow Version
9815
10287
  "event",
9816
10288
  "integration",
9817
10289
  "mqttTopic",
10290
+ "request",
9818
10291
  "timer",
9819
10292
  "virtualButton",
9820
10293
  "webhook"
@@ -9906,6 +10379,10 @@ Schema for a single Workflow Version
9906
10379
  "json"
9907
10380
  ]
9908
10381
  }
10382
+ },
10383
+ "minimumAgentVersion": {
10384
+ "type": "string",
10385
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
9909
10386
  }
9910
10387
  }
9911
10388
  }
@@ -10000,6 +10477,7 @@ Schema for the body of a Workflow Version creation request
10000
10477
  "type": "string",
10001
10478
  "enum": [
10002
10479
  "dataTable",
10480
+ "deviceCommand",
10003
10481
  "deviceId",
10004
10482
  "deviceIdConnect",
10005
10483
  "deviceIdDisconnect",
@@ -10012,6 +10490,7 @@ Schema for the body of a Workflow Version creation request
10012
10490
  "event",
10013
10491
  "integration",
10014
10492
  "mqttTopic",
10493
+ "request",
10015
10494
  "timer",
10016
10495
  "virtualButton",
10017
10496
  "webhook"
@@ -10103,6 +10582,10 @@ Schema for the body of a Workflow Version creation request
10103
10582
  "json"
10104
10583
  ]
10105
10584
  }
10585
+ },
10586
+ "minimumAgentVersion": {
10587
+ "type": "string",
10588
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
10106
10589
  }
10107
10590
  },
10108
10591
  "additionalProperties": false,
@@ -10190,6 +10673,7 @@ Schema for a collection of Workflow Versions
10190
10673
  "type": "string",
10191
10674
  "enum": [
10192
10675
  "dataTable",
10676
+ "deviceCommand",
10193
10677
  "deviceId",
10194
10678
  "deviceIdConnect",
10195
10679
  "deviceIdDisconnect",
@@ -10202,6 +10686,7 @@ Schema for a collection of Workflow Versions
10202
10686
  "event",
10203
10687
  "integration",
10204
10688
  "mqttTopic",
10689
+ "request",
10205
10690
  "timer",
10206
10691
  "virtualButton",
10207
10692
  "webhook"
@@ -10293,6 +10778,10 @@ Schema for a collection of Workflow Versions
10293
10778
  "json"
10294
10779
  ]
10295
10780
  }
10781
+ },
10782
+ "minimumAgentVersion": {
10783
+ "type": "string",
10784
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
10296
10785
  }
10297
10786
  }
10298
10787
  }
@@ -10423,6 +10912,17 @@ Schema for a collection of Workflows
10423
10912
  "type": "string",
10424
10913
  "pattern": "^[A-Fa-f\\d]{24}$"
10425
10914
  },
10915
+ "minimumAgentVersion": {
10916
+ "type": "string",
10917
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
10918
+ },
10919
+ "flowClass": {
10920
+ "type": "string",
10921
+ "enum": [
10922
+ "cloud",
10923
+ "edge"
10924
+ ]
10925
+ },
10426
10926
  "triggers": {
10427
10927
  "type": "array",
10428
10928
  "items": {
@@ -10436,6 +10936,7 @@ Schema for a collection of Workflows
10436
10936
  "type": "string",
10437
10937
  "enum": [
10438
10938
  "dataTable",
10939
+ "deviceCommand",
10439
10940
  "deviceId",
10440
10941
  "deviceIdConnect",
10441
10942
  "deviceIdDisconnect",
@@ -10448,6 +10949,7 @@ Schema for a collection of Workflows
10448
10949
  "event",
10449
10950
  "integration",
10450
10951
  "mqttTopic",
10952
+ "request",
10451
10953
  "timer",
10452
10954
  "virtualButton",
10453
10955
  "webhook"
@@ -10601,6 +11103,13 @@ Schema for a collection of Workflows
10601
11103
  "applicationId": {
10602
11104
  "type": "string",
10603
11105
  "pattern": "^[A-Fa-f\\d]{24}$"
11106
+ },
11107
+ "flowClass": {
11108
+ "type": "string",
11109
+ "enum": [
11110
+ "cloud",
11111
+ "edge"
11112
+ ]
10604
11113
  }
10605
11114
  }
10606
11115
  }
@@ -11700,6 +12209,10 @@ Schema for information about the currently authenticated user
11700
12209
  "type": "string",
11701
12210
  "maxLength": 1024
11702
12211
  },
12212
+ "title": {
12213
+ "type": "string",
12214
+ "maxLength": 1024
12215
+ },
11703
12216
  "phoneNumber": {
11704
12217
  "type": "string",
11705
12218
  "maxLength": 1024
@@ -12139,6 +12652,10 @@ Schema for the body of request to modify the current user
12139
12652
  "type": "string",
12140
12653
  "maxLength": 1024
12141
12654
  },
12655
+ "title": {
12656
+ "type": "string",
12657
+ "maxLength": 1024
12658
+ },
12142
12659
  "phoneNumber": {
12143
12660
  "type": "string",
12144
12661
  "maxLength": 1024
@@ -13845,8 +14362,8 @@ Schema for a single Solution
13845
14362
  "slug": {
13846
14363
  "type": "string",
13847
14364
  "minLength": 4,
13848
- "maxLength": 255,
13849
- "pattern": "^[0-9a-z_-]*$"
14365
+ "maxLength": 63,
14366
+ "pattern": "^[0-9a-z-]*$"
13850
14367
  },
13851
14368
  "allowSelfDeletion": {
13852
14369
  "type": "boolean"
@@ -14107,6 +14624,10 @@ Schema for a single Solution User
14107
14624
  "type": "string",
14108
14625
  "maxLength": 1024
14109
14626
  },
14627
+ "title": {
14628
+ "type": "string",
14629
+ "maxLength": 1024
14630
+ },
14110
14631
  "phoneNumber": {
14111
14632
  "type": "string",
14112
14633
  "maxLength": 1024
@@ -14262,6 +14783,10 @@ Schema for the body of a Solution User modification request
14262
14783
  "type": "string",
14263
14784
  "maxLength": 1024
14264
14785
  },
14786
+ "title": {
14787
+ "type": "string",
14788
+ "maxLength": 1024
14789
+ },
14265
14790
  "phoneNumber": {
14266
14791
  "type": "string",
14267
14792
  "maxLength": 1024
@@ -14350,6 +14875,10 @@ Schema for the body of a Solution User creation request
14350
14875
  "type": "string",
14351
14876
  "maxLength": 1024
14352
14877
  },
14878
+ "title": {
14879
+ "type": "string",
14880
+ "maxLength": 1024
14881
+ },
14353
14882
  "phoneNumber": {
14354
14883
  "type": "string",
14355
14884
  "maxLength": 1024
@@ -14491,6 +15020,10 @@ Schema for a collection of Solution Users
14491
15020
  "type": "string",
14492
15021
  "maxLength": 1024
14493
15022
  },
15023
+ "title": {
15024
+ "type": "string",
15025
+ "maxLength": 1024
15026
+ },
14494
15027
  "phoneNumber": {
14495
15028
  "type": "string",
14496
15029
  "maxLength": 1024
@@ -14667,8 +15200,8 @@ Schema for a collection of Solutions
14667
15200
  "slug": {
14668
15201
  "type": "string",
14669
15202
  "minLength": 4,
14670
- "maxLength": 255,
14671
- "pattern": "^[0-9a-z_-]*$"
15203
+ "maxLength": 63,
15204
+ "pattern": "^[0-9a-z-]*$"
14672
15205
  },
14673
15206
  "allowSelfDeletion": {
14674
15207
  "type": "boolean"
@@ -15039,10 +15572,12 @@ Schema for the body of a time series query request
15039
15572
  "attributes": [
15040
15573
  "voltage"
15041
15574
  ],
15042
- "deviceTags": {
15043
- "key": "floor",
15044
- "value": "8"
15045
- }
15575
+ "deviceTags": [
15576
+ {
15577
+ "key": "floor",
15578
+ "value": "8"
15579
+ }
15580
+ ]
15046
15581
  }
15047
15582
  ```
15048
15583