@instantkom/cli 3.136.0 → 3.137.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.
@@ -953,10 +953,10 @@
953
953
  "update.js"
954
954
  ]
955
955
  },
956
- "ai:reply": {
956
+ "auth:login": {
957
957
  "aliases": [],
958
958
  "args": {},
959
- "description": "Generate AI reply suggestions for a message",
959
+ "description": "Authenticate with the instantKOM API via device authorization flow",
960
960
  "flags": {
961
961
  "api-key": {
962
962
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1020,80 +1020,24 @@
1020
1020
  "multiple": false,
1021
1021
  "type": "option"
1022
1022
  },
1023
- "message-id": {
1024
- "description": "Message ID to use as smart-reply anchor",
1025
- "name": "message-id",
1026
- "required": true,
1027
- "hasDynamicHelp": false,
1028
- "multiple": false,
1029
- "type": "option"
1030
- },
1031
- "limit": {
1032
- "description": "Number of suggestions to generate (1-5)",
1033
- "name": "limit",
1034
- "hasDynamicHelp": false,
1035
- "multiple": false,
1036
- "type": "option"
1037
- },
1038
- "context-length": {
1039
- "description": "Number of recent messages to use as context (1-20)",
1040
- "name": "context-length",
1041
- "hasDynamicHelp": false,
1042
- "multiple": false,
1043
- "type": "option"
1044
- },
1045
- "style": {
1046
- "description": "Response style",
1047
- "name": "style",
1023
+ "scope": {
1024
+ "description": "Requested token scope",
1025
+ "name": "scope",
1026
+ "default": "read",
1048
1027
  "hasDynamicHelp": false,
1049
1028
  "multiple": false,
1050
1029
  "options": [
1051
- "professional",
1052
- "friendly",
1053
- "concise",
1054
- "detailed",
1055
- "empathetic"
1030
+ "full",
1031
+ "send",
1032
+ "read",
1033
+ "admin"
1056
1034
  ],
1057
1035
  "type": "option"
1058
1036
  }
1059
1037
  },
1060
1038
  "hasDynamicHelp": false,
1061
1039
  "hiddenAliases": [],
1062
- "id": "ai:reply",
1063
- "pluginAlias": "@instantkom/cli",
1064
- "pluginName": "@instantkom/cli",
1065
- "pluginType": "core",
1066
- "strict": true,
1067
- "enableJsonFlag": false,
1068
- "isESM": true,
1069
- "relativePath": [
1070
- "dist",
1071
- "commands",
1072
- "ai",
1073
- "reply.js"
1074
- ]
1075
- },
1076
- "autocomplete:script": {
1077
- "aliases": [],
1078
- "args": {
1079
- "shell": {
1080
- "description": "Shell type",
1081
- "name": "shell",
1082
- "options": [
1083
- "zsh",
1084
- "bash",
1085
- "fish",
1086
- "powershell"
1087
- ],
1088
- "required": false
1089
- }
1090
- },
1091
- "description": "outputs autocomplete config script for shells",
1092
- "flags": {},
1093
- "hasDynamicHelp": false,
1094
- "hidden": true,
1095
- "hiddenAliases": [],
1096
- "id": "autocomplete:script",
1040
+ "id": "auth:login",
1097
1041
  "pluginAlias": "@instantkom/cli",
1098
1042
  "pluginName": "@instantkom/cli",
1099
1043
  "pluginType": "core",
@@ -1103,14 +1047,14 @@
1103
1047
  "relativePath": [
1104
1048
  "dist",
1105
1049
  "commands",
1106
- "autocomplete",
1107
- "script.js"
1050
+ "auth",
1051
+ "login.js"
1108
1052
  ]
1109
1053
  },
1110
- "auth:login": {
1054
+ "auth:logout": {
1111
1055
  "aliases": [],
1112
1056
  "args": {},
1113
- "description": "Authenticate with the instantKOM API via device authorization flow",
1057
+ "description": "Remove the stored API token for the current profile",
1114
1058
  "flags": {
1115
1059
  "api-key": {
1116
1060
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1173,25 +1117,11 @@
1173
1117
  "hasDynamicHelp": false,
1174
1118
  "multiple": false,
1175
1119
  "type": "option"
1176
- },
1177
- "scope": {
1178
- "description": "Requested token scope",
1179
- "name": "scope",
1180
- "default": "read",
1181
- "hasDynamicHelp": false,
1182
- "multiple": false,
1183
- "options": [
1184
- "full",
1185
- "send",
1186
- "read",
1187
- "admin"
1188
- ],
1189
- "type": "option"
1190
1120
  }
1191
1121
  },
1192
1122
  "hasDynamicHelp": false,
1193
1123
  "hiddenAliases": [],
1194
- "id": "auth:login",
1124
+ "id": "auth:logout",
1195
1125
  "pluginAlias": "@instantkom/cli",
1196
1126
  "pluginName": "@instantkom/cli",
1197
1127
  "pluginType": "core",
@@ -1202,13 +1132,13 @@
1202
1132
  "dist",
1203
1133
  "commands",
1204
1134
  "auth",
1205
- "login.js"
1135
+ "logout.js"
1206
1136
  ]
1207
1137
  },
1208
- "auth:logout": {
1138
+ "ai:reply": {
1209
1139
  "aliases": [],
1210
1140
  "args": {},
1211
- "description": "Remove the stored API token for the current profile",
1141
+ "description": "Generate AI reply suggestions for a message",
1212
1142
  "flags": {
1213
1143
  "api-key": {
1214
1144
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1271,11 +1201,47 @@
1271
1201
  "hasDynamicHelp": false,
1272
1202
  "multiple": false,
1273
1203
  "type": "option"
1204
+ },
1205
+ "message-id": {
1206
+ "description": "Message ID to use as smart-reply anchor",
1207
+ "name": "message-id",
1208
+ "required": true,
1209
+ "hasDynamicHelp": false,
1210
+ "multiple": false,
1211
+ "type": "option"
1212
+ },
1213
+ "limit": {
1214
+ "description": "Number of suggestions to generate (1-5)",
1215
+ "name": "limit",
1216
+ "hasDynamicHelp": false,
1217
+ "multiple": false,
1218
+ "type": "option"
1219
+ },
1220
+ "context-length": {
1221
+ "description": "Number of recent messages to use as context (1-20)",
1222
+ "name": "context-length",
1223
+ "hasDynamicHelp": false,
1224
+ "multiple": false,
1225
+ "type": "option"
1226
+ },
1227
+ "style": {
1228
+ "description": "Response style",
1229
+ "name": "style",
1230
+ "hasDynamicHelp": false,
1231
+ "multiple": false,
1232
+ "options": [
1233
+ "professional",
1234
+ "friendly",
1235
+ "concise",
1236
+ "detailed",
1237
+ "empathetic"
1238
+ ],
1239
+ "type": "option"
1274
1240
  }
1275
1241
  },
1276
1242
  "hasDynamicHelp": false,
1277
1243
  "hiddenAliases": [],
1278
- "id": "auth:logout",
1244
+ "id": "ai:reply",
1279
1245
  "pluginAlias": "@instantkom/cli",
1280
1246
  "pluginName": "@instantkom/cli",
1281
1247
  "pluginType": "core",
@@ -1285,14 +1251,48 @@
1285
1251
  "relativePath": [
1286
1252
  "dist",
1287
1253
  "commands",
1288
- "auth",
1289
- "logout.js"
1254
+ "ai",
1255
+ "reply.js"
1290
1256
  ]
1291
1257
  },
1292
- "channels:create": {
1258
+ "autocomplete:script": {
1259
+ "aliases": [],
1260
+ "args": {
1261
+ "shell": {
1262
+ "description": "Shell type",
1263
+ "name": "shell",
1264
+ "options": [
1265
+ "zsh",
1266
+ "bash",
1267
+ "fish",
1268
+ "powershell"
1269
+ ],
1270
+ "required": false
1271
+ }
1272
+ },
1273
+ "description": "outputs autocomplete config script for shells",
1274
+ "flags": {},
1275
+ "hasDynamicHelp": false,
1276
+ "hidden": true,
1277
+ "hiddenAliases": [],
1278
+ "id": "autocomplete:script",
1279
+ "pluginAlias": "@instantkom/cli",
1280
+ "pluginName": "@instantkom/cli",
1281
+ "pluginType": "core",
1282
+ "strict": true,
1283
+ "enableJsonFlag": false,
1284
+ "isESM": true,
1285
+ "relativePath": [
1286
+ "dist",
1287
+ "commands",
1288
+ "autocomplete",
1289
+ "script.js"
1290
+ ]
1291
+ },
1292
+ "bots:create": {
1293
1293
  "aliases": [],
1294
1294
  "args": {},
1295
- "description": "Create a channel",
1295
+ "description": "Create a bot",
1296
1296
  "flags": {
1297
1297
  "api-key": {
1298
1298
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1356,32 +1356,60 @@
1356
1356
  "multiple": false,
1357
1357
  "type": "option"
1358
1358
  },
1359
+ "channel": {
1360
+ "description": "Channel ID",
1361
+ "name": "channel",
1362
+ "required": true,
1363
+ "hasDynamicHelp": false,
1364
+ "multiple": false,
1365
+ "type": "option"
1366
+ },
1359
1367
  "name": {
1360
- "description": "Channel name",
1368
+ "description": "Bot name",
1361
1369
  "name": "name",
1362
1370
  "required": true,
1363
1371
  "hasDynamicHelp": false,
1364
1372
  "multiple": false,
1365
1373
  "type": "option"
1366
1374
  },
1367
- "gateway-type": {
1368
- "description": "Gateway type ID",
1369
- "name": "gateway-type",
1375
+ "type": {
1376
+ "description": "Bot type",
1377
+ "name": "type",
1370
1378
  "required": true,
1371
1379
  "hasDynamicHelp": false,
1372
1380
  "multiple": false,
1381
+ "options": [
1382
+ "keyword",
1383
+ "schedule",
1384
+ "event",
1385
+ "ai"
1386
+ ],
1373
1387
  "type": "option"
1374
1388
  },
1375
- "status": {
1376
- "description": "Channel lifecycle status",
1377
- "name": "status",
1389
+ "message": {
1390
+ "description": "Bot message content",
1391
+ "name": "message",
1378
1392
  "hasDynamicHelp": false,
1379
1393
  "multiple": false,
1380
1394
  "type": "option"
1381
1395
  },
1382
- "description": {
1383
- "description": "Channel description",
1384
- "name": "description",
1396
+ "response": {
1397
+ "description": "Alias for --message",
1398
+ "name": "response",
1399
+ "hasDynamicHelp": false,
1400
+ "multiple": false,
1401
+ "type": "option"
1402
+ },
1403
+ "color": {
1404
+ "description": "Bot color as HEX",
1405
+ "name": "color",
1406
+ "hasDynamicHelp": false,
1407
+ "multiple": false,
1408
+ "type": "option"
1409
+ },
1410
+ "tags": {
1411
+ "description": "Comma-separated tags",
1412
+ "name": "tags",
1385
1413
  "hasDynamicHelp": false,
1386
1414
  "multiple": false,
1387
1415
  "type": "option"
@@ -1396,7 +1424,7 @@
1396
1424
  },
1397
1425
  "hasDynamicHelp": false,
1398
1426
  "hiddenAliases": [],
1399
- "id": "channels:create",
1427
+ "id": "bots:create",
1400
1428
  "pluginAlias": "@instantkom/cli",
1401
1429
  "pluginName": "@instantkom/cli",
1402
1430
  "pluginType": "core",
@@ -1406,20 +1434,20 @@
1406
1434
  "relativePath": [
1407
1435
  "dist",
1408
1436
  "commands",
1409
- "channels",
1437
+ "bots",
1410
1438
  "create.js"
1411
1439
  ]
1412
1440
  },
1413
- "channels:get": {
1441
+ "bots:delete": {
1414
1442
  "aliases": [],
1415
1443
  "args": {
1416
1444
  "id": {
1417
- "description": "Channel ID",
1445
+ "description": "Bot ID",
1418
1446
  "name": "id",
1419
1447
  "required": true
1420
1448
  }
1421
1449
  },
1422
- "description": "Get a channel by ID",
1450
+ "description": "Delete a bot",
1423
1451
  "flags": {
1424
1452
  "api-key": {
1425
1453
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1486,7 +1514,7 @@
1486
1514
  },
1487
1515
  "hasDynamicHelp": false,
1488
1516
  "hiddenAliases": [],
1489
- "id": "channels:get",
1517
+ "id": "bots:delete",
1490
1518
  "pluginAlias": "@instantkom/cli",
1491
1519
  "pluginName": "@instantkom/cli",
1492
1520
  "pluginType": "core",
@@ -1496,20 +1524,20 @@
1496
1524
  "relativePath": [
1497
1525
  "dist",
1498
1526
  "commands",
1499
- "channels",
1500
- "get.js"
1527
+ "bots",
1528
+ "delete.js"
1501
1529
  ]
1502
1530
  },
1503
- "channels:kpis": {
1531
+ "bots:get": {
1504
1532
  "aliases": [],
1505
1533
  "args": {
1506
1534
  "id": {
1507
- "description": "Optional channel ID; omit for aggregated channel KPIs",
1535
+ "description": "Bot ID",
1508
1536
  "name": "id",
1509
- "required": false
1537
+ "required": true
1510
1538
  }
1511
1539
  },
1512
- "description": "Get channel KPIs",
1540
+ "description": "Get a bot by ID",
1513
1541
  "flags": {
1514
1542
  "api-key": {
1515
1543
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1572,18 +1600,11 @@
1572
1600
  "hasDynamicHelp": false,
1573
1601
  "multiple": false,
1574
1602
  "type": "option"
1575
- },
1576
- "period": {
1577
- "description": "KPI period",
1578
- "name": "period",
1579
- "hasDynamicHelp": false,
1580
- "multiple": false,
1581
- "type": "option"
1582
1603
  }
1583
1604
  },
1584
1605
  "hasDynamicHelp": false,
1585
1606
  "hiddenAliases": [],
1586
- "id": "channels:kpis",
1607
+ "id": "bots:get",
1587
1608
  "pluginAlias": "@instantkom/cli",
1588
1609
  "pluginName": "@instantkom/cli",
1589
1610
  "pluginType": "core",
@@ -1593,14 +1614,14 @@
1593
1614
  "relativePath": [
1594
1615
  "dist",
1595
1616
  "commands",
1596
- "channels",
1597
- "kpis.js"
1617
+ "bots",
1618
+ "get.js"
1598
1619
  ]
1599
1620
  },
1600
- "channels:list": {
1621
+ "bots:list": {
1601
1622
  "aliases": [],
1602
1623
  "args": {},
1603
- "description": "List channels",
1624
+ "description": "List bots",
1604
1625
  "flags": {
1605
1626
  "api-key": {
1606
1627
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1680,31 +1701,49 @@
1680
1701
  "multiple": false,
1681
1702
  "type": "option"
1682
1703
  },
1683
- "status": {
1684
- "description": "Filter by channel status",
1685
- "name": "status",
1704
+ "channel": {
1705
+ "description": "Filter by channel ID",
1706
+ "name": "channel",
1686
1707
  "hasDynamicHelp": false,
1687
1708
  "multiple": false,
1688
1709
  "type": "option"
1689
1710
  },
1690
- "gateway-type": {
1691
- "description": "Filter by gateway type ID",
1692
- "name": "gateway-type",
1711
+ "type": {
1712
+ "description": "Filter by bot type",
1713
+ "name": "type",
1693
1714
  "hasDynamicHelp": false,
1694
1715
  "multiple": false,
1695
1716
  "type": "option"
1696
1717
  },
1697
1718
  "search": {
1698
- "description": "Search by channel name",
1719
+ "description": "Search in bot name or message",
1699
1720
  "name": "search",
1700
1721
  "hasDynamicHelp": false,
1701
1722
  "multiple": false,
1702
1723
  "type": "option"
1724
+ },
1725
+ "tags": {
1726
+ "description": "Comma-separated tag IDs",
1727
+ "name": "tags",
1728
+ "hasDynamicHelp": false,
1729
+ "multiple": false,
1730
+ "type": "option"
1731
+ },
1732
+ "tag-match": {
1733
+ "description": "Tag match mode",
1734
+ "name": "tag-match",
1735
+ "hasDynamicHelp": false,
1736
+ "multiple": false,
1737
+ "options": [
1738
+ "any",
1739
+ "all"
1740
+ ],
1741
+ "type": "option"
1703
1742
  }
1704
1743
  },
1705
1744
  "hasDynamicHelp": false,
1706
1745
  "hiddenAliases": [],
1707
- "id": "channels:list",
1746
+ "id": "bots:list",
1708
1747
  "pluginAlias": "@instantkom/cli",
1709
1748
  "pluginName": "@instantkom/cli",
1710
1749
  "pluginType": "core",
@@ -1714,20 +1753,20 @@
1714
1753
  "relativePath": [
1715
1754
  "dist",
1716
1755
  "commands",
1717
- "channels",
1756
+ "bots",
1718
1757
  "list.js"
1719
1758
  ]
1720
1759
  },
1721
- "channels:update": {
1760
+ "bots:matches": {
1722
1761
  "aliases": [],
1723
1762
  "args": {
1724
1763
  "id": {
1725
- "description": "Channel ID",
1764
+ "description": "Bot ID",
1726
1765
  "name": "id",
1727
1766
  "required": true
1728
1767
  }
1729
1768
  },
1730
- "description": "Update a channel",
1769
+ "description": "List bot match history",
1731
1770
  "flags": {
1732
1771
  "api-key": {
1733
1772
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1791,30 +1830,25 @@
1791
1830
  "multiple": false,
1792
1831
  "type": "option"
1793
1832
  },
1794
- "name": {
1795
- "description": "Channel name",
1796
- "name": "name",
1797
- "hasDynamicHelp": false,
1798
- "multiple": false,
1799
- "type": "option"
1800
- },
1801
- "status": {
1802
- "description": "Channel lifecycle status",
1803
- "name": "status",
1833
+ "page": {
1834
+ "description": "Page number",
1835
+ "name": "page",
1836
+ "default": 1,
1804
1837
  "hasDynamicHelp": false,
1805
1838
  "multiple": false,
1806
1839
  "type": "option"
1807
1840
  },
1808
- "description": {
1809
- "description": "Channel description",
1810
- "name": "description",
1841
+ "limit": {
1842
+ "description": "Items per page",
1843
+ "name": "limit",
1844
+ "default": 50,
1811
1845
  "hasDynamicHelp": false,
1812
1846
  "multiple": false,
1813
1847
  "type": "option"
1814
1848
  },
1815
- "data": {
1816
- "description": "Additional JSON object payload",
1817
- "name": "data",
1849
+ "search": {
1850
+ "description": "Search in matches",
1851
+ "name": "search",
1818
1852
  "hasDynamicHelp": false,
1819
1853
  "multiple": false,
1820
1854
  "type": "option"
@@ -1822,7 +1856,7 @@
1822
1856
  },
1823
1857
  "hasDynamicHelp": false,
1824
1858
  "hiddenAliases": [],
1825
- "id": "channels:update",
1859
+ "id": "bots:matches",
1826
1860
  "pluginAlias": "@instantkom/cli",
1827
1861
  "pluginName": "@instantkom/cli",
1828
1862
  "pluginType": "core",
@@ -1832,20 +1866,20 @@
1832
1866
  "relativePath": [
1833
1867
  "dist",
1834
1868
  "commands",
1835
- "channels",
1836
- "update.js"
1869
+ "bots",
1870
+ "matches.js"
1837
1871
  ]
1838
1872
  },
1839
- "chats:get": {
1873
+ "bots:update": {
1840
1874
  "aliases": [],
1841
1875
  "args": {
1842
1876
  "id": {
1843
- "description": "chat ID",
1877
+ "description": "Bot ID",
1844
1878
  "name": "id",
1845
1879
  "required": true
1846
1880
  }
1847
1881
  },
1848
- "description": "Get chat by ID",
1882
+ "description": "Update a bot",
1849
1883
  "flags": {
1850
1884
  "api-key": {
1851
1885
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1908,11 +1942,66 @@
1908
1942
  "hasDynamicHelp": false,
1909
1943
  "multiple": false,
1910
1944
  "type": "option"
1945
+ },
1946
+ "name": {
1947
+ "description": "Bot name",
1948
+ "name": "name",
1949
+ "hasDynamicHelp": false,
1950
+ "multiple": false,
1951
+ "type": "option"
1952
+ },
1953
+ "type": {
1954
+ "description": "Bot type",
1955
+ "name": "type",
1956
+ "hasDynamicHelp": false,
1957
+ "multiple": false,
1958
+ "options": [
1959
+ "keyword",
1960
+ "schedule",
1961
+ "event",
1962
+ "ai"
1963
+ ],
1964
+ "type": "option"
1965
+ },
1966
+ "message": {
1967
+ "description": "Bot message content",
1968
+ "name": "message",
1969
+ "hasDynamicHelp": false,
1970
+ "multiple": false,
1971
+ "type": "option"
1972
+ },
1973
+ "response": {
1974
+ "description": "Alias for --message",
1975
+ "name": "response",
1976
+ "hasDynamicHelp": false,
1977
+ "multiple": false,
1978
+ "type": "option"
1979
+ },
1980
+ "color": {
1981
+ "description": "Bot color as HEX",
1982
+ "name": "color",
1983
+ "hasDynamicHelp": false,
1984
+ "multiple": false,
1985
+ "type": "option"
1986
+ },
1987
+ "tags": {
1988
+ "description": "Comma-separated tags",
1989
+ "name": "tags",
1990
+ "hasDynamicHelp": false,
1991
+ "multiple": false,
1992
+ "type": "option"
1993
+ },
1994
+ "data": {
1995
+ "description": "Additional JSON object payload",
1996
+ "name": "data",
1997
+ "hasDynamicHelp": false,
1998
+ "multiple": false,
1999
+ "type": "option"
1911
2000
  }
1912
2001
  },
1913
2002
  "hasDynamicHelp": false,
1914
2003
  "hiddenAliases": [],
1915
- "id": "chats:get",
2004
+ "id": "bots:update",
1916
2005
  "pluginAlias": "@instantkom/cli",
1917
2006
  "pluginName": "@instantkom/cli",
1918
2007
  "pluginType": "core",
@@ -1922,14 +2011,14 @@
1922
2011
  "relativePath": [
1923
2012
  "dist",
1924
2013
  "commands",
1925
- "chats",
1926
- "get.js"
2014
+ "bots",
2015
+ "update.js"
1927
2016
  ]
1928
2017
  },
1929
- "chats:list": {
2018
+ "broadcast:create": {
1930
2019
  "aliases": [],
1931
2020
  "args": {},
1932
- "description": "List chats",
2021
+ "description": "Create a broadcast for channels or segments",
1933
2022
  "flags": {
1934
2023
  "api-key": {
1935
2024
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -1993,72 +2082,92 @@
1993
2082
  "multiple": false,
1994
2083
  "type": "option"
1995
2084
  },
1996
- "page": {
1997
- "description": "Page number",
1998
- "name": "page",
1999
- "default": 1,
2085
+ "channel": {
2086
+ "description": "Channel ID target",
2087
+ "name": "channel",
2000
2088
  "hasDynamicHelp": false,
2001
2089
  "multiple": false,
2002
2090
  "type": "option"
2003
2091
  },
2004
- "limit": {
2005
- "description": "Items per page",
2006
- "name": "limit",
2007
- "default": 20,
2092
+ "segment": {
2093
+ "description": "Segment ID within --channel",
2094
+ "name": "segment",
2008
2095
  "hasDynamicHelp": false,
2009
2096
  "multiple": false,
2010
2097
  "type": "option"
2011
2098
  },
2012
- "channel": {
2013
- "description": "Filter by channel ID",
2014
- "name": "channel",
2099
+ "target": {
2100
+ "description": "Target as channelId or channelId:segmentId; may be repeated",
2101
+ "name": "target",
2102
+ "hasDynamicHelp": false,
2103
+ "multiple": true,
2104
+ "type": "option"
2105
+ },
2106
+ "text": {
2107
+ "description": "Broadcast message text",
2108
+ "name": "text",
2109
+ "required": true,
2015
2110
  "hasDynamicHelp": false,
2016
2111
  "multiple": false,
2017
2112
  "type": "option"
2018
2113
  },
2019
- "channels": {
2020
- "description": "Comma-separated channel IDs",
2021
- "name": "channels",
2114
+ "send-at": {
2115
+ "description": "Schedule send for an ISO-8601 date-time",
2116
+ "name": "send-at",
2022
2117
  "hasDynamicHelp": false,
2023
2118
  "multiple": false,
2024
2119
  "type": "option"
2025
2120
  },
2026
- "search": {
2027
- "description": "Search chats",
2028
- "name": "search",
2121
+ "dry-run": {
2122
+ "description": "Validate and print the broadcast payload without mutating API calls",
2123
+ "name": "dry-run",
2124
+ "allowNo": false,
2125
+ "type": "boolean"
2126
+ },
2127
+ "idempotency-key": {
2128
+ "description": "Idempotency key forwarded as Idempotency-Key",
2129
+ "name": "idempotency-key",
2029
2130
  "hasDynamicHelp": false,
2030
2131
  "multiple": false,
2031
2132
  "type": "option"
2032
2133
  },
2033
- "status": {
2034
- "description": "Chat status",
2035
- "name": "status",
2134
+ "media": {
2135
+ "description": "Media file path to upload",
2136
+ "name": "media",
2137
+ "hasDynamicHelp": false,
2138
+ "multiple": true,
2139
+ "type": "option"
2140
+ },
2141
+ "template-id": {
2142
+ "description": "WhatsApp template ID",
2143
+ "name": "template-id",
2144
+ "hasDynamicHelp": false,
2145
+ "multiple": false,
2146
+ "type": "option"
2147
+ },
2148
+ "send-status": {
2149
+ "description": "Initial broadcast send status",
2150
+ "name": "send-status",
2151
+ "default": "draft",
2036
2152
  "hasDynamicHelp": false,
2037
2153
  "multiple": false,
2038
2154
  "options": [
2039
- "all",
2040
- "unread",
2041
- "read",
2042
- "archived"
2155
+ "draft",
2156
+ "scheduled",
2157
+ "sending"
2043
2158
  ],
2044
2159
  "type": "option"
2045
2160
  },
2046
- "unread-only": {
2047
- "description": "Only unread chats",
2048
- "name": "unread-only",
2049
- "allowNo": false,
2050
- "type": "boolean"
2051
- },
2052
- "include-archived": {
2053
- "description": "Include archived chats",
2054
- "name": "include-archived",
2161
+ "auto-approve": {
2162
+ "description": "Auto-approve broadcast when allowed by API permissions",
2163
+ "name": "auto-approve",
2055
2164
  "allowNo": false,
2056
2165
  "type": "boolean"
2057
2166
  }
2058
2167
  },
2059
2168
  "hasDynamicHelp": false,
2060
2169
  "hiddenAliases": [],
2061
- "id": "chats:list",
2170
+ "id": "broadcast:create",
2062
2171
  "pluginAlias": "@instantkom/cli",
2063
2172
  "pluginName": "@instantkom/cli",
2064
2173
  "pluginType": "core",
@@ -2068,20 +2177,20 @@
2068
2177
  "relativePath": [
2069
2178
  "dist",
2070
2179
  "commands",
2071
- "chats",
2072
- "list.js"
2180
+ "broadcast",
2181
+ "create.js"
2073
2182
  ]
2074
2183
  },
2075
- "chats:reply": {
2184
+ "broadcast:delete": {
2076
2185
  "aliases": [],
2077
2186
  "args": {
2078
2187
  "id": {
2079
- "description": "Chat ID",
2188
+ "description": "broadcast ID",
2080
2189
  "name": "id",
2081
2190
  "required": true
2082
2191
  }
2083
2192
  },
2084
- "description": "Reply in a chat",
2193
+ "description": "Delete broadcast",
2085
2194
  "flags": {
2086
2195
  "api-key": {
2087
2196
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2144,19 +2253,11 @@
2144
2253
  "hasDynamicHelp": false,
2145
2254
  "multiple": false,
2146
2255
  "type": "option"
2147
- },
2148
- "text": {
2149
- "description": "Reply text",
2150
- "name": "text",
2151
- "required": true,
2152
- "hasDynamicHelp": false,
2153
- "multiple": false,
2154
- "type": "option"
2155
2256
  }
2156
2257
  },
2157
2258
  "hasDynamicHelp": false,
2158
2259
  "hiddenAliases": [],
2159
- "id": "chats:reply",
2260
+ "id": "broadcast:delete",
2160
2261
  "pluginAlias": "@instantkom/cli",
2161
2262
  "pluginName": "@instantkom/cli",
2162
2263
  "pluginType": "core",
@@ -2166,14 +2267,20 @@
2166
2267
  "relativePath": [
2167
2268
  "dist",
2168
2269
  "commands",
2169
- "chats",
2170
- "reply.js"
2270
+ "broadcast",
2271
+ "delete.js"
2171
2272
  ]
2172
2273
  },
2173
- "broadcast:create": {
2274
+ "broadcast:get": {
2174
2275
  "aliases": [],
2175
- "args": {},
2176
- "description": "Create a broadcast for channels or segments",
2276
+ "args": {
2277
+ "id": {
2278
+ "description": "broadcast ID",
2279
+ "name": "id",
2280
+ "required": true
2281
+ }
2282
+ },
2283
+ "description": "Get broadcast by ID",
2177
2284
  "flags": {
2178
2285
  "api-key": {
2179
2286
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2236,93 +2343,157 @@
2236
2343
  "hasDynamicHelp": false,
2237
2344
  "multiple": false,
2238
2345
  "type": "option"
2346
+ }
2347
+ },
2348
+ "hasDynamicHelp": false,
2349
+ "hiddenAliases": [],
2350
+ "id": "broadcast:get",
2351
+ "pluginAlias": "@instantkom/cli",
2352
+ "pluginName": "@instantkom/cli",
2353
+ "pluginType": "core",
2354
+ "strict": true,
2355
+ "enableJsonFlag": false,
2356
+ "isESM": true,
2357
+ "relativePath": [
2358
+ "dist",
2359
+ "commands",
2360
+ "broadcast",
2361
+ "get.js"
2362
+ ]
2363
+ },
2364
+ "broadcast:list": {
2365
+ "aliases": [],
2366
+ "args": {},
2367
+ "description": "List broadcasts",
2368
+ "flags": {
2369
+ "api-key": {
2370
+ "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
2371
+ "env": "IKM_API_KEY",
2372
+ "helpGroup": "GLOBAL",
2373
+ "name": "api-key",
2374
+ "hasDynamicHelp": false,
2375
+ "multiple": false,
2376
+ "type": "option"
2239
2377
  },
2240
- "channel": {
2241
- "description": "Channel ID target",
2242
- "name": "channel",
2378
+ "format": {
2379
+ "description": "Output format: text, json, yaml, or table",
2380
+ "helpGroup": "GLOBAL",
2381
+ "name": "format",
2382
+ "default": "text",
2243
2383
  "hasDynamicHelp": false,
2244
2384
  "multiple": false,
2385
+ "options": [
2386
+ "text",
2387
+ "json",
2388
+ "yaml",
2389
+ "table"
2390
+ ],
2245
2391
  "type": "option"
2246
2392
  },
2247
- "segment": {
2248
- "description": "Segment ID within --channel",
2249
- "name": "segment",
2393
+ "json": {
2394
+ "description": "Output in JSON format (alias for --format=json)",
2395
+ "helpGroup": "GLOBAL",
2396
+ "name": "json",
2397
+ "allowNo": false,
2398
+ "type": "boolean"
2399
+ },
2400
+ "quiet": {
2401
+ "description": "Suppress all output except errors",
2402
+ "helpGroup": "GLOBAL",
2403
+ "name": "quiet",
2404
+ "allowNo": false,
2405
+ "type": "boolean"
2406
+ },
2407
+ "no-color": {
2408
+ "description": "Disable color output",
2409
+ "helpGroup": "GLOBAL",
2410
+ "name": "no-color",
2411
+ "allowNo": false,
2412
+ "type": "boolean"
2413
+ },
2414
+ "profile": {
2415
+ "description": "Named configuration profile to use",
2416
+ "helpGroup": "GLOBAL",
2417
+ "name": "profile",
2418
+ "default": "default",
2250
2419
  "hasDynamicHelp": false,
2251
2420
  "multiple": false,
2252
2421
  "type": "option"
2253
2422
  },
2254
- "target": {
2255
- "description": "Target as channelId or channelId:segmentId; may be repeated",
2256
- "name": "target",
2423
+ "api-url": {
2424
+ "description": "Override the API base URL (e.g. for staging)",
2425
+ "helpGroup": "GLOBAL",
2426
+ "name": "api-url",
2257
2427
  "hasDynamicHelp": false,
2258
- "multiple": true,
2428
+ "multiple": false,
2259
2429
  "type": "option"
2260
2430
  },
2261
- "text": {
2262
- "description": "Broadcast message text",
2263
- "name": "text",
2264
- "required": true,
2431
+ "page": {
2432
+ "description": "Page number",
2433
+ "name": "page",
2434
+ "default": 1,
2265
2435
  "hasDynamicHelp": false,
2266
2436
  "multiple": false,
2267
2437
  "type": "option"
2268
2438
  },
2269
- "send-at": {
2270
- "description": "Schedule send for an ISO-8601 date-time",
2271
- "name": "send-at",
2439
+ "limit": {
2440
+ "description": "Items per page",
2441
+ "name": "limit",
2442
+ "default": 20,
2272
2443
  "hasDynamicHelp": false,
2273
2444
  "multiple": false,
2274
2445
  "type": "option"
2275
2446
  },
2276
- "dry-run": {
2277
- "description": "Validate and print the broadcast payload without mutating API calls",
2278
- "name": "dry-run",
2279
- "allowNo": false,
2280
- "type": "boolean"
2447
+ "channel": {
2448
+ "description": "Filter by channel ID",
2449
+ "name": "channel",
2450
+ "hasDynamicHelp": false,
2451
+ "multiple": false,
2452
+ "type": "option"
2281
2453
  },
2282
- "idempotency-key": {
2283
- "description": "Idempotency key forwarded as Idempotency-Key",
2284
- "name": "idempotency-key",
2454
+ "send-status": {
2455
+ "description": "Filter by send status",
2456
+ "name": "send-status",
2285
2457
  "hasDynamicHelp": false,
2286
2458
  "multiple": false,
2287
2459
  "type": "option"
2288
2460
  },
2289
- "media": {
2290
- "description": "Media file path to upload",
2291
- "name": "media",
2461
+ "type": {
2462
+ "description": "Broadcast type",
2463
+ "name": "type",
2292
2464
  "hasDynamicHelp": false,
2293
- "multiple": true,
2465
+ "multiple": false,
2466
+ "options": [
2467
+ "text",
2468
+ "image",
2469
+ "video",
2470
+ "audio",
2471
+ "document"
2472
+ ],
2294
2473
  "type": "option"
2295
2474
  },
2296
- "template-id": {
2297
- "description": "WhatsApp template ID",
2298
- "name": "template-id",
2475
+ "search": {
2476
+ "description": "Search broadcasts",
2477
+ "name": "search",
2299
2478
  "hasDynamicHelp": false,
2300
2479
  "multiple": false,
2301
2480
  "type": "option"
2302
2481
  },
2303
- "send-status": {
2304
- "description": "Initial broadcast send status",
2305
- "name": "send-status",
2306
- "default": "draft",
2482
+ "test": {
2483
+ "description": "Filter test flag: 0 or 1",
2484
+ "name": "test",
2307
2485
  "hasDynamicHelp": false,
2308
2486
  "multiple": false,
2309
2487
  "options": [
2310
- "draft",
2311
- "scheduled",
2312
- "sending"
2488
+ "0",
2489
+ "1"
2313
2490
  ],
2314
2491
  "type": "option"
2315
- },
2316
- "auto-approve": {
2317
- "description": "Auto-approve broadcast when allowed by API permissions",
2318
- "name": "auto-approve",
2319
- "allowNo": false,
2320
- "type": "boolean"
2321
2492
  }
2322
2493
  },
2323
2494
  "hasDynamicHelp": false,
2324
2495
  "hiddenAliases": [],
2325
- "id": "broadcast:create",
2496
+ "id": "broadcast:list",
2326
2497
  "pluginAlias": "@instantkom/cli",
2327
2498
  "pluginName": "@instantkom/cli",
2328
2499
  "pluginType": "core",
@@ -2333,19 +2504,19 @@
2333
2504
  "dist",
2334
2505
  "commands",
2335
2506
  "broadcast",
2336
- "create.js"
2507
+ "list.js"
2337
2508
  ]
2338
2509
  },
2339
- "broadcast:delete": {
2510
+ "broadcast:send": {
2340
2511
  "aliases": [],
2341
2512
  "args": {
2342
2513
  "id": {
2343
- "description": "broadcast ID",
2514
+ "description": "Broadcast ID",
2344
2515
  "name": "id",
2345
2516
  "required": true
2346
2517
  }
2347
2518
  },
2348
- "description": "Delete broadcast",
2519
+ "description": "Send a broadcast immediately",
2349
2520
  "flags": {
2350
2521
  "api-key": {
2351
2522
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2412,7 +2583,7 @@
2412
2583
  },
2413
2584
  "hasDynamicHelp": false,
2414
2585
  "hiddenAliases": [],
2415
- "id": "broadcast:delete",
2586
+ "id": "broadcast:send",
2416
2587
  "pluginAlias": "@instantkom/cli",
2417
2588
  "pluginName": "@instantkom/cli",
2418
2589
  "pluginType": "core",
@@ -2423,19 +2594,19 @@
2423
2594
  "dist",
2424
2595
  "commands",
2425
2596
  "broadcast",
2426
- "delete.js"
2597
+ "send.js"
2427
2598
  ]
2428
2599
  },
2429
- "broadcast:get": {
2600
+ "broadcast:status": {
2430
2601
  "aliases": [],
2431
2602
  "args": {
2432
2603
  "id": {
2433
- "description": "broadcast ID",
2604
+ "description": "Broadcast ID",
2434
2605
  "name": "id",
2435
2606
  "required": true
2436
2607
  }
2437
2608
  },
2438
- "description": "Get broadcast by ID",
2609
+ "description": "Show broadcast send status",
2439
2610
  "flags": {
2440
2611
  "api-key": {
2441
2612
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2502,7 +2673,7 @@
2502
2673
  },
2503
2674
  "hasDynamicHelp": false,
2504
2675
  "hiddenAliases": [],
2505
- "id": "broadcast:get",
2676
+ "id": "broadcast:status",
2506
2677
  "pluginAlias": "@instantkom/cli",
2507
2678
  "pluginName": "@instantkom/cli",
2508
2679
  "pluginType": "core",
@@ -2513,13 +2684,19 @@
2513
2684
  "dist",
2514
2685
  "commands",
2515
2686
  "broadcast",
2516
- "get.js"
2687
+ "status.js"
2517
2688
  ]
2518
2689
  },
2519
- "broadcast:list": {
2690
+ "broadcast:update": {
2520
2691
  "aliases": [],
2521
- "args": {},
2522
- "description": "List broadcasts",
2692
+ "args": {
2693
+ "id": {
2694
+ "description": "Broadcast ID",
2695
+ "name": "id",
2696
+ "required": true
2697
+ }
2698
+ },
2699
+ "description": "Update a broadcast",
2523
2700
  "flags": {
2524
2701
  "api-key": {
2525
2702
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2583,72 +2760,76 @@
2583
2760
  "multiple": false,
2584
2761
  "type": "option"
2585
2762
  },
2586
- "page": {
2587
- "description": "Page number",
2588
- "name": "page",
2589
- "default": 1,
2763
+ "text": {
2764
+ "description": "Broadcast message text",
2765
+ "name": "text",
2590
2766
  "hasDynamicHelp": false,
2591
2767
  "multiple": false,
2592
2768
  "type": "option"
2593
2769
  },
2594
- "limit": {
2595
- "description": "Items per page",
2596
- "name": "limit",
2597
- "default": 20,
2770
+ "send-status": {
2771
+ "description": "Send status",
2772
+ "name": "send-status",
2598
2773
  "hasDynamicHelp": false,
2599
2774
  "multiple": false,
2600
2775
  "type": "option"
2601
2776
  },
2602
- "channel": {
2603
- "description": "Filter by channel ID",
2604
- "name": "channel",
2777
+ "scheduled-at": {
2778
+ "description": "Unix timestamp for scheduled send",
2779
+ "name": "scheduled-at",
2605
2780
  "hasDynamicHelp": false,
2606
2781
  "multiple": false,
2607
2782
  "type": "option"
2608
2783
  },
2609
- "send-status": {
2610
- "description": "Filter by send status",
2611
- "name": "send-status",
2612
- "hasDynamicHelp": false,
2613
- "multiple": false,
2614
- "type": "option"
2784
+ "approved": {
2785
+ "description": "Mark as approved",
2786
+ "name": "approved",
2787
+ "allowNo": false,
2788
+ "type": "boolean"
2615
2789
  },
2616
- "type": {
2617
- "description": "Broadcast type",
2618
- "name": "type",
2790
+ "locked": {
2791
+ "description": "Mark as locked",
2792
+ "name": "locked",
2793
+ "allowNo": false,
2794
+ "type": "boolean"
2795
+ },
2796
+ "test": {
2797
+ "description": "Mark as test broadcast",
2798
+ "name": "test",
2799
+ "allowNo": false,
2800
+ "type": "boolean"
2801
+ },
2802
+ "template-id": {
2803
+ "description": "Template ID",
2804
+ "name": "template-id",
2619
2805
  "hasDynamicHelp": false,
2620
2806
  "multiple": false,
2621
- "options": [
2622
- "text",
2623
- "image",
2624
- "video",
2625
- "audio",
2626
- "document"
2627
- ],
2628
2807
  "type": "option"
2629
2808
  },
2630
- "search": {
2631
- "description": "Search broadcasts",
2632
- "name": "search",
2809
+ "remove-media": {
2810
+ "description": "Remove existing media",
2811
+ "name": "remove-media",
2812
+ "allowNo": false,
2813
+ "type": "boolean"
2814
+ },
2815
+ "header-footer": {
2816
+ "description": "Header/footer JSON array",
2817
+ "name": "header-footer",
2633
2818
  "hasDynamicHelp": false,
2634
2819
  "multiple": false,
2635
2820
  "type": "option"
2636
2821
  },
2637
- "test": {
2638
- "description": "Filter test flag: 0 or 1",
2639
- "name": "test",
2822
+ "data": {
2823
+ "description": "Additional JSON object payload",
2824
+ "name": "data",
2640
2825
  "hasDynamicHelp": false,
2641
2826
  "multiple": false,
2642
- "options": [
2643
- "0",
2644
- "1"
2645
- ],
2646
2827
  "type": "option"
2647
2828
  }
2648
2829
  },
2649
2830
  "hasDynamicHelp": false,
2650
2831
  "hiddenAliases": [],
2651
- "id": "broadcast:list",
2832
+ "id": "broadcast:update",
2652
2833
  "pluginAlias": "@instantkom/cli",
2653
2834
  "pluginName": "@instantkom/cli",
2654
2835
  "pluginType": "core",
@@ -2659,19 +2840,13 @@
2659
2840
  "dist",
2660
2841
  "commands",
2661
2842
  "broadcast",
2662
- "list.js"
2843
+ "update.js"
2663
2844
  ]
2664
2845
  },
2665
- "broadcast:send": {
2846
+ "channels:create": {
2666
2847
  "aliases": [],
2667
- "args": {
2668
- "id": {
2669
- "description": "Broadcast ID",
2670
- "name": "id",
2671
- "required": true
2672
- }
2673
- },
2674
- "description": "Send a broadcast immediately",
2848
+ "args": {},
2849
+ "description": "Create a channel",
2675
2850
  "flags": {
2676
2851
  "api-key": {
2677
2852
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2734,11 +2909,48 @@
2734
2909
  "hasDynamicHelp": false,
2735
2910
  "multiple": false,
2736
2911
  "type": "option"
2912
+ },
2913
+ "name": {
2914
+ "description": "Channel name",
2915
+ "name": "name",
2916
+ "required": true,
2917
+ "hasDynamicHelp": false,
2918
+ "multiple": false,
2919
+ "type": "option"
2920
+ },
2921
+ "gateway-type": {
2922
+ "description": "Gateway type ID",
2923
+ "name": "gateway-type",
2924
+ "required": true,
2925
+ "hasDynamicHelp": false,
2926
+ "multiple": false,
2927
+ "type": "option"
2928
+ },
2929
+ "status": {
2930
+ "description": "Channel lifecycle status",
2931
+ "name": "status",
2932
+ "hasDynamicHelp": false,
2933
+ "multiple": false,
2934
+ "type": "option"
2935
+ },
2936
+ "description": {
2937
+ "description": "Channel description",
2938
+ "name": "description",
2939
+ "hasDynamicHelp": false,
2940
+ "multiple": false,
2941
+ "type": "option"
2942
+ },
2943
+ "data": {
2944
+ "description": "Additional JSON object payload",
2945
+ "name": "data",
2946
+ "hasDynamicHelp": false,
2947
+ "multiple": false,
2948
+ "type": "option"
2737
2949
  }
2738
2950
  },
2739
2951
  "hasDynamicHelp": false,
2740
2952
  "hiddenAliases": [],
2741
- "id": "broadcast:send",
2953
+ "id": "channels:create",
2742
2954
  "pluginAlias": "@instantkom/cli",
2743
2955
  "pluginName": "@instantkom/cli",
2744
2956
  "pluginType": "core",
@@ -2748,20 +2960,20 @@
2748
2960
  "relativePath": [
2749
2961
  "dist",
2750
2962
  "commands",
2751
- "broadcast",
2752
- "send.js"
2963
+ "channels",
2964
+ "create.js"
2753
2965
  ]
2754
2966
  },
2755
- "broadcast:status": {
2967
+ "channels:get": {
2756
2968
  "aliases": [],
2757
2969
  "args": {
2758
2970
  "id": {
2759
- "description": "Broadcast ID",
2971
+ "description": "Channel ID",
2760
2972
  "name": "id",
2761
2973
  "required": true
2762
2974
  }
2763
2975
  },
2764
- "description": "Show broadcast send status",
2976
+ "description": "Get a channel by ID",
2765
2977
  "flags": {
2766
2978
  "api-key": {
2767
2979
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2828,7 +3040,7 @@
2828
3040
  },
2829
3041
  "hasDynamicHelp": false,
2830
3042
  "hiddenAliases": [],
2831
- "id": "broadcast:status",
3043
+ "id": "channels:get",
2832
3044
  "pluginAlias": "@instantkom/cli",
2833
3045
  "pluginName": "@instantkom/cli",
2834
3046
  "pluginType": "core",
@@ -2838,20 +3050,20 @@
2838
3050
  "relativePath": [
2839
3051
  "dist",
2840
3052
  "commands",
2841
- "broadcast",
2842
- "status.js"
3053
+ "channels",
3054
+ "get.js"
2843
3055
  ]
2844
3056
  },
2845
- "broadcast:update": {
3057
+ "channels:kpis": {
2846
3058
  "aliases": [],
2847
3059
  "args": {
2848
3060
  "id": {
2849
- "description": "Broadcast ID",
3061
+ "description": "Optional channel ID; omit for aggregated channel KPIs",
2850
3062
  "name": "id",
2851
- "required": true
3063
+ "required": false
2852
3064
  }
2853
3065
  },
2854
- "description": "Update a broadcast",
3066
+ "description": "Get channel KPIs",
2855
3067
  "flags": {
2856
3068
  "api-key": {
2857
3069
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2915,68 +3127,9 @@
2915
3127
  "multiple": false,
2916
3128
  "type": "option"
2917
3129
  },
2918
- "text": {
2919
- "description": "Broadcast message text",
2920
- "name": "text",
2921
- "hasDynamicHelp": false,
2922
- "multiple": false,
2923
- "type": "option"
2924
- },
2925
- "send-status": {
2926
- "description": "Send status",
2927
- "name": "send-status",
2928
- "hasDynamicHelp": false,
2929
- "multiple": false,
2930
- "type": "option"
2931
- },
2932
- "scheduled-at": {
2933
- "description": "Unix timestamp for scheduled send",
2934
- "name": "scheduled-at",
2935
- "hasDynamicHelp": false,
2936
- "multiple": false,
2937
- "type": "option"
2938
- },
2939
- "approved": {
2940
- "description": "Mark as approved",
2941
- "name": "approved",
2942
- "allowNo": false,
2943
- "type": "boolean"
2944
- },
2945
- "locked": {
2946
- "description": "Mark as locked",
2947
- "name": "locked",
2948
- "allowNo": false,
2949
- "type": "boolean"
2950
- },
2951
- "test": {
2952
- "description": "Mark as test broadcast",
2953
- "name": "test",
2954
- "allowNo": false,
2955
- "type": "boolean"
2956
- },
2957
- "template-id": {
2958
- "description": "Template ID",
2959
- "name": "template-id",
2960
- "hasDynamicHelp": false,
2961
- "multiple": false,
2962
- "type": "option"
2963
- },
2964
- "remove-media": {
2965
- "description": "Remove existing media",
2966
- "name": "remove-media",
2967
- "allowNo": false,
2968
- "type": "boolean"
2969
- },
2970
- "header-footer": {
2971
- "description": "Header/footer JSON array",
2972
- "name": "header-footer",
2973
- "hasDynamicHelp": false,
2974
- "multiple": false,
2975
- "type": "option"
2976
- },
2977
- "data": {
2978
- "description": "Additional JSON object payload",
2979
- "name": "data",
3130
+ "period": {
3131
+ "description": "KPI period",
3132
+ "name": "period",
2980
3133
  "hasDynamicHelp": false,
2981
3134
  "multiple": false,
2982
3135
  "type": "option"
@@ -2984,7 +3137,7 @@
2984
3137
  },
2985
3138
  "hasDynamicHelp": false,
2986
3139
  "hiddenAliases": [],
2987
- "id": "broadcast:update",
3140
+ "id": "channels:kpis",
2988
3141
  "pluginAlias": "@instantkom/cli",
2989
3142
  "pluginName": "@instantkom/cli",
2990
3143
  "pluginType": "core",
@@ -2994,20 +3147,14 @@
2994
3147
  "relativePath": [
2995
3148
  "dist",
2996
3149
  "commands",
2997
- "broadcast",
2998
- "update.js"
3150
+ "channels",
3151
+ "kpis.js"
2999
3152
  ]
3000
3153
  },
3001
- "config:get": {
3154
+ "channels:list": {
3002
3155
  "aliases": [],
3003
- "args": {
3004
- "key": {
3005
- "description": "Configuration key to retrieve",
3006
- "name": "key",
3007
- "required": true
3008
- }
3009
- },
3010
- "description": "Get a configuration value for the current profile",
3156
+ "args": {},
3157
+ "description": "List channels",
3011
3158
  "flags": {
3012
3159
  "api-key": {
3013
3160
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3070,11 +3217,48 @@
3070
3217
  "hasDynamicHelp": false,
3071
3218
  "multiple": false,
3072
3219
  "type": "option"
3220
+ },
3221
+ "page": {
3222
+ "description": "Page number",
3223
+ "name": "page",
3224
+ "default": 1,
3225
+ "hasDynamicHelp": false,
3226
+ "multiple": false,
3227
+ "type": "option"
3228
+ },
3229
+ "limit": {
3230
+ "description": "Items per page",
3231
+ "name": "limit",
3232
+ "default": 20,
3233
+ "hasDynamicHelp": false,
3234
+ "multiple": false,
3235
+ "type": "option"
3236
+ },
3237
+ "status": {
3238
+ "description": "Filter by channel status",
3239
+ "name": "status",
3240
+ "hasDynamicHelp": false,
3241
+ "multiple": false,
3242
+ "type": "option"
3243
+ },
3244
+ "gateway-type": {
3245
+ "description": "Filter by gateway type ID",
3246
+ "name": "gateway-type",
3247
+ "hasDynamicHelp": false,
3248
+ "multiple": false,
3249
+ "type": "option"
3250
+ },
3251
+ "search": {
3252
+ "description": "Search by channel name",
3253
+ "name": "search",
3254
+ "hasDynamicHelp": false,
3255
+ "multiple": false,
3256
+ "type": "option"
3073
3257
  }
3074
3258
  },
3075
3259
  "hasDynamicHelp": false,
3076
3260
  "hiddenAliases": [],
3077
- "id": "config:get",
3261
+ "id": "channels:list",
3078
3262
  "pluginAlias": "@instantkom/cli",
3079
3263
  "pluginName": "@instantkom/cli",
3080
3264
  "pluginType": "core",
@@ -3084,25 +3268,20 @@
3084
3268
  "relativePath": [
3085
3269
  "dist",
3086
3270
  "commands",
3087
- "config",
3088
- "get.js"
3271
+ "channels",
3272
+ "list.js"
3089
3273
  ]
3090
3274
  },
3091
- "config:set": {
3275
+ "channels:update": {
3092
3276
  "aliases": [],
3093
3277
  "args": {
3094
- "key": {
3095
- "description": "Configuration key to set",
3096
- "name": "key",
3097
- "required": true
3098
- },
3099
- "value": {
3100
- "description": "Value to assign",
3101
- "name": "value",
3278
+ "id": {
3279
+ "description": "Channel ID",
3280
+ "name": "id",
3102
3281
  "required": true
3103
3282
  }
3104
3283
  },
3105
- "description": "Set a configuration value for the current profile",
3284
+ "description": "Update a channel",
3106
3285
  "flags": {
3107
3286
  "api-key": {
3108
3287
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3165,11 +3344,39 @@
3165
3344
  "hasDynamicHelp": false,
3166
3345
  "multiple": false,
3167
3346
  "type": "option"
3347
+ },
3348
+ "name": {
3349
+ "description": "Channel name",
3350
+ "name": "name",
3351
+ "hasDynamicHelp": false,
3352
+ "multiple": false,
3353
+ "type": "option"
3354
+ },
3355
+ "status": {
3356
+ "description": "Channel lifecycle status",
3357
+ "name": "status",
3358
+ "hasDynamicHelp": false,
3359
+ "multiple": false,
3360
+ "type": "option"
3361
+ },
3362
+ "description": {
3363
+ "description": "Channel description",
3364
+ "name": "description",
3365
+ "hasDynamicHelp": false,
3366
+ "multiple": false,
3367
+ "type": "option"
3368
+ },
3369
+ "data": {
3370
+ "description": "Additional JSON object payload",
3371
+ "name": "data",
3372
+ "hasDynamicHelp": false,
3373
+ "multiple": false,
3374
+ "type": "option"
3168
3375
  }
3169
3376
  },
3170
3377
  "hasDynamicHelp": false,
3171
3378
  "hiddenAliases": [],
3172
- "id": "config:set",
3379
+ "id": "channels:update",
3173
3380
  "pluginAlias": "@instantkom/cli",
3174
3381
  "pluginName": "@instantkom/cli",
3175
3382
  "pluginType": "core",
@@ -3179,20 +3386,20 @@
3179
3386
  "relativePath": [
3180
3387
  "dist",
3181
3388
  "commands",
3182
- "config",
3183
- "set.js"
3389
+ "channels",
3390
+ "update.js"
3184
3391
  ]
3185
3392
  },
3186
- "config:unset": {
3393
+ "chats:get": {
3187
3394
  "aliases": [],
3188
3395
  "args": {
3189
- "key": {
3190
- "description": "Configuration key to remove",
3191
- "name": "key",
3396
+ "id": {
3397
+ "description": "chat ID",
3398
+ "name": "id",
3192
3399
  "required": true
3193
3400
  }
3194
3401
  },
3195
- "description": "Remove a configuration key from the current profile",
3402
+ "description": "Get chat by ID",
3196
3403
  "flags": {
3197
3404
  "api-key": {
3198
3405
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3259,7 +3466,7 @@
3259
3466
  },
3260
3467
  "hasDynamicHelp": false,
3261
3468
  "hiddenAliases": [],
3262
- "id": "config:unset",
3469
+ "id": "chats:get",
3263
3470
  "pluginAlias": "@instantkom/cli",
3264
3471
  "pluginName": "@instantkom/cli",
3265
3472
  "pluginType": "core",
@@ -3269,14 +3476,14 @@
3269
3476
  "relativePath": [
3270
3477
  "dist",
3271
3478
  "commands",
3272
- "config",
3273
- "unset.js"
3479
+ "chats",
3480
+ "get.js"
3274
3481
  ]
3275
3482
  },
3276
- "bots:create": {
3483
+ "chats:list": {
3277
3484
  "aliases": [],
3278
3485
  "args": {},
3279
- "description": "Create a bot",
3486
+ "description": "List chats",
3280
3487
  "flags": {
3281
3488
  "api-key": {
3282
3489
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3340,165 +3547,72 @@
3340
3547
  "multiple": false,
3341
3548
  "type": "option"
3342
3549
  },
3343
- "channel": {
3344
- "description": "Channel ID",
3345
- "name": "channel",
3346
- "required": true,
3347
- "hasDynamicHelp": false,
3348
- "multiple": false,
3349
- "type": "option"
3350
- },
3351
- "name": {
3352
- "description": "Bot name",
3353
- "name": "name",
3354
- "required": true,
3355
- "hasDynamicHelp": false,
3356
- "multiple": false,
3357
- "type": "option"
3358
- },
3359
- "type": {
3360
- "description": "Bot type",
3361
- "name": "type",
3362
- "required": true,
3363
- "hasDynamicHelp": false,
3364
- "multiple": false,
3365
- "options": [
3366
- "keyword",
3367
- "schedule",
3368
- "event",
3369
- "ai"
3370
- ],
3371
- "type": "option"
3372
- },
3373
- "message": {
3374
- "description": "Bot message content",
3375
- "name": "message",
3376
- "hasDynamicHelp": false,
3377
- "multiple": false,
3378
- "type": "option"
3379
- },
3380
- "response": {
3381
- "description": "Alias for --message",
3382
- "name": "response",
3383
- "hasDynamicHelp": false,
3384
- "multiple": false,
3385
- "type": "option"
3386
- },
3387
- "color": {
3388
- "description": "Bot color as HEX",
3389
- "name": "color",
3390
- "hasDynamicHelp": false,
3391
- "multiple": false,
3392
- "type": "option"
3393
- },
3394
- "tags": {
3395
- "description": "Comma-separated tags",
3396
- "name": "tags",
3550
+ "page": {
3551
+ "description": "Page number",
3552
+ "name": "page",
3553
+ "default": 1,
3397
3554
  "hasDynamicHelp": false,
3398
3555
  "multiple": false,
3399
3556
  "type": "option"
3400
3557
  },
3401
- "data": {
3402
- "description": "Additional JSON object payload",
3403
- "name": "data",
3404
- "hasDynamicHelp": false,
3405
- "multiple": false,
3406
- "type": "option"
3407
- }
3408
- },
3409
- "hasDynamicHelp": false,
3410
- "hiddenAliases": [],
3411
- "id": "bots:create",
3412
- "pluginAlias": "@instantkom/cli",
3413
- "pluginName": "@instantkom/cli",
3414
- "pluginType": "core",
3415
- "strict": true,
3416
- "enableJsonFlag": false,
3417
- "isESM": true,
3418
- "relativePath": [
3419
- "dist",
3420
- "commands",
3421
- "bots",
3422
- "create.js"
3423
- ]
3424
- },
3425
- "bots:delete": {
3426
- "aliases": [],
3427
- "args": {
3428
- "id": {
3429
- "description": "Bot ID",
3430
- "name": "id",
3431
- "required": true
3432
- }
3433
- },
3434
- "description": "Delete a bot",
3435
- "flags": {
3436
- "api-key": {
3437
- "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
3438
- "env": "IKM_API_KEY",
3439
- "helpGroup": "GLOBAL",
3440
- "name": "api-key",
3558
+ "limit": {
3559
+ "description": "Items per page",
3560
+ "name": "limit",
3561
+ "default": 20,
3441
3562
  "hasDynamicHelp": false,
3442
3563
  "multiple": false,
3443
3564
  "type": "option"
3444
3565
  },
3445
- "format": {
3446
- "description": "Output format: text, json, yaml, or table",
3447
- "helpGroup": "GLOBAL",
3448
- "name": "format",
3449
- "default": "text",
3566
+ "channel": {
3567
+ "description": "Filter by channel ID",
3568
+ "name": "channel",
3450
3569
  "hasDynamicHelp": false,
3451
3570
  "multiple": false,
3452
- "options": [
3453
- "text",
3454
- "json",
3455
- "yaml",
3456
- "table"
3457
- ],
3458
3571
  "type": "option"
3459
3572
  },
3460
- "json": {
3461
- "description": "Output in JSON format (alias for --format=json)",
3462
- "helpGroup": "GLOBAL",
3463
- "name": "json",
3464
- "allowNo": false,
3465
- "type": "boolean"
3466
- },
3467
- "quiet": {
3468
- "description": "Suppress all output except errors",
3469
- "helpGroup": "GLOBAL",
3470
- "name": "quiet",
3471
- "allowNo": false,
3472
- "type": "boolean"
3473
- },
3474
- "no-color": {
3475
- "description": "Disable color output",
3476
- "helpGroup": "GLOBAL",
3477
- "name": "no-color",
3478
- "allowNo": false,
3479
- "type": "boolean"
3480
- },
3481
- "profile": {
3482
- "description": "Named configuration profile to use",
3483
- "helpGroup": "GLOBAL",
3484
- "name": "profile",
3485
- "default": "default",
3573
+ "channels": {
3574
+ "description": "Comma-separated channel IDs",
3575
+ "name": "channels",
3486
3576
  "hasDynamicHelp": false,
3487
3577
  "multiple": false,
3488
3578
  "type": "option"
3489
3579
  },
3490
- "api-url": {
3491
- "description": "Override the API base URL (e.g. for staging)",
3492
- "helpGroup": "GLOBAL",
3493
- "name": "api-url",
3580
+ "search": {
3581
+ "description": "Search chats",
3582
+ "name": "search",
3583
+ "hasDynamicHelp": false,
3584
+ "multiple": false,
3585
+ "type": "option"
3586
+ },
3587
+ "status": {
3588
+ "description": "Chat status",
3589
+ "name": "status",
3494
3590
  "hasDynamicHelp": false,
3495
3591
  "multiple": false,
3592
+ "options": [
3593
+ "all",
3594
+ "unread",
3595
+ "read",
3596
+ "archived"
3597
+ ],
3496
3598
  "type": "option"
3599
+ },
3600
+ "unread-only": {
3601
+ "description": "Only unread chats",
3602
+ "name": "unread-only",
3603
+ "allowNo": false,
3604
+ "type": "boolean"
3605
+ },
3606
+ "include-archived": {
3607
+ "description": "Include archived chats",
3608
+ "name": "include-archived",
3609
+ "allowNo": false,
3610
+ "type": "boolean"
3497
3611
  }
3498
3612
  },
3499
3613
  "hasDynamicHelp": false,
3500
3614
  "hiddenAliases": [],
3501
- "id": "bots:delete",
3615
+ "id": "chats:list",
3502
3616
  "pluginAlias": "@instantkom/cli",
3503
3617
  "pluginName": "@instantkom/cli",
3504
3618
  "pluginType": "core",
@@ -3508,20 +3622,20 @@
3508
3622
  "relativePath": [
3509
3623
  "dist",
3510
3624
  "commands",
3511
- "bots",
3512
- "delete.js"
3625
+ "chats",
3626
+ "list.js"
3513
3627
  ]
3514
3628
  },
3515
- "bots:get": {
3629
+ "chats:reply": {
3516
3630
  "aliases": [],
3517
3631
  "args": {
3518
3632
  "id": {
3519
- "description": "Bot ID",
3633
+ "description": "Chat ID",
3520
3634
  "name": "id",
3521
3635
  "required": true
3522
3636
  }
3523
3637
  },
3524
- "description": "Get a bot by ID",
3638
+ "description": "Reply in a chat",
3525
3639
  "flags": {
3526
3640
  "api-key": {
3527
3641
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3584,11 +3698,19 @@
3584
3698
  "hasDynamicHelp": false,
3585
3699
  "multiple": false,
3586
3700
  "type": "option"
3701
+ },
3702
+ "text": {
3703
+ "description": "Reply text",
3704
+ "name": "text",
3705
+ "required": true,
3706
+ "hasDynamicHelp": false,
3707
+ "multiple": false,
3708
+ "type": "option"
3587
3709
  }
3588
3710
  },
3589
3711
  "hasDynamicHelp": false,
3590
3712
  "hiddenAliases": [],
3591
- "id": "bots:get",
3713
+ "id": "chats:reply",
3592
3714
  "pluginAlias": "@instantkom/cli",
3593
3715
  "pluginName": "@instantkom/cli",
3594
3716
  "pluginType": "core",
@@ -3598,14 +3720,20 @@
3598
3720
  "relativePath": [
3599
3721
  "dist",
3600
3722
  "commands",
3601
- "bots",
3602
- "get.js"
3723
+ "chats",
3724
+ "reply.js"
3603
3725
  ]
3604
3726
  },
3605
- "bots:list": {
3727
+ "config:get": {
3606
3728
  "aliases": [],
3607
- "args": {},
3608
- "description": "List bots",
3729
+ "args": {
3730
+ "key": {
3731
+ "description": "Configuration key to retrieve",
3732
+ "name": "key",
3733
+ "required": true
3734
+ }
3735
+ },
3736
+ "description": "Get a configuration value for the current profile",
3609
3737
  "flags": {
3610
3738
  "api-key": {
3611
3739
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3668,66 +3796,11 @@
3668
3796
  "hasDynamicHelp": false,
3669
3797
  "multiple": false,
3670
3798
  "type": "option"
3671
- },
3672
- "page": {
3673
- "description": "Page number",
3674
- "name": "page",
3675
- "default": 1,
3676
- "hasDynamicHelp": false,
3677
- "multiple": false,
3678
- "type": "option"
3679
- },
3680
- "limit": {
3681
- "description": "Items per page",
3682
- "name": "limit",
3683
- "default": 20,
3684
- "hasDynamicHelp": false,
3685
- "multiple": false,
3686
- "type": "option"
3687
- },
3688
- "channel": {
3689
- "description": "Filter by channel ID",
3690
- "name": "channel",
3691
- "hasDynamicHelp": false,
3692
- "multiple": false,
3693
- "type": "option"
3694
- },
3695
- "type": {
3696
- "description": "Filter by bot type",
3697
- "name": "type",
3698
- "hasDynamicHelp": false,
3699
- "multiple": false,
3700
- "type": "option"
3701
- },
3702
- "search": {
3703
- "description": "Search in bot name or message",
3704
- "name": "search",
3705
- "hasDynamicHelp": false,
3706
- "multiple": false,
3707
- "type": "option"
3708
- },
3709
- "tags": {
3710
- "description": "Comma-separated tag IDs",
3711
- "name": "tags",
3712
- "hasDynamicHelp": false,
3713
- "multiple": false,
3714
- "type": "option"
3715
- },
3716
- "tag-match": {
3717
- "description": "Tag match mode",
3718
- "name": "tag-match",
3719
- "hasDynamicHelp": false,
3720
- "multiple": false,
3721
- "options": [
3722
- "any",
3723
- "all"
3724
- ],
3725
- "type": "option"
3726
3799
  }
3727
3800
  },
3728
3801
  "hasDynamicHelp": false,
3729
3802
  "hiddenAliases": [],
3730
- "id": "bots:list",
3803
+ "id": "config:get",
3731
3804
  "pluginAlias": "@instantkom/cli",
3732
3805
  "pluginName": "@instantkom/cli",
3733
3806
  "pluginType": "core",
@@ -3737,20 +3810,25 @@
3737
3810
  "relativePath": [
3738
3811
  "dist",
3739
3812
  "commands",
3740
- "bots",
3741
- "list.js"
3813
+ "config",
3814
+ "get.js"
3742
3815
  ]
3743
3816
  },
3744
- "bots:matches": {
3817
+ "config:set": {
3745
3818
  "aliases": [],
3746
3819
  "args": {
3747
- "id": {
3748
- "description": "Bot ID",
3749
- "name": "id",
3820
+ "key": {
3821
+ "description": "Configuration key to set",
3822
+ "name": "key",
3823
+ "required": true
3824
+ },
3825
+ "value": {
3826
+ "description": "Value to assign",
3827
+ "name": "value",
3750
3828
  "required": true
3751
3829
  }
3752
3830
  },
3753
- "description": "List bot match history",
3831
+ "description": "Set a configuration value for the current profile",
3754
3832
  "flags": {
3755
3833
  "api-key": {
3756
3834
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3813,34 +3891,11 @@
3813
3891
  "hasDynamicHelp": false,
3814
3892
  "multiple": false,
3815
3893
  "type": "option"
3816
- },
3817
- "page": {
3818
- "description": "Page number",
3819
- "name": "page",
3820
- "default": 1,
3821
- "hasDynamicHelp": false,
3822
- "multiple": false,
3823
- "type": "option"
3824
- },
3825
- "limit": {
3826
- "description": "Items per page",
3827
- "name": "limit",
3828
- "default": 50,
3829
- "hasDynamicHelp": false,
3830
- "multiple": false,
3831
- "type": "option"
3832
- },
3833
- "search": {
3834
- "description": "Search in matches",
3835
- "name": "search",
3836
- "hasDynamicHelp": false,
3837
- "multiple": false,
3838
- "type": "option"
3839
3894
  }
3840
3895
  },
3841
3896
  "hasDynamicHelp": false,
3842
3897
  "hiddenAliases": [],
3843
- "id": "bots:matches",
3898
+ "id": "config:set",
3844
3899
  "pluginAlias": "@instantkom/cli",
3845
3900
  "pluginName": "@instantkom/cli",
3846
3901
  "pluginType": "core",
@@ -3850,20 +3905,20 @@
3850
3905
  "relativePath": [
3851
3906
  "dist",
3852
3907
  "commands",
3853
- "bots",
3854
- "matches.js"
3908
+ "config",
3909
+ "set.js"
3855
3910
  ]
3856
3911
  },
3857
- "bots:update": {
3912
+ "config:unset": {
3858
3913
  "aliases": [],
3859
3914
  "args": {
3860
- "id": {
3861
- "description": "Bot ID",
3862
- "name": "id",
3915
+ "key": {
3916
+ "description": "Configuration key to remove",
3917
+ "name": "key",
3863
3918
  "required": true
3864
3919
  }
3865
3920
  },
3866
- "description": "Update a bot",
3921
+ "description": "Remove a configuration key from the current profile",
3867
3922
  "flags": {
3868
3923
  "api-key": {
3869
3924
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3926,66 +3981,11 @@
3926
3981
  "hasDynamicHelp": false,
3927
3982
  "multiple": false,
3928
3983
  "type": "option"
3929
- },
3930
- "name": {
3931
- "description": "Bot name",
3932
- "name": "name",
3933
- "hasDynamicHelp": false,
3934
- "multiple": false,
3935
- "type": "option"
3936
- },
3937
- "type": {
3938
- "description": "Bot type",
3939
- "name": "type",
3940
- "hasDynamicHelp": false,
3941
- "multiple": false,
3942
- "options": [
3943
- "keyword",
3944
- "schedule",
3945
- "event",
3946
- "ai"
3947
- ],
3948
- "type": "option"
3949
- },
3950
- "message": {
3951
- "description": "Bot message content",
3952
- "name": "message",
3953
- "hasDynamicHelp": false,
3954
- "multiple": false,
3955
- "type": "option"
3956
- },
3957
- "response": {
3958
- "description": "Alias for --message",
3959
- "name": "response",
3960
- "hasDynamicHelp": false,
3961
- "multiple": false,
3962
- "type": "option"
3963
- },
3964
- "color": {
3965
- "description": "Bot color as HEX",
3966
- "name": "color",
3967
- "hasDynamicHelp": false,
3968
- "multiple": false,
3969
- "type": "option"
3970
- },
3971
- "tags": {
3972
- "description": "Comma-separated tags",
3973
- "name": "tags",
3974
- "hasDynamicHelp": false,
3975
- "multiple": false,
3976
- "type": "option"
3977
- },
3978
- "data": {
3979
- "description": "Additional JSON object payload",
3980
- "name": "data",
3981
- "hasDynamicHelp": false,
3982
- "multiple": false,
3983
- "type": "option"
3984
3984
  }
3985
3985
  },
3986
3986
  "hasDynamicHelp": false,
3987
3987
  "hiddenAliases": [],
3988
- "id": "bots:update",
3988
+ "id": "config:unset",
3989
3989
  "pluginAlias": "@instantkom/cli",
3990
3990
  "pluginName": "@instantkom/cli",
3991
3991
  "pluginType": "core",
@@ -3995,8 +3995,8 @@
3995
3995
  "relativePath": [
3996
3996
  "dist",
3997
3997
  "commands",
3998
- "bots",
3999
- "update.js"
3998
+ "config",
3999
+ "unset.js"
4000
4000
  ]
4001
4001
  },
4002
4002
  "contacts:create": {
@@ -6076,10 +6076,10 @@
6076
6076
  "list.js"
6077
6077
  ]
6078
6078
  },
6079
- "flows:create": {
6079
+ "messages:bulk-spam": {
6080
6080
  "aliases": [],
6081
6081
  "args": {},
6082
- "description": "Create a flow",
6082
+ "description": "Mark or unmark multiple messages as spam",
6083
6083
  "flags": {
6084
6084
  "api-key": {
6085
6085
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6143,54 +6143,24 @@
6143
6143
  "multiple": false,
6144
6144
  "type": "option"
6145
6145
  },
6146
- "channel": {
6147
- "description": "Channel ID",
6148
- "name": "channel",
6149
- "required": true,
6150
- "hasDynamicHelp": false,
6151
- "multiple": false,
6152
- "type": "option"
6153
- },
6154
- "name": {
6155
- "description": "Flow name",
6156
- "name": "name",
6146
+ "ids": {
6147
+ "description": "Comma-separated message IDs",
6148
+ "name": "ids",
6157
6149
  "required": true,
6158
6150
  "hasDynamicHelp": false,
6159
6151
  "multiple": false,
6160
6152
  "type": "option"
6161
6153
  },
6162
- "description": {
6163
- "description": "Flow description",
6164
- "name": "description",
6165
- "hasDynamicHelp": false,
6166
- "multiple": false,
6167
- "type": "option"
6168
- },
6169
- "color": {
6170
- "description": "Flow color as HEX",
6171
- "name": "color",
6172
- "hasDynamicHelp": false,
6173
- "multiple": false,
6174
- "type": "option"
6175
- },
6176
- "folder": {
6177
- "description": "Folder ID",
6178
- "name": "folder",
6179
- "hasDynamicHelp": false,
6180
- "multiple": false,
6181
- "type": "option"
6182
- },
6183
- "data": {
6184
- "description": "Additional JSON object payload",
6185
- "name": "data",
6186
- "hasDynamicHelp": false,
6187
- "multiple": false,
6188
- "type": "option"
6154
+ "spam": {
6155
+ "description": "Mark messages as spam",
6156
+ "name": "spam",
6157
+ "allowNo": true,
6158
+ "type": "boolean"
6189
6159
  }
6190
6160
  },
6191
6161
  "hasDynamicHelp": false,
6192
6162
  "hiddenAliases": [],
6193
- "id": "flows:create",
6163
+ "id": "messages:bulk-spam",
6194
6164
  "pluginAlias": "@instantkom/cli",
6195
6165
  "pluginName": "@instantkom/cli",
6196
6166
  "pluginType": "core",
@@ -6200,20 +6170,20 @@
6200
6170
  "relativePath": [
6201
6171
  "dist",
6202
6172
  "commands",
6203
- "flows",
6204
- "create.js"
6173
+ "messages",
6174
+ "bulk-spam.js"
6205
6175
  ]
6206
6176
  },
6207
- "flows:delete": {
6177
+ "messages:create-ticket": {
6208
6178
  "aliases": [],
6209
6179
  "args": {
6210
6180
  "id": {
6211
- "description": "Flow ID",
6181
+ "description": "Message ID",
6212
6182
  "name": "id",
6213
6183
  "required": true
6214
6184
  }
6215
6185
  },
6216
- "description": "Delete a flow",
6186
+ "description": "Create a ticket from a message",
6217
6187
  "flags": {
6218
6188
  "api-key": {
6219
6189
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6276,11 +6246,32 @@
6276
6246
  "hasDynamicHelp": false,
6277
6247
  "multiple": false,
6278
6248
  "type": "option"
6249
+ },
6250
+ "subject": {
6251
+ "description": "Ticket subject",
6252
+ "name": "subject",
6253
+ "hasDynamicHelp": false,
6254
+ "multiple": false,
6255
+ "type": "option"
6256
+ },
6257
+ "priority": {
6258
+ "description": "Ticket priority",
6259
+ "name": "priority",
6260
+ "hasDynamicHelp": false,
6261
+ "multiple": false,
6262
+ "type": "option"
6263
+ },
6264
+ "data": {
6265
+ "description": "Additional JSON object payload",
6266
+ "name": "data",
6267
+ "hasDynamicHelp": false,
6268
+ "multiple": false,
6269
+ "type": "option"
6279
6270
  }
6280
6271
  },
6281
6272
  "hasDynamicHelp": false,
6282
6273
  "hiddenAliases": [],
6283
- "id": "flows:delete",
6274
+ "id": "messages:create-ticket",
6284
6275
  "pluginAlias": "@instantkom/cli",
6285
6276
  "pluginName": "@instantkom/cli",
6286
6277
  "pluginType": "core",
@@ -6290,20 +6281,20 @@
6290
6281
  "relativePath": [
6291
6282
  "dist",
6292
6283
  "commands",
6293
- "flows",
6294
- "delete.js"
6284
+ "messages",
6285
+ "create-ticket.js"
6295
6286
  ]
6296
6287
  },
6297
- "flows:get": {
6288
+ "messages:delete": {
6298
6289
  "aliases": [],
6299
6290
  "args": {
6300
6291
  "id": {
6301
- "description": "Flow ID",
6292
+ "description": "message ID",
6302
6293
  "name": "id",
6303
6294
  "required": true
6304
6295
  }
6305
6296
  },
6306
- "description": "Get a flow by ID",
6297
+ "description": "Delete message",
6307
6298
  "flags": {
6308
6299
  "api-key": {
6309
6300
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6370,7 +6361,7 @@
6370
6361
  },
6371
6362
  "hasDynamicHelp": false,
6372
6363
  "hiddenAliases": [],
6373
- "id": "flows:get",
6364
+ "id": "messages:delete",
6374
6365
  "pluginAlias": "@instantkom/cli",
6375
6366
  "pluginName": "@instantkom/cli",
6376
6367
  "pluginType": "core",
@@ -6380,14 +6371,20 @@
6380
6371
  "relativePath": [
6381
6372
  "dist",
6382
6373
  "commands",
6383
- "flows",
6384
- "get.js"
6374
+ "messages",
6375
+ "delete.js"
6385
6376
  ]
6386
6377
  },
6387
- "flows:list": {
6378
+ "messages:get": {
6388
6379
  "aliases": [],
6389
- "args": {},
6390
- "description": "List flows",
6380
+ "args": {
6381
+ "id": {
6382
+ "description": "message ID",
6383
+ "name": "id",
6384
+ "required": true
6385
+ }
6386
+ },
6387
+ "description": "Get message by ID",
6391
6388
  "flags": {
6392
6389
  "api-key": {
6393
6390
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6450,48 +6447,11 @@
6450
6447
  "hasDynamicHelp": false,
6451
6448
  "multiple": false,
6452
6449
  "type": "option"
6453
- },
6454
- "page": {
6455
- "description": "Page number",
6456
- "name": "page",
6457
- "default": 1,
6458
- "hasDynamicHelp": false,
6459
- "multiple": false,
6460
- "type": "option"
6461
- },
6462
- "limit": {
6463
- "description": "Items per page",
6464
- "name": "limit",
6465
- "default": 20,
6466
- "hasDynamicHelp": false,
6467
- "multiple": false,
6468
- "type": "option"
6469
- },
6470
- "channel": {
6471
- "description": "Filter by channel ID",
6472
- "name": "channel",
6473
- "hasDynamicHelp": false,
6474
- "multiple": false,
6475
- "type": "option"
6476
- },
6477
- "search": {
6478
- "description": "Search in flow name or description",
6479
- "name": "search",
6480
- "hasDynamicHelp": false,
6481
- "multiple": false,
6482
- "type": "option"
6483
- },
6484
- "folder": {
6485
- "description": "Filter by folder ID",
6486
- "name": "folder",
6487
- "hasDynamicHelp": false,
6488
- "multiple": false,
6489
- "type": "option"
6490
6450
  }
6491
6451
  },
6492
6452
  "hasDynamicHelp": false,
6493
6453
  "hiddenAliases": [],
6494
- "id": "flows:list",
6454
+ "id": "messages:get",
6495
6455
  "pluginAlias": "@instantkom/cli",
6496
6456
  "pluginName": "@instantkom/cli",
6497
6457
  "pluginType": "core",
@@ -6501,20 +6461,14 @@
6501
6461
  "relativePath": [
6502
6462
  "dist",
6503
6463
  "commands",
6504
- "flows",
6505
- "list.js"
6464
+ "messages",
6465
+ "get.js"
6506
6466
  ]
6507
6467
  },
6508
- "flows:update": {
6468
+ "messages:list": {
6509
6469
  "aliases": [],
6510
- "args": {
6511
- "id": {
6512
- "description": "Flow ID",
6513
- "name": "id",
6514
- "required": true
6515
- }
6516
- },
6517
- "description": "Update a flow",
6470
+ "args": {},
6471
+ "description": "List messages",
6518
6472
  "flags": {
6519
6473
  "api-key": {
6520
6474
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6578,45 +6532,71 @@
6578
6532
  "multiple": false,
6579
6533
  "type": "option"
6580
6534
  },
6581
- "name": {
6582
- "description": "Flow name",
6583
- "name": "name",
6535
+ "page": {
6536
+ "description": "Page number",
6537
+ "name": "page",
6538
+ "default": 1,
6584
6539
  "hasDynamicHelp": false,
6585
6540
  "multiple": false,
6586
6541
  "type": "option"
6587
6542
  },
6588
- "description": {
6589
- "description": "Flow description",
6590
- "name": "description",
6543
+ "limit": {
6544
+ "description": "Items per page",
6545
+ "name": "limit",
6546
+ "default": 20,
6591
6547
  "hasDynamicHelp": false,
6592
6548
  "multiple": false,
6593
6549
  "type": "option"
6594
6550
  },
6595
- "color": {
6596
- "description": "Flow color as HEX",
6597
- "name": "color",
6551
+ "channel": {
6552
+ "description": "Filter by channel ID",
6553
+ "name": "channel",
6598
6554
  "hasDynamicHelp": false,
6599
6555
  "multiple": false,
6600
6556
  "type": "option"
6601
6557
  },
6602
- "folder": {
6603
- "description": "Folder ID",
6604
- "name": "folder",
6558
+ "recipient": {
6559
+ "description": "Filter by recipient ID",
6560
+ "name": "recipient",
6605
6561
  "hasDynamicHelp": false,
6606
6562
  "multiple": false,
6607
6563
  "type": "option"
6608
6564
  },
6609
- "data": {
6610
- "description": "Additional JSON object payload",
6611
- "name": "data",
6565
+ "direction": {
6566
+ "description": "Direction",
6567
+ "name": "direction",
6568
+ "hasDynamicHelp": false,
6569
+ "multiple": false,
6570
+ "options": [
6571
+ "s",
6572
+ "r"
6573
+ ],
6574
+ "type": "option"
6575
+ },
6576
+ "type": {
6577
+ "description": "Message type",
6578
+ "name": "type",
6579
+ "hasDynamicHelp": false,
6580
+ "multiple": false,
6581
+ "type": "option"
6582
+ },
6583
+ "search": {
6584
+ "description": "Search messages",
6585
+ "name": "search",
6612
6586
  "hasDynamicHelp": false,
6613
6587
  "multiple": false,
6614
6588
  "type": "option"
6589
+ },
6590
+ "spam": {
6591
+ "description": "Filter spam messages",
6592
+ "name": "spam",
6593
+ "allowNo": false,
6594
+ "type": "boolean"
6615
6595
  }
6616
6596
  },
6617
6597
  "hasDynamicHelp": false,
6618
6598
  "hiddenAliases": [],
6619
- "id": "flows:update",
6599
+ "id": "messages:list",
6620
6600
  "pluginAlias": "@instantkom/cli",
6621
6601
  "pluginName": "@instantkom/cli",
6622
6602
  "pluginType": "core",
@@ -6626,14 +6606,20 @@
6626
6606
  "relativePath": [
6627
6607
  "dist",
6628
6608
  "commands",
6629
- "flows",
6630
- "update.js"
6609
+ "messages",
6610
+ "list.js"
6631
6611
  ]
6632
6612
  },
6633
- "messages:bulk-spam": {
6613
+ "messages:reactions": {
6634
6614
  "aliases": [],
6635
- "args": {},
6636
- "description": "Mark or unmark multiple messages as spam",
6615
+ "args": {
6616
+ "id": {
6617
+ "description": "Message ID",
6618
+ "name": "id",
6619
+ "required": true
6620
+ }
6621
+ },
6622
+ "description": "Get reactions to a message",
6637
6623
  "flags": {
6638
6624
  "api-key": {
6639
6625
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6689,32 +6675,18 @@
6689
6675
  "multiple": false,
6690
6676
  "type": "option"
6691
6677
  },
6692
- "api-url": {
6693
- "description": "Override the API base URL (e.g. for staging)",
6694
- "helpGroup": "GLOBAL",
6695
- "name": "api-url",
6696
- "hasDynamicHelp": false,
6697
- "multiple": false,
6698
- "type": "option"
6699
- },
6700
- "ids": {
6701
- "description": "Comma-separated message IDs",
6702
- "name": "ids",
6703
- "required": true,
6704
- "hasDynamicHelp": false,
6705
- "multiple": false,
6706
- "type": "option"
6707
- },
6708
- "spam": {
6709
- "description": "Mark messages as spam",
6710
- "name": "spam",
6711
- "allowNo": true,
6712
- "type": "boolean"
6678
+ "api-url": {
6679
+ "description": "Override the API base URL (e.g. for staging)",
6680
+ "helpGroup": "GLOBAL",
6681
+ "name": "api-url",
6682
+ "hasDynamicHelp": false,
6683
+ "multiple": false,
6684
+ "type": "option"
6713
6685
  }
6714
6686
  },
6715
6687
  "hasDynamicHelp": false,
6716
6688
  "hiddenAliases": [],
6717
- "id": "messages:bulk-spam",
6689
+ "id": "messages:reactions",
6718
6690
  "pluginAlias": "@instantkom/cli",
6719
6691
  "pluginName": "@instantkom/cli",
6720
6692
  "pluginType": "core",
@@ -6725,10 +6697,10 @@
6725
6697
  "dist",
6726
6698
  "commands",
6727
6699
  "messages",
6728
- "bulk-spam.js"
6700
+ "reactions.js"
6729
6701
  ]
6730
6702
  },
6731
- "messages:create-ticket": {
6703
+ "messages:spam": {
6732
6704
  "aliases": [],
6733
6705
  "args": {
6734
6706
  "id": {
@@ -6737,7 +6709,7 @@
6737
6709
  "required": true
6738
6710
  }
6739
6711
  },
6740
- "description": "Create a ticket from a message",
6712
+ "description": "Mark or unmark a message as spam",
6741
6713
  "flags": {
6742
6714
  "api-key": {
6743
6715
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6801,31 +6773,16 @@
6801
6773
  "multiple": false,
6802
6774
  "type": "option"
6803
6775
  },
6804
- "subject": {
6805
- "description": "Ticket subject",
6806
- "name": "subject",
6807
- "hasDynamicHelp": false,
6808
- "multiple": false,
6809
- "type": "option"
6810
- },
6811
- "priority": {
6812
- "description": "Ticket priority",
6813
- "name": "priority",
6814
- "hasDynamicHelp": false,
6815
- "multiple": false,
6816
- "type": "option"
6817
- },
6818
- "data": {
6819
- "description": "Additional JSON object payload",
6820
- "name": "data",
6821
- "hasDynamicHelp": false,
6822
- "multiple": false,
6823
- "type": "option"
6776
+ "spam": {
6777
+ "description": "Mark as spam",
6778
+ "name": "spam",
6779
+ "allowNo": true,
6780
+ "type": "boolean"
6824
6781
  }
6825
6782
  },
6826
6783
  "hasDynamicHelp": false,
6827
6784
  "hiddenAliases": [],
6828
- "id": "messages:create-ticket",
6785
+ "id": "messages:spam",
6829
6786
  "pluginAlias": "@instantkom/cli",
6830
6787
  "pluginName": "@instantkom/cli",
6831
6788
  "pluginType": "core",
@@ -6836,19 +6793,13 @@
6836
6793
  "dist",
6837
6794
  "commands",
6838
6795
  "messages",
6839
- "create-ticket.js"
6796
+ "spam.js"
6840
6797
  ]
6841
6798
  },
6842
- "messages:delete": {
6799
+ "messages:unread-count": {
6843
6800
  "aliases": [],
6844
- "args": {
6845
- "id": {
6846
- "description": "message ID",
6847
- "name": "id",
6848
- "required": true
6849
- }
6850
- },
6851
- "description": "Delete message",
6801
+ "args": {},
6802
+ "description": "Get unread inbox message count",
6852
6803
  "flags": {
6853
6804
  "api-key": {
6854
6805
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -6915,7 +6866,7 @@
6915
6866
  },
6916
6867
  "hasDynamicHelp": false,
6917
6868
  "hiddenAliases": [],
6918
- "id": "messages:delete",
6869
+ "id": "messages:unread-count",
6919
6870
  "pluginAlias": "@instantkom/cli",
6920
6871
  "pluginName": "@instantkom/cli",
6921
6872
  "pluginType": "core",
@@ -6926,19 +6877,19 @@
6926
6877
  "dist",
6927
6878
  "commands",
6928
6879
  "messages",
6929
- "delete.js"
6880
+ "unread-count.js"
6930
6881
  ]
6931
6882
  },
6932
- "messages:get": {
6883
+ "messages:update": {
6933
6884
  "aliases": [],
6934
6885
  "args": {
6935
6886
  "id": {
6936
- "description": "message ID",
6887
+ "description": "Message ID",
6937
6888
  "name": "id",
6938
6889
  "required": true
6939
6890
  }
6940
6891
  },
6941
- "description": "Get message by ID",
6892
+ "description": "Update a message",
6942
6893
  "flags": {
6943
6894
  "api-key": {
6944
6895
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -7001,11 +6952,58 @@
7001
6952
  "hasDynamicHelp": false,
7002
6953
  "multiple": false,
7003
6954
  "type": "option"
6955
+ },
6956
+ "message": {
6957
+ "description": "Message content",
6958
+ "name": "message",
6959
+ "hasDynamicHelp": false,
6960
+ "multiple": false,
6961
+ "type": "option"
6962
+ },
6963
+ "scheduled-at": {
6964
+ "description": "Unix timestamp for scheduled send",
6965
+ "name": "scheduled-at",
6966
+ "hasDynamicHelp": false,
6967
+ "multiple": false,
6968
+ "type": "option"
6969
+ },
6970
+ "hidden": {
6971
+ "description": "Hide message",
6972
+ "name": "hidden",
6973
+ "allowNo": true,
6974
+ "type": "boolean"
6975
+ },
6976
+ "locked": {
6977
+ "description": "Lock message",
6978
+ "name": "locked",
6979
+ "allowNo": true,
6980
+ "type": "boolean"
6981
+ },
6982
+ "buttons": {
6983
+ "description": "Buttons JSON array",
6984
+ "name": "buttons",
6985
+ "hasDynamicHelp": false,
6986
+ "multiple": false,
6987
+ "type": "option"
6988
+ },
6989
+ "header-footer": {
6990
+ "description": "Header/footer JSON object",
6991
+ "name": "header-footer",
6992
+ "hasDynamicHelp": false,
6993
+ "multiple": false,
6994
+ "type": "option"
6995
+ },
6996
+ "data": {
6997
+ "description": "Additional JSON object payload",
6998
+ "name": "data",
6999
+ "hasDynamicHelp": false,
7000
+ "multiple": false,
7001
+ "type": "option"
7004
7002
  }
7005
7003
  },
7006
7004
  "hasDynamicHelp": false,
7007
7005
  "hiddenAliases": [],
7008
- "id": "messages:get",
7006
+ "id": "messages:update",
7009
7007
  "pluginAlias": "@instantkom/cli",
7010
7008
  "pluginName": "@instantkom/cli",
7011
7009
  "pluginType": "core",
@@ -7016,13 +7014,13 @@
7016
7014
  "dist",
7017
7015
  "commands",
7018
7016
  "messages",
7019
- "get.js"
7017
+ "update.js"
7020
7018
  ]
7021
7019
  },
7022
- "messages:list": {
7020
+ "flows:create": {
7023
7021
  "aliases": [],
7024
7022
  "args": {},
7025
- "description": "List messages",
7023
+ "description": "Create a flow",
7026
7024
  "flags": {
7027
7025
  "api-key": {
7028
7026
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -7086,71 +7084,54 @@
7086
7084
  "multiple": false,
7087
7085
  "type": "option"
7088
7086
  },
7089
- "page": {
7090
- "description": "Page number",
7091
- "name": "page",
7092
- "default": 1,
7093
- "hasDynamicHelp": false,
7094
- "multiple": false,
7095
- "type": "option"
7096
- },
7097
- "limit": {
7098
- "description": "Items per page",
7099
- "name": "limit",
7100
- "default": 20,
7087
+ "channel": {
7088
+ "description": "Channel ID",
7089
+ "name": "channel",
7090
+ "required": true,
7101
7091
  "hasDynamicHelp": false,
7102
7092
  "multiple": false,
7103
7093
  "type": "option"
7104
7094
  },
7105
- "channel": {
7106
- "description": "Filter by channel ID",
7107
- "name": "channel",
7095
+ "name": {
7096
+ "description": "Flow name",
7097
+ "name": "name",
7098
+ "required": true,
7108
7099
  "hasDynamicHelp": false,
7109
7100
  "multiple": false,
7110
7101
  "type": "option"
7111
7102
  },
7112
- "recipient": {
7113
- "description": "Filter by recipient ID",
7114
- "name": "recipient",
7103
+ "description": {
7104
+ "description": "Flow description",
7105
+ "name": "description",
7115
7106
  "hasDynamicHelp": false,
7116
7107
  "multiple": false,
7117
7108
  "type": "option"
7118
7109
  },
7119
- "direction": {
7120
- "description": "Direction",
7121
- "name": "direction",
7110
+ "color": {
7111
+ "description": "Flow color as HEX",
7112
+ "name": "color",
7122
7113
  "hasDynamicHelp": false,
7123
7114
  "multiple": false,
7124
- "options": [
7125
- "s",
7126
- "r"
7127
- ],
7128
7115
  "type": "option"
7129
7116
  },
7130
- "type": {
7131
- "description": "Message type",
7132
- "name": "type",
7117
+ "folder": {
7118
+ "description": "Folder ID",
7119
+ "name": "folder",
7133
7120
  "hasDynamicHelp": false,
7134
7121
  "multiple": false,
7135
7122
  "type": "option"
7136
7123
  },
7137
- "search": {
7138
- "description": "Search messages",
7139
- "name": "search",
7124
+ "data": {
7125
+ "description": "Additional JSON object payload",
7126
+ "name": "data",
7140
7127
  "hasDynamicHelp": false,
7141
7128
  "multiple": false,
7142
7129
  "type": "option"
7143
- },
7144
- "spam": {
7145
- "description": "Filter spam messages",
7146
- "name": "spam",
7147
- "allowNo": false,
7148
- "type": "boolean"
7149
7130
  }
7150
7131
  },
7151
7132
  "hasDynamicHelp": false,
7152
7133
  "hiddenAliases": [],
7153
- "id": "messages:list",
7134
+ "id": "flows:create",
7154
7135
  "pluginAlias": "@instantkom/cli",
7155
7136
  "pluginName": "@instantkom/cli",
7156
7137
  "pluginType": "core",
@@ -7160,20 +7141,20 @@
7160
7141
  "relativePath": [
7161
7142
  "dist",
7162
7143
  "commands",
7163
- "messages",
7164
- "list.js"
7144
+ "flows",
7145
+ "create.js"
7165
7146
  ]
7166
7147
  },
7167
- "messages:reactions": {
7148
+ "flows:delete": {
7168
7149
  "aliases": [],
7169
7150
  "args": {
7170
7151
  "id": {
7171
- "description": "Message ID",
7152
+ "description": "Flow ID",
7172
7153
  "name": "id",
7173
7154
  "required": true
7174
7155
  }
7175
7156
  },
7176
- "description": "Get reactions to a message",
7157
+ "description": "Delete a flow",
7177
7158
  "flags": {
7178
7159
  "api-key": {
7179
7160
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -7240,7 +7221,7 @@
7240
7221
  },
7241
7222
  "hasDynamicHelp": false,
7242
7223
  "hiddenAliases": [],
7243
- "id": "messages:reactions",
7224
+ "id": "flows:delete",
7244
7225
  "pluginAlias": "@instantkom/cli",
7245
7226
  "pluginName": "@instantkom/cli",
7246
7227
  "pluginType": "core",
@@ -7250,20 +7231,20 @@
7250
7231
  "relativePath": [
7251
7232
  "dist",
7252
7233
  "commands",
7253
- "messages",
7254
- "reactions.js"
7234
+ "flows",
7235
+ "delete.js"
7255
7236
  ]
7256
7237
  },
7257
- "messages:spam": {
7238
+ "flows:get": {
7258
7239
  "aliases": [],
7259
7240
  "args": {
7260
7241
  "id": {
7261
- "description": "Message ID",
7242
+ "description": "Flow ID",
7262
7243
  "name": "id",
7263
7244
  "required": true
7264
7245
  }
7265
7246
  },
7266
- "description": "Mark or unmark a message as spam",
7247
+ "description": "Get a flow by ID",
7267
7248
  "flags": {
7268
7249
  "api-key": {
7269
7250
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -7326,17 +7307,11 @@
7326
7307
  "hasDynamicHelp": false,
7327
7308
  "multiple": false,
7328
7309
  "type": "option"
7329
- },
7330
- "spam": {
7331
- "description": "Mark as spam",
7332
- "name": "spam",
7333
- "allowNo": true,
7334
- "type": "boolean"
7335
7310
  }
7336
7311
  },
7337
7312
  "hasDynamicHelp": false,
7338
7313
  "hiddenAliases": [],
7339
- "id": "messages:spam",
7314
+ "id": "flows:get",
7340
7315
  "pluginAlias": "@instantkom/cli",
7341
7316
  "pluginName": "@instantkom/cli",
7342
7317
  "pluginType": "core",
@@ -7346,14 +7321,14 @@
7346
7321
  "relativePath": [
7347
7322
  "dist",
7348
7323
  "commands",
7349
- "messages",
7350
- "spam.js"
7324
+ "flows",
7325
+ "get.js"
7351
7326
  ]
7352
7327
  },
7353
- "messages:unread-count": {
7328
+ "flows:list": {
7354
7329
  "aliases": [],
7355
7330
  "args": {},
7356
- "description": "Get unread inbox message count",
7331
+ "description": "List flows",
7357
7332
  "flags": {
7358
7333
  "api-key": {
7359
7334
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -7400,19 +7375,56 @@
7400
7375
  "allowNo": false,
7401
7376
  "type": "boolean"
7402
7377
  },
7403
- "profile": {
7404
- "description": "Named configuration profile to use",
7405
- "helpGroup": "GLOBAL",
7406
- "name": "profile",
7407
- "default": "default",
7378
+ "profile": {
7379
+ "description": "Named configuration profile to use",
7380
+ "helpGroup": "GLOBAL",
7381
+ "name": "profile",
7382
+ "default": "default",
7383
+ "hasDynamicHelp": false,
7384
+ "multiple": false,
7385
+ "type": "option"
7386
+ },
7387
+ "api-url": {
7388
+ "description": "Override the API base URL (e.g. for staging)",
7389
+ "helpGroup": "GLOBAL",
7390
+ "name": "api-url",
7391
+ "hasDynamicHelp": false,
7392
+ "multiple": false,
7393
+ "type": "option"
7394
+ },
7395
+ "page": {
7396
+ "description": "Page number",
7397
+ "name": "page",
7398
+ "default": 1,
7399
+ "hasDynamicHelp": false,
7400
+ "multiple": false,
7401
+ "type": "option"
7402
+ },
7403
+ "limit": {
7404
+ "description": "Items per page",
7405
+ "name": "limit",
7406
+ "default": 20,
7407
+ "hasDynamicHelp": false,
7408
+ "multiple": false,
7409
+ "type": "option"
7410
+ },
7411
+ "channel": {
7412
+ "description": "Filter by channel ID",
7413
+ "name": "channel",
7408
7414
  "hasDynamicHelp": false,
7409
7415
  "multiple": false,
7410
7416
  "type": "option"
7411
7417
  },
7412
- "api-url": {
7413
- "description": "Override the API base URL (e.g. for staging)",
7414
- "helpGroup": "GLOBAL",
7415
- "name": "api-url",
7418
+ "search": {
7419
+ "description": "Search in flow name or description",
7420
+ "name": "search",
7421
+ "hasDynamicHelp": false,
7422
+ "multiple": false,
7423
+ "type": "option"
7424
+ },
7425
+ "folder": {
7426
+ "description": "Filter by folder ID",
7427
+ "name": "folder",
7416
7428
  "hasDynamicHelp": false,
7417
7429
  "multiple": false,
7418
7430
  "type": "option"
@@ -7420,7 +7432,7 @@
7420
7432
  },
7421
7433
  "hasDynamicHelp": false,
7422
7434
  "hiddenAliases": [],
7423
- "id": "messages:unread-count",
7435
+ "id": "flows:list",
7424
7436
  "pluginAlias": "@instantkom/cli",
7425
7437
  "pluginName": "@instantkom/cli",
7426
7438
  "pluginType": "core",
@@ -7430,20 +7442,20 @@
7430
7442
  "relativePath": [
7431
7443
  "dist",
7432
7444
  "commands",
7433
- "messages",
7434
- "unread-count.js"
7445
+ "flows",
7446
+ "list.js"
7435
7447
  ]
7436
7448
  },
7437
- "messages:update": {
7449
+ "flows:update": {
7438
7450
  "aliases": [],
7439
7451
  "args": {
7440
7452
  "id": {
7441
- "description": "Message ID",
7453
+ "description": "Flow ID",
7442
7454
  "name": "id",
7443
7455
  "required": true
7444
7456
  }
7445
7457
  },
7446
- "description": "Update a message",
7458
+ "description": "Update a flow",
7447
7459
  "flags": {
7448
7460
  "api-key": {
7449
7461
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -7507,42 +7519,30 @@
7507
7519
  "multiple": false,
7508
7520
  "type": "option"
7509
7521
  },
7510
- "message": {
7511
- "description": "Message content",
7512
- "name": "message",
7522
+ "name": {
7523
+ "description": "Flow name",
7524
+ "name": "name",
7513
7525
  "hasDynamicHelp": false,
7514
7526
  "multiple": false,
7515
7527
  "type": "option"
7516
7528
  },
7517
- "scheduled-at": {
7518
- "description": "Unix timestamp for scheduled send",
7519
- "name": "scheduled-at",
7529
+ "description": {
7530
+ "description": "Flow description",
7531
+ "name": "description",
7520
7532
  "hasDynamicHelp": false,
7521
7533
  "multiple": false,
7522
7534
  "type": "option"
7523
7535
  },
7524
- "hidden": {
7525
- "description": "Hide message",
7526
- "name": "hidden",
7527
- "allowNo": true,
7528
- "type": "boolean"
7529
- },
7530
- "locked": {
7531
- "description": "Lock message",
7532
- "name": "locked",
7533
- "allowNo": true,
7534
- "type": "boolean"
7535
- },
7536
- "buttons": {
7537
- "description": "Buttons JSON array",
7538
- "name": "buttons",
7536
+ "color": {
7537
+ "description": "Flow color as HEX",
7538
+ "name": "color",
7539
7539
  "hasDynamicHelp": false,
7540
7540
  "multiple": false,
7541
7541
  "type": "option"
7542
7542
  },
7543
- "header-footer": {
7544
- "description": "Header/footer JSON object",
7545
- "name": "header-footer",
7543
+ "folder": {
7544
+ "description": "Folder ID",
7545
+ "name": "folder",
7546
7546
  "hasDynamicHelp": false,
7547
7547
  "multiple": false,
7548
7548
  "type": "option"
@@ -7557,7 +7557,7 @@
7557
7557
  },
7558
7558
  "hasDynamicHelp": false,
7559
7559
  "hiddenAliases": [],
7560
- "id": "messages:update",
7560
+ "id": "flows:update",
7561
7561
  "pluginAlias": "@instantkom/cli",
7562
7562
  "pluginName": "@instantkom/cli",
7563
7563
  "pluginType": "core",
@@ -7567,7 +7567,7 @@
7567
7567
  "relativePath": [
7568
7568
  "dist",
7569
7569
  "commands",
7570
- "messages",
7570
+ "flows",
7571
7571
  "update.js"
7572
7572
  ]
7573
7573
  },
@@ -9288,188 +9288,15 @@
9288
9288
  "isESM": true,
9289
9289
  "relativePath": [
9290
9290
  "dist",
9291
- "commands",
9292
- "team",
9293
- "list.js"
9294
- ]
9295
- },
9296
- "templates:create": {
9297
- "aliases": [],
9298
- "args": {},
9299
- "description": "Create a message template",
9300
- "flags": {
9301
- "api-key": {
9302
- "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
9303
- "env": "IKM_API_KEY",
9304
- "helpGroup": "GLOBAL",
9305
- "name": "api-key",
9306
- "hasDynamicHelp": false,
9307
- "multiple": false,
9308
- "type": "option"
9309
- },
9310
- "format": {
9311
- "description": "Output format: text, json, yaml, or table",
9312
- "helpGroup": "GLOBAL",
9313
- "name": "format",
9314
- "default": "text",
9315
- "hasDynamicHelp": false,
9316
- "multiple": false,
9317
- "options": [
9318
- "text",
9319
- "json",
9320
- "yaml",
9321
- "table"
9322
- ],
9323
- "type": "option"
9324
- },
9325
- "json": {
9326
- "description": "Output in JSON format (alias for --format=json)",
9327
- "helpGroup": "GLOBAL",
9328
- "name": "json",
9329
- "allowNo": false,
9330
- "type": "boolean"
9331
- },
9332
- "quiet": {
9333
- "description": "Suppress all output except errors",
9334
- "helpGroup": "GLOBAL",
9335
- "name": "quiet",
9336
- "allowNo": false,
9337
- "type": "boolean"
9338
- },
9339
- "no-color": {
9340
- "description": "Disable color output",
9341
- "helpGroup": "GLOBAL",
9342
- "name": "no-color",
9343
- "allowNo": false,
9344
- "type": "boolean"
9345
- },
9346
- "profile": {
9347
- "description": "Named configuration profile to use",
9348
- "helpGroup": "GLOBAL",
9349
- "name": "profile",
9350
- "default": "default",
9351
- "hasDynamicHelp": false,
9352
- "multiple": false,
9353
- "type": "option"
9354
- },
9355
- "api-url": {
9356
- "description": "Override the API base URL (e.g. for staging)",
9357
- "helpGroup": "GLOBAL",
9358
- "name": "api-url",
9359
- "hasDynamicHelp": false,
9360
- "multiple": false,
9361
- "type": "option"
9362
- },
9363
- "channel": {
9364
- "description": "Channel ID",
9365
- "name": "channel",
9366
- "required": true,
9367
- "hasDynamicHelp": false,
9368
- "multiple": false,
9369
- "type": "option"
9370
- },
9371
- "name": {
9372
- "description": "Template name",
9373
- "name": "name",
9374
- "required": true,
9375
- "hasDynamicHelp": false,
9376
- "multiple": false,
9377
- "type": "option"
9378
- },
9379
- "type": {
9380
- "description": "Template type",
9381
- "name": "type",
9382
- "default": "text",
9383
- "hasDynamicHelp": false,
9384
- "multiple": false,
9385
- "options": [
9386
- "text",
9387
- "image",
9388
- "video",
9389
- "document",
9390
- "audio",
9391
- "location",
9392
- "contact",
9393
- "interactive"
9394
- ],
9395
- "type": "option"
9396
- },
9397
- "message": {
9398
- "description": "Template message",
9399
- "name": "message",
9400
- "required": true,
9401
- "hasDynamicHelp": false,
9402
- "multiple": false,
9403
- "type": "option"
9404
- },
9405
- "color": {
9406
- "description": "Template color as HEX",
9407
- "name": "color",
9408
- "hasDynamicHelp": false,
9409
- "multiple": false,
9410
- "type": "option"
9411
- },
9412
- "status": {
9413
- "description": "Template is active",
9414
- "name": "status",
9415
- "allowNo": true,
9416
- "type": "boolean"
9417
- },
9418
- "whatsapp-language": {
9419
- "description": "WhatsApp template language",
9420
- "name": "whatsapp-language",
9421
- "hasDynamicHelp": false,
9422
- "multiple": false,
9423
- "type": "option"
9424
- },
9425
- "buttons": {
9426
- "description": "Buttons JSON array/object",
9427
- "name": "buttons",
9428
- "hasDynamicHelp": false,
9429
- "multiple": false,
9430
- "type": "option"
9431
- },
9432
- "header-footer": {
9433
- "description": "Header/footer JSON object",
9434
- "name": "header-footer",
9435
- "hasDynamicHelp": false,
9436
- "multiple": false,
9437
- "type": "option"
9438
- },
9439
- "data": {
9440
- "description": "Additional JSON object payload",
9441
- "name": "data",
9442
- "hasDynamicHelp": false,
9443
- "multiple": false,
9444
- "type": "option"
9445
- }
9446
- },
9447
- "hasDynamicHelp": false,
9448
- "hiddenAliases": [],
9449
- "id": "templates:create",
9450
- "pluginAlias": "@instantkom/cli",
9451
- "pluginName": "@instantkom/cli",
9452
- "pluginType": "core",
9453
- "strict": true,
9454
- "enableJsonFlag": false,
9455
- "isESM": true,
9456
- "relativePath": [
9457
- "dist",
9458
- "commands",
9459
- "templates",
9460
- "create.js"
9461
- ]
9462
- },
9463
- "templates:delete": {
9464
- "aliases": [],
9465
- "args": {
9466
- "id": {
9467
- "description": "template ID",
9468
- "name": "id",
9469
- "required": true
9470
- }
9471
- },
9472
- "description": "Delete template",
9291
+ "commands",
9292
+ "team",
9293
+ "list.js"
9294
+ ]
9295
+ },
9296
+ "tickets:create": {
9297
+ "aliases": [],
9298
+ "args": {},
9299
+ "description": "Create a ticket",
9473
9300
  "flags": {
9474
9301
  "api-key": {
9475
9302
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -9532,11 +9359,69 @@
9532
9359
  "hasDynamicHelp": false,
9533
9360
  "multiple": false,
9534
9361
  "type": "option"
9362
+ },
9363
+ "channel": {
9364
+ "description": "Channel ID",
9365
+ "name": "channel",
9366
+ "required": true,
9367
+ "hasDynamicHelp": false,
9368
+ "multiple": false,
9369
+ "type": "option"
9370
+ },
9371
+ "subject": {
9372
+ "description": "Ticket subject",
9373
+ "name": "subject",
9374
+ "required": true,
9375
+ "hasDynamicHelp": false,
9376
+ "multiple": false,
9377
+ "type": "option"
9378
+ },
9379
+ "recipient": {
9380
+ "description": "Existing recipient ID",
9381
+ "name": "recipient",
9382
+ "hasDynamicHelp": false,
9383
+ "multiple": false,
9384
+ "type": "option"
9385
+ },
9386
+ "email": {
9387
+ "description": "Customer email",
9388
+ "name": "email",
9389
+ "hasDynamicHelp": false,
9390
+ "multiple": false,
9391
+ "type": "option"
9392
+ },
9393
+ "name": {
9394
+ "description": "Customer name",
9395
+ "name": "name",
9396
+ "hasDynamicHelp": false,
9397
+ "multiple": false,
9398
+ "type": "option"
9399
+ },
9400
+ "priority": {
9401
+ "description": "Ticket priority",
9402
+ "name": "priority",
9403
+ "hasDynamicHelp": false,
9404
+ "multiple": false,
9405
+ "type": "option"
9406
+ },
9407
+ "source": {
9408
+ "description": "Ticket source",
9409
+ "name": "source",
9410
+ "hasDynamicHelp": false,
9411
+ "multiple": false,
9412
+ "type": "option"
9413
+ },
9414
+ "data": {
9415
+ "description": "Additional JSON object payload",
9416
+ "name": "data",
9417
+ "hasDynamicHelp": false,
9418
+ "multiple": false,
9419
+ "type": "option"
9535
9420
  }
9536
9421
  },
9537
9422
  "hasDynamicHelp": false,
9538
9423
  "hiddenAliases": [],
9539
- "id": "templates:delete",
9424
+ "id": "tickets:create",
9540
9425
  "pluginAlias": "@instantkom/cli",
9541
9426
  "pluginName": "@instantkom/cli",
9542
9427
  "pluginType": "core",
@@ -9546,14 +9431,20 @@
9546
9431
  "relativePath": [
9547
9432
  "dist",
9548
9433
  "commands",
9549
- "templates",
9550
- "delete.js"
9434
+ "tickets",
9435
+ "create.js"
9551
9436
  ]
9552
9437
  },
9553
- "templates:export": {
9438
+ "tickets:delete": {
9554
9439
  "aliases": [],
9555
- "args": {},
9556
- "description": "Export templates to a file",
9440
+ "args": {
9441
+ "id": {
9442
+ "description": "Ticket ID",
9443
+ "name": "id",
9444
+ "required": true
9445
+ }
9446
+ },
9447
+ "description": "Delete a ticket",
9557
9448
  "flags": {
9558
9449
  "api-key": {
9559
9450
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -9565,14 +9456,17 @@
9565
9456
  "type": "option"
9566
9457
  },
9567
9458
  "format": {
9568
- "description": "Export format",
9459
+ "description": "Output format: text, json, yaml, or table",
9460
+ "helpGroup": "GLOBAL",
9569
9461
  "name": "format",
9570
- "default": "json",
9462
+ "default": "text",
9571
9463
  "hasDynamicHelp": false,
9572
9464
  "multiple": false,
9573
9465
  "options": [
9574
- "csv",
9575
- "json"
9466
+ "text",
9467
+ "json",
9468
+ "yaml",
9469
+ "table"
9576
9470
  ],
9577
9471
  "type": "option"
9578
9472
  },
@@ -9614,17 +9508,10 @@
9614
9508
  "multiple": false,
9615
9509
  "type": "option"
9616
9510
  },
9617
- "file": {
9618
- "description": "Output file path",
9619
- "name": "file",
9620
- "required": true,
9621
- "hasDynamicHelp": false,
9622
- "multiple": false,
9623
- "type": "option"
9624
- },
9625
9511
  "channel": {
9626
- "description": "Filter by channel ID",
9512
+ "description": "Channel ID",
9627
9513
  "name": "channel",
9514
+ "required": true,
9628
9515
  "hasDynamicHelp": false,
9629
9516
  "multiple": false,
9630
9517
  "type": "option"
@@ -9632,7 +9519,7 @@
9632
9519
  },
9633
9520
  "hasDynamicHelp": false,
9634
9521
  "hiddenAliases": [],
9635
- "id": "templates:export",
9522
+ "id": "tickets:delete",
9636
9523
  "pluginAlias": "@instantkom/cli",
9637
9524
  "pluginName": "@instantkom/cli",
9638
9525
  "pluginType": "core",
@@ -9642,20 +9529,20 @@
9642
9529
  "relativePath": [
9643
9530
  "dist",
9644
9531
  "commands",
9645
- "templates",
9646
- "export.js"
9532
+ "tickets",
9533
+ "delete.js"
9647
9534
  ]
9648
9535
  },
9649
- "templates:get": {
9536
+ "tickets:get": {
9650
9537
  "aliases": [],
9651
9538
  "args": {
9652
9539
  "id": {
9653
- "description": "Template ID",
9540
+ "description": "Ticket ID",
9654
9541
  "name": "id",
9655
9542
  "required": true
9656
9543
  }
9657
9544
  },
9658
- "description": "Get a message template by ID",
9545
+ "description": "Get a ticket by ID",
9659
9546
  "flags": {
9660
9547
  "api-key": {
9661
9548
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -9718,11 +9605,19 @@
9718
9605
  "hasDynamicHelp": false,
9719
9606
  "multiple": false,
9720
9607
  "type": "option"
9608
+ },
9609
+ "channel": {
9610
+ "description": "Channel ID",
9611
+ "name": "channel",
9612
+ "required": true,
9613
+ "hasDynamicHelp": false,
9614
+ "multiple": false,
9615
+ "type": "option"
9721
9616
  }
9722
9617
  },
9723
9618
  "hasDynamicHelp": false,
9724
9619
  "hiddenAliases": [],
9725
- "id": "templates:get",
9620
+ "id": "tickets:get",
9726
9621
  "pluginAlias": "@instantkom/cli",
9727
9622
  "pluginName": "@instantkom/cli",
9728
9623
  "pluginType": "core",
@@ -9732,14 +9627,14 @@
9732
9627
  "relativePath": [
9733
9628
  "dist",
9734
9629
  "commands",
9735
- "templates",
9630
+ "tickets",
9736
9631
  "get.js"
9737
9632
  ]
9738
9633
  },
9739
- "templates:import": {
9634
+ "tickets:list": {
9740
9635
  "aliases": [],
9741
9636
  "args": {},
9742
- "description": "Import templates from JSON",
9637
+ "description": "List tickets for a channel",
9743
9638
  "flags": {
9744
9639
  "api-key": {
9745
9640
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -9803,32 +9698,34 @@
9803
9698
  "multiple": false,
9804
9699
  "type": "option"
9805
9700
  },
9806
- "file": {
9807
- "description": "JSON file path",
9808
- "name": "file",
9701
+ "channel": {
9702
+ "description": "Channel ID",
9703
+ "name": "channel",
9809
9704
  "required": true,
9810
9705
  "hasDynamicHelp": false,
9811
9706
  "multiple": false,
9812
9707
  "type": "option"
9813
9708
  },
9814
- "channel": {
9815
- "description": "Target channel ID",
9816
- "name": "channel",
9817
- "required": true,
9709
+ "limit": {
9710
+ "description": "Maximum tickets to return",
9711
+ "name": "limit",
9712
+ "default": 500,
9818
9713
  "hasDynamicHelp": false,
9819
9714
  "multiple": false,
9820
9715
  "type": "option"
9821
9716
  },
9822
- "skip-duplicates": {
9823
- "description": "Skip duplicate templates",
9824
- "name": "skip-duplicates",
9825
- "allowNo": true,
9826
- "type": "boolean"
9717
+ "offset": {
9718
+ "description": "Number of tickets to skip",
9719
+ "name": "offset",
9720
+ "default": 0,
9721
+ "hasDynamicHelp": false,
9722
+ "multiple": false,
9723
+ "type": "option"
9827
9724
  }
9828
9725
  },
9829
9726
  "hasDynamicHelp": false,
9830
9727
  "hiddenAliases": [],
9831
- "id": "templates:import",
9728
+ "id": "tickets:list",
9832
9729
  "pluginAlias": "@instantkom/cli",
9833
9730
  "pluginName": "@instantkom/cli",
9834
9731
  "pluginType": "core",
@@ -9838,14 +9735,20 @@
9838
9735
  "relativePath": [
9839
9736
  "dist",
9840
9737
  "commands",
9841
- "templates",
9842
- "import.js"
9738
+ "tickets",
9739
+ "list.js"
9843
9740
  ]
9844
9741
  },
9845
- "templates:list": {
9742
+ "tickets:reply": {
9846
9743
  "aliases": [],
9847
- "args": {},
9848
- "description": "List message templates",
9744
+ "args": {
9745
+ "id": {
9746
+ "description": "Ticket ID",
9747
+ "name": "id",
9748
+ "required": true
9749
+ }
9750
+ },
9751
+ "description": "Send a real support reply on a ticket. Delivers the message to the customer and records it in both the ticket history and the Nachrichtenprotokoll. Provide raw body text only; the ticket system auto-prepends the personalised salutation and auto-appends the localised footer for email-channel tickets. Adding your own greetings causes duplicated headers/footers.",
9849
9752
  "flags": {
9850
9753
  "api-key": {
9851
9754
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -9909,40 +9812,24 @@
9909
9812
  "multiple": false,
9910
9813
  "type": "option"
9911
9814
  },
9912
- "channel": {
9913
- "description": "Filter by channel ID",
9914
- "name": "channel",
9915
- "hasDynamicHelp": false,
9916
- "multiple": false,
9917
- "type": "option"
9918
- },
9919
- "search": {
9920
- "description": "Search templates by name or content",
9921
- "name": "search",
9922
- "hasDynamicHelp": false,
9923
- "multiple": false,
9924
- "type": "option"
9925
- },
9926
- "page": {
9927
- "description": "Page number",
9928
- "name": "page",
9929
- "default": 1,
9815
+ "message": {
9816
+ "description": "Reply body (raw text, no salutation or sign-off)",
9817
+ "name": "message",
9818
+ "required": true,
9930
9819
  "hasDynamicHelp": false,
9931
9820
  "multiple": false,
9932
9821
  "type": "option"
9933
9822
  },
9934
- "limit": {
9935
- "description": "Items per page",
9936
- "name": "limit",
9937
- "default": 20,
9938
- "hasDynamicHelp": false,
9939
- "multiple": false,
9940
- "type": "option"
9823
+ "close": {
9824
+ "description": "Close the ticket after sending the reply",
9825
+ "name": "close",
9826
+ "allowNo": false,
9827
+ "type": "boolean"
9941
9828
  }
9942
9829
  },
9943
9830
  "hasDynamicHelp": false,
9944
9831
  "hiddenAliases": [],
9945
- "id": "templates:list",
9832
+ "id": "tickets:reply",
9946
9833
  "pluginAlias": "@instantkom/cli",
9947
9834
  "pluginName": "@instantkom/cli",
9948
9835
  "pluginType": "core",
@@ -9952,20 +9839,20 @@
9952
9839
  "relativePath": [
9953
9840
  "dist",
9954
9841
  "commands",
9955
- "templates",
9956
- "list.js"
9842
+ "tickets",
9843
+ "reply.js"
9957
9844
  ]
9958
9845
  },
9959
- "templates:render": {
9846
+ "tickets:update": {
9960
9847
  "aliases": [],
9961
9848
  "args": {
9962
9849
  "id": {
9963
- "description": "Template ID",
9850
+ "description": "Ticket ID",
9964
9851
  "name": "id",
9965
9852
  "required": true
9966
9853
  }
9967
9854
  },
9968
- "description": "Render a message template locally",
9855
+ "description": "Update a ticket",
9969
9856
  "flags": {
9970
9857
  "api-key": {
9971
9858
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10012,34 +9899,76 @@
10012
9899
  "allowNo": false,
10013
9900
  "type": "boolean"
10014
9901
  },
10015
- "profile": {
10016
- "description": "Named configuration profile to use",
10017
- "helpGroup": "GLOBAL",
10018
- "name": "profile",
10019
- "default": "default",
9902
+ "profile": {
9903
+ "description": "Named configuration profile to use",
9904
+ "helpGroup": "GLOBAL",
9905
+ "name": "profile",
9906
+ "default": "default",
9907
+ "hasDynamicHelp": false,
9908
+ "multiple": false,
9909
+ "type": "option"
9910
+ },
9911
+ "api-url": {
9912
+ "description": "Override the API base URL (e.g. for staging)",
9913
+ "helpGroup": "GLOBAL",
9914
+ "name": "api-url",
9915
+ "hasDynamicHelp": false,
9916
+ "multiple": false,
9917
+ "type": "option"
9918
+ },
9919
+ "channel": {
9920
+ "description": "Channel ID",
9921
+ "name": "channel",
9922
+ "required": true,
9923
+ "hasDynamicHelp": false,
9924
+ "multiple": false,
9925
+ "type": "option"
9926
+ },
9927
+ "subject": {
9928
+ "description": "Ticket subject",
9929
+ "name": "subject",
9930
+ "hasDynamicHelp": false,
9931
+ "multiple": false,
9932
+ "type": "option"
9933
+ },
9934
+ "priority": {
9935
+ "description": "Ticket priority",
9936
+ "name": "priority",
10020
9937
  "hasDynamicHelp": false,
10021
9938
  "multiple": false,
10022
9939
  "type": "option"
10023
9940
  },
10024
- "api-url": {
10025
- "description": "Override the API base URL (e.g. for staging)",
10026
- "helpGroup": "GLOBAL",
10027
- "name": "api-url",
9941
+ "status": {
9942
+ "description": "Ticket status",
9943
+ "name": "status",
10028
9944
  "hasDynamicHelp": false,
10029
9945
  "multiple": false,
10030
9946
  "type": "option"
10031
9947
  },
10032
- "vars": {
10033
- "description": "Template variable as key=value; may be repeated",
10034
- "name": "vars",
9948
+ "assigned-to": {
9949
+ "description": "User ID to assign the ticket to (use -1 or omit to leave unchanged)",
9950
+ "name": "assigned-to",
10035
9951
  "hasDynamicHelp": false,
10036
- "multiple": true,
9952
+ "multiple": false,
9953
+ "type": "option"
9954
+ },
9955
+ "notify": {
9956
+ "description": "Trigger the legacy notification chain for transitions that have one. On --assigned-to change: fires TICKET_ASSIGN (assignee email plus optional customer reply via tickets_assign_reply_sts). On --status closed transition: fires TICKET_CLOSE (optional customer reply via tickets_close_reply_sts). Defaults to true. Use --no-notify for silent updates.",
9957
+ "name": "notify",
9958
+ "allowNo": true,
9959
+ "type": "boolean"
9960
+ },
9961
+ "data": {
9962
+ "description": "Additional JSON object payload",
9963
+ "name": "data",
9964
+ "hasDynamicHelp": false,
9965
+ "multiple": false,
10037
9966
  "type": "option"
10038
9967
  }
10039
9968
  },
10040
9969
  "hasDynamicHelp": false,
10041
9970
  "hiddenAliases": [],
10042
- "id": "templates:render",
9971
+ "id": "tickets:update",
10043
9972
  "pluginAlias": "@instantkom/cli",
10044
9973
  "pluginName": "@instantkom/cli",
10045
9974
  "pluginType": "core",
@@ -10049,20 +9978,14 @@
10049
9978
  "relativePath": [
10050
9979
  "dist",
10051
9980
  "commands",
10052
- "templates",
10053
- "render.js"
9981
+ "tickets",
9982
+ "update.js"
10054
9983
  ]
10055
9984
  },
10056
- "templates:update": {
9985
+ "templates:create": {
10057
9986
  "aliases": [],
10058
- "args": {
10059
- "id": {
10060
- "description": "Template ID",
10061
- "name": "id",
10062
- "required": true
10063
- }
10064
- },
10065
- "description": "Update a message template",
9987
+ "args": {},
9988
+ "description": "Create a message template",
10066
9989
  "flags": {
10067
9990
  "api-key": {
10068
9991
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10126,9 +10049,18 @@
10126
10049
  "multiple": false,
10127
10050
  "type": "option"
10128
10051
  },
10052
+ "channel": {
10053
+ "description": "Channel ID",
10054
+ "name": "channel",
10055
+ "required": true,
10056
+ "hasDynamicHelp": false,
10057
+ "multiple": false,
10058
+ "type": "option"
10059
+ },
10129
10060
  "name": {
10130
10061
  "description": "Template name",
10131
10062
  "name": "name",
10063
+ "required": true,
10132
10064
  "hasDynamicHelp": false,
10133
10065
  "multiple": false,
10134
10066
  "type": "option"
@@ -10136,6 +10068,7 @@
10136
10068
  "type": {
10137
10069
  "description": "Template type",
10138
10070
  "name": "type",
10071
+ "default": "text",
10139
10072
  "hasDynamicHelp": false,
10140
10073
  "multiple": false,
10141
10074
  "options": [
@@ -10153,6 +10086,7 @@
10153
10086
  "message": {
10154
10087
  "description": "Template message",
10155
10088
  "name": "message",
10089
+ "required": true,
10156
10090
  "hasDynamicHelp": false,
10157
10091
  "multiple": false,
10158
10092
  "type": "option"
@@ -10170,12 +10104,6 @@
10170
10104
  "allowNo": true,
10171
10105
  "type": "boolean"
10172
10106
  },
10173
- "remove-media": {
10174
- "description": "Remove existing media",
10175
- "name": "remove-media",
10176
- "allowNo": false,
10177
- "type": "boolean"
10178
- },
10179
10107
  "whatsapp-language": {
10180
10108
  "description": "WhatsApp template language",
10181
10109
  "name": "whatsapp-language",
@@ -10207,7 +10135,7 @@
10207
10135
  },
10208
10136
  "hasDynamicHelp": false,
10209
10137
  "hiddenAliases": [],
10210
- "id": "templates:update",
10138
+ "id": "templates:create",
10211
10139
  "pluginAlias": "@instantkom/cli",
10212
10140
  "pluginName": "@instantkom/cli",
10213
10141
  "pluginType": "core",
@@ -10218,13 +10146,19 @@
10218
10146
  "dist",
10219
10147
  "commands",
10220
10148
  "templates",
10221
- "update.js"
10149
+ "create.js"
10222
10150
  ]
10223
10151
  },
10224
- "templates:validate-import": {
10152
+ "templates:delete": {
10225
10153
  "aliases": [],
10226
- "args": {},
10227
- "description": "Validate templates import JSON",
10154
+ "args": {
10155
+ "id": {
10156
+ "description": "template ID",
10157
+ "name": "id",
10158
+ "required": true
10159
+ }
10160
+ },
10161
+ "description": "Delete template",
10228
10162
  "flags": {
10229
10163
  "api-key": {
10230
10164
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10287,27 +10221,11 @@
10287
10221
  "hasDynamicHelp": false,
10288
10222
  "multiple": false,
10289
10223
  "type": "option"
10290
- },
10291
- "file": {
10292
- "description": "JSON file path",
10293
- "name": "file",
10294
- "required": true,
10295
- "hasDynamicHelp": false,
10296
- "multiple": false,
10297
- "type": "option"
10298
- },
10299
- "channel": {
10300
- "description": "Target channel ID",
10301
- "name": "channel",
10302
- "required": true,
10303
- "hasDynamicHelp": false,
10304
- "multiple": false,
10305
- "type": "option"
10306
10224
  }
10307
10225
  },
10308
10226
  "hasDynamicHelp": false,
10309
10227
  "hiddenAliases": [],
10310
- "id": "templates:validate-import",
10228
+ "id": "templates:delete",
10311
10229
  "pluginAlias": "@instantkom/cli",
10312
10230
  "pluginName": "@instantkom/cli",
10313
10231
  "pluginType": "core",
@@ -10318,13 +10236,13 @@
10318
10236
  "dist",
10319
10237
  "commands",
10320
10238
  "templates",
10321
- "validate-import.js"
10239
+ "delete.js"
10322
10240
  ]
10323
10241
  },
10324
- "tickets:create": {
10242
+ "templates:export": {
10325
10243
  "aliases": [],
10326
10244
  "args": {},
10327
- "description": "Create a ticket",
10245
+ "description": "Export templates to a file",
10328
10246
  "flags": {
10329
10247
  "api-key": {
10330
10248
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10336,17 +10254,14 @@
10336
10254
  "type": "option"
10337
10255
  },
10338
10256
  "format": {
10339
- "description": "Output format: text, json, yaml, or table",
10340
- "helpGroup": "GLOBAL",
10257
+ "description": "Export format",
10341
10258
  "name": "format",
10342
- "default": "text",
10259
+ "default": "json",
10343
10260
  "hasDynamicHelp": false,
10344
10261
  "multiple": false,
10345
10262
  "options": [
10346
- "text",
10347
- "json",
10348
- "yaml",
10349
- "table"
10263
+ "csv",
10264
+ "json"
10350
10265
  ],
10351
10266
  "type": "option"
10352
10267
  },
@@ -10388,60 +10303,107 @@
10388
10303
  "multiple": false,
10389
10304
  "type": "option"
10390
10305
  },
10391
- "channel": {
10392
- "description": "Channel ID",
10393
- "name": "channel",
10306
+ "file": {
10307
+ "description": "Output file path",
10308
+ "name": "file",
10394
10309
  "required": true,
10395
10310
  "hasDynamicHelp": false,
10396
10311
  "multiple": false,
10397
10312
  "type": "option"
10398
10313
  },
10399
- "subject": {
10400
- "description": "Ticket subject",
10401
- "name": "subject",
10402
- "required": true,
10314
+ "channel": {
10315
+ "description": "Filter by channel ID",
10316
+ "name": "channel",
10403
10317
  "hasDynamicHelp": false,
10404
10318
  "multiple": false,
10405
10319
  "type": "option"
10406
- },
10407
- "recipient": {
10408
- "description": "Existing recipient ID",
10409
- "name": "recipient",
10320
+ }
10321
+ },
10322
+ "hasDynamicHelp": false,
10323
+ "hiddenAliases": [],
10324
+ "id": "templates:export",
10325
+ "pluginAlias": "@instantkom/cli",
10326
+ "pluginName": "@instantkom/cli",
10327
+ "pluginType": "core",
10328
+ "strict": true,
10329
+ "enableJsonFlag": false,
10330
+ "isESM": true,
10331
+ "relativePath": [
10332
+ "dist",
10333
+ "commands",
10334
+ "templates",
10335
+ "export.js"
10336
+ ]
10337
+ },
10338
+ "templates:get": {
10339
+ "aliases": [],
10340
+ "args": {
10341
+ "id": {
10342
+ "description": "Template ID",
10343
+ "name": "id",
10344
+ "required": true
10345
+ }
10346
+ },
10347
+ "description": "Get a message template by ID",
10348
+ "flags": {
10349
+ "api-key": {
10350
+ "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
10351
+ "env": "IKM_API_KEY",
10352
+ "helpGroup": "GLOBAL",
10353
+ "name": "api-key",
10410
10354
  "hasDynamicHelp": false,
10411
10355
  "multiple": false,
10412
10356
  "type": "option"
10413
10357
  },
10414
- "email": {
10415
- "description": "Customer email",
10416
- "name": "email",
10358
+ "format": {
10359
+ "description": "Output format: text, json, yaml, or table",
10360
+ "helpGroup": "GLOBAL",
10361
+ "name": "format",
10362
+ "default": "text",
10417
10363
  "hasDynamicHelp": false,
10418
10364
  "multiple": false,
10365
+ "options": [
10366
+ "text",
10367
+ "json",
10368
+ "yaml",
10369
+ "table"
10370
+ ],
10419
10371
  "type": "option"
10420
10372
  },
10421
- "name": {
10422
- "description": "Customer name",
10423
- "name": "name",
10424
- "hasDynamicHelp": false,
10425
- "multiple": false,
10426
- "type": "option"
10373
+ "json": {
10374
+ "description": "Output in JSON format (alias for --format=json)",
10375
+ "helpGroup": "GLOBAL",
10376
+ "name": "json",
10377
+ "allowNo": false,
10378
+ "type": "boolean"
10427
10379
  },
10428
- "priority": {
10429
- "description": "Ticket priority",
10430
- "name": "priority",
10431
- "hasDynamicHelp": false,
10432
- "multiple": false,
10433
- "type": "option"
10380
+ "quiet": {
10381
+ "description": "Suppress all output except errors",
10382
+ "helpGroup": "GLOBAL",
10383
+ "name": "quiet",
10384
+ "allowNo": false,
10385
+ "type": "boolean"
10434
10386
  },
10435
- "source": {
10436
- "description": "Ticket source",
10437
- "name": "source",
10387
+ "no-color": {
10388
+ "description": "Disable color output",
10389
+ "helpGroup": "GLOBAL",
10390
+ "name": "no-color",
10391
+ "allowNo": false,
10392
+ "type": "boolean"
10393
+ },
10394
+ "profile": {
10395
+ "description": "Named configuration profile to use",
10396
+ "helpGroup": "GLOBAL",
10397
+ "name": "profile",
10398
+ "default": "default",
10438
10399
  "hasDynamicHelp": false,
10439
10400
  "multiple": false,
10440
10401
  "type": "option"
10441
10402
  },
10442
- "data": {
10443
- "description": "Additional JSON object payload",
10444
- "name": "data",
10403
+ "api-url": {
10404
+ "description": "Override the API base URL (e.g. for staging)",
10405
+ "helpGroup": "GLOBAL",
10406
+ "name": "api-url",
10445
10407
  "hasDynamicHelp": false,
10446
10408
  "multiple": false,
10447
10409
  "type": "option"
@@ -10449,7 +10411,7 @@
10449
10411
  },
10450
10412
  "hasDynamicHelp": false,
10451
10413
  "hiddenAliases": [],
10452
- "id": "tickets:create",
10414
+ "id": "templates:get",
10453
10415
  "pluginAlias": "@instantkom/cli",
10454
10416
  "pluginName": "@instantkom/cli",
10455
10417
  "pluginType": "core",
@@ -10459,20 +10421,14 @@
10459
10421
  "relativePath": [
10460
10422
  "dist",
10461
10423
  "commands",
10462
- "tickets",
10463
- "create.js"
10424
+ "templates",
10425
+ "get.js"
10464
10426
  ]
10465
10427
  },
10466
- "tickets:delete": {
10428
+ "templates:import": {
10467
10429
  "aliases": [],
10468
- "args": {
10469
- "id": {
10470
- "description": "Ticket ID",
10471
- "name": "id",
10472
- "required": true
10473
- }
10474
- },
10475
- "description": "Delete a ticket",
10430
+ "args": {},
10431
+ "description": "Import templates from JSON",
10476
10432
  "flags": {
10477
10433
  "api-key": {
10478
10434
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10536,18 +10492,32 @@
10536
10492
  "multiple": false,
10537
10493
  "type": "option"
10538
10494
  },
10495
+ "file": {
10496
+ "description": "JSON file path",
10497
+ "name": "file",
10498
+ "required": true,
10499
+ "hasDynamicHelp": false,
10500
+ "multiple": false,
10501
+ "type": "option"
10502
+ },
10539
10503
  "channel": {
10540
- "description": "Channel ID",
10504
+ "description": "Target channel ID",
10541
10505
  "name": "channel",
10542
10506
  "required": true,
10543
10507
  "hasDynamicHelp": false,
10544
10508
  "multiple": false,
10545
10509
  "type": "option"
10510
+ },
10511
+ "skip-duplicates": {
10512
+ "description": "Skip duplicate templates",
10513
+ "name": "skip-duplicates",
10514
+ "allowNo": true,
10515
+ "type": "boolean"
10546
10516
  }
10547
10517
  },
10548
10518
  "hasDynamicHelp": false,
10549
10519
  "hiddenAliases": [],
10550
- "id": "tickets:delete",
10520
+ "id": "templates:import",
10551
10521
  "pluginAlias": "@instantkom/cli",
10552
10522
  "pluginName": "@instantkom/cli",
10553
10523
  "pluginType": "core",
@@ -10557,20 +10527,14 @@
10557
10527
  "relativePath": [
10558
10528
  "dist",
10559
10529
  "commands",
10560
- "tickets",
10561
- "delete.js"
10530
+ "templates",
10531
+ "import.js"
10562
10532
  ]
10563
10533
  },
10564
- "tickets:get": {
10534
+ "templates:list": {
10565
10535
  "aliases": [],
10566
- "args": {
10567
- "id": {
10568
- "description": "Ticket ID",
10569
- "name": "id",
10570
- "required": true
10571
- }
10572
- },
10573
- "description": "Get a ticket by ID",
10536
+ "args": {},
10537
+ "description": "List message templates",
10574
10538
  "flags": {
10575
10539
  "api-key": {
10576
10540
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10635,9 +10599,31 @@
10635
10599
  "type": "option"
10636
10600
  },
10637
10601
  "channel": {
10638
- "description": "Channel ID",
10602
+ "description": "Filter by channel ID",
10639
10603
  "name": "channel",
10640
- "required": true,
10604
+ "hasDynamicHelp": false,
10605
+ "multiple": false,
10606
+ "type": "option"
10607
+ },
10608
+ "search": {
10609
+ "description": "Search templates by name or content",
10610
+ "name": "search",
10611
+ "hasDynamicHelp": false,
10612
+ "multiple": false,
10613
+ "type": "option"
10614
+ },
10615
+ "page": {
10616
+ "description": "Page number",
10617
+ "name": "page",
10618
+ "default": 1,
10619
+ "hasDynamicHelp": false,
10620
+ "multiple": false,
10621
+ "type": "option"
10622
+ },
10623
+ "limit": {
10624
+ "description": "Items per page",
10625
+ "name": "limit",
10626
+ "default": 20,
10641
10627
  "hasDynamicHelp": false,
10642
10628
  "multiple": false,
10643
10629
  "type": "option"
@@ -10645,7 +10631,7 @@
10645
10631
  },
10646
10632
  "hasDynamicHelp": false,
10647
10633
  "hiddenAliases": [],
10648
- "id": "tickets:get",
10634
+ "id": "templates:list",
10649
10635
  "pluginAlias": "@instantkom/cli",
10650
10636
  "pluginName": "@instantkom/cli",
10651
10637
  "pluginType": "core",
@@ -10655,14 +10641,20 @@
10655
10641
  "relativePath": [
10656
10642
  "dist",
10657
10643
  "commands",
10658
- "tickets",
10659
- "get.js"
10644
+ "templates",
10645
+ "list.js"
10660
10646
  ]
10661
10647
  },
10662
- "tickets:list": {
10648
+ "templates:render": {
10663
10649
  "aliases": [],
10664
- "args": {},
10665
- "description": "List tickets for a channel",
10650
+ "args": {
10651
+ "id": {
10652
+ "description": "Template ID",
10653
+ "name": "id",
10654
+ "required": true
10655
+ }
10656
+ },
10657
+ "description": "Render a message template locally",
10666
10658
  "flags": {
10667
10659
  "api-key": {
10668
10660
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10726,34 +10718,17 @@
10726
10718
  "multiple": false,
10727
10719
  "type": "option"
10728
10720
  },
10729
- "channel": {
10730
- "description": "Channel ID",
10731
- "name": "channel",
10732
- "required": true,
10733
- "hasDynamicHelp": false,
10734
- "multiple": false,
10735
- "type": "option"
10736
- },
10737
- "limit": {
10738
- "description": "Maximum tickets to return",
10739
- "name": "limit",
10740
- "default": 500,
10741
- "hasDynamicHelp": false,
10742
- "multiple": false,
10743
- "type": "option"
10744
- },
10745
- "offset": {
10746
- "description": "Number of tickets to skip",
10747
- "name": "offset",
10748
- "default": 0,
10721
+ "vars": {
10722
+ "description": "Template variable as key=value; may be repeated",
10723
+ "name": "vars",
10749
10724
  "hasDynamicHelp": false,
10750
- "multiple": false,
10725
+ "multiple": true,
10751
10726
  "type": "option"
10752
10727
  }
10753
10728
  },
10754
10729
  "hasDynamicHelp": false,
10755
10730
  "hiddenAliases": [],
10756
- "id": "tickets:list",
10731
+ "id": "templates:render",
10757
10732
  "pluginAlias": "@instantkom/cli",
10758
10733
  "pluginName": "@instantkom/cli",
10759
10734
  "pluginType": "core",
@@ -10763,20 +10738,20 @@
10763
10738
  "relativePath": [
10764
10739
  "dist",
10765
10740
  "commands",
10766
- "tickets",
10767
- "list.js"
10741
+ "templates",
10742
+ "render.js"
10768
10743
  ]
10769
10744
  },
10770
- "tickets:reply": {
10745
+ "templates:update": {
10771
10746
  "aliases": [],
10772
10747
  "args": {
10773
10748
  "id": {
10774
- "description": "Ticket ID",
10749
+ "description": "Template ID",
10775
10750
  "name": "id",
10776
10751
  "required": true
10777
10752
  }
10778
10753
  },
10779
- "description": "Send a real support reply on a ticket. Delivers the message to the customer and records it in both the ticket history and the Nachrichtenprotokoll. Provide raw body text only; the ticket system auto-prepends the personalised salutation and auto-appends the localised footer for email-channel tickets. Adding your own greetings causes duplicated headers/footers.",
10754
+ "description": "Update a message template",
10780
10755
  "flags": {
10781
10756
  "api-key": {
10782
10757
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10840,24 +10815,88 @@
10840
10815
  "multiple": false,
10841
10816
  "type": "option"
10842
10817
  },
10818
+ "name": {
10819
+ "description": "Template name",
10820
+ "name": "name",
10821
+ "hasDynamicHelp": false,
10822
+ "multiple": false,
10823
+ "type": "option"
10824
+ },
10825
+ "type": {
10826
+ "description": "Template type",
10827
+ "name": "type",
10828
+ "hasDynamicHelp": false,
10829
+ "multiple": false,
10830
+ "options": [
10831
+ "text",
10832
+ "image",
10833
+ "video",
10834
+ "document",
10835
+ "audio",
10836
+ "location",
10837
+ "contact",
10838
+ "interactive"
10839
+ ],
10840
+ "type": "option"
10841
+ },
10843
10842
  "message": {
10844
- "description": "Reply body (raw text, no salutation or sign-off)",
10843
+ "description": "Template message",
10845
10844
  "name": "message",
10846
- "required": true,
10847
10845
  "hasDynamicHelp": false,
10848
10846
  "multiple": false,
10849
10847
  "type": "option"
10850
10848
  },
10851
- "close": {
10852
- "description": "Close the ticket after sending the reply",
10853
- "name": "close",
10849
+ "color": {
10850
+ "description": "Template color as HEX",
10851
+ "name": "color",
10852
+ "hasDynamicHelp": false,
10853
+ "multiple": false,
10854
+ "type": "option"
10855
+ },
10856
+ "status": {
10857
+ "description": "Template is active",
10858
+ "name": "status",
10859
+ "allowNo": true,
10860
+ "type": "boolean"
10861
+ },
10862
+ "remove-media": {
10863
+ "description": "Remove existing media",
10864
+ "name": "remove-media",
10854
10865
  "allowNo": false,
10855
10866
  "type": "boolean"
10867
+ },
10868
+ "whatsapp-language": {
10869
+ "description": "WhatsApp template language",
10870
+ "name": "whatsapp-language",
10871
+ "hasDynamicHelp": false,
10872
+ "multiple": false,
10873
+ "type": "option"
10874
+ },
10875
+ "buttons": {
10876
+ "description": "Buttons JSON array/object",
10877
+ "name": "buttons",
10878
+ "hasDynamicHelp": false,
10879
+ "multiple": false,
10880
+ "type": "option"
10881
+ },
10882
+ "header-footer": {
10883
+ "description": "Header/footer JSON object",
10884
+ "name": "header-footer",
10885
+ "hasDynamicHelp": false,
10886
+ "multiple": false,
10887
+ "type": "option"
10888
+ },
10889
+ "data": {
10890
+ "description": "Additional JSON object payload",
10891
+ "name": "data",
10892
+ "hasDynamicHelp": false,
10893
+ "multiple": false,
10894
+ "type": "option"
10856
10895
  }
10857
10896
  },
10858
10897
  "hasDynamicHelp": false,
10859
10898
  "hiddenAliases": [],
10860
- "id": "tickets:reply",
10899
+ "id": "templates:update",
10861
10900
  "pluginAlias": "@instantkom/cli",
10862
10901
  "pluginName": "@instantkom/cli",
10863
10902
  "pluginType": "core",
@@ -10867,20 +10906,14 @@
10867
10906
  "relativePath": [
10868
10907
  "dist",
10869
10908
  "commands",
10870
- "tickets",
10871
- "reply.js"
10909
+ "templates",
10910
+ "update.js"
10872
10911
  ]
10873
10912
  },
10874
- "tickets:update": {
10913
+ "templates:validate-import": {
10875
10914
  "aliases": [],
10876
- "args": {
10877
- "id": {
10878
- "description": "Ticket ID",
10879
- "name": "id",
10880
- "required": true
10881
- }
10882
- },
10883
- "description": "Update a ticket",
10915
+ "args": {},
10916
+ "description": "Validate templates import JSON",
10884
10917
  "flags": {
10885
10918
  "api-key": {
10886
10919
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -10944,51 +10977,18 @@
10944
10977
  "multiple": false,
10945
10978
  "type": "option"
10946
10979
  },
10947
- "channel": {
10948
- "description": "Channel ID",
10949
- "name": "channel",
10980
+ "file": {
10981
+ "description": "JSON file path",
10982
+ "name": "file",
10950
10983
  "required": true,
10951
10984
  "hasDynamicHelp": false,
10952
10985
  "multiple": false,
10953
10986
  "type": "option"
10954
10987
  },
10955
- "subject": {
10956
- "description": "Ticket subject",
10957
- "name": "subject",
10958
- "hasDynamicHelp": false,
10959
- "multiple": false,
10960
- "type": "option"
10961
- },
10962
- "priority": {
10963
- "description": "Ticket priority",
10964
- "name": "priority",
10965
- "hasDynamicHelp": false,
10966
- "multiple": false,
10967
- "type": "option"
10968
- },
10969
- "status": {
10970
- "description": "Ticket status",
10971
- "name": "status",
10972
- "hasDynamicHelp": false,
10973
- "multiple": false,
10974
- "type": "option"
10975
- },
10976
- "assigned-to": {
10977
- "description": "User ID to assign the ticket to (use -1 or omit to leave unchanged)",
10978
- "name": "assigned-to",
10979
- "hasDynamicHelp": false,
10980
- "multiple": false,
10981
- "type": "option"
10982
- },
10983
- "notify": {
10984
- "description": "Trigger the legacy notification chain for transitions that have one. On --assigned-to change: fires TICKET_ASSIGN (assignee email plus optional customer reply via tickets_assign_reply_sts). On --status closed transition: fires TICKET_CLOSE (optional customer reply via tickets_close_reply_sts). Defaults to true. Use --no-notify for silent updates.",
10985
- "name": "notify",
10986
- "allowNo": true,
10987
- "type": "boolean"
10988
- },
10989
- "data": {
10990
- "description": "Additional JSON object payload",
10991
- "name": "data",
10988
+ "channel": {
10989
+ "description": "Target channel ID",
10990
+ "name": "channel",
10991
+ "required": true,
10992
10992
  "hasDynamicHelp": false,
10993
10993
  "multiple": false,
10994
10994
  "type": "option"
@@ -10996,7 +10996,7 @@
10996
10996
  },
10997
10997
  "hasDynamicHelp": false,
10998
10998
  "hiddenAliases": [],
10999
- "id": "tickets:update",
10999
+ "id": "templates:validate-import",
11000
11000
  "pluginAlias": "@instantkom/cli",
11001
11001
  "pluginName": "@instantkom/cli",
11002
11002
  "pluginType": "core",
@@ -11006,8 +11006,8 @@
11006
11006
  "relativePath": [
11007
11007
  "dist",
11008
11008
  "commands",
11009
- "tickets",
11010
- "update.js"
11009
+ "templates",
11010
+ "validate-import.js"
11011
11011
  ]
11012
11012
  },
11013
11013
  "webhooks:add": {
@@ -16352,5 +16352,5 @@
16352
16352
  ]
16353
16353
  }
16354
16354
  },
16355
- "version": "3.136.0"
16355
+ "version": "3.137.0"
16356
16356
  }