@cloudfleet/sdk 0.0.1-d582884 → 0.0.1-d824507

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.
Files changed (60) hide show
  1. package/dist/@tanstack/react-query.gen.d.ts +1125 -0
  2. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  3. package/dist/@tanstack/react-query.gen.js +1129 -0
  4. package/dist/@tanstack/react-query.gen.js.map +1 -0
  5. package/dist/client/client.gen.d.ts.map +1 -1
  6. package/dist/client/client.gen.js +113 -98
  7. package/dist/client/client.gen.js.map +1 -1
  8. package/dist/client/index.d.ts +1 -1
  9. package/dist/client/index.d.ts.map +1 -1
  10. package/dist/client/index.js.map +1 -1
  11. package/dist/client/types.gen.d.ts +9 -13
  12. package/dist/client/types.gen.d.ts.map +1 -1
  13. package/dist/client/utils.gen.d.ts +6 -2
  14. package/dist/client/utils.gen.d.ts.map +1 -1
  15. package/dist/client/utils.gen.js +10 -12
  16. package/dist/client/utils.gen.js.map +1 -1
  17. package/dist/client.gen.d.ts.map +1 -1
  18. package/dist/client.gen.js +1 -3
  19. package/dist/client.gen.js.map +1 -1
  20. package/dist/core/auth.gen.d.ts.map +1 -1
  21. package/dist/core/auth.gen.js.map +1 -1
  22. package/dist/core/bodySerializer.gen.d.ts +16 -8
  23. package/dist/core/bodySerializer.gen.d.ts.map +1 -1
  24. package/dist/core/bodySerializer.gen.js +1 -1
  25. package/dist/core/bodySerializer.gen.js.map +1 -1
  26. package/dist/core/params.gen.d.ts +10 -0
  27. package/dist/core/params.gen.d.ts.map +1 -1
  28. package/dist/core/params.gen.js +18 -6
  29. package/dist/core/params.gen.js.map +1 -1
  30. package/dist/core/pathSerializer.gen.d.ts.map +1 -1
  31. package/dist/core/pathSerializer.gen.js +3 -11
  32. package/dist/core/pathSerializer.gen.js.map +1 -1
  33. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -1
  34. package/dist/core/queryKeySerializer.gen.js +4 -11
  35. package/dist/core/queryKeySerializer.gen.js.map +1 -1
  36. package/dist/core/serverSentEvents.gen.d.ts +1 -1
  37. package/dist/core/serverSentEvents.gen.d.ts.map +1 -1
  38. package/dist/core/serverSentEvents.gen.js +6 -9
  39. package/dist/core/serverSentEvents.gen.js.map +1 -1
  40. package/dist/core/types.gen.d.ts +1 -1
  41. package/dist/core/types.gen.d.ts.map +1 -1
  42. package/dist/core/utils.gen.d.ts.map +1 -1
  43. package/dist/core/utils.gen.js +1 -1
  44. package/dist/core/utils.gen.js.map +1 -1
  45. package/dist/schemas.gen.d.ts +482 -32
  46. package/dist/schemas.gen.d.ts.map +1 -1
  47. package/dist/schemas.gen.js +1108 -125
  48. package/dist/schemas.gen.js.map +1 -1
  49. package/dist/sdk.gen.d.ts +45 -5
  50. package/dist/sdk.gen.d.ts.map +1 -1
  51. package/dist/sdk.gen.js +105 -141
  52. package/dist/sdk.gen.js.map +1 -1
  53. package/dist/services/kubernetes/api.d.ts +8 -8
  54. package/dist/types.gen.d.ts +411 -21
  55. package/dist/types.gen.d.ts.map +1 -1
  56. package/dist/zod.gen.d.ts +692 -575
  57. package/dist/zod.gen.d.ts.map +1 -1
  58. package/dist/zod.gen.js +398 -493
  59. package/dist/zod.gen.js.map +1 -1
  60. package/package.json +28 -5
@@ -74,10 +74,142 @@ export const BillingContactSchema = {
74
74
  nullable: true,
75
75
  description: 'Type of the tax ID.',
76
76
  example: 'de_vat',
77
- enum: ['ad_nrt', 'ae_trn', 'al_tin', 'am_tin', 'ao_tin', 'ar_cuit', 'at_vat', 'au_abn', 'au_arn', 'ba_tin', 'bb_tin', 'be_vat', 'bg_uic', 'bg_vat', 'bh_vat', 'bo_tin', 'br_cnpj', 'br_cpf', 'bs_tin', 'by_tin', 'ca_bn', 'ca_gst_hst', 'ca_pst_bc', 'ca_pst_mb', 'ca_pst_sk', 'ca_qst', 'cd_nif', 'ch_uid', 'ch_vat', 'cl_tin', 'cn_tin', 'co_nit', 'cr_tin', 'cy_vat', 'cz_vat', 'de_stn', 'de_vat', 'dk_vat', 'do_rcn', 'ec_ruc', 'ee_vat', 'eg_tin', 'es_cif', 'es_vat', 'eu_oss_vat', 'fi_vat', 'fr_vat', 'gb_vat', 'ge_vat', 'gn_nif', 'gr_vat', 'hk_br', 'hr_oib', 'hr_vat', 'hu_tin', 'hu_vat', 'id_npwp', 'ie_vat', 'il_vat', 'in_gst', 'is_vat', 'it_vat', 'jp_cn', 'jp_rn', 'jp_trn', 'ke_pin', 'kh_tin', 'kr_brn', 'kz_bin', 'li_uid', 'li_vat', 'lt_vat', 'lu_vat', 'lv_vat', 'ma_vat', 'md_vat', 'me_pib', 'mk_vat', 'mr_nif', 'mt_vat', 'mx_rfc', 'my_frp', 'my_itn', 'my_sst', 'ng_tin', 'nl_vat', 'no_vat', 'no_voec', 'np_pan', 'nz_gst', 'om_vat', 'pe_ruc', 'ph_tin', 'pl_vat', 'pt_vat', 'ro_tin', 'ro_vat', 'rs_pib', 'ru_inn', 'ru_kpp', 'sa_vat', 'se_vat', 'sg_gst', 'sg_uen', 'si_tin', 'si_vat', 'sk_vat', 'sn_ninea', 'sr_fin', 'sv_nit', 'th_vat', 'tj_tin', 'tr_tin', 'tw_vat', 'tz_vat', 'ua_vat', 'ug_tin', 'us_ein', 'uy_ruc', 'uz_tin', 'uz_vat', 've_rif', 'vn_tin', 'xi_vat', 'za_vat', 'zm_tin', 'zw_tin', '']
77
+ enum: [
78
+ 'ad_nrt',
79
+ 'ae_trn',
80
+ 'al_tin',
81
+ 'am_tin',
82
+ 'ao_tin',
83
+ 'ar_cuit',
84
+ 'at_vat',
85
+ 'au_abn',
86
+ 'au_arn',
87
+ 'ba_tin',
88
+ 'bb_tin',
89
+ 'be_vat',
90
+ 'bg_uic',
91
+ 'bg_vat',
92
+ 'bh_vat',
93
+ 'bo_tin',
94
+ 'br_cnpj',
95
+ 'br_cpf',
96
+ 'bs_tin',
97
+ 'by_tin',
98
+ 'ca_bn',
99
+ 'ca_gst_hst',
100
+ 'ca_pst_bc',
101
+ 'ca_pst_mb',
102
+ 'ca_pst_sk',
103
+ 'ca_qst',
104
+ 'cd_nif',
105
+ 'ch_uid',
106
+ 'ch_vat',
107
+ 'cl_tin',
108
+ 'cn_tin',
109
+ 'co_nit',
110
+ 'cr_tin',
111
+ 'cy_vat',
112
+ 'cz_vat',
113
+ 'de_stn',
114
+ 'de_vat',
115
+ 'dk_vat',
116
+ 'do_rcn',
117
+ 'ec_ruc',
118
+ 'ee_vat',
119
+ 'eg_tin',
120
+ 'es_cif',
121
+ 'es_vat',
122
+ 'eu_oss_vat',
123
+ 'fi_vat',
124
+ 'fr_vat',
125
+ 'gb_vat',
126
+ 'ge_vat',
127
+ 'gn_nif',
128
+ 'gr_vat',
129
+ 'hk_br',
130
+ 'hr_oib',
131
+ 'hr_vat',
132
+ 'hu_tin',
133
+ 'hu_vat',
134
+ 'id_npwp',
135
+ 'ie_vat',
136
+ 'il_vat',
137
+ 'in_gst',
138
+ 'is_vat',
139
+ 'it_vat',
140
+ 'jp_cn',
141
+ 'jp_rn',
142
+ 'jp_trn',
143
+ 'ke_pin',
144
+ 'kh_tin',
145
+ 'kr_brn',
146
+ 'kz_bin',
147
+ 'li_uid',
148
+ 'li_vat',
149
+ 'lt_vat',
150
+ 'lu_vat',
151
+ 'lv_vat',
152
+ 'ma_vat',
153
+ 'md_vat',
154
+ 'me_pib',
155
+ 'mk_vat',
156
+ 'mr_nif',
157
+ 'mt_vat',
158
+ 'mx_rfc',
159
+ 'my_frp',
160
+ 'my_itn',
161
+ 'my_sst',
162
+ 'ng_tin',
163
+ 'nl_vat',
164
+ 'no_vat',
165
+ 'no_voec',
166
+ 'np_pan',
167
+ 'nz_gst',
168
+ 'om_vat',
169
+ 'pe_ruc',
170
+ 'ph_tin',
171
+ 'pl_vat',
172
+ 'pt_vat',
173
+ 'ro_tin',
174
+ 'ro_vat',
175
+ 'rs_pib',
176
+ 'ru_inn',
177
+ 'ru_kpp',
178
+ 'sa_vat',
179
+ 'se_vat',
180
+ 'sg_gst',
181
+ 'sg_uen',
182
+ 'si_tin',
183
+ 'si_vat',
184
+ 'sk_vat',
185
+ 'sn_ninea',
186
+ 'sr_fin',
187
+ 'sv_nit',
188
+ 'th_vat',
189
+ 'tj_tin',
190
+ 'tr_tin',
191
+ 'tw_vat',
192
+ 'tz_vat',
193
+ 'ua_vat',
194
+ 'ug_tin',
195
+ 'us_ein',
196
+ 'uy_ruc',
197
+ 'uz_tin',
198
+ 'uz_vat',
199
+ 've_rif',
200
+ 'vn_tin',
201
+ 'xi_vat',
202
+ 'za_vat',
203
+ 'zm_tin',
204
+ 'zw_tin',
205
+ ''
206
+ ]
78
207
  }
79
208
  },
80
- required: ['email', 'individual_name'],
209
+ required: [
210
+ 'email',
211
+ 'individual_name'
212
+ ],
81
213
  additionalProperties: false
82
214
  };
83
215
  export const BillingCreditsSchema = {
@@ -92,7 +224,10 @@ export const BillingCreditsSchema = {
92
224
  type: 'string',
93
225
  description: 'Type of the promotional code.',
94
226
  example: 'credit',
95
- enum: ['credit', 'discount']
227
+ enum: [
228
+ 'credit',
229
+ 'discount'
230
+ ]
96
231
  },
97
232
  date_start: {
98
233
  type: 'string',
@@ -129,7 +264,12 @@ export const BillingCreditsSchema = {
129
264
  example: 8
130
265
  }
131
266
  },
132
- required: ['type', 'date_start', 'code', 'value_total'],
267
+ required: [
268
+ 'type',
269
+ 'date_start',
270
+ 'code',
271
+ 'value_total'
272
+ ],
133
273
  additionalProperties: false
134
274
  };
135
275
  export const ChartCreateInputSchema = {
@@ -170,7 +310,13 @@ export const ChartCreateInputSchema = {
170
310
  example: 'postgresql'
171
311
  }
172
312
  },
173
- required: ['values', 'version_channel', 'name', 'namespace', 'chart'],
313
+ required: [
314
+ 'values',
315
+ 'version_channel',
316
+ 'name',
317
+ 'namespace',
318
+ 'chart'
319
+ ],
174
320
  additionalProperties: false
175
321
  };
176
322
  export const ChartSchema = {
@@ -214,7 +360,22 @@ export const ChartSchema = {
214
360
  type: 'string',
215
361
  description: 'Status of the chart deployment.',
216
362
  example: 'active',
217
- enum: ['InstallSucceeded', 'InstallFailed', 'UpgradeSucceeded', 'UpgradeFailed', 'TestSucceeded', 'TestFailed', 'RollbackSucceeded', 'RollbackFailed', 'UninstallSucceeded', 'UninstallFailed', 'ArtifactFailed', 'DependencyNotReady', 'Progressing', 'SourceNotReady']
363
+ enum: [
364
+ 'InstallSucceeded',
365
+ 'InstallFailed',
366
+ 'UpgradeSucceeded',
367
+ 'UpgradeFailed',
368
+ 'TestSucceeded',
369
+ 'TestFailed',
370
+ 'RollbackSucceeded',
371
+ 'RollbackFailed',
372
+ 'UninstallSucceeded',
373
+ 'UninstallFailed',
374
+ 'ArtifactFailed',
375
+ 'DependencyNotReady',
376
+ 'Progressing',
377
+ 'SourceNotReady'
378
+ ]
218
379
  },
219
380
  version_current: {
220
381
  type: 'string',
@@ -237,7 +398,18 @@ export const ChartSchema = {
237
398
  example: true
238
399
  }
239
400
  },
240
- required: ['values', 'version_channel', 'name', 'namespace', 'chart', 'status', 'version_current', 'created_at', 'updated_at', 'ready'],
401
+ required: [
402
+ 'values',
403
+ 'version_channel',
404
+ 'name',
405
+ 'namespace',
406
+ 'chart',
407
+ 'status',
408
+ 'version_current',
409
+ 'created_at',
410
+ 'updated_at',
411
+ 'ready'
412
+ ],
241
413
  additionalProperties: false
242
414
  };
243
415
  export const ChartUpdateInputSchema = {
@@ -254,7 +426,10 @@ export const ChartUpdateInputSchema = {
254
426
  example: '2.x.x-cfke.x'
255
427
  }
256
428
  },
257
- required: ['values', 'version_channel'],
429
+ required: [
430
+ 'values',
431
+ 'version_channel'
432
+ ],
258
433
  additionalProperties: false
259
434
  };
260
435
  export const ClusterCreateInputSchema = {
@@ -272,14 +447,22 @@ export const ClusterCreateInputSchema = {
272
447
  type: 'string',
273
448
  description: 'Tier of the cluster.',
274
449
  example: 'pro',
275
- enum: ['basic', 'pro']
450
+ enum: [
451
+ 'basic',
452
+ 'pro'
453
+ ]
276
454
  },
277
455
  region: {
278
456
  type: 'string',
279
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
280
- default: 'staging',
457
+ description: 'Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
458
+ default: 'staging-1a',
281
459
  example: 'northamerica-central-1a',
282
- enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
460
+ enum: [
461
+ 'staging-1a',
462
+ 'northamerica-central-1',
463
+ 'europe-central-1a',
464
+ 'northamerica-central-1a'
465
+ ]
283
466
  },
284
467
  version_channel: {
285
468
  type: 'string',
@@ -287,10 +470,18 @@ export const ClusterCreateInputSchema = {
287
470
  description: 'Version of the kubernetes cluster.',
288
471
  default: '1.x.x-cfke.x',
289
472
  example: '1.x.x-cfke.x',
290
- enum: ['1.x.x-cfke.x', '1.31.x-cfke.x', '1.32.x-cfke.x', '1.33.x-cfke.x']
473
+ enum: [
474
+ '1.x.x-cfke.x',
475
+ '1.31.x-cfke.x',
476
+ '1.32.x-cfke.x',
477
+ '1.33.x-cfke.x'
478
+ ]
291
479
  }
292
480
  },
293
- required: ['name', 'tier'],
481
+ required: [
482
+ 'name',
483
+ 'tier'
484
+ ],
294
485
  additionalProperties: false
295
486
  };
296
487
  export const ClusterJoinInformationSchema = {
@@ -299,8 +490,7 @@ export const ClusterJoinInformationSchema = {
299
490
  certificate_authority: {
300
491
  type: 'string',
301
492
  description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
302
- example: `-----BEGIN CERTIFICATE-----
303
- MIIC0DCCAbigAwIBAgI...`
493
+ example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
304
494
  },
305
495
  endpoint: {
306
496
  type: 'string',
@@ -308,6 +498,11 @@ MIIC0DCCAbigAwIBAgI...`
308
498
  description: 'Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.',
309
499
  example: 'https://10.31.64.7:6443'
310
500
  },
501
+ cluster_dns: {
502
+ type: 'string',
503
+ description: 'Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.',
504
+ example: '10.96.0.10'
505
+ },
311
506
  auth_key: {
312
507
  type: 'string',
313
508
  description: 'Authentication key for the cluster.',
@@ -342,7 +537,12 @@ MIIC0DCCAbigAwIBAgI...`
342
537
  example: '565.0.0'
343
538
  }
344
539
  },
345
- required: ['kubernetes', 'tailscale', 'containerd', 'nvidia_driver'],
540
+ required: [
541
+ 'kubernetes',
542
+ 'tailscale',
543
+ 'containerd',
544
+ 'nvidia_driver'
545
+ ],
346
546
  additionalProperties: false,
347
547
  description: 'Versions of the different components of the cluster.'
348
548
  },
@@ -365,12 +565,24 @@ MIIC0DCCAbigAwIBAgI...`
365
565
  example: '//iam.googleapis.com/projects/89014267864/locations/global/workloadIdentityPools/cfke/providers/oidc'
366
566
  }
367
567
  },
368
- required: ['metadata_url', 'aws_role_arn', 'gcp_workload_identity_provider'],
568
+ required: [
569
+ 'metadata_url',
570
+ 'aws_role_arn',
571
+ 'gcp_workload_identity_provider'
572
+ ],
369
573
  additionalProperties: false,
370
- description: "OIDC Information for hosts to access to third party API's."
574
+ description: 'OIDC Information for hosts to access to third party API\'s.'
371
575
  }
372
576
  },
373
- required: ['certificate_authority', 'endpoint', 'auth_key', 'bootstrap_token', 'versions', 'third_party_api_access_config'],
577
+ required: [
578
+ 'certificate_authority',
579
+ 'endpoint',
580
+ 'cluster_dns',
581
+ 'auth_key',
582
+ 'bootstrap_token',
583
+ 'versions',
584
+ 'third_party_api_access_config'
585
+ ],
374
586
  additionalProperties: false
375
587
  };
376
588
  export const ClusterSchema = {
@@ -388,14 +600,22 @@ export const ClusterSchema = {
388
600
  type: 'string',
389
601
  description: 'Tier of the cluster.',
390
602
  example: 'pro',
391
- enum: ['basic', 'pro']
603
+ enum: [
604
+ 'basic',
605
+ 'pro'
606
+ ]
392
607
  },
393
608
  region: {
394
609
  type: 'string',
395
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
396
- default: 'staging',
610
+ description: 'Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
611
+ default: 'staging-1a',
397
612
  example: 'northamerica-central-1a',
398
- enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
613
+ enum: [
614
+ 'staging-1a',
615
+ 'northamerica-central-1',
616
+ 'europe-central-1a',
617
+ 'northamerica-central-1a'
618
+ ]
399
619
  },
400
620
  id: {
401
621
  type: 'string',
@@ -407,7 +627,15 @@ export const ClusterSchema = {
407
627
  type: 'string',
408
628
  description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
409
629
  example: 'active',
410
- enum: ['active', 'disabled', 'deleted', 'creating', 'deployed', 'failed', 'updating']
630
+ enum: [
631
+ 'active',
632
+ 'disabled',
633
+ 'deleted',
634
+ 'creating',
635
+ 'deployed',
636
+ 'failed',
637
+ 'updating'
638
+ ]
411
639
  },
412
640
  endpoint: {
413
641
  anyOf: [
@@ -419,15 +647,16 @@ export const ClusterSchema = {
419
647
  },
420
648
  {
421
649
  type: 'string',
422
- enum: ['']
650
+ enum: [
651
+ ''
652
+ ]
423
653
  }
424
654
  ]
425
655
  },
426
656
  certificate_ca: {
427
657
  type: 'string',
428
658
  description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
429
- example: `-----BEGIN CERTIFICATE-----
430
- MIIC0DCCAbigAwIBAgI...`
659
+ example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
431
660
  },
432
661
  version_current: {
433
662
  type: 'string',
@@ -456,7 +685,12 @@ MIIC0DCCAbigAwIBAgI...`
456
685
  example: '1.x.x-cfke.x'
457
686
  }
458
687
  },
459
- required: ['name', 'tier', 'id', 'status'],
688
+ required: [
689
+ 'name',
690
+ 'tier',
691
+ 'id',
692
+ 'status'
693
+ ],
460
694
  additionalProperties: false
461
695
  };
462
696
  export const ClusterUpdateInputSchema = {
@@ -474,7 +708,10 @@ export const ClusterUpdateInputSchema = {
474
708
  type: 'string',
475
709
  description: 'Tier of the cluster.',
476
710
  example: 'pro',
477
- enum: ['basic', 'pro']
711
+ enum: [
712
+ 'basic',
713
+ 'pro'
714
+ ]
478
715
  },
479
716
  version_channel: {
480
717
  type: 'string',
@@ -483,7 +720,9 @@ export const ClusterUpdateInputSchema = {
483
720
  example: '1.x.x-cfke.x'
484
721
  }
485
722
  },
486
- required: ['tier'],
723
+ required: [
724
+ 'tier'
725
+ ],
487
726
  additionalProperties: false
488
727
  };
489
728
  export const FleetCreateInputSchema = {
@@ -499,7 +738,9 @@ export const FleetCreateInputSchema = {
499
738
  description: 'CPU limit in cores.'
500
739
  }
501
740
  },
502
- required: ['cpu'],
741
+ required: [
742
+ 'cpu'
743
+ ],
503
744
  additionalProperties: false,
504
745
  description: 'Limits define a set of bounds for provisioning capacity.'
505
746
  },
@@ -515,7 +756,9 @@ export const FleetCreateInputSchema = {
515
756
  description: 'Project GCP Project id to deploy instances into'
516
757
  }
517
758
  },
518
- required: ['project'],
759
+ required: [
760
+ 'project'
761
+ ],
519
762
  additionalProperties: false
520
763
  },
521
764
  hetzner: {
@@ -530,7 +773,9 @@ export const FleetCreateInputSchema = {
530
773
  description: 'Hetzner Cloud API key with read / write access'
531
774
  }
532
775
  },
533
- required: ['apiKey'],
776
+ required: [
777
+ 'apiKey'
778
+ ],
534
779
  additionalProperties: false
535
780
  },
536
781
  aws: {
@@ -545,7 +790,9 @@ export const FleetCreateInputSchema = {
545
790
  description: 'ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.'
546
791
  }
547
792
  },
548
- required: ['controllerRoleArn'],
793
+ required: [
794
+ 'controllerRoleArn'
795
+ ],
549
796
  additionalProperties: false
550
797
  },
551
798
  id: {
@@ -557,7 +804,9 @@ export const FleetCreateInputSchema = {
557
804
  example: 'new-clouds-fleet'
558
805
  }
559
806
  },
560
- required: ['id'],
807
+ required: [
808
+ 'id'
809
+ ],
561
810
  additionalProperties: false
562
811
  };
563
812
  export const FleetSchema = {
@@ -573,7 +822,9 @@ export const FleetSchema = {
573
822
  description: 'CPU limit in cores.'
574
823
  }
575
824
  },
576
- required: ['cpu'],
825
+ required: [
826
+ 'cpu'
827
+ ],
577
828
  additionalProperties: false,
578
829
  description: 'Limits define a set of bounds for provisioning capacity.'
579
830
  },
@@ -589,7 +840,9 @@ export const FleetSchema = {
589
840
  description: 'Project GCP Project id to deploy instances into'
590
841
  }
591
842
  },
592
- required: ['project'],
843
+ required: [
844
+ 'project'
845
+ ],
593
846
  additionalProperties: false
594
847
  },
595
848
  hetzner: {
@@ -604,7 +857,9 @@ export const FleetSchema = {
604
857
  description: 'Hetzner Cloud API key with read / write access'
605
858
  }
606
859
  },
607
- required: ['apiKey'],
860
+ required: [
861
+ 'apiKey'
862
+ ],
608
863
  additionalProperties: false
609
864
  },
610
865
  aws: {
@@ -619,7 +874,9 @@ export const FleetSchema = {
619
874
  description: 'ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.'
620
875
  }
621
876
  },
622
- required: ['controllerRoleArn'],
877
+ required: [
878
+ 'controllerRoleArn'
879
+ ],
623
880
  additionalProperties: false
624
881
  },
625
882
  id: {
@@ -631,7 +888,9 @@ export const FleetSchema = {
631
888
  example: 'new-clouds-fleet'
632
889
  }
633
890
  },
634
- required: ['id'],
891
+ required: [
892
+ 'id'
893
+ ],
635
894
  additionalProperties: false
636
895
  };
637
896
  export const FleetUpdateInputSchema = {
@@ -647,7 +906,9 @@ export const FleetUpdateInputSchema = {
647
906
  description: 'CPU limit in cores.'
648
907
  }
649
908
  },
650
- required: ['cpu'],
909
+ required: [
910
+ 'cpu'
911
+ ],
651
912
  additionalProperties: false,
652
913
  description: 'Limits define a set of bounds for provisioning capacity.'
653
914
  },
@@ -663,7 +924,9 @@ export const FleetUpdateInputSchema = {
663
924
  description: 'Project GCP Project id to deploy instances into'
664
925
  }
665
926
  },
666
- required: ['project'],
927
+ required: [
928
+ 'project'
929
+ ],
667
930
  additionalProperties: false
668
931
  },
669
932
  hetzner: {
@@ -678,7 +941,9 @@ export const FleetUpdateInputSchema = {
678
941
  description: 'Hetzner Cloud API key with read / write access'
679
942
  }
680
943
  },
681
- required: ['apiKey'],
944
+ required: [
945
+ 'apiKey'
946
+ ],
682
947
  additionalProperties: false
683
948
  },
684
949
  aws: {
@@ -693,7 +958,9 @@ export const FleetUpdateInputSchema = {
693
958
  description: 'ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.'
694
959
  }
695
960
  },
696
- required: ['controllerRoleArn'],
961
+ required: [
962
+ 'controllerRoleArn'
963
+ ],
697
964
  additionalProperties: false
698
965
  }
699
966
  },
@@ -731,7 +998,9 @@ export const InviteSchema = {
731
998
  example: '7kUZnH7nnKUFfvc4NK2KQF'
732
999
  }
733
1000
  },
734
- required: ['date_created'],
1001
+ required: [
1002
+ 'date_created'
1003
+ ],
735
1004
  additionalProperties: false
736
1005
  };
737
1006
  export const InvoiceSchema = {
@@ -783,7 +1052,11 @@ export const InvoiceSchema = {
783
1052
  type: 'string'
784
1053
  }
785
1054
  },
786
- required: ['created', 'period_start', 'period_end'],
1055
+ required: [
1056
+ 'created',
1057
+ 'period_start',
1058
+ 'period_end'
1059
+ ],
787
1060
  additionalProperties: false
788
1061
  };
789
1062
  export const MarketplaceListingFilesSchema = {
@@ -792,18 +1065,12 @@ export const MarketplaceListingFilesSchema = {
792
1065
  chartYaml: {
793
1066
  type: 'string',
794
1067
  description: 'Raw Chart.yaml content from the Helm chart',
795
- example: `apiVersion: v2
796
- name: nginx-ingress
797
- version: 1.18.2-cfke.45
798
- appVersion: 1.9.4`
1068
+ example: 'apiVersion: v2\nname: nginx-ingress\nversion: 1.18.2-cfke.45\nappVersion: 1.9.4'
799
1069
  },
800
1070
  valuesYaml: {
801
1071
  type: 'string',
802
1072
  description: 'Raw values.yaml content from the Helm chart',
803
- example: `replicaCount: 1
804
- image:
805
- repository: nginx
806
- tag: latest`
1073
+ example: 'replicaCount: 1\nimage:\n repository: nginx\n tag: latest'
807
1074
  },
808
1075
  valuesSchemaJson: {
809
1076
  type: 'string',
@@ -880,20 +1147,31 @@ export const MarketplaceListingSchema = {
880
1147
  type: 'string'
881
1148
  },
882
1149
  description: 'Chart keywords',
883
- example: ['ingress', 'nginx', 'load-balancer']
1150
+ example: [
1151
+ 'ingress',
1152
+ 'nginx',
1153
+ 'load-balancer'
1154
+ ]
884
1155
  },
885
1156
  home: {
886
1157
  type: 'string',
887
1158
  description: 'Chart home URL',
888
1159
  example: 'https://kubernetes.github.io/ingress-nginx/'
889
1160
  },
1161
+ icon: {
1162
+ type: 'string',
1163
+ description: 'A URL to an SVG or PNG image to be used as an icon',
1164
+ example: 'https://cloudfleet.ai/images/marketplace/icons/ingress-nginx.png'
1165
+ },
890
1166
  sources: {
891
1167
  type: 'array',
892
1168
  items: {
893
1169
  type: 'string'
894
1170
  },
895
1171
  description: 'Chart source URLs',
896
- example: ['https://github.com/kubernetes/ingress-nginx']
1172
+ example: [
1173
+ 'https://github.com/kubernetes/ingress-nginx'
1174
+ ]
897
1175
  },
898
1176
  maintainers: {
899
1177
  type: 'array',
@@ -911,18 +1189,28 @@ export const MarketplaceListingSchema = {
911
1189
  example: 'support@nginx.org'
912
1190
  }
913
1191
  },
914
- required: ['name'],
1192
+ required: [
1193
+ 'name'
1194
+ ],
915
1195
  additionalProperties: false
916
1196
  },
917
1197
  description: 'Chart maintainers'
918
1198
  }
919
1199
  },
920
- required: ['name', 'version'],
1200
+ required: [
1201
+ 'name',
1202
+ 'version'
1203
+ ],
921
1204
  additionalProperties: false,
922
1205
  description: 'Chart metadata'
923
1206
  }
924
1207
  },
925
- required: ['name', 'versions', 'version_channels', 'latestVersion'],
1208
+ required: [
1209
+ 'name',
1210
+ 'versions',
1211
+ 'version_channels',
1212
+ 'latestVersion'
1213
+ ],
926
1214
  additionalProperties: false
927
1215
  };
928
1216
  export const OrganizationCreateInputSchema = {
@@ -958,7 +1246,13 @@ export const OrganizationCreateInputSchema = {
958
1246
  description: 'Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
959
1247
  }
960
1248
  },
961
- required: ['email', 'first_name', 'last_name', 'company_name', 'password'],
1249
+ required: [
1250
+ 'email',
1251
+ 'first_name',
1252
+ 'last_name',
1253
+ 'company_name',
1254
+ 'password'
1255
+ ],
962
1256
  additionalProperties: false
963
1257
  };
964
1258
  export const OrganizationSchema = {
@@ -1048,36 +1342,52 @@ export const OrganizationSchema = {
1048
1342
  example: '1.33.x (Always latest 1.33 patch version)'
1049
1343
  }
1050
1344
  },
1051
- required: ['id', 'label'],
1345
+ required: [
1346
+ 'id',
1347
+ 'label'
1348
+ ],
1052
1349
  additionalProperties: false
1053
1350
  },
1054
1351
  minItems: 1,
1055
1352
  description: 'List of CFKE control plane versions available for the organization.'
1056
1353
  },
1057
- copilot_user_hourly_tokens: {
1354
+ cfcr_storage_gb: {
1058
1355
  type: 'integer',
1059
- minimum: 0,
1060
- description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1061
- example: 42000
1062
- },
1063
- copilot_organization_hourly_tokens: {
1064
- type: 'integer',
1065
- minimum: 0,
1066
- description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1067
- example: 242000
1356
+ minimum: -1,
1357
+ description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
1358
+ example: 500
1068
1359
  }
1069
1360
  },
1070
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions', 'copilot_user_hourly_tokens', 'copilot_organization_hourly_tokens'],
1361
+ required: [
1362
+ 'basic_clusters_max',
1363
+ 'basic_clusters_available',
1364
+ 'pro_clusters_max',
1365
+ 'pro_clusters_available',
1366
+ 'fleets_max',
1367
+ 'cluster_tiers',
1368
+ 'regions',
1369
+ 'versions',
1370
+ 'cfcr_storage_gb'
1371
+ ],
1071
1372
  additionalProperties: false,
1072
1373
  description: 'For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota.'
1073
1374
  },
1074
1375
  status: {
1075
1376
  type: 'string',
1076
1377
  description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1077
- enum: ['active', 'closed', 'suspended']
1378
+ enum: [
1379
+ 'active',
1380
+ 'closed',
1381
+ 'suspended'
1382
+ ]
1078
1383
  }
1079
1384
  },
1080
- required: ['id', 'date_created', 'quota', 'status'],
1385
+ required: [
1386
+ 'id',
1387
+ 'date_created',
1388
+ 'quota',
1389
+ 'status'
1390
+ ],
1081
1391
  additionalProperties: false
1082
1392
  };
1083
1393
  export const PaymentMethodSchema = {
@@ -1099,7 +1409,9 @@ export const PaymentMethodSchema = {
1099
1409
  nullable: true,
1100
1410
  description: 'Payment method type type. Only `card` payments supported at the moment.',
1101
1411
  example: 'card',
1102
- enum: ['card']
1412
+ enum: [
1413
+ 'card'
1414
+ ]
1103
1415
  },
1104
1416
  last4: {
1105
1417
  type: 'string',
@@ -1112,14 +1424,14 @@ export const PaymentMethodSchema = {
1112
1424
  minimum: 1,
1113
1425
  maximum: 12,
1114
1426
  nullable: true,
1115
- description: "Two-digit number representing the card's expiration month.",
1427
+ description: 'Two-digit number representing the card\'s expiration month.',
1116
1428
  example: '12'
1117
1429
  },
1118
1430
  exp_year: {
1119
1431
  type: 'integer',
1120
1432
  minimum: 2024,
1121
1433
  nullable: true,
1122
- description: "Four-digit number representing the card's expiration year.",
1434
+ description: 'Four-digit number representing the card\'s expiration year.',
1123
1435
  example: '2028'
1124
1436
  },
1125
1437
  brand: {
@@ -1127,10 +1439,28 @@ export const PaymentMethodSchema = {
1127
1439
  nullable: true,
1128
1440
  description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
1129
1441
  example: 'visa',
1130
- enum: ['amex', 'diners', 'discover', 'eftpos_au', 'jcb', 'mastercard', 'unionpay', 'visa', 'unknown']
1442
+ enum: [
1443
+ 'amex',
1444
+ 'diners',
1445
+ 'discover',
1446
+ 'eftpos_au',
1447
+ 'jcb',
1448
+ 'mastercard',
1449
+ 'unionpay',
1450
+ 'visa',
1451
+ 'unknown'
1452
+ ]
1131
1453
  }
1132
1454
  },
1133
- required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1455
+ required: [
1456
+ 'id',
1457
+ 'setup',
1458
+ 'type',
1459
+ 'last4',
1460
+ 'exp_month',
1461
+ 'exp_year',
1462
+ 'brand'
1463
+ ],
1134
1464
  additionalProperties: false
1135
1465
  };
1136
1466
  export const PlatformQuotaSchema = {
@@ -1198,26 +1528,33 @@ export const PlatformQuotaSchema = {
1198
1528
  example: '1.33.x (Always latest 1.33 patch version)'
1199
1529
  }
1200
1530
  },
1201
- required: ['id', 'label'],
1531
+ required: [
1532
+ 'id',
1533
+ 'label'
1534
+ ],
1202
1535
  additionalProperties: false
1203
1536
  },
1204
1537
  minItems: 1,
1205
1538
  description: 'List of CFKE control plane versions available for the organization.'
1206
1539
  },
1207
- copilot_user_hourly_tokens: {
1540
+ cfcr_storage_gb: {
1208
1541
  type: 'integer',
1209
- minimum: 0,
1210
- description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1211
- example: 42000
1212
- },
1213
- copilot_organization_hourly_tokens: {
1214
- type: 'integer',
1215
- minimum: 0,
1216
- description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1217
- example: 242000
1542
+ minimum: -1,
1543
+ description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
1544
+ example: 500
1218
1545
  }
1219
1546
  },
1220
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions', 'copilot_user_hourly_tokens', 'copilot_organization_hourly_tokens'],
1547
+ required: [
1548
+ 'basic_clusters_max',
1549
+ 'basic_clusters_available',
1550
+ 'pro_clusters_max',
1551
+ 'pro_clusters_available',
1552
+ 'fleets_max',
1553
+ 'cluster_tiers',
1554
+ 'regions',
1555
+ 'versions',
1556
+ 'cfcr_storage_gb'
1557
+ ],
1221
1558
  additionalProperties: false
1222
1559
  };
1223
1560
  export const RegistryRepositorySchema = {
@@ -1236,10 +1573,14 @@ export const RegistryRepositorySchema = {
1236
1573
  uri: {
1237
1574
  type: 'string',
1238
1575
  description: 'Full URI of the repository.',
1239
- example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1576
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
1240
1577
  }
1241
1578
  },
1242
- required: ['name', 'region', 'uri'],
1579
+ required: [
1580
+ 'name',
1581
+ 'region',
1582
+ 'uri'
1583
+ ],
1243
1584
  additionalProperties: false
1244
1585
  };
1245
1586
  export const RegistryRepositoryWithTagsSchema = {
@@ -1258,7 +1599,7 @@ export const RegistryRepositoryWithTagsSchema = {
1258
1599
  uri: {
1259
1600
  type: 'string',
1260
1601
  description: 'Full URI of the repository.',
1261
- example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1602
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
1262
1603
  },
1263
1604
  tags: {
1264
1605
  type: 'array',
@@ -1280,9 +1621,23 @@ export const RegistryRepositoryWithTagsSchema = {
1280
1621
  type: 'string',
1281
1622
  description: 'Media type of the manifest.',
1282
1623
  example: 'application/vnd.docker.distribution.manifest.v2+json'
1624
+ },
1625
+ platforms: {
1626
+ type: 'array',
1627
+ items: {
1628
+ type: 'string'
1629
+ },
1630
+ description: 'Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).',
1631
+ example: [
1632
+ 'linux/amd64',
1633
+ 'linux/arm64'
1634
+ ]
1283
1635
  }
1284
1636
  },
1285
- required: ['name', 'size'],
1637
+ required: [
1638
+ 'name',
1639
+ 'size'
1640
+ ],
1286
1641
  additionalProperties: false
1287
1642
  },
1288
1643
  description: 'Array of tags in the repository.'
@@ -1294,7 +1649,13 @@ export const RegistryRepositoryWithTagsSchema = {
1294
1649
  example: 987654321
1295
1650
  }
1296
1651
  },
1297
- required: ['name', 'region', 'uri', 'tags', 'totalSize'],
1652
+ required: [
1653
+ 'name',
1654
+ 'region',
1655
+ 'uri',
1656
+ 'tags',
1657
+ 'totalSize'
1658
+ ],
1298
1659
  additionalProperties: false
1299
1660
  };
1300
1661
  export const RegistryTagSchema = {
@@ -1305,6 +1666,11 @@ export const RegistryTagSchema = {
1305
1666
  description: 'Tag name.',
1306
1667
  example: 'latest'
1307
1668
  },
1669
+ digest: {
1670
+ type: 'string',
1671
+ description: 'Manifest digest for pulling by digest.',
1672
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1673
+ },
1308
1674
  mediaType: {
1309
1675
  type: 'string',
1310
1676
  description: 'Media type of the manifest.',
@@ -1320,7 +1686,9 @@ export const RegistryTagSchema = {
1320
1686
  example: 1234
1321
1687
  }
1322
1688
  },
1323
- required: ['size'],
1689
+ required: [
1690
+ 'size'
1691
+ ],
1324
1692
  additionalProperties: false,
1325
1693
  description: 'Manifest config metadata.'
1326
1694
  },
@@ -1329,6 +1697,11 @@ export const RegistryTagSchema = {
1329
1697
  items: {
1330
1698
  type: 'object',
1331
1699
  properties: {
1700
+ digest: {
1701
+ type: 'string',
1702
+ description: 'Digest of the layer.',
1703
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1704
+ },
1332
1705
  size: {
1333
1706
  type: 'number',
1334
1707
  format: 'float',
@@ -1336,7 +1709,9 @@ export const RegistryTagSchema = {
1336
1709
  example: 5678
1337
1710
  }
1338
1711
  },
1339
- required: ['size'],
1712
+ required: [
1713
+ 'size'
1714
+ ],
1340
1715
  additionalProperties: false
1341
1716
  },
1342
1717
  description: 'Array of layer metadata.'
@@ -1363,14 +1738,54 @@ export const RegistryTagSchema = {
1363
1738
  type: 'string',
1364
1739
  description: 'Operating system of the platform.',
1365
1740
  example: 'linux'
1741
+ },
1742
+ variant: {
1743
+ type: 'string',
1744
+ description: 'Variant of the platform (e.g., v7, v8 for ARM).',
1745
+ example: 'v8'
1366
1746
  }
1367
1747
  },
1368
- required: ['architecture', 'os'],
1748
+ required: [
1749
+ 'architecture',
1750
+ 'os'
1751
+ ],
1369
1752
  additionalProperties: false,
1370
1753
  description: 'Platform information for the manifest.'
1754
+ },
1755
+ layers: {
1756
+ type: 'array',
1757
+ items: {
1758
+ type: 'object',
1759
+ properties: {
1760
+ digest: {
1761
+ type: 'string',
1762
+ description: 'Digest of the layer.',
1763
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1764
+ },
1765
+ size: {
1766
+ type: 'number',
1767
+ format: 'float',
1768
+ description: 'Size of the layer in bytes.',
1769
+ example: 5678
1770
+ }
1771
+ },
1772
+ required: [
1773
+ 'size'
1774
+ ],
1775
+ additionalProperties: false
1776
+ },
1777
+ description: 'Layers for this platform.'
1778
+ },
1779
+ size: {
1780
+ type: 'number',
1781
+ format: 'float',
1782
+ description: 'Total size of this platform manifest in bytes.',
1783
+ example: 12345678
1371
1784
  }
1372
1785
  },
1373
- required: ['digest'],
1786
+ required: [
1787
+ 'digest'
1788
+ ],
1374
1789
  additionalProperties: false
1375
1790
  },
1376
1791
  description: 'Array of manifests for multi-arch images.'
@@ -1397,7 +1812,500 @@ export const RegistryTagSchema = {
1397
1812
  example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
1398
1813
  }
1399
1814
  },
1400
- required: ['name', 'size', 'region', 'repository', 'uri'],
1815
+ required: [
1816
+ 'name',
1817
+ 'digest',
1818
+ 'size',
1819
+ 'region',
1820
+ 'repository',
1821
+ 'uri'
1822
+ ],
1823
+ additionalProperties: false
1824
+ };
1825
+ export const TicketAttachmentSchema = {
1826
+ type: 'object',
1827
+ properties: {
1828
+ id: {
1829
+ type: 'string',
1830
+ description: 'Unique identifier of the attachment (Mongo ObjectId).',
1831
+ example: '60c72b2f9f1b2c001f8e4d3c'
1832
+ },
1833
+ filename: {
1834
+ type: 'string',
1835
+ description: 'Original filename as uploaded.',
1836
+ example: 'debug.log'
1837
+ },
1838
+ content_type: {
1839
+ type: 'string',
1840
+ description: 'MIME content type of the attachment.',
1841
+ example: 'text/plain'
1842
+ },
1843
+ size: {
1844
+ type: 'integer',
1845
+ description: 'Size of the attachment in bytes.',
1846
+ example: 12345
1847
+ }
1848
+ },
1849
+ required: [
1850
+ 'id',
1851
+ 'filename',
1852
+ 'content_type',
1853
+ 'size'
1854
+ ],
1855
+ additionalProperties: false
1856
+ };
1857
+ export const TicketCreateInputSchema = {
1858
+ type: 'object',
1859
+ properties: {
1860
+ category: {
1861
+ type: 'string',
1862
+ description: 'Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.',
1863
+ example: 'technical',
1864
+ enum: [
1865
+ 'billing',
1866
+ 'technical',
1867
+ 'general'
1868
+ ]
1869
+ },
1870
+ body: {
1871
+ type: 'string',
1872
+ maxLength: 50000,
1873
+ minLength: 1,
1874
+ pattern: '\\S',
1875
+ description: 'Initial message body in markdown. There is no separate subject — the first message body is the description.',
1876
+ example: 'My cluster cannot reach the registry. Logs attached.'
1877
+ },
1878
+ properties: {
1879
+ type: 'object',
1880
+ additionalProperties: true,
1881
+ description: 'Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).',
1882
+ example: {
1883
+ subcategory: 'cluster-question',
1884
+ cluster_id: '60c72b2f9f1b2c001f8e4d3a'
1885
+ }
1886
+ }
1887
+ },
1888
+ required: [
1889
+ 'category',
1890
+ 'body'
1891
+ ],
1892
+ additionalProperties: false
1893
+ };
1894
+ export const TicketListResponseSchema = {
1895
+ type: 'object',
1896
+ properties: {
1897
+ items: {
1898
+ type: 'array',
1899
+ items: {
1900
+ type: 'object',
1901
+ properties: {
1902
+ id: {
1903
+ type: 'string',
1904
+ description: 'Unique identifier of the ticket (Mongo ObjectId).',
1905
+ example: '60c72b2f9f1b2c001f8e4d3a'
1906
+ },
1907
+ status: {
1908
+ type: 'string',
1909
+ description: 'Current state of the ticket.',
1910
+ example: 'waiting_on_us',
1911
+ enum: [
1912
+ 'waiting_on_us',
1913
+ 'waiting_on_user',
1914
+ 'closed'
1915
+ ]
1916
+ },
1917
+ category: {
1918
+ type: 'string',
1919
+ description: 'Ticket category.',
1920
+ example: 'technical',
1921
+ enum: [
1922
+ 'billing',
1923
+ 'technical',
1924
+ 'general'
1925
+ ]
1926
+ },
1927
+ summary: {
1928
+ type: 'string',
1929
+ description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
1930
+ example: 'My cluster cannot reach the registry. Logs attached.'
1931
+ },
1932
+ closed_at: {
1933
+ type: 'string',
1934
+ format: 'date-time',
1935
+ nullable: true,
1936
+ description: 'Closure timestamp. Null while the ticket is open.',
1937
+ example: '2026-05-18T16:08:14.338Z'
1938
+ },
1939
+ date_created: {
1940
+ type: 'string',
1941
+ format: 'date-time',
1942
+ description: 'Creation date of the ticket. ISO 8601 UTC.',
1943
+ example: '2026-05-11T16:08:14.338Z'
1944
+ },
1945
+ date_updated: {
1946
+ type: 'string',
1947
+ format: 'date-time',
1948
+ description: 'Last update date of the ticket. ISO 8601 UTC.',
1949
+ example: '2026-05-11T16:08:14.338Z'
1950
+ },
1951
+ messages: {
1952
+ type: 'array',
1953
+ items: {
1954
+ type: 'object',
1955
+ properties: {
1956
+ id: {
1957
+ type: 'string',
1958
+ description: 'Unique identifier of the message (Mongo ObjectId).',
1959
+ example: '60c72b2f9f1b2c001f8e4d3b'
1960
+ },
1961
+ type: {
1962
+ type: 'string',
1963
+ description: 'Message type. Internal notes are filtered out of customer-facing responses.',
1964
+ example: 'customer_reply',
1965
+ enum: [
1966
+ 'customer_reply',
1967
+ 'agent_reply'
1968
+ ]
1969
+ },
1970
+ body: {
1971
+ type: 'string',
1972
+ description: 'Message body in markdown.',
1973
+ example: 'Thanks — that resolved it on my side.'
1974
+ },
1975
+ author_first_name: {
1976
+ type: 'string',
1977
+ nullable: true,
1978
+ description: 'First name of the author. Null when not provided.',
1979
+ example: 'Jane'
1980
+ },
1981
+ author_last_name: {
1982
+ type: 'string',
1983
+ nullable: true,
1984
+ description: 'Last name of the author. Null when not provided.',
1985
+ example: 'Doe'
1986
+ },
1987
+ attachments: {
1988
+ type: 'array',
1989
+ items: {
1990
+ type: 'object',
1991
+ properties: {
1992
+ id: {
1993
+ type: 'string',
1994
+ description: 'Unique identifier of the attachment (Mongo ObjectId).',
1995
+ example: '60c72b2f9f1b2c001f8e4d3c'
1996
+ },
1997
+ filename: {
1998
+ type: 'string',
1999
+ description: 'Original filename as uploaded.',
2000
+ example: 'debug.log'
2001
+ },
2002
+ content_type: {
2003
+ type: 'string',
2004
+ description: 'MIME content type of the attachment.',
2005
+ example: 'text/plain'
2006
+ },
2007
+ size: {
2008
+ type: 'integer',
2009
+ description: 'Size of the attachment in bytes.',
2010
+ example: 12345
2011
+ }
2012
+ },
2013
+ required: [
2014
+ 'id',
2015
+ 'filename',
2016
+ 'content_type',
2017
+ 'size'
2018
+ ],
2019
+ additionalProperties: false
2020
+ },
2021
+ description: 'Attachments associated with this message.',
2022
+ example: []
2023
+ },
2024
+ date_created: {
2025
+ type: 'string',
2026
+ format: 'date-time',
2027
+ description: 'Creation date of the message. ISO 8601 UTC.',
2028
+ example: '2026-05-11T16:08:14.338Z'
2029
+ }
2030
+ },
2031
+ required: [
2032
+ 'id',
2033
+ 'type',
2034
+ 'body',
2035
+ 'date_created'
2036
+ ],
2037
+ additionalProperties: false
2038
+ },
2039
+ description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
2040
+ }
2041
+ },
2042
+ required: [
2043
+ 'id',
2044
+ 'status',
2045
+ 'category',
2046
+ 'summary',
2047
+ 'date_created',
2048
+ 'date_updated'
2049
+ ],
2050
+ additionalProperties: false
2051
+ },
2052
+ description: 'Tickets for the organization, ordered newest first. Messages are omitted from list responses.'
2053
+ }
2054
+ },
2055
+ required: [
2056
+ 'items'
2057
+ ],
2058
+ additionalProperties: false
2059
+ };
2060
+ export const TicketMessageInputSchema = {
2061
+ type: 'object',
2062
+ properties: {
2063
+ body: {
2064
+ type: 'string',
2065
+ maxLength: 50000,
2066
+ minLength: 1,
2067
+ pattern: '\\S',
2068
+ description: 'Reply body in markdown.',
2069
+ example: 'Thanks — that resolved it on my side.'
2070
+ }
2071
+ },
2072
+ required: [
2073
+ 'body'
2074
+ ],
2075
+ additionalProperties: false
2076
+ };
2077
+ export const TicketMessageSchema = {
2078
+ type: 'object',
2079
+ properties: {
2080
+ id: {
2081
+ type: 'string',
2082
+ description: 'Unique identifier of the message (Mongo ObjectId).',
2083
+ example: '60c72b2f9f1b2c001f8e4d3b'
2084
+ },
2085
+ type: {
2086
+ type: 'string',
2087
+ description: 'Message type. Internal notes are filtered out of customer-facing responses.',
2088
+ example: 'customer_reply',
2089
+ enum: [
2090
+ 'customer_reply',
2091
+ 'agent_reply'
2092
+ ]
2093
+ },
2094
+ body: {
2095
+ type: 'string',
2096
+ description: 'Message body in markdown.',
2097
+ example: 'Thanks — that resolved it on my side.'
2098
+ },
2099
+ author_first_name: {
2100
+ type: 'string',
2101
+ description: 'First name of the author. Null when not provided.',
2102
+ example: 'Jane'
2103
+ },
2104
+ author_last_name: {
2105
+ type: 'string',
2106
+ description: 'Last name of the author. Null when not provided.',
2107
+ example: 'Doe'
2108
+ },
2109
+ attachments: {
2110
+ type: 'array',
2111
+ items: {
2112
+ type: 'object',
2113
+ properties: {
2114
+ id: {
2115
+ type: 'string',
2116
+ description: 'Unique identifier of the attachment (Mongo ObjectId).',
2117
+ example: '60c72b2f9f1b2c001f8e4d3c'
2118
+ },
2119
+ filename: {
2120
+ type: 'string',
2121
+ description: 'Original filename as uploaded.',
2122
+ example: 'debug.log'
2123
+ },
2124
+ content_type: {
2125
+ type: 'string',
2126
+ description: 'MIME content type of the attachment.',
2127
+ example: 'text/plain'
2128
+ },
2129
+ size: {
2130
+ type: 'integer',
2131
+ description: 'Size of the attachment in bytes.',
2132
+ example: 12345
2133
+ }
2134
+ },
2135
+ required: [
2136
+ 'id',
2137
+ 'filename',
2138
+ 'content_type',
2139
+ 'size'
2140
+ ],
2141
+ additionalProperties: false
2142
+ },
2143
+ description: 'Attachments associated with this message.',
2144
+ example: []
2145
+ },
2146
+ date_created: {
2147
+ type: 'string',
2148
+ format: 'date-time',
2149
+ description: 'Creation date of the message. ISO 8601 UTC.',
2150
+ example: '2026-05-11T16:08:14.338Z'
2151
+ }
2152
+ },
2153
+ required: [
2154
+ 'id',
2155
+ 'type',
2156
+ 'body',
2157
+ 'date_created'
2158
+ ],
2159
+ additionalProperties: false
2160
+ };
2161
+ export const TicketSchema = {
2162
+ type: 'object',
2163
+ properties: {
2164
+ id: {
2165
+ type: 'string',
2166
+ description: 'Unique identifier of the ticket (Mongo ObjectId).',
2167
+ example: '60c72b2f9f1b2c001f8e4d3a'
2168
+ },
2169
+ status: {
2170
+ type: 'string',
2171
+ description: 'Current state of the ticket.',
2172
+ example: 'waiting_on_us',
2173
+ enum: [
2174
+ 'waiting_on_us',
2175
+ 'waiting_on_user',
2176
+ 'closed'
2177
+ ]
2178
+ },
2179
+ category: {
2180
+ type: 'string',
2181
+ description: 'Ticket category.',
2182
+ example: 'technical',
2183
+ enum: [
2184
+ 'billing',
2185
+ 'technical',
2186
+ 'general'
2187
+ ]
2188
+ },
2189
+ summary: {
2190
+ type: 'string',
2191
+ description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
2192
+ example: 'My cluster cannot reach the registry. Logs attached.'
2193
+ },
2194
+ closed_at: {
2195
+ type: 'string',
2196
+ format: 'date-time',
2197
+ description: 'Closure timestamp. Null while the ticket is open.',
2198
+ example: '2026-05-18T16:08:14.338Z'
2199
+ },
2200
+ date_created: {
2201
+ type: 'string',
2202
+ format: 'date-time',
2203
+ description: 'Creation date of the ticket. ISO 8601 UTC.',
2204
+ example: '2026-05-11T16:08:14.338Z'
2205
+ },
2206
+ date_updated: {
2207
+ type: 'string',
2208
+ format: 'date-time',
2209
+ description: 'Last update date of the ticket. ISO 8601 UTC.',
2210
+ example: '2026-05-11T16:08:14.338Z'
2211
+ },
2212
+ messages: {
2213
+ type: 'array',
2214
+ items: {
2215
+ type: 'object',
2216
+ properties: {
2217
+ id: {
2218
+ type: 'string',
2219
+ description: 'Unique identifier of the message (Mongo ObjectId).',
2220
+ example: '60c72b2f9f1b2c001f8e4d3b'
2221
+ },
2222
+ type: {
2223
+ type: 'string',
2224
+ description: 'Message type. Internal notes are filtered out of customer-facing responses.',
2225
+ example: 'customer_reply',
2226
+ enum: [
2227
+ 'customer_reply',
2228
+ 'agent_reply'
2229
+ ]
2230
+ },
2231
+ body: {
2232
+ type: 'string',
2233
+ description: 'Message body in markdown.',
2234
+ example: 'Thanks — that resolved it on my side.'
2235
+ },
2236
+ author_first_name: {
2237
+ type: 'string',
2238
+ description: 'First name of the author. Null when not provided.',
2239
+ example: 'Jane'
2240
+ },
2241
+ author_last_name: {
2242
+ type: 'string',
2243
+ description: 'Last name of the author. Null when not provided.',
2244
+ example: 'Doe'
2245
+ },
2246
+ attachments: {
2247
+ type: 'array',
2248
+ items: {
2249
+ type: 'object',
2250
+ properties: {
2251
+ id: {
2252
+ type: 'string',
2253
+ description: 'Unique identifier of the attachment (Mongo ObjectId).',
2254
+ example: '60c72b2f9f1b2c001f8e4d3c'
2255
+ },
2256
+ filename: {
2257
+ type: 'string',
2258
+ description: 'Original filename as uploaded.',
2259
+ example: 'debug.log'
2260
+ },
2261
+ content_type: {
2262
+ type: 'string',
2263
+ description: 'MIME content type of the attachment.',
2264
+ example: 'text/plain'
2265
+ },
2266
+ size: {
2267
+ type: 'integer',
2268
+ description: 'Size of the attachment in bytes.',
2269
+ example: 12345
2270
+ }
2271
+ },
2272
+ required: [
2273
+ 'id',
2274
+ 'filename',
2275
+ 'content_type',
2276
+ 'size'
2277
+ ],
2278
+ additionalProperties: false
2279
+ },
2280
+ description: 'Attachments associated with this message.',
2281
+ example: []
2282
+ },
2283
+ date_created: {
2284
+ type: 'string',
2285
+ format: 'date-time',
2286
+ description: 'Creation date of the message. ISO 8601 UTC.',
2287
+ example: '2026-05-11T16:08:14.338Z'
2288
+ }
2289
+ },
2290
+ required: [
2291
+ 'id',
2292
+ 'type',
2293
+ 'body',
2294
+ 'date_created'
2295
+ ],
2296
+ additionalProperties: false
2297
+ },
2298
+ description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
2299
+ }
2300
+ },
2301
+ required: [
2302
+ 'id',
2303
+ 'status',
2304
+ 'category',
2305
+ 'summary',
2306
+ 'date_created',
2307
+ 'date_updated'
2308
+ ],
1401
2309
  additionalProperties: false
1402
2310
  };
1403
2311
  export const TokenCreateInputSchema = {
@@ -1415,10 +2323,16 @@ export const TokenCreateInputSchema = {
1415
2323
  type: 'string',
1416
2324
  description: 'Role assumed by the token.',
1417
2325
  example: 'User',
1418
- enum: ['Administrator', 'User']
2326
+ enum: [
2327
+ 'Administrator',
2328
+ 'User'
2329
+ ]
1419
2330
  }
1420
2331
  },
1421
- required: ['name', 'role'],
2332
+ required: [
2333
+ 'name',
2334
+ 'role'
2335
+ ],
1422
2336
  additionalProperties: false
1423
2337
  };
1424
2338
  export const TokenSchema = {
@@ -1436,7 +2350,10 @@ export const TokenSchema = {
1436
2350
  type: 'string',
1437
2351
  description: 'Role assumed by the token.',
1438
2352
  example: 'User',
1439
- enum: ['Administrator', 'User']
2353
+ enum: [
2354
+ 'Administrator',
2355
+ 'User'
2356
+ ]
1440
2357
  },
1441
2358
  id: {
1442
2359
  type: 'string',
@@ -1455,7 +2372,11 @@ export const TokenSchema = {
1455
2372
  example: '2023-12-20T13:53:32.000Z'
1456
2373
  }
1457
2374
  },
1458
- required: ['name', 'role', 'date_created'],
2375
+ required: [
2376
+ 'name',
2377
+ 'role',
2378
+ 'date_created'
2379
+ ],
1459
2380
  additionalProperties: false
1460
2381
  };
1461
2382
  export const TokenUpdateInputSchema = {
@@ -1473,7 +2394,10 @@ export const TokenUpdateInputSchema = {
1473
2394
  type: 'string',
1474
2395
  description: 'Role assumed by the token.',
1475
2396
  example: 'User',
1476
- enum: ['Administrator', 'User']
2397
+ enum: [
2398
+ 'Administrator',
2399
+ 'User'
2400
+ ]
1477
2401
  }
1478
2402
  },
1479
2403
  additionalProperties: false
@@ -1487,7 +2411,9 @@ export const UsageFacetsSchema = {
1487
2411
  type: 'string'
1488
2412
  },
1489
2413
  description: 'List of unique cluster IDs',
1490
- example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
2414
+ example: [
2415
+ '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
2416
+ ]
1491
2417
  },
1492
2418
  product: {
1493
2419
  type: 'array',
@@ -1495,7 +2421,10 @@ export const UsageFacetsSchema = {
1495
2421
  type: 'string'
1496
2422
  },
1497
2423
  description: 'List of unique products',
1498
- example: ['cfke_controlplane', 'cfke_connected_nodes']
2424
+ example: [
2425
+ 'cfke_controlplane',
2426
+ 'cfke_connected_nodes'
2427
+ ]
1499
2428
  }
1500
2429
  },
1501
2430
  additionalProperties: false
@@ -1541,7 +2470,14 @@ export const UsageResponseSchema = {
1541
2470
  description: 'Total cost'
1542
2471
  }
1543
2472
  },
1544
- required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
2473
+ required: [
2474
+ 'hour',
2475
+ 'cluster_id',
2476
+ 'product',
2477
+ 'value',
2478
+ 'price',
2479
+ 'total'
2480
+ ],
1545
2481
  additionalProperties: false
1546
2482
  },
1547
2483
  description: 'Usage data'
@@ -1555,7 +2491,9 @@ export const UsageResponseSchema = {
1555
2491
  type: 'string'
1556
2492
  },
1557
2493
  description: 'List of unique cluster IDs',
1558
- example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
2494
+ example: [
2495
+ '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
2496
+ ]
1559
2497
  },
1560
2498
  product: {
1561
2499
  type: 'array',
@@ -1563,14 +2501,20 @@ export const UsageResponseSchema = {
1563
2501
  type: 'string'
1564
2502
  },
1565
2503
  description: 'List of unique products',
1566
- example: ['cfke_controlplane', 'cfke_connected_nodes']
2504
+ example: [
2505
+ 'cfke_controlplane',
2506
+ 'cfke_connected_nodes'
2507
+ ]
1567
2508
  }
1568
2509
  },
1569
2510
  additionalProperties: false,
1570
2511
  description: 'Facets for filtering'
1571
2512
  }
1572
2513
  },
1573
- required: ['data', 'facets'],
2514
+ required: [
2515
+ 'data',
2516
+ 'facets'
2517
+ ],
1574
2518
  additionalProperties: false
1575
2519
  };
1576
2520
  export const UsageSchema = {
@@ -1609,7 +2553,14 @@ export const UsageSchema = {
1609
2553
  description: 'Total cost'
1610
2554
  }
1611
2555
  },
1612
- required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
2556
+ required: [
2557
+ 'hour',
2558
+ 'cluster_id',
2559
+ 'product',
2560
+ 'value',
2561
+ 'price',
2562
+ 'total'
2563
+ ],
1613
2564
  additionalProperties: false
1614
2565
  };
1615
2566
  export const UserCreateInputSchema = {
@@ -1650,16 +2601,28 @@ export const UserCreateInputSchema = {
1650
2601
  type: 'string',
1651
2602
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1652
2603
  example: 'active',
1653
- enum: ['active', 'inactive']
2604
+ enum: [
2605
+ 'active',
2606
+ 'inactive'
2607
+ ]
1654
2608
  },
1655
2609
  role: {
1656
2610
  type: 'string',
1657
- description: "User role. Can be 'Administrator', 'User'.",
2611
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1658
2612
  example: 'User',
1659
- enum: ['Administrator', 'User']
2613
+ enum: [
2614
+ 'Administrator',
2615
+ 'User'
2616
+ ]
1660
2617
  }
1661
2618
  },
1662
- required: ['email', 'first_name', 'last_name', 'code', 'password'],
2619
+ required: [
2620
+ 'email',
2621
+ 'first_name',
2622
+ 'last_name',
2623
+ 'code',
2624
+ 'password'
2625
+ ],
1663
2626
  additionalProperties: false
1664
2627
  };
1665
2628
  export const UserSchema = {
@@ -1687,15 +2650,21 @@ export const UserSchema = {
1687
2650
  },
1688
2651
  role: {
1689
2652
  type: 'string',
1690
- description: "User role. Can be 'Administrator', 'User'.",
2653
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1691
2654
  example: 'User',
1692
- enum: ['Administrator', 'User']
2655
+ enum: [
2656
+ 'Administrator',
2657
+ 'User'
2658
+ ]
1693
2659
  },
1694
2660
  status: {
1695
2661
  type: 'string',
1696
2662
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1697
2663
  example: 'active',
1698
- enum: ['active', 'inactive']
2664
+ enum: [
2665
+ 'active',
2666
+ 'inactive'
2667
+ ]
1699
2668
  },
1700
2669
  id: {
1701
2670
  type: 'string',
@@ -1710,7 +2679,15 @@ export const UserSchema = {
1710
2679
  example: '2023-11-02T16:08:14.338Z'
1711
2680
  }
1712
2681
  },
1713
- required: ['email', 'first_name', 'last_name', 'role', 'status', 'id', 'date_created'],
2682
+ required: [
2683
+ 'email',
2684
+ 'first_name',
2685
+ 'last_name',
2686
+ 'role',
2687
+ 'status',
2688
+ 'id',
2689
+ 'date_created'
2690
+ ],
1714
2691
  additionalProperties: false
1715
2692
  };
1716
2693
  export const UserUpdateInputSchema = {
@@ -1738,15 +2715,21 @@ export const UserUpdateInputSchema = {
1738
2715
  },
1739
2716
  role: {
1740
2717
  type: 'string',
1741
- description: "User role. Can be 'Administrator', 'User'.",
2718
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1742
2719
  example: 'User',
1743
- enum: ['Administrator', 'User']
2720
+ enum: [
2721
+ 'Administrator',
2722
+ 'User'
2723
+ ]
1744
2724
  },
1745
2725
  status: {
1746
2726
  type: 'string',
1747
2727
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1748
2728
  example: 'active',
1749
- enum: ['active', 'inactive']
2729
+ enum: [
2730
+ 'active',
2731
+ 'inactive'
2732
+ ]
1750
2733
  }
1751
2734
  },
1752
2735
  additionalProperties: false