losant_rest 1.8.9 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +5 -5
  2. data/docs/_schemas.md +26390 -4889
  3. data/docs/device.md +1 -1
  4. data/docs/devices.md +44 -4
  5. data/lib/losant_rest/client.rb +2 -2
  6. data/lib/losant_rest/device.rb +1 -1
  7. data/lib/losant_rest/devices.rb +52 -4
  8. data/lib/losant_rest/version.rb +1 -1
  9. data/schemas/application.json +25 -0
  10. data/schemas/applicationApiTokenPost.json +1 -0
  11. data/schemas/applicationPatch.json +25 -0
  12. data/schemas/applicationPost.json +25 -0
  13. data/schemas/applications.json +25 -0
  14. data/schemas/authedDevice.json +2 -1
  15. data/schemas/dashboard.json +34 -11
  16. data/schemas/dashboardPatch.json +34 -11
  17. data/schemas/dashboardPost.json +34 -11
  18. data/schemas/dashboards.json +34 -11
  19. data/schemas/device.json +110 -1
  20. data/schemas/deviceClassFilter.json +31 -0
  21. data/schemas/devicePatch.json +110 -1
  22. data/schemas/devicePost.json +110 -1
  23. data/schemas/deviceRecipe.json +110 -1
  24. data/schemas/deviceRecipePatch.json +110 -1
  25. data/schemas/deviceRecipePost.json +110 -1
  26. data/schemas/deviceRecipes.json +110 -1
  27. data/schemas/devices.json +123 -2
  28. data/schemas/devicesPatch.json +209 -0
  29. data/schemas/flow.json +1491 -54
  30. data/schemas/flowPatch.json +1491 -54
  31. data/schemas/flowPost.json +1491 -54
  32. data/schemas/flowVersion.json +3319 -445
  33. data/schemas/flowVersionPost.json +1491 -54
  34. data/schemas/flowVersions.json +3319 -445
  35. data/schemas/flows.json +1491 -54
  36. data/schemas/flowsImportPost.json +3313 -439
  37. data/schemas/flowsImportResult.json +5129 -818
  38. data/schemas/githubLogin.json +1 -0
  39. data/schemas/userCredentials.json +1 -0
  40. data/schemas/userPost.json +1 -0
  41. metadata +5 -3
@@ -51,604 +51,3478 @@
51
51
  "triggers": {
52
52
  "type": "array",
53
53
  "items": {
54
- "type": "object",
55
- "properties": {
56
- "key": {
57
- "type": "string",
58
- "maxLength": 1024
59
- },
60
- "type": {
61
- "type": "string",
62
- "enum": [
63
- "customNodeStart",
64
- "dataTable",
65
- "deviceCommand",
66
- "deviceId",
67
- "deviceIdConnect",
68
- "deviceIdDisconnect",
69
- "deviceIdInactivity",
70
- "deviceTag",
71
- "deviceTagConnect",
72
- "deviceTagDisconnect",
73
- "deviceTagInactivity",
74
- "endpoint",
75
- "event",
76
- "fileTail",
77
- "fileWatch",
78
- "integration",
79
- "mqttTopic",
80
- "notebook",
81
- "onBoot",
82
- "onConnect",
83
- "onDisconnect",
84
- "opcua",
85
- "redis",
86
- "request",
87
- "serial",
88
- "timer",
89
- "udp",
90
- "virtualButton",
91
- "webhook"
92
- ]
93
- },
94
- "config": {
95
- "type": "object"
96
- },
97
- "meta": {
98
- "type": "object"
99
- },
100
- "outputIds": {
101
- "type": "array",
102
- "items": {
103
- "type": "array",
104
- "items": {
54
+ "oneOf": [
55
+ {
56
+ "type": "object",
57
+ "properties": {
58
+ "key": {
105
59
  "type": "string",
106
- "maxLength": 255
60
+ "maxLength": 1024
107
61
  },
108
- "maxItems": 100
62
+ "type": {
63
+ "type": "string",
64
+ "enum": [
65
+ "customNodeStart",
66
+ "deviceCommand",
67
+ "deviceIdConnect",
68
+ "deviceTagConnect",
69
+ "deviceIdDisconnect",
70
+ "deviceTagDisconnect",
71
+ "integration",
72
+ "mqttTopic",
73
+ "notebook",
74
+ "onBoot",
75
+ "onConnect",
76
+ "onDisconnect",
77
+ "request",
78
+ "udp",
79
+ "webhook"
80
+ ]
81
+ },
82
+ "config": {
83
+ "type": "object",
84
+ "additionalProperties": false
85
+ },
86
+ "meta": {
87
+ "type": "object",
88
+ "properties": {
89
+ "category": {
90
+ "type": "string",
91
+ "enum": [
92
+ "trigger"
93
+ ]
94
+ },
95
+ "name": {
96
+ "type": "string",
97
+ "enum": [
98
+ "customNodeStart",
99
+ "deviceCommand",
100
+ "deviceIdsTagsConnect",
101
+ "deviceIdsTagsDisconnect",
102
+ "googlePubSub",
103
+ "meridian",
104
+ "mqtt",
105
+ "notebook",
106
+ "onBoot",
107
+ "onConnect",
108
+ "onDisconnect",
109
+ "particle",
110
+ "request",
111
+ "udp",
112
+ "webhook"
113
+ ]
114
+ },
115
+ "label": {
116
+ "type": "string",
117
+ "minLength": 1,
118
+ "maxLength": 255
119
+ },
120
+ "x": {
121
+ "type": "number"
122
+ },
123
+ "y": {
124
+ "type": "number"
125
+ },
126
+ "uiId": {
127
+ "type": "string",
128
+ "maxLength": 48
129
+ },
130
+ "description": {
131
+ "type": "string",
132
+ "maxLength": 32767
133
+ },
134
+ "icon": {
135
+ "type": "string",
136
+ "maxLength": 1024
137
+ },
138
+ "color": {
139
+ "type": "string",
140
+ "maxLength": 1024
141
+ },
142
+ "inputCount": {
143
+ "type": "number"
144
+ },
145
+ "outputCount": {
146
+ "type": "number"
147
+ },
148
+ "triggerId": {
149
+ "type": "string",
150
+ "maxLength": 48
151
+ },
152
+ "id": {
153
+ "type": "string",
154
+ "maxLength": 48
155
+ }
156
+ },
157
+ "additionalProperties": false
158
+ },
159
+ "outputIds": {
160
+ "type": "array",
161
+ "items": {
162
+ "type": "array",
163
+ "items": {
164
+ "type": "string",
165
+ "maxLength": 255
166
+ },
167
+ "maxItems": 100
168
+ },
169
+ "maxItems": 100
170
+ }
109
171
  },
110
- "maxItems": 100
111
- }
112
- },
113
- "additionalProperties": false,
114
- "required": [
115
- "type"
116
- ]
117
- }
118
- },
119
- "nodes": {
120
- "type": "array",
121
- "items": {
122
- "type": "object",
123
- "properties": {
124
- "id": {
125
- "type": "string",
126
- "maxLength": 1024
127
- },
128
- "type": {
129
- "type": "string",
130
- "minLength": 1,
131
- "maxLength": 1024
132
- },
133
- "config": {
134
- "type": "object"
172
+ "required": [
173
+ "type"
174
+ ],
175
+ "additionalProperties": false
135
176
  },
136
- "meta": {
137
- "type": "object"
177
+ {
178
+ "type": "object",
179
+ "properties": {
180
+ "key": {
181
+ "type": "string",
182
+ "maxLength": 1024
183
+ },
184
+ "type": {
185
+ "type": "string",
186
+ "enum": [
187
+ "dataTable"
188
+ ]
189
+ },
190
+ "config": {
191
+ "type": "object",
192
+ "properties": {
193
+ "bulkInsert": {
194
+ "type": "boolean"
195
+ },
196
+ "delete": {
197
+ "type": "boolean"
198
+ },
199
+ "insert": {
200
+ "type": "boolean"
201
+ },
202
+ "update": {
203
+ "type": "boolean"
204
+ }
205
+ },
206
+ "additionalProperties": false
207
+ },
208
+ "meta": {
209
+ "type": "object",
210
+ "properties": {
211
+ "category": {
212
+ "type": "string",
213
+ "enum": [
214
+ "trigger"
215
+ ]
216
+ },
217
+ "name": {
218
+ "type": "string",
219
+ "enum": [
220
+ "dataTable"
221
+ ]
222
+ },
223
+ "label": {
224
+ "type": "string",
225
+ "minLength": 1,
226
+ "maxLength": 255
227
+ },
228
+ "x": {
229
+ "type": "number"
230
+ },
231
+ "y": {
232
+ "type": "number"
233
+ },
234
+ "uiId": {
235
+ "type": "string",
236
+ "maxLength": 48
237
+ },
238
+ "description": {
239
+ "type": "string",
240
+ "maxLength": 32767
241
+ },
242
+ "icon": {
243
+ "type": "string",
244
+ "maxLength": 1024
245
+ },
246
+ "color": {
247
+ "type": "string",
248
+ "maxLength": 1024
249
+ },
250
+ "inputCount": {
251
+ "type": "number"
252
+ },
253
+ "outputCount": {
254
+ "type": "number"
255
+ },
256
+ "id": {
257
+ "type": "string",
258
+ "maxLength": 48
259
+ }
260
+ },
261
+ "additionalProperties": false
262
+ },
263
+ "outputIds": {
264
+ "type": "array",
265
+ "items": {
266
+ "type": "array",
267
+ "items": {
268
+ "type": "string",
269
+ "maxLength": 255
270
+ },
271
+ "maxItems": 100
272
+ },
273
+ "maxItems": 100
274
+ }
275
+ },
276
+ "required": [
277
+ "type"
278
+ ],
279
+ "additionalProperties": false
138
280
  },
139
- "outputIds": {
140
- "type": "array",
141
- "items": {
142
- "type": "array",
143
- "items": {
281
+ {
282
+ "type": "object",
283
+ "properties": {
284
+ "key": {
144
285
  "type": "string",
145
- "maxLength": 255
286
+ "maxLength": 1024
146
287
  },
147
- "maxItems": 100
288
+ "type": {
289
+ "type": "string",
290
+ "enum": [
291
+ "deviceId",
292
+ "deviceTag"
293
+ ]
294
+ },
295
+ "config": {
296
+ "type": "object",
297
+ "properties": {
298
+ "attributeBlacklist": {
299
+ "type": "array",
300
+ "maxItems": 100,
301
+ "items": {
302
+ "type": "string",
303
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
304
+ }
305
+ },
306
+ "attributeWhitelist": {
307
+ "type": "array",
308
+ "maxItems": 100,
309
+ "items": {
310
+ "type": "string",
311
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
312
+ }
313
+ },
314
+ "maxAge": {
315
+ "type": "number"
316
+ }
317
+ },
318
+ "additionalProperties": false
319
+ },
320
+ "meta": {
321
+ "type": "object",
322
+ "properties": {
323
+ "category": {
324
+ "type": "string",
325
+ "enum": [
326
+ "trigger"
327
+ ]
328
+ },
329
+ "name": {
330
+ "type": "string",
331
+ "enum": [
332
+ "deviceIdsTags",
333
+ "device",
334
+ "deviceTag"
335
+ ]
336
+ },
337
+ "label": {
338
+ "type": "string",
339
+ "minLength": 1,
340
+ "maxLength": 255
341
+ },
342
+ "x": {
343
+ "type": "number"
344
+ },
345
+ "y": {
346
+ "type": "number"
347
+ },
348
+ "uiId": {
349
+ "type": "string",
350
+ "maxLength": 48
351
+ },
352
+ "description": {
353
+ "type": "string",
354
+ "maxLength": 32767
355
+ },
356
+ "icon": {
357
+ "type": "string",
358
+ "maxLength": 1024
359
+ },
360
+ "color": {
361
+ "type": "string",
362
+ "maxLength": 1024
363
+ },
364
+ "inputCount": {
365
+ "type": "number"
366
+ },
367
+ "outputCount": {
368
+ "type": "number"
369
+ },
370
+ "id": {
371
+ "type": "string",
372
+ "maxLength": 48
373
+ },
374
+ "timeUnit": {
375
+ "type": "string",
376
+ "maxLength": 48
377
+ },
378
+ "maxAgeToggle": {
379
+ "type": "boolean"
380
+ },
381
+ "allowedAttributeType": {
382
+ "type": "string",
383
+ "enum": [
384
+ "attributeWhitelist",
385
+ "any",
386
+ "attributeBlacklist"
387
+ ]
388
+ }
389
+ },
390
+ "additionalProperties": false
391
+ },
392
+ "outputIds": {
393
+ "type": "array",
394
+ "items": {
395
+ "type": "array",
396
+ "items": {
397
+ "type": "string",
398
+ "maxLength": 255
399
+ },
400
+ "maxItems": 100
401
+ },
402
+ "maxItems": 100
403
+ }
148
404
  },
149
- "maxItems": 100
150
- }
151
- },
152
- "additionalProperties": false,
153
- "required": [
154
- "type"
155
- ]
156
- }
157
- },
158
- "globals": {
159
- "type": "array",
160
- "maxItems": 100,
161
- "items": {
162
- "type": "object",
163
- "properties": {
164
- "key": {
165
- "type": "string",
166
- "pattern": "^[0-9a-zA-Z_-]{1,255}$"
405
+ "required": [
406
+ "type"
407
+ ],
408
+ "additionalProperties": false
409
+ },
410
+ {
411
+ "type": "object",
412
+ "properties": {
413
+ "key": {
414
+ "type": "string",
415
+ "maxLength": 1024
416
+ },
417
+ "type": {
418
+ "type": "string",
419
+ "enum": [
420
+ "deviceIdInactivity",
421
+ "deviceTagInactivity"
422
+ ]
423
+ },
424
+ "config": {
425
+ "type": "object",
426
+ "properties": {
427
+ "seconds": {
428
+ "type": "number"
429
+ }
430
+ },
431
+ "additionalProperties": false
432
+ },
433
+ "meta": {
434
+ "type": "object",
435
+ "properties": {
436
+ "category": {
437
+ "type": "string",
438
+ "enum": [
439
+ "trigger"
440
+ ]
441
+ },
442
+ "name": {
443
+ "type": "string",
444
+ "enum": [
445
+ "deviceIdsTagsInactivity"
446
+ ]
447
+ },
448
+ "label": {
449
+ "type": "string",
450
+ "minLength": 1,
451
+ "maxLength": 255
452
+ },
453
+ "x": {
454
+ "type": "number"
455
+ },
456
+ "y": {
457
+ "type": "number"
458
+ },
459
+ "uiId": {
460
+ "type": "string",
461
+ "maxLength": 48
462
+ },
463
+ "description": {
464
+ "type": "string",
465
+ "maxLength": 32767
466
+ },
467
+ "icon": {
468
+ "type": "string",
469
+ "maxLength": 1024
470
+ },
471
+ "color": {
472
+ "type": "string",
473
+ "maxLength": 1024
474
+ },
475
+ "inputCount": {
476
+ "type": "number"
477
+ },
478
+ "outputCount": {
479
+ "type": "number"
480
+ },
481
+ "id": {
482
+ "type": "string",
483
+ "maxLength": 48
484
+ }
485
+ },
486
+ "additionalProperties": false
487
+ },
488
+ "outputIds": {
489
+ "type": "array",
490
+ "items": {
491
+ "type": "array",
492
+ "items": {
493
+ "type": "string",
494
+ "maxLength": 255
495
+ },
496
+ "maxItems": 100
497
+ },
498
+ "maxItems": 100
499
+ }
500
+ },
501
+ "required": [
502
+ "type"
503
+ ],
504
+ "additionalProperties": false
505
+ },
506
+ {
507
+ "type": "object",
508
+ "properties": {
509
+ "key": {
510
+ "type": "string",
511
+ "maxLength": 1024
512
+ },
513
+ "type": {
514
+ "type": "string",
515
+ "enum": [
516
+ "endpoint"
517
+ ]
518
+ },
519
+ "config": {
520
+ "type": "object",
521
+ "properties": {
522
+ "experienceVersion": {
523
+ "type": "string",
524
+ "minLength": 1,
525
+ "maxLength": 255
526
+ }
527
+ },
528
+ "additionalProperties": false
529
+ },
530
+ "meta": {
531
+ "type": "object",
532
+ "properties": {
533
+ "category": {
534
+ "type": "string",
535
+ "enum": [
536
+ "trigger"
537
+ ]
538
+ },
539
+ "name": {
540
+ "type": "string",
541
+ "enum": [
542
+ "endpoint"
543
+ ]
544
+ },
545
+ "label": {
546
+ "type": "string",
547
+ "minLength": 1,
548
+ "maxLength": 255
549
+ },
550
+ "x": {
551
+ "type": "number"
552
+ },
553
+ "y": {
554
+ "type": "number"
555
+ },
556
+ "uiId": {
557
+ "type": "string",
558
+ "maxLength": 48
559
+ },
560
+ "description": {
561
+ "type": "string",
562
+ "maxLength": 32767
563
+ },
564
+ "icon": {
565
+ "type": "string",
566
+ "maxLength": 1024
567
+ },
568
+ "color": {
569
+ "type": "string",
570
+ "maxLength": 1024
571
+ },
572
+ "inputCount": {
573
+ "type": "number"
574
+ },
575
+ "outputCount": {
576
+ "type": "number"
577
+ },
578
+ "id": {
579
+ "type": "string",
580
+ "maxLength": 48
581
+ }
582
+ },
583
+ "additionalProperties": false
584
+ },
585
+ "outputIds": {
586
+ "type": "array",
587
+ "items": {
588
+ "type": "array",
589
+ "items": {
590
+ "type": "string",
591
+ "maxLength": 255
592
+ },
593
+ "maxItems": 100
594
+ },
595
+ "maxItems": 100
596
+ }
597
+ },
598
+ "required": [
599
+ "type"
600
+ ],
601
+ "additionalProperties": false
602
+ },
603
+ {
604
+ "type": "object",
605
+ "properties": {
606
+ "key": {
607
+ "type": "string",
608
+ "maxLength": 1024
609
+ },
610
+ "type": {
611
+ "type": "string",
612
+ "enum": [
613
+ "event"
614
+ ]
615
+ },
616
+ "config": {
617
+ "type": "object",
618
+ "properties": {
619
+ "subject": {
620
+ "type": "string",
621
+ "maxLength": 255
622
+ },
623
+ "new": {
624
+ "type": "boolean"
625
+ },
626
+ "acknowledged": {
627
+ "type": "boolean"
628
+ },
629
+ "resolved": {
630
+ "type": "boolean"
631
+ }
632
+ },
633
+ "additionalProperties": false
634
+ },
635
+ "meta": {
636
+ "type": "object",
637
+ "properties": {
638
+ "category": {
639
+ "type": "string",
640
+ "enum": [
641
+ "trigger"
642
+ ]
643
+ },
644
+ "name": {
645
+ "type": "string",
646
+ "enum": [
647
+ "event"
648
+ ]
649
+ },
650
+ "label": {
651
+ "type": "string",
652
+ "minLength": 1,
653
+ "maxLength": 255
654
+ },
655
+ "x": {
656
+ "type": "number"
657
+ },
658
+ "y": {
659
+ "type": "number"
660
+ },
661
+ "uiId": {
662
+ "type": "string",
663
+ "maxLength": 48
664
+ },
665
+ "description": {
666
+ "type": "string",
667
+ "maxLength": 32767
668
+ },
669
+ "icon": {
670
+ "type": "string",
671
+ "maxLength": 1024
672
+ },
673
+ "color": {
674
+ "type": "string",
675
+ "maxLength": 1024
676
+ },
677
+ "inputCount": {
678
+ "type": "number"
679
+ },
680
+ "outputCount": {
681
+ "type": "number"
682
+ },
683
+ "id": {
684
+ "type": "string",
685
+ "maxLength": 48
686
+ }
687
+ },
688
+ "additionalProperties": false
689
+ },
690
+ "outputIds": {
691
+ "type": "array",
692
+ "items": {
693
+ "type": "array",
694
+ "items": {
695
+ "type": "string",
696
+ "maxLength": 255
697
+ },
698
+ "maxItems": 100
699
+ },
700
+ "maxItems": 100
701
+ }
702
+ },
703
+ "required": [
704
+ "type"
705
+ ],
706
+ "additionalProperties": false
707
+ },
708
+ {
709
+ "type": "object",
710
+ "properties": {
711
+ "key": {
712
+ "type": "string",
713
+ "maxLength": 1024
714
+ },
715
+ "type": {
716
+ "type": "string",
717
+ "enum": [
718
+ "fileTail"
719
+ ]
720
+ },
721
+ "config": {
722
+ "type": "object",
723
+ "properties": {
724
+ "path": {
725
+ "type": "string",
726
+ "maxLength": 1024
727
+ },
728
+ "encoding": {
729
+ "type": "string",
730
+ "maxLength": 48
731
+ },
732
+ "byteLength": {
733
+ "type": "string",
734
+ "maxLength": 48
735
+ },
736
+ "delimiter": {
737
+ "type": "string",
738
+ "maxLength": 48
739
+ }
740
+ },
741
+ "additionalProperties": false
742
+ },
743
+ "meta": {
744
+ "type": "object",
745
+ "properties": {
746
+ "category": {
747
+ "type": "string",
748
+ "enum": [
749
+ "trigger"
750
+ ]
751
+ },
752
+ "name": {
753
+ "type": "string",
754
+ "enum": [
755
+ "fileTail"
756
+ ]
757
+ },
758
+ "label": {
759
+ "type": "string",
760
+ "minLength": 1,
761
+ "maxLength": 255
762
+ },
763
+ "x": {
764
+ "type": "number"
765
+ },
766
+ "y": {
767
+ "type": "number"
768
+ },
769
+ "uiId": {
770
+ "type": "string",
771
+ "maxLength": 48
772
+ },
773
+ "description": {
774
+ "type": "string",
775
+ "maxLength": 32767
776
+ },
777
+ "icon": {
778
+ "type": "string",
779
+ "maxLength": 1024
780
+ },
781
+ "color": {
782
+ "type": "string",
783
+ "maxLength": 1024
784
+ },
785
+ "inputCount": {
786
+ "type": "number"
787
+ },
788
+ "outputCount": {
789
+ "type": "number"
790
+ },
791
+ "id": {
792
+ "type": "string",
793
+ "maxLength": 48
794
+ }
795
+ },
796
+ "additionalProperties": false
797
+ },
798
+ "outputIds": {
799
+ "type": "array",
800
+ "items": {
801
+ "type": "array",
802
+ "items": {
803
+ "type": "string",
804
+ "maxLength": 255
805
+ },
806
+ "maxItems": 100
807
+ },
808
+ "maxItems": 100
809
+ }
810
+ },
811
+ "required": [
812
+ "type"
813
+ ],
814
+ "additionalProperties": false
815
+ },
816
+ {
817
+ "type": "object",
818
+ "properties": {
819
+ "key": {
820
+ "type": "string",
821
+ "maxLength": 1024
822
+ },
823
+ "type": {
824
+ "type": "string",
825
+ "enum": [
826
+ "fileWatch"
827
+ ]
828
+ },
829
+ "config": {
830
+ "type": "object",
831
+ "properties": {
832
+ "path": {
833
+ "type": "string",
834
+ "maxLength": 1024
835
+ },
836
+ "fileAdded": {
837
+ "type": "boolean"
838
+ },
839
+ "fileChanged": {
840
+ "type": "boolean"
841
+ },
842
+ "fileRemoved": {
843
+ "type": "boolean"
844
+ },
845
+ "directoryAdded": {
846
+ "type": "boolean"
847
+ },
848
+ "directoryRemoved": {
849
+ "type": "boolean"
850
+ }
851
+ },
852
+ "additionalProperties": false
853
+ },
854
+ "meta": {
855
+ "type": "object",
856
+ "properties": {
857
+ "category": {
858
+ "type": "string",
859
+ "enum": [
860
+ "trigger"
861
+ ]
862
+ },
863
+ "name": {
864
+ "type": "string",
865
+ "enum": [
866
+ "fileWatch"
867
+ ]
868
+ },
869
+ "label": {
870
+ "type": "string",
871
+ "minLength": 1,
872
+ "maxLength": 255
873
+ },
874
+ "x": {
875
+ "type": "number"
876
+ },
877
+ "y": {
878
+ "type": "number"
879
+ },
880
+ "uiId": {
881
+ "type": "string",
882
+ "maxLength": 48
883
+ },
884
+ "description": {
885
+ "type": "string",
886
+ "maxLength": 32767
887
+ },
888
+ "icon": {
889
+ "type": "string",
890
+ "maxLength": 1024
891
+ },
892
+ "color": {
893
+ "type": "string",
894
+ "maxLength": 1024
895
+ },
896
+ "inputCount": {
897
+ "type": "number"
898
+ },
899
+ "outputCount": {
900
+ "type": "number"
901
+ },
902
+ "id": {
903
+ "type": "string",
904
+ "maxLength": 48
905
+ }
906
+ },
907
+ "additionalProperties": false
908
+ },
909
+ "outputIds": {
910
+ "type": "array",
911
+ "items": {
912
+ "type": "array",
913
+ "items": {
914
+ "type": "string",
915
+ "maxLength": 255
916
+ },
917
+ "maxItems": 100
918
+ },
919
+ "maxItems": 100
920
+ }
921
+ },
922
+ "required": [
923
+ "type"
924
+ ],
925
+ "additionalProperties": false
926
+ },
927
+ {
928
+ "type": "object",
929
+ "properties": {
930
+ "key": {
931
+ "type": "string",
932
+ "maxLength": 1024
933
+ },
934
+ "type": {
935
+ "type": "string",
936
+ "enum": [
937
+ "opcua"
938
+ ]
939
+ },
940
+ "config": {
941
+ "type": "object",
942
+ "properties": {
943
+ "uri": {
944
+ "type": "string",
945
+ "maxLength": 1024
946
+ },
947
+ "securityPolicy": {
948
+ "type": "string",
949
+ "maxLength": 255
950
+ },
951
+ "securityMode": {
952
+ "type": "string",
953
+ "maxLength": 255
954
+ },
955
+ "username": {
956
+ "type": "string",
957
+ "maxLength": 1024
958
+ },
959
+ "password": {
960
+ "type": "string",
961
+ "maxLength": 1024
962
+ },
963
+ "cert": {
964
+ "type": "string",
965
+ "maxLength": 32767
966
+ },
967
+ "privateKey": {
968
+ "type": "string",
969
+ "maxLength": 32767
970
+ },
971
+ "nameSpace": {
972
+ "type": "string",
973
+ "maxLength": 255
974
+ },
975
+ "identifier": {
976
+ "type": "string",
977
+ "maxLength": 255
978
+ },
979
+ "samplingInterval": {
980
+ "type": "string",
981
+ "maxLength": 255
982
+ },
983
+ "eventFilter": {
984
+ "type": "array",
985
+ "maxItems": 100,
986
+ "items": {
987
+ "type": "string",
988
+ "maxLength": 255
989
+ }
990
+ }
991
+ },
992
+ "additionalProperties": false
993
+ },
994
+ "meta": {
995
+ "type": "object",
996
+ "properties": {
997
+ "category": {
998
+ "type": "string",
999
+ "enum": [
1000
+ "trigger"
1001
+ ]
1002
+ },
1003
+ "name": {
1004
+ "type": "string",
1005
+ "enum": [
1006
+ "opcua"
1007
+ ]
1008
+ },
1009
+ "label": {
1010
+ "type": "string",
1011
+ "minLength": 1,
1012
+ "maxLength": 255
1013
+ },
1014
+ "x": {
1015
+ "type": "number"
1016
+ },
1017
+ "y": {
1018
+ "type": "number"
1019
+ },
1020
+ "uiId": {
1021
+ "type": "string",
1022
+ "maxLength": 48
1023
+ },
1024
+ "description": {
1025
+ "type": "string",
1026
+ "maxLength": 32767
1027
+ },
1028
+ "icon": {
1029
+ "type": "string",
1030
+ "maxLength": 1024
1031
+ },
1032
+ "color": {
1033
+ "type": "string",
1034
+ "maxLength": 1024
1035
+ },
1036
+ "inputCount": {
1037
+ "type": "number"
1038
+ },
1039
+ "outputCount": {
1040
+ "type": "number"
1041
+ },
1042
+ "id": {
1043
+ "type": "string",
1044
+ "maxLength": 48
1045
+ }
1046
+ },
1047
+ "additionalProperties": false
1048
+ },
1049
+ "outputIds": {
1050
+ "type": "array",
1051
+ "items": {
1052
+ "type": "array",
1053
+ "items": {
1054
+ "type": "string",
1055
+ "maxLength": 255
1056
+ },
1057
+ "maxItems": 100
1058
+ },
1059
+ "maxItems": 100
1060
+ }
1061
+ },
1062
+ "required": [
1063
+ "type"
1064
+ ],
1065
+ "additionalProperties": false
1066
+ },
1067
+ {
1068
+ "type": "object",
1069
+ "properties": {
1070
+ "key": {
1071
+ "type": "string",
1072
+ "maxLength": 1024
1073
+ },
1074
+ "type": {
1075
+ "type": "string",
1076
+ "enum": [
1077
+ "redis"
1078
+ ]
1079
+ },
1080
+ "config": {
1081
+ "type": "object",
1082
+ "properties": {
1083
+ "host": {
1084
+ "type": "string",
1085
+ "maxLength": 1024
1086
+ },
1087
+ "port": {
1088
+ "type": "string",
1089
+ "maxLength": 16
1090
+ },
1091
+ "password": {
1092
+ "type": "string",
1093
+ "maxLength": 1024
1094
+ },
1095
+ "topic": {
1096
+ "type": "string",
1097
+ "maxLength": 1024
1098
+ },
1099
+ "fileAdded": {
1100
+ "type": "boolean"
1101
+ },
1102
+ "fileChanged": {
1103
+ "type": "boolean"
1104
+ },
1105
+ "fileRemoved": {
1106
+ "type": "boolean"
1107
+ },
1108
+ "directoryAdded": {
1109
+ "type": "boolean"
1110
+ },
1111
+ "directoryRemoved": {
1112
+ "type": "boolean"
1113
+ }
1114
+ },
1115
+ "additionalProperties": false
1116
+ },
1117
+ "meta": {
1118
+ "type": "object",
1119
+ "properties": {
1120
+ "category": {
1121
+ "type": "string",
1122
+ "enum": [
1123
+ "trigger"
1124
+ ]
1125
+ },
1126
+ "name": {
1127
+ "type": "string",
1128
+ "enum": [
1129
+ "redisTrigger"
1130
+ ]
1131
+ },
1132
+ "label": {
1133
+ "type": "string",
1134
+ "minLength": 1,
1135
+ "maxLength": 255
1136
+ },
1137
+ "x": {
1138
+ "type": "number"
1139
+ },
1140
+ "y": {
1141
+ "type": "number"
1142
+ },
1143
+ "uiId": {
1144
+ "type": "string",
1145
+ "maxLength": 48
1146
+ },
1147
+ "description": {
1148
+ "type": "string",
1149
+ "maxLength": 32767
1150
+ },
1151
+ "icon": {
1152
+ "type": "string",
1153
+ "maxLength": 1024
1154
+ },
1155
+ "color": {
1156
+ "type": "string",
1157
+ "maxLength": 1024
1158
+ },
1159
+ "inputCount": {
1160
+ "type": "number"
1161
+ },
1162
+ "outputCount": {
1163
+ "type": "number"
1164
+ },
1165
+ "id": {
1166
+ "type": "string",
1167
+ "maxLength": 48
1168
+ }
1169
+ },
1170
+ "additionalProperties": false
1171
+ },
1172
+ "outputIds": {
1173
+ "type": "array",
1174
+ "items": {
1175
+ "type": "array",
1176
+ "items": {
1177
+ "type": "string",
1178
+ "maxLength": 255
1179
+ },
1180
+ "maxItems": 100
1181
+ },
1182
+ "maxItems": 100
1183
+ }
1184
+ },
1185
+ "required": [
1186
+ "type"
1187
+ ],
1188
+ "additionalProperties": false
1189
+ },
1190
+ {
1191
+ "type": "object",
1192
+ "properties": {
1193
+ "key": {
1194
+ "type": "string",
1195
+ "maxLength": 1024
1196
+ },
1197
+ "type": {
1198
+ "type": "string",
1199
+ "enum": [
1200
+ "serial"
1201
+ ]
1202
+ },
1203
+ "config": {
1204
+ "type": "object",
1205
+ "properties": {
1206
+ "path": {
1207
+ "type": "string",
1208
+ "maxLength": 1024
1209
+ },
1210
+ "baudRate": {
1211
+ "type": "number"
1212
+ },
1213
+ "encoding": {
1214
+ "type": "string",
1215
+ "maxLength": 48
1216
+ },
1217
+ "writeOnOpen": {
1218
+ "type": "string",
1219
+ "maxLength": 1024
1220
+ },
1221
+ "byteLength": {
1222
+ "type": "string",
1223
+ "maxLength": 48
1224
+ },
1225
+ "delimiter": {
1226
+ "type": "string",
1227
+ "maxLength": 48
1228
+ }
1229
+ },
1230
+ "additionalProperties": false
1231
+ },
1232
+ "meta": {
1233
+ "type": "object",
1234
+ "properties": {
1235
+ "category": {
1236
+ "type": "string",
1237
+ "enum": [
1238
+ "trigger"
1239
+ ]
1240
+ },
1241
+ "name": {
1242
+ "type": "string",
1243
+ "enum": [
1244
+ "serial"
1245
+ ]
1246
+ },
1247
+ "label": {
1248
+ "type": "string",
1249
+ "minLength": 1,
1250
+ "maxLength": 255
1251
+ },
1252
+ "x": {
1253
+ "type": "number"
1254
+ },
1255
+ "y": {
1256
+ "type": "number"
1257
+ },
1258
+ "uiId": {
1259
+ "type": "string",
1260
+ "maxLength": 48
1261
+ },
1262
+ "description": {
1263
+ "type": "string",
1264
+ "maxLength": 32767
1265
+ },
1266
+ "icon": {
1267
+ "type": "string",
1268
+ "maxLength": 1024
1269
+ },
1270
+ "color": {
1271
+ "type": "string",
1272
+ "maxLength": 1024
1273
+ },
1274
+ "inputCount": {
1275
+ "type": "number"
1276
+ },
1277
+ "outputCount": {
1278
+ "type": "number"
1279
+ },
1280
+ "id": {
1281
+ "type": "string",
1282
+ "maxLength": 48
1283
+ },
1284
+ "parseBy": {
1285
+ "type": "string",
1286
+ "enum": [
1287
+ "byteLength",
1288
+ "delimiter"
1289
+ ]
1290
+ }
1291
+ },
1292
+ "additionalProperties": false
1293
+ },
1294
+ "outputIds": {
1295
+ "type": "array",
1296
+ "items": {
1297
+ "type": "array",
1298
+ "items": {
1299
+ "type": "string",
1300
+ "maxLength": 255
1301
+ },
1302
+ "maxItems": 100
1303
+ },
1304
+ "maxItems": 100
1305
+ }
1306
+ },
1307
+ "required": [
1308
+ "type"
1309
+ ],
1310
+ "additionalProperties": false
1311
+ },
1312
+ {
1313
+ "type": "object",
1314
+ "properties": {
1315
+ "key": {
1316
+ "type": "string",
1317
+ "maxLength": 1024
1318
+ },
1319
+ "type": {
1320
+ "type": "string",
1321
+ "enum": [
1322
+ "timer"
1323
+ ]
1324
+ },
1325
+ "config": {
1326
+ "type": "object",
1327
+ "properties": {
1328
+ "seconds": {
1329
+ "type": "number"
1330
+ },
1331
+ "cron": {
1332
+ "type": "string",
1333
+ "maxLength": 255
1334
+ },
1335
+ "tz": {
1336
+ "type": "string",
1337
+ "maxLength": 255
1338
+ }
1339
+ },
1340
+ "additionalProperties": false
1341
+ },
1342
+ "meta": {
1343
+ "type": "object",
1344
+ "properties": {
1345
+ "category": {
1346
+ "type": "string",
1347
+ "enum": [
1348
+ "trigger"
1349
+ ]
1350
+ },
1351
+ "name": {
1352
+ "type": "string",
1353
+ "enum": [
1354
+ "timer"
1355
+ ]
1356
+ },
1357
+ "label": {
1358
+ "type": "string",
1359
+ "minLength": 1,
1360
+ "maxLength": 255
1361
+ },
1362
+ "x": {
1363
+ "type": "number"
1364
+ },
1365
+ "y": {
1366
+ "type": "number"
1367
+ },
1368
+ "uiId": {
1369
+ "type": "string",
1370
+ "maxLength": 48
1371
+ },
1372
+ "description": {
1373
+ "type": "string",
1374
+ "maxLength": 32767
1375
+ },
1376
+ "icon": {
1377
+ "type": "string",
1378
+ "maxLength": 1024
1379
+ },
1380
+ "color": {
1381
+ "type": "string",
1382
+ "maxLength": 1024
1383
+ },
1384
+ "inputCount": {
1385
+ "type": "number"
1386
+ },
1387
+ "outputCount": {
1388
+ "type": "number"
1389
+ },
1390
+ "id": {
1391
+ "type": "string",
1392
+ "maxLength": 48
1393
+ },
1394
+ "timerTypeSelect": {
1395
+ "type": "string",
1396
+ "enum": [
1397
+ "cronWeekly",
1398
+ "seconds",
1399
+ "cron"
1400
+ ]
1401
+ },
1402
+ "timeAt": {
1403
+ "type": "string",
1404
+ "maxLength": 255
1405
+ },
1406
+ "timezone": {
1407
+ "type": "string",
1408
+ "maxLength": 255
1409
+ },
1410
+ "weekdays": {
1411
+ "type": "array",
1412
+ "maxItems": 7,
1413
+ "items": {
1414
+ "type": "number"
1415
+ }
1416
+ }
1417
+ },
1418
+ "additionalProperties": false
1419
+ },
1420
+ "outputIds": {
1421
+ "type": "array",
1422
+ "items": {
1423
+ "type": "array",
1424
+ "items": {
1425
+ "type": "string",
1426
+ "maxLength": 255
1427
+ },
1428
+ "maxItems": 100
1429
+ },
1430
+ "maxItems": 100
1431
+ }
1432
+ },
1433
+ "required": [
1434
+ "type"
1435
+ ],
1436
+ "additionalProperties": false
1437
+ },
1438
+ {
1439
+ "type": "object",
1440
+ "properties": {
1441
+ "key": {
1442
+ "type": "string",
1443
+ "maxLength": 1024
1444
+ },
1445
+ "type": {
1446
+ "type": "string",
1447
+ "enum": [
1448
+ "virtualButton"
1449
+ ]
1450
+ },
1451
+ "config": {
1452
+ "type": "object",
1453
+ "additionalProperties": false
1454
+ },
1455
+ "meta": {
1456
+ "type": "object",
1457
+ "properties": {
1458
+ "category": {
1459
+ "type": "string",
1460
+ "enum": [
1461
+ "trigger"
1462
+ ]
1463
+ },
1464
+ "name": {
1465
+ "type": "string",
1466
+ "enum": [
1467
+ "virtualButton"
1468
+ ]
1469
+ },
1470
+ "label": {
1471
+ "type": "string",
1472
+ "minLength": 1,
1473
+ "maxLength": 255
1474
+ },
1475
+ "x": {
1476
+ "type": "number"
1477
+ },
1478
+ "y": {
1479
+ "type": "number"
1480
+ },
1481
+ "uiId": {
1482
+ "type": "string",
1483
+ "maxLength": 48
1484
+ },
1485
+ "groupId": {
1486
+ "type": "string",
1487
+ "maxLength": 48
1488
+ },
1489
+ "description": {
1490
+ "type": "string",
1491
+ "maxLength": 32767
1492
+ },
1493
+ "icon": {
1494
+ "type": "string",
1495
+ "maxLength": 1024
1496
+ },
1497
+ "color": {
1498
+ "type": "string",
1499
+ "maxLength": 1024
1500
+ },
1501
+ "inputCount": {
1502
+ "type": "number"
1503
+ },
1504
+ "outputCount": {
1505
+ "type": "number"
1506
+ },
1507
+ "id": {
1508
+ "type": "string",
1509
+ "maxLength": 48
1510
+ },
1511
+ "payload": {
1512
+ "type": "string",
1513
+ "maxLength": 262144
1514
+ },
1515
+ "deviceId": {
1516
+ "oneOf": [
1517
+ {
1518
+ "type": "string",
1519
+ "pattern": "^[A-Fa-f\\d]{24}$"
1520
+ },
1521
+ {
1522
+ "type": "string",
1523
+ "enum": [
1524
+ ""
1525
+ ]
1526
+ },
1527
+ {
1528
+ "type": "null"
1529
+ }
1530
+ ]
1531
+ }
1532
+ },
1533
+ "additionalProperties": false
1534
+ },
1535
+ "outputIds": {
1536
+ "type": "array",
1537
+ "items": {
1538
+ "type": "array",
1539
+ "items": {
1540
+ "type": "string",
1541
+ "maxLength": 255
1542
+ },
1543
+ "maxItems": 100
1544
+ },
1545
+ "maxItems": 100
1546
+ }
1547
+ },
1548
+ "required": [
1549
+ "type"
1550
+ ],
1551
+ "additionalProperties": false
1552
+ }
1553
+ ]
1554
+ }
1555
+ },
1556
+ "nodes": {
1557
+ "type": "array",
1558
+ "items": {
1559
+ "type": "object",
1560
+ "properties": {
1561
+ "id": {
1562
+ "type": "string",
1563
+ "maxLength": 1024
1564
+ },
1565
+ "type": {
1566
+ "type": "string",
1567
+ "minLength": 1,
1568
+ "maxLength": 1024
1569
+ },
1570
+ "config": {
1571
+ "type": "object"
1572
+ },
1573
+ "meta": {
1574
+ "type": "object"
1575
+ },
1576
+ "outputIds": {
1577
+ "type": "array",
1578
+ "items": {
1579
+ "type": "array",
1580
+ "items": {
1581
+ "type": "string",
1582
+ "maxLength": 255
1583
+ },
1584
+ "maxItems": 100
1585
+ },
1586
+ "maxItems": 100
1587
+ }
1588
+ },
1589
+ "additionalProperties": false,
1590
+ "required": [
1591
+ "type"
1592
+ ]
1593
+ }
1594
+ },
1595
+ "globals": {
1596
+ "type": "array",
1597
+ "maxItems": 100,
1598
+ "items": {
1599
+ "type": "object",
1600
+ "properties": {
1601
+ "key": {
1602
+ "type": "string",
1603
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
167
1604
  },
168
1605
  "json": {
169
1606
  "type": "string",
170
1607
  "minLength": 1,
171
1608
  "maxLength": 32767
172
1609
  }
173
- },
174
- "additionalProperties": false,
175
- "required": [
176
- "key",
177
- "json"
178
- ]
179
- }
180
- },
181
- "minimumAgentVersion": {
182
- "type": "string",
183
- "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
1610
+ },
1611
+ "additionalProperties": false,
1612
+ "required": [
1613
+ "key",
1614
+ "json"
1615
+ ]
1616
+ }
1617
+ },
1618
+ "minimumAgentVersion": {
1619
+ "type": "string",
1620
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
1621
+ },
1622
+ "customNodeConfig": {
1623
+ "type": "object",
1624
+ "properties": {
1625
+ "outputCount": {
1626
+ "type": "number",
1627
+ "enum": [
1628
+ 1,
1629
+ 2
1630
+ ]
1631
+ },
1632
+ "resultMode": {
1633
+ "type": "string",
1634
+ "enum": [
1635
+ "optional",
1636
+ "required",
1637
+ "none"
1638
+ ]
1639
+ },
1640
+ "resultDescription": {
1641
+ "type": "string",
1642
+ "maxLength": 32767
1643
+ },
1644
+ "fields": {
1645
+ "type": "array",
1646
+ "maxItems": 100,
1647
+ "items": {
1648
+ "oneOf": [
1649
+ {
1650
+ "type": "object",
1651
+ "properties": {
1652
+ "type": {
1653
+ "type": "string",
1654
+ "enum": [
1655
+ "checkbox"
1656
+ ]
1657
+ },
1658
+ "label": {
1659
+ "type": "string",
1660
+ "minLength": 1,
1661
+ "maxLength": 1024
1662
+ },
1663
+ "id": {
1664
+ "type": "string",
1665
+ "minLength": 1,
1666
+ "maxLength": 1024
1667
+ },
1668
+ "description": {
1669
+ "type": "string",
1670
+ "maxLength": 32767
1671
+ },
1672
+ "defaultValue": {
1673
+ "type": "boolean"
1674
+ }
1675
+ },
1676
+ "additionalProperties": false,
1677
+ "required": [
1678
+ "type",
1679
+ "label"
1680
+ ]
1681
+ },
1682
+ {
1683
+ "type": "object",
1684
+ "properties": {
1685
+ "type": {
1686
+ "type": "string",
1687
+ "enum": [
1688
+ "select"
1689
+ ]
1690
+ },
1691
+ "label": {
1692
+ "type": "string",
1693
+ "minLength": 1,
1694
+ "maxLength": 1024
1695
+ },
1696
+ "id": {
1697
+ "type": "string",
1698
+ "minLength": 1,
1699
+ "maxLength": 1024
1700
+ },
1701
+ "description": {
1702
+ "type": "string",
1703
+ "maxLength": 32767
1704
+ },
1705
+ "defaultValue": {
1706
+ "type": "string",
1707
+ "minLength": 1,
1708
+ "maxLength": 1024
1709
+ },
1710
+ "options": {
1711
+ "type": "array",
1712
+ "minItems": 1,
1713
+ "maxItems": 100,
1714
+ "items": {
1715
+ "type": "object",
1716
+ "properties": {
1717
+ "label": {
1718
+ "type": "string",
1719
+ "maxLength": 1024
1720
+ },
1721
+ "value": {
1722
+ "type": "string",
1723
+ "minLength": 1,
1724
+ "maxLength": 1024
1725
+ }
1726
+ },
1727
+ "additionalProperties": false,
1728
+ "required": [
1729
+ "value"
1730
+ ]
1731
+ }
1732
+ }
1733
+ },
1734
+ "additionalProperties": false,
1735
+ "required": [
1736
+ "type",
1737
+ "label",
1738
+ "defaultValue",
1739
+ "options"
1740
+ ]
1741
+ },
1742
+ {
1743
+ "type": "object",
1744
+ "properties": {
1745
+ "type": {
1746
+ "type": "string",
1747
+ "enum": [
1748
+ "stringTemplate"
1749
+ ]
1750
+ },
1751
+ "label": {
1752
+ "type": "string",
1753
+ "minLength": 1,
1754
+ "maxLength": 1024
1755
+ },
1756
+ "id": {
1757
+ "type": "string",
1758
+ "minLength": 1,
1759
+ "maxLength": 1024
1760
+ },
1761
+ "description": {
1762
+ "type": "string",
1763
+ "maxLength": 32767
1764
+ },
1765
+ "defaultValue": {
1766
+ "type": "string",
1767
+ "maxLength": 1024
1768
+ },
1769
+ "required": {
1770
+ "type": "boolean"
1771
+ },
1772
+ "validRegExp": {
1773
+ "type": "string",
1774
+ "maxLength": 1024
1775
+ }
1776
+ },
1777
+ "additionalProperties": false,
1778
+ "required": [
1779
+ "type",
1780
+ "label"
1781
+ ]
1782
+ },
1783
+ {
1784
+ "type": "object",
1785
+ "properties": {
1786
+ "type": {
1787
+ "type": "string",
1788
+ "enum": [
1789
+ "numberTemplate"
1790
+ ]
1791
+ },
1792
+ "label": {
1793
+ "type": "string",
1794
+ "minLength": 1,
1795
+ "maxLength": 1024
1796
+ },
1797
+ "id": {
1798
+ "type": "string",
1799
+ "minLength": 1,
1800
+ "maxLength": 1024
1801
+ },
1802
+ "description": {
1803
+ "type": "string",
1804
+ "maxLength": 32767
1805
+ },
1806
+ "defaultValue": {
1807
+ "type": "number"
1808
+ },
1809
+ "required": {
1810
+ "type": "boolean"
1811
+ },
1812
+ "validMin": {
1813
+ "type": "number"
1814
+ },
1815
+ "validMax": {
1816
+ "type": "number"
1817
+ }
1818
+ },
1819
+ "additionalProperties": false,
1820
+ "required": [
1821
+ "type",
1822
+ "label"
1823
+ ]
1824
+ },
1825
+ {
1826
+ "type": "object",
1827
+ "properties": {
1828
+ "type": {
1829
+ "type": "string",
1830
+ "enum": [
1831
+ "jsonTemplate"
1832
+ ]
1833
+ },
1834
+ "label": {
1835
+ "type": "string",
1836
+ "minLength": 1,
1837
+ "maxLength": 1024
1838
+ },
1839
+ "id": {
1840
+ "type": "string",
1841
+ "minLength": 1,
1842
+ "maxLength": 1024
1843
+ },
1844
+ "description": {
1845
+ "type": "string",
1846
+ "maxLength": 32767
1847
+ },
1848
+ "defaultValue": {
1849
+ "type": "string",
1850
+ "maxLength": 32767
1851
+ },
1852
+ "required": {
1853
+ "type": "boolean"
1854
+ }
1855
+ },
1856
+ "additionalProperties": false,
1857
+ "required": [
1858
+ "type",
1859
+ "label"
1860
+ ]
1861
+ },
1862
+ {
1863
+ "type": "object",
1864
+ "properties": {
1865
+ "type": {
1866
+ "type": "string",
1867
+ "enum": [
1868
+ "payloadPath"
1869
+ ]
1870
+ },
1871
+ "label": {
1872
+ "type": "string",
1873
+ "minLength": 1,
1874
+ "maxLength": 1024
1875
+ },
1876
+ "id": {
1877
+ "type": "string",
1878
+ "minLength": 1,
1879
+ "maxLength": 1024
1880
+ },
1881
+ "description": {
1882
+ "type": "string",
1883
+ "maxLength": 32767
1884
+ },
1885
+ "required": {
1886
+ "type": "boolean"
1887
+ }
1888
+ },
1889
+ "additionalProperties": false,
1890
+ "required": [
1891
+ "type",
1892
+ "label"
1893
+ ]
1894
+ },
1895
+ {
1896
+ "type": "object",
1897
+ "properties": {
1898
+ "type": {
1899
+ "type": "string",
1900
+ "enum": [
1901
+ "section"
1902
+ ]
1903
+ },
1904
+ "label": {
1905
+ "type": "string",
1906
+ "minLength": 1,
1907
+ "maxLength": 1024
1908
+ },
1909
+ "id": {
1910
+ "type": "string",
1911
+ "minLength": 1,
1912
+ "maxLength": 1024
1913
+ },
1914
+ "description": {
1915
+ "type": "string",
1916
+ "maxLength": 32767
1917
+ }
1918
+ },
1919
+ "additionalProperties": false,
1920
+ "required": [
1921
+ "type",
1922
+ "label"
1923
+ ]
1924
+ }
1925
+ ]
1926
+ }
1927
+ }
1928
+ },
1929
+ "additionalProperties": false,
1930
+ "required": [
1931
+ "outputCount",
1932
+ "resultMode",
1933
+ "fields"
1934
+ ]
184
1935
  },
185
- "customNodeConfig": {
1936
+ "stats": {
186
1937
  "type": "object",
187
1938
  "properties": {
188
- "outputCount": {
189
- "type": "number",
190
- "enum": [
191
- 1,
192
- 2
193
- ]
194
- },
195
- "resultMode": {
196
- "type": "string",
197
- "enum": [
198
- "optional",
199
- "required",
200
- "none"
201
- ]
1939
+ "runCount": {
1940
+ "type": "number"
202
1941
  },
203
- "resultDescription": {
204
- "type": "string",
205
- "maxLength": 32767
1942
+ "errorCount": {
1943
+ "type": "number"
206
1944
  },
207
- "fields": {
208
- "type": "array",
209
- "maxItems": 100,
210
- "items": {
211
- "oneOf": [
212
- {
1945
+ "byVersion": {
1946
+ "type": "object",
1947
+ "patternProperties": {
1948
+ ".*": {
1949
+ "type": "object",
1950
+ "properties": {
1951
+ "runCount": {
1952
+ "type": "number"
1953
+ },
1954
+ "errorCount": {
1955
+ "type": "number"
1956
+ }
1957
+ }
1958
+ }
1959
+ }
1960
+ }
1961
+ }
1962
+ }
1963
+ }
1964
+ },
1965
+ {
1966
+ "description": "Schema for a single Experience Workflow Version",
1967
+ "type": "object",
1968
+ "properties": {
1969
+ "id": {
1970
+ "type": "string",
1971
+ "pattern": "^[A-Fa-f\\d]{24}$"
1972
+ },
1973
+ "flowVersionId": {
1974
+ "type": "string",
1975
+ "pattern": "^[A-Fa-f\\d]{24}$"
1976
+ },
1977
+ "flowId": {
1978
+ "type": "string",
1979
+ "pattern": "^[A-Fa-f\\d]{24}$"
1980
+ },
1981
+ "applicationId": {
1982
+ "type": "string",
1983
+ "pattern": "^[A-Fa-f\\d]{24}$"
1984
+ },
1985
+ "creationDate": {
1986
+ "type": "string",
1987
+ "format": "date-time"
1988
+ },
1989
+ "lastUpdated": {
1990
+ "type": "string",
1991
+ "format": "date-time"
1992
+ },
1993
+ "name": {
1994
+ "type": "string",
1995
+ "minLength": 1,
1996
+ "maxLength": 255
1997
+ },
1998
+ "description": {
1999
+ "type": "string",
2000
+ "maxLength": 32767
2001
+ },
2002
+ "iconData": {
2003
+ "type": "string",
2004
+ "maxLength": 32767,
2005
+ "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
2006
+ },
2007
+ "flowClass": {
2008
+ "type": "string",
2009
+ "enum": [
2010
+ "experience"
2011
+ ]
2012
+ },
2013
+ "versions": {
2014
+ "type": "array",
2015
+ "items": {
2016
+ "type": "string",
2017
+ "minLength": 1,
2018
+ "maxLength": 255
2019
+ }
2020
+ },
2021
+ "enabled": {
2022
+ "type": "boolean"
2023
+ },
2024
+ "triggers": {
2025
+ "type": "array",
2026
+ "items": {
2027
+ "oneOf": [
2028
+ {
2029
+ "type": "object",
2030
+ "properties": {
2031
+ "key": {
2032
+ "type": "string",
2033
+ "maxLength": 1024
2034
+ },
2035
+ "type": {
2036
+ "type": "string",
2037
+ "enum": [
2038
+ "customNodeStart",
2039
+ "deviceCommand",
2040
+ "deviceIdConnect",
2041
+ "deviceTagConnect",
2042
+ "deviceIdDisconnect",
2043
+ "deviceTagDisconnect",
2044
+ "integration",
2045
+ "mqttTopic",
2046
+ "notebook",
2047
+ "onBoot",
2048
+ "onConnect",
2049
+ "onDisconnect",
2050
+ "request",
2051
+ "udp",
2052
+ "webhook"
2053
+ ]
2054
+ },
2055
+ "config": {
2056
+ "type": "object",
2057
+ "additionalProperties": false
2058
+ },
2059
+ "meta": {
2060
+ "type": "object",
2061
+ "properties": {
2062
+ "category": {
2063
+ "type": "string",
2064
+ "enum": [
2065
+ "trigger"
2066
+ ]
2067
+ },
2068
+ "name": {
2069
+ "type": "string",
2070
+ "enum": [
2071
+ "customNodeStart",
2072
+ "deviceCommand",
2073
+ "deviceIdsTagsConnect",
2074
+ "deviceIdsTagsDisconnect",
2075
+ "googlePubSub",
2076
+ "meridian",
2077
+ "mqtt",
2078
+ "notebook",
2079
+ "onBoot",
2080
+ "onConnect",
2081
+ "onDisconnect",
2082
+ "particle",
2083
+ "request",
2084
+ "udp",
2085
+ "webhook"
2086
+ ]
2087
+ },
2088
+ "label": {
2089
+ "type": "string",
2090
+ "minLength": 1,
2091
+ "maxLength": 255
2092
+ },
2093
+ "x": {
2094
+ "type": "number"
2095
+ },
2096
+ "y": {
2097
+ "type": "number"
2098
+ },
2099
+ "uiId": {
2100
+ "type": "string",
2101
+ "maxLength": 48
2102
+ },
2103
+ "description": {
2104
+ "type": "string",
2105
+ "maxLength": 32767
2106
+ },
2107
+ "icon": {
2108
+ "type": "string",
2109
+ "maxLength": 1024
2110
+ },
2111
+ "color": {
2112
+ "type": "string",
2113
+ "maxLength": 1024
2114
+ },
2115
+ "inputCount": {
2116
+ "type": "number"
2117
+ },
2118
+ "outputCount": {
2119
+ "type": "number"
2120
+ },
2121
+ "triggerId": {
2122
+ "type": "string",
2123
+ "maxLength": 48
2124
+ },
2125
+ "id": {
2126
+ "type": "string",
2127
+ "maxLength": 48
2128
+ }
2129
+ },
2130
+ "additionalProperties": false
2131
+ },
2132
+ "outputIds": {
2133
+ "type": "array",
2134
+ "items": {
2135
+ "type": "array",
2136
+ "items": {
2137
+ "type": "string",
2138
+ "maxLength": 255
2139
+ },
2140
+ "maxItems": 100
2141
+ },
2142
+ "maxItems": 100
2143
+ }
2144
+ },
2145
+ "required": [
2146
+ "type"
2147
+ ],
2148
+ "additionalProperties": false
2149
+ },
2150
+ {
2151
+ "type": "object",
2152
+ "properties": {
2153
+ "key": {
2154
+ "type": "string",
2155
+ "maxLength": 1024
2156
+ },
2157
+ "type": {
2158
+ "type": "string",
2159
+ "enum": [
2160
+ "dataTable"
2161
+ ]
2162
+ },
2163
+ "config": {
2164
+ "type": "object",
2165
+ "properties": {
2166
+ "bulkInsert": {
2167
+ "type": "boolean"
2168
+ },
2169
+ "delete": {
2170
+ "type": "boolean"
2171
+ },
2172
+ "insert": {
2173
+ "type": "boolean"
2174
+ },
2175
+ "update": {
2176
+ "type": "boolean"
2177
+ }
2178
+ },
2179
+ "additionalProperties": false
2180
+ },
2181
+ "meta": {
2182
+ "type": "object",
2183
+ "properties": {
2184
+ "category": {
2185
+ "type": "string",
2186
+ "enum": [
2187
+ "trigger"
2188
+ ]
2189
+ },
2190
+ "name": {
2191
+ "type": "string",
2192
+ "enum": [
2193
+ "dataTable"
2194
+ ]
2195
+ },
2196
+ "label": {
2197
+ "type": "string",
2198
+ "minLength": 1,
2199
+ "maxLength": 255
2200
+ },
2201
+ "x": {
2202
+ "type": "number"
2203
+ },
2204
+ "y": {
2205
+ "type": "number"
2206
+ },
2207
+ "uiId": {
2208
+ "type": "string",
2209
+ "maxLength": 48
2210
+ },
2211
+ "description": {
2212
+ "type": "string",
2213
+ "maxLength": 32767
2214
+ },
2215
+ "icon": {
2216
+ "type": "string",
2217
+ "maxLength": 1024
2218
+ },
2219
+ "color": {
2220
+ "type": "string",
2221
+ "maxLength": 1024
2222
+ },
2223
+ "inputCount": {
2224
+ "type": "number"
2225
+ },
2226
+ "outputCount": {
2227
+ "type": "number"
2228
+ },
2229
+ "id": {
2230
+ "type": "string",
2231
+ "maxLength": 48
2232
+ }
2233
+ },
2234
+ "additionalProperties": false
2235
+ },
2236
+ "outputIds": {
2237
+ "type": "array",
2238
+ "items": {
2239
+ "type": "array",
2240
+ "items": {
2241
+ "type": "string",
2242
+ "maxLength": 255
2243
+ },
2244
+ "maxItems": 100
2245
+ },
2246
+ "maxItems": 100
2247
+ }
2248
+ },
2249
+ "required": [
2250
+ "type"
2251
+ ],
2252
+ "additionalProperties": false
2253
+ },
2254
+ {
2255
+ "type": "object",
2256
+ "properties": {
2257
+ "key": {
2258
+ "type": "string",
2259
+ "maxLength": 1024
2260
+ },
2261
+ "type": {
2262
+ "type": "string",
2263
+ "enum": [
2264
+ "deviceId",
2265
+ "deviceTag"
2266
+ ]
2267
+ },
2268
+ "config": {
2269
+ "type": "object",
2270
+ "properties": {
2271
+ "attributeBlacklist": {
2272
+ "type": "array",
2273
+ "maxItems": 100,
2274
+ "items": {
2275
+ "type": "string",
2276
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
2277
+ }
2278
+ },
2279
+ "attributeWhitelist": {
2280
+ "type": "array",
2281
+ "maxItems": 100,
2282
+ "items": {
2283
+ "type": "string",
2284
+ "pattern": "^[0-9a-zA-Z_-]{1,255}$"
2285
+ }
2286
+ },
2287
+ "maxAge": {
2288
+ "type": "number"
2289
+ }
2290
+ },
2291
+ "additionalProperties": false
2292
+ },
2293
+ "meta": {
2294
+ "type": "object",
2295
+ "properties": {
2296
+ "category": {
2297
+ "type": "string",
2298
+ "enum": [
2299
+ "trigger"
2300
+ ]
2301
+ },
2302
+ "name": {
2303
+ "type": "string",
2304
+ "enum": [
2305
+ "deviceIdsTags",
2306
+ "device",
2307
+ "deviceTag"
2308
+ ]
2309
+ },
2310
+ "label": {
2311
+ "type": "string",
2312
+ "minLength": 1,
2313
+ "maxLength": 255
2314
+ },
2315
+ "x": {
2316
+ "type": "number"
2317
+ },
2318
+ "y": {
2319
+ "type": "number"
2320
+ },
2321
+ "uiId": {
2322
+ "type": "string",
2323
+ "maxLength": 48
2324
+ },
2325
+ "description": {
2326
+ "type": "string",
2327
+ "maxLength": 32767
2328
+ },
2329
+ "icon": {
2330
+ "type": "string",
2331
+ "maxLength": 1024
2332
+ },
2333
+ "color": {
2334
+ "type": "string",
2335
+ "maxLength": 1024
2336
+ },
2337
+ "inputCount": {
2338
+ "type": "number"
2339
+ },
2340
+ "outputCount": {
2341
+ "type": "number"
2342
+ },
2343
+ "id": {
2344
+ "type": "string",
2345
+ "maxLength": 48
2346
+ },
2347
+ "timeUnit": {
2348
+ "type": "string",
2349
+ "maxLength": 48
2350
+ },
2351
+ "maxAgeToggle": {
2352
+ "type": "boolean"
2353
+ },
2354
+ "allowedAttributeType": {
2355
+ "type": "string",
2356
+ "enum": [
2357
+ "attributeWhitelist",
2358
+ "any",
2359
+ "attributeBlacklist"
2360
+ ]
2361
+ }
2362
+ },
2363
+ "additionalProperties": false
2364
+ },
2365
+ "outputIds": {
2366
+ "type": "array",
2367
+ "items": {
2368
+ "type": "array",
2369
+ "items": {
2370
+ "type": "string",
2371
+ "maxLength": 255
2372
+ },
2373
+ "maxItems": 100
2374
+ },
2375
+ "maxItems": 100
2376
+ }
2377
+ },
2378
+ "required": [
2379
+ "type"
2380
+ ],
2381
+ "additionalProperties": false
2382
+ },
2383
+ {
2384
+ "type": "object",
2385
+ "properties": {
2386
+ "key": {
2387
+ "type": "string",
2388
+ "maxLength": 1024
2389
+ },
2390
+ "type": {
2391
+ "type": "string",
2392
+ "enum": [
2393
+ "deviceIdInactivity",
2394
+ "deviceTagInactivity"
2395
+ ]
2396
+ },
2397
+ "config": {
2398
+ "type": "object",
2399
+ "properties": {
2400
+ "seconds": {
2401
+ "type": "number"
2402
+ }
2403
+ },
2404
+ "additionalProperties": false
2405
+ },
2406
+ "meta": {
2407
+ "type": "object",
2408
+ "properties": {
2409
+ "category": {
2410
+ "type": "string",
2411
+ "enum": [
2412
+ "trigger"
2413
+ ]
2414
+ },
2415
+ "name": {
2416
+ "type": "string",
2417
+ "enum": [
2418
+ "deviceIdsTagsInactivity"
2419
+ ]
2420
+ },
2421
+ "label": {
2422
+ "type": "string",
2423
+ "minLength": 1,
2424
+ "maxLength": 255
2425
+ },
2426
+ "x": {
2427
+ "type": "number"
2428
+ },
2429
+ "y": {
2430
+ "type": "number"
2431
+ },
2432
+ "uiId": {
2433
+ "type": "string",
2434
+ "maxLength": 48
2435
+ },
2436
+ "description": {
2437
+ "type": "string",
2438
+ "maxLength": 32767
2439
+ },
2440
+ "icon": {
2441
+ "type": "string",
2442
+ "maxLength": 1024
2443
+ },
2444
+ "color": {
2445
+ "type": "string",
2446
+ "maxLength": 1024
2447
+ },
2448
+ "inputCount": {
2449
+ "type": "number"
2450
+ },
2451
+ "outputCount": {
2452
+ "type": "number"
2453
+ },
2454
+ "id": {
2455
+ "type": "string",
2456
+ "maxLength": 48
2457
+ }
2458
+ },
2459
+ "additionalProperties": false
2460
+ },
2461
+ "outputIds": {
2462
+ "type": "array",
2463
+ "items": {
2464
+ "type": "array",
2465
+ "items": {
2466
+ "type": "string",
2467
+ "maxLength": 255
2468
+ },
2469
+ "maxItems": 100
2470
+ },
2471
+ "maxItems": 100
2472
+ }
2473
+ },
2474
+ "required": [
2475
+ "type"
2476
+ ],
2477
+ "additionalProperties": false
2478
+ },
2479
+ {
2480
+ "type": "object",
2481
+ "properties": {
2482
+ "key": {
2483
+ "type": "string",
2484
+ "maxLength": 1024
2485
+ },
2486
+ "type": {
2487
+ "type": "string",
2488
+ "enum": [
2489
+ "endpoint"
2490
+ ]
2491
+ },
2492
+ "config": {
2493
+ "type": "object",
2494
+ "properties": {
2495
+ "experienceVersion": {
2496
+ "type": "string",
2497
+ "minLength": 1,
2498
+ "maxLength": 255
2499
+ }
2500
+ },
2501
+ "additionalProperties": false
2502
+ },
2503
+ "meta": {
2504
+ "type": "object",
2505
+ "properties": {
2506
+ "category": {
2507
+ "type": "string",
2508
+ "enum": [
2509
+ "trigger"
2510
+ ]
2511
+ },
2512
+ "name": {
2513
+ "type": "string",
2514
+ "enum": [
2515
+ "endpoint"
2516
+ ]
2517
+ },
2518
+ "label": {
2519
+ "type": "string",
2520
+ "minLength": 1,
2521
+ "maxLength": 255
2522
+ },
2523
+ "x": {
2524
+ "type": "number"
2525
+ },
2526
+ "y": {
2527
+ "type": "number"
2528
+ },
2529
+ "uiId": {
2530
+ "type": "string",
2531
+ "maxLength": 48
2532
+ },
2533
+ "description": {
2534
+ "type": "string",
2535
+ "maxLength": 32767
2536
+ },
2537
+ "icon": {
2538
+ "type": "string",
2539
+ "maxLength": 1024
2540
+ },
2541
+ "color": {
2542
+ "type": "string",
2543
+ "maxLength": 1024
2544
+ },
2545
+ "inputCount": {
2546
+ "type": "number"
2547
+ },
2548
+ "outputCount": {
2549
+ "type": "number"
2550
+ },
2551
+ "id": {
2552
+ "type": "string",
2553
+ "maxLength": 48
2554
+ }
2555
+ },
2556
+ "additionalProperties": false
2557
+ },
2558
+ "outputIds": {
2559
+ "type": "array",
2560
+ "items": {
2561
+ "type": "array",
2562
+ "items": {
2563
+ "type": "string",
2564
+ "maxLength": 255
2565
+ },
2566
+ "maxItems": 100
2567
+ },
2568
+ "maxItems": 100
2569
+ }
2570
+ },
2571
+ "required": [
2572
+ "type"
2573
+ ],
2574
+ "additionalProperties": false
2575
+ },
2576
+ {
2577
+ "type": "object",
2578
+ "properties": {
2579
+ "key": {
2580
+ "type": "string",
2581
+ "maxLength": 1024
2582
+ },
2583
+ "type": {
2584
+ "type": "string",
2585
+ "enum": [
2586
+ "event"
2587
+ ]
2588
+ },
2589
+ "config": {
2590
+ "type": "object",
2591
+ "properties": {
2592
+ "subject": {
2593
+ "type": "string",
2594
+ "maxLength": 255
2595
+ },
2596
+ "new": {
2597
+ "type": "boolean"
2598
+ },
2599
+ "acknowledged": {
2600
+ "type": "boolean"
2601
+ },
2602
+ "resolved": {
2603
+ "type": "boolean"
2604
+ }
2605
+ },
2606
+ "additionalProperties": false
2607
+ },
2608
+ "meta": {
2609
+ "type": "object",
2610
+ "properties": {
2611
+ "category": {
2612
+ "type": "string",
2613
+ "enum": [
2614
+ "trigger"
2615
+ ]
2616
+ },
2617
+ "name": {
2618
+ "type": "string",
2619
+ "enum": [
2620
+ "event"
2621
+ ]
2622
+ },
2623
+ "label": {
2624
+ "type": "string",
2625
+ "minLength": 1,
2626
+ "maxLength": 255
2627
+ },
2628
+ "x": {
2629
+ "type": "number"
2630
+ },
2631
+ "y": {
2632
+ "type": "number"
2633
+ },
2634
+ "uiId": {
2635
+ "type": "string",
2636
+ "maxLength": 48
2637
+ },
2638
+ "description": {
2639
+ "type": "string",
2640
+ "maxLength": 32767
2641
+ },
2642
+ "icon": {
2643
+ "type": "string",
2644
+ "maxLength": 1024
2645
+ },
2646
+ "color": {
2647
+ "type": "string",
2648
+ "maxLength": 1024
2649
+ },
2650
+ "inputCount": {
2651
+ "type": "number"
2652
+ },
2653
+ "outputCount": {
2654
+ "type": "number"
2655
+ },
2656
+ "id": {
2657
+ "type": "string",
2658
+ "maxLength": 48
2659
+ }
2660
+ },
2661
+ "additionalProperties": false
2662
+ },
2663
+ "outputIds": {
2664
+ "type": "array",
2665
+ "items": {
2666
+ "type": "array",
2667
+ "items": {
2668
+ "type": "string",
2669
+ "maxLength": 255
2670
+ },
2671
+ "maxItems": 100
2672
+ },
2673
+ "maxItems": 100
2674
+ }
2675
+ },
2676
+ "required": [
2677
+ "type"
2678
+ ],
2679
+ "additionalProperties": false
2680
+ },
2681
+ {
2682
+ "type": "object",
2683
+ "properties": {
2684
+ "key": {
2685
+ "type": "string",
2686
+ "maxLength": 1024
2687
+ },
2688
+ "type": {
2689
+ "type": "string",
2690
+ "enum": [
2691
+ "fileTail"
2692
+ ]
2693
+ },
2694
+ "config": {
2695
+ "type": "object",
2696
+ "properties": {
2697
+ "path": {
2698
+ "type": "string",
2699
+ "maxLength": 1024
2700
+ },
2701
+ "encoding": {
2702
+ "type": "string",
2703
+ "maxLength": 48
2704
+ },
2705
+ "byteLength": {
2706
+ "type": "string",
2707
+ "maxLength": 48
2708
+ },
2709
+ "delimiter": {
2710
+ "type": "string",
2711
+ "maxLength": 48
2712
+ }
2713
+ },
2714
+ "additionalProperties": false
2715
+ },
2716
+ "meta": {
2717
+ "type": "object",
2718
+ "properties": {
2719
+ "category": {
2720
+ "type": "string",
2721
+ "enum": [
2722
+ "trigger"
2723
+ ]
2724
+ },
2725
+ "name": {
2726
+ "type": "string",
2727
+ "enum": [
2728
+ "fileTail"
2729
+ ]
2730
+ },
2731
+ "label": {
2732
+ "type": "string",
2733
+ "minLength": 1,
2734
+ "maxLength": 255
2735
+ },
2736
+ "x": {
2737
+ "type": "number"
2738
+ },
2739
+ "y": {
2740
+ "type": "number"
2741
+ },
2742
+ "uiId": {
2743
+ "type": "string",
2744
+ "maxLength": 48
2745
+ },
2746
+ "description": {
2747
+ "type": "string",
2748
+ "maxLength": 32767
2749
+ },
2750
+ "icon": {
2751
+ "type": "string",
2752
+ "maxLength": 1024
2753
+ },
2754
+ "color": {
2755
+ "type": "string",
2756
+ "maxLength": 1024
2757
+ },
2758
+ "inputCount": {
2759
+ "type": "number"
2760
+ },
2761
+ "outputCount": {
2762
+ "type": "number"
2763
+ },
2764
+ "id": {
2765
+ "type": "string",
2766
+ "maxLength": 48
2767
+ }
2768
+ },
2769
+ "additionalProperties": false
2770
+ },
2771
+ "outputIds": {
2772
+ "type": "array",
2773
+ "items": {
2774
+ "type": "array",
2775
+ "items": {
2776
+ "type": "string",
2777
+ "maxLength": 255
2778
+ },
2779
+ "maxItems": 100
2780
+ },
2781
+ "maxItems": 100
2782
+ }
2783
+ },
2784
+ "required": [
2785
+ "type"
2786
+ ],
2787
+ "additionalProperties": false
2788
+ },
2789
+ {
2790
+ "type": "object",
2791
+ "properties": {
2792
+ "key": {
2793
+ "type": "string",
2794
+ "maxLength": 1024
2795
+ },
2796
+ "type": {
2797
+ "type": "string",
2798
+ "enum": [
2799
+ "fileWatch"
2800
+ ]
2801
+ },
2802
+ "config": {
2803
+ "type": "object",
2804
+ "properties": {
2805
+ "path": {
2806
+ "type": "string",
2807
+ "maxLength": 1024
2808
+ },
2809
+ "fileAdded": {
2810
+ "type": "boolean"
2811
+ },
2812
+ "fileChanged": {
2813
+ "type": "boolean"
2814
+ },
2815
+ "fileRemoved": {
2816
+ "type": "boolean"
2817
+ },
2818
+ "directoryAdded": {
2819
+ "type": "boolean"
2820
+ },
2821
+ "directoryRemoved": {
2822
+ "type": "boolean"
2823
+ }
2824
+ },
2825
+ "additionalProperties": false
2826
+ },
2827
+ "meta": {
2828
+ "type": "object",
2829
+ "properties": {
2830
+ "category": {
2831
+ "type": "string",
2832
+ "enum": [
2833
+ "trigger"
2834
+ ]
2835
+ },
2836
+ "name": {
2837
+ "type": "string",
2838
+ "enum": [
2839
+ "fileWatch"
2840
+ ]
2841
+ },
2842
+ "label": {
2843
+ "type": "string",
2844
+ "minLength": 1,
2845
+ "maxLength": 255
2846
+ },
2847
+ "x": {
2848
+ "type": "number"
2849
+ },
2850
+ "y": {
2851
+ "type": "number"
2852
+ },
2853
+ "uiId": {
2854
+ "type": "string",
2855
+ "maxLength": 48
2856
+ },
2857
+ "description": {
2858
+ "type": "string",
2859
+ "maxLength": 32767
2860
+ },
2861
+ "icon": {
2862
+ "type": "string",
2863
+ "maxLength": 1024
2864
+ },
2865
+ "color": {
2866
+ "type": "string",
2867
+ "maxLength": 1024
2868
+ },
2869
+ "inputCount": {
2870
+ "type": "number"
2871
+ },
2872
+ "outputCount": {
2873
+ "type": "number"
2874
+ },
2875
+ "id": {
2876
+ "type": "string",
2877
+ "maxLength": 48
2878
+ }
2879
+ },
2880
+ "additionalProperties": false
2881
+ },
2882
+ "outputIds": {
2883
+ "type": "array",
2884
+ "items": {
2885
+ "type": "array",
2886
+ "items": {
2887
+ "type": "string",
2888
+ "maxLength": 255
2889
+ },
2890
+ "maxItems": 100
2891
+ },
2892
+ "maxItems": 100
2893
+ }
2894
+ },
2895
+ "required": [
2896
+ "type"
2897
+ ],
2898
+ "additionalProperties": false
2899
+ },
2900
+ {
2901
+ "type": "object",
2902
+ "properties": {
2903
+ "key": {
2904
+ "type": "string",
2905
+ "maxLength": 1024
2906
+ },
2907
+ "type": {
2908
+ "type": "string",
2909
+ "enum": [
2910
+ "opcua"
2911
+ ]
2912
+ },
2913
+ "config": {
213
2914
  "type": "object",
214
2915
  "properties": {
215
- "type": {
2916
+ "uri": {
2917
+ "type": "string",
2918
+ "maxLength": 1024
2919
+ },
2920
+ "securityPolicy": {
2921
+ "type": "string",
2922
+ "maxLength": 255
2923
+ },
2924
+ "securityMode": {
2925
+ "type": "string",
2926
+ "maxLength": 255
2927
+ },
2928
+ "username": {
2929
+ "type": "string",
2930
+ "maxLength": 1024
2931
+ },
2932
+ "password": {
2933
+ "type": "string",
2934
+ "maxLength": 1024
2935
+ },
2936
+ "cert": {
2937
+ "type": "string",
2938
+ "maxLength": 32767
2939
+ },
2940
+ "privateKey": {
2941
+ "type": "string",
2942
+ "maxLength": 32767
2943
+ },
2944
+ "nameSpace": {
2945
+ "type": "string",
2946
+ "maxLength": 255
2947
+ },
2948
+ "identifier": {
2949
+ "type": "string",
2950
+ "maxLength": 255
2951
+ },
2952
+ "samplingInterval": {
2953
+ "type": "string",
2954
+ "maxLength": 255
2955
+ },
2956
+ "eventFilter": {
2957
+ "type": "array",
2958
+ "maxItems": 100,
2959
+ "items": {
2960
+ "type": "string",
2961
+ "maxLength": 255
2962
+ }
2963
+ }
2964
+ },
2965
+ "additionalProperties": false
2966
+ },
2967
+ "meta": {
2968
+ "type": "object",
2969
+ "properties": {
2970
+ "category": {
216
2971
  "type": "string",
217
2972
  "enum": [
218
- "checkbox"
2973
+ "trigger"
2974
+ ]
2975
+ },
2976
+ "name": {
2977
+ "type": "string",
2978
+ "enum": [
2979
+ "opcua"
219
2980
  ]
220
2981
  },
221
2982
  "label": {
222
2983
  "type": "string",
223
2984
  "minLength": 1,
2985
+ "maxLength": 255
2986
+ },
2987
+ "x": {
2988
+ "type": "number"
2989
+ },
2990
+ "y": {
2991
+ "type": "number"
2992
+ },
2993
+ "uiId": {
2994
+ "type": "string",
2995
+ "maxLength": 48
2996
+ },
2997
+ "description": {
2998
+ "type": "string",
2999
+ "maxLength": 32767
3000
+ },
3001
+ "icon": {
3002
+ "type": "string",
3003
+ "maxLength": 1024
3004
+ },
3005
+ "color": {
3006
+ "type": "string",
224
3007
  "maxLength": 1024
225
3008
  },
3009
+ "inputCount": {
3010
+ "type": "number"
3011
+ },
3012
+ "outputCount": {
3013
+ "type": "number"
3014
+ },
226
3015
  "id": {
227
3016
  "type": "string",
228
- "minLength": 1,
3017
+ "maxLength": 48
3018
+ }
3019
+ },
3020
+ "additionalProperties": false
3021
+ },
3022
+ "outputIds": {
3023
+ "type": "array",
3024
+ "items": {
3025
+ "type": "array",
3026
+ "items": {
3027
+ "type": "string",
3028
+ "maxLength": 255
3029
+ },
3030
+ "maxItems": 100
3031
+ },
3032
+ "maxItems": 100
3033
+ }
3034
+ },
3035
+ "required": [
3036
+ "type"
3037
+ ],
3038
+ "additionalProperties": false
3039
+ },
3040
+ {
3041
+ "type": "object",
3042
+ "properties": {
3043
+ "key": {
3044
+ "type": "string",
3045
+ "maxLength": 1024
3046
+ },
3047
+ "type": {
3048
+ "type": "string",
3049
+ "enum": [
3050
+ "redis"
3051
+ ]
3052
+ },
3053
+ "config": {
3054
+ "type": "object",
3055
+ "properties": {
3056
+ "host": {
3057
+ "type": "string",
229
3058
  "maxLength": 1024
230
3059
  },
231
- "description": {
3060
+ "port": {
232
3061
  "type": "string",
233
- "maxLength": 32767
3062
+ "maxLength": 16
234
3063
  },
235
- "defaultValue": {
3064
+ "password": {
3065
+ "type": "string",
3066
+ "maxLength": 1024
3067
+ },
3068
+ "topic": {
3069
+ "type": "string",
3070
+ "maxLength": 1024
3071
+ },
3072
+ "fileAdded": {
3073
+ "type": "boolean"
3074
+ },
3075
+ "fileChanged": {
3076
+ "type": "boolean"
3077
+ },
3078
+ "fileRemoved": {
3079
+ "type": "boolean"
3080
+ },
3081
+ "directoryAdded": {
3082
+ "type": "boolean"
3083
+ },
3084
+ "directoryRemoved": {
236
3085
  "type": "boolean"
237
3086
  }
238
3087
  },
239
- "additionalProperties": false,
240
- "required": [
241
- "type",
242
- "label"
243
- ]
3088
+ "additionalProperties": false
244
3089
  },
245
- {
3090
+ "meta": {
246
3091
  "type": "object",
247
3092
  "properties": {
248
- "type": {
3093
+ "category": {
249
3094
  "type": "string",
250
3095
  "enum": [
251
- "select"
3096
+ "trigger"
3097
+ ]
3098
+ },
3099
+ "name": {
3100
+ "type": "string",
3101
+ "enum": [
3102
+ "redisTrigger"
252
3103
  ]
253
3104
  },
254
3105
  "label": {
255
3106
  "type": "string",
256
3107
  "minLength": 1,
257
- "maxLength": 1024
3108
+ "maxLength": 255
258
3109
  },
259
- "id": {
3110
+ "x": {
3111
+ "type": "number"
3112
+ },
3113
+ "y": {
3114
+ "type": "number"
3115
+ },
3116
+ "uiId": {
260
3117
  "type": "string",
261
- "minLength": 1,
262
- "maxLength": 1024
3118
+ "maxLength": 48
263
3119
  },
264
3120
  "description": {
265
3121
  "type": "string",
266
3122
  "maxLength": 32767
267
3123
  },
268
- "defaultValue": {
3124
+ "icon": {
269
3125
  "type": "string",
270
- "minLength": 1,
271
3126
  "maxLength": 1024
272
3127
  },
273
- "options": {
274
- "type": "array",
275
- "minItems": 1,
276
- "maxItems": 100,
277
- "items": {
278
- "type": "object",
279
- "properties": {
280
- "label": {
281
- "type": "string",
282
- "maxLength": 1024
283
- },
284
- "value": {
285
- "type": "string",
286
- "minLength": 1,
287
- "maxLength": 1024
288
- }
289
- },
290
- "additionalProperties": false,
291
- "required": [
292
- "value"
293
- ]
294
- }
3128
+ "color": {
3129
+ "type": "string",
3130
+ "maxLength": 1024
3131
+ },
3132
+ "inputCount": {
3133
+ "type": "number"
3134
+ },
3135
+ "outputCount": {
3136
+ "type": "number"
3137
+ },
3138
+ "id": {
3139
+ "type": "string",
3140
+ "maxLength": 48
295
3141
  }
296
3142
  },
297
- "additionalProperties": false,
298
- "required": [
299
- "type",
300
- "label",
301
- "defaultValue",
302
- "options"
3143
+ "additionalProperties": false
3144
+ },
3145
+ "outputIds": {
3146
+ "type": "array",
3147
+ "items": {
3148
+ "type": "array",
3149
+ "items": {
3150
+ "type": "string",
3151
+ "maxLength": 255
3152
+ },
3153
+ "maxItems": 100
3154
+ },
3155
+ "maxItems": 100
3156
+ }
3157
+ },
3158
+ "required": [
3159
+ "type"
3160
+ ],
3161
+ "additionalProperties": false
3162
+ },
3163
+ {
3164
+ "type": "object",
3165
+ "properties": {
3166
+ "key": {
3167
+ "type": "string",
3168
+ "maxLength": 1024
3169
+ },
3170
+ "type": {
3171
+ "type": "string",
3172
+ "enum": [
3173
+ "serial"
303
3174
  ]
304
3175
  },
305
- {
3176
+ "config": {
306
3177
  "type": "object",
307
3178
  "properties": {
308
- "type": {
3179
+ "path": {
3180
+ "type": "string",
3181
+ "maxLength": 1024
3182
+ },
3183
+ "baudRate": {
3184
+ "type": "number"
3185
+ },
3186
+ "encoding": {
3187
+ "type": "string",
3188
+ "maxLength": 48
3189
+ },
3190
+ "writeOnOpen": {
3191
+ "type": "string",
3192
+ "maxLength": 1024
3193
+ },
3194
+ "byteLength": {
3195
+ "type": "string",
3196
+ "maxLength": 48
3197
+ },
3198
+ "delimiter": {
3199
+ "type": "string",
3200
+ "maxLength": 48
3201
+ }
3202
+ },
3203
+ "additionalProperties": false
3204
+ },
3205
+ "meta": {
3206
+ "type": "object",
3207
+ "properties": {
3208
+ "category": {
309
3209
  "type": "string",
310
3210
  "enum": [
311
- "stringTemplate"
3211
+ "trigger"
3212
+ ]
3213
+ },
3214
+ "name": {
3215
+ "type": "string",
3216
+ "enum": [
3217
+ "serial"
312
3218
  ]
313
3219
  },
314
3220
  "label": {
315
3221
  "type": "string",
316
3222
  "minLength": 1,
317
- "maxLength": 1024
3223
+ "maxLength": 255
318
3224
  },
319
- "id": {
3225
+ "x": {
3226
+ "type": "number"
3227
+ },
3228
+ "y": {
3229
+ "type": "number"
3230
+ },
3231
+ "uiId": {
320
3232
  "type": "string",
321
- "minLength": 1,
322
- "maxLength": 1024
3233
+ "maxLength": 48
323
3234
  },
324
3235
  "description": {
325
3236
  "type": "string",
326
3237
  "maxLength": 32767
327
3238
  },
328
- "defaultValue": {
3239
+ "icon": {
329
3240
  "type": "string",
330
3241
  "maxLength": 1024
331
3242
  },
332
- "required": {
333
- "type": "boolean"
334
- },
335
- "validRegExp": {
3243
+ "color": {
336
3244
  "type": "string",
337
3245
  "maxLength": 1024
3246
+ },
3247
+ "inputCount": {
3248
+ "type": "number"
3249
+ },
3250
+ "outputCount": {
3251
+ "type": "number"
3252
+ },
3253
+ "id": {
3254
+ "type": "string",
3255
+ "maxLength": 48
3256
+ },
3257
+ "parseBy": {
3258
+ "type": "string",
3259
+ "enum": [
3260
+ "byteLength",
3261
+ "delimiter"
3262
+ ]
338
3263
  }
339
3264
  },
340
- "additionalProperties": false,
341
- "required": [
342
- "type",
343
- "label"
3265
+ "additionalProperties": false
3266
+ },
3267
+ "outputIds": {
3268
+ "type": "array",
3269
+ "items": {
3270
+ "type": "array",
3271
+ "items": {
3272
+ "type": "string",
3273
+ "maxLength": 255
3274
+ },
3275
+ "maxItems": 100
3276
+ },
3277
+ "maxItems": 100
3278
+ }
3279
+ },
3280
+ "required": [
3281
+ "type"
3282
+ ],
3283
+ "additionalProperties": false
3284
+ },
3285
+ {
3286
+ "type": "object",
3287
+ "properties": {
3288
+ "key": {
3289
+ "type": "string",
3290
+ "maxLength": 1024
3291
+ },
3292
+ "type": {
3293
+ "type": "string",
3294
+ "enum": [
3295
+ "timer"
344
3296
  ]
345
3297
  },
346
- {
3298
+ "config": {
347
3299
  "type": "object",
348
3300
  "properties": {
349
- "type": {
3301
+ "seconds": {
3302
+ "type": "number"
3303
+ },
3304
+ "cron": {
3305
+ "type": "string",
3306
+ "maxLength": 255
3307
+ },
3308
+ "tz": {
3309
+ "type": "string",
3310
+ "maxLength": 255
3311
+ }
3312
+ },
3313
+ "additionalProperties": false
3314
+ },
3315
+ "meta": {
3316
+ "type": "object",
3317
+ "properties": {
3318
+ "category": {
350
3319
  "type": "string",
351
3320
  "enum": [
352
- "numberTemplate"
3321
+ "trigger"
3322
+ ]
3323
+ },
3324
+ "name": {
3325
+ "type": "string",
3326
+ "enum": [
3327
+ "timer"
353
3328
  ]
354
3329
  },
355
3330
  "label": {
356
3331
  "type": "string",
357
3332
  "minLength": 1,
358
- "maxLength": 1024
3333
+ "maxLength": 255
359
3334
  },
360
- "id": {
3335
+ "x": {
3336
+ "type": "number"
3337
+ },
3338
+ "y": {
3339
+ "type": "number"
3340
+ },
3341
+ "uiId": {
361
3342
  "type": "string",
362
- "minLength": 1,
363
- "maxLength": 1024
3343
+ "maxLength": 48
364
3344
  },
365
3345
  "description": {
366
3346
  "type": "string",
367
3347
  "maxLength": 32767
368
3348
  },
369
- "defaultValue": {
370
- "type": "number"
3349
+ "icon": {
3350
+ "type": "string",
3351
+ "maxLength": 1024
371
3352
  },
372
- "required": {
373
- "type": "boolean"
3353
+ "color": {
3354
+ "type": "string",
3355
+ "maxLength": 1024
374
3356
  },
375
- "validMin": {
3357
+ "inputCount": {
376
3358
  "type": "number"
377
3359
  },
378
- "validMax": {
3360
+ "outputCount": {
379
3361
  "type": "number"
380
- }
381
- },
382
- "additionalProperties": false,
383
- "required": [
384
- "type",
385
- "label"
386
- ]
387
- },
388
- {
389
- "type": "object",
390
- "properties": {
391
- "type": {
392
- "type": "string",
393
- "enum": [
394
- "jsonTemplate"
395
- ]
396
3362
  },
397
- "label": {
3363
+ "id": {
398
3364
  "type": "string",
399
- "minLength": 1,
400
- "maxLength": 1024
3365
+ "maxLength": 48
401
3366
  },
402
- "id": {
3367
+ "timerTypeSelect": {
403
3368
  "type": "string",
404
- "minLength": 1,
405
- "maxLength": 1024
3369
+ "enum": [
3370
+ "cronWeekly",
3371
+ "seconds",
3372
+ "cron"
3373
+ ]
406
3374
  },
407
- "description": {
3375
+ "timeAt": {
408
3376
  "type": "string",
409
- "maxLength": 32767
3377
+ "maxLength": 255
410
3378
  },
411
- "defaultValue": {
3379
+ "timezone": {
412
3380
  "type": "string",
413
- "maxLength": 32767
3381
+ "maxLength": 255
414
3382
  },
415
- "required": {
416
- "type": "boolean"
3383
+ "weekdays": {
3384
+ "type": "array",
3385
+ "maxItems": 7,
3386
+ "items": {
3387
+ "type": "number"
3388
+ }
417
3389
  }
418
3390
  },
419
- "additionalProperties": false,
420
- "required": [
421
- "type",
422
- "label"
3391
+ "additionalProperties": false
3392
+ },
3393
+ "outputIds": {
3394
+ "type": "array",
3395
+ "items": {
3396
+ "type": "array",
3397
+ "items": {
3398
+ "type": "string",
3399
+ "maxLength": 255
3400
+ },
3401
+ "maxItems": 100
3402
+ },
3403
+ "maxItems": 100
3404
+ }
3405
+ },
3406
+ "required": [
3407
+ "type"
3408
+ ],
3409
+ "additionalProperties": false
3410
+ },
3411
+ {
3412
+ "type": "object",
3413
+ "properties": {
3414
+ "key": {
3415
+ "type": "string",
3416
+ "maxLength": 1024
3417
+ },
3418
+ "type": {
3419
+ "type": "string",
3420
+ "enum": [
3421
+ "virtualButton"
423
3422
  ]
424
3423
  },
425
- {
3424
+ "config": {
3425
+ "type": "object",
3426
+ "additionalProperties": false
3427
+ },
3428
+ "meta": {
426
3429
  "type": "object",
427
3430
  "properties": {
428
- "type": {
3431
+ "category": {
429
3432
  "type": "string",
430
3433
  "enum": [
431
- "payloadPath"
3434
+ "trigger"
3435
+ ]
3436
+ },
3437
+ "name": {
3438
+ "type": "string",
3439
+ "enum": [
3440
+ "virtualButton"
432
3441
  ]
433
3442
  },
434
3443
  "label": {
435
3444
  "type": "string",
436
3445
  "minLength": 1,
437
- "maxLength": 1024
3446
+ "maxLength": 255
438
3447
  },
439
- "id": {
3448
+ "x": {
3449
+ "type": "number"
3450
+ },
3451
+ "y": {
3452
+ "type": "number"
3453
+ },
3454
+ "uiId": {
440
3455
  "type": "string",
441
- "minLength": 1,
442
- "maxLength": 1024
3456
+ "maxLength": 48
3457
+ },
3458
+ "groupId": {
3459
+ "type": "string",
3460
+ "maxLength": 48
443
3461
  },
444
3462
  "description": {
445
3463
  "type": "string",
446
3464
  "maxLength": 32767
447
3465
  },
448
- "required": {
449
- "type": "boolean"
450
- }
451
- },
452
- "additionalProperties": false,
453
- "required": [
454
- "type",
455
- "label"
456
- ]
457
- },
458
- {
459
- "type": "object",
460
- "properties": {
461
- "type": {
3466
+ "icon": {
462
3467
  "type": "string",
463
- "enum": [
464
- "section"
465
- ]
3468
+ "maxLength": 1024
466
3469
  },
467
- "label": {
3470
+ "color": {
468
3471
  "type": "string",
469
- "minLength": 1,
470
3472
  "maxLength": 1024
471
3473
  },
3474
+ "inputCount": {
3475
+ "type": "number"
3476
+ },
3477
+ "outputCount": {
3478
+ "type": "number"
3479
+ },
472
3480
  "id": {
473
3481
  "type": "string",
474
- "minLength": 1,
475
- "maxLength": 1024
3482
+ "maxLength": 48
476
3483
  },
477
- "description": {
3484
+ "payload": {
478
3485
  "type": "string",
479
- "maxLength": 32767
3486
+ "maxLength": 262144
3487
+ },
3488
+ "deviceId": {
3489
+ "oneOf": [
3490
+ {
3491
+ "type": "string",
3492
+ "pattern": "^[A-Fa-f\\d]{24}$"
3493
+ },
3494
+ {
3495
+ "type": "string",
3496
+ "enum": [
3497
+ ""
3498
+ ]
3499
+ },
3500
+ {
3501
+ "type": "null"
3502
+ }
3503
+ ]
480
3504
  }
481
3505
  },
482
- "additionalProperties": false,
483
- "required": [
484
- "type",
485
- "label"
486
- ]
487
- }
488
- ]
489
- }
490
- }
491
- },
492
- "additionalProperties": false,
493
- "required": [
494
- "outputCount",
495
- "resultMode",
496
- "fields"
497
- ]
498
- },
499
- "stats": {
500
- "type": "object",
501
- "properties": {
502
- "runCount": {
503
- "type": "number"
504
- },
505
- "errorCount": {
506
- "type": "number"
507
- },
508
- "byVersion": {
509
- "type": "object",
510
- "patternProperties": {
511
- ".*": {
512
- "type": "object",
513
- "properties": {
514
- "runCount": {
515
- "type": "number"
3506
+ "additionalProperties": false
3507
+ },
3508
+ "outputIds": {
3509
+ "type": "array",
3510
+ "items": {
3511
+ "type": "array",
3512
+ "items": {
3513
+ "type": "string",
3514
+ "maxLength": 255
3515
+ },
3516
+ "maxItems": 100
516
3517
  },
517
- "errorCount": {
518
- "type": "number"
519
- }
3518
+ "maxItems": 100
520
3519
  }
521
- }
522
- }
523
- }
524
- }
525
- }
526
- }
527
- },
528
- {
529
- "description": "Schema for a single Experience Workflow Version",
530
- "type": "object",
531
- "properties": {
532
- "id": {
533
- "type": "string",
534
- "pattern": "^[A-Fa-f\\d]{24}$"
535
- },
536
- "flowVersionId": {
537
- "type": "string",
538
- "pattern": "^[A-Fa-f\\d]{24}$"
539
- },
540
- "flowId": {
541
- "type": "string",
542
- "pattern": "^[A-Fa-f\\d]{24}$"
543
- },
544
- "applicationId": {
545
- "type": "string",
546
- "pattern": "^[A-Fa-f\\d]{24}$"
547
- },
548
- "creationDate": {
549
- "type": "string",
550
- "format": "date-time"
551
- },
552
- "lastUpdated": {
553
- "type": "string",
554
- "format": "date-time"
555
- },
556
- "name": {
557
- "type": "string",
558
- "minLength": 1,
559
- "maxLength": 255
560
- },
561
- "description": {
562
- "type": "string",
563
- "maxLength": 32767
564
- },
565
- "iconData": {
566
- "type": "string",
567
- "maxLength": 32767,
568
- "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
569
- },
570
- "flowClass": {
571
- "type": "string",
572
- "enum": [
573
- "experience"
574
- ]
575
- },
576
- "versions": {
577
- "type": "array",
578
- "items": {
579
- "type": "string",
580
- "minLength": 1,
581
- "maxLength": 255
582
- }
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
- "customNodeStart",
600
- "dataTable",
601
- "deviceCommand",
602
- "deviceId",
603
- "deviceIdConnect",
604
- "deviceIdDisconnect",
605
- "deviceIdInactivity",
606
- "deviceTag",
607
- "deviceTagConnect",
608
- "deviceTagDisconnect",
609
- "deviceTagInactivity",
610
- "endpoint",
611
- "event",
612
- "fileTail",
613
- "fileWatch",
614
- "integration",
615
- "mqttTopic",
616
- "notebook",
617
- "onBoot",
618
- "onConnect",
619
- "onDisconnect",
620
- "opcua",
621
- "redis",
622
- "request",
623
- "serial",
624
- "timer",
625
- "udp",
626
- "virtualButton",
627
- "webhook"
628
- ]
629
- },
630
- "config": {
631
- "type": "object"
632
- },
633
- "meta": {
634
- "type": "object"
635
- },
636
- "outputIds": {
637
- "type": "array",
638
- "items": {
639
- "type": "array",
640
- "items": {
641
- "type": "string",
642
- "maxLength": 255
643
- },
644
- "maxItems": 100
645
3520
  },
646
- "maxItems": 100
3521
+ "required": [
3522
+ "type"
3523
+ ],
3524
+ "additionalProperties": false
647
3525
  }
648
- },
649
- "additionalProperties": false,
650
- "required": [
651
- "type"
652
3526
  ]
653
3527
  }
654
3528
  },