losant_rest 1.7.2 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (119) hide show
  1. checksums.yaml +4 -4
  2. data/docs/_schemas.md +7347 -4603
  3. data/docs/application.md +47 -0
  4. data/docs/applicationApiToken.md +3 -0
  5. data/docs/applicationApiTokens.md +2 -0
  6. data/docs/applicationKey.md +3 -0
  7. data/docs/applicationKeys.md +2 -0
  8. data/docs/applications.md +2 -0
  9. data/docs/auditLog.md +1 -0
  10. data/docs/auditLogs.md +1 -0
  11. data/docs/auth.md +4 -0
  12. data/docs/dashboard.md +4 -0
  13. data/docs/dashboards.md +2 -0
  14. data/docs/data.md +2 -0
  15. data/docs/dataTable.md +5 -0
  16. data/docs/dataTableRow.md +3 -0
  17. data/docs/dataTableRows.md +9 -3
  18. data/docs/dataTables.md +2 -0
  19. data/docs/device.md +12 -0
  20. data/docs/deviceRecipe.md +4 -0
  21. data/docs/deviceRecipes.md +2 -0
  22. data/docs/devices.md +4 -0
  23. data/docs/edgeDeployments.md +4 -0
  24. data/docs/event.md +3 -0
  25. data/docs/events.md +4 -0
  26. data/docs/experience.md +52 -8
  27. data/docs/experienceDomain.md +3 -0
  28. data/docs/experienceDomains.md +2 -0
  29. data/docs/experienceEndpoint.md +4 -0
  30. data/docs/experienceEndpoints.md +9 -1
  31. data/docs/experienceGroup.md +3 -0
  32. data/docs/experienceGroups.md +2 -0
  33. data/docs/experienceSlug.md +133 -0
  34. data/docs/experienceSlugs.md +87 -0
  35. data/docs/experienceUser.md +3 -0
  36. data/docs/experienceUsers.md +2 -0
  37. data/docs/experienceVersion.md +133 -0
  38. data/docs/experienceVersions.md +93 -0
  39. data/docs/experienceView.md +4 -0
  40. data/docs/experienceViews.md +3 -0
  41. data/docs/file.md +4 -0
  42. data/docs/files.md +2 -0
  43. data/docs/flow.md +8 -0
  44. data/docs/flowVersion.md +4 -0
  45. data/docs/flowVersions.md +2 -0
  46. data/docs/flows.md +54 -1
  47. data/docs/integration.md +3 -0
  48. data/docs/integrations.md +2 -0
  49. data/docs/me.md +19 -3
  50. data/docs/org.md +10 -0
  51. data/docs/orgInvites.md +2 -0
  52. data/docs/orgs.md +2 -0
  53. data/docs/solution.md +3 -0
  54. data/docs/solutionUser.md +3 -0
  55. data/docs/solutionUsers.md +2 -0
  56. data/docs/solutions.md +2 -0
  57. data/docs/webhook.md +3 -0
  58. data/docs/webhooks.md +2 -0
  59. data/lib/losant_rest/application.rb +47 -0
  60. data/lib/losant_rest/client.rb +18 -2
  61. data/lib/losant_rest/data_table_rows.rb +3 -3
  62. data/lib/losant_rest/experience.rb +62 -11
  63. data/lib/losant_rest/experience_endpoint.rb +2 -0
  64. data/lib/losant_rest/experience_endpoints.rb +11 -1
  65. data/lib/losant_rest/experience_slug.rb +174 -0
  66. data/lib/losant_rest/experience_slugs.rb +124 -0
  67. data/lib/losant_rest/experience_version.rb +174 -0
  68. data/lib/losant_rest/experience_versions.rb +136 -0
  69. data/lib/losant_rest/experience_view.rb +2 -0
  70. data/lib/losant_rest/experience_views.rb +2 -0
  71. data/lib/losant_rest/flows.rb +66 -1
  72. data/lib/losant_rest/version.rb +1 -1
  73. data/lib/losant_rest.rb +4 -0
  74. data/schemas/apiTokens.json +128 -0
  75. data/schemas/application.json +6 -0
  76. data/schemas/applicationApiTokenPost.json +18 -0
  77. data/schemas/applications.json +6 -0
  78. data/schemas/dataTableRowInMultiple.json +20 -0
  79. data/schemas/dataTableRowInsert.json +42 -0
  80. data/schemas/dataTableRowInsertResult.json +54 -0
  81. data/schemas/edgeDeployment.json +119 -0
  82. data/schemas/emailVerificationVerify.json +20 -0
  83. data/schemas/experienceBootstrapOptions.json +25 -0
  84. data/schemas/experienceBootstrapResult.json +16 -0
  85. data/schemas/experienceDomain.json +5 -0
  86. data/schemas/experienceDomainPatch.json +12 -0
  87. data/schemas/experienceDomainPost.json +12 -0
  88. data/schemas/experienceDomains.json +5 -0
  89. data/schemas/experienceSlug.json +37 -0
  90. data/schemas/experienceSlugPatch.json +25 -0
  91. data/schemas/experienceSlugPost.json +28 -0
  92. data/schemas/experienceSlugs.json +57 -0
  93. data/schemas/experienceVersion.json +82 -0
  94. data/schemas/experienceVersionPatch.json +19 -0
  95. data/schemas/experienceVersionPost.json +35 -0
  96. data/schemas/experienceVersions.json +102 -0
  97. data/schemas/file.json +3 -0
  98. data/schemas/files.json +3 -0
  99. data/schemas/flow.json +5 -0
  100. data/schemas/flowPatch.json +1 -0
  101. data/schemas/flowPost.json +2 -0
  102. data/schemas/flowVersion.json +622 -433
  103. data/schemas/flowVersionPost.json +1 -0
  104. data/schemas/flowVersions.json +622 -433
  105. data/schemas/flows.json +6 -0
  106. data/schemas/flowsImportPost.json +3 -0
  107. data/schemas/flowsImportResult.json +628 -434
  108. data/schemas/githubLogin.json +18 -0
  109. data/schemas/me.json +12 -0
  110. data/schemas/mqttPublishBody.json +20 -0
  111. data/schemas/org.json +12 -0
  112. data/schemas/orgs.json +12 -0
  113. data/schemas/passwordResetFinish.json +31 -0
  114. data/schemas/passwordResetInput.json +19 -0
  115. data/schemas/passwordResetResponse.json +18 -0
  116. data/schemas/solutionMe.json +150 -0
  117. data/schemas/userCredentials.json +18 -0
  118. data/schemas/userPost.json +388 -0
  119. metadata +32 -2
@@ -60,6 +60,7 @@
60
60
  "enum": [
61
61
  "cloud",
62
62
  "edge",
63
+ "experience",
63
64
  "customNode"
64
65
  ]
65
66
  },
@@ -87,6 +88,7 @@
87
88
  "deviceTagInactivity",
88
89
  "endpoint",
89
90
  "event",
91
+ "fileWatch",
90
92
  "integration",
91
93
  "mqttTopic",
92
94
  "request",
@@ -510,6 +512,9 @@
510
512
  ]
511
513
  }
512
514
  },
515
+ "deletedInDevelop": {
516
+ "type": "boolean"
517
+ },
513
518
  "stats": {
514
519
  "type": "object",
515
520
  "properties": {
@@ -546,484 +551,673 @@
546
551
  "items": {
547
552
  "title": "Workflow Version",
548
553
  "description": "Schema for a single Workflow Version",
549
- "type": "object",
550
- "properties": {
551
- "id": {
552
- "type": "string",
553
- "pattern": "^[A-Fa-f\\d]{24}$"
554
- },
555
- "flowVersionId": {
556
- "type": "string",
557
- "pattern": "^[A-Fa-f\\d]{24}$"
558
- },
559
- "flowId": {
560
- "type": "string",
561
- "pattern": "^[A-Fa-f\\d]{24}$"
562
- },
563
- "applicationId": {
564
- "type": "string",
565
- "pattern": "^[A-Fa-f\\d]{24}$"
566
- },
567
- "creationDate": {
568
- "type": "string",
569
- "format": "date-time"
570
- },
571
- "lastUpdated": {
572
- "type": "string",
573
- "format": "date-time"
574
- },
575
- "version": {
576
- "type": "string",
577
- "minLength": 1,
578
- "maxLength": 255
579
- },
580
- "notes": {
581
- "type": "string",
582
- "maxLength": 32767
583
- },
584
- "enabled": {
585
- "type": "boolean"
586
- },
587
- "triggers": {
588
- "type": "array",
589
- "items": {
590
- "type": "object",
591
- "properties": {
592
- "key": {
593
- "type": "string",
594
- "maxLength": 1024
595
- },
596
- "type": {
597
- "type": "string",
598
- "enum": [
599
- "dataTable",
600
- "deviceCommand",
601
- "deviceId",
602
- "deviceIdConnect",
603
- "deviceIdDisconnect",
604
- "deviceIdInactivity",
605
- "deviceTag",
606
- "deviceTagConnect",
607
- "deviceTagDisconnect",
608
- "deviceTagInactivity",
609
- "endpoint",
610
- "event",
611
- "integration",
612
- "mqttTopic",
613
- "request",
614
- "customNodeStart",
615
- "timer",
616
- "udp",
617
- "virtualButton",
618
- "webhook"
619
- ]
620
- },
621
- "config": {
622
- "type": "object"
623
- },
624
- "meta": {
625
- "type": "object"
626
- },
627
- "outputIds": {
628
- "type": "array",
629
- "items": {
630
- "type": "array",
631
- "items": {
632
- "type": "string",
633
- "maxLength": 255
634
- },
635
- "maxItems": 100
636
- },
637
- "maxItems": 100
638
- }
554
+ "oneOf": [
555
+ {
556
+ "description": "Schema for a single Cloud/Edge/Custom Node Workflow Version",
557
+ "type": "object",
558
+ "properties": {
559
+ "id": {
560
+ "type": "string",
561
+ "pattern": "^[A-Fa-f\\d]{24}$"
639
562
  },
640
- "additionalProperties": false,
641
- "required": [
642
- "type"
643
- ]
644
- }
645
- },
646
- "nodes": {
647
- "type": "array",
648
- "items": {
649
- "type": "object",
650
- "properties": {
651
- "id": {
652
- "type": "string",
653
- "maxLength": 1024
654
- },
655
- "type": {
656
- "type": "string",
657
- "minLength": 1,
658
- "maxLength": 1024
659
- },
660
- "config": {
661
- "type": "object"
662
- },
663
- "meta": {
664
- "type": "object"
665
- },
666
- "outputIds": {
667
- "type": "array",
668
- "items": {
669
- "type": "array",
670
- "items": {
671
- "type": "string",
672
- "maxLength": 255
673
- },
674
- "maxItems": 100
675
- },
676
- "maxItems": 100
677
- }
563
+ "flowVersionId": {
564
+ "type": "string",
565
+ "pattern": "^[A-Fa-f\\d]{24}$"
678
566
  },
679
- "additionalProperties": false,
680
- "required": [
681
- "type"
682
- ]
683
- }
684
- },
685
- "globals": {
686
- "type": "array",
687
- "maxItems": 100,
688
- "items": {
689
- "type": "object",
690
- "properties": {
691
- "key": {
692
- "type": "string",
693
- "pattern": "^[0-9a-zA-Z_-]{1,255}$"
694
- },
695
- "json": {
696
- "type": "string",
697
- "minLength": 1,
698
- "maxLength": 32767
699
- }
567
+ "flowId": {
568
+ "type": "string",
569
+ "pattern": "^[A-Fa-f\\d]{24}$"
700
570
  },
701
- "additionalProperties": false,
702
- "required": [
703
- "key",
704
- "json"
705
- ]
706
- }
707
- },
708
- "minimumAgentVersion": {
709
- "type": "string",
710
- "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
711
- },
712
- "customNodeConfig": {
713
- "type": "object",
714
- "properties": {
715
- "outputCount": {
716
- "type": "number",
717
- "enum": [
718
- 1,
719
- 2
720
- ]
571
+ "applicationId": {
572
+ "type": "string",
573
+ "pattern": "^[A-Fa-f\\d]{24}$"
721
574
  },
722
- "resultMode": {
575
+ "creationDate": {
723
576
  "type": "string",
724
- "enum": [
725
- "optional",
726
- "required",
727
- "none"
728
- ]
577
+ "format": "date-time"
729
578
  },
730
- "resultDescription": {
579
+ "lastUpdated": {
580
+ "type": "string",
581
+ "format": "date-time"
582
+ },
583
+ "version": {
584
+ "type": "string",
585
+ "minLength": 1,
586
+ "maxLength": 255
587
+ },
588
+ "notes": {
731
589
  "type": "string",
732
590
  "maxLength": 32767
733
591
  },
734
- "fields": {
592
+ "enabled": {
593
+ "type": "boolean"
594
+ },
595
+ "triggers": {
735
596
  "type": "array",
736
- "maxItems": 100,
737
597
  "items": {
738
- "oneOf": [
739
- {
740
- "type": "object",
741
- "properties": {
742
- "type": {
743
- "type": "string",
744
- "enum": [
745
- "checkbox"
746
- ]
747
- },
748
- "label": {
749
- "type": "string",
750
- "minLength": 1,
751
- "maxLength": 1024
752
- },
753
- "id": {
754
- "type": "string",
755
- "minLength": 1,
756
- "maxLength": 1024
757
- },
758
- "description": {
759
- "type": "string",
760
- "maxLength": 32767
761
- },
762
- "defaultValue": {
763
- "type": "boolean"
764
- }
765
- },
766
- "additionalProperties": false,
767
- "required": [
768
- "type",
769
- "label"
598
+ "type": "object",
599
+ "properties": {
600
+ "key": {
601
+ "type": "string",
602
+ "maxLength": 1024
603
+ },
604
+ "type": {
605
+ "type": "string",
606
+ "enum": [
607
+ "dataTable",
608
+ "deviceCommand",
609
+ "deviceId",
610
+ "deviceIdConnect",
611
+ "deviceIdDisconnect",
612
+ "deviceIdInactivity",
613
+ "deviceTag",
614
+ "deviceTagConnect",
615
+ "deviceTagDisconnect",
616
+ "deviceTagInactivity",
617
+ "endpoint",
618
+ "event",
619
+ "fileWatch",
620
+ "integration",
621
+ "mqttTopic",
622
+ "request",
623
+ "customNodeStart",
624
+ "timer",
625
+ "udp",
626
+ "virtualButton",
627
+ "webhook"
770
628
  ]
771
629
  },
772
- {
773
- "type": "object",
774
- "properties": {
775
- "type": {
776
- "type": "string",
777
- "enum": [
778
- "select"
779
- ]
780
- },
781
- "label": {
630
+ "config": {
631
+ "type": "object"
632
+ },
633
+ "meta": {
634
+ "type": "object"
635
+ },
636
+ "outputIds": {
637
+ "type": "array",
638
+ "items": {
639
+ "type": "array",
640
+ "items": {
782
641
  "type": "string",
783
- "minLength": 1,
784
- "maxLength": 1024
642
+ "maxLength": 255
785
643
  },
786
- "id": {
644
+ "maxItems": 100
645
+ },
646
+ "maxItems": 100
647
+ }
648
+ },
649
+ "additionalProperties": false,
650
+ "required": [
651
+ "type"
652
+ ]
653
+ }
654
+ },
655
+ "nodes": {
656
+ "type": "array",
657
+ "items": {
658
+ "type": "object",
659
+ "properties": {
660
+ "id": {
661
+ "type": "string",
662
+ "maxLength": 1024
663
+ },
664
+ "type": {
665
+ "type": "string",
666
+ "minLength": 1,
667
+ "maxLength": 1024
668
+ },
669
+ "config": {
670
+ "type": "object"
671
+ },
672
+ "meta": {
673
+ "type": "object"
674
+ },
675
+ "outputIds": {
676
+ "type": "array",
677
+ "items": {
678
+ "type": "array",
679
+ "items": {
787
680
  "type": "string",
788
- "minLength": 1,
789
- "maxLength": 1024
681
+ "maxLength": 255
790
682
  },
791
- "description": {
792
- "type": "string",
793
- "maxLength": 32767
794
- },
795
- "defaultValue": {
796
- "type": "string",
797
- "minLength": 1,
798
- "maxLength": 1024
799
- },
800
- "options": {
801
- "type": "array",
802
- "minItems": 1,
803
- "maxItems": 100,
804
- "items": {
805
- "type": "object",
806
- "properties": {
807
- "label": {
808
- "type": "string",
809
- "maxLength": 1024
810
- },
811
- "value": {
812
- "type": "string",
813
- "minLength": 1,
814
- "maxLength": 1024
815
- }
816
- },
817
- "additionalProperties": false,
818
- "required": [
819
- "value"
820
- ]
821
- }
822
- }
683
+ "maxItems": 100
823
684
  },
824
- "additionalProperties": false,
825
- "required": [
826
- "type",
827
- "label",
828
- "defaultValue",
829
- "options"
830
- ]
685
+ "maxItems": 100
686
+ }
687
+ },
688
+ "additionalProperties": false,
689
+ "required": [
690
+ "type"
691
+ ]
692
+ }
693
+ },
694
+ "globals": {
695
+ "type": "array",
696
+ "maxItems": 100,
697
+ "items": {
698
+ "type": "object",
699
+ "properties": {
700
+ "key": {
701
+ "type": "string",
702
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
831
703
  },
832
- {
833
- "type": "object",
834
- "properties": {
835
- "type": {
836
- "type": "string",
837
- "enum": [
838
- "stringTemplate"
704
+ "json": {
705
+ "type": "string",
706
+ "minLength": 1,
707
+ "maxLength": 32767
708
+ }
709
+ },
710
+ "additionalProperties": false,
711
+ "required": [
712
+ "key",
713
+ "json"
714
+ ]
715
+ }
716
+ },
717
+ "minimumAgentVersion": {
718
+ "type": "string",
719
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
720
+ },
721
+ "customNodeConfig": {
722
+ "type": "object",
723
+ "properties": {
724
+ "outputCount": {
725
+ "type": "number",
726
+ "enum": [
727
+ 1,
728
+ 2
729
+ ]
730
+ },
731
+ "resultMode": {
732
+ "type": "string",
733
+ "enum": [
734
+ "optional",
735
+ "required",
736
+ "none"
737
+ ]
738
+ },
739
+ "resultDescription": {
740
+ "type": "string",
741
+ "maxLength": 32767
742
+ },
743
+ "fields": {
744
+ "type": "array",
745
+ "maxItems": 100,
746
+ "items": {
747
+ "oneOf": [
748
+ {
749
+ "type": "object",
750
+ "properties": {
751
+ "type": {
752
+ "type": "string",
753
+ "enum": [
754
+ "checkbox"
755
+ ]
756
+ },
757
+ "label": {
758
+ "type": "string",
759
+ "minLength": 1,
760
+ "maxLength": 1024
761
+ },
762
+ "id": {
763
+ "type": "string",
764
+ "minLength": 1,
765
+ "maxLength": 1024
766
+ },
767
+ "description": {
768
+ "type": "string",
769
+ "maxLength": 32767
770
+ },
771
+ "defaultValue": {
772
+ "type": "boolean"
773
+ }
774
+ },
775
+ "additionalProperties": false,
776
+ "required": [
777
+ "type",
778
+ "label"
839
779
  ]
840
780
  },
841
- "label": {
842
- "type": "string",
843
- "minLength": 1,
844
- "maxLength": 1024
845
- },
846
- "id": {
847
- "type": "string",
848
- "minLength": 1,
849
- "maxLength": 1024
850
- },
851
- "description": {
852
- "type": "string",
853
- "maxLength": 32767
854
- },
855
- "defaultValue": {
856
- "type": "string",
857
- "maxLength": 1024
858
- },
859
- "required": {
860
- "type": "boolean"
861
- },
862
- "validRegExp": {
863
- "type": "string",
864
- "maxLength": 1024
865
- }
866
- },
867
- "additionalProperties": false,
868
- "required": [
869
- "type",
870
- "label"
871
- ]
872
- },
873
- {
874
- "type": "object",
875
- "properties": {
876
- "type": {
877
- "type": "string",
878
- "enum": [
879
- "numberTemplate"
781
+ {
782
+ "type": "object",
783
+ "properties": {
784
+ "type": {
785
+ "type": "string",
786
+ "enum": [
787
+ "select"
788
+ ]
789
+ },
790
+ "label": {
791
+ "type": "string",
792
+ "minLength": 1,
793
+ "maxLength": 1024
794
+ },
795
+ "id": {
796
+ "type": "string",
797
+ "minLength": 1,
798
+ "maxLength": 1024
799
+ },
800
+ "description": {
801
+ "type": "string",
802
+ "maxLength": 32767
803
+ },
804
+ "defaultValue": {
805
+ "type": "string",
806
+ "minLength": 1,
807
+ "maxLength": 1024
808
+ },
809
+ "options": {
810
+ "type": "array",
811
+ "minItems": 1,
812
+ "maxItems": 100,
813
+ "items": {
814
+ "type": "object",
815
+ "properties": {
816
+ "label": {
817
+ "type": "string",
818
+ "maxLength": 1024
819
+ },
820
+ "value": {
821
+ "type": "string",
822
+ "minLength": 1,
823
+ "maxLength": 1024
824
+ }
825
+ },
826
+ "additionalProperties": false,
827
+ "required": [
828
+ "value"
829
+ ]
830
+ }
831
+ }
832
+ },
833
+ "additionalProperties": false,
834
+ "required": [
835
+ "type",
836
+ "label",
837
+ "defaultValue",
838
+ "options"
880
839
  ]
881
840
  },
882
- "label": {
883
- "type": "string",
884
- "minLength": 1,
885
- "maxLength": 1024
886
- },
887
- "id": {
888
- "type": "string",
889
- "minLength": 1,
890
- "maxLength": 1024
891
- },
892
- "description": {
893
- "type": "string",
894
- "maxLength": 32767
841
+ {
842
+ "type": "object",
843
+ "properties": {
844
+ "type": {
845
+ "type": "string",
846
+ "enum": [
847
+ "stringTemplate"
848
+ ]
849
+ },
850
+ "label": {
851
+ "type": "string",
852
+ "minLength": 1,
853
+ "maxLength": 1024
854
+ },
855
+ "id": {
856
+ "type": "string",
857
+ "minLength": 1,
858
+ "maxLength": 1024
859
+ },
860
+ "description": {
861
+ "type": "string",
862
+ "maxLength": 32767
863
+ },
864
+ "defaultValue": {
865
+ "type": "string",
866
+ "maxLength": 1024
867
+ },
868
+ "required": {
869
+ "type": "boolean"
870
+ },
871
+ "validRegExp": {
872
+ "type": "string",
873
+ "maxLength": 1024
874
+ }
875
+ },
876
+ "additionalProperties": false,
877
+ "required": [
878
+ "type",
879
+ "label"
880
+ ]
895
881
  },
896
- "defaultValue": {
897
- "type": "number"
882
+ {
883
+ "type": "object",
884
+ "properties": {
885
+ "type": {
886
+ "type": "string",
887
+ "enum": [
888
+ "numberTemplate"
889
+ ]
890
+ },
891
+ "label": {
892
+ "type": "string",
893
+ "minLength": 1,
894
+ "maxLength": 1024
895
+ },
896
+ "id": {
897
+ "type": "string",
898
+ "minLength": 1,
899
+ "maxLength": 1024
900
+ },
901
+ "description": {
902
+ "type": "string",
903
+ "maxLength": 32767
904
+ },
905
+ "defaultValue": {
906
+ "type": "number"
907
+ },
908
+ "required": {
909
+ "type": "boolean"
910
+ },
911
+ "validMin": {
912
+ "type": "number"
913
+ },
914
+ "validMax": {
915
+ "type": "number"
916
+ }
917
+ },
918
+ "additionalProperties": false,
919
+ "required": [
920
+ "type",
921
+ "label"
922
+ ]
898
923
  },
899
- "required": {
900
- "type": "boolean"
924
+ {
925
+ "type": "object",
926
+ "properties": {
927
+ "type": {
928
+ "type": "string",
929
+ "enum": [
930
+ "jsonTemplate"
931
+ ]
932
+ },
933
+ "label": {
934
+ "type": "string",
935
+ "minLength": 1,
936
+ "maxLength": 1024
937
+ },
938
+ "id": {
939
+ "type": "string",
940
+ "minLength": 1,
941
+ "maxLength": 1024
942
+ },
943
+ "description": {
944
+ "type": "string",
945
+ "maxLength": 32767
946
+ },
947
+ "defaultValue": {
948
+ "type": "string",
949
+ "maxLength": 32767
950
+ },
951
+ "required": {
952
+ "type": "boolean"
953
+ }
954
+ },
955
+ "additionalProperties": false,
956
+ "required": [
957
+ "type",
958
+ "label"
959
+ ]
901
960
  },
902
- "validMin": {
903
- "type": "number"
961
+ {
962
+ "type": "object",
963
+ "properties": {
964
+ "type": {
965
+ "type": "string",
966
+ "enum": [
967
+ "payloadPath"
968
+ ]
969
+ },
970
+ "label": {
971
+ "type": "string",
972
+ "minLength": 1,
973
+ "maxLength": 1024
974
+ },
975
+ "id": {
976
+ "type": "string",
977
+ "minLength": 1,
978
+ "maxLength": 1024
979
+ },
980
+ "description": {
981
+ "type": "string",
982
+ "maxLength": 32767
983
+ },
984
+ "required": {
985
+ "type": "boolean"
986
+ }
987
+ },
988
+ "additionalProperties": false,
989
+ "required": [
990
+ "type",
991
+ "label"
992
+ ]
904
993
  },
905
- "validMax": {
906
- "type": "number"
994
+ {
995
+ "type": "object",
996
+ "properties": {
997
+ "type": {
998
+ "type": "string",
999
+ "enum": [
1000
+ "section"
1001
+ ]
1002
+ },
1003
+ "label": {
1004
+ "type": "string",
1005
+ "minLength": 1,
1006
+ "maxLength": 1024
1007
+ },
1008
+ "id": {
1009
+ "type": "string",
1010
+ "minLength": 1,
1011
+ "maxLength": 1024
1012
+ },
1013
+ "description": {
1014
+ "type": "string",
1015
+ "maxLength": 32767
1016
+ }
1017
+ },
1018
+ "additionalProperties": false,
1019
+ "required": [
1020
+ "type",
1021
+ "label"
1022
+ ]
907
1023
  }
908
- },
909
- "additionalProperties": false,
910
- "required": [
911
- "type",
912
- "label"
913
1024
  ]
1025
+ }
1026
+ }
1027
+ },
1028
+ "additionalProperties": false,
1029
+ "required": [
1030
+ "outputCount",
1031
+ "resultMode",
1032
+ "fields"
1033
+ ]
1034
+ }
1035
+ }
1036
+ },
1037
+ {
1038
+ "description": "Schema for a single Experience Workflow Version",
1039
+ "type": "object",
1040
+ "properties": {
1041
+ "id": {
1042
+ "type": "string",
1043
+ "pattern": "^[A-Fa-f\\d]{24}$"
1044
+ },
1045
+ "flowVersionId": {
1046
+ "type": "string",
1047
+ "pattern": "^[A-Fa-f\\d]{24}$"
1048
+ },
1049
+ "flowId": {
1050
+ "type": "string",
1051
+ "pattern": "^[A-Fa-f\\d]{24}$"
1052
+ },
1053
+ "applicationId": {
1054
+ "type": "string",
1055
+ "pattern": "^[A-Fa-f\\d]{24}$"
1056
+ },
1057
+ "creationDate": {
1058
+ "type": "string",
1059
+ "format": "date-time"
1060
+ },
1061
+ "lastUpdated": {
1062
+ "type": "string",
1063
+ "format": "date-time"
1064
+ },
1065
+ "name": {
1066
+ "type": "string",
1067
+ "minLength": 1,
1068
+ "maxLength": 255
1069
+ },
1070
+ "description": {
1071
+ "type": "string",
1072
+ "maxLength": 32767
1073
+ },
1074
+ "iconData": {
1075
+ "type": "string",
1076
+ "maxLength": 32767,
1077
+ "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
1078
+ },
1079
+ "flowClass": {
1080
+ "type": "string",
1081
+ "enum": [
1082
+ "experience"
1083
+ ]
1084
+ },
1085
+ "versions": {
1086
+ "type": "array",
1087
+ "items": {
1088
+ "type": "string",
1089
+ "minLength": 1,
1090
+ "maxLength": 255
1091
+ }
1092
+ },
1093
+ "enabled": {
1094
+ "type": "boolean"
1095
+ },
1096
+ "triggers": {
1097
+ "type": "array",
1098
+ "items": {
1099
+ "type": "object",
1100
+ "properties": {
1101
+ "key": {
1102
+ "type": "string",
1103
+ "maxLength": 1024
914
1104
  },
915
- {
916
- "type": "object",
917
- "properties": {
918
- "type": {
919
- "type": "string",
920
- "enum": [
921
- "jsonTemplate"
922
- ]
923
- },
924
- "label": {
925
- "type": "string",
926
- "minLength": 1,
927
- "maxLength": 1024
928
- },
929
- "id": {
930
- "type": "string",
931
- "minLength": 1,
932
- "maxLength": 1024
933
- },
934
- "description": {
935
- "type": "string",
936
- "maxLength": 32767
937
- },
938
- "defaultValue": {
939
- "type": "string",
940
- "maxLength": 32767
941
- },
942
- "required": {
943
- "type": "boolean"
944
- }
945
- },
946
- "additionalProperties": false,
947
- "required": [
948
- "type",
949
- "label"
1105
+ "type": {
1106
+ "type": "string",
1107
+ "enum": [
1108
+ "dataTable",
1109
+ "deviceCommand",
1110
+ "deviceId",
1111
+ "deviceIdConnect",
1112
+ "deviceIdDisconnect",
1113
+ "deviceIdInactivity",
1114
+ "deviceTag",
1115
+ "deviceTagConnect",
1116
+ "deviceTagDisconnect",
1117
+ "deviceTagInactivity",
1118
+ "endpoint",
1119
+ "event",
1120
+ "fileWatch",
1121
+ "integration",
1122
+ "mqttTopic",
1123
+ "request",
1124
+ "customNodeStart",
1125
+ "timer",
1126
+ "udp",
1127
+ "virtualButton",
1128
+ "webhook"
950
1129
  ]
951
1130
  },
952
- {
953
- "type": "object",
954
- "properties": {
955
- "type": {
956
- "type": "string",
957
- "enum": [
958
- "payloadPath"
959
- ]
960
- },
961
- "label": {
962
- "type": "string",
963
- "minLength": 1,
964
- "maxLength": 1024
965
- },
966
- "id": {
967
- "type": "string",
968
- "minLength": 1,
969
- "maxLength": 1024
970
- },
971
- "description": {
1131
+ "config": {
1132
+ "type": "object"
1133
+ },
1134
+ "meta": {
1135
+ "type": "object"
1136
+ },
1137
+ "outputIds": {
1138
+ "type": "array",
1139
+ "items": {
1140
+ "type": "array",
1141
+ "items": {
972
1142
  "type": "string",
973
- "maxLength": 32767
1143
+ "maxLength": 255
974
1144
  },
975
- "required": {
976
- "type": "boolean"
977
- }
1145
+ "maxItems": 100
978
1146
  },
979
- "additionalProperties": false,
980
- "required": [
981
- "type",
982
- "label"
983
- ]
1147
+ "maxItems": 100
1148
+ }
1149
+ },
1150
+ "additionalProperties": false,
1151
+ "required": [
1152
+ "type"
1153
+ ]
1154
+ }
1155
+ },
1156
+ "nodes": {
1157
+ "type": "array",
1158
+ "items": {
1159
+ "type": "object",
1160
+ "properties": {
1161
+ "id": {
1162
+ "type": "string",
1163
+ "maxLength": 1024
984
1164
  },
985
- {
986
- "type": "object",
987
- "properties": {
988
- "type": {
989
- "type": "string",
990
- "enum": [
991
- "section"
992
- ]
993
- },
994
- "label": {
1165
+ "type": {
1166
+ "type": "string",
1167
+ "minLength": 1,
1168
+ "maxLength": 1024
1169
+ },
1170
+ "config": {
1171
+ "type": "object"
1172
+ },
1173
+ "meta": {
1174
+ "type": "object"
1175
+ },
1176
+ "outputIds": {
1177
+ "type": "array",
1178
+ "items": {
1179
+ "type": "array",
1180
+ "items": {
995
1181
  "type": "string",
996
- "minLength": 1,
997
- "maxLength": 1024
1182
+ "maxLength": 255
998
1183
  },
999
- "id": {
1000
- "type": "string",
1001
- "minLength": 1,
1002
- "maxLength": 1024
1003
- },
1004
- "description": {
1005
- "type": "string",
1006
- "maxLength": 32767
1007
- }
1184
+ "maxItems": 100
1008
1185
  },
1009
- "additionalProperties": false,
1010
- "required": [
1011
- "type",
1012
- "label"
1013
- ]
1186
+ "maxItems": 100
1014
1187
  }
1188
+ },
1189
+ "additionalProperties": false,
1190
+ "required": [
1191
+ "type"
1192
+ ]
1193
+ }
1194
+ },
1195
+ "globals": {
1196
+ "type": "array",
1197
+ "maxItems": 100,
1198
+ "items": {
1199
+ "type": "object",
1200
+ "properties": {
1201
+ "key": {
1202
+ "type": "string",
1203
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
1204
+ },
1205
+ "json": {
1206
+ "type": "string",
1207
+ "minLength": 1,
1208
+ "maxLength": 32767
1209
+ }
1210
+ },
1211
+ "additionalProperties": false,
1212
+ "required": [
1213
+ "key",
1214
+ "json"
1015
1215
  ]
1016
1216
  }
1017
1217
  }
1018
- },
1019
- "additionalProperties": false,
1020
- "required": [
1021
- "outputCount",
1022
- "resultMode",
1023
- "fields"
1024
- ]
1218
+ }
1025
1219
  }
1026
- }
1220
+ ]
1027
1221
  }
1028
1222
  },
1029
1223
  "importedFlowIdMap": {