@instantkom/cli 3.142.0 → 3.143.1

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.
@@ -1073,6 +1073,40 @@
1073
1073
  "reply.js"
1074
1074
  ]
1075
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",
1097
+ "pluginAlias": "@instantkom/cli",
1098
+ "pluginName": "@instantkom/cli",
1099
+ "pluginType": "core",
1100
+ "strict": true,
1101
+ "enableJsonFlag": false,
1102
+ "isESM": true,
1103
+ "relativePath": [
1104
+ "dist",
1105
+ "commands",
1106
+ "autocomplete",
1107
+ "script.js"
1108
+ ]
1109
+ },
1076
1110
  "auth:login": {
1077
1111
  "aliases": [],
1078
1112
  "args": {},
@@ -1255,40 +1289,6 @@
1255
1289
  "logout.js"
1256
1290
  ]
1257
1291
  },
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
1292
  "bots:create": {
1293
1293
  "aliases": [],
1294
1294
  "args": {},
@@ -2015,16 +2015,10 @@
2015
2015
  "update.js"
2016
2016
  ]
2017
2017
  },
2018
- "chats:get": {
2018
+ "broadcast:create": {
2019
2019
  "aliases": [],
2020
- "args": {
2021
- "id": {
2022
- "description": "chat ID",
2023
- "name": "id",
2024
- "required": true
2025
- }
2026
- },
2027
- "description": "Get chat by ID",
2020
+ "args": {},
2021
+ "description": "Create a broadcast for channels or segments",
2028
2022
  "flags": {
2029
2023
  "api-key": {
2030
2024
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2087,11 +2081,93 @@
2087
2081
  "hasDynamicHelp": false,
2088
2082
  "multiple": false,
2089
2083
  "type": "option"
2084
+ },
2085
+ "channel": {
2086
+ "description": "Channel ID target",
2087
+ "name": "channel",
2088
+ "hasDynamicHelp": false,
2089
+ "multiple": false,
2090
+ "type": "option"
2091
+ },
2092
+ "segment": {
2093
+ "description": "Segment ID within --channel",
2094
+ "name": "segment",
2095
+ "hasDynamicHelp": false,
2096
+ "multiple": false,
2097
+ "type": "option"
2098
+ },
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,
2110
+ "hasDynamicHelp": false,
2111
+ "multiple": false,
2112
+ "type": "option"
2113
+ },
2114
+ "send-at": {
2115
+ "description": "Schedule send for an ISO-8601 date-time",
2116
+ "name": "send-at",
2117
+ "hasDynamicHelp": false,
2118
+ "multiple": false,
2119
+ "type": "option"
2120
+ },
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",
2130
+ "hasDynamicHelp": false,
2131
+ "multiple": false,
2132
+ "type": "option"
2133
+ },
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",
2152
+ "hasDynamicHelp": false,
2153
+ "multiple": false,
2154
+ "options": [
2155
+ "draft",
2156
+ "scheduled",
2157
+ "sending"
2158
+ ],
2159
+ "type": "option"
2160
+ },
2161
+ "auto-approve": {
2162
+ "description": "Auto-approve broadcast when allowed by API permissions",
2163
+ "name": "auto-approve",
2164
+ "allowNo": false,
2165
+ "type": "boolean"
2090
2166
  }
2091
2167
  },
2092
2168
  "hasDynamicHelp": false,
2093
2169
  "hiddenAliases": [],
2094
- "id": "chats:get",
2170
+ "id": "broadcast:create",
2095
2171
  "pluginAlias": "@instantkom/cli",
2096
2172
  "pluginName": "@instantkom/cli",
2097
2173
  "pluginType": "core",
@@ -2101,14 +2177,20 @@
2101
2177
  "relativePath": [
2102
2178
  "dist",
2103
2179
  "commands",
2104
- "chats",
2105
- "get.js"
2180
+ "broadcast",
2181
+ "create.js"
2106
2182
  ]
2107
2183
  },
2108
- "chats:list": {
2184
+ "broadcast:delete": {
2109
2185
  "aliases": [],
2110
- "args": {},
2111
- "description": "List chats",
2186
+ "args": {
2187
+ "id": {
2188
+ "description": "broadcast ID",
2189
+ "name": "id",
2190
+ "required": true
2191
+ }
2192
+ },
2193
+ "description": "Delete broadcast",
2112
2194
  "flags": {
2113
2195
  "api-key": {
2114
2196
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2171,73 +2253,11 @@
2171
2253
  "hasDynamicHelp": false,
2172
2254
  "multiple": false,
2173
2255
  "type": "option"
2174
- },
2175
- "page": {
2176
- "description": "Page number",
2177
- "name": "page",
2178
- "default": 1,
2179
- "hasDynamicHelp": false,
2180
- "multiple": false,
2181
- "type": "option"
2182
- },
2183
- "limit": {
2184
- "description": "Items per page",
2185
- "name": "limit",
2186
- "default": 20,
2187
- "hasDynamicHelp": false,
2188
- "multiple": false,
2189
- "type": "option"
2190
- },
2191
- "channel": {
2192
- "description": "Filter by channel ID",
2193
- "name": "channel",
2194
- "hasDynamicHelp": false,
2195
- "multiple": false,
2196
- "type": "option"
2197
- },
2198
- "channels": {
2199
- "description": "Comma-separated channel IDs",
2200
- "name": "channels",
2201
- "hasDynamicHelp": false,
2202
- "multiple": false,
2203
- "type": "option"
2204
- },
2205
- "search": {
2206
- "description": "Search chats",
2207
- "name": "search",
2208
- "hasDynamicHelp": false,
2209
- "multiple": false,
2210
- "type": "option"
2211
- },
2212
- "status": {
2213
- "description": "Chat status",
2214
- "name": "status",
2215
- "hasDynamicHelp": false,
2216
- "multiple": false,
2217
- "options": [
2218
- "all",
2219
- "unread",
2220
- "read",
2221
- "archived"
2222
- ],
2223
- "type": "option"
2224
- },
2225
- "unread-only": {
2226
- "description": "Only unread chats",
2227
- "name": "unread-only",
2228
- "allowNo": false,
2229
- "type": "boolean"
2230
- },
2231
- "include-archived": {
2232
- "description": "Include archived chats",
2233
- "name": "include-archived",
2234
- "allowNo": false,
2235
- "type": "boolean"
2236
2256
  }
2237
2257
  },
2238
2258
  "hasDynamicHelp": false,
2239
2259
  "hiddenAliases": [],
2240
- "id": "chats:list",
2260
+ "id": "broadcast:delete",
2241
2261
  "pluginAlias": "@instantkom/cli",
2242
2262
  "pluginName": "@instantkom/cli",
2243
2263
  "pluginType": "core",
@@ -2247,20 +2267,20 @@
2247
2267
  "relativePath": [
2248
2268
  "dist",
2249
2269
  "commands",
2250
- "chats",
2251
- "list.js"
2270
+ "broadcast",
2271
+ "delete.js"
2252
2272
  ]
2253
2273
  },
2254
- "chats:reply": {
2274
+ "broadcast:get": {
2255
2275
  "aliases": [],
2256
2276
  "args": {
2257
2277
  "id": {
2258
- "description": "Chat ID",
2278
+ "description": "broadcast ID",
2259
2279
  "name": "id",
2260
2280
  "required": true
2261
2281
  }
2262
2282
  },
2263
- "description": "Reply in a chat",
2283
+ "description": "Get broadcast by ID",
2264
2284
  "flags": {
2265
2285
  "api-key": {
2266
2286
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2323,19 +2343,11 @@
2323
2343
  "hasDynamicHelp": false,
2324
2344
  "multiple": false,
2325
2345
  "type": "option"
2326
- },
2327
- "text": {
2328
- "description": "Reply text",
2329
- "name": "text",
2330
- "required": true,
2331
- "hasDynamicHelp": false,
2332
- "multiple": false,
2333
- "type": "option"
2334
2346
  }
2335
2347
  },
2336
2348
  "hasDynamicHelp": false,
2337
2349
  "hiddenAliases": [],
2338
- "id": "chats:reply",
2350
+ "id": "broadcast:get",
2339
2351
  "pluginAlias": "@instantkom/cli",
2340
2352
  "pluginName": "@instantkom/cli",
2341
2353
  "pluginType": "core",
@@ -2345,20 +2357,14 @@
2345
2357
  "relativePath": [
2346
2358
  "dist",
2347
2359
  "commands",
2348
- "chats",
2349
- "reply.js"
2360
+ "broadcast",
2361
+ "get.js"
2350
2362
  ]
2351
2363
  },
2352
- "config:get": {
2364
+ "broadcast:list": {
2353
2365
  "aliases": [],
2354
- "args": {
2355
- "key": {
2356
- "description": "Configuration key to retrieve",
2357
- "name": "key",
2358
- "required": true
2359
- }
2360
- },
2361
- "description": "Get a configuration value for the current profile",
2366
+ "args": {},
2367
+ "description": "List broadcasts",
2362
2368
  "flags": {
2363
2369
  "api-key": {
2364
2370
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2421,11 +2427,73 @@
2421
2427
  "hasDynamicHelp": false,
2422
2428
  "multiple": false,
2423
2429
  "type": "option"
2430
+ },
2431
+ "page": {
2432
+ "description": "Page number",
2433
+ "name": "page",
2434
+ "default": 1,
2435
+ "hasDynamicHelp": false,
2436
+ "multiple": false,
2437
+ "type": "option"
2438
+ },
2439
+ "limit": {
2440
+ "description": "Items per page",
2441
+ "name": "limit",
2442
+ "default": 20,
2443
+ "hasDynamicHelp": false,
2444
+ "multiple": false,
2445
+ "type": "option"
2446
+ },
2447
+ "channel": {
2448
+ "description": "Filter by channel ID",
2449
+ "name": "channel",
2450
+ "hasDynamicHelp": false,
2451
+ "multiple": false,
2452
+ "type": "option"
2453
+ },
2454
+ "send-status": {
2455
+ "description": "Filter by send status",
2456
+ "name": "send-status",
2457
+ "hasDynamicHelp": false,
2458
+ "multiple": false,
2459
+ "type": "option"
2460
+ },
2461
+ "type": {
2462
+ "description": "Broadcast type",
2463
+ "name": "type",
2464
+ "hasDynamicHelp": false,
2465
+ "multiple": false,
2466
+ "options": [
2467
+ "text",
2468
+ "image",
2469
+ "video",
2470
+ "audio",
2471
+ "document"
2472
+ ],
2473
+ "type": "option"
2474
+ },
2475
+ "search": {
2476
+ "description": "Search broadcasts",
2477
+ "name": "search",
2478
+ "hasDynamicHelp": false,
2479
+ "multiple": false,
2480
+ "type": "option"
2481
+ },
2482
+ "test": {
2483
+ "description": "Filter test flag: 0 or 1",
2484
+ "name": "test",
2485
+ "hasDynamicHelp": false,
2486
+ "multiple": false,
2487
+ "options": [
2488
+ "0",
2489
+ "1"
2490
+ ],
2491
+ "type": "option"
2424
2492
  }
2425
2493
  },
2426
2494
  "hasDynamicHelp": false,
2427
2495
  "hiddenAliases": [],
2428
- "id": "config:get",
2496
+ "id": "broadcast:list",
2429
2497
  "pluginAlias": "@instantkom/cli",
2430
2498
  "pluginName": "@instantkom/cli",
2431
2499
  "pluginType": "core",
@@ -2435,25 +2503,20 @@
2435
2503
  "relativePath": [
2436
2504
  "dist",
2437
2505
  "commands",
2438
- "config",
2439
- "get.js"
2506
+ "broadcast",
2507
+ "list.js"
2440
2508
  ]
2441
2509
  },
2442
- "config:set": {
2510
+ "broadcast:send": {
2443
2511
  "aliases": [],
2444
2512
  "args": {
2445
- "key": {
2446
- "description": "Configuration key to set",
2447
- "name": "key",
2448
- "required": true
2449
- },
2450
- "value": {
2451
- "description": "Value to assign",
2452
- "name": "value",
2513
+ "id": {
2514
+ "description": "Broadcast ID",
2515
+ "name": "id",
2453
2516
  "required": true
2454
2517
  }
2455
2518
  },
2456
- "description": "Set a configuration value for the current profile",
2519
+ "description": "Send a broadcast immediately",
2457
2520
  "flags": {
2458
2521
  "api-key": {
2459
2522
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2520,7 +2583,7 @@
2520
2583
  },
2521
2584
  "hasDynamicHelp": false,
2522
2585
  "hiddenAliases": [],
2523
- "id": "config:set",
2586
+ "id": "broadcast:send",
2524
2587
  "pluginAlias": "@instantkom/cli",
2525
2588
  "pluginName": "@instantkom/cli",
2526
2589
  "pluginType": "core",
@@ -2530,20 +2593,20 @@
2530
2593
  "relativePath": [
2531
2594
  "dist",
2532
2595
  "commands",
2533
- "config",
2534
- "set.js"
2596
+ "broadcast",
2597
+ "send.js"
2535
2598
  ]
2536
2599
  },
2537
- "config:unset": {
2600
+ "broadcast:status": {
2538
2601
  "aliases": [],
2539
2602
  "args": {
2540
- "key": {
2541
- "description": "Configuration key to remove",
2542
- "name": "key",
2603
+ "id": {
2604
+ "description": "Broadcast ID",
2605
+ "name": "id",
2543
2606
  "required": true
2544
2607
  }
2545
2608
  },
2546
- "description": "Remove a configuration key from the current profile",
2609
+ "description": "Show broadcast send status",
2547
2610
  "flags": {
2548
2611
  "api-key": {
2549
2612
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2610,7 +2673,7 @@
2610
2673
  },
2611
2674
  "hasDynamicHelp": false,
2612
2675
  "hiddenAliases": [],
2613
- "id": "config:unset",
2676
+ "id": "broadcast:status",
2614
2677
  "pluginAlias": "@instantkom/cli",
2615
2678
  "pluginName": "@instantkom/cli",
2616
2679
  "pluginType": "core",
@@ -2620,14 +2683,20 @@
2620
2683
  "relativePath": [
2621
2684
  "dist",
2622
2685
  "commands",
2623
- "config",
2624
- "unset.js"
2686
+ "broadcast",
2687
+ "status.js"
2625
2688
  ]
2626
2689
  },
2627
- "channels:create": {
2690
+ "broadcast:update": {
2628
2691
  "aliases": [],
2629
- "args": {},
2630
- "description": "Create a channel",
2692
+ "args": {
2693
+ "id": {
2694
+ "description": "Broadcast ID",
2695
+ "name": "id",
2696
+ "required": true
2697
+ }
2698
+ },
2699
+ "description": "Update a broadcast",
2631
2700
  "flags": {
2632
2701
  "api-key": {
2633
2702
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2691,32 +2760,61 @@
2691
2760
  "multiple": false,
2692
2761
  "type": "option"
2693
2762
  },
2694
- "name": {
2695
- "description": "Channel name",
2696
- "name": "name",
2697
- "required": true,
2763
+ "text": {
2764
+ "description": "Broadcast message text",
2765
+ "name": "text",
2698
2766
  "hasDynamicHelp": false,
2699
2767
  "multiple": false,
2700
2768
  "type": "option"
2701
2769
  },
2702
- "gateway-type": {
2703
- "description": "Gateway type ID",
2704
- "name": "gateway-type",
2705
- "required": true,
2770
+ "send-status": {
2771
+ "description": "Send status",
2772
+ "name": "send-status",
2706
2773
  "hasDynamicHelp": false,
2707
2774
  "multiple": false,
2708
2775
  "type": "option"
2709
2776
  },
2710
- "status": {
2711
- "description": "Channel lifecycle status",
2712
- "name": "status",
2777
+ "scheduled-at": {
2778
+ "description": "Unix timestamp for scheduled send",
2779
+ "name": "scheduled-at",
2713
2780
  "hasDynamicHelp": false,
2714
2781
  "multiple": false,
2715
2782
  "type": "option"
2716
2783
  },
2717
- "description": {
2718
- "description": "Channel description",
2719
- "name": "description",
2784
+ "approved": {
2785
+ "description": "Mark as approved",
2786
+ "name": "approved",
2787
+ "allowNo": false,
2788
+ "type": "boolean"
2789
+ },
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",
2805
+ "hasDynamicHelp": false,
2806
+ "multiple": false,
2807
+ "type": "option"
2808
+ },
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",
2720
2818
  "hasDynamicHelp": false,
2721
2819
  "multiple": false,
2722
2820
  "type": "option"
@@ -2731,7 +2829,7 @@
2731
2829
  },
2732
2830
  "hasDynamicHelp": false,
2733
2831
  "hiddenAliases": [],
2734
- "id": "channels:create",
2832
+ "id": "broadcast:update",
2735
2833
  "pluginAlias": "@instantkom/cli",
2736
2834
  "pluginName": "@instantkom/cli",
2737
2835
  "pluginType": "core",
@@ -2741,20 +2839,14 @@
2741
2839
  "relativePath": [
2742
2840
  "dist",
2743
2841
  "commands",
2744
- "channels",
2745
- "create.js"
2842
+ "broadcast",
2843
+ "update.js"
2746
2844
  ]
2747
2845
  },
2748
- "channels:get": {
2846
+ "channels:create": {
2749
2847
  "aliases": [],
2750
- "args": {
2751
- "id": {
2752
- "description": "Channel ID",
2753
- "name": "id",
2754
- "required": true
2755
- }
2756
- },
2757
- "description": "Get a channel by ID",
2848
+ "args": {},
2849
+ "description": "Create a channel",
2758
2850
  "flags": {
2759
2851
  "api-key": {
2760
2852
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2817,11 +2909,48 @@
2817
2909
  "hasDynamicHelp": false,
2818
2910
  "multiple": false,
2819
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"
2820
2949
  }
2821
2950
  },
2822
2951
  "hasDynamicHelp": false,
2823
2952
  "hiddenAliases": [],
2824
- "id": "channels:get",
2953
+ "id": "channels:create",
2825
2954
  "pluginAlias": "@instantkom/cli",
2826
2955
  "pluginName": "@instantkom/cli",
2827
2956
  "pluginType": "core",
@@ -2832,19 +2961,19 @@
2832
2961
  "dist",
2833
2962
  "commands",
2834
2963
  "channels",
2835
- "get.js"
2964
+ "create.js"
2836
2965
  ]
2837
2966
  },
2838
- "channels:kpis": {
2967
+ "channels:get": {
2839
2968
  "aliases": [],
2840
2969
  "args": {
2841
2970
  "id": {
2842
- "description": "Optional channel ID; omit for aggregated channel KPIs",
2971
+ "description": "Channel ID",
2843
2972
  "name": "id",
2844
- "required": false
2973
+ "required": true
2845
2974
  }
2846
2975
  },
2847
- "description": "Get channel KPIs",
2976
+ "description": "Get a channel by ID",
2848
2977
  "flags": {
2849
2978
  "api-key": {
2850
2979
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2907,18 +3036,11 @@
2907
3036
  "hasDynamicHelp": false,
2908
3037
  "multiple": false,
2909
3038
  "type": "option"
2910
- },
2911
- "period": {
2912
- "description": "KPI period",
2913
- "name": "period",
2914
- "hasDynamicHelp": false,
2915
- "multiple": false,
2916
- "type": "option"
2917
3039
  }
2918
3040
  },
2919
3041
  "hasDynamicHelp": false,
2920
3042
  "hiddenAliases": [],
2921
- "id": "channels:kpis",
3043
+ "id": "channels:get",
2922
3044
  "pluginAlias": "@instantkom/cli",
2923
3045
  "pluginName": "@instantkom/cli",
2924
3046
  "pluginType": "core",
@@ -2929,13 +3051,19 @@
2929
3051
  "dist",
2930
3052
  "commands",
2931
3053
  "channels",
2932
- "kpis.js"
3054
+ "get.js"
2933
3055
  ]
2934
3056
  },
2935
- "channels:list": {
3057
+ "channels:kpis": {
2936
3058
  "aliases": [],
2937
- "args": {},
2938
- "description": "List channels",
3059
+ "args": {
3060
+ "id": {
3061
+ "description": "Optional channel ID; omit for aggregated channel KPIs",
3062
+ "name": "id",
3063
+ "required": false
3064
+ }
3065
+ },
3066
+ "description": "Get channel KPIs",
2939
3067
  "flags": {
2940
3068
  "api-key": {
2941
3069
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -2999,39 +3127,9 @@
2999
3127
  "multiple": false,
3000
3128
  "type": "option"
3001
3129
  },
3002
- "page": {
3003
- "description": "Page number",
3004
- "name": "page",
3005
- "default": 1,
3006
- "hasDynamicHelp": false,
3007
- "multiple": false,
3008
- "type": "option"
3009
- },
3010
- "limit": {
3011
- "description": "Items per page",
3012
- "name": "limit",
3013
- "default": 20,
3014
- "hasDynamicHelp": false,
3015
- "multiple": false,
3016
- "type": "option"
3017
- },
3018
- "status": {
3019
- "description": "Filter by channel status",
3020
- "name": "status",
3021
- "hasDynamicHelp": false,
3022
- "multiple": false,
3023
- "type": "option"
3024
- },
3025
- "gateway-type": {
3026
- "description": "Filter by gateway type ID",
3027
- "name": "gateway-type",
3028
- "hasDynamicHelp": false,
3029
- "multiple": false,
3030
- "type": "option"
3031
- },
3032
- "search": {
3033
- "description": "Search by channel name",
3034
- "name": "search",
3130
+ "period": {
3131
+ "description": "KPI period",
3132
+ "name": "period",
3035
3133
  "hasDynamicHelp": false,
3036
3134
  "multiple": false,
3037
3135
  "type": "option"
@@ -3039,7 +3137,7 @@
3039
3137
  },
3040
3138
  "hasDynamicHelp": false,
3041
3139
  "hiddenAliases": [],
3042
- "id": "channels:list",
3140
+ "id": "channels:kpis",
3043
3141
  "pluginAlias": "@instantkom/cli",
3044
3142
  "pluginName": "@instantkom/cli",
3045
3143
  "pluginType": "core",
@@ -3050,19 +3148,13 @@
3050
3148
  "dist",
3051
3149
  "commands",
3052
3150
  "channels",
3053
- "list.js"
3151
+ "kpis.js"
3054
3152
  ]
3055
3153
  },
3056
- "channels:update": {
3154
+ "channels:list": {
3057
3155
  "aliases": [],
3058
- "args": {
3059
- "id": {
3060
- "description": "Channel ID",
3061
- "name": "id",
3062
- "required": true
3063
- }
3064
- },
3065
- "description": "Update a channel",
3156
+ "args": {},
3157
+ "description": "List channels",
3066
3158
  "flags": {
3067
3159
  "api-key": {
3068
3160
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3126,30 +3218,39 @@
3126
3218
  "multiple": false,
3127
3219
  "type": "option"
3128
3220
  },
3129
- "name": {
3130
- "description": "Channel name",
3131
- "name": "name",
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,
3132
3233
  "hasDynamicHelp": false,
3133
3234
  "multiple": false,
3134
3235
  "type": "option"
3135
3236
  },
3136
3237
  "status": {
3137
- "description": "Channel lifecycle status",
3238
+ "description": "Filter by channel status",
3138
3239
  "name": "status",
3139
3240
  "hasDynamicHelp": false,
3140
3241
  "multiple": false,
3141
3242
  "type": "option"
3142
3243
  },
3143
- "description": {
3144
- "description": "Channel description",
3145
- "name": "description",
3244
+ "gateway-type": {
3245
+ "description": "Filter by gateway type ID",
3246
+ "name": "gateway-type",
3146
3247
  "hasDynamicHelp": false,
3147
3248
  "multiple": false,
3148
3249
  "type": "option"
3149
3250
  },
3150
- "data": {
3151
- "description": "Additional JSON object payload",
3152
- "name": "data",
3251
+ "search": {
3252
+ "description": "Search by channel name",
3253
+ "name": "search",
3153
3254
  "hasDynamicHelp": false,
3154
3255
  "multiple": false,
3155
3256
  "type": "option"
@@ -3157,7 +3258,7 @@
3157
3258
  },
3158
3259
  "hasDynamicHelp": false,
3159
3260
  "hiddenAliases": [],
3160
- "id": "channels:update",
3261
+ "id": "channels:list",
3161
3262
  "pluginAlias": "@instantkom/cli",
3162
3263
  "pluginName": "@instantkom/cli",
3163
3264
  "pluginType": "core",
@@ -3168,13 +3269,19 @@
3168
3269
  "dist",
3169
3270
  "commands",
3170
3271
  "channels",
3171
- "update.js"
3272
+ "list.js"
3172
3273
  ]
3173
3274
  },
3174
- "contacts:create": {
3275
+ "channels:update": {
3175
3276
  "aliases": [],
3176
- "args": {},
3177
- "description": "Create a contact",
3277
+ "args": {
3278
+ "id": {
3279
+ "description": "Channel ID",
3280
+ "name": "id",
3281
+ "required": true
3282
+ }
3283
+ },
3284
+ "description": "Update a channel",
3178
3285
  "flags": {
3179
3286
  "api-key": {
3180
3287
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3238,25 +3345,23 @@
3238
3345
  "multiple": false,
3239
3346
  "type": "option"
3240
3347
  },
3241
- "channel": {
3242
- "description": "Channel ID",
3243
- "name": "channel",
3244
- "required": true,
3348
+ "name": {
3349
+ "description": "Channel name",
3350
+ "name": "name",
3245
3351
  "hasDynamicHelp": false,
3246
3352
  "multiple": false,
3247
3353
  "type": "option"
3248
3354
  },
3249
- "identifier": {
3250
- "description": "Unique contact identifier",
3251
- "name": "identifier",
3252
- "required": true,
3355
+ "status": {
3356
+ "description": "Channel lifecycle status",
3357
+ "name": "status",
3253
3358
  "hasDynamicHelp": false,
3254
3359
  "multiple": false,
3255
3360
  "type": "option"
3256
3361
  },
3257
- "name": {
3258
- "description": "Contact name",
3259
- "name": "name",
3362
+ "description": {
3363
+ "description": "Channel description",
3364
+ "name": "description",
3260
3365
  "hasDynamicHelp": false,
3261
3366
  "multiple": false,
3262
3367
  "type": "option"
@@ -3271,7 +3376,7 @@
3271
3376
  },
3272
3377
  "hasDynamicHelp": false,
3273
3378
  "hiddenAliases": [],
3274
- "id": "contacts:create",
3379
+ "id": "channels:update",
3275
3380
  "pluginAlias": "@instantkom/cli",
3276
3381
  "pluginName": "@instantkom/cli",
3277
3382
  "pluginType": "core",
@@ -3281,20 +3386,20 @@
3281
3386
  "relativePath": [
3282
3387
  "dist",
3283
3388
  "commands",
3284
- "contacts",
3285
- "create.js"
3389
+ "channels",
3390
+ "update.js"
3286
3391
  ]
3287
3392
  },
3288
- "contacts:delete": {
3393
+ "chats:get": {
3289
3394
  "aliases": [],
3290
3395
  "args": {
3291
3396
  "id": {
3292
- "description": "Contact ID",
3397
+ "description": "chat ID",
3293
3398
  "name": "id",
3294
3399
  "required": true
3295
3400
  }
3296
3401
  },
3297
- "description": "Delete a contact",
3402
+ "description": "Get chat by ID",
3298
3403
  "flags": {
3299
3404
  "api-key": {
3300
3405
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3361,7 +3466,7 @@
3361
3466
  },
3362
3467
  "hasDynamicHelp": false,
3363
3468
  "hiddenAliases": [],
3364
- "id": "contacts:delete",
3469
+ "id": "chats:get",
3365
3470
  "pluginAlias": "@instantkom/cli",
3366
3471
  "pluginName": "@instantkom/cli",
3367
3472
  "pluginType": "core",
@@ -3371,14 +3476,14 @@
3371
3476
  "relativePath": [
3372
3477
  "dist",
3373
3478
  "commands",
3374
- "contacts",
3375
- "delete.js"
3479
+ "chats",
3480
+ "get.js"
3376
3481
  ]
3377
3482
  },
3378
- "contacts:export": {
3483
+ "chats:list": {
3379
3484
  "aliases": [],
3380
3485
  "args": {},
3381
- "description": "Export contacts to CSV",
3486
+ "description": "List chats",
3382
3487
  "flags": {
3383
3488
  "api-key": {
3384
3489
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3442,10 +3547,18 @@
3442
3547
  "multiple": false,
3443
3548
  "type": "option"
3444
3549
  },
3445
- "file": {
3446
- "description": "CSV output file path",
3447
- "name": "file",
3448
- "required": true,
3550
+ "page": {
3551
+ "description": "Page number",
3552
+ "name": "page",
3553
+ "default": 1,
3554
+ "hasDynamicHelp": false,
3555
+ "multiple": false,
3556
+ "type": "option"
3557
+ },
3558
+ "limit": {
3559
+ "description": "Items per page",
3560
+ "name": "limit",
3561
+ "default": 20,
3449
3562
  "hasDynamicHelp": false,
3450
3563
  "multiple": false,
3451
3564
  "type": "option"
@@ -3457,33 +3570,49 @@
3457
3570
  "multiple": false,
3458
3571
  "type": "option"
3459
3572
  },
3460
- "search": {
3461
- "description": "Search by name or identifier",
3462
- "name": "search",
3573
+ "channels": {
3574
+ "description": "Comma-separated channel IDs",
3575
+ "name": "channels",
3463
3576
  "hasDynamicHelp": false,
3464
3577
  "multiple": false,
3465
3578
  "type": "option"
3466
3579
  },
3467
- "page": {
3468
- "description": "Page number",
3469
- "name": "page",
3470
- "default": 1,
3580
+ "search": {
3581
+ "description": "Search chats",
3582
+ "name": "search",
3471
3583
  "hasDynamicHelp": false,
3472
3584
  "multiple": false,
3473
3585
  "type": "option"
3474
3586
  },
3475
- "limit": {
3476
- "description": "Items per page",
3477
- "name": "limit",
3478
- "default": 100,
3587
+ "status": {
3588
+ "description": "Chat status",
3589
+ "name": "status",
3479
3590
  "hasDynamicHelp": false,
3480
3591
  "multiple": false,
3592
+ "options": [
3593
+ "all",
3594
+ "unread",
3595
+ "read",
3596
+ "archived"
3597
+ ],
3481
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"
3482
3611
  }
3483
3612
  },
3484
3613
  "hasDynamicHelp": false,
3485
3614
  "hiddenAliases": [],
3486
- "id": "contacts:export",
3615
+ "id": "chats:list",
3487
3616
  "pluginAlias": "@instantkom/cli",
3488
3617
  "pluginName": "@instantkom/cli",
3489
3618
  "pluginType": "core",
@@ -3493,20 +3622,20 @@
3493
3622
  "relativePath": [
3494
3623
  "dist",
3495
3624
  "commands",
3496
- "contacts",
3497
- "export.js"
3625
+ "chats",
3626
+ "list.js"
3498
3627
  ]
3499
3628
  },
3500
- "contacts:get": {
3629
+ "chats:reply": {
3501
3630
  "aliases": [],
3502
3631
  "args": {
3503
3632
  "id": {
3504
- "description": "Contact ID",
3633
+ "description": "Chat ID",
3505
3634
  "name": "id",
3506
3635
  "required": true
3507
3636
  }
3508
3637
  },
3509
- "description": "Get a contact by ID",
3638
+ "description": "Reply in a chat",
3510
3639
  "flags": {
3511
3640
  "api-key": {
3512
3641
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3569,11 +3698,19 @@
3569
3698
  "hasDynamicHelp": false,
3570
3699
  "multiple": false,
3571
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"
3572
3709
  }
3573
3710
  },
3574
3711
  "hasDynamicHelp": false,
3575
3712
  "hiddenAliases": [],
3576
- "id": "contacts:get",
3713
+ "id": "chats:reply",
3577
3714
  "pluginAlias": "@instantkom/cli",
3578
3715
  "pluginName": "@instantkom/cli",
3579
3716
  "pluginType": "core",
@@ -3583,15 +3720,21 @@
3583
3720
  "relativePath": [
3584
3721
  "dist",
3585
3722
  "commands",
3586
- "contacts",
3587
- "get.js"
3723
+ "chats",
3724
+ "reply.js"
3588
3725
  ]
3589
3726
  },
3590
- "contacts:import": {
3727
+ "config:get": {
3591
3728
  "aliases": [],
3592
- "args": {},
3593
- "description": "Import contacts from CSV",
3594
- "flags": {
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",
3737
+ "flags": {
3595
3738
  "api-key": {
3596
3739
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
3597
3740
  "env": "IKM_API_KEY",
@@ -3653,27 +3796,11 @@
3653
3796
  "hasDynamicHelp": false,
3654
3797
  "multiple": false,
3655
3798
  "type": "option"
3656
- },
3657
- "file": {
3658
- "description": "CSV file path",
3659
- "name": "file",
3660
- "required": true,
3661
- "hasDynamicHelp": false,
3662
- "multiple": false,
3663
- "type": "option"
3664
- },
3665
- "channel": {
3666
- "description": "Channel ID",
3667
- "name": "channel",
3668
- "required": true,
3669
- "hasDynamicHelp": false,
3670
- "multiple": false,
3671
- "type": "option"
3672
3799
  }
3673
3800
  },
3674
3801
  "hasDynamicHelp": false,
3675
3802
  "hiddenAliases": [],
3676
- "id": "contacts:import",
3803
+ "id": "config:get",
3677
3804
  "pluginAlias": "@instantkom/cli",
3678
3805
  "pluginName": "@instantkom/cli",
3679
3806
  "pluginType": "core",
@@ -3683,14 +3810,25 @@
3683
3810
  "relativePath": [
3684
3811
  "dist",
3685
3812
  "commands",
3686
- "contacts",
3687
- "import.js"
3813
+ "config",
3814
+ "get.js"
3688
3815
  ]
3689
3816
  },
3690
- "contacts:list": {
3817
+ "config:set": {
3691
3818
  "aliases": [],
3692
- "args": {},
3693
- "description": "List contacts",
3819
+ "args": {
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",
3828
+ "required": true
3829
+ }
3830
+ },
3831
+ "description": "Set a configuration value for the current profile",
3694
3832
  "flags": {
3695
3833
  "api-key": {
3696
3834
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3753,98 +3891,93 @@
3753
3891
  "hasDynamicHelp": false,
3754
3892
  "multiple": false,
3755
3893
  "type": "option"
3756
- },
3757
- "channel": {
3758
- "description": "Filter by channel ID",
3759
- "name": "channel",
3760
- "hasDynamicHelp": false,
3761
- "multiple": false,
3762
- "type": "option"
3763
- },
3764
- "search": {
3765
- "description": "Search by name or identifier",
3766
- "name": "search",
3767
- "hasDynamicHelp": false,
3768
- "multiple": false,
3769
- "type": "option"
3770
- },
3771
- "page": {
3772
- "description": "Page number",
3773
- "name": "page",
3774
- "default": 1,
3775
- "hasDynamicHelp": false,
3776
- "multiple": false,
3777
- "type": "option"
3778
- },
3779
- "limit": {
3780
- "description": "Items per page",
3781
- "name": "limit",
3782
- "default": 20,
3783
- "hasDynamicHelp": false,
3784
- "multiple": false,
3785
- "type": "option"
3786
- },
3787
- "optin-status": {
3788
- "description": "Filter by opt-in status",
3789
- "name": "optin-status",
3894
+ }
3895
+ },
3896
+ "hasDynamicHelp": false,
3897
+ "hiddenAliases": [],
3898
+ "id": "config:set",
3899
+ "pluginAlias": "@instantkom/cli",
3900
+ "pluginName": "@instantkom/cli",
3901
+ "pluginType": "core",
3902
+ "strict": true,
3903
+ "enableJsonFlag": false,
3904
+ "isESM": true,
3905
+ "relativePath": [
3906
+ "dist",
3907
+ "commands",
3908
+ "config",
3909
+ "set.js"
3910
+ ]
3911
+ },
3912
+ "config:unset": {
3913
+ "aliases": [],
3914
+ "args": {
3915
+ "key": {
3916
+ "description": "Configuration key to remove",
3917
+ "name": "key",
3918
+ "required": true
3919
+ }
3920
+ },
3921
+ "description": "Remove a configuration key from the current profile",
3922
+ "flags": {
3923
+ "api-key": {
3924
+ "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
3925
+ "env": "IKM_API_KEY",
3926
+ "helpGroup": "GLOBAL",
3927
+ "name": "api-key",
3790
3928
  "hasDynamicHelp": false,
3791
3929
  "multiple": false,
3792
- "options": [
3793
- "0",
3794
- "1"
3795
- ],
3796
3930
  "type": "option"
3797
3931
  },
3798
- "blocked": {
3799
- "description": "Filter by blocked status: 1 blocked, 0 not blocked",
3800
- "name": "blocked",
3932
+ "format": {
3933
+ "description": "Output format: text, json, yaml, or table",
3934
+ "helpGroup": "GLOBAL",
3935
+ "name": "format",
3936
+ "default": "text",
3801
3937
  "hasDynamicHelp": false,
3802
3938
  "multiple": false,
3803
3939
  "options": [
3804
- "0",
3805
- "1"
3940
+ "text",
3941
+ "json",
3942
+ "yaml",
3943
+ "table"
3806
3944
  ],
3807
3945
  "type": "option"
3808
3946
  },
3809
- "segment": {
3810
- "description": "Filter by segment ID",
3811
- "name": "segment",
3812
- "hasDynamicHelp": false,
3813
- "multiple": false,
3814
- "type": "option"
3947
+ "json": {
3948
+ "description": "Output in JSON format (alias for --format=json)",
3949
+ "helpGroup": "GLOBAL",
3950
+ "name": "json",
3951
+ "allowNo": false,
3952
+ "type": "boolean"
3815
3953
  },
3816
- "tags": {
3817
- "description": "Comma-separated tag IDs",
3818
- "name": "tags",
3819
- "hasDynamicHelp": false,
3820
- "multiple": false,
3821
- "type": "option"
3954
+ "quiet": {
3955
+ "description": "Suppress all output except errors",
3956
+ "helpGroup": "GLOBAL",
3957
+ "name": "quiet",
3958
+ "allowNo": false,
3959
+ "type": "boolean"
3822
3960
  },
3823
- "tag-match": {
3824
- "description": "Tag match mode",
3825
- "name": "tag-match",
3826
- "hasDynamicHelp": false,
3827
- "multiple": false,
3828
- "options": [
3829
- "any",
3830
- "all"
3831
- ],
3832
- "type": "option"
3961
+ "no-color": {
3962
+ "description": "Disable color output",
3963
+ "helpGroup": "GLOBAL",
3964
+ "name": "no-color",
3965
+ "allowNo": false,
3966
+ "type": "boolean"
3833
3967
  },
3834
- "spam": {
3835
- "description": "Filter by spam status",
3836
- "name": "spam",
3968
+ "profile": {
3969
+ "description": "Named configuration profile to use",
3970
+ "helpGroup": "GLOBAL",
3971
+ "name": "profile",
3972
+ "default": "default",
3837
3973
  "hasDynamicHelp": false,
3838
3974
  "multiple": false,
3839
- "options": [
3840
- "true",
3841
- "false"
3842
- ],
3843
3975
  "type": "option"
3844
3976
  },
3845
- "trust-level": {
3846
- "description": "Comma-separated trust levels",
3847
- "name": "trust-level",
3977
+ "api-url": {
3978
+ "description": "Override the API base URL (e.g. for staging)",
3979
+ "helpGroup": "GLOBAL",
3980
+ "name": "api-url",
3848
3981
  "hasDynamicHelp": false,
3849
3982
  "multiple": false,
3850
3983
  "type": "option"
@@ -3852,7 +3985,7 @@
3852
3985
  },
3853
3986
  "hasDynamicHelp": false,
3854
3987
  "hiddenAliases": [],
3855
- "id": "contacts:list",
3988
+ "id": "config:unset",
3856
3989
  "pluginAlias": "@instantkom/cli",
3857
3990
  "pluginName": "@instantkom/cli",
3858
3991
  "pluginType": "core",
@@ -3862,20 +3995,14 @@
3862
3995
  "relativePath": [
3863
3996
  "dist",
3864
3997
  "commands",
3865
- "contacts",
3866
- "list.js"
3998
+ "config",
3999
+ "unset.js"
3867
4000
  ]
3868
4001
  },
3869
- "contacts:update": {
4002
+ "contacts:create": {
3870
4003
  "aliases": [],
3871
- "args": {
3872
- "id": {
3873
- "description": "Contact ID",
3874
- "name": "id",
3875
- "required": true
3876
- }
3877
- },
3878
- "description": "Update a contact",
4004
+ "args": {},
4005
+ "description": "Create a contact",
3879
4006
  "flags": {
3880
4007
  "api-key": {
3881
4008
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -3939,9 +4066,18 @@
3939
4066
  "multiple": false,
3940
4067
  "type": "option"
3941
4068
  },
4069
+ "channel": {
4070
+ "description": "Channel ID",
4071
+ "name": "channel",
4072
+ "required": true,
4073
+ "hasDynamicHelp": false,
4074
+ "multiple": false,
4075
+ "type": "option"
4076
+ },
3942
4077
  "identifier": {
3943
4078
  "description": "Unique contact identifier",
3944
4079
  "name": "identifier",
4080
+ "required": true,
3945
4081
  "hasDynamicHelp": false,
3946
4082
  "multiple": false,
3947
4083
  "type": "option"
@@ -3963,7 +4099,7 @@
3963
4099
  },
3964
4100
  "hasDynamicHelp": false,
3965
4101
  "hiddenAliases": [],
3966
- "id": "contacts:update",
4102
+ "id": "contacts:create",
3967
4103
  "pluginAlias": "@instantkom/cli",
3968
4104
  "pluginName": "@instantkom/cli",
3969
4105
  "pluginType": "core",
@@ -3974,13 +4110,19 @@
3974
4110
  "dist",
3975
4111
  "commands",
3976
4112
  "contacts",
3977
- "update.js"
4113
+ "create.js"
3978
4114
  ]
3979
4115
  },
3980
- "custom-fields:bulk-delete": {
4116
+ "contacts:delete": {
3981
4117
  "aliases": [],
3982
- "args": {},
3983
- "description": "Bulk delete custom fields",
4118
+ "args": {
4119
+ "id": {
4120
+ "description": "Contact ID",
4121
+ "name": "id",
4122
+ "required": true
4123
+ }
4124
+ },
4125
+ "description": "Delete a contact",
3984
4126
  "flags": {
3985
4127
  "api-key": {
3986
4128
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4043,19 +4185,11 @@
4043
4185
  "hasDynamicHelp": false,
4044
4186
  "multiple": false,
4045
4187
  "type": "option"
4046
- },
4047
- "ids": {
4048
- "description": "Comma-separated custom field IDs",
4049
- "name": "ids",
4050
- "required": true,
4051
- "hasDynamicHelp": false,
4052
- "multiple": false,
4053
- "type": "option"
4054
4188
  }
4055
4189
  },
4056
4190
  "hasDynamicHelp": false,
4057
4191
  "hiddenAliases": [],
4058
- "id": "custom-fields:bulk-delete",
4192
+ "id": "contacts:delete",
4059
4193
  "pluginAlias": "@instantkom/cli",
4060
4194
  "pluginName": "@instantkom/cli",
4061
4195
  "pluginType": "core",
@@ -4065,14 +4199,14 @@
4065
4199
  "relativePath": [
4066
4200
  "dist",
4067
4201
  "commands",
4068
- "custom-fields",
4069
- "bulk-delete.js"
4202
+ "contacts",
4203
+ "delete.js"
4070
4204
  ]
4071
4205
  },
4072
- "custom-fields:create": {
4206
+ "contacts:export": {
4073
4207
  "aliases": [],
4074
4208
  "args": {},
4075
- "description": "Create a custom field",
4209
+ "description": "Export contacts to CSV",
4076
4210
  "flags": {
4077
4211
  "api-key": {
4078
4212
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4136,63 +4270,40 @@
4136
4270
  "multiple": false,
4137
4271
  "type": "option"
4138
4272
  },
4139
- "name": {
4140
- "description": "Field name",
4141
- "name": "name",
4142
- "required": true,
4143
- "hasDynamicHelp": false,
4144
- "multiple": false,
4145
- "type": "option"
4146
- },
4147
- "key": {
4148
- "description": "Field key",
4149
- "name": "key",
4273
+ "file": {
4274
+ "description": "CSV output file path",
4275
+ "name": "file",
4150
4276
  "required": true,
4151
4277
  "hasDynamicHelp": false,
4152
4278
  "multiple": false,
4153
4279
  "type": "option"
4154
4280
  },
4155
- "type": {
4156
- "description": "Field type",
4157
- "name": "type",
4158
- "required": true,
4281
+ "channel": {
4282
+ "description": "Filter by channel ID",
4283
+ "name": "channel",
4159
4284
  "hasDynamicHelp": false,
4160
4285
  "multiple": false,
4161
- "options": [
4162
- "text",
4163
- "number",
4164
- "date",
4165
- "dropdown",
4166
- "checkbox",
4167
- "url",
4168
- "email",
4169
- "phone"
4170
- ],
4171
4286
  "type": "option"
4172
4287
  },
4173
- "required": {
4174
- "description": "Field is required",
4175
- "name": "required",
4176
- "allowNo": false,
4177
- "type": "boolean"
4178
- },
4179
- "default": {
4180
- "description": "Default value",
4181
- "name": "default",
4288
+ "search": {
4289
+ "description": "Search by name or identifier",
4290
+ "name": "search",
4182
4291
  "hasDynamicHelp": false,
4183
4292
  "multiple": false,
4184
4293
  "type": "option"
4185
4294
  },
4186
- "options": {
4187
- "description": "Comma-separated dropdown options",
4188
- "name": "options",
4295
+ "page": {
4296
+ "description": "Page number",
4297
+ "name": "page",
4298
+ "default": 1,
4189
4299
  "hasDynamicHelp": false,
4190
4300
  "multiple": false,
4191
4301
  "type": "option"
4192
4302
  },
4193
- "data": {
4194
- "description": "Additional JSON object payload",
4195
- "name": "data",
4303
+ "limit": {
4304
+ "description": "Items per page",
4305
+ "name": "limit",
4306
+ "default": 100,
4196
4307
  "hasDynamicHelp": false,
4197
4308
  "multiple": false,
4198
4309
  "type": "option"
@@ -4200,7 +4311,7 @@
4200
4311
  },
4201
4312
  "hasDynamicHelp": false,
4202
4313
  "hiddenAliases": [],
4203
- "id": "custom-fields:create",
4314
+ "id": "contacts:export",
4204
4315
  "pluginAlias": "@instantkom/cli",
4205
4316
  "pluginName": "@instantkom/cli",
4206
4317
  "pluginType": "core",
@@ -4210,20 +4321,20 @@
4210
4321
  "relativePath": [
4211
4322
  "dist",
4212
4323
  "commands",
4213
- "custom-fields",
4214
- "create.js"
4324
+ "contacts",
4325
+ "export.js"
4215
4326
  ]
4216
4327
  },
4217
- "custom-fields:delete": {
4328
+ "contacts:get": {
4218
4329
  "aliases": [],
4219
4330
  "args": {
4220
4331
  "id": {
4221
- "description": "custom field ID",
4332
+ "description": "Contact ID",
4222
4333
  "name": "id",
4223
4334
  "required": true
4224
4335
  }
4225
4336
  },
4226
- "description": "Delete custom field",
4337
+ "description": "Get a contact by ID",
4227
4338
  "flags": {
4228
4339
  "api-key": {
4229
4340
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4290,7 +4401,7 @@
4290
4401
  },
4291
4402
  "hasDynamicHelp": false,
4292
4403
  "hiddenAliases": [],
4293
- "id": "custom-fields:delete",
4404
+ "id": "contacts:get",
4294
4405
  "pluginAlias": "@instantkom/cli",
4295
4406
  "pluginName": "@instantkom/cli",
4296
4407
  "pluginType": "core",
@@ -4300,20 +4411,14 @@
4300
4411
  "relativePath": [
4301
4412
  "dist",
4302
4413
  "commands",
4303
- "custom-fields",
4304
- "delete.js"
4414
+ "contacts",
4415
+ "get.js"
4305
4416
  ]
4306
4417
  },
4307
- "custom-fields:get": {
4418
+ "contacts:import": {
4308
4419
  "aliases": [],
4309
- "args": {
4310
- "id": {
4311
- "description": "custom field ID",
4312
- "name": "id",
4313
- "required": true
4314
- }
4315
- },
4316
- "description": "Get custom field by ID",
4420
+ "args": {},
4421
+ "description": "Import contacts from CSV",
4317
4422
  "flags": {
4318
4423
  "api-key": {
4319
4424
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4376,11 +4481,27 @@
4376
4481
  "hasDynamicHelp": false,
4377
4482
  "multiple": false,
4378
4483
  "type": "option"
4484
+ },
4485
+ "file": {
4486
+ "description": "CSV file path",
4487
+ "name": "file",
4488
+ "required": true,
4489
+ "hasDynamicHelp": false,
4490
+ "multiple": false,
4491
+ "type": "option"
4492
+ },
4493
+ "channel": {
4494
+ "description": "Channel ID",
4495
+ "name": "channel",
4496
+ "required": true,
4497
+ "hasDynamicHelp": false,
4498
+ "multiple": false,
4499
+ "type": "option"
4379
4500
  }
4380
4501
  },
4381
4502
  "hasDynamicHelp": false,
4382
4503
  "hiddenAliases": [],
4383
- "id": "custom-fields:get",
4504
+ "id": "contacts:import",
4384
4505
  "pluginAlias": "@instantkom/cli",
4385
4506
  "pluginName": "@instantkom/cli",
4386
4507
  "pluginType": "core",
@@ -4390,14 +4511,14 @@
4390
4511
  "relativePath": [
4391
4512
  "dist",
4392
4513
  "commands",
4393
- "custom-fields",
4394
- "get.js"
4514
+ "contacts",
4515
+ "import.js"
4395
4516
  ]
4396
4517
  },
4397
- "custom-fields:list": {
4518
+ "contacts:list": {
4398
4519
  "aliases": [],
4399
4520
  "args": {},
4400
- "description": "List custom fields",
4521
+ "description": "List contacts",
4401
4522
  "flags": {
4402
4523
  "api-key": {
4403
4524
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4460,11 +4581,106 @@
4460
4581
  "hasDynamicHelp": false,
4461
4582
  "multiple": false,
4462
4583
  "type": "option"
4584
+ },
4585
+ "channel": {
4586
+ "description": "Filter by channel ID",
4587
+ "name": "channel",
4588
+ "hasDynamicHelp": false,
4589
+ "multiple": false,
4590
+ "type": "option"
4591
+ },
4592
+ "search": {
4593
+ "description": "Search by name or identifier",
4594
+ "name": "search",
4595
+ "hasDynamicHelp": false,
4596
+ "multiple": false,
4597
+ "type": "option"
4598
+ },
4599
+ "page": {
4600
+ "description": "Page number",
4601
+ "name": "page",
4602
+ "default": 1,
4603
+ "hasDynamicHelp": false,
4604
+ "multiple": false,
4605
+ "type": "option"
4606
+ },
4607
+ "limit": {
4608
+ "description": "Items per page",
4609
+ "name": "limit",
4610
+ "default": 20,
4611
+ "hasDynamicHelp": false,
4612
+ "multiple": false,
4613
+ "type": "option"
4614
+ },
4615
+ "optin-status": {
4616
+ "description": "Filter by opt-in status",
4617
+ "name": "optin-status",
4618
+ "hasDynamicHelp": false,
4619
+ "multiple": false,
4620
+ "options": [
4621
+ "0",
4622
+ "1"
4623
+ ],
4624
+ "type": "option"
4625
+ },
4626
+ "blocked": {
4627
+ "description": "Filter by blocked status: 1 blocked, 0 not blocked",
4628
+ "name": "blocked",
4629
+ "hasDynamicHelp": false,
4630
+ "multiple": false,
4631
+ "options": [
4632
+ "0",
4633
+ "1"
4634
+ ],
4635
+ "type": "option"
4636
+ },
4637
+ "segment": {
4638
+ "description": "Filter by segment ID",
4639
+ "name": "segment",
4640
+ "hasDynamicHelp": false,
4641
+ "multiple": false,
4642
+ "type": "option"
4643
+ },
4644
+ "tags": {
4645
+ "description": "Comma-separated tag IDs",
4646
+ "name": "tags",
4647
+ "hasDynamicHelp": false,
4648
+ "multiple": false,
4649
+ "type": "option"
4650
+ },
4651
+ "tag-match": {
4652
+ "description": "Tag match mode",
4653
+ "name": "tag-match",
4654
+ "hasDynamicHelp": false,
4655
+ "multiple": false,
4656
+ "options": [
4657
+ "any",
4658
+ "all"
4659
+ ],
4660
+ "type": "option"
4661
+ },
4662
+ "spam": {
4663
+ "description": "Filter by spam status",
4664
+ "name": "spam",
4665
+ "hasDynamicHelp": false,
4666
+ "multiple": false,
4667
+ "options": [
4668
+ "true",
4669
+ "false"
4670
+ ],
4671
+ "type": "option"
4672
+ },
4673
+ "trust-level": {
4674
+ "description": "Comma-separated trust levels",
4675
+ "name": "trust-level",
4676
+ "hasDynamicHelp": false,
4677
+ "multiple": false,
4678
+ "type": "option"
4463
4679
  }
4464
4680
  },
4465
4681
  "hasDynamicHelp": false,
4466
4682
  "hiddenAliases": [],
4467
- "id": "custom-fields:list",
4683
+ "id": "contacts:list",
4468
4684
  "pluginAlias": "@instantkom/cli",
4469
4685
  "pluginName": "@instantkom/cli",
4470
4686
  "pluginType": "core",
@@ -4474,14 +4690,20 @@
4474
4690
  "relativePath": [
4475
4691
  "dist",
4476
4692
  "commands",
4477
- "custom-fields",
4693
+ "contacts",
4478
4694
  "list.js"
4479
4695
  ]
4480
4696
  },
4481
- "custom-fields:reorder": {
4697
+ "contacts:update": {
4482
4698
  "aliases": [],
4483
- "args": {},
4484
- "description": "Reorder custom fields",
4699
+ "args": {
4700
+ "id": {
4701
+ "description": "Contact ID",
4702
+ "name": "id",
4703
+ "required": true
4704
+ }
4705
+ },
4706
+ "description": "Update a contact",
4485
4707
  "flags": {
4486
4708
  "api-key": {
4487
4709
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4545,10 +4767,23 @@
4545
4767
  "multiple": false,
4546
4768
  "type": "option"
4547
4769
  },
4548
- "order": {
4549
- "description": "Order JSON array payload",
4550
- "name": "order",
4551
- "required": true,
4770
+ "identifier": {
4771
+ "description": "Unique contact identifier",
4772
+ "name": "identifier",
4773
+ "hasDynamicHelp": false,
4774
+ "multiple": false,
4775
+ "type": "option"
4776
+ },
4777
+ "name": {
4778
+ "description": "Contact name",
4779
+ "name": "name",
4780
+ "hasDynamicHelp": false,
4781
+ "multiple": false,
4782
+ "type": "option"
4783
+ },
4784
+ "data": {
4785
+ "description": "Additional JSON object payload",
4786
+ "name": "data",
4552
4787
  "hasDynamicHelp": false,
4553
4788
  "multiple": false,
4554
4789
  "type": "option"
@@ -4556,7 +4791,7 @@
4556
4791
  },
4557
4792
  "hasDynamicHelp": false,
4558
4793
  "hiddenAliases": [],
4559
- "id": "custom-fields:reorder",
4794
+ "id": "contacts:update",
4560
4795
  "pluginAlias": "@instantkom/cli",
4561
4796
  "pluginName": "@instantkom/cli",
4562
4797
  "pluginType": "core",
@@ -4566,20 +4801,14 @@
4566
4801
  "relativePath": [
4567
4802
  "dist",
4568
4803
  "commands",
4569
- "custom-fields",
4570
- "reorder.js"
4804
+ "contacts",
4805
+ "update.js"
4571
4806
  ]
4572
4807
  },
4573
- "custom-fields:update": {
4808
+ "custom-fields:bulk-delete": {
4574
4809
  "aliases": [],
4575
- "args": {
4576
- "id": {
4577
- "description": "Custom field ID",
4578
- "name": "id",
4579
- "required": true
4580
- }
4581
- },
4582
- "description": "Update a custom field",
4810
+ "args": {},
4811
+ "description": "Bulk delete custom fields",
4583
4812
  "flags": {
4584
4813
  "api-key": {
4585
4814
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4643,59 +4872,10 @@
4643
4872
  "multiple": false,
4644
4873
  "type": "option"
4645
4874
  },
4646
- "name": {
4647
- "description": "Field name",
4648
- "name": "name",
4649
- "hasDynamicHelp": false,
4650
- "multiple": false,
4651
- "type": "option"
4652
- },
4653
- "type": {
4654
- "description": "Field type",
4655
- "name": "type",
4656
- "hasDynamicHelp": false,
4657
- "multiple": false,
4658
- "options": [
4659
- "text",
4660
- "number",
4661
- "date",
4662
- "dropdown",
4663
- "checkbox",
4664
- "url",
4665
- "email",
4666
- "phone"
4667
- ],
4668
- "type": "option"
4669
- },
4670
- "required": {
4671
- "description": "Field is required",
4672
- "name": "required",
4673
- "allowNo": true,
4674
- "type": "boolean"
4675
- },
4676
- "status": {
4677
- "description": "Field is active",
4678
- "name": "status",
4679
- "allowNo": true,
4680
- "type": "boolean"
4681
- },
4682
- "default": {
4683
- "description": "Default value",
4684
- "name": "default",
4685
- "hasDynamicHelp": false,
4686
- "multiple": false,
4687
- "type": "option"
4688
- },
4689
- "options": {
4690
- "description": "Comma-separated dropdown options",
4691
- "name": "options",
4692
- "hasDynamicHelp": false,
4693
- "multiple": false,
4694
- "type": "option"
4695
- },
4696
- "data": {
4697
- "description": "Additional JSON object payload",
4698
- "name": "data",
4875
+ "ids": {
4876
+ "description": "Comma-separated custom field IDs",
4877
+ "name": "ids",
4878
+ "required": true,
4699
4879
  "hasDynamicHelp": false,
4700
4880
  "multiple": false,
4701
4881
  "type": "option"
@@ -4703,7 +4883,7 @@
4703
4883
  },
4704
4884
  "hasDynamicHelp": false,
4705
4885
  "hiddenAliases": [],
4706
- "id": "custom-fields:update",
4886
+ "id": "custom-fields:bulk-delete",
4707
4887
  "pluginAlias": "@instantkom/cli",
4708
4888
  "pluginName": "@instantkom/cli",
4709
4889
  "pluginType": "core",
@@ -4714,13 +4894,13 @@
4714
4894
  "dist",
4715
4895
  "commands",
4716
4896
  "custom-fields",
4717
- "update.js"
4897
+ "bulk-delete.js"
4718
4898
  ]
4719
4899
  },
4720
- "broadcast:create": {
4900
+ "custom-fields:create": {
4721
4901
  "aliases": [],
4722
4902
  "args": {},
4723
- "description": "Create a broadcast for channels or segments",
4903
+ "description": "Create a custom field",
4724
4904
  "flags": {
4725
4905
  "api-key": {
4726
4906
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -4784,174 +4964,63 @@
4784
4964
  "multiple": false,
4785
4965
  "type": "option"
4786
4966
  },
4787
- "channel": {
4788
- "description": "Channel ID target",
4789
- "name": "channel",
4790
- "hasDynamicHelp": false,
4791
- "multiple": false,
4792
- "type": "option"
4793
- },
4794
- "segment": {
4795
- "description": "Segment ID within --channel",
4796
- "name": "segment",
4797
- "hasDynamicHelp": false,
4798
- "multiple": false,
4799
- "type": "option"
4800
- },
4801
- "target": {
4802
- "description": "Target as channelId or channelId:segmentId; may be repeated",
4803
- "name": "target",
4804
- "hasDynamicHelp": false,
4805
- "multiple": true,
4806
- "type": "option"
4807
- },
4808
- "text": {
4809
- "description": "Broadcast message text",
4810
- "name": "text",
4967
+ "name": {
4968
+ "description": "Field name",
4969
+ "name": "name",
4811
4970
  "required": true,
4812
4971
  "hasDynamicHelp": false,
4813
4972
  "multiple": false,
4814
4973
  "type": "option"
4815
4974
  },
4816
- "send-at": {
4817
- "description": "Schedule send for an ISO-8601 date-time",
4818
- "name": "send-at",
4819
- "hasDynamicHelp": false,
4820
- "multiple": false,
4821
- "type": "option"
4822
- },
4823
- "dry-run": {
4824
- "description": "Validate and print the broadcast payload without mutating API calls",
4825
- "name": "dry-run",
4826
- "allowNo": false,
4827
- "type": "boolean"
4828
- },
4829
- "idempotency-key": {
4830
- "description": "Idempotency key forwarded as Idempotency-Key",
4831
- "name": "idempotency-key",
4832
- "hasDynamicHelp": false,
4833
- "multiple": false,
4834
- "type": "option"
4835
- },
4836
- "media": {
4837
- "description": "Media file path to upload",
4838
- "name": "media",
4839
- "hasDynamicHelp": false,
4840
- "multiple": true,
4841
- "type": "option"
4842
- },
4843
- "template-id": {
4844
- "description": "WhatsApp template ID",
4845
- "name": "template-id",
4846
- "hasDynamicHelp": false,
4847
- "multiple": false,
4848
- "type": "option"
4849
- },
4850
- "send-status": {
4851
- "description": "Initial broadcast send status",
4852
- "name": "send-status",
4853
- "default": "draft",
4854
- "hasDynamicHelp": false,
4855
- "multiple": false,
4856
- "options": [
4857
- "draft",
4858
- "scheduled",
4859
- "sending"
4860
- ],
4861
- "type": "option"
4862
- },
4863
- "auto-approve": {
4864
- "description": "Auto-approve broadcast when allowed by API permissions",
4865
- "name": "auto-approve",
4866
- "allowNo": false,
4867
- "type": "boolean"
4868
- }
4869
- },
4870
- "hasDynamicHelp": false,
4871
- "hiddenAliases": [],
4872
- "id": "broadcast:create",
4873
- "pluginAlias": "@instantkom/cli",
4874
- "pluginName": "@instantkom/cli",
4875
- "pluginType": "core",
4876
- "strict": true,
4877
- "enableJsonFlag": false,
4878
- "isESM": true,
4879
- "relativePath": [
4880
- "dist",
4881
- "commands",
4882
- "broadcast",
4883
- "create.js"
4884
- ]
4885
- },
4886
- "broadcast:delete": {
4887
- "aliases": [],
4888
- "args": {
4889
- "id": {
4890
- "description": "broadcast ID",
4891
- "name": "id",
4892
- "required": true
4893
- }
4894
- },
4895
- "description": "Delete broadcast",
4896
- "flags": {
4897
- "api-key": {
4898
- "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
4899
- "env": "IKM_API_KEY",
4900
- "helpGroup": "GLOBAL",
4901
- "name": "api-key",
4975
+ "key": {
4976
+ "description": "Field key",
4977
+ "name": "key",
4978
+ "required": true,
4902
4979
  "hasDynamicHelp": false,
4903
4980
  "multiple": false,
4904
4981
  "type": "option"
4905
4982
  },
4906
- "format": {
4907
- "description": "Output format: text, json, yaml, or table",
4908
- "helpGroup": "GLOBAL",
4909
- "name": "format",
4910
- "default": "text",
4983
+ "type": {
4984
+ "description": "Field type",
4985
+ "name": "type",
4986
+ "required": true,
4911
4987
  "hasDynamicHelp": false,
4912
4988
  "multiple": false,
4913
4989
  "options": [
4914
4990
  "text",
4915
- "json",
4916
- "yaml",
4917
- "table"
4991
+ "number",
4992
+ "date",
4993
+ "dropdown",
4994
+ "checkbox",
4995
+ "url",
4996
+ "email",
4997
+ "phone"
4918
4998
  ],
4919
- "type": "option"
4920
- },
4921
- "json": {
4922
- "description": "Output in JSON format (alias for --format=json)",
4923
- "helpGroup": "GLOBAL",
4924
- "name": "json",
4925
- "allowNo": false,
4926
- "type": "boolean"
4999
+ "type": "option"
4927
5000
  },
4928
- "quiet": {
4929
- "description": "Suppress all output except errors",
4930
- "helpGroup": "GLOBAL",
4931
- "name": "quiet",
5001
+ "required": {
5002
+ "description": "Field is required",
5003
+ "name": "required",
4932
5004
  "allowNo": false,
4933
5005
  "type": "boolean"
4934
5006
  },
4935
- "no-color": {
4936
- "description": "Disable color output",
4937
- "helpGroup": "GLOBAL",
4938
- "name": "no-color",
4939
- "allowNo": false,
4940
- "type": "boolean"
5007
+ "default": {
5008
+ "description": "Default value",
5009
+ "name": "default",
5010
+ "hasDynamicHelp": false,
5011
+ "multiple": false,
5012
+ "type": "option"
4941
5013
  },
4942
- "profile": {
4943
- "description": "Named configuration profile to use",
4944
- "helpGroup": "GLOBAL",
4945
- "name": "profile",
4946
- "default": "default",
5014
+ "options": {
5015
+ "description": "Comma-separated dropdown options",
5016
+ "name": "options",
4947
5017
  "hasDynamicHelp": false,
4948
5018
  "multiple": false,
4949
5019
  "type": "option"
4950
5020
  },
4951
- "api-url": {
4952
- "description": "Override the API base URL (e.g. for staging)",
4953
- "helpGroup": "GLOBAL",
4954
- "name": "api-url",
5021
+ "data": {
5022
+ "description": "Additional JSON object payload",
5023
+ "name": "data",
4955
5024
  "hasDynamicHelp": false,
4956
5025
  "multiple": false,
4957
5026
  "type": "option"
@@ -4959,7 +5028,7 @@
4959
5028
  },
4960
5029
  "hasDynamicHelp": false,
4961
5030
  "hiddenAliases": [],
4962
- "id": "broadcast:delete",
5031
+ "id": "custom-fields:create",
4963
5032
  "pluginAlias": "@instantkom/cli",
4964
5033
  "pluginName": "@instantkom/cli",
4965
5034
  "pluginType": "core",
@@ -4969,20 +5038,20 @@
4969
5038
  "relativePath": [
4970
5039
  "dist",
4971
5040
  "commands",
4972
- "broadcast",
4973
- "delete.js"
5041
+ "custom-fields",
5042
+ "create.js"
4974
5043
  ]
4975
5044
  },
4976
- "broadcast:get": {
5045
+ "custom-fields:delete": {
4977
5046
  "aliases": [],
4978
5047
  "args": {
4979
5048
  "id": {
4980
- "description": "broadcast ID",
5049
+ "description": "custom field ID",
4981
5050
  "name": "id",
4982
5051
  "required": true
4983
5052
  }
4984
5053
  },
4985
- "description": "Get broadcast by ID",
5054
+ "description": "Delete custom field",
4986
5055
  "flags": {
4987
5056
  "api-key": {
4988
5057
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -5049,7 +5118,7 @@
5049
5118
  },
5050
5119
  "hasDynamicHelp": false,
5051
5120
  "hiddenAliases": [],
5052
- "id": "broadcast:get",
5121
+ "id": "custom-fields:delete",
5053
5122
  "pluginAlias": "@instantkom/cli",
5054
5123
  "pluginName": "@instantkom/cli",
5055
5124
  "pluginType": "core",
@@ -5059,14 +5128,20 @@
5059
5128
  "relativePath": [
5060
5129
  "dist",
5061
5130
  "commands",
5062
- "broadcast",
5063
- "get.js"
5131
+ "custom-fields",
5132
+ "delete.js"
5064
5133
  ]
5065
5134
  },
5066
- "broadcast:list": {
5135
+ "custom-fields:get": {
5067
5136
  "aliases": [],
5068
- "args": {},
5069
- "description": "List broadcasts",
5137
+ "args": {
5138
+ "id": {
5139
+ "description": "custom field ID",
5140
+ "name": "id",
5141
+ "required": true
5142
+ }
5143
+ },
5144
+ "description": "Get custom field by ID",
5070
5145
  "flags": {
5071
5146
  "api-key": {
5072
5147
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -5129,73 +5204,11 @@
5129
5204
  "hasDynamicHelp": false,
5130
5205
  "multiple": false,
5131
5206
  "type": "option"
5132
- },
5133
- "page": {
5134
- "description": "Page number",
5135
- "name": "page",
5136
- "default": 1,
5137
- "hasDynamicHelp": false,
5138
- "multiple": false,
5139
- "type": "option"
5140
- },
5141
- "limit": {
5142
- "description": "Items per page",
5143
- "name": "limit",
5144
- "default": 20,
5145
- "hasDynamicHelp": false,
5146
- "multiple": false,
5147
- "type": "option"
5148
- },
5149
- "channel": {
5150
- "description": "Filter by channel ID",
5151
- "name": "channel",
5152
- "hasDynamicHelp": false,
5153
- "multiple": false,
5154
- "type": "option"
5155
- },
5156
- "send-status": {
5157
- "description": "Filter by send status",
5158
- "name": "send-status",
5159
- "hasDynamicHelp": false,
5160
- "multiple": false,
5161
- "type": "option"
5162
- },
5163
- "type": {
5164
- "description": "Broadcast type",
5165
- "name": "type",
5166
- "hasDynamicHelp": false,
5167
- "multiple": false,
5168
- "options": [
5169
- "text",
5170
- "image",
5171
- "video",
5172
- "audio",
5173
- "document"
5174
- ],
5175
- "type": "option"
5176
- },
5177
- "search": {
5178
- "description": "Search broadcasts",
5179
- "name": "search",
5180
- "hasDynamicHelp": false,
5181
- "multiple": false,
5182
- "type": "option"
5183
- },
5184
- "test": {
5185
- "description": "Filter test flag: 0 or 1",
5186
- "name": "test",
5187
- "hasDynamicHelp": false,
5188
- "multiple": false,
5189
- "options": [
5190
- "0",
5191
- "1"
5192
- ],
5193
- "type": "option"
5194
5207
  }
5195
5208
  },
5196
5209
  "hasDynamicHelp": false,
5197
5210
  "hiddenAliases": [],
5198
- "id": "broadcast:list",
5211
+ "id": "custom-fields:get",
5199
5212
  "pluginAlias": "@instantkom/cli",
5200
5213
  "pluginName": "@instantkom/cli",
5201
5214
  "pluginType": "core",
@@ -5205,20 +5218,14 @@
5205
5218
  "relativePath": [
5206
5219
  "dist",
5207
5220
  "commands",
5208
- "broadcast",
5209
- "list.js"
5221
+ "custom-fields",
5222
+ "get.js"
5210
5223
  ]
5211
5224
  },
5212
- "broadcast:send": {
5225
+ "custom-fields:list": {
5213
5226
  "aliases": [],
5214
- "args": {
5215
- "id": {
5216
- "description": "Broadcast ID",
5217
- "name": "id",
5218
- "required": true
5219
- }
5220
- },
5221
- "description": "Send a broadcast immediately",
5227
+ "args": {},
5228
+ "description": "List custom fields",
5222
5229
  "flags": {
5223
5230
  "api-key": {
5224
5231
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -5285,7 +5292,7 @@
5285
5292
  },
5286
5293
  "hasDynamicHelp": false,
5287
5294
  "hiddenAliases": [],
5288
- "id": "broadcast:send",
5295
+ "id": "custom-fields:list",
5289
5296
  "pluginAlias": "@instantkom/cli",
5290
5297
  "pluginName": "@instantkom/cli",
5291
5298
  "pluginType": "core",
@@ -5295,20 +5302,14 @@
5295
5302
  "relativePath": [
5296
5303
  "dist",
5297
5304
  "commands",
5298
- "broadcast",
5299
- "send.js"
5305
+ "custom-fields",
5306
+ "list.js"
5300
5307
  ]
5301
5308
  },
5302
- "broadcast:status": {
5309
+ "custom-fields:reorder": {
5303
5310
  "aliases": [],
5304
- "args": {
5305
- "id": {
5306
- "description": "Broadcast ID",
5307
- "name": "id",
5308
- "required": true
5309
- }
5310
- },
5311
- "description": "Show broadcast send status",
5311
+ "args": {},
5312
+ "description": "Reorder custom fields",
5312
5313
  "flags": {
5313
5314
  "api-key": {
5314
5315
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -5371,11 +5372,19 @@
5371
5372
  "hasDynamicHelp": false,
5372
5373
  "multiple": false,
5373
5374
  "type": "option"
5375
+ },
5376
+ "order": {
5377
+ "description": "Order JSON array payload",
5378
+ "name": "order",
5379
+ "required": true,
5380
+ "hasDynamicHelp": false,
5381
+ "multiple": false,
5382
+ "type": "option"
5374
5383
  }
5375
5384
  },
5376
5385
  "hasDynamicHelp": false,
5377
5386
  "hiddenAliases": [],
5378
- "id": "broadcast:status",
5387
+ "id": "custom-fields:reorder",
5379
5388
  "pluginAlias": "@instantkom/cli",
5380
5389
  "pluginName": "@instantkom/cli",
5381
5390
  "pluginType": "core",
@@ -5385,20 +5394,20 @@
5385
5394
  "relativePath": [
5386
5395
  "dist",
5387
5396
  "commands",
5388
- "broadcast",
5389
- "status.js"
5397
+ "custom-fields",
5398
+ "reorder.js"
5390
5399
  ]
5391
5400
  },
5392
- "broadcast:update": {
5401
+ "custom-fields:update": {
5393
5402
  "aliases": [],
5394
5403
  "args": {
5395
5404
  "id": {
5396
- "description": "Broadcast ID",
5405
+ "description": "Custom field ID",
5397
5406
  "name": "id",
5398
5407
  "required": true
5399
5408
  }
5400
5409
  },
5401
- "description": "Update a broadcast",
5410
+ "description": "Update a custom field",
5402
5411
  "flags": {
5403
5412
  "api-key": {
5404
5413
  "description": "API key for authentication (discouraged: prefer IKM_API_KEY env or keychain). Visible in shell history.",
@@ -5462,61 +5471,52 @@
5462
5471
  "multiple": false,
5463
5472
  "type": "option"
5464
5473
  },
5465
- "text": {
5466
- "description": "Broadcast message text",
5467
- "name": "text",
5468
- "hasDynamicHelp": false,
5469
- "multiple": false,
5470
- "type": "option"
5471
- },
5472
- "send-status": {
5473
- "description": "Send status",
5474
- "name": "send-status",
5474
+ "name": {
5475
+ "description": "Field name",
5476
+ "name": "name",
5475
5477
  "hasDynamicHelp": false,
5476
5478
  "multiple": false,
5477
5479
  "type": "option"
5478
5480
  },
5479
- "scheduled-at": {
5480
- "description": "Unix timestamp for scheduled send",
5481
- "name": "scheduled-at",
5481
+ "type": {
5482
+ "description": "Field type",
5483
+ "name": "type",
5482
5484
  "hasDynamicHelp": false,
5483
5485
  "multiple": false,
5486
+ "options": [
5487
+ "text",
5488
+ "number",
5489
+ "date",
5490
+ "dropdown",
5491
+ "checkbox",
5492
+ "url",
5493
+ "email",
5494
+ "phone"
5495
+ ],
5484
5496
  "type": "option"
5485
5497
  },
5486
- "approved": {
5487
- "description": "Mark as approved",
5488
- "name": "approved",
5489
- "allowNo": false,
5490
- "type": "boolean"
5491
- },
5492
- "locked": {
5493
- "description": "Mark as locked",
5494
- "name": "locked",
5495
- "allowNo": false,
5498
+ "required": {
5499
+ "description": "Field is required",
5500
+ "name": "required",
5501
+ "allowNo": true,
5496
5502
  "type": "boolean"
5497
5503
  },
5498
- "test": {
5499
- "description": "Mark as test broadcast",
5500
- "name": "test",
5501
- "allowNo": false,
5504
+ "status": {
5505
+ "description": "Field is active",
5506
+ "name": "status",
5507
+ "allowNo": true,
5502
5508
  "type": "boolean"
5503
5509
  },
5504
- "template-id": {
5505
- "description": "Template ID",
5506
- "name": "template-id",
5510
+ "default": {
5511
+ "description": "Default value",
5512
+ "name": "default",
5507
5513
  "hasDynamicHelp": false,
5508
5514
  "multiple": false,
5509
5515
  "type": "option"
5510
5516
  },
5511
- "remove-media": {
5512
- "description": "Remove existing media",
5513
- "name": "remove-media",
5514
- "allowNo": false,
5515
- "type": "boolean"
5516
- },
5517
- "header-footer": {
5518
- "description": "Header/footer JSON array",
5519
- "name": "header-footer",
5517
+ "options": {
5518
+ "description": "Comma-separated dropdown options",
5519
+ "name": "options",
5520
5520
  "hasDynamicHelp": false,
5521
5521
  "multiple": false,
5522
5522
  "type": "option"
@@ -5531,7 +5531,7 @@
5531
5531
  },
5532
5532
  "hasDynamicHelp": false,
5533
5533
  "hiddenAliases": [],
5534
- "id": "broadcast:update",
5534
+ "id": "custom-fields:update",
5535
5535
  "pluginAlias": "@instantkom/cli",
5536
5536
  "pluginName": "@instantkom/cli",
5537
5537
  "pluginType": "core",
@@ -5541,7 +5541,7 @@
5541
5541
  "relativePath": [
5542
5542
  "dist",
5543
5543
  "commands",
5544
- "broadcast",
5544
+ "custom-fields",
5545
5545
  "update.js"
5546
5546
  ]
5547
5547
  },
@@ -16352,5 +16352,5 @@
16352
16352
  ]
16353
16353
  }
16354
16354
  },
16355
- "version": "3.142.0"
16355
+ "version": "3.143.1"
16356
16356
  }