homey-api 3.6.8 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -442,6 +442,7 @@
442
442
  "id": "dashboard",
443
443
  "schema": {
444
444
  "type": "object",
445
+ "additionalProperties": false,
445
446
  "properties": {
446
447
  "id": {
447
448
  "type": "string",
@@ -450,56 +451,28 @@
450
451
  "name": {
451
452
  "type": "string"
452
453
  },
453
- "widgets": {
454
- "type": "object",
455
- "additionalProperties": false,
456
- "patternProperties": {
457
- "^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$": {
458
- "type": "object",
459
- "properties": {
460
- "type": {
461
- "type": "string"
462
- },
463
- "x": {
464
- "type": "number"
465
- },
466
- "y": {
467
- "type": "number"
468
- },
469
- "width": {
470
- "type": "number"
471
- },
472
- "height": {
473
- "type": "number"
474
- },
475
- "settings": {
476
- "type": "object"
477
- }
478
- }
479
- }
480
- }
481
- },
482
- "lines": {
483
- "type": "object",
484
- "additionalProperties": false,
485
- "patternProperties": {
486
- "^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$": {
487
- "type": "object",
488
- "properties": {
489
- "x1": {
490
- "type": "number"
491
- },
492
- "x2": {
493
- "type": "number"
494
- },
495
- "y1": {
496
- "type": "number"
497
- },
498
- "y2": {
499
- "type": "number"
500
- },
501
- "settings": {
502
- "type": "object"
454
+ "columns": {
455
+ "type": "array",
456
+ "items": {
457
+ "type": "object",
458
+ "properties": {
459
+ "id": {
460
+ "type": "string",
461
+ "format": "uuid"
462
+ },
463
+ "widgets": {
464
+ "type": "array",
465
+ "items": {
466
+ "type": "object",
467
+ "required": [
468
+ "id"
469
+ ],
470
+ "properties": {
471
+ "id": {
472
+ "type": "string",
473
+ "format": "uuid"
474
+ }
475
+ }
503
476
  }
504
477
  }
505
478
  }
@@ -507,6 +480,28 @@
507
480
  }
508
481
  }
509
482
  }
483
+ },
484
+ "AppWidget": {
485
+ "id": "appwidget",
486
+ "schema": {
487
+ "type": "object",
488
+ "properties": {
489
+ "id": {
490
+ "type": "string"
491
+ }
492
+ }
493
+ }
494
+ },
495
+ "WidgetStore": {
496
+ "id": "widgetstore",
497
+ "schema": {
498
+ "type": "object",
499
+ "properties": {
500
+ "id": {
501
+ "type": "string"
502
+ }
503
+ }
504
+ }
510
505
  }
511
506
  },
512
507
  "operations": {
@@ -573,12 +568,8 @@
573
568
  "type": "string",
574
569
  "required": true
575
570
  },
576
- "widgets": {
577
- "type": "object",
578
- "required": true
579
- },
580
- "lines": {
581
- "type": "object",
571
+ "columns": {
572
+ "type": "array",
582
573
  "required": true
583
574
  }
584
575
  }
@@ -611,11 +602,8 @@
611
602
  "name": {
612
603
  "type": "string"
613
604
  },
614
- "widgets": {
615
- "type": "object"
616
- },
617
- "lines": {
618
- "type": "object"
605
+ "columns": {
606
+ "type": "array"
619
607
  }
620
608
  }
621
609
  }
@@ -639,6 +627,138 @@
639
627
  "required": true
640
628
  }
641
629
  }
630
+ },
631
+ "getAppWidgets": {
632
+ "method": "get",
633
+ "path": "/appwidget",
634
+ "private": false,
635
+ "scopes": [
636
+ "homey.dashboard.readonly"
637
+ ],
638
+ "crud": {
639
+ "type": "getAll",
640
+ "item": "AppWidget"
641
+ },
642
+ "parameters": {}
643
+ },
644
+ "getAppWidget": {
645
+ "method": "get",
646
+ "path": "/appwidget/:id",
647
+ "private": false,
648
+ "scopes": [
649
+ "homey.dashboard.readonly"
650
+ ],
651
+ "crud": {
652
+ "type": "getOne",
653
+ "item": "AppWidget"
654
+ },
655
+ "parameters": {
656
+ "id": {
657
+ "in": "path",
658
+ "type": "string",
659
+ "required": true
660
+ }
661
+ }
662
+ },
663
+ "getAppWidgetAutocomplete": {
664
+ "method": "get",
665
+ "path": "/appwidget/:id/autocomplete",
666
+ "private": false,
667
+ "scopes": [
668
+ "homey.dashboard.readonly"
669
+ ],
670
+ "parameters": {
671
+ "id": {
672
+ "in": "path",
673
+ "type": "string",
674
+ "required": true
675
+ },
676
+ "settingId": {
677
+ "in": "query",
678
+ "type": "string",
679
+ "required": true
680
+ },
681
+ "query": {
682
+ "in": "query",
683
+ "type": "string",
684
+ "required": true
685
+ },
686
+ "settings": {
687
+ "in": "query",
688
+ "type": "object"
689
+ }
690
+ }
691
+ },
692
+ "getWidgetStores": {
693
+ "method": "get",
694
+ "path": "/widgetstore",
695
+ "private": false,
696
+ "scopes": [
697
+ "homey.dashboard.readonly"
698
+ ],
699
+ "crud": {
700
+ "type": "getAll",
701
+ "item": "WidgetStore"
702
+ },
703
+ "parameters": {}
704
+ },
705
+ "getWidgetStore": {
706
+ "method": "get",
707
+ "path": "/widgetstore/:id",
708
+ "private": false,
709
+ "scopes": [
710
+ "homey.dashboard.readonly"
711
+ ],
712
+ "crud": {
713
+ "type": "getOne",
714
+ "item": "WidgetStore"
715
+ },
716
+ "parameters": {
717
+ "id": {
718
+ "in": "path",
719
+ "type": "string",
720
+ "required": true
721
+ }
722
+ }
723
+ },
724
+ "getWidgetStoreState": {
725
+ "method": "get",
726
+ "path": "/widgetstore/:id/state",
727
+ "private": false,
728
+ "scopes": [
729
+ "homey.dashboard.readonly"
730
+ ],
731
+ "parameters": {
732
+ "id": {
733
+ "in": "path",
734
+ "type": "string",
735
+ "required": true
736
+ }
737
+ }
738
+ },
739
+ "setWidgetStoreState": {
740
+ "method": "post",
741
+ "path": "/widgetstore/:id/state",
742
+ "private": false,
743
+ "scopes": [
744
+ "homey.dashboard.readonly"
745
+ ],
746
+ "parameters": {
747
+ "id": {
748
+ "in": "path",
749
+ "type": "string",
750
+ "required": true
751
+ },
752
+ "state": {
753
+ "in": "body",
754
+ "type": "object",
755
+ "required": true
756
+ },
757
+ "replace": {
758
+ "in": "body",
759
+ "type": "boolean"
760
+ }
761
+ }
642
762
  }
643
763
  }
644
764
  },
@@ -1220,6 +1340,235 @@
1220
1340
  }
1221
1341
  }
1222
1342
  },
1343
+ "ManagerEnergyDongle": {
1344
+ "id": "energydongle",
1345
+ "idCamelCase": "energydongle",
1346
+ "items": {},
1347
+ "operations": {
1348
+ "getOptionPhaseLoadNotificationSettings": {
1349
+ "method": "GET",
1350
+ "path": "/option/phaseLoadNotificationSettings",
1351
+ "scopes": [
1352
+ "homey.system.readonly"
1353
+ ]
1354
+ },
1355
+ "setOptionPhaseLoadNotificationSettings": {
1356
+ "method": "PUT",
1357
+ "path": "/option/phaseLoadNotificationSettings",
1358
+ "scopes": [
1359
+ "homey.system"
1360
+ ],
1361
+ "parameters": {
1362
+ "value": {
1363
+ "in": "body",
1364
+ "required": true
1365
+ }
1366
+ }
1367
+ },
1368
+ "unsetOptionPhaseLoadNotificationSettings": {
1369
+ "method": "DELETE",
1370
+ "path": "/option/phaseLoadNotificationSettings",
1371
+ "scopes": [
1372
+ "homey.system"
1373
+ ]
1374
+ },
1375
+ "createAndUploadDiagnosticReport": {
1376
+ "method": "post",
1377
+ "path": "/:deviceId/diagnostic-report",
1378
+ "private": true,
1379
+ "scopes": [
1380
+ "homey.system.readonly"
1381
+ ],
1382
+ "parameters": {
1383
+ "deviceId": {
1384
+ "in": "path",
1385
+ "type": "string",
1386
+ "required": true
1387
+ },
1388
+ "timeout": {
1389
+ "in": "body",
1390
+ "type": "number"
1391
+ }
1392
+ }
1393
+ },
1394
+ "getNextFrame": {
1395
+ "method": "get",
1396
+ "path": "/:deviceId/next-frame",
1397
+ "private": true,
1398
+ "scopes": [
1399
+ "homey.system.readonly"
1400
+ ],
1401
+ "parameters": {
1402
+ "deviceId": {
1403
+ "in": "path",
1404
+ "type": "string",
1405
+ "required": true
1406
+ },
1407
+ "timeout": {
1408
+ "in": "query",
1409
+ "type": "string"
1410
+ }
1411
+ }
1412
+ },
1413
+ "restartSettingsDiscovery": {
1414
+ "method": "post",
1415
+ "path": "/:deviceId/restart-settings-discovery",
1416
+ "private": true,
1417
+ "scopes": [
1418
+ "homey.system"
1419
+ ],
1420
+ "parameters": {
1421
+ "deviceId": {
1422
+ "in": "path",
1423
+ "type": "string",
1424
+ "required": true
1425
+ }
1426
+ }
1427
+ },
1428
+ "getUartConfig": {
1429
+ "method": "get",
1430
+ "path": "/:deviceId/uart-config",
1431
+ "private": true,
1432
+ "scopes": [
1433
+ "homey.system.readonly"
1434
+ ],
1435
+ "parameters": {
1436
+ "deviceId": {
1437
+ "in": "path",
1438
+ "type": "string",
1439
+ "required": true
1440
+ }
1441
+ }
1442
+ },
1443
+ "setUartConfig": {
1444
+ "method": "post",
1445
+ "path": "/:deviceId/uart-config",
1446
+ "private": true,
1447
+ "scopes": [
1448
+ "homey.system"
1449
+ ],
1450
+ "parameters": {
1451
+ "deviceId": {
1452
+ "in": "path",
1453
+ "type": "string"
1454
+ },
1455
+ "baudRate": {
1456
+ "in": "body",
1457
+ "type": "number"
1458
+ },
1459
+ "dataBits": {
1460
+ "in": "body",
1461
+ "type": "number"
1462
+ },
1463
+ "stopBits": {
1464
+ "in": "body",
1465
+ "type": "number"
1466
+ },
1467
+ "parity": {
1468
+ "in": "body",
1469
+ "type": "string"
1470
+ },
1471
+ "inverseRx": {
1472
+ "in": "body",
1473
+ "type": "boolean"
1474
+ },
1475
+ "dataTimeoutMs": {
1476
+ "in": "body",
1477
+ "type": "number"
1478
+ },
1479
+ "persistent": {
1480
+ "in": "body",
1481
+ "type": "boolean"
1482
+ }
1483
+ }
1484
+ },
1485
+ "checkFirmwareUpdateAvailable": {
1486
+ "method": "get",
1487
+ "path": "/:deviceId/firmware-update",
1488
+ "private": true,
1489
+ "scopes": [
1490
+ "homey.system.readonly"
1491
+ ],
1492
+ "parameters": {
1493
+ "deviceId": {
1494
+ "in": "path",
1495
+ "type": "string",
1496
+ "required": true
1497
+ }
1498
+ }
1499
+ },
1500
+ "installFirmwareUpdate": {
1501
+ "method": "post",
1502
+ "path": "/:deviceId/firmware-update",
1503
+ "private": true,
1504
+ "scopes": [
1505
+ "homey.system"
1506
+ ],
1507
+ "parameters": {
1508
+ "deviceId": {
1509
+ "in": "path",
1510
+ "type": "string",
1511
+ "required": true
1512
+ },
1513
+ "updateThroughReboot": {
1514
+ "in": "body",
1515
+ "type": "boolean"
1516
+ }
1517
+ }
1518
+ },
1519
+ "reboot": {
1520
+ "method": "post",
1521
+ "path": "/:deviceId/reboot",
1522
+ "private": true,
1523
+ "scopes": [
1524
+ "homey.system"
1525
+ ],
1526
+ "parameters": {
1527
+ "deviceId": {
1528
+ "in": "path",
1529
+ "type": "string",
1530
+ "required": true
1531
+ }
1532
+ }
1533
+ },
1534
+ "setPhaseLoadLimits": {
1535
+ "method": "put",
1536
+ "path": "/:deviceId/phase-load",
1537
+ "private": true,
1538
+ "scopes": [],
1539
+ "parameters": {
1540
+ "deviceId": {
1541
+ "in": "path",
1542
+ "type": "string",
1543
+ "required": true
1544
+ },
1545
+ "phasesConfigured": {
1546
+ "in": "body",
1547
+ "type": "number",
1548
+ "required": true
1549
+ },
1550
+ "capacity": {
1551
+ "in": "body",
1552
+ "type": "number",
1553
+ "required": true
1554
+ }
1555
+ }
1556
+ },
1557
+ "getPhaseLoadLimits": {
1558
+ "method": "get",
1559
+ "path": "/:deviceId/phase-load",
1560
+ "private": true,
1561
+ "scopes": [],
1562
+ "parameters": {
1563
+ "deviceId": {
1564
+ "in": "path",
1565
+ "type": "string",
1566
+ "required": true
1567
+ }
1568
+ }
1569
+ }
1570
+ }
1571
+ },
1223
1572
  "ManagerFlow": {
1224
1573
  "id": "flow",
1225
1574
  "idCamelCase": "flow",
@@ -2612,6 +2961,12 @@
2612
2961
  "name": {
2613
2962
  "type": "string"
2614
2963
  },
2964
+ "preset": {
2965
+ "type": [
2966
+ "string",
2967
+ "null"
2968
+ ]
2969
+ },
2615
2970
  "zone": {
2616
2971
  "type": "string"
2617
2972
  },
@@ -2718,6 +3073,9 @@
2718
3073
  "devices": {
2719
3074
  "type": "object",
2720
3075
  "required": true
3076
+ },
3077
+ "preset": {
3078
+ "type": "string"
2721
3079
  }
2722
3080
  }
2723
3081
  }
@@ -2751,6 +3109,9 @@
2751
3109
  },
2752
3110
  "devices": {
2753
3111
  "type": "object"
3112
+ },
3113
+ "preset": {
3114
+ "type": "string"
2754
3115
  }
2755
3116
  }
2756
3117
  }
@@ -3316,7 +3677,12 @@
3316
3677
  "path": "/ping",
3317
3678
  "private": false,
3318
3679
  "scopes": [],
3319
- "parameters": {}
3680
+ "parameters": {
3681
+ "id": {
3682
+ "in": "query",
3683
+ "type": "string"
3684
+ }
3685
+ }
3320
3686
  },
3321
3687
  "getInfo": {
3322
3688
  "method": "get",
@@ -3762,6 +4128,28 @@
3762
4128
  }
3763
4129
  }
3764
4130
  }
4131
+ },
4132
+ "VirtualDriverEnergyDongle": {
4133
+ "id": "virtualdriverenergydongle",
4134
+ "schema": {
4135
+ "type": "object",
4136
+ "properties": {
4137
+ "id": {
4138
+ "type": "string"
4139
+ }
4140
+ }
4141
+ }
4142
+ },
4143
+ "VirtualDeviceEnergyDongle": {
4144
+ "id": "virtualdeviceenergydongle",
4145
+ "schema": {
4146
+ "type": "object",
4147
+ "properties": {
4148
+ "id": {
4149
+ "type": "string"
4150
+ }
4151
+ }
4152
+ }
3765
4153
  }
3766
4154
  },
3767
4155
  "operations": {
@@ -1761,6 +1761,235 @@
1761
1761
  }
1762
1762
  }
1763
1763
  },
1764
+ "ManagerEnergyDongle": {
1765
+ "id": "energydongle",
1766
+ "idCamelCase": "energydongle",
1767
+ "items": {},
1768
+ "operations": {
1769
+ "getOptionPhaseLoadNotificationSettings": {
1770
+ "method": "GET",
1771
+ "path": "/option/phaseLoadNotificationSettings",
1772
+ "scopes": [
1773
+ "homey.system.readonly"
1774
+ ]
1775
+ },
1776
+ "setOptionPhaseLoadNotificationSettings": {
1777
+ "method": "PUT",
1778
+ "path": "/option/phaseLoadNotificationSettings",
1779
+ "scopes": [
1780
+ "homey.system"
1781
+ ],
1782
+ "parameters": {
1783
+ "value": {
1784
+ "in": "body",
1785
+ "required": true
1786
+ }
1787
+ }
1788
+ },
1789
+ "unsetOptionPhaseLoadNotificationSettings": {
1790
+ "method": "DELETE",
1791
+ "path": "/option/phaseLoadNotificationSettings",
1792
+ "scopes": [
1793
+ "homey.system"
1794
+ ]
1795
+ },
1796
+ "createAndUploadDiagnosticReport": {
1797
+ "method": "post",
1798
+ "path": "/:deviceId/diagnostic-report",
1799
+ "private": true,
1800
+ "scopes": [
1801
+ "homey.system.readonly"
1802
+ ],
1803
+ "parameters": {
1804
+ "deviceId": {
1805
+ "in": "path",
1806
+ "type": "string",
1807
+ "required": true
1808
+ },
1809
+ "timeout": {
1810
+ "in": "body",
1811
+ "type": "number"
1812
+ }
1813
+ }
1814
+ },
1815
+ "getNextFrame": {
1816
+ "method": "get",
1817
+ "path": "/:deviceId/next-frame",
1818
+ "private": true,
1819
+ "scopes": [
1820
+ "homey.system.readonly"
1821
+ ],
1822
+ "parameters": {
1823
+ "deviceId": {
1824
+ "in": "path",
1825
+ "type": "string",
1826
+ "required": true
1827
+ },
1828
+ "timeout": {
1829
+ "in": "query",
1830
+ "type": "string"
1831
+ }
1832
+ }
1833
+ },
1834
+ "restartSettingsDiscovery": {
1835
+ "method": "post",
1836
+ "path": "/:deviceId/restart-settings-discovery",
1837
+ "private": true,
1838
+ "scopes": [
1839
+ "homey.system"
1840
+ ],
1841
+ "parameters": {
1842
+ "deviceId": {
1843
+ "in": "path",
1844
+ "type": "string",
1845
+ "required": true
1846
+ }
1847
+ }
1848
+ },
1849
+ "getUartConfig": {
1850
+ "method": "get",
1851
+ "path": "/:deviceId/uart-config",
1852
+ "private": true,
1853
+ "scopes": [
1854
+ "homey.system.readonly"
1855
+ ],
1856
+ "parameters": {
1857
+ "deviceId": {
1858
+ "in": "path",
1859
+ "type": "string",
1860
+ "required": true
1861
+ }
1862
+ }
1863
+ },
1864
+ "setUartConfig": {
1865
+ "method": "post",
1866
+ "path": "/:deviceId/uart-config",
1867
+ "private": true,
1868
+ "scopes": [
1869
+ "homey.system"
1870
+ ],
1871
+ "parameters": {
1872
+ "deviceId": {
1873
+ "in": "path",
1874
+ "type": "string"
1875
+ },
1876
+ "baudRate": {
1877
+ "in": "body",
1878
+ "type": "number"
1879
+ },
1880
+ "dataBits": {
1881
+ "in": "body",
1882
+ "type": "number"
1883
+ },
1884
+ "stopBits": {
1885
+ "in": "body",
1886
+ "type": "number"
1887
+ },
1888
+ "parity": {
1889
+ "in": "body",
1890
+ "type": "string"
1891
+ },
1892
+ "inverseRx": {
1893
+ "in": "body",
1894
+ "type": "boolean"
1895
+ },
1896
+ "dataTimeoutMs": {
1897
+ "in": "body",
1898
+ "type": "number"
1899
+ },
1900
+ "persistent": {
1901
+ "in": "body",
1902
+ "type": "boolean"
1903
+ }
1904
+ }
1905
+ },
1906
+ "checkFirmwareUpdateAvailable": {
1907
+ "method": "get",
1908
+ "path": "/:deviceId/firmware-update",
1909
+ "private": true,
1910
+ "scopes": [
1911
+ "homey.system.readonly"
1912
+ ],
1913
+ "parameters": {
1914
+ "deviceId": {
1915
+ "in": "path",
1916
+ "type": "string",
1917
+ "required": true
1918
+ }
1919
+ }
1920
+ },
1921
+ "installFirmwareUpdate": {
1922
+ "method": "post",
1923
+ "path": "/:deviceId/firmware-update",
1924
+ "private": true,
1925
+ "scopes": [
1926
+ "homey.system"
1927
+ ],
1928
+ "parameters": {
1929
+ "deviceId": {
1930
+ "in": "path",
1931
+ "type": "string",
1932
+ "required": true
1933
+ },
1934
+ "updateThroughReboot": {
1935
+ "in": "body",
1936
+ "type": "boolean"
1937
+ }
1938
+ }
1939
+ },
1940
+ "reboot": {
1941
+ "method": "post",
1942
+ "path": "/:deviceId/reboot",
1943
+ "private": true,
1944
+ "scopes": [
1945
+ "homey.system"
1946
+ ],
1947
+ "parameters": {
1948
+ "deviceId": {
1949
+ "in": "path",
1950
+ "type": "string",
1951
+ "required": true
1952
+ }
1953
+ }
1954
+ },
1955
+ "setPhaseLoadLimits": {
1956
+ "method": "put",
1957
+ "path": "/:deviceId/phase-load",
1958
+ "private": true,
1959
+ "scopes": [],
1960
+ "parameters": {
1961
+ "deviceId": {
1962
+ "in": "path",
1963
+ "type": "string",
1964
+ "required": true
1965
+ },
1966
+ "phasesConfigured": {
1967
+ "in": "body",
1968
+ "type": "number",
1969
+ "required": true
1970
+ },
1971
+ "capacity": {
1972
+ "in": "body",
1973
+ "type": "number",
1974
+ "required": true
1975
+ }
1976
+ }
1977
+ },
1978
+ "getPhaseLoadLimits": {
1979
+ "method": "get",
1980
+ "path": "/:deviceId/phase-load",
1981
+ "private": true,
1982
+ "scopes": [],
1983
+ "parameters": {
1984
+ "deviceId": {
1985
+ "in": "path",
1986
+ "type": "string",
1987
+ "required": true
1988
+ }
1989
+ }
1990
+ }
1991
+ }
1992
+ },
1764
1993
  "ManagerExperiments": {
1765
1994
  "id": "experiments",
1766
1995
  "idCamelCase": "experiments",
@@ -4906,6 +5135,28 @@
4906
5135
  }
4907
5136
  }
4908
5137
  },
5138
+ "VirtualDriverEnergyDongle": {
5139
+ "id": "virtualdriverenergydongle",
5140
+ "schema": {
5141
+ "type": "object",
5142
+ "properties": {
5143
+ "id": {
5144
+ "type": "string"
5145
+ }
5146
+ }
5147
+ }
5148
+ },
5149
+ "VirtualDeviceEnergyDongle": {
5150
+ "id": "virtualdeviceenergydongle",
5151
+ "schema": {
5152
+ "type": "object",
5153
+ "properties": {
5154
+ "id": {
5155
+ "type": "string"
5156
+ }
5157
+ }
5158
+ }
5159
+ },
4909
5160
  "VirtualDriverVirtualSocket": {
4910
5161
  "id": "virtualdrivervirtualsocket",
4911
5162
  "schema": {
@@ -5301,6 +5552,15 @@
5301
5552
  }
5302
5553
  }
5303
5554
  },
5555
+ "getFirmwareVersion": {
5556
+ "method": "get",
5557
+ "path": "/firmware-version",
5558
+ "private": true,
5559
+ "scopes": [
5560
+ "homey.system"
5561
+ ],
5562
+ "parameters": {}
5563
+ },
5304
5564
  "flashFirmware": {
5305
5565
  "method": "put",
5306
5566
  "path": "/flash-firmware",
@@ -5310,7 +5570,23 @@
5310
5570
  ],
5311
5571
  "parameters": {
5312
5572
  "erase": {
5313
- "in": "query",
5573
+ "in": "body",
5574
+ "type": "string"
5575
+ },
5576
+ "downgrade": {
5577
+ "in": "body",
5578
+ "type": "string"
5579
+ },
5580
+ "version": {
5581
+ "in": "body",
5582
+ "type": "string"
5583
+ },
5584
+ "firmware": {
5585
+ "in": "body",
5586
+ "type": "string"
5587
+ },
5588
+ "shasum": {
5589
+ "in": "body",
5314
5590
  "type": "string"
5315
5591
  }
5316
5592
  }
@@ -950,6 +950,10 @@ export namespace HomeyAPIV3Cloud.ManagerVirtualDevice {
950
950
  id: string;
951
951
  }
952
952
 
953
+ export class VirtualDeviceEnergyDongle {
954
+ id: string;
955
+ }
956
+
953
957
  export class VirtualDeviceHomeyBridge {
954
958
  id: string;
955
959
  }
@@ -970,6 +974,10 @@ export namespace HomeyAPIV3Cloud.ManagerVirtualDevice {
970
974
  id: string;
971
975
  }
972
976
 
977
+ export class VirtualDriverEnergyDongle {
978
+ id: string;
979
+ }
980
+
973
981
  export class VirtualDriverHomeyBridge {
974
982
  id: string;
975
983
  }
@@ -1373,6 +1381,10 @@ export namespace HomeyAPIV3Local.ManagerVirtualDevice {
1373
1381
  id: string;
1374
1382
  }
1375
1383
 
1384
+ export class VirtualDeviceEnergyDongle {
1385
+ id: string;
1386
+ }
1387
+
1376
1388
  export class VirtualDeviceHomeyBridge {
1377
1389
  id: string;
1378
1390
  }
@@ -1409,6 +1421,10 @@ export namespace HomeyAPIV3Local.ManagerVirtualDevice {
1409
1421
  id: string;
1410
1422
  }
1411
1423
 
1424
+ export class VirtualDriverEnergyDongle {
1425
+ id: string;
1426
+ }
1427
+
1412
1428
  export class VirtualDriverHomeyBridge {
1413
1429
  id: string;
1414
1430
  }
@@ -2091,6 +2107,14 @@ export namespace HomeyAPIV3Cloud {
2091
2107
  getLiveReport(opts: { zone?: string }): Promise<any>;
2092
2108
  }
2093
2109
 
2110
+ export class ManagerEnergyDongle extends HomeyAPIV3.ManagerEnergyDongle {
2111
+ getOptionPhaseLoadNotificationSettings(): Promise<any>;
2112
+
2113
+ setOptionPhaseLoadNotificationSettings(opts: { value: any }): Promise<any>;
2114
+
2115
+ unsetOptionPhaseLoadNotificationSettings(): Promise<any>;
2116
+ }
2117
+
2094
2118
  export class ManagerFlow extends HomeyAPIV3.ManagerFlow {
2095
2119
  getState(): Promise<any>;
2096
2120
 
@@ -2540,7 +2564,7 @@ export namespace HomeyAPIV3Cloud {
2540
2564
  export class ManagerSystem extends HomeyAPIV3.ManagerSystem {
2541
2565
  getState(): Promise<any>;
2542
2566
 
2543
- ping(): Promise<any>;
2567
+ ping(opts: { id?: string }): Promise<any>;
2544
2568
 
2545
2569
  getInfo(): Promise<any>;
2546
2570
 
@@ -3563,6 +3587,14 @@ export namespace HomeyAPIV3Local {
3563
3587
  getLiveReport(opts: { zone?: string }): Promise<any>;
3564
3588
  }
3565
3589
 
3590
+ export class ManagerEnergyDongle extends HomeyAPIV3.ManagerEnergyDongle {
3591
+ getOptionPhaseLoadNotificationSettings(): Promise<any>;
3592
+
3593
+ setOptionPhaseLoadNotificationSettings(opts: { value: any }): Promise<any>;
3594
+
3595
+ unsetOptionPhaseLoadNotificationSettings(): Promise<any>;
3596
+ }
3597
+
3566
3598
  export class ManagerExperiments extends HomeyAPIV3.ManagerExperiments {
3567
3599
  getState(): Promise<any>;
3568
3600
 
@@ -726,14 +726,20 @@ export namespace HomeyAPIV3Cloud.ManagerCron {
726
726
  }
727
727
 
728
728
  export namespace HomeyAPIV3Cloud.ManagerDashboards {
729
+ export class AppWidget {
730
+ id: string;
731
+ }
732
+
729
733
  export class Dashboard {
730
734
  id: string;
731
735
 
732
736
  name: string;
733
737
 
734
- widgets: object;
738
+ columns: Array<any>;
739
+ }
735
740
 
736
- lines: object;
741
+ export class WidgetStore {
742
+ id: string;
737
743
  }
738
744
  }
739
745
 
@@ -976,6 +982,8 @@ export namespace HomeyAPIV3Cloud.ManagerMoods {
976
982
 
977
983
  name: string;
978
984
 
985
+ preset: string | null;
986
+
979
987
  zone: string;
980
988
 
981
989
  devices: object;
@@ -1025,6 +1033,10 @@ export namespace HomeyAPIV3Cloud.ManagerVirtualDevice {
1025
1033
  id: string;
1026
1034
  }
1027
1035
 
1036
+ export class VirtualDeviceEnergyDongle {
1037
+ id: string;
1038
+ }
1039
+
1028
1040
  export class VirtualDeviceHomeyBridge {
1029
1041
  id: string;
1030
1042
  }
@@ -1045,6 +1057,10 @@ export namespace HomeyAPIV3Cloud.ManagerVirtualDevice {
1045
1057
  id: string;
1046
1058
  }
1047
1059
 
1060
+ export class VirtualDriverEnergyDongle {
1061
+ id: string;
1062
+ }
1063
+
1048
1064
  export class VirtualDriverHomeyBridge {
1049
1065
  id: string;
1050
1066
  }
@@ -1480,6 +1496,10 @@ export namespace HomeyAPIV3Local.ManagerVirtualDevice {
1480
1496
  id: string;
1481
1497
  }
1482
1498
 
1499
+ export class VirtualDeviceEnergyDongle {
1500
+ id: string;
1501
+ }
1502
+
1483
1503
  export class VirtualDeviceHomeyBridge {
1484
1504
  id: string;
1485
1505
  }
@@ -1516,6 +1536,10 @@ export namespace HomeyAPIV3Local.ManagerVirtualDevice {
1516
1536
  id: string;
1517
1537
  }
1518
1538
 
1539
+ export class VirtualDriverEnergyDongle {
1540
+ id: string;
1541
+ }
1542
+
1519
1543
  export class VirtualDriverHomeyBridge {
1520
1544
  id: string;
1521
1545
  }
@@ -8385,9 +8409,7 @@ export namespace HomeyAPIV3Cloud {
8385
8409
  dashboard: {
8386
8410
  name: string;
8387
8411
 
8388
- widgets: object;
8389
-
8390
- lines: object;
8412
+ columns: Array<any>;
8391
8413
  };
8392
8414
  }): Promise<HomeyAPIV3Cloud.ManagerDashboards.Dashboard>;
8393
8415
 
@@ -8397,13 +8419,47 @@ export namespace HomeyAPIV3Cloud {
8397
8419
  dashboard: {
8398
8420
  name?: string;
8399
8421
 
8400
- widgets?: object;
8401
-
8402
- lines?: object;
8422
+ columns?: Array<any>;
8403
8423
  };
8404
8424
  }): Promise<HomeyAPIV3Cloud.ManagerDashboards.Dashboard>;
8405
8425
 
8406
8426
  deleteDashboard(opts: { id: string }): Promise<any>;
8427
+
8428
+ getAppWidgets(): Promise<{
8429
+ [key: string]: HomeyAPIV3Cloud.ManagerDashboards.AppWidget;
8430
+ }>;
8431
+
8432
+ getAppWidget(opts: {
8433
+ id: string;
8434
+ }): Promise<HomeyAPIV3Cloud.ManagerDashboards.AppWidget>;
8435
+
8436
+ getAppWidgetAutocomplete(opts: {
8437
+ id: string;
8438
+
8439
+ settingId: string;
8440
+
8441
+ query: string;
8442
+
8443
+ settings?: object;
8444
+ }): Promise<any>;
8445
+
8446
+ getWidgetStores(): Promise<{
8447
+ [key: string]: HomeyAPIV3Cloud.ManagerDashboards.WidgetStore;
8448
+ }>;
8449
+
8450
+ getWidgetStore(opts: {
8451
+ id: string;
8452
+ }): Promise<HomeyAPIV3Cloud.ManagerDashboards.WidgetStore>;
8453
+
8454
+ getWidgetStoreState(opts: { id: string }): Promise<any>;
8455
+
8456
+ setWidgetStoreState(opts: {
8457
+ id: string;
8458
+
8459
+ state: object;
8460
+
8461
+ replace?: boolean;
8462
+ }): Promise<any>;
8407
8463
  }
8408
8464
 
8409
8465
  export class ManagerDatabase extends HomeyAPIV3.ManagerDatabase {
@@ -8610,6 +8666,68 @@ export namespace HomeyAPIV3Cloud {
8610
8666
  getLiveReport(opts: { zone?: string }): Promise<any>;
8611
8667
  }
8612
8668
 
8669
+ export class ManagerEnergyDongle extends HomeyAPIV3.ManagerEnergyDongle {
8670
+ getOptionPhaseLoadNotificationSettings(): Promise<any>;
8671
+
8672
+ setOptionPhaseLoadNotificationSettings(opts: { value: any }): Promise<any>;
8673
+
8674
+ unsetOptionPhaseLoadNotificationSettings(): Promise<any>;
8675
+
8676
+ createAndUploadDiagnosticReport(opts: {
8677
+ deviceId: string;
8678
+
8679
+ timeout?: number;
8680
+ }): Promise<any>;
8681
+
8682
+ getNextFrame(opts: {
8683
+ deviceId: string;
8684
+
8685
+ timeout?: string;
8686
+ }): Promise<any>;
8687
+
8688
+ restartSettingsDiscovery(opts: { deviceId: string }): Promise<any>;
8689
+
8690
+ getUartConfig(opts: { deviceId: string }): Promise<any>;
8691
+
8692
+ setUartConfig(opts: {
8693
+ deviceId?: string;
8694
+
8695
+ baudRate?: number;
8696
+
8697
+ dataBits?: number;
8698
+
8699
+ stopBits?: number;
8700
+
8701
+ parity?: string;
8702
+
8703
+ inverseRx?: boolean;
8704
+
8705
+ dataTimeoutMs?: number;
8706
+
8707
+ persistent?: boolean;
8708
+ }): Promise<any>;
8709
+
8710
+ checkFirmwareUpdateAvailable(opts: { deviceId: string }): Promise<any>;
8711
+
8712
+ installFirmwareUpdate(opts: {
8713
+ deviceId: string;
8714
+
8715
+ updateThroughReboot?: boolean;
8716
+ }): Promise<any>;
8717
+
8718
+ reboot(opts: { deviceId: string }): Promise<any>;
8719
+
8720
+ setPhaseLoadLimits(opts: {
8721
+ deviceId: string;
8722
+
8723
+ phasesConfigured: number;
8724
+
8725
+ capacity: number;
8726
+ }): Promise<any>;
8727
+
8728
+ getPhaseLoadLimits(opts: { deviceId: string }): Promise<any>;
8729
+ }
8730
+
8613
8731
  export class ManagerFlow extends HomeyAPIV3.ManagerFlow {
8614
8732
  getState(): Promise<any>;
8615
8733
 
@@ -8946,6 +9064,8 @@ export namespace HomeyAPIV3Cloud {
8946
9064
  name: string;
8947
9065
 
8948
9066
  devices: object;
9067
+
9068
+ preset?: string;
8949
9069
  };
8950
9070
  }): Promise<HomeyAPIV3Cloud.ManagerMoods.Mood>;
8951
9071
 
@@ -8956,6 +9076,8 @@ export namespace HomeyAPIV3Cloud {
8956
9076
  name?: string;
8957
9077
 
8958
9078
  devices?: object;
9079
+
9080
+ preset?: string;
8959
9081
  };
8960
9082
  }): Promise<HomeyAPIV3Cloud.ManagerMoods.Mood>;
8961
9083
 
@@ -9089,7 +9211,7 @@ export namespace HomeyAPIV3Cloud {
9089
9211
  export class ManagerSystem extends HomeyAPIV3.ManagerSystem {
9090
9212
  getState(): Promise<any>;
9091
9213
 
9092
- ping(): Promise<any>;
9214
+ ping(opts: { id?: string }): Promise<any>;
9093
9215
 
9094
9216
  getInfo(): Promise<any>;
9095
9217
 
@@ -10218,6 +10340,68 @@ export namespace HomeyAPIV3Local {
10218
10340
  getLiveReport(opts: { zone?: string }): Promise<any>;
10219
10341
  }
10220
10342
 
10343
+ export class ManagerEnergyDongle extends HomeyAPIV3.ManagerEnergyDongle {
10344
+ getOptionPhaseLoadNotificationSettings(): Promise<any>;
10345
+
10346
+ setOptionPhaseLoadNotificationSettings(opts: { value: any }): Promise<any>;
10347
+
10348
+ unsetOptionPhaseLoadNotificationSettings(): Promise<any>;
10349
+
10350
+ createAndUploadDiagnosticReport(opts: {
10351
+ deviceId: string;
10352
+
10353
+ timeout?: number;
10354
+ }): Promise<any>;
10355
+
10356
+ getNextFrame(opts: {
10357
+ deviceId: string;
10358
+
10359
+ timeout?: string;
10360
+ }): Promise<any>;
10361
+
10362
+ restartSettingsDiscovery(opts: { deviceId: string }): Promise<any>;
10363
+
10364
+ getUartConfig(opts: { deviceId: string }): Promise<any>;
10365
+
10366
+ setUartConfig(opts: {
10367
+ deviceId?: string;
10368
+
10369
+ baudRate?: number;
10370
+
10371
+ dataBits?: number;
10372
+
10373
+ stopBits?: number;
10374
+
10375
+ parity?: string;
10376
+
10377
+ inverseRx?: boolean;
10378
+
10379
+ dataTimeoutMs?: number;
10380
+
10381
+ persistent?: boolean;
10382
+ }): Promise<any>;
10383
+
10384
+ checkFirmwareUpdateAvailable(opts: { deviceId: string }): Promise<any>;
10385
+
10386
+ installFirmwareUpdate(opts: {
10387
+ deviceId: string;
10388
+
10389
+ updateThroughReboot?: boolean;
10390
+ }): Promise<any>;
10391
+
10392
+ reboot(opts: { deviceId: string }): Promise<any>;
10393
+
10394
+ setPhaseLoadLimits(opts: {
10395
+ deviceId: string;
10396
+
10397
+ phasesConfigured: number;
10398
+
10399
+ capacity: number;
10400
+ }): Promise<any>;
10401
+
10402
+ getPhaseLoadLimits(opts: { deviceId: string }): Promise<any>;
10403
+ }
10404
+
10221
10405
  export class ManagerExperiments extends HomeyAPIV3.ManagerExperiments {
10222
10406
  getState(): Promise<any>;
10223
10407
 
@@ -10959,7 +11143,19 @@ export namespace HomeyAPIV3Local {
10959
11143
  opts?: object;
10960
11144
  }): Promise<any>;
10961
11145
 
10962
- flashFirmware(opts: { erase?: string }): Promise<any>;
11146
+ getFirmwareVersion(): Promise<any>;
11147
+
11148
+ flashFirmware(opts: {
11149
+ erase?: string;
11150
+
11151
+ downgrade?: string;
11152
+
11153
+ version?: string;
11154
+
11155
+ firmware?: string;
11156
+
11157
+ shasum?: string;
11158
+ }): Promise<any>;
10963
11159
 
10964
11160
  getLog(): Promise<any>;
10965
11161
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "homey-api",
3
- "version": "3.6.8",
3
+ "version": "3.7.0",
4
4
  "description": "Homey API",
5
5
  "main": "index.js",
6
6
  "files": [
@@ -76,6 +76,7 @@
76
76
  "jsdoc-ts-utils": "^4.0.0",
77
77
  "jsdoc-tsimport-plugin": "^1.0.5",
78
78
  "keypather": "^3.1.0",
79
+ "niodb": "^0.1.1",
79
80
  "plantuml-cli": "^1.2024.4",
80
81
  "prettier": "^3.2.5",
81
82
  "serve": "^14.0.1",