@bussolabs/closeyourit-cli 0.0.8 → 0.0.9

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/opencli.json CHANGED
@@ -15,14 +15,40 @@
15
15
  "optionArgumentSeparator": " "
16
16
  },
17
17
  "options": [
18
- {"name": "--help", "aliases": ["-h"], "description": "Show help.", "recursive": true},
19
- {"name": "--version", "aliases": ["-V"], "description": "Show CLI version."},
20
- {"name": "--json", "description": "Output machine-readable JSON.", "recursive": true}
18
+ {
19
+ "name": "--help",
20
+ "aliases": [
21
+ "-h"
22
+ ],
23
+ "description": "Show help.",
24
+ "recursive": true
25
+ },
26
+ {
27
+ "name": "--version",
28
+ "aliases": [
29
+ "-V"
30
+ ],
31
+ "description": "Show CLI version."
32
+ },
33
+ {
34
+ "name": "--json",
35
+ "description": "Output machine-readable JSON.",
36
+ "recursive": true
37
+ }
21
38
  ],
22
39
  "exitCodes": [
23
- {"code": 0, "description": "Success"},
24
- {"code": 1, "description": "Runtime or API error"},
25
- {"code": 2, "description": "Invalid usage (bad flags/arguments)"}
40
+ {
41
+ "code": 0,
42
+ "description": "Success"
43
+ },
44
+ {
45
+ "code": 1,
46
+ "description": "Runtime or API error"
47
+ },
48
+ {
49
+ "code": 2,
50
+ "description": "Invalid usage (bad flags/arguments)"
51
+ }
26
52
  ],
27
53
  "commands": [
28
54
  {
@@ -32,20 +58,33 @@
32
58
  {
33
59
  "name": "--api-url",
34
60
  "description": "Backend base URL to authenticate against (persisted).",
35
- "arguments": [{"name": "URL", "required": true}]
61
+ "arguments": [
62
+ {
63
+ "name": "URL",
64
+ "required": true
65
+ }
66
+ ]
36
67
  }
37
68
  ],
38
- "examples": ["closeyourit login", "closeyourit login --api-url https://staging.closeyour.it"]
69
+ "examples": [
70
+ "closeyourit login",
71
+ "closeyourit login --api-url https://staging.closeyour.it"
72
+ ]
39
73
  },
40
74
  {
41
75
  "name": "logout",
42
76
  "description": "Clear the locally stored token and identity.",
43
- "examples": ["closeyourit logout"]
77
+ "examples": [
78
+ "closeyourit logout"
79
+ ]
44
80
  },
45
81
  {
46
82
  "name": "whoami",
47
83
  "description": "Show the authenticated account, organization, token and permissions.",
48
- "examples": ["closeyourit whoami", "closeyourit whoami --json"]
84
+ "examples": [
85
+ "closeyourit whoami",
86
+ "closeyourit whoami --json"
87
+ ]
49
88
  },
50
89
  {
51
90
  "name": "projects",
@@ -55,15 +94,34 @@
55
94
  "name": "list",
56
95
  "description": "List the projects visible to you.",
57
96
  "options": [
58
- {"name": "--page", "description": "Page number.", "arguments": [{"name": "N"}]}
97
+ {
98
+ "name": "--page",
99
+ "description": "Page number.",
100
+ "arguments": [
101
+ {
102
+ "name": "N"
103
+ }
104
+ ]
105
+ }
59
106
  ],
60
- "examples": ["closeyourit projects list", "closeyourit projects list --page 2 --json"]
107
+ "examples": [
108
+ "closeyourit projects list",
109
+ "closeyourit projects list --page 2 --json"
110
+ ]
61
111
  },
62
112
  {
63
113
  "name": "show",
64
114
  "description": "Show a single project by id or key.",
65
- "arguments": [{"name": "ID", "description": "Project id (UUID) or key.", "required": true}],
66
- "examples": ["closeyourit projects show acme-api"]
115
+ "arguments": [
116
+ {
117
+ "name": "ID",
118
+ "description": "Project id (UUID) or key.",
119
+ "required": true
120
+ }
121
+ ],
122
+ "examples": [
123
+ "closeyourit projects show acme-api"
124
+ ]
67
125
  }
68
126
  ]
69
127
  },
@@ -75,51 +133,179 @@
75
133
  "name": "list",
76
134
  "description": "List error groups for a project.",
77
135
  "options": [
78
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]},
79
- {"name": "--status", "description": "Filter by status.", "arguments": [{"name": "STATUS"}]},
80
- {"name": "--page", "description": "Page number.", "arguments": [{"name": "N"}]}
136
+ {
137
+ "name": "--project",
138
+ "aliases": [
139
+ "-p"
140
+ ],
141
+ "required": true,
142
+ "description": "Project id (UUID) or key.",
143
+ "arguments": [
144
+ {
145
+ "name": "PROJECT",
146
+ "required": true
147
+ }
148
+ ]
149
+ },
150
+ {
151
+ "name": "--status",
152
+ "description": "Filter by status.",
153
+ "arguments": [
154
+ {
155
+ "name": "STATUS"
156
+ }
157
+ ]
158
+ },
159
+ {
160
+ "name": "--page",
161
+ "description": "Page number.",
162
+ "arguments": [
163
+ {
164
+ "name": "N"
165
+ }
166
+ ]
167
+ }
81
168
  ],
82
- "examples": ["closeyourit errors list --project acme-api --status unresolved"]
169
+ "examples": [
170
+ "closeyourit errors list --project acme-api --status unresolved"
171
+ ]
83
172
  },
84
173
  {
85
174
  "name": "show",
86
175
  "description": "Show a single error group.",
87
- "arguments": [{"name": "ID", "description": "Error group id.", "required": true}],
176
+ "arguments": [
177
+ {
178
+ "name": "ID",
179
+ "description": "Error group id.",
180
+ "required": true
181
+ }
182
+ ],
88
183
  "options": [
89
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
184
+ {
185
+ "name": "--project",
186
+ "aliases": [
187
+ "-p"
188
+ ],
189
+ "required": true,
190
+ "description": "Project id (UUID) or key.",
191
+ "arguments": [
192
+ {
193
+ "name": "PROJECT",
194
+ "required": true
195
+ }
196
+ ]
197
+ }
90
198
  ],
91
- "examples": ["closeyourit errors show <group-id> --project acme-api"]
199
+ "examples": [
200
+ "closeyourit errors show <group-id> --project acme-api"
201
+ ]
92
202
  },
93
203
  {
94
204
  "name": "resolve",
95
205
  "description": "Mark an error group as resolved.",
96
- "arguments": [{"name": "ID", "description": "Error group id.", "required": true}],
206
+ "arguments": [
207
+ {
208
+ "name": "ID",
209
+ "description": "Error group id.",
210
+ "required": true
211
+ }
212
+ ],
97
213
  "options": [
98
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
214
+ {
215
+ "name": "--project",
216
+ "aliases": [
217
+ "-p"
218
+ ],
219
+ "required": true,
220
+ "description": "Project id (UUID) or key.",
221
+ "arguments": [
222
+ {
223
+ "name": "PROJECT",
224
+ "required": true
225
+ }
226
+ ]
227
+ }
99
228
  ]
100
229
  },
101
230
  {
102
231
  "name": "reopen",
103
232
  "description": "Reopen a resolved error group.",
104
- "arguments": [{"name": "ID", "description": "Error group id.", "required": true}],
233
+ "arguments": [
234
+ {
235
+ "name": "ID",
236
+ "description": "Error group id.",
237
+ "required": true
238
+ }
239
+ ],
105
240
  "options": [
106
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
241
+ {
242
+ "name": "--project",
243
+ "aliases": [
244
+ "-p"
245
+ ],
246
+ "required": true,
247
+ "description": "Project id (UUID) or key.",
248
+ "arguments": [
249
+ {
250
+ "name": "PROJECT",
251
+ "required": true
252
+ }
253
+ ]
254
+ }
107
255
  ]
108
256
  },
109
257
  {
110
258
  "name": "mute",
111
259
  "description": "Mute an error group.",
112
- "arguments": [{"name": "ID", "description": "Error group id.", "required": true}],
260
+ "arguments": [
261
+ {
262
+ "name": "ID",
263
+ "description": "Error group id.",
264
+ "required": true
265
+ }
266
+ ],
113
267
  "options": [
114
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
268
+ {
269
+ "name": "--project",
270
+ "aliases": [
271
+ "-p"
272
+ ],
273
+ "required": true,
274
+ "description": "Project id (UUID) or key.",
275
+ "arguments": [
276
+ {
277
+ "name": "PROJECT",
278
+ "required": true
279
+ }
280
+ ]
281
+ }
115
282
  ]
116
283
  },
117
284
  {
118
285
  "name": "unmute",
119
286
  "description": "Unmute an error group.",
120
- "arguments": [{"name": "ID", "description": "Error group id.", "required": true}],
287
+ "arguments": [
288
+ {
289
+ "name": "ID",
290
+ "description": "Error group id.",
291
+ "required": true
292
+ }
293
+ ],
121
294
  "options": [
122
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
295
+ {
296
+ "name": "--project",
297
+ "aliases": [
298
+ "-p"
299
+ ],
300
+ "required": true,
301
+ "description": "Project id (UUID) or key.",
302
+ "arguments": [
303
+ {
304
+ "name": "PROJECT",
305
+ "required": true
306
+ }
307
+ ]
308
+ }
123
309
  ]
124
310
  }
125
311
  ]
@@ -132,33 +318,119 @@
132
318
  "name": "list",
133
319
  "description": "List ingest tokens for a project.",
134
320
  "options": [
135
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
321
+ {
322
+ "name": "--project",
323
+ "aliases": [
324
+ "-p"
325
+ ],
326
+ "required": true,
327
+ "description": "Project id (UUID) or key.",
328
+ "arguments": [
329
+ {
330
+ "name": "PROJECT",
331
+ "required": true
332
+ }
333
+ ]
334
+ }
136
335
  ]
137
336
  },
138
337
  {
139
338
  "name": "create",
140
339
  "description": "Create an ingest token (the secret is shown only once).",
141
340
  "options": [
142
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]},
143
- {"name": "--name", "required": true, "description": "Human-readable token name.", "arguments": [{"name": "NAME", "required": true}]},
144
- {"name": "--environment-id", "required": true, "description": "Environment id the token is scoped to.", "arguments": [{"name": "ENV_ID", "required": true}]}
341
+ {
342
+ "name": "--project",
343
+ "aliases": [
344
+ "-p"
345
+ ],
346
+ "required": true,
347
+ "description": "Project id (UUID) or key.",
348
+ "arguments": [
349
+ {
350
+ "name": "PROJECT",
351
+ "required": true
352
+ }
353
+ ]
354
+ },
355
+ {
356
+ "name": "--name",
357
+ "required": true,
358
+ "description": "Human-readable token name.",
359
+ "arguments": [
360
+ {
361
+ "name": "NAME",
362
+ "required": true
363
+ }
364
+ ]
365
+ },
366
+ {
367
+ "name": "--environment-id",
368
+ "required": true,
369
+ "description": "Environment id the token is scoped to.",
370
+ "arguments": [
371
+ {
372
+ "name": "ENV_ID",
373
+ "required": true
374
+ }
375
+ ]
376
+ }
145
377
  ],
146
- "examples": ["closeyourit tokens create --project acme-api --name \"CI prod\" --environment-id <env-id>"]
378
+ "examples": [
379
+ "closeyourit tokens create --project acme-api --name \"CI prod\" --environment-id <env-id>"
380
+ ]
147
381
  },
148
382
  {
149
383
  "name": "rotate",
150
384
  "description": "Rotate an ingest token (the new secret is shown only once).",
151
- "arguments": [{"name": "ID", "description": "Token id.", "required": true}],
385
+ "arguments": [
386
+ {
387
+ "name": "ID",
388
+ "description": "Token id.",
389
+ "required": true
390
+ }
391
+ ],
152
392
  "options": [
153
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
393
+ {
394
+ "name": "--project",
395
+ "aliases": [
396
+ "-p"
397
+ ],
398
+ "required": true,
399
+ "description": "Project id (UUID) or key.",
400
+ "arguments": [
401
+ {
402
+ "name": "PROJECT",
403
+ "required": true
404
+ }
405
+ ]
406
+ }
154
407
  ]
155
408
  },
156
409
  {
157
410
  "name": "revoke",
158
411
  "description": "Revoke an ingest token.",
159
- "arguments": [{"name": "ID", "description": "Token id.", "required": true}],
412
+ "arguments": [
413
+ {
414
+ "name": "ID",
415
+ "description": "Token id.",
416
+ "required": true
417
+ }
418
+ ],
160
419
  "options": [
161
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
420
+ {
421
+ "name": "--project",
422
+ "aliases": [
423
+ "-p"
424
+ ],
425
+ "required": true,
426
+ "description": "Project id (UUID) or key.",
427
+ "arguments": [
428
+ {
429
+ "name": "PROJECT",
430
+ "required": true
431
+ }
432
+ ]
433
+ }
162
434
  ]
163
435
  }
164
436
  ]
@@ -171,34 +443,163 @@
171
443
  "name": "list",
172
444
  "description": "List tickets for a project.",
173
445
  "options": [
174
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]},
175
- {"name": "--page", "description": "Page number.", "arguments": [{"name": "N"}]}
446
+ {
447
+ "name": "--project",
448
+ "aliases": [
449
+ "-p"
450
+ ],
451
+ "required": true,
452
+ "description": "Project id (UUID) or key.",
453
+ "arguments": [
454
+ {
455
+ "name": "PROJECT",
456
+ "required": true
457
+ }
458
+ ]
459
+ },
460
+ {
461
+ "name": "--page",
462
+ "description": "Page number.",
463
+ "arguments": [
464
+ {
465
+ "name": "N"
466
+ }
467
+ ]
468
+ }
176
469
  ]
177
470
  },
178
471
  {
179
472
  "name": "show",
180
473
  "description": "Show a single ticket.",
181
- "arguments": [{"name": "ID", "description": "Ticket id or code.", "required": true}],
474
+ "arguments": [
475
+ {
476
+ "name": "ID",
477
+ "description": "Ticket id or code.",
478
+ "required": true
479
+ }
480
+ ],
182
481
  "options": [
183
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
482
+ {
483
+ "name": "--project",
484
+ "aliases": [
485
+ "-p"
486
+ ],
487
+ "required": true,
488
+ "description": "Project id (UUID) or key.",
489
+ "arguments": [
490
+ {
491
+ "name": "PROJECT",
492
+ "required": true
493
+ }
494
+ ]
495
+ }
184
496
  ]
185
497
  },
186
498
  {
187
499
  "name": "create",
188
500
  "description": "Create a ticket.",
189
501
  "options": [
190
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]},
191
- {"name": "--title", "required": true, "description": "Ticket title.", "arguments": [{"name": "TITLE", "required": true}]},
192
- {"name": "--kind", "description": "Ticket kind (default: bug).", "arguments": [{"name": "KIND"}]},
193
- {"name": "--description", "description": "Free-form description.", "arguments": [{"name": "TEXT"}]},
194
- {"name": "--step-given", "description": "Given (precondition).", "arguments": [{"name": "TEXT"}]},
195
- {"name": "--step-when", "description": "When (action).", "arguments": [{"name": "TEXT"}]},
196
- {"name": "--step-then", "description": "Then (outcome).", "arguments": [{"name": "TEXT"}]},
197
- {"name": "--step-expected", "description": "Expected result.", "arguments": [{"name": "TEXT"}]},
198
- {"name": "--status-id", "description": "Status lookup id.", "arguments": [{"name": "STATUS_ID"}]},
199
- {"name": "--priority-id", "description": "Priority lookup id.", "arguments": [{"name": "PRIORITY_ID"}]}
200
- ],
201
- "examples": ["closeyourit tickets create --project acme-api --title \"Checkout fails\""]
502
+ {
503
+ "name": "--project",
504
+ "aliases": [
505
+ "-p"
506
+ ],
507
+ "required": true,
508
+ "description": "Project id (UUID) or key.",
509
+ "arguments": [
510
+ {
511
+ "name": "PROJECT",
512
+ "required": true
513
+ }
514
+ ]
515
+ },
516
+ {
517
+ "name": "--title",
518
+ "required": true,
519
+ "description": "Ticket title.",
520
+ "arguments": [
521
+ {
522
+ "name": "TITLE",
523
+ "required": true
524
+ }
525
+ ]
526
+ },
527
+ {
528
+ "name": "--kind",
529
+ "description": "Ticket kind (default: bug).",
530
+ "arguments": [
531
+ {
532
+ "name": "KIND"
533
+ }
534
+ ]
535
+ },
536
+ {
537
+ "name": "--description",
538
+ "description": "Free-form description.",
539
+ "arguments": [
540
+ {
541
+ "name": "TEXT"
542
+ }
543
+ ]
544
+ },
545
+ {
546
+ "name": "--step-given",
547
+ "description": "Given (precondition).",
548
+ "arguments": [
549
+ {
550
+ "name": "TEXT"
551
+ }
552
+ ]
553
+ },
554
+ {
555
+ "name": "--step-when",
556
+ "description": "When (action).",
557
+ "arguments": [
558
+ {
559
+ "name": "TEXT"
560
+ }
561
+ ]
562
+ },
563
+ {
564
+ "name": "--step-then",
565
+ "description": "Then (outcome).",
566
+ "arguments": [
567
+ {
568
+ "name": "TEXT"
569
+ }
570
+ ]
571
+ },
572
+ {
573
+ "name": "--step-expected",
574
+ "description": "Expected result.",
575
+ "arguments": [
576
+ {
577
+ "name": "TEXT"
578
+ }
579
+ ]
580
+ },
581
+ {
582
+ "name": "--status-id",
583
+ "description": "Status lookup id.",
584
+ "arguments": [
585
+ {
586
+ "name": "STATUS_ID"
587
+ }
588
+ ]
589
+ },
590
+ {
591
+ "name": "--priority-id",
592
+ "description": "Priority lookup id.",
593
+ "arguments": [
594
+ {
595
+ "name": "PRIORITY_ID"
596
+ }
597
+ ]
598
+ }
599
+ ],
600
+ "examples": [
601
+ "closeyourit tickets create --project acme-api --title \"Checkout fails\""
602
+ ]
202
603
  }
203
604
  ]
204
605
  },
@@ -210,17 +611,215 @@
210
611
  "name": "list",
211
612
  "description": "List performance metric groups for a project.",
212
613
  "options": [
213
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]},
214
- {"name": "--kind", "description": "Filter by metric kind (e.g. sql, method).", "arguments": [{"name": "KIND"}]},
215
- {"name": "--page", "description": "Page number.", "arguments": [{"name": "N"}]}
614
+ {
615
+ "name": "--project",
616
+ "aliases": [
617
+ "-p"
618
+ ],
619
+ "required": true,
620
+ "description": "Project id (UUID) or key.",
621
+ "arguments": [
622
+ {
623
+ "name": "PROJECT",
624
+ "required": true
625
+ }
626
+ ]
627
+ },
628
+ {
629
+ "name": "--kind",
630
+ "description": "Filter by metric kind (e.g. sql, method).",
631
+ "arguments": [
632
+ {
633
+ "name": "KIND"
634
+ }
635
+ ]
636
+ },
637
+ {
638
+ "name": "--page",
639
+ "description": "Page number.",
640
+ "arguments": [
641
+ {
642
+ "name": "N"
643
+ }
644
+ ]
645
+ }
216
646
  ]
217
647
  },
218
648
  {
219
649
  "name": "show",
220
650
  "description": "Show a single metric group.",
221
- "arguments": [{"name": "ID", "description": "Metric group id.", "required": true}],
651
+ "arguments": [
652
+ {
653
+ "name": "ID",
654
+ "description": "Metric group id.",
655
+ "required": true
656
+ }
657
+ ],
658
+ "options": [
659
+ {
660
+ "name": "--project",
661
+ "aliases": [
662
+ "-p"
663
+ ],
664
+ "required": true,
665
+ "description": "Project id (UUID) or key.",
666
+ "arguments": [
667
+ {
668
+ "name": "PROJECT",
669
+ "required": true
670
+ }
671
+ ]
672
+ }
673
+ ]
674
+ }
675
+ ]
676
+ },
677
+ {
678
+ "name": "servers",
679
+ "description": "Server monitoring fleet: list/show hosts, rename, pause/resume, revoke, delete; manage enrollment tokens.",
680
+ "commands": [
681
+ {
682
+ "name": "list",
683
+ "description": "List the monitored servers (fleet snapshot).",
684
+ "options": [
685
+ {
686
+ "name": "--page",
687
+ "description": "Page number."
688
+ },
689
+ {
690
+ "name": "--status",
691
+ "description": "Filter by status (repeatable: pending|up|down|paused)."
692
+ }
693
+ ]
694
+ },
695
+ {
696
+ "name": "show",
697
+ "description": "Show a monitored server (latest snapshot).",
698
+ "arguments": [
699
+ {
700
+ "name": "ID",
701
+ "required": true
702
+ }
703
+ ]
704
+ },
705
+ {
706
+ "name": "rename",
707
+ "description": "Rename a server (display name).",
708
+ "arguments": [
709
+ {
710
+ "name": "ID",
711
+ "required": true
712
+ }
713
+ ],
714
+ "options": [
715
+ {
716
+ "name": "--name",
717
+ "description": "New display name.",
718
+ "arguments": [
719
+ {
720
+ "name": "NAME",
721
+ "required": true
722
+ }
723
+ ]
724
+ }
725
+ ]
726
+ },
727
+ {
728
+ "name": "pause",
729
+ "description": "Pause a server (no staleness/alerts).",
730
+ "arguments": [
731
+ {
732
+ "name": "ID",
733
+ "required": true
734
+ }
735
+ ]
736
+ },
737
+ {
738
+ "name": "resume",
739
+ "description": "Resume a paused server.",
740
+ "arguments": [
741
+ {
742
+ "name": "ID",
743
+ "required": true
744
+ }
745
+ ]
746
+ },
747
+ {
748
+ "name": "revoke",
749
+ "description": "Revoke a server: its agent gets 403 and stops.",
750
+ "arguments": [
751
+ {
752
+ "name": "ID",
753
+ "required": true
754
+ }
755
+ ],
222
756
  "options": [
223
- {"name": "--project", "aliases": ["-p"], "required": true, "description": "Project id (UUID) or key.", "arguments": [{"name": "PROJECT", "required": true}]}
757
+ {
758
+ "name": "--confirm",
759
+ "description": "Required confirmation."
760
+ }
761
+ ]
762
+ },
763
+ {
764
+ "name": "unrevoke",
765
+ "description": "Restore a revoked server.",
766
+ "arguments": [
767
+ {
768
+ "name": "ID",
769
+ "required": true
770
+ }
771
+ ]
772
+ },
773
+ {
774
+ "name": "delete",
775
+ "description": "Delete a server and all its metrics.",
776
+ "arguments": [
777
+ {
778
+ "name": "ID",
779
+ "required": true
780
+ }
781
+ ],
782
+ "options": [
783
+ {
784
+ "name": "--confirm",
785
+ "description": "Required confirmation."
786
+ }
787
+ ]
788
+ },
789
+ {
790
+ "name": "tokens",
791
+ "description": "Fleet enrollment tokens.",
792
+ "commands": [
793
+ {
794
+ "name": "list",
795
+ "description": "List enrollment tokens."
796
+ },
797
+ {
798
+ "name": "create",
799
+ "description": "Create a token (secret shown once).",
800
+ "arguments": [
801
+ {
802
+ "name": "NAME",
803
+ "required": true
804
+ }
805
+ ]
806
+ },
807
+ {
808
+ "name": "revoke",
809
+ "description": "Revoke an enrollment token.",
810
+ "arguments": [
811
+ {
812
+ "name": "ID",
813
+ "required": true
814
+ }
815
+ ],
816
+ "options": [
817
+ {
818
+ "name": "--confirm",
819
+ "description": "Required confirmation."
820
+ }
821
+ ]
822
+ }
224
823
  ]
225
824
  }
226
825
  ]