@iterable/cli 0.1.6 → 0.2.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.
package/COMMANDS.md CHANGED
@@ -1,12 +1,12 @@
1
- # Available Commands (109 commands)
1
+ # Available Commands (109)
2
2
 
3
3
  All commands follow the pattern: `iterable <category> <command> [options]`
4
4
 
5
5
  Every command also accepts `--json <data>` for raw JSON input and `--help` for usage details.
6
6
 
7
- ## campaigns (14 commands)
7
+ ## campaigns (14)
8
8
 
9
- ### campaigns abort
9
+ ### abort
10
10
 
11
11
  Abort a campaign that is currently running
12
12
 
@@ -18,7 +18,7 @@ iterable campaigns abort <campaignId>
18
18
  |--------|------|----------|-------------|
19
19
  | `campaignId` | number | **yes** | Campaign ID to abort |
20
20
 
21
- ### campaigns activate
21
+ ### activate
22
22
 
23
23
  Activate a triggered campaign
24
24
 
@@ -30,7 +30,7 @@ iterable campaigns activate <campaignId>
30
30
  |--------|------|----------|-------------|
31
31
  | `campaignId` | number | **yes** | Triggered campaign ID to activate |
32
32
 
33
- ### campaigns archive
33
+ ### archive
34
34
 
35
35
  Archive one or more campaigns. Scheduled/recurring campaigns will be cancelled, running campaigns will be aborted.
36
36
 
@@ -42,7 +42,7 @@ iterable campaigns archive <campaignIds...>
42
42
  |--------|------|----------|-------------|
43
43
  | `campaignIds` | number[] | **yes** | Campaign IDs to archive |
44
44
 
45
- ### campaigns cancel
45
+ ### cancel
46
46
 
47
47
  Cancel a scheduled or recurring campaign
48
48
 
@@ -54,7 +54,7 @@ iterable campaigns cancel <campaignId>
54
54
  |--------|------|----------|-------------|
55
55
  | `campaignId` | number | **yes** | Campaign ID to cancel |
56
56
 
57
- ### campaigns create-blast
57
+ ### create-blast
58
58
 
59
59
  Create a new blast campaign from an existing template. The campaign is created without being scheduled. Use schedule to schedule it for delivery.
60
60
 
@@ -70,7 +70,7 @@ iterable campaigns create-blast --listIds <listIds...> --name <name> --templateI
70
70
  | `--campaignDataFields` | json | no | A JSON object containing campaign-level data fields that are available as merge parameters (for example, {{field}}) during message rendering. These fields are available in templates, data feed URLs, and all other contexts where merge parameters are supported. Campaign-level fields are overridden by user and event data fields of the same name. |
71
71
  | `--suppressionListIds` | number[] | no | Array of suppression list IDs |
72
72
 
73
- ### campaigns create-triggered
73
+ ### create-triggered
74
74
 
75
75
  Create a new triggered campaign from an existing template. The campaign is created in Ready state and must be activated before it can send.
76
76
 
@@ -84,7 +84,7 @@ iterable campaigns create-triggered --name <name> --templateId <templateId>
84
84
  | `--templateId` | number | **yes** | The ID of a template to associate with the new campaign |
85
85
  | `--campaignDataFields` | json | no | A JSON object containing campaign-level data fields that are available as merge parameters (for example, {{field}}) during message rendering. These fields are available in templates, data feed URLs, and all other contexts where merge parameters are supported. Campaign-level fields are overridden by user and event data fields of the same name. |
86
86
 
87
- ### campaigns deactivate
87
+ ### deactivate
88
88
 
89
89
  Deactivate a triggered campaign
90
90
 
@@ -96,7 +96,7 @@ iterable campaigns deactivate <campaignId>
96
96
  |--------|------|----------|-------------|
97
97
  | `campaignId` | number | **yes** | Triggered campaign ID to deactivate |
98
98
 
99
- ### campaigns get
99
+ ### get
100
100
 
101
101
  Get detailed information about a specific campaign
102
102
 
@@ -108,7 +108,7 @@ iterable campaigns get <id>
108
108
  |--------|------|----------|-------------|
109
109
  | `id` | number | **yes** | Campaign ID to retrieve |
110
110
 
111
- ### campaigns get-children
111
+ ### get-children
112
112
 
113
113
  Get child campaigns generated by a recurring campaign
114
114
 
@@ -124,7 +124,7 @@ iterable campaigns get-children <id>
124
124
  | `--pageSize` | number | no | Number of results to return per page (defaults to 20, maximum of 1000) |
125
125
  | `--sort` | string | no | Field to sort by |
126
126
 
127
- ### campaigns get-metrics
127
+ ### get-metrics
128
128
 
129
129
  Get campaign performance metrics
130
130
 
@@ -138,18 +138,23 @@ iterable campaigns get-metrics <campaignId>
138
138
  | `--endDateTime` | string | no | End date for metrics (YYYY-MM-DD HH:MM:SS format) |
139
139
  | `--startDateTime` | string | no | Start date for metrics (YYYY-MM-DD HH:MM:SS format) |
140
140
 
141
- ### campaigns list
141
+ ### list
142
142
 
143
143
  Retrieve campaigns
144
144
 
145
+ ```
146
+ iterable campaigns list
147
+ ```
148
+
145
149
  | Option | Type | Required | Description |
146
150
  |--------|------|----------|-------------|
151
+ | `--campaignState` | `Draft` \| `Ready` \| `Scheduled` \| `Running` \| `Finished` \| `Starting` \| `Aborted` \| `Recurring` \| `Archived` | no | Filter campaigns by state |
147
152
  | `--order` | `asc` \| `desc` | no | Sort direction (asc or desc) |
148
153
  | `--page` | number | no | Page number (starting at 1) |
149
154
  | `--pageSize` | number | no | Number of results to return per page (defaults to 20, maximum of 1000) |
150
155
  | `--sort` | string | no | Field to sort by |
151
156
 
152
- ### campaigns schedule
157
+ ### schedule
153
158
 
154
159
  Schedule an existing campaign to be sent at a specific time
155
160
 
@@ -163,7 +168,7 @@ iterable campaigns schedule <campaignId> --sendAt <sendAt>
163
168
  | `--sendAt` | string | **yes** | When to send (ISO-8601 format, e.g. 2024-12-20T10:15:30Z) |
164
169
  | `--recipientTimeZone` | json | no | Recipient timezone configuration (JSON: {defaultTimeZone, startTimeZone}) |
165
170
 
166
- ### campaigns send
171
+ ### send
167
172
 
168
173
  Send an existing scheduled campaign immediately
169
174
 
@@ -175,7 +180,7 @@ iterable campaigns send <campaignId>
175
180
  |--------|------|----------|-------------|
176
181
  | `campaignId` | number | **yes** | Campaign ID to send now |
177
182
 
178
- ### campaigns trigger
183
+ ### trigger
179
184
 
180
185
  Trigger a campaign to send to specified lists
181
186
 
@@ -192,9 +197,9 @@ iterable campaigns trigger --campaignId <campaignId> --listIds <listIds...>
192
197
  | `--suppressionListIds` | number[] | no | Lists to suppress |
193
198
 
194
199
 
195
- ## catalogs (12 commands)
200
+ ## catalogs (12)
196
201
 
197
- ### catalogs bulk-delete-items
202
+ ### bulk-delete-items
198
203
 
199
204
  Bulk delete catalog items by their IDs
200
205
 
@@ -207,7 +212,7 @@ iterable catalogs bulk-delete-items --catalogName <catalogName> --itemIds <itemI
207
212
  | `--catalogName` | string | **yes** | Name of the catalog |
208
213
  | `--itemIds` | string[] | **yes** | Array of item IDs to delete |
209
214
 
210
- ### catalogs create
215
+ ### create
211
216
 
212
217
  Create a new catalog
213
218
 
@@ -219,7 +224,7 @@ iterable catalogs create <catalogName>
219
224
  |--------|------|----------|-------------|
220
225
  | `catalogName` | string | **yes** | Catalog name (alphanumeric and dashes only, max 255 chars) |
221
226
 
222
- ### catalogs delete
227
+ ### delete
223
228
 
224
229
  Delete a catalog
225
230
 
@@ -231,7 +236,7 @@ iterable catalogs delete <catalogName>
231
236
  |--------|------|----------|-------------|
232
237
  | `catalogName` | string | **yes** | Name of the catalog to delete |
233
238
 
234
- ### catalogs delete-item
239
+ ### delete-item
235
240
 
236
241
  Delete a specific catalog item by ID
237
242
 
@@ -244,7 +249,7 @@ iterable catalogs delete-item --catalogName <catalogName> --itemId <itemId>
244
249
  | `--catalogName` | string | **yes** | Name of the catalog |
245
250
  | `--itemId` | string | **yes** | ID of the catalog item to delete |
246
251
 
247
- ### catalogs get-field-mappings
252
+ ### get-field-mappings
248
253
 
249
254
  Get field mappings and data types for a catalog
250
255
 
@@ -256,7 +261,7 @@ iterable catalogs get-field-mappings <catalogName>
256
261
  |--------|------|----------|-------------|
257
262
  | `catalogName` | string | **yes** | Name of the catalog |
258
263
 
259
- ### catalogs get-item
264
+ ### get-item
260
265
 
261
266
  Get a specific catalog item by ID
262
267
 
@@ -269,7 +274,7 @@ iterable catalogs get-item --catalogName <catalogName> --itemId <itemId>
269
274
  | `--catalogName` | string | **yes** | Name of the catalog |
270
275
  | `--itemId` | string | **yes** | ID of the catalog item to retrieve |
271
276
 
272
- ### catalogs get-items
277
+ ### get-items
273
278
 
274
279
  Get items from a catalog with optional pagination and sorting
275
280
 
@@ -285,16 +290,20 @@ iterable catalogs get-items <catalogName>
285
290
  | `--pageSize` | number | no | Number of results per page (defaults to 10, max 1000) |
286
291
  | `--sortAscending` | boolean | no | Sort results by ascending (defaults to false) |
287
292
 
288
- ### catalogs list
293
+ ### list
289
294
 
290
295
  Get list of all catalogs with optional pagination
291
296
 
297
+ ```
298
+ iterable catalogs list
299
+ ```
300
+
292
301
  | Option | Type | Required | Description |
293
302
  |--------|------|----------|-------------|
294
303
  | `--page` | number | no | Page number (starting at 1) |
295
304
  | `--pageSize` | number | no | Number of results per page (max 100) |
296
305
 
297
- ### catalogs partial-update-item
306
+ ### partial-update-item
298
307
 
299
308
  Partial update (PATCH) a catalog item - updates only specified fields
300
309
 
@@ -308,7 +317,7 @@ iterable catalogs partial-update-item --catalogName <catalogName> --itemId <item
308
317
  | `--itemId` | string | **yes** | ID of the catalog item |
309
318
  | `--update` | json | **yes** | Fields to update |
310
319
 
311
- ### catalogs replace-item
320
+ ### replace-item
312
321
 
313
322
  Replace (PUT) a catalog item - replaces the entire item with new value
314
323
 
@@ -322,7 +331,7 @@ iterable catalogs replace-item --catalogName <catalogName> --itemId <itemId> --v
322
331
  | `--itemId` | string | **yes** | ID of the catalog item |
323
332
  | `--value` | json | **yes** | New value for the item |
324
333
 
325
- ### catalogs update-field-mappings
334
+ ### update-field-mappings
326
335
 
327
336
  Update catalog field mappings (data types)
328
337
 
@@ -335,7 +344,7 @@ iterable catalogs update-field-mappings <catalogName> --mappingsUpdates <mapping
335
344
  | `catalogName` | string | **yes** | Name of the catalog |
336
345
  | `--mappingsUpdates` | string[] | **yes** | Field mappings to update |
337
346
 
338
- ### catalogs update-items
347
+ ### update-items
339
348
 
340
349
  Update catalog items
341
350
 
@@ -349,9 +358,9 @@ iterable catalogs update-items <catalogName> --items <items...>
349
358
  | `--items` | json[] | **yes** | Catalog items to update |
350
359
 
351
360
 
352
- ## events (4 commands)
361
+ ## events (4)
353
362
 
354
- ### events get-by-email
363
+ ### get-by-email
355
364
 
356
365
  Get event history for a user by email address
357
366
 
@@ -364,7 +373,7 @@ iterable events get-by-email <email>
364
373
  | `email` | string | **yes** | User email address |
365
374
  | `--limit` | number | no | Maximum number of events to return |
366
375
 
367
- ### events get-by-userid
376
+ ### get-by-userid
368
377
 
369
378
  Get event history for a user by user ID
370
379
 
@@ -377,7 +386,7 @@ iterable events get-by-userid <userId>
377
386
  | `userId` | string | **yes** | User ID to get events for |
378
387
  | `--limit` | number | no | Maximum number of events to return (default: 20) |
379
388
 
380
- ### events track
389
+ ### track
381
390
 
382
391
  Track a custom event for a user
383
392
 
@@ -397,7 +406,7 @@ iterable events track <eventName>
397
406
  | `--templateId` | number | no | |
398
407
  | `--userId` | string | no | |
399
408
 
400
- ### events track-bulk
409
+ ### track-bulk
401
410
 
402
411
  Track multiple events in a single request for better performance
403
412
 
@@ -410,9 +419,9 @@ iterable events track-bulk --events <events...>
410
419
  | `--events` | json[] | **yes** | |
411
420
 
412
421
 
413
- ## experiments (4 commands)
422
+ ## experiments (4)
414
423
 
415
- ### experiments get
424
+ ### get
416
425
 
417
426
  Get detailed information about a specific experiment by ID
418
427
 
@@ -424,10 +433,14 @@ iterable experiments get <experimentId>
424
433
  |--------|------|----------|-------------|
425
434
  | `experimentId` | number | **yes** | Experiment ID |
426
435
 
427
- ### experiments get-metrics
436
+ ### get-metrics
428
437
 
429
438
  Get experiment metrics for A/B testing analysis
430
439
 
440
+ ```
441
+ iterable experiments get-metrics
442
+ ```
443
+
431
444
  | Option | Type | Required | Description |
432
445
  |--------|------|----------|-------------|
433
446
  | `--campaignId` | number[] | no | Campaign IDs whose experiments to export (can specify multiple) |
@@ -435,7 +448,7 @@ Get experiment metrics for A/B testing analysis
435
448
  | `--experimentId` | number[] | no | Experiment IDs to export (can specify multiple) |
436
449
  | `--startDateTime` | string | no | Export starting from (ISO 8601 format) |
437
450
 
438
- ### experiments get-variants
451
+ ### get-variants
439
452
 
440
453
  Get variant content for an experiment, including subject lines, preheaders, HTML source, and plain text
441
454
 
@@ -447,10 +460,14 @@ iterable experiments get-variants <experimentId>
447
460
  |--------|------|----------|-------------|
448
461
  | `experimentId` | number | **yes** | Experiment ID |
449
462
 
450
- ### experiments list
463
+ ### list
451
464
 
452
465
  List experiments with optional filtering by campaign, status, and date range
453
466
 
467
+ ```
468
+ iterable experiments list
469
+ ```
470
+
454
471
  | Option | Type | Required | Description |
455
472
  |--------|------|----------|-------------|
456
473
  | `--campaignId` | number | no | Filter by campaign ID |
@@ -461,9 +478,9 @@ List experiments with optional filtering by campaign, status, and date range
461
478
  | `--status` | `draft` \| `running` \| `finished` | no | Filter by status (draft, running, finished) |
462
479
 
463
480
 
464
- ## export (4 commands)
481
+ ## export (4)
465
482
 
466
- ### export cancel
483
+ ### cancel
467
484
 
468
485
  Cancel a queued or running export job
469
486
 
@@ -475,7 +492,7 @@ iterable export cancel <jobId>
475
492
  |--------|------|----------|-------------|
476
493
  | `jobId` | number | **yes** | The ID of the export job to cancel (returned from startExportJob) |
477
494
 
478
- ### export get-files
495
+ ### get-files
479
496
 
480
497
  Get the job status and download URLs for files from a completed export job
481
498
 
@@ -488,15 +505,19 @@ iterable export get-files <jobId>
488
505
  | `jobId` | number | **yes** | The ID of the export job (returned from startExportJob) |
489
506
  | `--startAfter` | string | no | Skip file names up to and including this value. Use for paginating over the files in the export (e.g., 'file-1679086247925.csv') |
490
507
 
491
- ### export list-jobs
508
+ ### list-jobs
492
509
 
493
510
  Get a list of recent export jobs for the current project
494
511
 
512
+ ```
513
+ iterable export list-jobs
514
+ ```
515
+
495
516
  | Option | Type | Required | Description |
496
517
  |--------|------|----------|-------------|
497
518
  | `--jobState` | string | no | Filter results to only include jobs in the specified state (enqueued, queued, running, completed, failed, cancelled, cancelling) |
498
519
 
499
- ### export start
520
+ ### start
500
521
 
501
522
  Start a data export job that processes as a background job. Use get-files to check status and obtain download links.
502
523
 
@@ -516,12 +537,16 @@ iterable export start --dataTypeName <dataTypeName> --outputFormat <outputFormat
516
537
  | `--startDateTime` | string | no | Export events occurring or users updated after date and time inclusive |
517
538
 
518
539
 
519
- ## journeys (2 commands)
540
+ ## journeys (2)
520
541
 
521
- ### journeys list
542
+ ### list
522
543
 
523
544
  Get journeys (workflows) with optional pagination and state filtering
524
545
 
546
+ ```
547
+ iterable journeys list
548
+ ```
549
+
525
550
  | Option | Type | Required | Description |
526
551
  |--------|------|----------|-------------|
527
552
  | `--order` | `asc` \| `desc` | no | Sort direction (asc or desc) |
@@ -530,7 +555,7 @@ Get journeys (workflows) with optional pagination and state filtering
530
555
  | `--sort` | string | no | Field to sort by |
531
556
  | `--state` | string[] | no | Filter by journey state (e.g., ['Archived']) |
532
557
 
533
- ### journeys trigger
558
+ ### trigger
534
559
 
535
560
  Trigger a journey (workflow) for a user
536
561
 
@@ -547,9 +572,9 @@ iterable journeys trigger <workflowId>
547
572
  | `--userId` | string | no | User ID (alternative to email) |
548
573
 
549
574
 
550
- ## lists (8 commands)
575
+ ## lists (8)
551
576
 
552
- ### lists create
577
+ ### create
553
578
 
554
579
  Create a new user list
555
580
 
@@ -562,7 +587,7 @@ iterable lists create <name>
562
587
  | `name` | string | **yes** | Name of the list to create |
563
588
  | `--description` | string | no | Description of the list |
564
589
 
565
- ### lists delete
590
+ ### delete
566
591
 
567
592
  Delete a user list
568
593
 
@@ -574,7 +599,7 @@ iterable lists delete <listId>
574
599
  |--------|------|----------|-------------|
575
600
  | `listId` | number | **yes** | ID of the list to delete |
576
601
 
577
- ### lists get-preview-users
602
+ ### get-preview-users
578
603
 
579
604
  Preview users in a list (up to 5000 users)
580
605
 
@@ -588,7 +613,7 @@ iterable lists get-preview-users <listId>
588
613
  | `--preferUserId` | boolean | no | Return userId instead of email when both exist |
589
614
  | `--size` | number | no | Number of users to return (max 5000, default 1000) |
590
615
 
591
- ### lists get-size
616
+ ### get-size
592
617
 
593
618
  Get the count of users in a specific list
594
619
 
@@ -600,7 +625,7 @@ iterable lists get-size <listId>
600
625
  |--------|------|----------|-------------|
601
626
  | `listId` | number | **yes** | List ID to get size for |
602
627
 
603
- ### lists get-users
628
+ ### get-users
604
629
 
605
630
  Get users in a specific list
606
631
 
@@ -613,11 +638,15 @@ iterable lists get-users <listId>
613
638
  | `listId` | number | **yes** | List ID to get users from |
614
639
  | `--maxResults` | number | no | Maximum number of users to return |
615
640
 
616
- ### lists list
641
+ ### list
617
642
 
618
643
  Retrieve user lists
619
644
 
620
- ### lists subscribe
645
+ ```
646
+ iterable lists list
647
+ ```
648
+
649
+ ### subscribe
621
650
 
622
651
  Subscribe users to a specific list
623
652
 
@@ -631,7 +660,7 @@ iterable lists subscribe <listId> --subscribers <subscribers...>
631
660
  | `--subscribers` | json[] | **yes** | Array of users to subscribe |
632
661
  | `--updateExistingUsersOnly` | boolean | no | Skip operation for unknown userIds/emails when true |
633
662
 
634
- ### lists unsubscribe
663
+ ### unsubscribe
635
664
 
636
665
  Unsubscribe users from a specific list
637
666
 
@@ -645,12 +674,16 @@ iterable lists unsubscribe <listId> --subscribers <subscribers...>
645
674
  | `--subscribers` | json[] | **yes** | Users to unsubscribe |
646
675
 
647
676
 
648
- ## messaging (16 commands)
677
+ ## messaging (16)
649
678
 
650
- ### messaging cancel-email
679
+ ### cancel-email
651
680
 
652
681
  Cancel scheduled email for specific user
653
682
 
683
+ ```
684
+ iterable messaging cancel-email
685
+ ```
686
+
654
687
  | Option | Type | Required | Description |
655
688
  |--------|------|----------|-------------|
656
689
  | `--campaignId` | number | no | Campaign ID to cancel |
@@ -658,10 +691,14 @@ Cancel scheduled email for specific user
658
691
  | `--scheduledMessageId` | number | no | Scheduled message ID to cancel |
659
692
  | `--userId` | string | no | User ID that identifies a user profile |
660
693
 
661
- ### messaging cancel-in-app
694
+ ### cancel-in-app
662
695
 
663
696
  Cancel scheduled in-app message for specific user
664
697
 
698
+ ```
699
+ iterable messaging cancel-in-app
700
+ ```
701
+
665
702
  | Option | Type | Required | Description |
666
703
  |--------|------|----------|-------------|
667
704
  | `--campaignId` | number | no | Campaign ID to cancel |
@@ -669,10 +706,14 @@ Cancel scheduled in-app message for specific user
669
706
  | `--scheduledMessageId` | number | no | Scheduled message ID to cancel |
670
707
  | `--userId` | string | no | User ID that identifies a user profile |
671
708
 
672
- ### messaging cancel-push
709
+ ### cancel-push
673
710
 
674
711
  Cancel scheduled push notification for specific user
675
712
 
713
+ ```
714
+ iterable messaging cancel-push
715
+ ```
716
+
676
717
  | Option | Type | Required | Description |
677
718
  |--------|------|----------|-------------|
678
719
  | `--campaignId` | number | no | Campaign ID to cancel |
@@ -680,10 +721,14 @@ Cancel scheduled push notification for specific user
680
721
  | `--scheduledMessageId` | number | no | Scheduled message ID to cancel |
681
722
  | `--userId` | string | no | User ID that identifies a user profile |
682
723
 
683
- ### messaging cancel-sms
724
+ ### cancel-sms
684
725
 
685
726
  Cancel scheduled SMS message for specific user
686
727
 
728
+ ```
729
+ iterable messaging cancel-sms
730
+ ```
731
+
687
732
  | Option | Type | Required | Description |
688
733
  |--------|------|----------|-------------|
689
734
  | `--campaignId` | number | no | Campaign ID to cancel |
@@ -691,10 +736,14 @@ Cancel scheduled SMS message for specific user
691
736
  | `--scheduledMessageId` | number | no | Scheduled message ID to cancel |
692
737
  | `--userId` | string | no | User ID that identifies a user profile |
693
738
 
694
- ### messaging cancel-web-push
739
+ ### cancel-web-push
695
740
 
696
741
  Cancel scheduled web push notification for specific user
697
742
 
743
+ ```
744
+ iterable messaging cancel-web-push
745
+ ```
746
+
698
747
  | Option | Type | Required | Description |
699
748
  |--------|------|----------|-------------|
700
749
  | `--campaignId` | number | no | Campaign ID to cancel |
@@ -702,10 +751,14 @@ Cancel scheduled web push notification for specific user
702
751
  | `--scheduledMessageId` | number | no | Scheduled message ID to cancel |
703
752
  | `--userId` | string | no | User ID that identifies a user profile |
704
753
 
705
- ### messaging cancel-whatsapp
754
+ ### cancel-whatsapp
706
755
 
707
756
  Cancel scheduled WhatsApp message for specific user
708
757
 
758
+ ```
759
+ iterable messaging cancel-whatsapp
760
+ ```
761
+
709
762
  | Option | Type | Required | Description |
710
763
  |--------|------|----------|-------------|
711
764
  | `--campaignId` | number | no | Campaign ID to cancel |
@@ -713,14 +766,22 @@ Cancel scheduled WhatsApp message for specific user
713
766
  | `--scheduledMessageId` | number | no | Scheduled message ID to cancel |
714
767
  | `--userId` | string | no | User ID that identifies a user profile |
715
768
 
716
- ### messaging get-channels
769
+ ### get-channels
717
770
 
718
771
  Get all available communication channels (email, SMS, push, etc.)
719
772
 
720
- ### messaging get-embedded-messages
773
+ ```
774
+ iterable messaging get-channels
775
+ ```
776
+
777
+ ### get-embedded-messages
721
778
 
722
779
  Get embedded messages for a user, grouped by placement ID
723
780
 
781
+ ```
782
+ iterable messaging get-embedded-messages
783
+ ```
784
+
724
785
  | Option | Type | Required | Description |
725
786
  |--------|------|----------|-------------|
726
787
  | `--currentMessageIds` | string[] | no | IDs of embedded messages already retrieved |
@@ -731,10 +792,14 @@ Get embedded messages for a user, grouped by placement ID
731
792
  | `--sdkVersion` | string | no | Iterable SDK version (e.g., 6.5.0) |
732
793
  | `--userId` | string | no | User ID (alternative to email) |
733
794
 
734
- ### messaging get-in-app-messages
795
+ ### get-in-app-messages
735
796
 
736
797
  Get in-app messages for a user
737
798
 
799
+ ```
800
+ iterable messaging get-in-app-messages
801
+ ```
802
+
738
803
  | Option | Type | Required | Description |
739
804
  |--------|------|----------|-------------|
740
805
  | `--count` | number | no | Number of messages to retrieve |
@@ -742,11 +807,15 @@ Get in-app messages for a user
742
807
  | `--platform` | `iOS` \| `Android` \| `Web` | no | Platform filter |
743
808
  | `--userId` | string | no | User ID (alternative to email) |
744
809
 
745
- ### messaging get-message-types
810
+ ### get-message-types
746
811
 
747
812
  Get all message types within the project for use in templates
748
813
 
749
- ### messaging send-email
814
+ ```
815
+ iterable messaging get-message-types
816
+ ```
817
+
818
+ ### send-email
750
819
 
751
820
  Send email to user
752
821
 
@@ -764,7 +833,7 @@ iterable messaging send-email <campaignId>
764
833
  | `--recipientUserId` | string | no | Recipient user ID (alternative to email) |
765
834
  | `--sendAt` | string | no | When to send the email (YYYY-MM-DD HH:MM:SS format) |
766
835
 
767
- ### messaging send-in-app
836
+ ### send-in-app
768
837
 
769
838
  Send in-app message to user
770
839
 
@@ -782,7 +851,7 @@ iterable messaging send-in-app <campaignId>
782
851
  | `--recipientUserId` | string | no | Recipient user ID (alternative to email) |
783
852
  | `--sendAt` | string | no | When to send (YYYY-MM-DD HH:MM:SS format) |
784
853
 
785
- ### messaging send-push
854
+ ### send-push
786
855
 
787
856
  Send push notification to user
788
857
 
@@ -800,7 +869,7 @@ iterable messaging send-push <campaignId>
800
869
  | `--recipientUserId` | string | no | Recipient user ID |
801
870
  | `--sendAt` | string | no | When to send (YYYY-MM-DD HH:MM:SS format) |
802
871
 
803
- ### messaging send-sms
872
+ ### send-sms
804
873
 
805
874
  Send SMS message to user
806
875
 
@@ -819,7 +888,7 @@ iterable messaging send-sms <campaignId>
819
888
  | `--recipientUserId` | string | no | Recipient user ID |
820
889
  | `--sendAt` | string | no | When to send (YYYY-MM-DD HH:MM:SS format) |
821
890
 
822
- ### messaging send-web-push
891
+ ### send-web-push
823
892
 
824
893
  Send web push notification to user
825
894
 
@@ -837,7 +906,7 @@ iterable messaging send-web-push <campaignId>
837
906
  | `--recipientUserId` | string | no | Recipient user ID |
838
907
  | `--sendAt` | string | no | When to send (YYYY-MM-DD HH:MM:SS format) |
839
908
 
840
- ### messaging send-whatsapp
909
+ ### send-whatsapp
841
910
 
842
911
  Send WhatsApp message to user
843
912
 
@@ -857,9 +926,9 @@ iterable messaging send-whatsapp <campaignId>
857
926
  | `--sendAt` | string | no | When to send (YYYY-MM-DD HH:MM:SS format) |
858
927
 
859
928
 
860
- ## snippets (5 commands)
929
+ ## snippets (5)
861
930
 
862
- ### snippets create
931
+ ### create
863
932
 
864
933
  Create a new snippet with Handlebars templating support
865
934
 
@@ -875,7 +944,7 @@ iterable snippets create --content <content> --name <name>
875
944
  | `--description` | string | no | Description of the snippet |
876
945
  | `--variables` | string[] | no | A list of variable names used in the content with a Handlebars expression such as {{#if (eq myVariable "someValue")}}. Variable names are case-sensitive and should be simple identifiers (letters, numbers, underscores). To learn more about using variables in Snippets, see Customizing Snippets with Variables. |
877
946
 
878
- ### snippets delete
947
+ ### delete
879
948
 
880
949
  Delete a snippet by ID (numeric) or name (string)
881
950
 
@@ -887,7 +956,7 @@ iterable snippets delete <identifier>
887
956
  |--------|------|----------|-------------|
888
957
  | `identifier` | string | **yes** | Snippet ID (numeric) or name (string). Numeric identifiers are treated as IDs, string identifiers as names |
889
958
 
890
- ### snippets get
959
+ ### get
891
960
 
892
961
  Get a snippet by ID (numeric) or name (string)
893
962
 
@@ -899,11 +968,15 @@ iterable snippets get <identifier>
899
968
  |--------|------|----------|-------------|
900
969
  | `identifier` | string | **yes** | Snippet ID (numeric) or name (string). Numeric identifiers are treated as IDs, string identifiers as names |
901
970
 
902
- ### snippets list
971
+ ### list
903
972
 
904
973
  Get all snippets for the current project
905
974
 
906
- ### snippets update
975
+ ```
976
+ iterable snippets list
977
+ ```
978
+
979
+ ### update
907
980
 
908
981
  Update a snippet by ID (numeric) or name (string)
909
982
 
@@ -920,9 +993,9 @@ iterable snippets update --content <content> --identifier <identifier>
920
993
  | `--variables` | string[] | no | List of variable names used in the content with a Handlebars expression such as {{myField}}. Variable names are case-sensitive and should be simple identifiers (letters, numbers, underscores). To learn more about using Handlebars in Snippets, see Customizing Snippets with Variables. |
921
994
 
922
995
 
923
- ## subscriptions (5 commands)
996
+ ## subscriptions (5)
924
997
 
925
- ### subscriptions bulk-update
998
+ ### bulk-update
926
999
 
927
1000
  Subscribe or unsubscribe multiple users to/from a subscription group
928
1001
 
@@ -932,13 +1005,13 @@ iterable subscriptions bulk-update --action <action> --subscriptionGroup <subscr
932
1005
 
933
1006
  | Option | Type | Required | Description |
934
1007
  |--------|------|----------|-------------|
935
- | `--action` | `subscribe` \| `unsubscribe` | **yes** | Action to perform: subscribe or unsubscribe |
1008
+ | `--action` | `subscribe` \| `unsubscribe` | **yes** | Action to perform |
936
1009
  | `--subscriptionGroup` | `emailList` \| `messageType` \| `messageChannel` | **yes** | Type of subscription group |
937
1010
  | `--subscriptionGroupId` | number | **yes** | Subscription Group Id |
938
1011
  | `--users` | string[] | no | Users to subscribe/unsubscribe, identified by email |
939
1012
  | `--usersByUserId` | string[] | no | Users to subscribe/unsubscribe, identified by userId |
940
1013
 
941
- ### subscriptions subscribe-by-email
1014
+ ### subscribe-by-email
942
1015
 
943
1016
  Subscribe a user to a subscription group by email
944
1017
 
@@ -952,7 +1025,7 @@ iterable subscriptions subscribe-by-email --subscriptionGroup <subscriptionGroup
952
1025
  | `--subscriptionGroupId` | number | **yes** | Subscription Group Id |
953
1026
  | `--userEmail` | string | **yes** | User's email address |
954
1027
 
955
- ### subscriptions subscribe-by-userid
1028
+ ### subscribe-by-userid
956
1029
 
957
1030
  Subscribe a user to a subscription group by userId
958
1031
 
@@ -966,7 +1039,7 @@ iterable subscriptions subscribe-by-userid --subscriptionGroup <subscriptionGrou
966
1039
  | `--subscriptionGroupId` | number | **yes** | Subscription Group Id |
967
1040
  | `--userId` | string | **yes** | User's userId |
968
1041
 
969
- ### subscriptions unsubscribe-by-email
1042
+ ### unsubscribe-by-email
970
1043
 
971
1044
  Unsubscribe a user from a subscription group by email
972
1045
 
@@ -980,7 +1053,7 @@ iterable subscriptions unsubscribe-by-email --subscriptionGroup <subscriptionGro
980
1053
  | `--subscriptionGroupId` | number | **yes** | Subscription Group Id |
981
1054
  | `--userEmail` | string | **yes** | User's email address |
982
1055
 
983
- ### subscriptions unsubscribe-by-userid
1056
+ ### unsubscribe-by-userid
984
1057
 
985
1058
  Unsubscribe a user from a subscription group by userId
986
1059
 
@@ -995,9 +1068,9 @@ iterable subscriptions unsubscribe-by-userid --subscriptionGroup <subscriptionGr
995
1068
  | `--userId` | string | **yes** | User's userId |
996
1069
 
997
1070
 
998
- ## templates (21 commands)
1071
+ ## templates (21)
999
1072
 
1000
- ### templates delete
1073
+ ### delete
1001
1074
 
1002
1075
  Delete one or more templates by ID
1003
1076
 
@@ -1009,7 +1082,7 @@ iterable templates delete <ids...>
1009
1082
  |--------|------|----------|-------------|
1010
1083
  | `ids` | number[] | **yes** | IDs of templates to delete |
1011
1084
 
1012
- ### templates get-by-client-id
1085
+ ### get-by-client-id
1013
1086
 
1014
1087
  Get template by client template ID
1015
1088
 
@@ -1021,7 +1094,7 @@ iterable templates get-by-client-id <clientTemplateId>
1021
1094
  |--------|------|----------|-------------|
1022
1095
  | `clientTemplateId` | string | **yes** | Client template ID to look up template by |
1023
1096
 
1024
- ### templates get-email
1097
+ ### get-email
1025
1098
 
1026
1099
  Get details for specific email template by ID
1027
1100
 
@@ -1034,7 +1107,7 @@ iterable templates get-email <templateId>
1034
1107
  | `templateId` | number | **yes** | Template ID to retrieve |
1035
1108
  | `--locale` | string | no | Locale of content to get |
1036
1109
 
1037
- ### templates get-inapp
1110
+ ### get-inapp
1038
1111
 
1039
1112
  Get details for specific in-app message template by ID
1040
1113
 
@@ -1047,7 +1120,7 @@ iterable templates get-inapp <templateId>
1047
1120
  | `templateId` | number | **yes** | Template ID to retrieve |
1048
1121
  | `--locale` | string | no | Locale of content to get |
1049
1122
 
1050
- ### templates get-push
1123
+ ### get-push
1051
1124
 
1052
1125
  Get details for specific push notification template by ID
1053
1126
 
@@ -1060,7 +1133,7 @@ iterable templates get-push <templateId>
1060
1133
  | `templateId` | number | **yes** | Template ID to retrieve |
1061
1134
  | `--locale` | string | no | Locale of content to get |
1062
1135
 
1063
- ### templates get-sms
1136
+ ### get-sms
1064
1137
 
1065
1138
  Get details for specific SMS template by ID
1066
1139
 
@@ -1073,10 +1146,14 @@ iterable templates get-sms <templateId>
1073
1146
  | `templateId` | number | **yes** | Template ID to retrieve |
1074
1147
  | `--locale` | string | no | Locale of content to get |
1075
1148
 
1076
- ### templates list
1149
+ ### list
1077
1150
 
1078
1151
  Retrieve templates
1079
1152
 
1153
+ ```
1154
+ iterable templates list
1155
+ ```
1156
+
1080
1157
  | Option | Type | Required | Description |
1081
1158
  |--------|------|----------|-------------|
1082
1159
  | `--endDateTime` | string | no | Get templates created before this date time (yyyy-MM-dd HH:mm:ss [ZZ]) |
@@ -1088,7 +1165,7 @@ Retrieve templates
1088
1165
  | `--startDateTime` | string | no | Get templates created at or after this date time (yyyy-MM-dd HH:mm:ss [ZZ]) |
1089
1166
  | `--templateType` | `Base` \| `Blast` \| `Triggered` \| `Workflow` | no | Filter by template type |
1090
1167
 
1091
- ### templates preview-email
1168
+ ### preview-email
1092
1169
 
1093
1170
  Preview email template with custom data. Returns fully rendered HTML.
1094
1171
 
@@ -1102,7 +1179,7 @@ iterable templates preview-email <templateId>
1102
1179
  | `--data` | json | no | Data to use for template rendering (JSON: {dataFields, dataFeed, fetchDataFeeds}) |
1103
1180
  | `--locale` | string | no | Locale of content to get |
1104
1181
 
1105
- ### templates preview-inapp
1182
+ ### preview-inapp
1106
1183
 
1107
1184
  Preview in-app message template with custom data. Returns fully rendered HTML.
1108
1185
 
@@ -1116,7 +1193,7 @@ iterable templates preview-inapp <templateId>
1116
1193
  | `--data` | json | no | Data to use for template rendering (JSON: {dataFields, dataFeed, fetchDataFeeds}) |
1117
1194
  | `--locale` | string | no | Locale of content to get |
1118
1195
 
1119
- ### templates proof-email
1196
+ ### proof-email
1120
1197
 
1121
1198
  Send a proof of an email template to a specific user
1122
1199
 
@@ -1132,7 +1209,7 @@ iterable templates proof-email <templateId>
1132
1209
  | `--recipientEmail` | string | no | An email address that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1133
1210
  | `--recipientUserId` | string | no | A user ID that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1134
1211
 
1135
- ### templates proof-inapp
1212
+ ### proof-inapp
1136
1213
 
1137
1214
  Send a proof of an in-app message template to a specific user
1138
1215
 
@@ -1148,7 +1225,7 @@ iterable templates proof-inapp <templateId>
1148
1225
  | `--recipientEmail` | string | no | An email address that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1149
1226
  | `--recipientUserId` | string | no | A user ID that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1150
1227
 
1151
- ### templates proof-push
1228
+ ### proof-push
1152
1229
 
1153
1230
  Send a proof of a push notification template to a specific user
1154
1231
 
@@ -1164,7 +1241,7 @@ iterable templates proof-push <templateId>
1164
1241
  | `--recipientEmail` | string | no | An email address that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1165
1242
  | `--recipientUserId` | string | no | A user ID that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1166
1243
 
1167
- ### templates proof-sms
1244
+ ### proof-sms
1168
1245
 
1169
1246
  Send a proof of an SMS template to a specific user
1170
1247
 
@@ -1180,7 +1257,7 @@ iterable templates proof-sms <templateId>
1180
1257
  | `--recipientEmail` | string | no | An email address that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1181
1258
  | `--recipientUserId` | string | no | A user ID that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. |
1182
1259
 
1183
- ### templates update-email
1260
+ ### update-email
1184
1261
 
1185
1262
  Update existing email template by templateId
1186
1263
 
@@ -1203,7 +1280,7 @@ iterable templates update-email <templateId>
1203
1280
  | `--plainText` | string | no | Plain text content |
1204
1281
  | `--subject` | string | no | Email subject |
1205
1282
 
1206
- ### templates update-inapp
1283
+ ### update-inapp
1207
1284
 
1208
1285
  Update existing in-app message template by templateId
1209
1286
 
@@ -1222,7 +1299,7 @@ iterable templates update-inapp <templateId>
1222
1299
  | `--messageTypeId` | number | no | Message type ID |
1223
1300
  | `--name` | string | no | Template name |
1224
1301
 
1225
- ### templates update-push
1302
+ ### update-push
1226
1303
 
1227
1304
  Update existing push notification template by templateId
1228
1305
 
@@ -1245,7 +1322,7 @@ iterable templates update-push <templateId>
1245
1322
  | `--sound` | string | no | Sound file |
1246
1323
  | `--title` | string | no | Push notification title |
1247
1324
 
1248
- ### templates update-sms
1325
+ ### update-sms
1249
1326
 
1250
1327
  Update existing SMS template by templateId
1251
1328
 
@@ -1264,7 +1341,7 @@ iterable templates update-sms <templateId>
1264
1341
  | `--messageTypeId` | number | no | Message type ID |
1265
1342
  | `--name` | string | no | Template name |
1266
1343
 
1267
- ### templates upsert-email
1344
+ ### upsert-email
1268
1345
 
1269
1346
  Create or update email template. If a template with the specified clientTemplateId exists, it will be updated; otherwise, a new template will be created.
1270
1347
 
@@ -1287,7 +1364,7 @@ iterable templates upsert-email <clientTemplateId>
1287
1364
  | `--plainText` | string | no | Plain text content |
1288
1365
  | `--subject` | string | no | Email subject |
1289
1366
 
1290
- ### templates upsert-inapp
1367
+ ### upsert-inapp
1291
1368
 
1292
1369
  Create or update in-app message template. If a template with the specified clientTemplateId exists, it will be updated; otherwise, a new template will be created.
1293
1370
 
@@ -1306,7 +1383,7 @@ iterable templates upsert-inapp <clientTemplateId>
1306
1383
  | `--messageTypeId` | number | no | Message type ID |
1307
1384
  | `--name` | string | no | Template name |
1308
1385
 
1309
- ### templates upsert-push
1386
+ ### upsert-push
1310
1387
 
1311
1388
  Create or update push notification template. If a template with the specified clientTemplateId exists, it will be updated; otherwise, a new template will be created.
1312
1389
 
@@ -1329,7 +1406,7 @@ iterable templates upsert-push <clientTemplateId>
1329
1406
  | `--sound` | string | no | Sound file |
1330
1407
  | `--title` | string | no | Push notification title |
1331
1408
 
1332
- ### templates upsert-sms
1409
+ ### upsert-sms
1333
1410
 
1334
1411
  Create or update SMS template. If a template with the specified clientTemplateId exists, it will be updated; otherwise, a new template will be created.
1335
1412
 
@@ -1349,9 +1426,9 @@ iterable templates upsert-sms <clientTemplateId>
1349
1426
  | `--name` | string | no | Template name |
1350
1427
 
1351
1428
 
1352
- ## users (12 commands)
1429
+ ## users (12)
1353
1430
 
1354
- ### users bulk-update
1431
+ ### bulk-update
1355
1432
 
1356
1433
  Update multiple users at once
1357
1434
 
@@ -1363,7 +1440,7 @@ iterable users bulk-update --users <users...>
1363
1440
  |--------|------|----------|-------------|
1364
1441
  | `--users` | json[] | **yes** | Array of users to update |
1365
1442
 
1366
- ### users delete *(alias)*
1443
+ ### delete *(alias)*
1367
1444
 
1368
1445
  Delete a user by email or userId (auto-detected)
1369
1446
 
@@ -1375,7 +1452,7 @@ iterable users delete <identifier>
1375
1452
  |--------|------|----------|-------------|
1376
1453
  | `identifier` | string | **yes** | Email address or userId |
1377
1454
 
1378
- ### users delete-by-email
1455
+ ### delete-by-email
1379
1456
 
1380
1457
  Delete a user by email address (asynchronous)
1381
1458
 
@@ -1387,7 +1464,7 @@ iterable users delete-by-email <email>
1387
1464
  |--------|------|----------|-------------|
1388
1465
  | `email` | string | **yes** | Email address of the user to delete |
1389
1466
 
1390
- ### users delete-by-userid
1467
+ ### delete-by-userid
1391
1468
 
1392
1469
  Delete a user by user ID (asynchronous, deletes all users with same userId)
1393
1470
 
@@ -1399,7 +1476,7 @@ iterable users delete-by-userid <userId>
1399
1476
  |--------|------|----------|-------------|
1400
1477
  | `userId` | string | **yes** | User ID of the user to delete |
1401
1478
 
1402
- ### users get *(alias)*
1479
+ ### get *(alias)*
1403
1480
 
1404
1481
  Get a user by email or userId (auto-detected)
1405
1482
 
@@ -1411,7 +1488,7 @@ iterable users get <identifier>
1411
1488
  |--------|------|----------|-------------|
1412
1489
  | `identifier` | string | **yes** | Email address or userId |
1413
1490
 
1414
- ### users get-by-email
1491
+ ### get-by-email
1415
1492
 
1416
1493
  Get user profile information by email address
1417
1494
 
@@ -1423,7 +1500,7 @@ iterable users get-by-email <email>
1423
1500
  |--------|------|----------|-------------|
1424
1501
  | `email` | string | **yes** | Email address of the user to retrieve |
1425
1502
 
1426
- ### users get-by-userid
1503
+ ### get-by-userid
1427
1504
 
1428
1505
  Get user profile information by user ID
1429
1506
 
@@ -1435,14 +1512,22 @@ iterable users get-by-userid <userId>
1435
1512
  |--------|------|----------|-------------|
1436
1513
  | `userId` | string | **yes** | User ID to retrieve |
1437
1514
 
1438
- ### users get-fields
1515
+ ### get-fields
1439
1516
 
1440
1517
  Get all user profile field definitions and their types
1441
1518
 
1442
- ### users get-sent-messages
1519
+ ```
1520
+ iterable users get-fields
1521
+ ```
1522
+
1523
+ ### get-sent-messages
1443
1524
 
1444
1525
  Get messages sent to a specific user with optional filtering
1445
1526
 
1527
+ ```
1528
+ iterable users get-sent-messages
1529
+ ```
1530
+
1446
1531
  | Option | Type | Required | Description |
1447
1532
  |--------|------|----------|-------------|
1448
1533
  | `--campaignIds` | number[] | no | Only include messages from these campaigns |
@@ -1454,10 +1539,14 @@ Get messages sent to a specific user with optional filtering
1454
1539
  | `--startDateTime` | string | no | Start date time (yyyy-MM-dd HH:mm:ss ZZ) |
1455
1540
  | `--userId` | string | no | User ID (alternative to email) |
1456
1541
 
1457
- ### users update
1542
+ ### update
1458
1543
 
1459
1544
  Update user profile information (accepts email OR userId)
1460
1545
 
1546
+ ```
1547
+ iterable users update
1548
+ ```
1549
+
1461
1550
  | Option | Type | Required | Description |
1462
1551
  |--------|------|----------|-------------|
1463
1552
  | `--createNewFields` | boolean | no | Whether new fields should be ingested and added to the schema |
@@ -1467,7 +1556,7 @@ Update user profile information (accepts email OR userId)
1467
1556
  | `--preferUserId` | boolean | no | Whether to create new user if userId doesn't exist (email-based projects only) |
1468
1557
  | `--userId` | string | no | User ID (alternative to email) |
1469
1558
 
1470
- ### users update-email
1559
+ ### update-email
1471
1560
 
1472
1561
  Update a user's email address (only for email-based projects)
1473
1562
 
@@ -1481,10 +1570,14 @@ iterable users update-email <newEmail>
1481
1570
  | `--currentEmail` | string | no | An email address that identifies a user profile in Iterable. Provide a currentEmail or a currentUserId (but not both), depending on how your project identifies users. |
1482
1571
  | `--currentUserId` | string | no | A user ID that identifies a user profile in Iterable. Provide a currentEmail or a currentUserId (but not both), depending on how your project identifies users. |
1483
1572
 
1484
- ### users update-subscriptions
1573
+ ### update-subscriptions
1485
1574
 
1486
1575
  Update user subscriptions (overwrites existing data for any non-null fields specified)
1487
1576
 
1577
+ ```
1578
+ iterable users update-subscriptions
1579
+ ```
1580
+
1488
1581
  | Option | Type | Required | Description |
1489
1582
  |--------|------|----------|-------------|
1490
1583
  | `--campaignId` | number | no | Campaign to attribute unsubscribes |
@@ -1498,13 +1591,17 @@ Update user subscriptions (overwrites existing data for any non-null fields spec
1498
1591
  | `--validateChannelAlignment` | boolean | no | Defaults to true (validation enabled). When false, allows subscribing users to message types that belong to unsubscribed channels. By default, Iterable validates that subscribed message types belong to subscribed channels. Setting this to false bypasses this validation, allowing you to save message type preferences even when the parent channel is unsubscribed. Users won't receive messages from these types while the channel remains unsubscribed, but their preferences are preserved for when the channel becomes subscribed. |
1499
1592
 
1500
1593
 
1501
- ## webhooks (2 commands)
1594
+ ## webhooks (2)
1502
1595
 
1503
- ### webhooks list
1596
+ ### list
1504
1597
 
1505
1598
  Get all webhooks for the project
1506
1599
 
1507
- ### webhooks update
1600
+ ```
1601
+ iterable webhooks list
1602
+ ```
1603
+
1604
+ ### update
1508
1605
 
1509
1606
  Update a webhook configuration
1510
1607
 
@@ -1524,7 +1621,7 @@ iterable webhooks update <webhookId>
1524
1621
 
1525
1622
  Manage stored API keys.
1526
1623
 
1527
- ### keys list
1624
+ ### list
1528
1625
 
1529
1626
  View all stored API keys
1530
1627
 
@@ -1532,7 +1629,7 @@ View all stored API keys
1532
1629
  iterable keys list
1533
1630
  ```
1534
1631
 
1535
- ### keys add
1632
+ ### add
1536
1633
 
1537
1634
  Add a new API key
1538
1635
 
@@ -1540,7 +1637,7 @@ Add a new API key
1540
1637
  iterable keys add
1541
1638
  ```
1542
1639
 
1543
- ### keys update <name-or-id>
1640
+ ### update <name-or-id>
1544
1641
 
1545
1642
  Update an existing key's settings
1546
1643
 
@@ -1548,7 +1645,7 @@ Update an existing key's settings
1548
1645
  iterable keys update <name-or-id>
1549
1646
  ```
1550
1647
 
1551
- ### keys activate <name-or-id>
1648
+ ### activate <name-or-id>
1552
1649
 
1553
1650
  Switch to a different key
1554
1651
 
@@ -1556,7 +1653,7 @@ Switch to a different key
1556
1653
  iterable keys activate <name-or-id>
1557
1654
  ```
1558
1655
 
1559
- ### keys deactivate
1656
+ ### deactivate
1560
1657
 
1561
1658
  Deactivate the current key
1562
1659
 
@@ -1564,7 +1661,7 @@ Deactivate the current key
1564
1661
  iterable keys deactivate
1565
1662
  ```
1566
1663
 
1567
- ### keys delete <name-or-id>
1664
+ ### delete <name-or-id>
1568
1665
 
1569
1666
  Remove a key by ID or name
1570
1667
 
@@ -1572,7 +1669,7 @@ Remove a key by ID or name
1572
1669
  iterable keys delete <name-or-id>
1573
1670
  ```
1574
1671
 
1575
- ### keys validate
1672
+ ### validate
1576
1673
 
1577
1674
  Test the API connection
1578
1675