@cloudfleet/sdk 0.0.1-3818918 → 0.0.1-3a689d7

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 +718 -597
  54. package/dist/schemas.gen.d.ts.map +1 -1
  55. package/dist/schemas.gen.js +1226 -681
  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 -359
  63. package/dist/types.gen.d.ts.map +1 -1
  64. package/dist/zod.gen.d.ts +1621 -2193
  65. package/dist/zod.gen.d.ts.map +1 -1
  66. package/dist/zod.gen.js +618 -771
  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', 'Progressing']
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,413 +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'
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'
1002
1148
  },
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'
1008
- },
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'
1103
- },
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
- }
1149
+ description: 'Chart keywords',
1150
+ example: [
1151
+ 'ingress',
1152
+ 'nginx',
1153
+ 'load-balancer'
1154
+ ]
1128
1155
  },
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'
1177
- },
1178
- description: 'Tags of the chart'
1179
- },
1180
- version_channels: {
1181
- type: 'array',
1182
- items: {
1183
- type: 'string',
1184
- 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-]+)*))?$',
1185
- description: 'Version of the chart.',
1186
- example: '2.x.x-cfke.x'
1187
- }
1188
- },
1189
- value_schemas: {
1190
- type: 'array',
1191
- items: {
1192
- type: 'object',
1193
- properties: {
1194
- version: {
1195
- type: 'string',
1196
- 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-]+)*))?$',
1197
- description: 'Version of the chart.',
1198
- example: '2.1.1-cfke.123'
1199
- },
1200
- schema: {
1201
- type: 'string',
1202
- description: 'Schema of the chart values. JSON Schema as string'
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'
1203
1170
  },
1204
- placeholder: {
1205
- type: 'string',
1206
- description: 'Schema of the chart values',
1207
- example: `foo: 1
1208
- bar: example`
1209
- }
1171
+ description: 'Chart source URLs',
1172
+ example: [
1173
+ 'https://github.com/kubernetes/ingress-nginx'
1174
+ ]
1210
1175
  },
1211
- required: ['version', 'schema', 'placeholder'],
1212
- additionalProperties: false
1213
- }
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
+ }
1199
+ },
1200
+ required: [
1201
+ 'name',
1202
+ 'version'
1203
+ ],
1204
+ additionalProperties: false,
1205
+ description: 'Chart metadata'
1214
1206
  }
1215
1207
  },
1216
- required: ['id', 'name', 'developer', 'description', 'logoUrl', 'longDescription', 'categories', 'version_channels', 'value_schemas'],
1208
+ required: [
1209
+ 'name',
1210
+ 'versions',
1211
+ 'version_channels',
1212
+ 'latestVersion'
1213
+ ],
1217
1214
  additionalProperties: false
1218
1215
  };
1219
1216
  export const OrganizationCreateInputSchema = {
@@ -1249,7 +1246,13 @@ export const OrganizationCreateInputSchema = {
1249
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.'
1250
1247
  }
1251
1248
  },
1252
- 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
+ ],
1253
1256
  additionalProperties: false
1254
1257
  };
1255
1258
  export const OrganizationSchema = {
@@ -1305,12 +1308,6 @@ export const OrganizationSchema = {
1305
1308
  description: 'Maximum number of fleets that can be created per cluster.',
1306
1309
  example: 999
1307
1310
  },
1308
- managed_fleets_cpu_max: {
1309
- type: 'integer',
1310
- minimum: 0,
1311
- description: 'Maximum number of CPU cores per managed fleet.',
1312
- example: 999
1313
- },
1314
1311
  cluster_tiers: {
1315
1312
  type: 'array',
1316
1313
  items: {
@@ -1337,32 +1334,74 @@ export const OrganizationSchema = {
1337
1334
  id: {
1338
1335
  type: 'string',
1339
1336
  description: 'Id of the control plane version. Used in API calls.',
1340
- example: '1.29.x-cfke.x'
1337
+ example: '1.33.x-cfke.x'
1341
1338
  },
1342
1339
  label: {
1343
1340
  type: 'string',
1344
1341
  description: 'Label of the control plane version. Used in frontent UI.',
1345
- example: '1.29.x (Always latest 1.29 patch version)'
1342
+ example: '1.33.x (Always latest 1.33 patch version)'
1346
1343
  }
1347
1344
  },
1348
- required: ['id', 'label'],
1345
+ required: [
1346
+ 'id',
1347
+ 'label'
1348
+ ],
1349
1349
  additionalProperties: false
1350
1350
  },
1351
1351
  minItems: 1,
1352
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
1353
1371
  }
1354
1372
  },
1355
- 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
+ ],
1356
1386
  additionalProperties: false,
1357
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.'
1358
1388
  },
1359
1389
  status: {
1360
1390
  type: 'string',
1361
1391
  description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1362
- enum: ['active', 'closed', 'suspended']
1392
+ enum: [
1393
+ 'active',
1394
+ 'closed',
1395
+ 'suspended'
1396
+ ]
1363
1397
  }
1364
1398
  },
1365
- required: ['id', 'date_created', 'quota', 'status'],
1399
+ required: [
1400
+ 'id',
1401
+ 'date_created',
1402
+ 'quota',
1403
+ 'status'
1404
+ ],
1366
1405
  additionalProperties: false
1367
1406
  };
1368
1407
  export const PaymentMethodSchema = {
@@ -1384,7 +1423,9 @@ export const PaymentMethodSchema = {
1384
1423
  nullable: true,
1385
1424
  description: 'Payment method type type. Only `card` payments supported at the moment.',
1386
1425
  example: 'card',
1387
- enum: ['card']
1426
+ enum: [
1427
+ 'card'
1428
+ ]
1388
1429
  },
1389
1430
  last4: {
1390
1431
  type: 'string',
@@ -1397,14 +1438,14 @@ export const PaymentMethodSchema = {
1397
1438
  minimum: 1,
1398
1439
  maximum: 12,
1399
1440
  nullable: true,
1400
- description: "Two-digit number representing the card's expiration month.",
1441
+ description: 'Two-digit number representing the card\'s expiration month.',
1401
1442
  example: '12'
1402
1443
  },
1403
1444
  exp_year: {
1404
1445
  type: 'integer',
1405
1446
  minimum: 2024,
1406
1447
  nullable: true,
1407
- description: "Four-digit number representing the card's expiration year.",
1448
+ description: 'Four-digit number representing the card\'s expiration year.',
1408
1449
  example: '2028'
1409
1450
  },
1410
1451
  brand: {
@@ -1412,10 +1453,401 @@ export const PaymentMethodSchema = {
1412
1453
  nullable: true,
1413
1454
  description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
1414
1455
  example: 'visa',
1415
- 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'
1605
+ }
1606
+ },
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
1416
1678
  }
1417
1679
  },
1418
- required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
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
+ ],
1419
1851
  additionalProperties: false
1420
1852
  };
1421
1853
  export const TokenCreateInputSchema = {
@@ -1433,10 +1865,16 @@ export const TokenCreateInputSchema = {
1433
1865
  type: 'string',
1434
1866
  description: 'Role assumed by the token.',
1435
1867
  example: 'User',
1436
- enum: ['Administrator', 'User']
1868
+ enum: [
1869
+ 'Administrator',
1870
+ 'User'
1871
+ ]
1437
1872
  }
1438
1873
  },
1439
- required: ['name', 'role'],
1874
+ required: [
1875
+ 'name',
1876
+ 'role'
1877
+ ],
1440
1878
  additionalProperties: false
1441
1879
  };
1442
1880
  export const TokenSchema = {
@@ -1454,7 +1892,10 @@ export const TokenSchema = {
1454
1892
  type: 'string',
1455
1893
  description: 'Role assumed by the token.',
1456
1894
  example: 'User',
1457
- enum: ['Administrator', 'User']
1895
+ enum: [
1896
+ 'Administrator',
1897
+ 'User'
1898
+ ]
1458
1899
  },
1459
1900
  id: {
1460
1901
  type: 'string',
@@ -1473,7 +1914,11 @@ export const TokenSchema = {
1473
1914
  example: '2023-12-20T13:53:32.000Z'
1474
1915
  }
1475
1916
  },
1476
- required: ['name', 'role', 'date_created'],
1917
+ required: [
1918
+ 'name',
1919
+ 'role',
1920
+ 'date_created'
1921
+ ],
1477
1922
  additionalProperties: false
1478
1923
  };
1479
1924
  export const TokenUpdateInputSchema = {
@@ -1491,9 +1936,127 @@ export const TokenUpdateInputSchema = {
1491
1936
  type: 'string',
1492
1937
  description: 'Role assumed by the token.',
1493
1938
  example: 'User',
1494
- enum: ['Administrator', 'User']
1939
+ enum: [
1940
+ 'Administrator',
1941
+ 'User'
1942
+ ]
1943
+ }
1944
+ },
1945
+ additionalProperties: false
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'
1495
2054
  }
1496
2055
  },
2056
+ required: [
2057
+ 'data',
2058
+ 'facets'
2059
+ ],
1497
2060
  additionalProperties: false
1498
2061
  };
1499
2062
  export const UsageSchema = {
@@ -1506,90 +2069,40 @@ export const UsageSchema = {
1506
2069
  },
1507
2070
  cluster_id: {
1508
2071
  type: 'string',
1509
- format: 'uuid',
1510
2072
  description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1511
2073
  example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1512
2074
  },
1513
- cluster_tier: {
1514
- type: 'string',
1515
- description: 'Tier of the cluster.',
1516
- example: 'pro',
1517
- enum: ['']
1518
- },
1519
2075
  product: {
1520
2076
  type: 'string',
1521
2077
  description: 'The product the usage is associated with',
1522
- example: 'cfke_infra_compute',
1523
- enum: ['cfke_infra_compute', 'cfke_nodes', 'cfke_controlplane']
1524
- },
1525
- node_name: {
1526
- type: 'string',
1527
- description: 'Name of the Kubernetes node',
1528
- example: 'flexible-moth-956037384'
2078
+ example: 'cfke_controlplane'
1529
2079
  },
1530
- sku: {
1531
- type: 'string',
1532
- description: 'SKU of the Kubernetes node',
1533
- example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
1534
- },
1535
- cpu: {
1536
- anyOf: [
1537
- {
1538
- type: 'number',
1539
- format: 'float',
1540
- description: 'CPU core count of the node',
1541
- example: 4
1542
- },
1543
- {
1544
- type: 'string',
1545
- enum: ['']
1546
- }
1547
- ]
2080
+ value: {
2081
+ type: 'number',
2082
+ format: 'float',
2083
+ description: 'Consumption',
2084
+ example: 4
1548
2085
  },
1549
2086
  price: {
1550
- anyOf: [
1551
- {
1552
- type: 'number',
1553
- format: 'float',
1554
- description: 'Price',
1555
- example: 4
1556
- },
1557
- {
1558
- type: 'string',
1559
- enum: ['']
1560
- }
1561
- ]
1562
- },
1563
- value: {
1564
- anyOf: [
1565
- {
1566
- type: 'number',
1567
- format: 'float',
1568
- description: 'Value',
1569
- example: 4
1570
- },
1571
- {
1572
- type: 'string',
1573
- enum: ['']
1574
- }
1575
- ]
2087
+ type: 'number',
2088
+ format: 'float',
2089
+ description: 'Price per unit',
2090
+ example: 0.01
1576
2091
  },
1577
2092
  total: {
1578
- anyOf: [
1579
- {
1580
- type: 'number',
1581
- format: 'float',
1582
- description: 'Total',
1583
- example: 4
1584
- },
1585
- {
1586
- type: 'string',
1587
- enum: ['']
1588
- }
1589
- ]
2093
+ type: 'number',
2094
+ format: 'float',
2095
+ description: 'Total cost'
1590
2096
  }
1591
2097
  },
1592
- 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
+ ],
1593
2106
  additionalProperties: false
1594
2107
  };
1595
2108
  export const UserCreateInputSchema = {
@@ -1630,16 +2143,28 @@ export const UserCreateInputSchema = {
1630
2143
  type: 'string',
1631
2144
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1632
2145
  example: 'active',
1633
- enum: ['active', 'inactive']
2146
+ enum: [
2147
+ 'active',
2148
+ 'inactive'
2149
+ ]
1634
2150
  },
1635
2151
  role: {
1636
2152
  type: 'string',
1637
- description: "User role. Can be 'Administrator', 'User'.",
2153
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1638
2154
  example: 'User',
1639
- enum: ['Administrator', 'User']
2155
+ enum: [
2156
+ 'Administrator',
2157
+ 'User'
2158
+ ]
1640
2159
  }
1641
2160
  },
1642
- required: ['email', 'first_name', 'last_name', 'code', 'password'],
2161
+ required: [
2162
+ 'email',
2163
+ 'first_name',
2164
+ 'last_name',
2165
+ 'code',
2166
+ 'password'
2167
+ ],
1643
2168
  additionalProperties: false
1644
2169
  };
1645
2170
  export const UserSchema = {
@@ -1667,15 +2192,21 @@ export const UserSchema = {
1667
2192
  },
1668
2193
  role: {
1669
2194
  type: 'string',
1670
- description: "User role. Can be 'Administrator', 'User'.",
2195
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1671
2196
  example: 'User',
1672
- enum: ['Administrator', 'User']
2197
+ enum: [
2198
+ 'Administrator',
2199
+ 'User'
2200
+ ]
1673
2201
  },
1674
2202
  status: {
1675
2203
  type: 'string',
1676
2204
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1677
2205
  example: 'active',
1678
- enum: ['active', 'inactive']
2206
+ enum: [
2207
+ 'active',
2208
+ 'inactive'
2209
+ ]
1679
2210
  },
1680
2211
  id: {
1681
2212
  type: 'string',
@@ -1690,7 +2221,15 @@ export const UserSchema = {
1690
2221
  example: '2023-11-02T16:08:14.338Z'
1691
2222
  }
1692
2223
  },
1693
- 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
+ ],
1694
2233
  additionalProperties: false
1695
2234
  };
1696
2235
  export const UserUpdateInputSchema = {
@@ -1718,15 +2257,21 @@ export const UserUpdateInputSchema = {
1718
2257
  },
1719
2258
  role: {
1720
2259
  type: 'string',
1721
- description: "User role. Can be 'Administrator', 'User'.",
2260
+ description: 'User role. Can be \'Administrator\', \'User\'.',
1722
2261
  example: 'User',
1723
- enum: ['Administrator', 'User']
2262
+ enum: [
2263
+ 'Administrator',
2264
+ 'User'
2265
+ ]
1724
2266
  },
1725
2267
  status: {
1726
2268
  type: 'string',
1727
2269
  description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
1728
2270
  example: 'active',
1729
- enum: ['active', 'inactive']
2271
+ enum: [
2272
+ 'active',
2273
+ 'inactive'
2274
+ ]
1730
2275
  }
1731
2276
  },
1732
2277
  additionalProperties: false