@cloudfleet/sdk 0.0.1-7f36848 → 0.0.1-80ccdf7

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 (68) hide show
  1. package/dist/client/client.gen.d.ts +3 -0
  2. package/dist/client/client.gen.d.ts.map +1 -0
  3. package/dist/client/client.gen.js +236 -0
  4. package/dist/client/client.gen.js.map +1 -0
  5. package/dist/client/index.d.ts +9 -0
  6. package/dist/client/index.d.ts.map +1 -0
  7. package/dist/client/index.js +7 -0
  8. package/dist/client/index.js.map +1 -0
  9. package/dist/client/types.gen.d.ts +118 -0
  10. package/dist/client/types.gen.d.ts.map +1 -0
  11. package/dist/client/types.gen.js +3 -0
  12. package/dist/client/types.gen.js.map +1 -0
  13. package/dist/client/utils.gen.d.ts +34 -0
  14. package/dist/client/utils.gen.d.ts.map +1 -0
  15. package/dist/client/utils.gen.js +229 -0
  16. package/dist/client/utils.gen.js.map +1 -0
  17. package/dist/client.gen.d.ts +4 -4
  18. package/dist/client.gen.d.ts.map +1 -1
  19. package/dist/client.gen.js +2 -4
  20. package/dist/client.gen.js.map +1 -1
  21. package/dist/core/auth.gen.d.ts +19 -0
  22. package/dist/core/auth.gen.d.ts.map +1 -0
  23. package/dist/core/auth.gen.js +15 -0
  24. package/dist/core/auth.gen.js.map +1 -0
  25. package/dist/core/bodySerializer.gen.d.ts +26 -0
  26. package/dist/core/bodySerializer.gen.d.ts.map +1 -0
  27. package/dist/core/bodySerializer.gen.js +58 -0
  28. package/dist/core/bodySerializer.gen.js.map +1 -0
  29. package/dist/core/params.gen.d.ts +44 -0
  30. package/dist/core/params.gen.d.ts.map +1 -0
  31. package/dist/core/params.gen.js +101 -0
  32. package/dist/core/params.gen.js.map +1 -0
  33. package/dist/core/pathSerializer.gen.d.ts +34 -0
  34. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  35. package/dist/core/pathSerializer.gen.js +107 -0
  36. package/dist/core/pathSerializer.gen.js.map +1 -0
  37. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  38. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  39. package/dist/core/queryKeySerializer.gen.js +93 -0
  40. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  41. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  42. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  43. package/dist/core/serverSentEvents.gen.js +134 -0
  44. package/dist/core/serverSentEvents.gen.js.map +1 -0
  45. package/dist/core/types.gen.d.ts +79 -0
  46. package/dist/core/types.gen.d.ts.map +1 -0
  47. package/dist/core/types.gen.js +3 -0
  48. package/dist/core/types.gen.js.map +1 -0
  49. package/dist/core/utils.gen.d.ts +20 -0
  50. package/dist/core/utils.gen.d.ts.map +1 -0
  51. package/dist/core/utils.gen.js +88 -0
  52. package/dist/core/utils.gen.js.map +1 -0
  53. package/dist/schemas.gen.d.ts +712 -557
  54. package/dist/schemas.gen.d.ts.map +1 -1
  55. package/dist/schemas.gen.js +1226 -646
  56. package/dist/schemas.gen.js.map +1 -1
  57. package/dist/sdk.gen.d.ts +141 -76
  58. package/dist/sdk.gen.d.ts.map +1 -1
  59. package/dist/sdk.gen.js +171 -185
  60. package/dist/sdk.gen.js.map +1 -1
  61. package/dist/services/kubernetes/api.d.ts +12 -12
  62. package/dist/types.gen.d.ts +618 -344
  63. package/dist/types.gen.d.ts.map +1 -1
  64. package/dist/zod.gen.d.ts +1623 -2117
  65. package/dist/zod.gen.d.ts.map +1 -1
  66. package/dist/zod.gen.js +620 -766
  67. package/dist/zod.gen.js.map +1 -1
  68. package/package.json +10 -7
@@ -58,18 +58,158 @@ export const BillingContactSchema = {
58
58
  description: 'Email address used for billing as a string.',
59
59
  example: 'email@example.com'
60
60
  },
61
- first_name: {
61
+ individual_name: {
62
62
  type: 'string',
63
- description: 'First name of the billing contact person.',
64
- example: 'John'
63
+ description: 'Name of the billing contact person.',
64
+ example: 'John Doe'
65
65
  },
66
- last_name: {
66
+ tax_id: {
67
67
  type: 'string',
68
- description: 'Last name of the billing contact person.',
69
- example: 'Doe'
68
+ nullable: true,
69
+ description: 'Tax ID of the organization.',
70
+ example: 'DE123456789'
71
+ },
72
+ tax_id_type: {
73
+ type: 'string',
74
+ nullable: true,
75
+ description: 'Type of the tax ID.',
76
+ example: 'de_vat',
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
+ ]
70
207
  }
71
208
  },
72
- required: ['email', 'first_name', 'last_name'],
209
+ required: [
210
+ 'email',
211
+ 'individual_name'
212
+ ],
73
213
  additionalProperties: false
74
214
  };
75
215
  export const BillingCreditsSchema = {
@@ -80,10 +220,25 @@ export const BillingCreditsSchema = {
80
220
  description: 'Generated unique identifier of the promotional code.',
81
221
  example: '7kUZnH7nnKUFfvc4NK2KQF'
82
222
  },
83
- date_created: {
223
+ type: {
224
+ type: 'string',
225
+ description: 'Type of the promotional code.',
226
+ example: 'credit',
227
+ enum: [
228
+ 'credit',
229
+ 'discount'
230
+ ]
231
+ },
232
+ date_start: {
233
+ type: 'string',
234
+ format: 'date-time',
235
+ description: 'Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.',
236
+ example: '2023-12-20T13:53:32.000Z'
237
+ },
238
+ date_end: {
84
239
  type: 'string',
85
240
  format: 'date-time',
86
- description: 'Date of the credit application. ISO 8601 date string in the UTC timezone.',
241
+ description: 'Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.',
87
242
  example: '2023-12-20T13:53:32.000Z'
88
243
  },
89
244
  code: {
@@ -96,40 +251,25 @@ export const BillingCreditsSchema = {
96
251
  description: 'Description of the promotional code.',
97
252
  example: '10% off on all products'
98
253
  },
99
- products: {
100
- type: 'array',
101
- items: {
102
- type: 'string'
103
- },
104
- description: 'List of product SKUs that the promotional code can be used on.',
105
- example: ['SKU123', 'SKU456']
106
- },
107
- type: {
108
- type: 'string',
109
- description: 'Type of the promotional code.',
110
- example: 'credit',
111
- enum: ['credit', 'discount']
112
- },
113
- value: {
254
+ value_total: {
114
255
  type: 'number',
115
256
  format: 'float',
116
- description: 'Value of the promotional code.',
257
+ description: 'Total value of the promotional code.',
117
258
  example: 10
118
259
  },
119
- billing_period: {
120
- type: 'string',
121
- format: 'date-time',
122
- description: 'Date of the billing cycle. An ISO 8601 date string in the UTC timezone.',
123
- example: '2023-12-20T13:53:32.000Z'
124
- },
125
260
  value_remaining: {
126
261
  type: 'number',
127
262
  format: 'float',
128
- description: 'Value of the promotional code.',
129
- example: 10
263
+ description: 'Remaining value of the promotional code.',
264
+ example: 8
130
265
  }
131
266
  },
132
- required: ['date_created', 'code', 'type', 'value', 'billing_period'],
267
+ required: [
268
+ 'type',
269
+ 'date_start',
270
+ 'code',
271
+ 'value_total'
272
+ ],
133
273
  additionalProperties: false
134
274
  };
135
275
  export const ChartCreateInputSchema = {
@@ -137,12 +277,12 @@ export const ChartCreateInputSchema = {
137
277
  properties: {
138
278
  values: {
139
279
  type: 'string',
140
- description: 'Values to be used in the chart.'
280
+ description: 'Values to be used in the chart encoded as a JSON string.'
141
281
  },
142
282
  version_channel: {
143
283
  type: 'string',
144
284
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
145
- description: 'Version of the chart.',
285
+ description: 'Desired version range or channel for the chart.',
146
286
  example: '2.x.x-cfke.x'
147
287
  },
148
288
  name: {
@@ -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 = {
@@ -178,12 +324,12 @@ export const ChartSchema = {
178
324
  properties: {
179
325
  values: {
180
326
  type: 'string',
181
- description: 'Values to be used in the chart.'
327
+ description: 'Values to be used in the chart encoded as a JSON string.'
182
328
  },
183
329
  version_channel: {
184
330
  type: 'string',
185
331
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
186
- description: 'Version of the chart.',
332
+ description: 'Desired version range or channel for the chart.',
187
333
  example: '2.x.x-cfke.x'
188
334
  },
189
335
  name: {
@@ -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']
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 = {
@@ -245,16 +417,19 @@ export const ChartUpdateInputSchema = {
245
417
  properties: {
246
418
  values: {
247
419
  type: 'string',
248
- description: 'Values to be used in the chart.'
420
+ description: 'Values to be used in the chart encoded as a JSON string.'
249
421
  },
250
422
  version_channel: {
251
423
  type: 'string',
252
424
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
253
- description: 'Version of the chart.',
425
+ description: 'Desired version range or channel for the chart.',
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 = {
@@ -268,28 +443,45 @@ export const ClusterCreateInputSchema = {
268
443
  description: 'Name of the cluster.',
269
444
  example: 'production-cluster'
270
445
  },
271
- region: {
272
- type: 'string',
273
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
274
- default: 'staging',
275
- example: 'northamerica-central-1',
276
- enum: ['staging', 'northamerica-central-1']
277
- },
278
446
  tier: {
279
447
  type: 'string',
280
448
  description: 'Tier of the cluster.',
281
449
  example: 'pro',
282
- enum: ['basic', 'pro']
450
+ enum: [
451
+ 'basic',
452
+ 'pro'
453
+ ]
454
+ },
455
+ region: {
456
+ type: 'string',
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',
459
+ example: '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',
286
469
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
287
470
  description: 'Version of the kubernetes cluster.',
288
471
  default: '1.x.x-cfke.x',
289
- example: '1.29.x-cfke.x'
472
+ example: '1.x.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
+ ]
290
479
  }
291
480
  },
292
- required: ['name', 'tier'],
481
+ required: [
482
+ 'name',
483
+ 'tier'
484
+ ],
293
485
  additionalProperties: false
294
486
  };
295
487
  export const ClusterJoinInformationSchema = {
@@ -298,8 +490,7 @@ export const ClusterJoinInformationSchema = {
298
490
  certificate_authority: {
299
491
  type: 'string',
300
492
  description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
301
- example: `-----BEGIN CERTIFICATE-----
302
- MIIC0DCCAbigAwIBAgI...`
493
+ example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
303
494
  },
304
495
  endpoint: {
305
496
  type: 'string',
@@ -307,6 +498,11 @@ MIIC0DCCAbigAwIBAgI...`
307
498
  description: 'Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.',
308
499
  example: 'https://10.31.64.7:6443'
309
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
+ },
310
506
  auth_key: {
311
507
  type: 'string',
312
508
  description: 'Authentication key for the cluster.',
@@ -323,7 +519,7 @@ MIIC0DCCAbigAwIBAgI...`
323
519
  kubernetes: {
324
520
  type: 'string',
325
521
  description: 'Kubernetes version of the cluster.',
326
- example: '1.29.3'
522
+ example: '1.33.7'
327
523
  },
328
524
  tailscale: {
329
525
  type: 'string',
@@ -334,9 +530,19 @@ MIIC0DCCAbigAwIBAgI...`
334
530
  type: 'string',
335
531
  description: 'Containerd version of the cluster.',
336
532
  example: '1.7.19'
533
+ },
534
+ nvidia_driver: {
535
+ type: 'string',
536
+ description: 'NVIDIA driver version of the cluster.',
537
+ example: '565.0.0'
337
538
  }
338
539
  },
339
- required: ['kubernetes', 'tailscale', 'containerd'],
540
+ required: [
541
+ 'kubernetes',
542
+ 'tailscale',
543
+ 'containerd',
544
+ 'nvidia_driver'
545
+ ],
340
546
  additionalProperties: false,
341
547
  description: 'Versions of the different components of the cluster.'
342
548
  },
@@ -359,12 +565,24 @@ MIIC0DCCAbigAwIBAgI...`
359
565
  example: '//iam.googleapis.com/projects/89014267864/locations/global/workloadIdentityPools/cfke/providers/oidc'
360
566
  }
361
567
  },
362
- 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
+ ],
363
573
  additionalProperties: false,
364
- 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.'
365
575
  }
366
576
  },
367
- 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
+ ],
368
586
  additionalProperties: false
369
587
  };
370
588
  export const ClusterSchema = {
@@ -378,25 +596,26 @@ export const ClusterSchema = {
378
596
  description: 'Name of the cluster.',
379
597
  example: 'production-cluster'
380
598
  },
381
- region: {
382
- type: 'string',
383
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
384
- default: 'staging',
385
- example: 'northamerica-central-1',
386
- enum: ['staging', 'northamerica-central-1']
387
- },
388
599
  tier: {
389
600
  type: 'string',
390
601
  description: 'Tier of the cluster.',
391
602
  example: 'pro',
392
- enum: ['basic', 'pro']
603
+ enum: [
604
+ 'basic',
605
+ 'pro'
606
+ ]
393
607
  },
394
- version_channel: {
608
+ region: {
395
609
  type: 'string',
396
- pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
397
- description: 'Version of the kubernetes cluster.',
398
- default: '1.x.x-cfke.x',
399
- example: '1.29.x-cfke.x'
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',
612
+ example: 'northamerica-central-1a',
613
+ enum: [
614
+ 'staging-1a',
615
+ 'northamerica-central-1',
616
+ 'europe-central-1a',
617
+ 'northamerica-central-1a'
618
+ ]
400
619
  },
401
620
  id: {
402
621
  type: 'string',
@@ -408,7 +627,15 @@ export const ClusterSchema = {
408
627
  type: 'string',
409
628
  description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
410
629
  example: 'active',
411
- enum: ['active', 'deleted', 'creating', 'deployed', 'failed', 'updating']
630
+ enum: [
631
+ 'active',
632
+ 'disabled',
633
+ 'deleted',
634
+ 'creating',
635
+ 'deployed',
636
+ 'failed',
637
+ 'updating'
638
+ ]
412
639
  },
413
640
  endpoint: {
414
641
  anyOf: [
@@ -420,20 +647,21 @@ export const ClusterSchema = {
420
647
  },
421
648
  {
422
649
  type: 'string',
423
- enum: ['']
650
+ enum: [
651
+ ''
652
+ ]
424
653
  }
425
654
  ]
426
655
  },
427
656
  certificate_ca: {
428
657
  type: 'string',
429
658
  description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
430
- example: `-----BEGIN CERTIFICATE-----
431
- MIIC0DCCAbigAwIBAgI...`
659
+ example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
432
660
  },
433
661
  version_current: {
434
662
  type: 'string',
435
663
  description: 'Current version of the cluster.',
436
- example: '1.29.3-cfke.52'
664
+ example: '1.33.7-cfke.264'
437
665
  },
438
666
  created_at: {
439
667
  type: 'string',
@@ -449,9 +677,20 @@ MIIC0DCCAbigAwIBAgI...`
449
677
  type: 'boolean',
450
678
  description: 'Indicates if the cluster is ready to be used.',
451
679
  example: true
680
+ },
681
+ version_channel: {
682
+ type: 'string',
683
+ pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
684
+ description: 'Version of the kubernetes cluster.',
685
+ example: '1.x.x-cfke.x'
452
686
  }
453
687
  },
454
- required: ['name', 'tier', 'id', 'status'],
688
+ required: [
689
+ 'name',
690
+ 'tier',
691
+ 'id',
692
+ 'status'
693
+ ],
455
694
  additionalProperties: false
456
695
  };
457
696
  export const ClusterUpdateInputSchema = {
@@ -465,13 +704,25 @@ export const ClusterUpdateInputSchema = {
465
704
  description: 'Name of the cluster.',
466
705
  example: 'production-cluster'
467
706
  },
707
+ tier: {
708
+ type: 'string',
709
+ description: 'Tier of the cluster.',
710
+ example: 'pro',
711
+ enum: [
712
+ 'basic',
713
+ 'pro'
714
+ ]
715
+ },
468
716
  version_channel: {
469
717
  type: 'string',
470
718
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
471
719
  description: 'Version of the kubernetes cluster.',
472
- example: '1.29.x-cfke.x'
720
+ example: '1.x.x-cfke.x'
473
721
  }
474
722
  },
723
+ required: [
724
+ 'tier'
725
+ ],
475
726
  additionalProperties: false
476
727
  };
477
728
  export const FleetCreateInputSchema = {
@@ -487,7 +738,9 @@ export const FleetCreateInputSchema = {
487
738
  description: 'CPU limit in cores.'
488
739
  }
489
740
  },
490
- required: ['cpu'],
741
+ required: [
742
+ 'cpu'
743
+ ],
491
744
  additionalProperties: false,
492
745
  description: 'Limits define a set of bounds for provisioning capacity.'
493
746
  },
@@ -503,38 +756,27 @@ export const FleetCreateInputSchema = {
503
756
  description: 'Project GCP Project id to deploy instances into'
504
757
  }
505
758
  },
506
- required: ['project'],
759
+ required: [
760
+ 'project'
761
+ ],
507
762
  additionalProperties: false
508
763
  },
509
764
  hetzner: {
510
- oneOf: [
511
- {
512
- type: 'object',
513
- properties: {
514
- enabled: {
515
- type: 'boolean',
516
- default: true
517
- },
518
- apiKey: {
519
- type: 'string'
520
- }
521
- },
522
- additionalProperties: false
765
+ type: 'object',
766
+ properties: {
767
+ enabled: {
768
+ type: 'boolean',
769
+ default: true
523
770
  },
524
- {
525
- type: 'object',
526
- properties: {
527
- apiKey: {
528
- type: 'string'
529
- },
530
- enabled: {
531
- type: 'boolean',
532
- default: true
533
- }
534
- },
535
- additionalProperties: false
771
+ apiKey: {
772
+ type: 'string',
773
+ description: 'Hetzner Cloud API key with read / write access'
536
774
  }
537
- ]
775
+ },
776
+ required: [
777
+ 'apiKey'
778
+ ],
779
+ additionalProperties: false
538
780
  },
539
781
  aws: {
540
782
  type: 'object',
@@ -548,7 +790,9 @@ export const FleetCreateInputSchema = {
548
790
  description: 'ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.'
549
791
  }
550
792
  },
551
- required: ['controllerRoleArn'],
793
+ required: [
794
+ 'controllerRoleArn'
795
+ ],
552
796
  additionalProperties: false
553
797
  },
554
798
  id: {
@@ -558,14 +802,11 @@ export const FleetCreateInputSchema = {
558
802
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
559
803
  description: 'Unique identifier of the kubernetes fleet.',
560
804
  example: 'new-clouds-fleet'
561
- },
562
- type: {
563
- type: 'string',
564
- description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
565
- enum: ['managed', 'connected']
566
805
  }
567
806
  },
568
- required: ['id', 'type'],
807
+ required: [
808
+ 'id'
809
+ ],
569
810
  additionalProperties: false
570
811
  };
571
812
  export const FleetSchema = {
@@ -581,7 +822,9 @@ export const FleetSchema = {
581
822
  description: 'CPU limit in cores.'
582
823
  }
583
824
  },
584
- required: ['cpu'],
825
+ required: [
826
+ 'cpu'
827
+ ],
585
828
  additionalProperties: false,
586
829
  description: 'Limits define a set of bounds for provisioning capacity.'
587
830
  },
@@ -597,38 +840,27 @@ export const FleetSchema = {
597
840
  description: 'Project GCP Project id to deploy instances into'
598
841
  }
599
842
  },
600
- required: ['project'],
843
+ required: [
844
+ 'project'
845
+ ],
601
846
  additionalProperties: false
602
847
  },
603
848
  hetzner: {
604
- oneOf: [
605
- {
606
- type: 'object',
607
- properties: {
608
- enabled: {
609
- type: 'boolean',
610
- default: true
611
- },
612
- apiKey: {
613
- type: 'string'
614
- }
615
- },
616
- additionalProperties: false
849
+ type: 'object',
850
+ properties: {
851
+ enabled: {
852
+ type: 'boolean',
853
+ default: true
617
854
  },
618
- {
619
- type: 'object',
620
- properties: {
621
- apiKey: {
622
- type: 'string'
623
- },
624
- enabled: {
625
- type: 'boolean',
626
- default: true
627
- }
628
- },
629
- additionalProperties: false
855
+ apiKey: {
856
+ type: 'string',
857
+ description: 'Hetzner Cloud API key with read / write access'
630
858
  }
631
- ]
859
+ },
860
+ required: [
861
+ 'apiKey'
862
+ ],
863
+ additionalProperties: false
632
864
  },
633
865
  aws: {
634
866
  type: 'object',
@@ -642,7 +874,9 @@ export const FleetSchema = {
642
874
  description: 'ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.'
643
875
  }
644
876
  },
645
- required: ['controllerRoleArn'],
877
+ required: [
878
+ 'controllerRoleArn'
879
+ ],
646
880
  additionalProperties: false
647
881
  },
648
882
  id: {
@@ -652,14 +886,11 @@ export const FleetSchema = {
652
886
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
653
887
  description: 'Unique identifier of the kubernetes fleet.',
654
888
  example: 'new-clouds-fleet'
655
- },
656
- type: {
657
- type: 'string',
658
- description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
659
- enum: ['managed', 'connected']
660
889
  }
661
890
  },
662
- required: ['id', 'type'],
891
+ required: [
892
+ 'id'
893
+ ],
663
894
  additionalProperties: false
664
895
  };
665
896
  export const FleetUpdateInputSchema = {
@@ -675,7 +906,9 @@ export const FleetUpdateInputSchema = {
675
906
  description: 'CPU limit in cores.'
676
907
  }
677
908
  },
678
- required: ['cpu'],
909
+ required: [
910
+ 'cpu'
911
+ ],
679
912
  additionalProperties: false,
680
913
  description: 'Limits define a set of bounds for provisioning capacity.'
681
914
  },
@@ -691,38 +924,27 @@ export const FleetUpdateInputSchema = {
691
924
  description: 'Project GCP Project id to deploy instances into'
692
925
  }
693
926
  },
694
- required: ['project'],
927
+ required: [
928
+ 'project'
929
+ ],
695
930
  additionalProperties: false
696
931
  },
697
932
  hetzner: {
698
- oneOf: [
699
- {
700
- type: 'object',
701
- properties: {
702
- enabled: {
703
- type: 'boolean',
704
- default: true
705
- },
706
- apiKey: {
707
- type: 'string'
708
- }
709
- },
710
- additionalProperties: false
933
+ type: 'object',
934
+ properties: {
935
+ enabled: {
936
+ type: 'boolean',
937
+ default: true
711
938
  },
712
- {
713
- type: 'object',
714
- properties: {
715
- apiKey: {
716
- type: 'string'
717
- },
718
- enabled: {
719
- type: 'boolean',
720
- default: true
721
- }
722
- },
723
- additionalProperties: false
939
+ apiKey: {
940
+ type: 'string',
941
+ description: 'Hetzner Cloud API key with read / write access'
724
942
  }
725
- ]
943
+ },
944
+ required: [
945
+ 'apiKey'
946
+ ],
947
+ additionalProperties: false
726
948
  },
727
949
  aws: {
728
950
  type: 'object',
@@ -736,7 +958,9 @@ export const FleetUpdateInputSchema = {
736
958
  description: 'ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.'
737
959
  }
738
960
  },
739
- required: ['controllerRoleArn'],
961
+ required: [
962
+ 'controllerRoleArn'
963
+ ],
740
964
  additionalProperties: false
741
965
  }
742
966
  },
@@ -774,7 +998,9 @@ export const InviteSchema = {
774
998
  example: '7kUZnH7nnKUFfvc4NK2KQF'
775
999
  }
776
1000
  },
777
- required: ['date_created'],
1001
+ required: [
1002
+ 'date_created'
1003
+ ],
778
1004
  additionalProperties: false
779
1005
  };
780
1006
  export const InvoiceSchema = {
@@ -782,23 +1008,18 @@ export const InvoiceSchema = {
782
1008
  properties: {
783
1009
  id: {
784
1010
  type: 'string',
785
- format: 'uuid',
786
- description: 'Unique identifier of the invoice. UUID v4 string in canonical form',
787
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1011
+ description: 'Unique identifier of the invoice.',
1012
+ example: 'in_1234567890xCrwxghOTj1234'
788
1013
  },
789
- organizationId: {
790
- type: 'string',
791
- format: 'uuid',
792
- description: 'Unique identifier of the organization. UUID v4 string in canonical form',
793
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1014
+ number: {
1015
+ type: 'string'
794
1016
  },
795
1017
  status: {
796
1018
  type: 'string',
797
1019
  description: 'Status of the invoice',
798
- example: 'DRAFT',
799
- enum: ['DRAFT', 'COMMITTED', 'VOID']
1020
+ example: 'paid'
800
1021
  },
801
- amount: {
1022
+ total: {
802
1023
  type: 'number',
803
1024
  format: 'float',
804
1025
  description: 'Total amount of the invoice',
@@ -807,378 +1028,189 @@ export const InvoiceSchema = {
807
1028
  currency: {
808
1029
  type: 'string',
809
1030
  description: 'Currency of the invoice',
810
- example: 'USD',
811
- enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
1031
+ example: 'usd'
812
1032
  },
813
- creditAdj: {
814
- type: 'number',
815
- format: 'float',
816
- description: 'Total amount of credit adjustments',
817
- example: 0
818
- },
819
- refundAdj: {
820
- type: 'number',
821
- format: 'float',
822
- description: 'Total amount of refund adjustments',
823
- example: 0
1033
+ created: {
1034
+ type: 'string',
1035
+ format: 'date-time',
1036
+ description: 'Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.',
1037
+ example: '2023-12-20T13:53:32.000Z'
824
1038
  },
825
- invoiceDate: {
1039
+ period_start: {
826
1040
  type: 'string',
827
- description: 'Date of the invoice',
828
- example: '2019-01-01T00:00:00.000Z'
1041
+ format: 'date-time',
1042
+ description: 'Billing period start timestamp. ISO 8601 date string in the UTC timezone.',
1043
+ example: '2023-12-20T13:53:32.000Z'
829
1044
  },
830
- targetDate: {
1045
+ period_end: {
831
1046
  type: 'string',
832
- description: 'Target date of the invoice',
833
- example: '2019-01-01T00:00:00.000Z'
1047
+ format: 'date-time',
1048
+ description: 'Billing period end timestamp. ISO 8601 date string in the UTC timezone.',
1049
+ example: '2023-12-20T13:53:32.000Z'
834
1050
  },
835
- invoiceNumber: {
1051
+ invoice_pdf: {
1052
+ type: 'string'
1053
+ }
1054
+ },
1055
+ required: [
1056
+ 'created',
1057
+ 'period_start',
1058
+ 'period_end'
1059
+ ],
1060
+ additionalProperties: false
1061
+ };
1062
+ export const MarketplaceListingFilesSchema = {
1063
+ type: 'object',
1064
+ properties: {
1065
+ chartYaml: {
836
1066
  type: 'string',
837
- description: 'Number of the invoice',
838
- example: 'INV-0001'
1067
+ description: 'Raw Chart.yaml content from the Helm chart',
1068
+ example: 'apiVersion: v2\nname: nginx-ingress\nversion: 1.18.2-cfke.45\nappVersion: 1.9.4'
839
1069
  },
840
- balance: {
841
- type: 'number',
842
- format: 'float',
843
- description: 'Balance of the invoice',
844
- example: 100
1070
+ valuesYaml: {
1071
+ type: 'string',
1072
+ description: 'Raw values.yaml content from the Helm chart',
1073
+ example: 'replicaCount: 1\nimage:\n repository: nginx\n tag: latest'
845
1074
  },
846
- bundleKeys: {
1075
+ valuesSchemaJson: {
847
1076
  type: 'string',
848
- description: 'Bundle keys of the invoice',
849
- example: 'bundleKey1,bundleKey2'
1077
+ description: 'JSON schema for values.yaml as a string',
1078
+ example: '{"type":"object","properties":{"replicaCount":{"type":"number"}}}'
1079
+ }
1080
+ },
1081
+ additionalProperties: false
1082
+ };
1083
+ export const MarketplaceListingSchema = {
1084
+ type: 'object',
1085
+ properties: {
1086
+ name: {
1087
+ type: 'string',
1088
+ description: 'Name of the chart',
1089
+ example: 'nginx-ingress'
850
1090
  },
851
- credits: {
1091
+ versions: {
852
1092
  type: 'array',
853
1093
  items: {
854
- type: 'object',
855
- properties: {
856
- id: {
857
- type: 'string',
858
- format: 'uuid',
859
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
860
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
861
- },
862
- linkedInvoiceItemId: {
863
- type: 'string',
864
- format: 'uuid',
865
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
866
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
867
- },
868
- productName: {
869
- type: 'string',
870
- description: 'Name of the product',
871
- example: 'Research team'
872
- },
873
- planName: {
874
- type: 'string',
875
- description: 'Name of the plan',
876
- example: 'Plan A'
877
- },
878
- phaseName: {
879
- type: 'string',
880
- description: 'Name of the phase',
881
- example: 'Phase A'
882
- },
883
- usageName: {
884
- type: 'string',
885
- description: 'Name of the usage',
886
- example: 'Usage A'
887
- },
888
- prettyProductName: {
889
- type: 'string',
890
- description: 'Pretty name of the product',
891
- example: 'Research team'
892
- },
893
- prettyPlanName: {
894
- type: 'string',
895
- description: 'Pretty name of the plan',
896
- example: 'Plan A'
897
- },
898
- prettyPhaseName: {
899
- type: 'string',
900
- description: 'Pretty name of the phase',
901
- example: 'Phase A'
902
- },
903
- prettyUsageName: {
904
- type: 'string',
905
- description: 'Pretty name of the usage',
906
- example: 'Usage A'
907
- },
908
- itemType: {
909
- type: 'string',
910
- description: 'Type of the invoice item',
911
- example: 'EXTERNAL_CHARGE',
912
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
913
- },
914
- description: {
915
- type: 'string',
916
- description: 'Description of the invoice item',
917
- example: 'Description of the invoice item'
918
- },
919
- startDate: {
920
- type: 'string',
921
- description: 'Start date of the invoice item',
922
- example: '2019-01-01T00:00:00.000Z'
923
- },
924
- endDate: {
925
- type: 'string',
926
- description: 'End date of the invoice item',
927
- example: '2019-01-01T00:00:00.000Z'
928
- },
929
- amount: {
930
- type: 'number',
931
- format: 'float',
932
- description: 'Amount of the invoice item',
933
- example: 100
934
- },
935
- rate: {
936
- type: 'number',
937
- format: 'float',
938
- description: 'Rate of the invoice item',
939
- example: 100
940
- },
941
- currency: {
942
- type: 'string',
943
- description: 'Currency of the invoice item',
944
- example: 'USD',
945
- enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
946
- },
947
- quantity: {
948
- type: 'number',
949
- format: 'float',
950
- description: 'Quantity of the invoice item',
951
- example: 1
952
- },
953
- itemDetails: {
954
- type: 'string',
955
- description: 'Details of the invoice item',
956
- example: 'Details of the invoice item'
957
- },
958
- catalogEffectiveDate: {
959
- type: 'string',
960
- description: 'Effective date of the catalog',
961
- example: '2019-01-01T00:00:00.000Z'
962
- },
963
- childItems: {
964
- type: 'array',
965
- items: {
966
- oneOf: [
967
- {
968
- type: 'array'
969
- },
970
- {
971
- type: 'boolean'
972
- },
973
- {
974
- type: 'number'
975
- },
976
- {
977
- type: 'object',
978
- additionalProperties: true
979
- },
980
- {
981
- type: 'string'
982
- }
983
- ]
984
- },
985
- description: 'Child items of the invoice item'
986
- }
987
- },
988
- additionalProperties: false
1094
+ type: 'string',
1095
+ pattern: '^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
1096
+ description: 'Specific version of the chart',
1097
+ example: '1.18.2-cfke.45'
989
1098
  },
990
- description: 'Credits of the invoice'
1099
+ description: 'Available versions of the chart'
991
1100
  },
992
- items: {
1101
+ version_channels: {
993
1102
  type: 'array',
994
1103
  items: {
995
- type: 'object',
996
- properties: {
997
- id: {
998
- type: 'string',
999
- format: 'uuid',
1000
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
1001
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1002
- },
1003
- linkedInvoiceItemId: {
1004
- type: 'string',
1005
- format: 'uuid',
1006
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
1007
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1104
+ type: 'string',
1105
+ pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
1106
+ description: 'Version channel pattern',
1107
+ example: '1.18.x-cfke.x'
1108
+ },
1109
+ description: 'Version channels for the chart'
1110
+ },
1111
+ latestVersion: {
1112
+ type: 'string',
1113
+ description: 'Latest version of the chart',
1114
+ example: '1.18.2-cfke.45'
1115
+ },
1116
+ metadata: {
1117
+ type: 'object',
1118
+ properties: {
1119
+ name: {
1120
+ type: 'string',
1121
+ description: 'Chart name from metadata',
1122
+ example: 'nginx-ingress'
1123
+ },
1124
+ version: {
1125
+ type: 'string',
1126
+ description: 'Chart version from metadata',
1127
+ example: '1.18.2-cfke.45'
1128
+ },
1129
+ description: {
1130
+ type: 'string',
1131
+ description: 'Chart description',
1132
+ example: 'NGINX Ingress Controller for Kubernetes'
1133
+ },
1134
+ appVersion: {
1135
+ type: 'string',
1136
+ description: 'Application version',
1137
+ example: '1.9.4'
1138
+ },
1139
+ apiVersion: {
1140
+ type: 'string',
1141
+ description: 'Helm API version',
1142
+ example: 'v2'
1143
+ },
1144
+ keywords: {
1145
+ type: 'array',
1146
+ items: {
1147
+ type: 'string'
1008
1148
  },
1009
- productName: {
1010
- type: 'string',
1011
- description: 'Name of the product',
1012
- example: 'Research team'
1013
- },
1014
- planName: {
1015
- type: 'string',
1016
- description: 'Name of the plan',
1017
- example: 'Plan A'
1018
- },
1019
- phaseName: {
1020
- type: 'string',
1021
- description: 'Name of the phase',
1022
- example: 'Phase A'
1023
- },
1024
- usageName: {
1025
- type: 'string',
1026
- description: 'Name of the usage',
1027
- example: 'Usage A'
1028
- },
1029
- prettyProductName: {
1030
- type: 'string',
1031
- description: 'Pretty name of the product',
1032
- example: 'Research team'
1033
- },
1034
- prettyPlanName: {
1035
- type: 'string',
1036
- description: 'Pretty name of the plan',
1037
- example: 'Plan A'
1038
- },
1039
- prettyPhaseName: {
1040
- type: 'string',
1041
- description: 'Pretty name of the phase',
1042
- example: 'Phase A'
1043
- },
1044
- prettyUsageName: {
1045
- type: 'string',
1046
- description: 'Pretty name of the usage',
1047
- example: 'Usage A'
1048
- },
1049
- itemType: {
1050
- type: 'string',
1051
- description: 'Type of the invoice item',
1052
- example: 'EXTERNAL_CHARGE',
1053
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
1054
- },
1055
- description: {
1056
- type: 'string',
1057
- description: 'Description of the invoice item',
1058
- example: 'Description of the invoice item'
1059
- },
1060
- startDate: {
1061
- type: 'string',
1062
- description: 'Start date of the invoice item',
1063
- example: '2019-01-01T00:00:00.000Z'
1064
- },
1065
- endDate: {
1066
- type: 'string',
1067
- description: 'End date of the invoice item',
1068
- example: '2019-01-01T00:00:00.000Z'
1069
- },
1070
- amount: {
1071
- type: 'number',
1072
- format: 'float',
1073
- description: 'Amount of the invoice item',
1074
- example: 100
1075
- },
1076
- rate: {
1077
- type: 'number',
1078
- format: 'float',
1079
- description: 'Rate of the invoice item',
1080
- example: 100
1081
- },
1082
- currency: {
1083
- type: 'string',
1084
- description: 'Currency of the invoice item',
1085
- example: 'USD',
1086
- enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
1087
- },
1088
- quantity: {
1089
- type: 'number',
1090
- format: 'float',
1091
- description: 'Quantity of the invoice item',
1092
- example: 1
1093
- },
1094
- itemDetails: {
1095
- type: 'string',
1096
- description: 'Details of the invoice item',
1097
- example: 'Details of the invoice item'
1098
- },
1099
- catalogEffectiveDate: {
1100
- type: 'string',
1101
- description: 'Effective date of the catalog',
1102
- example: '2019-01-01T00:00:00.000Z'
1149
+ description: 'Chart keywords',
1150
+ example: [
1151
+ 'ingress',
1152
+ 'nginx',
1153
+ 'load-balancer'
1154
+ ]
1155
+ },
1156
+ home: {
1157
+ type: 'string',
1158
+ description: 'Chart home URL',
1159
+ example: 'https://kubernetes.github.io/ingress-nginx/'
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
+ },
1166
+ sources: {
1167
+ type: 'array',
1168
+ items: {
1169
+ type: 'string'
1103
1170
  },
1104
- childItems: {
1105
- type: 'array',
1106
- items: {
1107
- oneOf: [
1108
- {
1109
- type: 'array'
1110
- },
1111
- {
1112
- type: 'boolean'
1113
- },
1114
- {
1115
- type: 'number'
1116
- },
1117
- {
1118
- type: 'object',
1119
- additionalProperties: true
1120
- },
1121
- {
1122
- type: 'string'
1123
- }
1124
- ]
1125
- },
1126
- description: 'Child items of the invoice item'
1127
- }
1171
+ description: 'Chart source URLs',
1172
+ example: [
1173
+ 'https://github.com/kubernetes/ingress-nginx'
1174
+ ]
1128
1175
  },
1129
- additionalProperties: false
1130
- },
1131
- description: 'Items of the invoice'
1132
- }
1133
- },
1134
- additionalProperties: false
1135
- };
1136
- export const MarketplaceListingSchema = {
1137
- type: 'object',
1138
- properties: {
1139
- id: {
1140
- type: 'string',
1141
- maxLength: 63,
1142
- minLength: 1,
1143
- pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
1144
- description: 'Id of the chart listing',
1145
- example: 'portworx-enterprise-disaster-recovery-baremetal'
1146
- },
1147
- name: {
1148
- type: 'string',
1149
- description: 'Name of the chart listing',
1150
- example: 'Portworx Enterprise + Disaster Recovery - Baremetal'
1151
- },
1152
- developer: {
1153
- type: 'string',
1154
- description: 'Author of the chart listing',
1155
- example: 'Portworx'
1156
- },
1157
- description: {
1158
- type: 'string',
1159
- description: 'Short description of the chart listing',
1160
- example: 'Run Kubernetes with unmatched scalability, availability, and self-service access to any storage'
1161
- },
1162
- logoUrl: {
1163
- type: 'string',
1164
- description: 'Logo of the chart listing',
1165
- example: 'https://portworx.com/wp-content/themes/portworx/assets/images/header/portworx-logo.png'
1166
- },
1167
- longDescription: {
1168
- type: 'string',
1169
- description: 'Long description of the chart listing',
1170
- example: 'Portworx-Enterprise is the complete multi-cloud ready Kubernetes storage platform for running mission-critical apps in production....'
1171
- },
1172
- categories: {
1173
- type: 'array',
1174
- items: {
1175
- type: 'string',
1176
- example: 'AI & Machine Learning'
1176
+ maintainers: {
1177
+ type: 'array',
1178
+ items: {
1179
+ type: 'object',
1180
+ properties: {
1181
+ name: {
1182
+ type: 'string',
1183
+ description: 'Maintainer name',
1184
+ example: 'NGINX Team'
1185
+ },
1186
+ email: {
1187
+ type: 'string',
1188
+ description: 'Maintainer email',
1189
+ example: 'support@nginx.org'
1190
+ }
1191
+ },
1192
+ required: [
1193
+ 'name'
1194
+ ],
1195
+ additionalProperties: false
1196
+ },
1197
+ description: 'Chart maintainers'
1198
+ }
1177
1199
  },
1178
- description: 'Tags of the chart'
1200
+ required: [
1201
+ 'name',
1202
+ 'version'
1203
+ ],
1204
+ additionalProperties: false,
1205
+ description: 'Chart metadata'
1179
1206
  }
1180
1207
  },
1181
- required: ['id', 'name', 'developer', 'description', 'logoUrl', 'longDescription'],
1208
+ required: [
1209
+ 'name',
1210
+ 'versions',
1211
+ 'version_channels',
1212
+ 'latestVersion'
1213
+ ],
1182
1214
  additionalProperties: false
1183
1215
  };
1184
1216
  export const OrganizationCreateInputSchema = {
@@ -1214,7 +1246,13 @@ export const OrganizationCreateInputSchema = {
1214
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.'
1215
1247
  }
1216
1248
  },
1217
- 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
+ ],
1218
1256
  additionalProperties: false
1219
1257
  };
1220
1258
  export const OrganizationSchema = {
@@ -1270,12 +1308,6 @@ export const OrganizationSchema = {
1270
1308
  description: 'Maximum number of fleets that can be created per cluster.',
1271
1309
  example: 999
1272
1310
  },
1273
- managed_fleets_cpu_max: {
1274
- type: 'integer',
1275
- minimum: 0,
1276
- description: 'Maximum number of CPU cores per managed fleet.',
1277
- example: 999
1278
- },
1279
1311
  cluster_tiers: {
1280
1312
  type: 'array',
1281
1313
  items: {
@@ -1302,32 +1334,74 @@ export const OrganizationSchema = {
1302
1334
  id: {
1303
1335
  type: 'string',
1304
1336
  description: 'Id of the control plane version. Used in API calls.',
1305
- example: '1.29.x-cfke.x'
1337
+ example: '1.33.x-cfke.x'
1306
1338
  },
1307
1339
  label: {
1308
1340
  type: 'string',
1309
1341
  description: 'Label of the control plane version. Used in frontent UI.',
1310
- example: '1.29.x (Always latest 1.29 patch version)'
1342
+ example: '1.33.x (Always latest 1.33 patch version)'
1311
1343
  }
1312
1344
  },
1313
- required: ['id', 'label'],
1345
+ required: [
1346
+ 'id',
1347
+ 'label'
1348
+ ],
1314
1349
  additionalProperties: false
1315
1350
  },
1316
1351
  minItems: 1,
1317
1352
  description: 'List of CFKE control plane versions available for the organization.'
1353
+ },
1354
+ copilot_user_hourly_tokens: {
1355
+ type: 'integer',
1356
+ minimum: 0,
1357
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1358
+ example: 42000
1359
+ },
1360
+ copilot_organization_hourly_tokens: {
1361
+ type: 'integer',
1362
+ minimum: 0,
1363
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1364
+ example: 242000
1365
+ },
1366
+ cfcr_storage_gb: {
1367
+ type: 'integer',
1368
+ minimum: -1,
1369
+ description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
1370
+ example: 500
1318
1371
  }
1319
1372
  },
1320
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'managed_fleets_cpu_max', 'cluster_tiers', 'regions', 'versions'],
1373
+ required: [
1374
+ 'basic_clusters_max',
1375
+ 'basic_clusters_available',
1376
+ 'pro_clusters_max',
1377
+ 'pro_clusters_available',
1378
+ 'fleets_max',
1379
+ 'cluster_tiers',
1380
+ 'regions',
1381
+ 'versions',
1382
+ 'copilot_user_hourly_tokens',
1383
+ 'copilot_organization_hourly_tokens',
1384
+ 'cfcr_storage_gb'
1385
+ ],
1321
1386
  additionalProperties: false,
1322
1387
  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.'
1323
1388
  },
1324
1389
  status: {
1325
1390
  type: 'string',
1326
1391
  description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1327
- enum: ['active', 'closed', 'suspended']
1392
+ enum: [
1393
+ 'active',
1394
+ 'closed',
1395
+ 'suspended'
1396
+ ]
1328
1397
  }
1329
1398
  },
1330
- required: ['id', 'date_created', 'quota', 'status'],
1399
+ required: [
1400
+ 'id',
1401
+ 'date_created',
1402
+ 'quota',
1403
+ 'status'
1404
+ ],
1331
1405
  additionalProperties: false
1332
1406
  };
1333
1407
  export const PaymentMethodSchema = {
@@ -1349,7 +1423,9 @@ export const PaymentMethodSchema = {
1349
1423
  nullable: true,
1350
1424
  description: 'Payment method type type. Only `card` payments supported at the moment.',
1351
1425
  example: 'card',
1352
- enum: ['card']
1426
+ enum: [
1427
+ 'card'
1428
+ ]
1353
1429
  },
1354
1430
  last4: {
1355
1431
  type: 'string',
@@ -1362,14 +1438,14 @@ export const PaymentMethodSchema = {
1362
1438
  minimum: 1,
1363
1439
  maximum: 12,
1364
1440
  nullable: true,
1365
- description: "Two-digit number representing the card's expiration month.",
1441
+ description: 'Two-digit number representing the card\'s expiration month.',
1366
1442
  example: '12'
1367
1443
  },
1368
1444
  exp_year: {
1369
1445
  type: 'integer',
1370
1446
  minimum: 2024,
1371
1447
  nullable: true,
1372
- description: "Four-digit number representing the card's expiration year.",
1448
+ description: 'Four-digit number representing the card\'s expiration year.',
1373
1449
  example: '2028'
1374
1450
  },
1375
1451
  brand: {
@@ -1377,10 +1453,401 @@ export const PaymentMethodSchema = {
1377
1453
  nullable: true,
1378
1454
  description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
1379
1455
  example: 'visa',
1380
- enum: ['amex', 'diners', 'discover', 'eftpos_au', 'jcb', 'mastercard', 'unionpay', 'visa', 'unknown']
1456
+ enum: [
1457
+ 'amex',
1458
+ 'diners',
1459
+ 'discover',
1460
+ 'eftpos_au',
1461
+ 'jcb',
1462
+ 'mastercard',
1463
+ 'unionpay',
1464
+ 'visa',
1465
+ 'unknown'
1466
+ ]
1467
+ }
1468
+ },
1469
+ required: [
1470
+ 'id',
1471
+ 'setup',
1472
+ 'type',
1473
+ 'last4',
1474
+ 'exp_month',
1475
+ 'exp_year',
1476
+ 'brand'
1477
+ ],
1478
+ additionalProperties: false
1479
+ };
1480
+ export const PlatformQuotaSchema = {
1481
+ type: 'object',
1482
+ properties: {
1483
+ basic_clusters_max: {
1484
+ type: 'integer',
1485
+ minimum: 0,
1486
+ description: 'Maximum number of Basic clusters that can be created.',
1487
+ example: 999
1488
+ },
1489
+ basic_clusters_available: {
1490
+ type: 'integer',
1491
+ description: 'Available number of Basic clusters that can be created.',
1492
+ example: 999
1493
+ },
1494
+ pro_clusters_max: {
1495
+ type: 'integer',
1496
+ minimum: 0,
1497
+ description: 'Maximum number of Pro clusters that can be created.',
1498
+ example: 999
1499
+ },
1500
+ pro_clusters_available: {
1501
+ type: 'integer',
1502
+ description: 'Available number of Pro clusters that can be created.',
1503
+ example: 999
1504
+ },
1505
+ fleets_max: {
1506
+ type: 'integer',
1507
+ minimum: 0,
1508
+ description: 'Maximum number of fleets that can be created per cluster.',
1509
+ example: 999
1510
+ },
1511
+ cluster_tiers: {
1512
+ type: 'array',
1513
+ items: {
1514
+ type: 'string',
1515
+ example: 'basic'
1516
+ },
1517
+ minItems: 0,
1518
+ description: 'List of Cloudfleet cluster tiers available for the organization.'
1519
+ },
1520
+ regions: {
1521
+ type: 'array',
1522
+ items: {
1523
+ type: 'string',
1524
+ example: 'northamerica-central-1'
1525
+ },
1526
+ minItems: 1,
1527
+ description: 'List of Cloudfleet control plane regions available for the organization.'
1528
+ },
1529
+ versions: {
1530
+ type: 'array',
1531
+ items: {
1532
+ type: 'object',
1533
+ properties: {
1534
+ id: {
1535
+ type: 'string',
1536
+ description: 'Id of the control plane version. Used in API calls.',
1537
+ example: '1.33.x-cfke.x'
1538
+ },
1539
+ label: {
1540
+ type: 'string',
1541
+ description: 'Label of the control plane version. Used in frontent UI.',
1542
+ example: '1.33.x (Always latest 1.33 patch version)'
1543
+ }
1544
+ },
1545
+ required: [
1546
+ 'id',
1547
+ 'label'
1548
+ ],
1549
+ additionalProperties: false
1550
+ },
1551
+ minItems: 1,
1552
+ description: 'List of CFKE control plane versions available for the organization.'
1553
+ },
1554
+ copilot_user_hourly_tokens: {
1555
+ type: 'integer',
1556
+ minimum: 0,
1557
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1558
+ example: 42000
1559
+ },
1560
+ copilot_organization_hourly_tokens: {
1561
+ type: 'integer',
1562
+ minimum: 0,
1563
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1564
+ example: 242000
1565
+ },
1566
+ cfcr_storage_gb: {
1567
+ type: 'integer',
1568
+ minimum: -1,
1569
+ description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
1570
+ example: 500
1571
+ }
1572
+ },
1573
+ required: [
1574
+ 'basic_clusters_max',
1575
+ 'basic_clusters_available',
1576
+ 'pro_clusters_max',
1577
+ 'pro_clusters_available',
1578
+ 'fleets_max',
1579
+ 'cluster_tiers',
1580
+ 'regions',
1581
+ 'versions',
1582
+ 'copilot_user_hourly_tokens',
1583
+ 'copilot_organization_hourly_tokens',
1584
+ 'cfcr_storage_gb'
1585
+ ],
1586
+ additionalProperties: false
1587
+ };
1588
+ export const RegistryRepositorySchema = {
1589
+ type: 'object',
1590
+ properties: {
1591
+ name: {
1592
+ type: 'string',
1593
+ description: 'Repository name.',
1594
+ example: 'my-app'
1595
+ },
1596
+ region: {
1597
+ type: 'string',
1598
+ description: 'Registry region.',
1599
+ example: 'northamerica'
1600
+ },
1601
+ uri: {
1602
+ type: 'string',
1603
+ description: 'Full URI of the repository.',
1604
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
1381
1605
  }
1382
1606
  },
1383
- required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1607
+ required: [
1608
+ 'name',
1609
+ 'region',
1610
+ 'uri'
1611
+ ],
1612
+ additionalProperties: false
1613
+ };
1614
+ export const RegistryRepositoryWithTagsSchema = {
1615
+ type: 'object',
1616
+ properties: {
1617
+ name: {
1618
+ type: 'string',
1619
+ description: 'Repository name.',
1620
+ example: 'my-app'
1621
+ },
1622
+ region: {
1623
+ type: 'string',
1624
+ description: 'Registry region.',
1625
+ example: 'northamerica'
1626
+ },
1627
+ uri: {
1628
+ type: 'string',
1629
+ description: 'Full URI of the repository.',
1630
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
1631
+ },
1632
+ tags: {
1633
+ type: 'array',
1634
+ items: {
1635
+ type: 'object',
1636
+ properties: {
1637
+ name: {
1638
+ type: 'string',
1639
+ description: 'Tag name.',
1640
+ example: 'latest'
1641
+ },
1642
+ size: {
1643
+ type: 'number',
1644
+ format: 'float',
1645
+ description: 'Size of the tag in bytes.',
1646
+ example: 123456789
1647
+ },
1648
+ mediaType: {
1649
+ type: 'string',
1650
+ description: 'Media type of the manifest.',
1651
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1652
+ },
1653
+ platforms: {
1654
+ type: 'array',
1655
+ items: {
1656
+ type: 'string'
1657
+ },
1658
+ description: 'Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).',
1659
+ example: [
1660
+ 'linux/amd64',
1661
+ 'linux/arm64'
1662
+ ]
1663
+ }
1664
+ },
1665
+ required: [
1666
+ 'name',
1667
+ 'size'
1668
+ ],
1669
+ additionalProperties: false
1670
+ },
1671
+ description: 'Array of tags in the repository.'
1672
+ },
1673
+ totalSize: {
1674
+ type: 'number',
1675
+ format: 'float',
1676
+ description: 'Total size of all tags in the repository in bytes.',
1677
+ example: 987654321
1678
+ }
1679
+ },
1680
+ required: [
1681
+ 'name',
1682
+ 'region',
1683
+ 'uri',
1684
+ 'tags',
1685
+ 'totalSize'
1686
+ ],
1687
+ additionalProperties: false
1688
+ };
1689
+ export const RegistryTagSchema = {
1690
+ type: 'object',
1691
+ properties: {
1692
+ name: {
1693
+ type: 'string',
1694
+ description: 'Tag name.',
1695
+ example: 'latest'
1696
+ },
1697
+ digest: {
1698
+ type: 'string',
1699
+ description: 'Manifest digest for pulling by digest.',
1700
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1701
+ },
1702
+ mediaType: {
1703
+ type: 'string',
1704
+ description: 'Media type of the manifest.',
1705
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1706
+ },
1707
+ config: {
1708
+ type: 'object',
1709
+ properties: {
1710
+ size: {
1711
+ type: 'number',
1712
+ format: 'float',
1713
+ description: 'Size of the config in bytes.',
1714
+ example: 1234
1715
+ }
1716
+ },
1717
+ required: [
1718
+ 'size'
1719
+ ],
1720
+ additionalProperties: false,
1721
+ description: 'Manifest config metadata.'
1722
+ },
1723
+ layers: {
1724
+ type: 'array',
1725
+ items: {
1726
+ type: 'object',
1727
+ properties: {
1728
+ digest: {
1729
+ type: 'string',
1730
+ description: 'Digest of the layer.',
1731
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1732
+ },
1733
+ size: {
1734
+ type: 'number',
1735
+ format: 'float',
1736
+ description: 'Size of the layer in bytes.',
1737
+ example: 5678
1738
+ }
1739
+ },
1740
+ required: [
1741
+ 'size'
1742
+ ],
1743
+ additionalProperties: false
1744
+ },
1745
+ description: 'Array of layer metadata.'
1746
+ },
1747
+ manifests: {
1748
+ type: 'array',
1749
+ items: {
1750
+ type: 'object',
1751
+ properties: {
1752
+ digest: {
1753
+ type: 'string',
1754
+ description: 'Digest of the manifest.',
1755
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1756
+ },
1757
+ platform: {
1758
+ type: 'object',
1759
+ properties: {
1760
+ architecture: {
1761
+ type: 'string',
1762
+ description: 'Architecture of the platform.',
1763
+ example: 'amd64'
1764
+ },
1765
+ os: {
1766
+ type: 'string',
1767
+ description: 'Operating system of the platform.',
1768
+ example: 'linux'
1769
+ },
1770
+ variant: {
1771
+ type: 'string',
1772
+ description: 'Variant of the platform (e.g., v7, v8 for ARM).',
1773
+ example: 'v8'
1774
+ }
1775
+ },
1776
+ required: [
1777
+ 'architecture',
1778
+ 'os'
1779
+ ],
1780
+ additionalProperties: false,
1781
+ description: 'Platform information for the manifest.'
1782
+ },
1783
+ layers: {
1784
+ type: 'array',
1785
+ items: {
1786
+ type: 'object',
1787
+ properties: {
1788
+ digest: {
1789
+ type: 'string',
1790
+ description: 'Digest of the layer.',
1791
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1792
+ },
1793
+ size: {
1794
+ type: 'number',
1795
+ format: 'float',
1796
+ description: 'Size of the layer in bytes.',
1797
+ example: 5678
1798
+ }
1799
+ },
1800
+ required: [
1801
+ 'size'
1802
+ ],
1803
+ additionalProperties: false
1804
+ },
1805
+ description: 'Layers for this platform.'
1806
+ },
1807
+ size: {
1808
+ type: 'number',
1809
+ format: 'float',
1810
+ description: 'Total size of this platform manifest in bytes.',
1811
+ example: 12345678
1812
+ }
1813
+ },
1814
+ required: [
1815
+ 'digest'
1816
+ ],
1817
+ additionalProperties: false
1818
+ },
1819
+ description: 'Array of manifests for multi-arch images.'
1820
+ },
1821
+ size: {
1822
+ type: 'number',
1823
+ format: 'float',
1824
+ description: 'Total size of the tag in bytes.',
1825
+ example: 123456789
1826
+ },
1827
+ region: {
1828
+ type: 'string',
1829
+ description: 'Registry region.',
1830
+ example: 'northamerica'
1831
+ },
1832
+ repository: {
1833
+ type: 'string',
1834
+ description: 'Repository name.',
1835
+ example: 'my-app'
1836
+ },
1837
+ uri: {
1838
+ type: 'string',
1839
+ description: 'Full URI of the tag.',
1840
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
1841
+ }
1842
+ },
1843
+ required: [
1844
+ 'name',
1845
+ 'digest',
1846
+ 'size',
1847
+ 'region',
1848
+ 'repository',
1849
+ 'uri'
1850
+ ],
1384
1851
  additionalProperties: false
1385
1852
  };
1386
1853
  export const TokenCreateInputSchema = {
@@ -1398,10 +1865,16 @@ export const TokenCreateInputSchema = {
1398
1865
  type: 'string',
1399
1866
  description: 'Role assumed by the token.',
1400
1867
  example: 'User',
1401
- enum: ['Administrator', 'User']
1868
+ enum: [
1869
+ 'Administrator',
1870
+ 'User'
1871
+ ]
1402
1872
  }
1403
1873
  },
1404
- required: ['name', 'role'],
1874
+ required: [
1875
+ 'name',
1876
+ 'role'
1877
+ ],
1405
1878
  additionalProperties: false
1406
1879
  };
1407
1880
  export const TokenSchema = {
@@ -1419,7 +1892,10 @@ export const TokenSchema = {
1419
1892
  type: 'string',
1420
1893
  description: 'Role assumed by the token.',
1421
1894
  example: 'User',
1422
- enum: ['Administrator', 'User']
1895
+ enum: [
1896
+ 'Administrator',
1897
+ 'User'
1898
+ ]
1423
1899
  },
1424
1900
  id: {
1425
1901
  type: 'string',
@@ -1438,7 +1914,11 @@ export const TokenSchema = {
1438
1914
  example: '2023-12-20T13:53:32.000Z'
1439
1915
  }
1440
1916
  },
1441
- required: ['name', 'role', 'date_created'],
1917
+ required: [
1918
+ 'name',
1919
+ 'role',
1920
+ 'date_created'
1921
+ ],
1442
1922
  additionalProperties: false
1443
1923
  };
1444
1924
  export const TokenUpdateInputSchema = {
@@ -1456,11 +1936,129 @@ export const TokenUpdateInputSchema = {
1456
1936
  type: 'string',
1457
1937
  description: 'Role assumed by the token.',
1458
1938
  example: 'User',
1459
- enum: ['Administrator', 'User']
1939
+ enum: [
1940
+ 'Administrator',
1941
+ 'User'
1942
+ ]
1460
1943
  }
1461
1944
  },
1462
1945
  additionalProperties: false
1463
1946
  };
1947
+ export const UsageFacetsSchema = {
1948
+ type: 'object',
1949
+ properties: {
1950
+ cluster_id: {
1951
+ type: 'array',
1952
+ items: {
1953
+ type: 'string'
1954
+ },
1955
+ description: 'List of unique cluster IDs',
1956
+ example: [
1957
+ '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1958
+ ]
1959
+ },
1960
+ product: {
1961
+ type: 'array',
1962
+ items: {
1963
+ type: 'string'
1964
+ },
1965
+ description: 'List of unique products',
1966
+ example: [
1967
+ 'cfke_controlplane',
1968
+ 'cfke_connected_nodes'
1969
+ ]
1970
+ }
1971
+ },
1972
+ additionalProperties: false
1973
+ };
1974
+ export const UsageResponseSchema = {
1975
+ type: 'object',
1976
+ properties: {
1977
+ data: {
1978
+ type: 'array',
1979
+ items: {
1980
+ type: 'object',
1981
+ properties: {
1982
+ hour: {
1983
+ type: 'string',
1984
+ description: 'Hour of the usage',
1985
+ example: '2019-01-01T00:00:00.000Z'
1986
+ },
1987
+ cluster_id: {
1988
+ type: 'string',
1989
+ description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1990
+ example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1991
+ },
1992
+ product: {
1993
+ type: 'string',
1994
+ description: 'The product the usage is associated with',
1995
+ example: 'cfke_controlplane'
1996
+ },
1997
+ value: {
1998
+ type: 'number',
1999
+ format: 'float',
2000
+ description: 'Consumption',
2001
+ example: 4
2002
+ },
2003
+ price: {
2004
+ type: 'number',
2005
+ format: 'float',
2006
+ description: 'Price per unit',
2007
+ example: 0.01
2008
+ },
2009
+ total: {
2010
+ type: 'number',
2011
+ format: 'float',
2012
+ description: 'Total cost'
2013
+ }
2014
+ },
2015
+ required: [
2016
+ 'hour',
2017
+ 'cluster_id',
2018
+ 'product',
2019
+ 'value',
2020
+ 'price',
2021
+ 'total'
2022
+ ],
2023
+ additionalProperties: false
2024
+ },
2025
+ description: 'Usage data'
2026
+ },
2027
+ facets: {
2028
+ type: 'object',
2029
+ properties: {
2030
+ cluster_id: {
2031
+ type: 'array',
2032
+ items: {
2033
+ type: 'string'
2034
+ },
2035
+ description: 'List of unique cluster IDs',
2036
+ example: [
2037
+ '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
2038
+ ]
2039
+ },
2040
+ product: {
2041
+ type: 'array',
2042
+ items: {
2043
+ type: 'string'
2044
+ },
2045
+ description: 'List of unique products',
2046
+ example: [
2047
+ 'cfke_controlplane',
2048
+ 'cfke_connected_nodes'
2049
+ ]
2050
+ }
2051
+ },
2052
+ additionalProperties: false,
2053
+ description: 'Facets for filtering'
2054
+ }
2055
+ },
2056
+ required: [
2057
+ 'data',
2058
+ 'facets'
2059
+ ],
2060
+ additionalProperties: false
2061
+ };
1464
2062
  export const UsageSchema = {
1465
2063
  type: 'object',
1466
2064
  properties: {
@@ -1471,90 +2069,40 @@ export const UsageSchema = {
1471
2069
  },
1472
2070
  cluster_id: {
1473
2071
  type: 'string',
1474
- format: 'uuid',
1475
2072
  description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1476
2073
  example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1477
2074
  },
1478
- cluster_tier: {
1479
- type: 'string',
1480
- description: 'Tier of the cluster.',
1481
- example: 'pro',
1482
- enum: ['']
1483
- },
1484
2075
  product: {
1485
2076
  type: 'string',
1486
2077
  description: 'The product the usage is associated with',
1487
- example: 'cfke_infra_compute',
1488
- enum: ['cfke_infra_compute', 'cfke_nodes', 'cfke_controlplane']
1489
- },
1490
- node_name: {
1491
- type: 'string',
1492
- description: 'Name of the Kubernetes node',
1493
- example: 'flexible-moth-956037384'
2078
+ example: 'cfke_controlplane'
1494
2079
  },
1495
- sku: {
1496
- type: 'string',
1497
- description: 'SKU of the Kubernetes node',
1498
- example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
1499
- },
1500
- cpu: {
1501
- anyOf: [
1502
- {
1503
- type: 'number',
1504
- format: 'float',
1505
- description: 'CPU core count of the node',
1506
- example: 4
1507
- },
1508
- {
1509
- type: 'string',
1510
- enum: ['']
1511
- }
1512
- ]
2080
+ value: {
2081
+ type: 'number',
2082
+ format: 'float',
2083
+ description: 'Consumption',
2084
+ example: 4
1513
2085
  },
1514
2086
  price: {
1515
- anyOf: [
1516
- {
1517
- type: 'number',
1518
- format: 'float',
1519
- description: 'Price',
1520
- example: 4
1521
- },
1522
- {
1523
- type: 'string',
1524
- enum: ['']
1525
- }
1526
- ]
1527
- },
1528
- value: {
1529
- anyOf: [
1530
- {
1531
- type: 'number',
1532
- format: 'float',
1533
- description: 'Value',
1534
- example: 4
1535
- },
1536
- {
1537
- type: 'string',
1538
- enum: ['']
1539
- }
1540
- ]
2087
+ type: 'number',
2088
+ format: 'float',
2089
+ description: 'Price per unit',
2090
+ example: 0.01
1541
2091
  },
1542
2092
  total: {
1543
- anyOf: [
1544
- {
1545
- type: 'number',
1546
- format: 'float',
1547
- description: 'Total',
1548
- example: 4
1549
- },
1550
- {
1551
- type: 'string',
1552
- enum: ['']
1553
- }
1554
- ]
2093
+ type: 'number',
2094
+ format: 'float',
2095
+ description: 'Total cost'
1555
2096
  }
1556
2097
  },
1557
- required: ['cluster_id', 'cluster_tier', 'product', 'node_name', 'sku', 'cpu', 'price', 'value', 'total'],
2098
+ required: [
2099
+ 'hour',
2100
+ 'cluster_id',
2101
+ 'product',
2102
+ 'value',
2103
+ 'price',
2104
+ 'total'
2105
+ ],
1558
2106
  additionalProperties: false
1559
2107
  };
1560
2108
  export const UserCreateInputSchema = {
@@ -1595,16 +2143,28 @@ export const UserCreateInputSchema = {
1595
2143
  type: 'string',
1596
2144
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1597
2145
  example: 'active',
1598
- enum: ['active', 'inactive']
2146
+ enum: [
2147
+ 'active',
2148
+ 'inactive'
2149
+ ]
1599
2150
  },
1600
2151
  role: {
1601
2152
  type: 'string',
1602
- description: "User role. Can be 'Administrator', 'User'.",
2153
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1603
2154
  example: 'User',
1604
- enum: ['Administrator', 'User']
2155
+ enum: [
2156
+ 'Administrator',
2157
+ 'User'
2158
+ ]
1605
2159
  }
1606
2160
  },
1607
- required: ['email', 'first_name', 'last_name', 'code', 'password'],
2161
+ required: [
2162
+ 'email',
2163
+ 'first_name',
2164
+ 'last_name',
2165
+ 'code',
2166
+ 'password'
2167
+ ],
1608
2168
  additionalProperties: false
1609
2169
  };
1610
2170
  export const UserSchema = {
@@ -1632,15 +2192,21 @@ export const UserSchema = {
1632
2192
  },
1633
2193
  role: {
1634
2194
  type: 'string',
1635
- description: "User role. Can be 'Administrator', 'User'.",
2195
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1636
2196
  example: 'User',
1637
- enum: ['Administrator', 'User']
2197
+ enum: [
2198
+ 'Administrator',
2199
+ 'User'
2200
+ ]
1638
2201
  },
1639
2202
  status: {
1640
2203
  type: 'string',
1641
2204
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1642
2205
  example: 'active',
1643
- enum: ['active', 'inactive']
2206
+ enum: [
2207
+ 'active',
2208
+ 'inactive'
2209
+ ]
1644
2210
  },
1645
2211
  id: {
1646
2212
  type: 'string',
@@ -1655,7 +2221,15 @@ export const UserSchema = {
1655
2221
  example: '2023-11-02T16:08:14.338Z'
1656
2222
  }
1657
2223
  },
1658
- required: ['email', 'first_name', 'last_name', 'role', 'status', 'id', 'date_created'],
2224
+ required: [
2225
+ 'email',
2226
+ 'first_name',
2227
+ 'last_name',
2228
+ 'role',
2229
+ 'status',
2230
+ 'id',
2231
+ 'date_created'
2232
+ ],
1659
2233
  additionalProperties: false
1660
2234
  };
1661
2235
  export const UserUpdateInputSchema = {
@@ -1683,15 +2257,21 @@ export const UserUpdateInputSchema = {
1683
2257
  },
1684
2258
  role: {
1685
2259
  type: 'string',
1686
- description: "User role. Can be 'Administrator', 'User'.",
2260
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1687
2261
  example: 'User',
1688
- enum: ['Administrator', 'User']
2262
+ enum: [
2263
+ 'Administrator',
2264
+ 'User'
2265
+ ]
1689
2266
  },
1690
2267
  status: {
1691
2268
  type: 'string',
1692
2269
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1693
2270
  example: 'active',
1694
- enum: ['active', 'inactive']
2271
+ enum: [
2272
+ 'active',
2273
+ 'inactive'
2274
+ ]
1695
2275
  }
1696
2276
  },
1697
2277
  additionalProperties: false