@norbix.ai/cli 0.3.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4607,18 +4607,18 @@
4607
4607
  "unarchive.js"
4608
4608
  ]
4609
4609
  },
4610
- "files:delete": {
4610
+ "env:delete": {
4611
4611
  "aliases": [],
4612
4612
  "args": {
4613
- "remote": {
4614
- "description": "Remote file path",
4615
- "name": "remote",
4613
+ "name": {
4614
+ "description": "Environment name (PROD cannot be deleted)",
4615
+ "name": "name",
4616
4616
  "required": true
4617
4617
  }
4618
4618
  },
4619
- "description": "Delete one file",
4619
+ "description": "Delete a non-PROD environment (cascades its integrations)",
4620
4620
  "examples": [
4621
- "<%= config.bin %> files delete invoices/2026/invoice.pdf --yes"
4621
+ "<%= config.bin %> env delete STAGING --yes"
4622
4622
  ],
4623
4623
  "flags": {
4624
4624
  "json": {
@@ -4682,15 +4682,6 @@
4682
4682
  "multiple": false,
4683
4683
  "type": "option"
4684
4684
  },
4685
- "integration": {
4686
- "char": "i",
4687
- "description": "Files integration ID",
4688
- "env": "NORBIX_FILES_INTEGRATION_ID",
4689
- "name": "integration",
4690
- "hasDynamicHelp": false,
4691
- "multiple": false,
4692
- "type": "option"
4693
- },
4694
4685
  "yes": {
4695
4686
  "char": "y",
4696
4687
  "description": "Skip the confirmation prompt",
@@ -4701,7 +4692,7 @@
4701
4692
  },
4702
4693
  "hasDynamicHelp": false,
4703
4694
  "hiddenAliases": [],
4704
- "id": "files:delete",
4695
+ "id": "env:delete",
4705
4696
  "pluginAlias": "@norbix.ai/cli",
4706
4697
  "pluginName": "@norbix.ai/cli",
4707
4698
  "pluginType": "core",
@@ -4711,28 +4702,16 @@
4711
4702
  "relativePath": [
4712
4703
  "dist",
4713
4704
  "commands",
4714
- "files",
4705
+ "env",
4715
4706
  "delete.js"
4716
4707
  ]
4717
4708
  },
4718
- "files:download": {
4709
+ "env:list": {
4719
4710
  "aliases": [],
4720
- "args": {
4721
- "remote": {
4722
- "description": "Remote file path",
4723
- "name": "remote",
4724
- "required": true
4725
- },
4726
- "file": {
4727
- "description": "Local target file (default: remote file name in current folder)",
4728
- "name": "file",
4729
- "required": false
4730
- }
4731
- },
4732
- "description": "Download a file to disk (via a signed URL)",
4711
+ "args": {},
4712
+ "description": "List the project's environments (PROD is always first)",
4733
4713
  "examples": [
4734
- "<%= config.bin %> files download invoices/2026/invoice.pdf",
4735
- "<%= config.bin %> files download invoices/2026/invoice.pdf ./local-copy.pdf"
4714
+ "<%= config.bin %> env list"
4736
4715
  ],
4737
4716
  "flags": {
4738
4717
  "json": {
@@ -4795,20 +4774,11 @@
4795
4774
  "hasDynamicHelp": false,
4796
4775
  "multiple": false,
4797
4776
  "type": "option"
4798
- },
4799
- "integration": {
4800
- "char": "i",
4801
- "description": "Files integration ID",
4802
- "env": "NORBIX_FILES_INTEGRATION_ID",
4803
- "name": "integration",
4804
- "hasDynamicHelp": false,
4805
- "multiple": false,
4806
- "type": "option"
4807
4777
  }
4808
4778
  },
4809
4779
  "hasDynamicHelp": false,
4810
4780
  "hiddenAliases": [],
4811
- "id": "files:download",
4781
+ "id": "env:list",
4812
4782
  "pluginAlias": "@norbix.ai/cli",
4813
4783
  "pluginName": "@norbix.ai/cli",
4814
4784
  "pluginType": "core",
@@ -4818,22 +4788,24 @@
4818
4788
  "relativePath": [
4819
4789
  "dist",
4820
4790
  "commands",
4821
- "files",
4822
- "download.js"
4791
+ "env",
4792
+ "list.js"
4823
4793
  ]
4824
4794
  },
4825
- "files:info": {
4795
+ "env:use": {
4826
4796
  "aliases": [],
4827
4797
  "args": {
4828
- "remote": {
4829
- "description": "Remote file path",
4830
- "name": "remote",
4798
+ "name": {
4799
+ "description": "Environment name (e.g. PROD, TEST)",
4800
+ "name": "name",
4831
4801
  "required": true
4832
4802
  }
4833
4803
  },
4834
- "description": "Show metadata for one file",
4804
+ "description": "Set the default environment for future commands.\n\nWritten to the active session when you are logged in; with --profile it is\nwritten into that profile in ~/.norbix/config; otherwise to the [default]\nprofile. Override per command with --env.",
4835
4805
  "examples": [
4836
- "<%= config.bin %> files info invoices/2026/invoice.pdf"
4806
+ "<%= config.bin %> env use TEST",
4807
+ "<%= config.bin %> env use PROD",
4808
+ "<%= config.bin %> env use STAGING --profile fitskin-prod"
4837
4809
  ],
4838
4810
  "flags": {
4839
4811
  "json": {
@@ -4896,20 +4868,11 @@
4896
4868
  "hasDynamicHelp": false,
4897
4869
  "multiple": false,
4898
4870
  "type": "option"
4899
- },
4900
- "integration": {
4901
- "char": "i",
4902
- "description": "Files integration ID",
4903
- "env": "NORBIX_FILES_INTEGRATION_ID",
4904
- "name": "integration",
4905
- "hasDynamicHelp": false,
4906
- "multiple": false,
4907
- "type": "option"
4908
4871
  }
4909
4872
  },
4910
4873
  "hasDynamicHelp": false,
4911
4874
  "hiddenAliases": [],
4912
- "id": "files:info",
4875
+ "id": "env:use",
4913
4876
  "pluginAlias": "@norbix.ai/cli",
4914
4877
  "pluginName": "@norbix.ai/cli",
4915
4878
  "pluginType": "core",
@@ -4919,23 +4882,22 @@
4919
4882
  "relativePath": [
4920
4883
  "dist",
4921
4884
  "commands",
4922
- "files",
4923
- "info.js"
4885
+ "env",
4886
+ "use.js"
4924
4887
  ]
4925
4888
  },
4926
- "files:list": {
4889
+ "files:delete": {
4927
4890
  "aliases": [],
4928
4891
  "args": {
4929
- "path": {
4930
- "description": "Folder path (default: root)",
4931
- "name": "path",
4932
- "required": false
4892
+ "remote": {
4893
+ "description": "Remote file path",
4894
+ "name": "remote",
4895
+ "required": true
4933
4896
  }
4934
4897
  },
4935
- "description": "List files in a folder of a files integration",
4898
+ "description": "Delete one file",
4936
4899
  "examples": [
4937
- "<%= config.bin %> files list --integration 66b2...",
4938
- "<%= config.bin %> files list invoices/2026"
4900
+ "<%= config.bin %> files delete invoices/2026/invoice.pdf --yes"
4939
4901
  ],
4940
4902
  "flags": {
4941
4903
  "json": {
@@ -5007,11 +4969,18 @@
5007
4969
  "hasDynamicHelp": false,
5008
4970
  "multiple": false,
5009
4971
  "type": "option"
4972
+ },
4973
+ "yes": {
4974
+ "char": "y",
4975
+ "description": "Skip the confirmation prompt",
4976
+ "name": "yes",
4977
+ "allowNo": false,
4978
+ "type": "boolean"
5010
4979
  }
5011
4980
  },
5012
4981
  "hasDynamicHelp": false,
5013
4982
  "hiddenAliases": [],
5014
- "id": "files:list",
4983
+ "id": "files:delete",
5015
4984
  "pluginAlias": "@norbix.ai/cli",
5016
4985
  "pluginName": "@norbix.ai/cli",
5017
4986
  "pluginType": "core",
@@ -5022,22 +4991,27 @@
5022
4991
  "dist",
5023
4992
  "commands",
5024
4993
  "files",
5025
- "list.js"
4994
+ "delete.js"
5026
4995
  ]
5027
4996
  },
5028
- "files:publish": {
4997
+ "files:download": {
5029
4998
  "aliases": [],
5030
4999
  "args": {
5031
5000
  "remote": {
5032
- "description": "Remote file path, or folder prefix with --folder",
5001
+ "description": "Remote file path",
5033
5002
  "name": "remote",
5034
5003
  "required": true
5004
+ },
5005
+ "file": {
5006
+ "description": "Local target file (default: remote file name in current folder)",
5007
+ "name": "file",
5008
+ "required": false
5035
5009
  }
5036
5010
  },
5037
- "description": "Make a file (or a whole folder) readable by anyone holding its link — no sign-in needed",
5011
+ "description": "Download a file to disk (via a signed URL)",
5038
5012
  "examples": [
5039
- "<%= config.bin %> files publish invoices/2026/invoice.pdf",
5040
- "<%= config.bin %> files publish invoices --folder"
5013
+ "<%= config.bin %> files download invoices/2026/invoice.pdf",
5014
+ "<%= config.bin %> files download invoices/2026/invoice.pdf ./local-copy.pdf"
5041
5015
  ],
5042
5016
  "flags": {
5043
5017
  "json": {
@@ -5101,12 +5075,6 @@
5101
5075
  "multiple": false,
5102
5076
  "type": "option"
5103
5077
  },
5104
- "folder": {
5105
- "description": "Publish the whole folder prefix instead of one file",
5106
- "name": "folder",
5107
- "allowNo": false,
5108
- "type": "boolean"
5109
- },
5110
5078
  "integration": {
5111
5079
  "char": "i",
5112
5080
  "description": "Files integration ID",
@@ -5119,7 +5087,7 @@
5119
5087
  },
5120
5088
  "hasDynamicHelp": false,
5121
5089
  "hiddenAliases": [],
5122
- "id": "files:publish",
5090
+ "id": "files:download",
5123
5091
  "pluginAlias": "@norbix.ai/cli",
5124
5092
  "pluginName": "@norbix.ai/cli",
5125
5093
  "pluginType": "core",
@@ -5130,10 +5098,10 @@
5130
5098
  "dist",
5131
5099
  "commands",
5132
5100
  "files",
5133
- "publish.js"
5101
+ "download.js"
5134
5102
  ]
5135
5103
  },
5136
- "files:sign": {
5104
+ "files:info": {
5137
5105
  "aliases": [],
5138
5106
  "args": {
5139
5107
  "remote": {
@@ -5142,9 +5110,9 @@
5142
5110
  "required": true
5143
5111
  }
5144
5112
  },
5145
- "description": "Get a temporary signed download URL for a file",
5113
+ "description": "Show metadata for one file",
5146
5114
  "examples": [
5147
- "<%= config.bin %> files sign invoices/2026/invoice.pdf --expires 3600"
5115
+ "<%= config.bin %> files info invoices/2026/invoice.pdf"
5148
5116
  ],
5149
5117
  "flags": {
5150
5118
  "json": {
@@ -5216,18 +5184,11 @@
5216
5184
  "hasDynamicHelp": false,
5217
5185
  "multiple": false,
5218
5186
  "type": "option"
5219
- },
5220
- "expires": {
5221
- "description": "URL lifetime in seconds",
5222
- "name": "expires",
5223
- "hasDynamicHelp": false,
5224
- "multiple": false,
5225
- "type": "option"
5226
5187
  }
5227
5188
  },
5228
5189
  "hasDynamicHelp": false,
5229
5190
  "hiddenAliases": [],
5230
- "id": "files:sign",
5191
+ "id": "files:info",
5231
5192
  "pluginAlias": "@norbix.ai/cli",
5232
5193
  "pluginName": "@norbix.ai/cli",
5233
5194
  "pluginType": "core",
@@ -5238,22 +5199,22 @@
5238
5199
  "dist",
5239
5200
  "commands",
5240
5201
  "files",
5241
- "sign.js"
5202
+ "info.js"
5242
5203
  ]
5243
5204
  },
5244
- "files:unpublish": {
5205
+ "files:list": {
5245
5206
  "aliases": [],
5246
5207
  "args": {
5247
- "remote": {
5248
- "description": "Remote file path, or folder prefix with --folder",
5249
- "name": "remote",
5250
- "required": true
5208
+ "path": {
5209
+ "description": "Folder path (default: root)",
5210
+ "name": "path",
5211
+ "required": false
5251
5212
  }
5252
5213
  },
5253
- "description": "Take away a file's (or a folder's) public link",
5214
+ "description": "List files in a folder of a files integration",
5254
5215
  "examples": [
5255
- "<%= config.bin %> files unpublish invoices/2026/invoice.pdf",
5256
- "<%= config.bin %> files unpublish invoices --folder"
5216
+ "<%= config.bin %> files list --integration 66b2...",
5217
+ "<%= config.bin %> files list invoices/2026"
5257
5218
  ],
5258
5219
  "flags": {
5259
5220
  "json": {
@@ -5317,12 +5278,6 @@
5317
5278
  "multiple": false,
5318
5279
  "type": "option"
5319
5280
  },
5320
- "folder": {
5321
- "description": "Unpublish the whole folder prefix, and every link inside it",
5322
- "name": "folder",
5323
- "allowNo": false,
5324
- "type": "boolean"
5325
- },
5326
5281
  "integration": {
5327
5282
  "char": "i",
5328
5283
  "description": "Files integration ID",
@@ -5335,7 +5290,7 @@
5335
5290
  },
5336
5291
  "hasDynamicHelp": false,
5337
5292
  "hiddenAliases": [],
5338
- "id": "files:unpublish",
5293
+ "id": "files:list",
5339
5294
  "pluginAlias": "@norbix.ai/cli",
5340
5295
  "pluginName": "@norbix.ai/cli",
5341
5296
  "pluginType": "core",
@@ -5346,27 +5301,22 @@
5346
5301
  "dist",
5347
5302
  "commands",
5348
5303
  "files",
5349
- "unpublish.js"
5304
+ "list.js"
5350
5305
  ]
5351
5306
  },
5352
- "files:upload": {
5307
+ "files:publish": {
5353
5308
  "aliases": [],
5354
5309
  "args": {
5355
- "file": {
5356
- "description": "Local file to upload",
5357
- "name": "file",
5358
- "required": true
5359
- },
5360
5310
  "remote": {
5361
- "description": "Remote path (default: file name in the root folder)",
5311
+ "description": "Remote file path, or folder prefix with --folder",
5362
5312
  "name": "remote",
5363
- "required": false
5313
+ "required": true
5364
5314
  }
5365
5315
  },
5366
- "description": "Upload a local file (three steps: get signed URL, PUT bytes, commit).",
5316
+ "description": "Make a file (or a whole folder) readable by anyone holding its link — no sign-in needed",
5367
5317
  "examples": [
5368
- "<%= config.bin %> files upload ./invoice.pdf",
5369
- "<%= config.bin %> files upload ./invoice.pdf invoices/2026/invoice.pdf"
5318
+ "<%= config.bin %> files publish invoices/2026/invoice.pdf",
5319
+ "<%= config.bin %> files publish invoices --folder"
5370
5320
  ],
5371
5321
  "flags": {
5372
5322
  "json": {
@@ -5430,6 +5380,12 @@
5430
5380
  "multiple": false,
5431
5381
  "type": "option"
5432
5382
  },
5383
+ "folder": {
5384
+ "description": "Publish the whole folder prefix instead of one file",
5385
+ "name": "folder",
5386
+ "allowNo": false,
5387
+ "type": "boolean"
5388
+ },
5433
5389
  "integration": {
5434
5390
  "char": "i",
5435
5391
  "description": "Files integration ID",
@@ -5438,18 +5394,11 @@
5438
5394
  "hasDynamicHelp": false,
5439
5395
  "multiple": false,
5440
5396
  "type": "option"
5441
- },
5442
- "content-type": {
5443
- "description": "MIME type (default: guessed from extension)",
5444
- "name": "content-type",
5445
- "hasDynamicHelp": false,
5446
- "multiple": false,
5447
- "type": "option"
5448
5397
  }
5449
5398
  },
5450
5399
  "hasDynamicHelp": false,
5451
5400
  "hiddenAliases": [],
5452
- "id": "files:upload",
5401
+ "id": "files:publish",
5453
5402
  "pluginAlias": "@norbix.ai/cli",
5454
5403
  "pluginName": "@norbix.ai/cli",
5455
5404
  "pluginType": "core",
@@ -5460,21 +5409,21 @@
5460
5409
  "dist",
5461
5410
  "commands",
5462
5411
  "files",
5463
- "upload.js"
5412
+ "publish.js"
5464
5413
  ]
5465
5414
  },
5466
- "env:delete": {
5415
+ "files:sign": {
5467
5416
  "aliases": [],
5468
5417
  "args": {
5469
- "name": {
5470
- "description": "Environment name (PROD cannot be deleted)",
5471
- "name": "name",
5418
+ "remote": {
5419
+ "description": "Remote file path",
5420
+ "name": "remote",
5472
5421
  "required": true
5473
5422
  }
5474
5423
  },
5475
- "description": "Delete a non-PROD environment (cascades its integrations)",
5424
+ "description": "Get a temporary signed download URL for a file",
5476
5425
  "examples": [
5477
- "<%= config.bin %> env delete STAGING --yes"
5426
+ "<%= config.bin %> files sign invoices/2026/invoice.pdf --expires 3600"
5478
5427
  ],
5479
5428
  "flags": {
5480
5429
  "json": {
@@ -5538,17 +5487,26 @@
5538
5487
  "multiple": false,
5539
5488
  "type": "option"
5540
5489
  },
5541
- "yes": {
5542
- "char": "y",
5543
- "description": "Skip the confirmation prompt",
5544
- "name": "yes",
5545
- "allowNo": false,
5546
- "type": "boolean"
5490
+ "integration": {
5491
+ "char": "i",
5492
+ "description": "Files integration ID",
5493
+ "env": "NORBIX_FILES_INTEGRATION_ID",
5494
+ "name": "integration",
5495
+ "hasDynamicHelp": false,
5496
+ "multiple": false,
5497
+ "type": "option"
5498
+ },
5499
+ "expires": {
5500
+ "description": "URL lifetime in seconds",
5501
+ "name": "expires",
5502
+ "hasDynamicHelp": false,
5503
+ "multiple": false,
5504
+ "type": "option"
5547
5505
  }
5548
5506
  },
5549
5507
  "hasDynamicHelp": false,
5550
5508
  "hiddenAliases": [],
5551
- "id": "env:delete",
5509
+ "id": "files:sign",
5552
5510
  "pluginAlias": "@norbix.ai/cli",
5553
5511
  "pluginName": "@norbix.ai/cli",
5554
5512
  "pluginType": "core",
@@ -5558,16 +5516,23 @@
5558
5516
  "relativePath": [
5559
5517
  "dist",
5560
5518
  "commands",
5561
- "env",
5562
- "delete.js"
5519
+ "files",
5520
+ "sign.js"
5563
5521
  ]
5564
5522
  },
5565
- "env:list": {
5523
+ "files:unpublish": {
5566
5524
  "aliases": [],
5567
- "args": {},
5568
- "description": "List the project's environments (PROD is always first)",
5525
+ "args": {
5526
+ "remote": {
5527
+ "description": "Remote file path, or folder prefix with --folder",
5528
+ "name": "remote",
5529
+ "required": true
5530
+ }
5531
+ },
5532
+ "description": "Take away a file's (or a folder's) public link",
5569
5533
  "examples": [
5570
- "<%= config.bin %> env list"
5534
+ "<%= config.bin %> files unpublish invoices/2026/invoice.pdf",
5535
+ "<%= config.bin %> files unpublish invoices --folder"
5571
5536
  ],
5572
5537
  "flags": {
5573
5538
  "json": {
@@ -5630,11 +5595,26 @@
5630
5595
  "hasDynamicHelp": false,
5631
5596
  "multiple": false,
5632
5597
  "type": "option"
5598
+ },
5599
+ "folder": {
5600
+ "description": "Unpublish the whole folder prefix, and every link inside it",
5601
+ "name": "folder",
5602
+ "allowNo": false,
5603
+ "type": "boolean"
5604
+ },
5605
+ "integration": {
5606
+ "char": "i",
5607
+ "description": "Files integration ID",
5608
+ "env": "NORBIX_FILES_INTEGRATION_ID",
5609
+ "name": "integration",
5610
+ "hasDynamicHelp": false,
5611
+ "multiple": false,
5612
+ "type": "option"
5633
5613
  }
5634
5614
  },
5635
5615
  "hasDynamicHelp": false,
5636
5616
  "hiddenAliases": [],
5637
- "id": "env:list",
5617
+ "id": "files:unpublish",
5638
5618
  "pluginAlias": "@norbix.ai/cli",
5639
5619
  "pluginName": "@norbix.ai/cli",
5640
5620
  "pluginType": "core",
@@ -5644,24 +5624,28 @@
5644
5624
  "relativePath": [
5645
5625
  "dist",
5646
5626
  "commands",
5647
- "env",
5648
- "list.js"
5627
+ "files",
5628
+ "unpublish.js"
5649
5629
  ]
5650
5630
  },
5651
- "env:use": {
5631
+ "files:upload": {
5652
5632
  "aliases": [],
5653
5633
  "args": {
5654
- "name": {
5655
- "description": "Environment name (e.g. PROD, TEST)",
5656
- "name": "name",
5634
+ "file": {
5635
+ "description": "Local file to upload",
5636
+ "name": "file",
5657
5637
  "required": true
5638
+ },
5639
+ "remote": {
5640
+ "description": "Remote path (default: file name in the root folder)",
5641
+ "name": "remote",
5642
+ "required": false
5658
5643
  }
5659
5644
  },
5660
- "description": "Set the default environment for future commands.\n\nWritten to the active session when you are logged in; with --profile it is\nwritten into that profile in ~/.norbix/config; otherwise to the [default]\nprofile. Override per command with --env.",
5645
+ "description": "Upload a local file (three steps: get signed URL, PUT bytes, commit).",
5661
5646
  "examples": [
5662
- "<%= config.bin %> env use TEST",
5663
- "<%= config.bin %> env use PROD",
5664
- "<%= config.bin %> env use STAGING --profile fitskin-prod"
5647
+ "<%= config.bin %> files upload ./invoice.pdf",
5648
+ "<%= config.bin %> files upload ./invoice.pdf invoices/2026/invoice.pdf"
5665
5649
  ],
5666
5650
  "flags": {
5667
5651
  "json": {
@@ -5724,11 +5708,27 @@
5724
5708
  "hasDynamicHelp": false,
5725
5709
  "multiple": false,
5726
5710
  "type": "option"
5711
+ },
5712
+ "integration": {
5713
+ "char": "i",
5714
+ "description": "Files integration ID",
5715
+ "env": "NORBIX_FILES_INTEGRATION_ID",
5716
+ "name": "integration",
5717
+ "hasDynamicHelp": false,
5718
+ "multiple": false,
5719
+ "type": "option"
5720
+ },
5721
+ "content-type": {
5722
+ "description": "MIME type (default: guessed from extension)",
5723
+ "name": "content-type",
5724
+ "hasDynamicHelp": false,
5725
+ "multiple": false,
5726
+ "type": "option"
5727
5727
  }
5728
5728
  },
5729
5729
  "hasDynamicHelp": false,
5730
5730
  "hiddenAliases": [],
5731
- "id": "env:use",
5731
+ "id": "files:upload",
5732
5732
  "pluginAlias": "@norbix.ai/cli",
5733
5733
  "pluginName": "@norbix.ai/cli",
5734
5734
  "pluginType": "core",
@@ -5738,8 +5738,8 @@
5738
5738
  "relativePath": [
5739
5739
  "dist",
5740
5740
  "commands",
5741
- "env",
5742
- "use.js"
5741
+ "files",
5742
+ "upload.js"
5743
5743
  ]
5744
5744
  },
5745
5745
  "logs:list": {
@@ -9084,18 +9084,18 @@
9084
9084
  "unarchive.js"
9085
9085
  ]
9086
9086
  },
9087
- "users:block": {
9087
+ "webhooks:disable": {
9088
9088
  "aliases": [],
9089
9089
  "args": {
9090
- "id": {
9091
- "description": "User ID",
9092
- "name": "id",
9090
+ "destinationId": {
9091
+ "description": "Destination ID",
9092
+ "name": "destinationId",
9093
9093
  "required": true
9094
9094
  }
9095
9095
  },
9096
- "description": "Block a user (they can no longer log in)",
9096
+ "description": "Disable a webhook destination",
9097
9097
  "examples": [
9098
- "<%= config.bin %> users block 66b2f0a1..."
9098
+ "<%= config.bin %> webhooks disable 66b2f0a1..."
9099
9099
  ],
9100
9100
  "flags": {
9101
9101
  "json": {
@@ -9162,7 +9162,7 @@
9162
9162
  },
9163
9163
  "hasDynamicHelp": false,
9164
9164
  "hiddenAliases": [],
9165
- "id": "users:block",
9165
+ "id": "webhooks:disable",
9166
9166
  "pluginAlias": "@norbix.ai/cli",
9167
9167
  "pluginName": "@norbix.ai/cli",
9168
9168
  "pluginType": "core",
@@ -9172,22 +9172,22 @@
9172
9172
  "relativePath": [
9173
9173
  "dist",
9174
9174
  "commands",
9175
- "users",
9176
- "block.js"
9175
+ "webhooks",
9176
+ "disable.js"
9177
9177
  ]
9178
9178
  },
9179
- "users:delete": {
9179
+ "webhooks:enable": {
9180
9180
  "aliases": [],
9181
9181
  "args": {
9182
- "id": {
9183
- "description": "User ID",
9184
- "name": "id",
9182
+ "destinationId": {
9183
+ "description": "Destination ID",
9184
+ "name": "destinationId",
9185
9185
  "required": true
9186
9186
  }
9187
9187
  },
9188
- "description": "Delete a user",
9188
+ "description": "Enable a webhook destination",
9189
9189
  "examples": [
9190
- "<%= config.bin %> users delete 66b2f0a1... --yes"
9190
+ "<%= config.bin %> webhooks enable 66b2f0a1..."
9191
9191
  ],
9192
9192
  "flags": {
9193
9193
  "json": {
@@ -9250,18 +9250,11 @@
9250
9250
  "hasDynamicHelp": false,
9251
9251
  "multiple": false,
9252
9252
  "type": "option"
9253
- },
9254
- "yes": {
9255
- "char": "y",
9256
- "description": "Skip the confirmation prompt",
9257
- "name": "yes",
9258
- "allowNo": false,
9259
- "type": "boolean"
9260
9253
  }
9261
9254
  },
9262
9255
  "hasDynamicHelp": false,
9263
9256
  "hiddenAliases": [],
9264
- "id": "users:delete",
9257
+ "id": "webhooks:enable",
9265
9258
  "pluginAlias": "@norbix.ai/cli",
9266
9259
  "pluginName": "@norbix.ai/cli",
9267
9260
  "pluginType": "core",
@@ -9271,22 +9264,22 @@
9271
9264
  "relativePath": [
9272
9265
  "dist",
9273
9266
  "commands",
9274
- "users",
9275
- "delete.js"
9267
+ "webhooks",
9268
+ "enable.js"
9276
9269
  ]
9277
9270
  },
9278
- "users:get": {
9271
+ "webhooks:remove": {
9279
9272
  "aliases": [],
9280
9273
  "args": {
9281
- "id": {
9282
- "description": "User ID",
9283
- "name": "id",
9274
+ "destinationId": {
9275
+ "description": "Destination ID",
9276
+ "name": "destinationId",
9284
9277
  "required": true
9285
9278
  }
9286
9279
  },
9287
- "description": "Show one user",
9280
+ "description": "Remove a webhook destination",
9288
9281
  "examples": [
9289
- "<%= config.bin %> users get 66b2f0a1..."
9282
+ "<%= config.bin %> webhooks remove 66b2f0a1... --yes"
9290
9283
  ],
9291
9284
  "flags": {
9292
9285
  "json": {
@@ -9349,11 +9342,18 @@
9349
9342
  "hasDynamicHelp": false,
9350
9343
  "multiple": false,
9351
9344
  "type": "option"
9345
+ },
9346
+ "yes": {
9347
+ "char": "y",
9348
+ "description": "Skip the confirmation prompt",
9349
+ "name": "yes",
9350
+ "allowNo": false,
9351
+ "type": "boolean"
9352
9352
  }
9353
9353
  },
9354
9354
  "hasDynamicHelp": false,
9355
9355
  "hiddenAliases": [],
9356
- "id": "users:get",
9356
+ "id": "webhooks:remove",
9357
9357
  "pluginAlias": "@norbix.ai/cli",
9358
9358
  "pluginName": "@norbix.ai/cli",
9359
9359
  "pluginType": "core",
@@ -9363,22 +9363,17 @@
9363
9363
  "relativePath": [
9364
9364
  "dist",
9365
9365
  "commands",
9366
- "users",
9367
- "get.js"
9366
+ "webhooks",
9367
+ "remove.js"
9368
9368
  ]
9369
9369
  },
9370
- "users:invite": {
9370
+ "webhooks:secret": {
9371
9371
  "aliases": [],
9372
- "args": {
9373
- "email": {
9374
- "description": "Email address to invite",
9375
- "name": "email",
9376
- "required": true
9377
- }
9378
- },
9379
- "description": "Invite a user by email",
9372
+ "args": {},
9373
+ "description": "Reveal the webhook signing secret, or rotate it with --rotate",
9380
9374
  "examples": [
9381
- "<%= config.bin %> users invite alice@example.com"
9375
+ "<%= config.bin %> webhooks secret",
9376
+ "<%= config.bin %> webhooks secret --rotate --yes"
9382
9377
  ],
9383
9378
  "flags": {
9384
9379
  "json": {
@@ -9441,11 +9436,24 @@
9441
9436
  "hasDynamicHelp": false,
9442
9437
  "multiple": false,
9443
9438
  "type": "option"
9439
+ },
9440
+ "rotate": {
9441
+ "description": "Rotate the secret (old secret stops working)",
9442
+ "name": "rotate",
9443
+ "allowNo": false,
9444
+ "type": "boolean"
9445
+ },
9446
+ "yes": {
9447
+ "char": "y",
9448
+ "description": "Skip the confirmation prompt",
9449
+ "name": "yes",
9450
+ "allowNo": false,
9451
+ "type": "boolean"
9444
9452
  }
9445
9453
  },
9446
9454
  "hasDynamicHelp": false,
9447
9455
  "hiddenAliases": [],
9448
- "id": "users:invite",
9456
+ "id": "webhooks:secret",
9449
9457
  "pluginAlias": "@norbix.ai/cli",
9450
9458
  "pluginName": "@norbix.ai/cli",
9451
9459
  "pluginType": "core",
@@ -9455,17 +9463,16 @@
9455
9463
  "relativePath": [
9456
9464
  "dist",
9457
9465
  "commands",
9458
- "users",
9459
- "invite.js"
9466
+ "webhooks",
9467
+ "secret.js"
9460
9468
  ]
9461
9469
  },
9462
- "users:list": {
9470
+ "webhooks:show": {
9463
9471
  "aliases": [],
9464
9472
  "args": {},
9465
- "description": "List project users",
9473
+ "description": "Show the project's webhook integration (destinations, settings)",
9466
9474
  "examples": [
9467
- "<%= config.bin %> users list",
9468
- "<%= config.bin %> users list --role admin --page-size 100"
9475
+ "<%= config.bin %> webhooks show"
9469
9476
  ],
9470
9477
  "flags": {
9471
9478
  "json": {
@@ -9528,38 +9535,11 @@
9528
9535
  "hasDynamicHelp": false,
9529
9536
  "multiple": false,
9530
9537
  "type": "option"
9531
- },
9532
- "role": {
9533
- "description": "Only users with this role (repeatable)",
9534
- "name": "role",
9535
- "hasDynamicHelp": false,
9536
- "multiple": true,
9537
- "type": "option"
9538
- },
9539
- "permissions": {
9540
- "description": "Include permissions in the output",
9541
- "name": "permissions",
9542
- "allowNo": false,
9543
- "type": "boolean"
9544
- },
9545
- "page-size": {
9546
- "description": "Records per page",
9547
- "name": "page-size",
9548
- "hasDynamicHelp": false,
9549
- "multiple": false,
9550
- "type": "option"
9551
- },
9552
- "after": {
9553
- "description": "Cursor: fetch the page after this item",
9554
- "name": "after",
9555
- "hasDynamicHelp": false,
9556
- "multiple": false,
9557
- "type": "option"
9558
9538
  }
9559
9539
  },
9560
9540
  "hasDynamicHelp": false,
9561
9541
  "hiddenAliases": [],
9562
- "id": "users:list",
9542
+ "id": "webhooks:show",
9563
9543
  "pluginAlias": "@norbix.ai/cli",
9564
9544
  "pluginName": "@norbix.ai/cli",
9565
9545
  "pluginType": "core",
@@ -9569,16 +9549,22 @@
9569
9549
  "relativePath": [
9570
9550
  "dist",
9571
9551
  "commands",
9572
- "users",
9573
- "list.js"
9552
+ "webhooks",
9553
+ "show.js"
9574
9554
  ]
9575
9555
  },
9576
- "users:policies": {
9556
+ "users:block": {
9577
9557
  "aliases": [],
9578
- "args": {},
9579
- "description": "List membership policies",
9558
+ "args": {
9559
+ "id": {
9560
+ "description": "User ID",
9561
+ "name": "id",
9562
+ "required": true
9563
+ }
9564
+ },
9565
+ "description": "Block a user (they can no longer log in)",
9580
9566
  "examples": [
9581
- "<%= config.bin %> users policies"
9567
+ "<%= config.bin %> users block 66b2f0a1..."
9582
9568
  ],
9583
9569
  "flags": {
9584
9570
  "json": {
@@ -9645,7 +9631,7 @@
9645
9631
  },
9646
9632
  "hasDynamicHelp": false,
9647
9633
  "hiddenAliases": [],
9648
- "id": "users:policies",
9634
+ "id": "users:block",
9649
9635
  "pluginAlias": "@norbix.ai/cli",
9650
9636
  "pluginName": "@norbix.ai/cli",
9651
9637
  "pluginType": "core",
@@ -9656,15 +9642,21 @@
9656
9642
  "dist",
9657
9643
  "commands",
9658
9644
  "users",
9659
- "policies.js"
9645
+ "block.js"
9660
9646
  ]
9661
9647
  },
9662
- "users:roles": {
9648
+ "users:delete": {
9663
9649
  "aliases": [],
9664
- "args": {},
9665
- "description": "List membership roles",
9650
+ "args": {
9651
+ "id": {
9652
+ "description": "User ID",
9653
+ "name": "id",
9654
+ "required": true
9655
+ }
9656
+ },
9657
+ "description": "Delete a user",
9666
9658
  "examples": [
9667
- "<%= config.bin %> users roles"
9659
+ "<%= config.bin %> users delete 66b2f0a1... --yes"
9668
9660
  ],
9669
9661
  "flags": {
9670
9662
  "json": {
@@ -9727,11 +9719,18 @@
9727
9719
  "hasDynamicHelp": false,
9728
9720
  "multiple": false,
9729
9721
  "type": "option"
9730
- }
9731
- },
9732
- "hasDynamicHelp": false,
9733
- "hiddenAliases": [],
9734
- "id": "users:roles",
9722
+ },
9723
+ "yes": {
9724
+ "char": "y",
9725
+ "description": "Skip the confirmation prompt",
9726
+ "name": "yes",
9727
+ "allowNo": false,
9728
+ "type": "boolean"
9729
+ }
9730
+ },
9731
+ "hasDynamicHelp": false,
9732
+ "hiddenAliases": [],
9733
+ "id": "users:delete",
9735
9734
  "pluginAlias": "@norbix.ai/cli",
9736
9735
  "pluginName": "@norbix.ai/cli",
9737
9736
  "pluginType": "core",
@@ -9742,10 +9741,10 @@
9742
9741
  "dist",
9743
9742
  "commands",
9744
9743
  "users",
9745
- "roles.js"
9744
+ "delete.js"
9746
9745
  ]
9747
9746
  },
9748
- "users:unblock": {
9747
+ "users:get": {
9749
9748
  "aliases": [],
9750
9749
  "args": {
9751
9750
  "id": {
@@ -9754,9 +9753,9 @@
9754
9753
  "required": true
9755
9754
  }
9756
9755
  },
9757
- "description": "Unblock a user",
9756
+ "description": "Show one user",
9758
9757
  "examples": [
9759
- "<%= config.bin %> users unblock 66b2f0a1..."
9758
+ "<%= config.bin %> users get 66b2f0a1..."
9760
9759
  ],
9761
9760
  "flags": {
9762
9761
  "json": {
@@ -9823,7 +9822,7 @@
9823
9822
  },
9824
9823
  "hasDynamicHelp": false,
9825
9824
  "hiddenAliases": [],
9826
- "id": "users:unblock",
9825
+ "id": "users:get",
9827
9826
  "pluginAlias": "@norbix.ai/cli",
9828
9827
  "pluginName": "@norbix.ai/cli",
9829
9828
  "pluginType": "core",
@@ -9834,21 +9833,21 @@
9834
9833
  "dist",
9835
9834
  "commands",
9836
9835
  "users",
9837
- "unblock.js"
9836
+ "get.js"
9838
9837
  ]
9839
9838
  },
9840
- "webhooks:disable": {
9839
+ "users:invite": {
9841
9840
  "aliases": [],
9842
9841
  "args": {
9843
- "destinationId": {
9844
- "description": "Destination ID",
9845
- "name": "destinationId",
9842
+ "email": {
9843
+ "description": "Email address to invite",
9844
+ "name": "email",
9846
9845
  "required": true
9847
9846
  }
9848
9847
  },
9849
- "description": "Disable a webhook destination",
9848
+ "description": "Invite a user by email",
9850
9849
  "examples": [
9851
- "<%= config.bin %> webhooks disable 66b2f0a1..."
9850
+ "<%= config.bin %> users invite alice@example.com"
9852
9851
  ],
9853
9852
  "flags": {
9854
9853
  "json": {
@@ -9915,7 +9914,7 @@
9915
9914
  },
9916
9915
  "hasDynamicHelp": false,
9917
9916
  "hiddenAliases": [],
9918
- "id": "webhooks:disable",
9917
+ "id": "users:invite",
9919
9918
  "pluginAlias": "@norbix.ai/cli",
9920
9919
  "pluginName": "@norbix.ai/cli",
9921
9920
  "pluginType": "core",
@@ -9925,22 +9924,17 @@
9925
9924
  "relativePath": [
9926
9925
  "dist",
9927
9926
  "commands",
9928
- "webhooks",
9929
- "disable.js"
9927
+ "users",
9928
+ "invite.js"
9930
9929
  ]
9931
9930
  },
9932
- "webhooks:enable": {
9931
+ "users:list": {
9933
9932
  "aliases": [],
9934
- "args": {
9935
- "destinationId": {
9936
- "description": "Destination ID",
9937
- "name": "destinationId",
9938
- "required": true
9939
- }
9940
- },
9941
- "description": "Enable a webhook destination",
9933
+ "args": {},
9934
+ "description": "List project users",
9942
9935
  "examples": [
9943
- "<%= config.bin %> webhooks enable 66b2f0a1..."
9936
+ "<%= config.bin %> users list",
9937
+ "<%= config.bin %> users list --role admin --page-size 100"
9944
9938
  ],
9945
9939
  "flags": {
9946
9940
  "json": {
@@ -10003,11 +9997,38 @@
10003
9997
  "hasDynamicHelp": false,
10004
9998
  "multiple": false,
10005
9999
  "type": "option"
10000
+ },
10001
+ "role": {
10002
+ "description": "Only users with this role (repeatable)",
10003
+ "name": "role",
10004
+ "hasDynamicHelp": false,
10005
+ "multiple": true,
10006
+ "type": "option"
10007
+ },
10008
+ "permissions": {
10009
+ "description": "Include permissions in the output",
10010
+ "name": "permissions",
10011
+ "allowNo": false,
10012
+ "type": "boolean"
10013
+ },
10014
+ "page-size": {
10015
+ "description": "Records per page",
10016
+ "name": "page-size",
10017
+ "hasDynamicHelp": false,
10018
+ "multiple": false,
10019
+ "type": "option"
10020
+ },
10021
+ "after": {
10022
+ "description": "Cursor: fetch the page after this item",
10023
+ "name": "after",
10024
+ "hasDynamicHelp": false,
10025
+ "multiple": false,
10026
+ "type": "option"
10006
10027
  }
10007
10028
  },
10008
10029
  "hasDynamicHelp": false,
10009
10030
  "hiddenAliases": [],
10010
- "id": "webhooks:enable",
10031
+ "id": "users:list",
10011
10032
  "pluginAlias": "@norbix.ai/cli",
10012
10033
  "pluginName": "@norbix.ai/cli",
10013
10034
  "pluginType": "core",
@@ -10017,22 +10038,16 @@
10017
10038
  "relativePath": [
10018
10039
  "dist",
10019
10040
  "commands",
10020
- "webhooks",
10021
- "enable.js"
10041
+ "users",
10042
+ "list.js"
10022
10043
  ]
10023
10044
  },
10024
- "webhooks:remove": {
10045
+ "users:policies": {
10025
10046
  "aliases": [],
10026
- "args": {
10027
- "destinationId": {
10028
- "description": "Destination ID",
10029
- "name": "destinationId",
10030
- "required": true
10031
- }
10032
- },
10033
- "description": "Remove a webhook destination",
10047
+ "args": {},
10048
+ "description": "List membership policies",
10034
10049
  "examples": [
10035
- "<%= config.bin %> webhooks remove 66b2f0a1... --yes"
10050
+ "<%= config.bin %> users policies"
10036
10051
  ],
10037
10052
  "flags": {
10038
10053
  "json": {
@@ -10095,18 +10110,11 @@
10095
10110
  "hasDynamicHelp": false,
10096
10111
  "multiple": false,
10097
10112
  "type": "option"
10098
- },
10099
- "yes": {
10100
- "char": "y",
10101
- "description": "Skip the confirmation prompt",
10102
- "name": "yes",
10103
- "allowNo": false,
10104
- "type": "boolean"
10105
10113
  }
10106
10114
  },
10107
10115
  "hasDynamicHelp": false,
10108
10116
  "hiddenAliases": [],
10109
- "id": "webhooks:remove",
10117
+ "id": "users:policies",
10110
10118
  "pluginAlias": "@norbix.ai/cli",
10111
10119
  "pluginName": "@norbix.ai/cli",
10112
10120
  "pluginType": "core",
@@ -10116,17 +10124,16 @@
10116
10124
  "relativePath": [
10117
10125
  "dist",
10118
10126
  "commands",
10119
- "webhooks",
10120
- "remove.js"
10127
+ "users",
10128
+ "policies.js"
10121
10129
  ]
10122
10130
  },
10123
- "webhooks:secret": {
10131
+ "users:roles": {
10124
10132
  "aliases": [],
10125
10133
  "args": {},
10126
- "description": "Reveal the webhook signing secret, or rotate it with --rotate",
10134
+ "description": "List membership roles",
10127
10135
  "examples": [
10128
- "<%= config.bin %> webhooks secret",
10129
- "<%= config.bin %> webhooks secret --rotate --yes"
10136
+ "<%= config.bin %> users roles"
10130
10137
  ],
10131
10138
  "flags": {
10132
10139
  "json": {
@@ -10189,24 +10196,11 @@
10189
10196
  "hasDynamicHelp": false,
10190
10197
  "multiple": false,
10191
10198
  "type": "option"
10192
- },
10193
- "rotate": {
10194
- "description": "Rotate the secret (old secret stops working)",
10195
- "name": "rotate",
10196
- "allowNo": false,
10197
- "type": "boolean"
10198
- },
10199
- "yes": {
10200
- "char": "y",
10201
- "description": "Skip the confirmation prompt",
10202
- "name": "yes",
10203
- "allowNo": false,
10204
- "type": "boolean"
10205
10199
  }
10206
10200
  },
10207
10201
  "hasDynamicHelp": false,
10208
10202
  "hiddenAliases": [],
10209
- "id": "webhooks:secret",
10203
+ "id": "users:roles",
10210
10204
  "pluginAlias": "@norbix.ai/cli",
10211
10205
  "pluginName": "@norbix.ai/cli",
10212
10206
  "pluginType": "core",
@@ -10216,16 +10210,22 @@
10216
10210
  "relativePath": [
10217
10211
  "dist",
10218
10212
  "commands",
10219
- "webhooks",
10220
- "secret.js"
10213
+ "users",
10214
+ "roles.js"
10221
10215
  ]
10222
10216
  },
10223
- "webhooks:show": {
10217
+ "users:unblock": {
10224
10218
  "aliases": [],
10225
- "args": {},
10226
- "description": "Show the project's webhook integration (destinations, settings)",
10219
+ "args": {
10220
+ "id": {
10221
+ "description": "User ID",
10222
+ "name": "id",
10223
+ "required": true
10224
+ }
10225
+ },
10226
+ "description": "Unblock a user",
10227
10227
  "examples": [
10228
- "<%= config.bin %> webhooks show"
10228
+ "<%= config.bin %> users unblock 66b2f0a1..."
10229
10229
  ],
10230
10230
  "flags": {
10231
10231
  "json": {
@@ -10292,7 +10292,7 @@
10292
10292
  },
10293
10293
  "hasDynamicHelp": false,
10294
10294
  "hiddenAliases": [],
10295
- "id": "webhooks:show",
10295
+ "id": "users:unblock",
10296
10296
  "pluginAlias": "@norbix.ai/cli",
10297
10297
  "pluginName": "@norbix.ai/cli",
10298
10298
  "pluginType": "core",
@@ -10302,8 +10302,8 @@
10302
10302
  "relativePath": [
10303
10303
  "dist",
10304
10304
  "commands",
10305
- "webhooks",
10306
- "show.js"
10305
+ "users",
10306
+ "unblock.js"
10307
10307
  ]
10308
10308
  },
10309
10309
  "files:integrations:test": {
@@ -10400,18 +10400,12 @@
10400
10400
  "test.js"
10401
10401
  ]
10402
10402
  },
10403
- "push:integration:default": {
10403
+ "push:device:register": {
10404
10404
  "aliases": [],
10405
- "args": {
10406
- "id": {
10407
- "description": "Integration ID",
10408
- "name": "id",
10409
- "required": true
10410
- }
10411
- },
10412
- "description": "Make a push integration the default one for this project",
10405
+ "args": {},
10406
+ "description": "Register a device so push campaigns can reach it\n\nA device belongs to a user, so --user is required. --os is the operating\nsystem the token came from; the backend uses it to pick a provider.",
10413
10407
  "examples": [
10414
- "<%= config.bin %> push integration default 66b2f0a1..."
10408
+ "<%= config.bin %> push device register --user usr_123 --token dGVzdA== --os iOS"
10415
10409
  ],
10416
10410
  "flags": {
10417
10411
  "json": {
@@ -10474,11 +10468,56 @@
10474
10468
  "hasDynamicHelp": false,
10475
10469
  "multiple": false,
10476
10470
  "type": "option"
10471
+ },
10472
+ "user": {
10473
+ "description": "User ID the device belongs to",
10474
+ "name": "user",
10475
+ "required": true,
10476
+ "hasDynamicHelp": false,
10477
+ "multiple": false,
10478
+ "type": "option"
10479
+ },
10480
+ "token": {
10481
+ "description": "Device token from the platform",
10482
+ "name": "token",
10483
+ "required": true,
10484
+ "hasDynamicHelp": false,
10485
+ "multiple": false,
10486
+ "type": "option"
10487
+ },
10488
+ "os": {
10489
+ "description": "Operating system, e.g. iOS or Android",
10490
+ "name": "os",
10491
+ "required": true,
10492
+ "hasDynamicHelp": false,
10493
+ "multiple": false,
10494
+ "type": "option"
10495
+ },
10496
+ "device-id": {
10497
+ "description": "Stable device identifier",
10498
+ "name": "device-id",
10499
+ "hasDynamicHelp": false,
10500
+ "multiple": false,
10501
+ "type": "option"
10502
+ },
10503
+ "model": {
10504
+ "description": "Device model, e.g. iPhone 15",
10505
+ "name": "model",
10506
+ "hasDynamicHelp": false,
10507
+ "multiple": false,
10508
+ "type": "option"
10509
+ },
10510
+ "name": {
10511
+ "description": "The device's own name",
10512
+ "name": "name",
10513
+ "hasDynamicHelp": false,
10514
+ "multiple": false,
10515
+ "type": "option"
10477
10516
  }
10478
10517
  },
10479
10518
  "hasDynamicHelp": false,
10480
10519
  "hiddenAliases": [],
10481
- "id": "push:integration:default",
10520
+ "id": "push:device:register",
10482
10521
  "pluginAlias": "@norbix.ai/cli",
10483
10522
  "pluginName": "@norbix.ai/cli",
10484
10523
  "pluginType": "core",
@@ -10489,11 +10528,11 @@
10489
10528
  "dist",
10490
10529
  "commands",
10491
10530
  "push",
10492
- "integration",
10493
- "default.js"
10531
+ "device",
10532
+ "register.js"
10494
10533
  ]
10495
10534
  },
10496
- "push:integration:delete": {
10535
+ "push:integration:default": {
10497
10536
  "aliases": [],
10498
10537
  "args": {
10499
10538
  "id": {
@@ -10502,9 +10541,9 @@
10502
10541
  "required": true
10503
10542
  }
10504
10543
  },
10505
- "description": "Delete a push integration",
10544
+ "description": "Make a push integration the default one for this project",
10506
10545
  "examples": [
10507
- "<%= config.bin %> push integration delete 66b2f0a1... --yes"
10546
+ "<%= config.bin %> push integration default 66b2f0a1..."
10508
10547
  ],
10509
10548
  "flags": {
10510
10549
  "json": {
@@ -10567,18 +10606,11 @@
10567
10606
  "hasDynamicHelp": false,
10568
10607
  "multiple": false,
10569
10608
  "type": "option"
10570
- },
10571
- "yes": {
10572
- "char": "y",
10573
- "description": "Skip the confirmation prompt",
10574
- "name": "yes",
10575
- "allowNo": false,
10576
- "type": "boolean"
10577
10609
  }
10578
10610
  },
10579
10611
  "hasDynamicHelp": false,
10580
10612
  "hiddenAliases": [],
10581
- "id": "push:integration:delete",
10613
+ "id": "push:integration:default",
10582
10614
  "pluginAlias": "@norbix.ai/cli",
10583
10615
  "pluginName": "@norbix.ai/cli",
10584
10616
  "pluginType": "core",
@@ -10590,10 +10622,10 @@
10590
10622
  "commands",
10591
10623
  "push",
10592
10624
  "integration",
10593
- "delete.js"
10625
+ "default.js"
10594
10626
  ]
10595
10627
  },
10596
- "push:integration:disable": {
10628
+ "push:integration:delete": {
10597
10629
  "aliases": [],
10598
10630
  "args": {
10599
10631
  "id": {
@@ -10602,9 +10634,9 @@
10602
10634
  "required": true
10603
10635
  }
10604
10636
  },
10605
- "description": "Turn a push integration off",
10637
+ "description": "Delete a push integration",
10606
10638
  "examples": [
10607
- "<%= config.bin %> push integration disable 66b2f0a1..."
10639
+ "<%= config.bin %> push integration delete 66b2f0a1... --yes"
10608
10640
  ],
10609
10641
  "flags": {
10610
10642
  "json": {
@@ -10667,11 +10699,18 @@
10667
10699
  "hasDynamicHelp": false,
10668
10700
  "multiple": false,
10669
10701
  "type": "option"
10702
+ },
10703
+ "yes": {
10704
+ "char": "y",
10705
+ "description": "Skip the confirmation prompt",
10706
+ "name": "yes",
10707
+ "allowNo": false,
10708
+ "type": "boolean"
10670
10709
  }
10671
10710
  },
10672
10711
  "hasDynamicHelp": false,
10673
10712
  "hiddenAliases": [],
10674
- "id": "push:integration:disable",
10713
+ "id": "push:integration:delete",
10675
10714
  "pluginAlias": "@norbix.ai/cli",
10676
10715
  "pluginName": "@norbix.ai/cli",
10677
10716
  "pluginType": "core",
@@ -10683,10 +10722,10 @@
10683
10722
  "commands",
10684
10723
  "push",
10685
10724
  "integration",
10686
- "disable.js"
10725
+ "delete.js"
10687
10726
  ]
10688
10727
  },
10689
- "push:integration:enable": {
10728
+ "push:integration:disable": {
10690
10729
  "aliases": [],
10691
10730
  "args": {
10692
10731
  "id": {
@@ -10695,9 +10734,9 @@
10695
10734
  "required": true
10696
10735
  }
10697
10736
  },
10698
- "description": "Turn a push integration on",
10737
+ "description": "Turn a push integration off",
10699
10738
  "examples": [
10700
- "<%= config.bin %> push integration enable 66b2f0a1..."
10739
+ "<%= config.bin %> push integration disable 66b2f0a1..."
10701
10740
  ],
10702
10741
  "flags": {
10703
10742
  "json": {
@@ -10764,7 +10803,7 @@
10764
10803
  },
10765
10804
  "hasDynamicHelp": false,
10766
10805
  "hiddenAliases": [],
10767
- "id": "push:integration:enable",
10806
+ "id": "push:integration:disable",
10768
10807
  "pluginAlias": "@norbix.ai/cli",
10769
10808
  "pluginName": "@norbix.ai/cli",
10770
10809
  "pluginType": "core",
@@ -10776,15 +10815,21 @@
10776
10815
  "commands",
10777
10816
  "push",
10778
10817
  "integration",
10779
- "enable.js"
10818
+ "disable.js"
10780
10819
  ]
10781
10820
  },
10782
- "push:integration:test": {
10821
+ "push:integration:enable": {
10783
10822
  "aliases": [],
10784
- "args": {},
10785
- "description": "Send a test push through an integration\n\nPoint this at the Fake integration while you are developing — it accepts the\nsend and contacts no push service, so nothing reaches a real device.",
10823
+ "args": {
10824
+ "id": {
10825
+ "description": "Integration ID",
10826
+ "name": "id",
10827
+ "required": true
10828
+ }
10829
+ },
10830
+ "description": "Turn a push integration on",
10786
10831
  "examples": [
10787
- "<%= config.bin %> push integration test --integration 66b2f0a1... --token dGVzdA== --family Ios"
10832
+ "<%= config.bin %> push integration enable 66b2f0a1..."
10788
10833
  ],
10789
10834
  "flags": {
10790
10835
  "json": {
@@ -10847,40 +10892,11 @@
10847
10892
  "hasDynamicHelp": false,
10848
10893
  "multiple": false,
10849
10894
  "type": "option"
10850
- },
10851
- "integration": {
10852
- "description": "Integration ID to send through",
10853
- "name": "integration",
10854
- "required": true,
10855
- "hasDynamicHelp": false,
10856
- "multiple": false,
10857
- "type": "option"
10858
- },
10859
- "token": {
10860
- "description": "Device token to send the test to",
10861
- "name": "token",
10862
- "hasDynamicHelp": false,
10863
- "multiple": false,
10864
- "type": "option"
10865
- },
10866
- "family": {
10867
- "description": "Which platform the token came from",
10868
- "name": "family",
10869
- "hasDynamicHelp": false,
10870
- "multiple": false,
10871
- "options": [
10872
- "Ios",
10873
- "Android",
10874
- "Chrome",
10875
- "Safari",
10876
- "Expo"
10877
- ],
10878
- "type": "option"
10879
10895
  }
10880
10896
  },
10881
10897
  "hasDynamicHelp": false,
10882
10898
  "hiddenAliases": [],
10883
- "id": "push:integration:test",
10899
+ "id": "push:integration:enable",
10884
10900
  "pluginAlias": "@norbix.ai/cli",
10885
10901
  "pluginName": "@norbix.ai/cli",
10886
10902
  "pluginType": "core",
@@ -10892,15 +10908,15 @@
10892
10908
  "commands",
10893
10909
  "push",
10894
10910
  "integration",
10895
- "test.js"
10911
+ "enable.js"
10896
10912
  ]
10897
10913
  },
10898
- "push:device:register": {
10914
+ "push:integration:test": {
10899
10915
  "aliases": [],
10900
10916
  "args": {},
10901
- "description": "Register a device so push campaigns can reach it\n\nA device belongs to a user, so --user is required. --os is the operating\nsystem the token came from; the backend uses it to pick a provider.",
10917
+ "description": "Send a test push through an integration\n\nPoint this at the Fake integration while you are developing — it accepts the\nsend and contacts no push service, so nothing reaches a real device.",
10902
10918
  "examples": [
10903
- "<%= config.bin %> push device register --user usr_123 --token dGVzdA== --os iOS"
10919
+ "<%= config.bin %> push integration test --integration 66b2f0a1... --token dGVzdA== --family Ios"
10904
10920
  ],
10905
10921
  "flags": {
10906
10922
  "json": {
@@ -10964,55 +10980,39 @@
10964
10980
  "multiple": false,
10965
10981
  "type": "option"
10966
10982
  },
10967
- "user": {
10968
- "description": "User ID the device belongs to",
10969
- "name": "user",
10983
+ "integration": {
10984
+ "description": "Integration ID to send through",
10985
+ "name": "integration",
10970
10986
  "required": true,
10971
10987
  "hasDynamicHelp": false,
10972
10988
  "multiple": false,
10973
10989
  "type": "option"
10974
10990
  },
10975
10991
  "token": {
10976
- "description": "Device token from the platform",
10992
+ "description": "Device token to send the test to",
10977
10993
  "name": "token",
10978
- "required": true,
10979
- "hasDynamicHelp": false,
10980
- "multiple": false,
10981
- "type": "option"
10982
- },
10983
- "os": {
10984
- "description": "Operating system, e.g. iOS or Android",
10985
- "name": "os",
10986
- "required": true,
10987
- "hasDynamicHelp": false,
10988
- "multiple": false,
10989
- "type": "option"
10990
- },
10991
- "device-id": {
10992
- "description": "Stable device identifier",
10993
- "name": "device-id",
10994
10994
  "hasDynamicHelp": false,
10995
10995
  "multiple": false,
10996
10996
  "type": "option"
10997
10997
  },
10998
- "model": {
10999
- "description": "Device model, e.g. iPhone 15",
11000
- "name": "model",
11001
- "hasDynamicHelp": false,
11002
- "multiple": false,
11003
- "type": "option"
11004
- },
11005
- "name": {
11006
- "description": "The device's own name",
11007
- "name": "name",
10998
+ "family": {
10999
+ "description": "Which platform the token came from",
11000
+ "name": "family",
11008
11001
  "hasDynamicHelp": false,
11009
11002
  "multiple": false,
11003
+ "options": [
11004
+ "Ios",
11005
+ "Android",
11006
+ "Chrome",
11007
+ "Safari",
11008
+ "Expo"
11009
+ ],
11010
11010
  "type": "option"
11011
11011
  }
11012
11012
  },
11013
11013
  "hasDynamicHelp": false,
11014
11014
  "hiddenAliases": [],
11015
- "id": "push:device:register",
11015
+ "id": "push:integration:test",
11016
11016
  "pluginAlias": "@norbix.ai/cli",
11017
11017
  "pluginName": "@norbix.ai/cli",
11018
11018
  "pluginType": "core",
@@ -11023,10 +11023,10 @@
11023
11023
  "dist",
11024
11024
  "commands",
11025
11025
  "push",
11026
- "device",
11027
- "register.js"
11026
+ "integration",
11027
+ "test.js"
11028
11028
  ]
11029
11029
  }
11030
11030
  },
11031
- "version": "0.3.0"
11031
+ "version": "1.0.0"
11032
11032
  }