losant_rest 1.15.2 → 1.16.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,679 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "name": {
6
+ "type": "string",
7
+ "minLength": 1,
8
+ "maxLength": 255
9
+ },
10
+ "description": {
11
+ "type": "string",
12
+ "maxLength": 32767
13
+ },
14
+ "shortDescription": {
15
+ "type": "string",
16
+ "maxLength": 1024
17
+ },
18
+ "iconData": {
19
+ "oneOf": [
20
+ {
21
+ "type": "string",
22
+ "maxLength": 32767,
23
+ "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ]
29
+ },
30
+ "docsUrl": {
31
+ "type": "string",
32
+ "maxLength": 1024
33
+ },
34
+ "category": {
35
+ "type": "string",
36
+ "enum": [
37
+ "data",
38
+ "experience",
39
+ "logic",
40
+ "output",
41
+ ""
42
+ ]
43
+ },
44
+ "minimumAgentVersion": {
45
+ "type": "string",
46
+ "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
47
+ },
48
+ "triggers": {
49
+ "type": "array",
50
+ "items": {
51
+ "oneOf": [
52
+ {
53
+ "type": "object",
54
+ "properties": {
55
+ "key": {
56
+ "type": "string",
57
+ "maxLength": 1024
58
+ },
59
+ "type": {
60
+ "type": "string",
61
+ "enum": [
62
+ "customNodeStart",
63
+ "deviceCommand",
64
+ "deviceIdConnect",
65
+ "deviceTagConnect",
66
+ "deviceIdDisconnect",
67
+ "deviceTagDisconnect",
68
+ "integration",
69
+ "notebook",
70
+ "onBoot",
71
+ "onConnect",
72
+ "onDisconnect",
73
+ "udp",
74
+ "webhook"
75
+ ]
76
+ },
77
+ "config": {
78
+ "type": "object",
79
+ "additionalProperties": false
80
+ },
81
+ "meta": {
82
+ "type": "object",
83
+ "properties": {
84
+ "category": {
85
+ "type": "string",
86
+ "enum": [
87
+ "trigger"
88
+ ]
89
+ },
90
+ "name": {
91
+ "type": "string",
92
+ "enum": [
93
+ "customNodeStart",
94
+ "deviceCommand",
95
+ "deviceIdsTagsConnect",
96
+ "deviceIdsTagsDisconnect",
97
+ "eeaInit",
98
+ "flowError",
99
+ "azureEventHub",
100
+ "googlePubSub",
101
+ "meridian",
102
+ "mqtt",
103
+ "notebook",
104
+ "onBoot",
105
+ "onConnect",
106
+ "onDisconnect",
107
+ "particle",
108
+ "udp",
109
+ "webhook"
110
+ ]
111
+ },
112
+ "label": {
113
+ "type": "string",
114
+ "minLength": 1,
115
+ "maxLength": 255
116
+ },
117
+ "x": {
118
+ "type": "number"
119
+ },
120
+ "y": {
121
+ "type": "number"
122
+ },
123
+ "uiId": {
124
+ "type": "string",
125
+ "maxLength": 48
126
+ },
127
+ "description": {
128
+ "type": "string",
129
+ "maxLength": 32767
130
+ },
131
+ "icon": {
132
+ "type": "string",
133
+ "maxLength": 1024
134
+ },
135
+ "color": {
136
+ "type": "string",
137
+ "maxLength": 1024
138
+ },
139
+ "inputCount": {
140
+ "type": "number"
141
+ },
142
+ "outputCount": {
143
+ "type": "number"
144
+ },
145
+ "triggerId": {
146
+ "type": "string",
147
+ "maxLength": 48
148
+ },
149
+ "id": {
150
+ "type": "string",
151
+ "maxLength": 48
152
+ }
153
+ },
154
+ "additionalProperties": false
155
+ },
156
+ "outputIds": {
157
+ "type": "array",
158
+ "items": {
159
+ "type": "array",
160
+ "items": {
161
+ "type": "string",
162
+ "maxLength": 48,
163
+ "minLength": 1
164
+ },
165
+ "maxItems": 100
166
+ },
167
+ "maxItems": 100
168
+ }
169
+ },
170
+ "required": [
171
+ "type"
172
+ ],
173
+ "additionalProperties": false
174
+ },
175
+ {
176
+ "type": "object",
177
+ "properties": {
178
+ "key": {
179
+ "type": "string",
180
+ "maxLength": 1024
181
+ },
182
+ "type": {
183
+ "type": "string",
184
+ "enum": [
185
+ "virtualButton"
186
+ ]
187
+ },
188
+ "config": {
189
+ "type": "object",
190
+ "additionalProperties": false
191
+ },
192
+ "meta": {
193
+ "type": "object",
194
+ "properties": {
195
+ "category": {
196
+ "type": "string",
197
+ "enum": [
198
+ "trigger"
199
+ ]
200
+ },
201
+ "name": {
202
+ "type": "string",
203
+ "enum": [
204
+ "virtualButton"
205
+ ]
206
+ },
207
+ "label": {
208
+ "type": "string",
209
+ "minLength": 1,
210
+ "maxLength": 255
211
+ },
212
+ "x": {
213
+ "type": "number"
214
+ },
215
+ "y": {
216
+ "type": "number"
217
+ },
218
+ "uiId": {
219
+ "type": "string",
220
+ "maxLength": 48
221
+ },
222
+ "groupId": {
223
+ "type": "string",
224
+ "maxLength": 48
225
+ },
226
+ "description": {
227
+ "type": "string",
228
+ "maxLength": 32767
229
+ },
230
+ "icon": {
231
+ "type": "string",
232
+ "maxLength": 1024
233
+ },
234
+ "color": {
235
+ "type": "string",
236
+ "maxLength": 1024
237
+ },
238
+ "inputCount": {
239
+ "type": "number"
240
+ },
241
+ "outputCount": {
242
+ "type": "number"
243
+ },
244
+ "id": {
245
+ "type": "string",
246
+ "maxLength": 48
247
+ },
248
+ "payload": {
249
+ "type": "string",
250
+ "maxLength": 262144
251
+ },
252
+ "deviceId": {
253
+ "oneOf": [
254
+ {
255
+ "type": "string",
256
+ "pattern": "^[A-Fa-f\\d]{24}$"
257
+ },
258
+ {
259
+ "type": "string",
260
+ "enum": [
261
+ ""
262
+ ]
263
+ },
264
+ {
265
+ "type": "null"
266
+ }
267
+ ]
268
+ }
269
+ },
270
+ "additionalProperties": false
271
+ },
272
+ "outputIds": {
273
+ "type": "array",
274
+ "items": {
275
+ "type": "array",
276
+ "items": {
277
+ "type": "string",
278
+ "maxLength": 48,
279
+ "minLength": 1
280
+ },
281
+ "maxItems": 100
282
+ },
283
+ "maxItems": 100
284
+ }
285
+ },
286
+ "required": [
287
+ "type"
288
+ ],
289
+ "additionalProperties": false
290
+ }
291
+ ]
292
+ }
293
+ },
294
+ "nodes": {
295
+ "type": "array",
296
+ "items": {
297
+ "type": "object",
298
+ "properties": {
299
+ "id": {
300
+ "type": "string",
301
+ "maxLength": 1024
302
+ },
303
+ "type": {
304
+ "type": "string",
305
+ "minLength": 1,
306
+ "maxLength": 1024
307
+ },
308
+ "config": {
309
+ "type": "object"
310
+ },
311
+ "meta": {
312
+ "type": "object"
313
+ },
314
+ "outputIds": {
315
+ "type": "array",
316
+ "items": {
317
+ "type": "array",
318
+ "items": {
319
+ "type": "string",
320
+ "maxLength": 48,
321
+ "minLength": 1
322
+ },
323
+ "maxItems": 100
324
+ },
325
+ "maxItems": 100
326
+ }
327
+ },
328
+ "additionalProperties": false,
329
+ "required": [
330
+ "type"
331
+ ]
332
+ }
333
+ },
334
+ "customNodeConfig": {
335
+ "type": "object",
336
+ "properties": {
337
+ "outputCount": {
338
+ "type": "number",
339
+ "enum": [
340
+ 1,
341
+ 2
342
+ ]
343
+ },
344
+ "resultMode": {
345
+ "type": "string",
346
+ "enum": [
347
+ "optional",
348
+ "required",
349
+ "none"
350
+ ]
351
+ },
352
+ "resultDescription": {
353
+ "type": "string",
354
+ "maxLength": 32767
355
+ },
356
+ "fields": {
357
+ "type": "array",
358
+ "maxItems": 100,
359
+ "items": {
360
+ "oneOf": [
361
+ {
362
+ "type": "object",
363
+ "properties": {
364
+ "type": {
365
+ "type": "string",
366
+ "enum": [
367
+ "checkbox"
368
+ ]
369
+ },
370
+ "label": {
371
+ "type": "string",
372
+ "minLength": 1,
373
+ "maxLength": 1024
374
+ },
375
+ "id": {
376
+ "type": "string",
377
+ "minLength": 1,
378
+ "maxLength": 1024
379
+ },
380
+ "description": {
381
+ "type": "string",
382
+ "maxLength": 32767
383
+ },
384
+ "defaultValue": {
385
+ "type": "boolean"
386
+ }
387
+ },
388
+ "additionalProperties": false,
389
+ "required": [
390
+ "type",
391
+ "label"
392
+ ]
393
+ },
394
+ {
395
+ "type": "object",
396
+ "properties": {
397
+ "type": {
398
+ "type": "string",
399
+ "enum": [
400
+ "select"
401
+ ]
402
+ },
403
+ "label": {
404
+ "type": "string",
405
+ "minLength": 1,
406
+ "maxLength": 1024
407
+ },
408
+ "id": {
409
+ "type": "string",
410
+ "minLength": 1,
411
+ "maxLength": 1024
412
+ },
413
+ "description": {
414
+ "type": "string",
415
+ "maxLength": 32767
416
+ },
417
+ "defaultValue": {
418
+ "type": "string",
419
+ "minLength": 1,
420
+ "maxLength": 1024
421
+ },
422
+ "options": {
423
+ "type": "array",
424
+ "minItems": 1,
425
+ "maxItems": 100,
426
+ "items": {
427
+ "type": "object",
428
+ "properties": {
429
+ "label": {
430
+ "type": "string",
431
+ "maxLength": 1024
432
+ },
433
+ "value": {
434
+ "type": "string",
435
+ "minLength": 1,
436
+ "maxLength": 1024
437
+ }
438
+ },
439
+ "additionalProperties": false,
440
+ "required": [
441
+ "value"
442
+ ]
443
+ }
444
+ }
445
+ },
446
+ "additionalProperties": false,
447
+ "required": [
448
+ "type",
449
+ "label",
450
+ "defaultValue",
451
+ "options"
452
+ ]
453
+ },
454
+ {
455
+ "type": "object",
456
+ "properties": {
457
+ "type": {
458
+ "type": "string",
459
+ "enum": [
460
+ "stringTemplate"
461
+ ]
462
+ },
463
+ "label": {
464
+ "type": "string",
465
+ "minLength": 1,
466
+ "maxLength": 1024
467
+ },
468
+ "id": {
469
+ "type": "string",
470
+ "minLength": 1,
471
+ "maxLength": 1024
472
+ },
473
+ "description": {
474
+ "type": "string",
475
+ "maxLength": 32767
476
+ },
477
+ "defaultValue": {
478
+ "type": "string",
479
+ "maxLength": 1024
480
+ },
481
+ "required": {
482
+ "type": "boolean"
483
+ },
484
+ "validRegExp": {
485
+ "type": "string",
486
+ "maxLength": 1024
487
+ }
488
+ },
489
+ "additionalProperties": false,
490
+ "required": [
491
+ "type",
492
+ "label"
493
+ ]
494
+ },
495
+ {
496
+ "type": "object",
497
+ "properties": {
498
+ "type": {
499
+ "type": "string",
500
+ "enum": [
501
+ "numberTemplate"
502
+ ]
503
+ },
504
+ "label": {
505
+ "type": "string",
506
+ "minLength": 1,
507
+ "maxLength": 1024
508
+ },
509
+ "id": {
510
+ "type": "string",
511
+ "minLength": 1,
512
+ "maxLength": 1024
513
+ },
514
+ "description": {
515
+ "type": "string",
516
+ "maxLength": 32767
517
+ },
518
+ "defaultValue": {
519
+ "type": "number"
520
+ },
521
+ "required": {
522
+ "type": "boolean"
523
+ },
524
+ "validMin": {
525
+ "type": "number"
526
+ },
527
+ "validMax": {
528
+ "type": "number"
529
+ }
530
+ },
531
+ "additionalProperties": false,
532
+ "required": [
533
+ "type",
534
+ "label"
535
+ ]
536
+ },
537
+ {
538
+ "type": "object",
539
+ "properties": {
540
+ "type": {
541
+ "type": "string",
542
+ "enum": [
543
+ "jsonTemplate"
544
+ ]
545
+ },
546
+ "label": {
547
+ "type": "string",
548
+ "minLength": 1,
549
+ "maxLength": 1024
550
+ },
551
+ "id": {
552
+ "type": "string",
553
+ "minLength": 1,
554
+ "maxLength": 1024
555
+ },
556
+ "description": {
557
+ "type": "string",
558
+ "maxLength": 32767
559
+ },
560
+ "defaultValue": {
561
+ "type": "string",
562
+ "maxLength": 32767
563
+ },
564
+ "required": {
565
+ "type": "boolean"
566
+ }
567
+ },
568
+ "additionalProperties": false,
569
+ "required": [
570
+ "type",
571
+ "label"
572
+ ]
573
+ },
574
+ {
575
+ "type": "object",
576
+ "properties": {
577
+ "type": {
578
+ "type": "string",
579
+ "enum": [
580
+ "payloadPath"
581
+ ]
582
+ },
583
+ "label": {
584
+ "type": "string",
585
+ "minLength": 1,
586
+ "maxLength": 1024
587
+ },
588
+ "id": {
589
+ "type": "string",
590
+ "minLength": 1,
591
+ "maxLength": 1024
592
+ },
593
+ "description": {
594
+ "type": "string",
595
+ "maxLength": 32767
596
+ },
597
+ "required": {
598
+ "type": "boolean"
599
+ }
600
+ },
601
+ "additionalProperties": false,
602
+ "required": [
603
+ "type",
604
+ "label"
605
+ ]
606
+ },
607
+ {
608
+ "type": "object",
609
+ "properties": {
610
+ "type": {
611
+ "type": "string",
612
+ "enum": [
613
+ "section"
614
+ ]
615
+ },
616
+ "label": {
617
+ "type": "string",
618
+ "minLength": 1,
619
+ "maxLength": 1024
620
+ },
621
+ "id": {
622
+ "type": "string",
623
+ "minLength": 1,
624
+ "maxLength": 1024
625
+ },
626
+ "description": {
627
+ "type": "string",
628
+ "maxLength": 32767
629
+ }
630
+ },
631
+ "additionalProperties": false,
632
+ "required": [
633
+ "type",
634
+ "label"
635
+ ]
636
+ }
637
+ ]
638
+ }
639
+ }
640
+ },
641
+ "additionalProperties": false,
642
+ "required": [
643
+ "outputCount",
644
+ "resultMode",
645
+ "fields"
646
+ ]
647
+ },
648
+ "customNodeSupports": {
649
+ "type": "array",
650
+ "items": {
651
+ "type": "string",
652
+ "enum": [
653
+ "cloud"
654
+ ]
655
+ }
656
+ }
657
+ },
658
+ "additionalProperties": {
659
+ "oneOf": [
660
+ {
661
+ "type": "array",
662
+ "maxItems": 0
663
+ },
664
+ {
665
+ "type": "string",
666
+ "maxLength": 1024
667
+ },
668
+ {
669
+ "type": "boolean"
670
+ }
671
+ ]
672
+ },
673
+ "maxProperties": 25,
674
+ "required": [
675
+ "name",
676
+ "triggers",
677
+ "nodes"
678
+ ]
679
+ }