@cloudfleet/sdk 0.0.1-6a8db0f → 0.0.1-6d7ad01

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 +205 -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 +125 -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 +231 -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 +1 -1
  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 +18 -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 +34 -0
  30. package/dist/core/params.gen.d.ts.map +1 -0
  31. package/dist/core/params.gen.js +89 -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 +115 -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 +100 -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 +136 -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 +574 -487
  54. package/dist/schemas.gen.d.ts.map +1 -1
  55. package/dist/schemas.gen.js +604 -536
  56. package/dist/schemas.gen.js.map +1 -1
  57. package/dist/sdk.gen.d.ts +134 -69
  58. package/dist/sdk.gen.d.ts.map +1 -1
  59. package/dist/sdk.gen.js +178 -87
  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 +546 -332
  63. package/dist/types.gen.d.ts.map +1 -1
  64. package/dist/zod.gen.d.ts +1785 -2101
  65. package/dist/zod.gen.d.ts.map +1 -1
  66. package/dist/zod.gen.js +728 -760
  67. package/dist/zod.gen.js.map +1 -1
  68. package/package.json +5 -6
@@ -58,15 +58,10 @@ 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: {
62
- type: 'string',
63
- description: 'First name of the billing contact person.',
64
- example: 'John'
65
- },
66
- last_name: {
61
+ individual_name: {
67
62
  type: 'string',
68
- description: 'Last name of the billing contact person.',
69
- example: 'Doe'
63
+ description: 'Name of the billing contact person.',
64
+ example: 'John Doe'
70
65
  },
71
66
  tax_id: {
72
67
  type: 'string',
@@ -82,7 +77,7 @@ export const BillingContactSchema = {
82
77
  enum: ['ad_nrt', 'ae_trn', 'al_tin', 'am_tin', 'ao_tin', 'ar_cuit', 'at_vat', 'au_abn', 'au_arn', 'ba_tin', 'bb_tin', 'be_vat', 'bg_uic', 'bg_vat', 'bh_vat', 'bo_tin', 'br_cnpj', 'br_cpf', 'bs_tin', 'by_tin', 'ca_bn', 'ca_gst_hst', 'ca_pst_bc', 'ca_pst_mb', 'ca_pst_sk', 'ca_qst', 'cd_nif', 'ch_uid', 'ch_vat', 'cl_tin', 'cn_tin', 'co_nit', 'cr_tin', 'cy_vat', 'cz_vat', 'de_stn', 'de_vat', 'dk_vat', 'do_rcn', 'ec_ruc', 'ee_vat', 'eg_tin', 'es_cif', 'es_vat', 'eu_oss_vat', 'fi_vat', 'fr_vat', 'gb_vat', 'ge_vat', 'gn_nif', 'gr_vat', 'hk_br', 'hr_oib', 'hr_vat', 'hu_tin', 'hu_vat', 'id_npwp', 'ie_vat', 'il_vat', 'in_gst', 'is_vat', 'it_vat', 'jp_cn', 'jp_rn', 'jp_trn', 'ke_pin', 'kh_tin', 'kr_brn', 'kz_bin', 'li_uid', 'li_vat', 'lt_vat', 'lu_vat', 'lv_vat', 'ma_vat', 'md_vat', 'me_pib', 'mk_vat', 'mr_nif', 'mt_vat', 'mx_rfc', 'my_frp', 'my_itn', 'my_sst', 'ng_tin', 'nl_vat', 'no_vat', 'no_voec', 'np_pan', 'nz_gst', 'om_vat', 'pe_ruc', 'ph_tin', 'pl_vat', 'pt_vat', 'ro_tin', 'ro_vat', 'rs_pib', 'ru_inn', 'ru_kpp', 'sa_vat', 'se_vat', 'sg_gst', 'sg_uen', 'si_tin', 'si_vat', 'sk_vat', 'sn_ninea', 'sr_fin', 'sv_nit', 'th_vat', 'tj_tin', 'tr_tin', 'tw_vat', 'tz_vat', 'ua_vat', 'ug_tin', 'us_ein', 'uy_ruc', 'uz_tin', 'uz_vat', 've_rif', 'vn_tin', 'xi_vat', 'za_vat', 'zm_tin', 'zw_tin', '']
83
78
  }
84
79
  },
85
- required: ['email', 'first_name', 'last_name'],
80
+ required: ['email', 'individual_name'],
86
81
  additionalProperties: false
87
82
  };
88
83
  export const BillingCreditsSchema = {
@@ -93,10 +88,22 @@ export const BillingCreditsSchema = {
93
88
  description: 'Generated unique identifier of the promotional code.',
94
89
  example: '7kUZnH7nnKUFfvc4NK2KQF'
95
90
  },
96
- date_created: {
91
+ type: {
92
+ type: 'string',
93
+ description: 'Type of the promotional code.',
94
+ example: 'credit',
95
+ enum: ['credit', 'discount']
96
+ },
97
+ date_start: {
98
+ type: 'string',
99
+ format: 'date-time',
100
+ description: 'Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.',
101
+ example: '2023-12-20T13:53:32.000Z'
102
+ },
103
+ date_end: {
97
104
  type: 'string',
98
105
  format: 'date-time',
99
- description: 'Date of the credit application. ISO 8601 date string in the UTC timezone.',
106
+ description: 'Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.',
100
107
  example: '2023-12-20T13:53:32.000Z'
101
108
  },
102
109
  code: {
@@ -109,40 +116,20 @@ export const BillingCreditsSchema = {
109
116
  description: 'Description of the promotional code.',
110
117
  example: '10% off on all products'
111
118
  },
112
- products: {
113
- type: 'array',
114
- items: {
115
- type: 'string'
116
- },
117
- description: 'List of product SKUs that the promotional code can be used on.',
118
- example: ['cfke_controlplane', 'cfke_connected_nodes', 'infra_compute', 'infra_storage', 'infra_loadbalancing', 'infra_traffic', 'cfcr_storage']
119
- },
120
- type: {
121
- type: 'string',
122
- description: 'Type of the promotional code.',
123
- example: 'credit',
124
- enum: ['credit', 'discount']
125
- },
126
- value: {
119
+ value_total: {
127
120
  type: 'number',
128
121
  format: 'float',
129
- description: 'Value of the promotional code.',
122
+ description: 'Total value of the promotional code.',
130
123
  example: 10
131
124
  },
132
- billing_period: {
133
- type: 'string',
134
- format: 'date-time',
135
- description: 'Date of the billing cycle. An ISO 8601 date string in the UTC timezone.',
136
- example: '2023-12-20T13:53:32.000Z'
137
- },
138
125
  value_remaining: {
139
126
  type: 'number',
140
127
  format: 'float',
141
- description: 'Value of the promotional code.',
142
- example: 10
128
+ description: 'Remaining value of the promotional code.',
129
+ example: 8
143
130
  }
144
131
  },
145
- required: ['date_created', 'code', 'type', 'value', 'billing_period'],
132
+ required: ['type', 'date_start', 'code', 'value_total'],
146
133
  additionalProperties: false
147
134
  };
148
135
  export const ChartCreateInputSchema = {
@@ -281,25 +268,26 @@ export const ClusterCreateInputSchema = {
281
268
  description: 'Name of the cluster.',
282
269
  example: 'production-cluster'
283
270
  },
284
- region: {
285
- type: 'string',
286
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
287
- default: 'staging',
288
- example: 'northamerica-central-1',
289
- enum: ['staging', 'northamerica-central-1']
290
- },
291
271
  tier: {
292
272
  type: 'string',
293
273
  description: 'Tier of the cluster.',
294
274
  example: 'pro',
295
275
  enum: ['basic', 'pro']
296
276
  },
277
+ region: {
278
+ type: 'string',
279
+ description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
280
+ default: 'staging',
281
+ example: 'northamerica-central-1a',
282
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
283
+ },
297
284
  version_channel: {
298
285
  type: 'string',
299
286
  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-]+)*))?$',
300
287
  description: 'Version of the kubernetes cluster.',
301
288
  default: '1.x.x-cfke.x',
302
- example: '1.29.x-cfke.x'
289
+ example: '1.x.x-cfke.x',
290
+ enum: ['1.x.x-cfke.x', '1.31.x-cfke.x', '1.32.x-cfke.x', '1.33.x-cfke.x']
303
291
  }
304
292
  },
305
293
  required: ['name', 'tier'],
@@ -336,7 +324,7 @@ MIIC0DCCAbigAwIBAgI...`
336
324
  kubernetes: {
337
325
  type: 'string',
338
326
  description: 'Kubernetes version of the cluster.',
339
- example: '1.29.3'
327
+ example: '1.33.7'
340
328
  },
341
329
  tailscale: {
342
330
  type: 'string',
@@ -347,9 +335,14 @@ MIIC0DCCAbigAwIBAgI...`
347
335
  type: 'string',
348
336
  description: 'Containerd version of the cluster.',
349
337
  example: '1.7.19'
338
+ },
339
+ nvidia_driver: {
340
+ type: 'string',
341
+ description: 'NVIDIA driver version of the cluster.',
342
+ example: '565.0.0'
350
343
  }
351
344
  },
352
- required: ['kubernetes', 'tailscale', 'containerd'],
345
+ required: ['kubernetes', 'tailscale', 'containerd', 'nvidia_driver'],
353
346
  additionalProperties: false,
354
347
  description: 'Versions of the different components of the cluster.'
355
348
  },
@@ -391,25 +384,18 @@ export const ClusterSchema = {
391
384
  description: 'Name of the cluster.',
392
385
  example: 'production-cluster'
393
386
  },
394
- region: {
395
- type: 'string',
396
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
397
- default: 'staging',
398
- example: 'northamerica-central-1',
399
- enum: ['staging', 'northamerica-central-1']
400
- },
401
387
  tier: {
402
388
  type: 'string',
403
389
  description: 'Tier of the cluster.',
404
390
  example: 'pro',
405
391
  enum: ['basic', 'pro']
406
392
  },
407
- version_channel: {
393
+ region: {
408
394
  type: 'string',
409
- 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-]+)*))?$',
410
- description: 'Version of the kubernetes cluster.',
411
- default: '1.x.x-cfke.x',
412
- example: '1.29.x-cfke.x'
395
+ description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
396
+ default: 'staging',
397
+ example: 'northamerica-central-1a',
398
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
413
399
  },
414
400
  id: {
415
401
  type: 'string',
@@ -421,7 +407,7 @@ export const ClusterSchema = {
421
407
  type: 'string',
422
408
  description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
423
409
  example: 'active',
424
- enum: ['active', 'deleted', 'creating', 'deployed', 'failed', 'updating']
410
+ enum: ['active', 'disabled', 'deleted', 'creating', 'deployed', 'failed', 'updating']
425
411
  },
426
412
  endpoint: {
427
413
  anyOf: [
@@ -446,7 +432,7 @@ MIIC0DCCAbigAwIBAgI...`
446
432
  version_current: {
447
433
  type: 'string',
448
434
  description: 'Current version of the cluster.',
449
- example: '1.29.3-cfke.52'
435
+ example: '1.33.7-cfke.264'
450
436
  },
451
437
  created_at: {
452
438
  type: 'string',
@@ -462,6 +448,12 @@ MIIC0DCCAbigAwIBAgI...`
462
448
  type: 'boolean',
463
449
  description: 'Indicates if the cluster is ready to be used.',
464
450
  example: true
451
+ },
452
+ version_channel: {
453
+ type: 'string',
454
+ 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-]+)*))?$',
455
+ description: 'Version of the kubernetes cluster.',
456
+ example: '1.x.x-cfke.x'
465
457
  }
466
458
  },
467
459
  required: ['name', 'tier', 'id', 'status'],
@@ -478,13 +470,20 @@ export const ClusterUpdateInputSchema = {
478
470
  description: 'Name of the cluster.',
479
471
  example: 'production-cluster'
480
472
  },
473
+ tier: {
474
+ type: 'string',
475
+ description: 'Tier of the cluster.',
476
+ example: 'pro',
477
+ enum: ['basic', 'pro']
478
+ },
481
479
  version_channel: {
482
480
  type: 'string',
483
481
  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-]+)*))?$',
484
482
  description: 'Version of the kubernetes cluster.',
485
- example: '1.29.x-cfke.x'
483
+ example: '1.x.x-cfke.x'
486
484
  }
487
485
  },
486
+ required: ['tier'],
488
487
  additionalProperties: false
489
488
  };
490
489
  export const FleetCreateInputSchema = {
@@ -740,23 +739,18 @@ export const InvoiceSchema = {
740
739
  properties: {
741
740
  id: {
742
741
  type: 'string',
743
- format: 'uuid',
744
- description: 'Unique identifier of the invoice. UUID v4 string in canonical form',
745
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
742
+ description: 'Unique identifier of the invoice.',
743
+ example: 'in_1234567890xCrwxghOTj1234'
746
744
  },
747
- organizationId: {
748
- type: 'string',
749
- format: 'uuid',
750
- description: 'Unique identifier of the organization. UUID v4 string in canonical form',
751
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
745
+ number: {
746
+ type: 'string'
752
747
  },
753
748
  status: {
754
749
  type: 'string',
755
750
  description: 'Status of the invoice',
756
- example: 'DRAFT',
757
- enum: ['DRAFT', 'COMMITTED', 'VOID']
751
+ example: 'paid'
758
752
  },
759
- amount: {
753
+ total: {
760
754
  type: 'number',
761
755
  format: 'float',
762
756
  description: 'Total amount of the invoice',
@@ -765,428 +759,185 @@ export const InvoiceSchema = {
765
759
  currency: {
766
760
  type: 'string',
767
761
  description: 'Currency of the invoice',
768
- example: 'USD',
769
- 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']
770
- },
771
- creditAdj: {
772
- type: 'number',
773
- format: 'float',
774
- description: 'Total amount of credit adjustments',
775
- example: 0
776
- },
777
- refundAdj: {
778
- type: 'number',
779
- format: 'float',
780
- description: 'Total amount of refund adjustments',
781
- example: 0
782
- },
783
- invoiceDate: {
784
- type: 'string',
785
- description: 'Date of the invoice',
786
- example: '2019-01-01T00:00:00.000Z'
762
+ example: 'usd'
787
763
  },
788
- targetDate: {
764
+ created: {
789
765
  type: 'string',
790
- description: 'Target date of the invoice',
791
- example: '2019-01-01T00:00:00.000Z'
766
+ format: 'date-time',
767
+ description: 'Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.',
768
+ example: '2023-12-20T13:53:32.000Z'
792
769
  },
793
- invoiceNumber: {
770
+ period_start: {
794
771
  type: 'string',
795
- description: 'Number of the invoice',
796
- example: 'INV-0001'
797
- },
798
- balance: {
799
- type: 'number',
800
- format: 'float',
801
- description: 'Balance of the invoice',
802
- example: 100
772
+ format: 'date-time',
773
+ description: 'Billing period start timestamp. ISO 8601 date string in the UTC timezone.',
774
+ example: '2023-12-20T13:53:32.000Z'
803
775
  },
804
- bundleKeys: {
776
+ period_end: {
805
777
  type: 'string',
806
- description: 'Bundle keys of the invoice',
807
- example: 'bundleKey1,bundleKey2'
808
- },
809
- credits: {
810
- type: 'array',
811
- items: {
812
- type: 'object',
813
- properties: {
814
- id: {
815
- type: 'string',
816
- format: 'uuid',
817
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
818
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
819
- },
820
- linkedInvoiceItemId: {
821
- type: 'string',
822
- format: 'uuid',
823
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
824
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
825
- },
826
- productName: {
827
- type: 'string',
828
- description: 'Name of the product',
829
- example: 'Research team'
830
- },
831
- planName: {
832
- type: 'string',
833
- description: 'Name of the plan',
834
- example: 'Plan A'
835
- },
836
- phaseName: {
837
- type: 'string',
838
- description: 'Name of the phase',
839
- example: 'Phase A'
840
- },
841
- usageName: {
842
- type: 'string',
843
- description: 'Name of the usage',
844
- example: 'Usage A'
845
- },
846
- prettyProductName: {
847
- type: 'string',
848
- description: 'Pretty name of the product',
849
- example: 'Research team'
850
- },
851
- prettyPlanName: {
852
- type: 'string',
853
- description: 'Pretty name of the plan',
854
- example: 'Plan A'
855
- },
856
- prettyPhaseName: {
857
- type: 'string',
858
- description: 'Pretty name of the phase',
859
- example: 'Phase A'
860
- },
861
- prettyUsageName: {
862
- type: 'string',
863
- description: 'Pretty name of the usage',
864
- example: 'Usage A'
865
- },
866
- itemType: {
867
- type: 'string',
868
- description: 'Type of the invoice item',
869
- example: 'EXTERNAL_CHARGE',
870
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
871
- },
872
- description: {
873
- type: 'string',
874
- description: 'Description of the invoice item',
875
- example: 'Description of the invoice item'
876
- },
877
- startDate: {
878
- type: 'string',
879
- description: 'Start date of the invoice item',
880
- example: '2019-01-01T00:00:00.000Z'
881
- },
882
- endDate: {
883
- type: 'string',
884
- description: 'End date of the invoice item',
885
- example: '2019-01-01T00:00:00.000Z'
886
- },
887
- amount: {
888
- type: 'number',
889
- format: 'float',
890
- description: 'Amount of the invoice item',
891
- example: 100
892
- },
893
- rate: {
894
- type: 'number',
895
- format: 'float',
896
- description: 'Rate of the invoice item',
897
- example: 100
898
- },
899
- currency: {
900
- type: 'string',
901
- description: 'Currency of the invoice item',
902
- example: 'USD',
903
- 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']
904
- },
905
- quantity: {
906
- type: 'number',
907
- format: 'float',
908
- description: 'Quantity of the invoice item',
909
- example: 1
910
- },
911
- itemDetails: {
912
- type: 'string',
913
- description: 'Details of the invoice item',
914
- example: 'Details of the invoice item'
915
- },
916
- catalogEffectiveDate: {
917
- type: 'string',
918
- description: 'Effective date of the catalog',
919
- example: '2019-01-01T00:00:00.000Z'
920
- },
921
- childItems: {
922
- type: 'array',
923
- items: {
924
- oneOf: [
925
- {
926
- type: 'array'
927
- },
928
- {
929
- type: 'boolean'
930
- },
931
- {
932
- type: 'number'
933
- },
934
- {
935
- type: 'object',
936
- additionalProperties: true
937
- },
938
- {
939
- type: 'string'
940
- }
941
- ]
942
- },
943
- description: 'Child items of the invoice item'
944
- }
945
- },
946
- additionalProperties: false
947
- },
948
- description: 'Credits of the invoice'
778
+ format: 'date-time',
779
+ description: 'Billing period end timestamp. ISO 8601 date string in the UTC timezone.',
780
+ example: '2023-12-20T13:53:32.000Z'
949
781
  },
950
- items: {
951
- type: 'array',
952
- items: {
953
- type: 'object',
954
- properties: {
955
- id: {
956
- type: 'string',
957
- format: 'uuid',
958
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
959
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
960
- },
961
- linkedInvoiceItemId: {
962
- type: 'string',
963
- format: 'uuid',
964
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
965
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
966
- },
967
- productName: {
968
- type: 'string',
969
- description: 'Name of the product',
970
- example: 'Research team'
971
- },
972
- planName: {
973
- type: 'string',
974
- description: 'Name of the plan',
975
- example: 'Plan A'
976
- },
977
- phaseName: {
978
- type: 'string',
979
- description: 'Name of the phase',
980
- example: 'Phase A'
981
- },
982
- usageName: {
983
- type: 'string',
984
- description: 'Name of the usage',
985
- example: 'Usage A'
986
- },
987
- prettyProductName: {
988
- type: 'string',
989
- description: 'Pretty name of the product',
990
- example: 'Research team'
991
- },
992
- prettyPlanName: {
993
- type: 'string',
994
- description: 'Pretty name of the plan',
995
- example: 'Plan A'
996
- },
997
- prettyPhaseName: {
998
- type: 'string',
999
- description: 'Pretty name of the phase',
1000
- example: 'Phase A'
1001
- },
1002
- prettyUsageName: {
1003
- type: 'string',
1004
- description: 'Pretty name of the usage',
1005
- example: 'Usage A'
1006
- },
1007
- itemType: {
1008
- type: 'string',
1009
- description: 'Type of the invoice item',
1010
- example: 'EXTERNAL_CHARGE',
1011
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
1012
- },
1013
- description: {
1014
- type: 'string',
1015
- description: 'Description of the invoice item',
1016
- example: 'Description of the invoice item'
1017
- },
1018
- startDate: {
1019
- type: 'string',
1020
- description: 'Start date of the invoice item',
1021
- example: '2019-01-01T00:00:00.000Z'
1022
- },
1023
- endDate: {
1024
- type: 'string',
1025
- description: 'End date of the invoice item',
1026
- example: '2019-01-01T00:00:00.000Z'
1027
- },
1028
- amount: {
1029
- type: 'number',
1030
- format: 'float',
1031
- description: 'Amount of the invoice item',
1032
- example: 100
1033
- },
1034
- rate: {
1035
- type: 'number',
1036
- format: 'float',
1037
- description: 'Rate of the invoice item',
1038
- example: 100
1039
- },
1040
- currency: {
1041
- type: 'string',
1042
- description: 'Currency of the invoice item',
1043
- example: 'USD',
1044
- 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']
1045
- },
1046
- quantity: {
1047
- type: 'number',
1048
- format: 'float',
1049
- description: 'Quantity of the invoice item',
1050
- example: 1
1051
- },
1052
- itemDetails: {
1053
- type: 'string',
1054
- description: 'Details of the invoice item',
1055
- example: 'Details of the invoice item'
1056
- },
1057
- catalogEffectiveDate: {
1058
- type: 'string',
1059
- description: 'Effective date of the catalog',
1060
- example: '2019-01-01T00:00:00.000Z'
1061
- },
1062
- childItems: {
1063
- type: 'array',
1064
- items: {
1065
- oneOf: [
1066
- {
1067
- type: 'array'
1068
- },
1069
- {
1070
- type: 'boolean'
1071
- },
1072
- {
1073
- type: 'number'
1074
- },
1075
- {
1076
- type: 'object',
1077
- additionalProperties: true
1078
- },
1079
- {
1080
- type: 'string'
1081
- }
1082
- ]
1083
- },
1084
- description: 'Child items of the invoice item'
1085
- }
1086
- },
1087
- additionalProperties: false
1088
- },
1089
- description: 'Items of the invoice'
782
+ invoice_pdf: {
783
+ type: 'string'
1090
784
  }
1091
785
  },
786
+ required: ['created', 'period_start', 'period_end'],
1092
787
  additionalProperties: false
1093
788
  };
1094
- export const MarketplaceListingSchema = {
789
+ export const MarketplaceListingFilesSchema = {
1095
790
  type: 'object',
1096
791
  properties: {
1097
- id: {
1098
- type: 'string',
1099
- maxLength: 63,
1100
- minLength: 1,
1101
- pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
1102
- description: 'Id of the chart listing',
1103
- example: 'portworx-enterprise-disaster-recovery-baremetal'
1104
- },
1105
- name: {
1106
- type: 'string',
1107
- description: 'Name of the chart listing',
1108
- example: 'Portworx Enterprise + Disaster Recovery - Baremetal'
1109
- },
1110
- developer: {
792
+ chartYaml: {
1111
793
  type: 'string',
1112
- description: 'Author of the chart listing',
1113
- example: 'Portworx'
794
+ description: 'Raw Chart.yaml content from the Helm chart',
795
+ example: `apiVersion: v2
796
+ name: nginx-ingress
797
+ version: 1.18.2-cfke.45
798
+ appVersion: 1.9.4`
1114
799
  },
1115
- description: {
800
+ valuesYaml: {
1116
801
  type: 'string',
1117
- description: 'Short description of the chart listing',
1118
- example: 'Run Kubernetes with unmatched scalability, availability, and self-service access to any storage'
802
+ description: 'Raw values.yaml content from the Helm chart',
803
+ example: `replicaCount: 1
804
+ image:
805
+ repository: nginx
806
+ tag: latest`
1119
807
  },
1120
- logoUrl: {
808
+ valuesSchemaJson: {
1121
809
  type: 'string',
1122
- description: 'Logo of the chart listing',
1123
- example: 'https://portworx.com/wp-content/themes/portworx/assets/images/header/portworx-logo.png'
1124
- },
1125
- longDescription: {
810
+ description: 'JSON schema for values.yaml as a string',
811
+ example: '{"type":"object","properties":{"replicaCount":{"type":"number"}}}'
812
+ }
813
+ },
814
+ additionalProperties: false
815
+ };
816
+ export const MarketplaceListingSchema = {
817
+ type: 'object',
818
+ properties: {
819
+ name: {
1126
820
  type: 'string',
1127
- description: 'Long description of the chart listing',
1128
- example: 'Portworx-Enterprise is the complete multi-cloud ready Kubernetes storage platform for running mission-critical apps in production....'
821
+ description: 'Name of the chart',
822
+ example: 'nginx-ingress'
1129
823
  },
1130
- categories: {
824
+ versions: {
1131
825
  type: 'array',
1132
826
  items: {
1133
827
  type: 'string',
1134
- example: 'AI & Machine Learning'
828
+ 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-]+)*))?$',
829
+ description: 'Specific version of the chart',
830
+ example: '1.18.2-cfke.45'
1135
831
  },
1136
- description: 'Tags of the chart'
832
+ description: 'Available versions of the chart'
1137
833
  },
1138
834
  version_channels: {
1139
835
  type: 'array',
1140
836
  items: {
1141
837
  type: 'string',
1142
838
  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-]+)*))?$',
1143
- description: 'Version of the chart.',
1144
- example: '2.x.x-cfke.x'
1145
- }
1146
- },
1147
- value_schemas: {
1148
- type: 'array',
1149
- items: {
1150
- type: 'object',
1151
- properties: {
1152
- version: {
1153
- type: 'string',
1154
- 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-]+)*))?$',
1155
- description: 'Version of the chart.',
1156
- example: '2.1.1-cfke.123'
1157
- },
1158
- schema: {
1159
- type: 'string',
1160
- description: 'Schema of the chart values. JSON Schema as string'
1161
- },
1162
- placeholder: {
1163
- type: 'string',
1164
- description: 'Schema of the chart values',
1165
- example: `foo: 1
1166
- bar: example`
1167
- }
1168
- },
1169
- required: ['version', 'schema', 'placeholder'],
1170
- additionalProperties: false
1171
- }
1172
- }
1173
- },
1174
- required: ['id', 'name', 'developer', 'description', 'logoUrl', 'longDescription', 'categories', 'version_channels', 'value_schemas'],
1175
- additionalProperties: false
1176
- };
1177
- export const OrganizationCreateInputSchema = {
1178
- type: 'object',
1179
- properties: {
1180
- email: {
1181
- type: 'string',
1182
- format: 'email',
1183
- description: 'Email address used for billing as a string.',
1184
- example: 'email@example.com'
839
+ description: 'Version channel pattern',
840
+ example: '1.18.x-cfke.x'
841
+ },
842
+ description: 'Version channels for the chart'
1185
843
  },
1186
- first_name: {
844
+ latestVersion: {
1187
845
  type: 'string',
1188
- description: 'First name of the billing contact person.',
1189
- example: 'John'
846
+ description: 'Latest version of the chart',
847
+ example: '1.18.2-cfke.45'
848
+ },
849
+ metadata: {
850
+ type: 'object',
851
+ properties: {
852
+ name: {
853
+ type: 'string',
854
+ description: 'Chart name from metadata',
855
+ example: 'nginx-ingress'
856
+ },
857
+ version: {
858
+ type: 'string',
859
+ description: 'Chart version from metadata',
860
+ example: '1.18.2-cfke.45'
861
+ },
862
+ description: {
863
+ type: 'string',
864
+ description: 'Chart description',
865
+ example: 'NGINX Ingress Controller for Kubernetes'
866
+ },
867
+ appVersion: {
868
+ type: 'string',
869
+ description: 'Application version',
870
+ example: '1.9.4'
871
+ },
872
+ apiVersion: {
873
+ type: 'string',
874
+ description: 'Helm API version',
875
+ example: 'v2'
876
+ },
877
+ keywords: {
878
+ type: 'array',
879
+ items: {
880
+ type: 'string'
881
+ },
882
+ description: 'Chart keywords',
883
+ example: ['ingress', 'nginx', 'load-balancer']
884
+ },
885
+ home: {
886
+ type: 'string',
887
+ description: 'Chart home URL',
888
+ example: 'https://kubernetes.github.io/ingress-nginx/'
889
+ },
890
+ sources: {
891
+ type: 'array',
892
+ items: {
893
+ type: 'string'
894
+ },
895
+ description: 'Chart source URLs',
896
+ example: ['https://github.com/kubernetes/ingress-nginx']
897
+ },
898
+ maintainers: {
899
+ type: 'array',
900
+ items: {
901
+ type: 'object',
902
+ properties: {
903
+ name: {
904
+ type: 'string',
905
+ description: 'Maintainer name',
906
+ example: 'NGINX Team'
907
+ },
908
+ email: {
909
+ type: 'string',
910
+ description: 'Maintainer email',
911
+ example: 'support@nginx.org'
912
+ }
913
+ },
914
+ required: ['name'],
915
+ additionalProperties: false
916
+ },
917
+ description: 'Chart maintainers'
918
+ }
919
+ },
920
+ required: ['name', 'version'],
921
+ additionalProperties: false,
922
+ description: 'Chart metadata'
923
+ }
924
+ },
925
+ required: ['name', 'versions', 'version_channels', 'latestVersion'],
926
+ additionalProperties: false
927
+ };
928
+ export const OrganizationCreateInputSchema = {
929
+ type: 'object',
930
+ properties: {
931
+ email: {
932
+ type: 'string',
933
+ format: 'email',
934
+ description: 'Email address used for billing as a string.',
935
+ example: 'email@example.com'
936
+ },
937
+ first_name: {
938
+ type: 'string',
939
+ description: 'First name of the billing contact person.',
940
+ example: 'John'
1190
941
  },
1191
942
  last_name: {
1192
943
  type: 'string',
@@ -1289,12 +1040,12 @@ export const OrganizationSchema = {
1289
1040
  id: {
1290
1041
  type: 'string',
1291
1042
  description: 'Id of the control plane version. Used in API calls.',
1292
- example: '1.29.x-cfke.x'
1043
+ example: '1.33.x-cfke.x'
1293
1044
  },
1294
1045
  label: {
1295
1046
  type: 'string',
1296
1047
  description: 'Label of the control plane version. Used in frontent UI.',
1297
- example: '1.29.x (Always latest 1.29 patch version)'
1048
+ example: '1.33.x (Always latest 1.33 patch version)'
1298
1049
  }
1299
1050
  },
1300
1051
  required: ['id', 'label'],
@@ -1302,9 +1053,21 @@ export const OrganizationSchema = {
1302
1053
  },
1303
1054
  minItems: 1,
1304
1055
  description: 'List of CFKE control plane versions available for the organization.'
1056
+ },
1057
+ copilot_user_hourly_tokens: {
1058
+ type: 'integer',
1059
+ minimum: 0,
1060
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1061
+ example: 42000
1062
+ },
1063
+ copilot_organization_hourly_tokens: {
1064
+ type: 'integer',
1065
+ minimum: 0,
1066
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1067
+ example: 242000
1305
1068
  }
1306
1069
  },
1307
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions'],
1070
+ required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions', 'copilot_user_hourly_tokens', 'copilot_organization_hourly_tokens'],
1308
1071
  additionalProperties: false,
1309
1072
  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.'
1310
1073
  },
@@ -1370,6 +1133,273 @@ export const PaymentMethodSchema = {
1370
1133
  required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1371
1134
  additionalProperties: false
1372
1135
  };
1136
+ export const PlatformQuotaSchema = {
1137
+ type: 'object',
1138
+ properties: {
1139
+ basic_clusters_max: {
1140
+ type: 'integer',
1141
+ minimum: 0,
1142
+ description: 'Maximum number of Basic clusters that can be created.',
1143
+ example: 999
1144
+ },
1145
+ basic_clusters_available: {
1146
+ type: 'integer',
1147
+ description: 'Available number of Basic clusters that can be created.',
1148
+ example: 999
1149
+ },
1150
+ pro_clusters_max: {
1151
+ type: 'integer',
1152
+ minimum: 0,
1153
+ description: 'Maximum number of Pro clusters that can be created.',
1154
+ example: 999
1155
+ },
1156
+ pro_clusters_available: {
1157
+ type: 'integer',
1158
+ description: 'Available number of Pro clusters that can be created.',
1159
+ example: 999
1160
+ },
1161
+ fleets_max: {
1162
+ type: 'integer',
1163
+ minimum: 0,
1164
+ description: 'Maximum number of fleets that can be created per cluster.',
1165
+ example: 999
1166
+ },
1167
+ cluster_tiers: {
1168
+ type: 'array',
1169
+ items: {
1170
+ type: 'string',
1171
+ example: 'basic'
1172
+ },
1173
+ minItems: 0,
1174
+ description: 'List of Cloudfleet cluster tiers available for the organization.'
1175
+ },
1176
+ regions: {
1177
+ type: 'array',
1178
+ items: {
1179
+ type: 'string',
1180
+ example: 'northamerica-central-1'
1181
+ },
1182
+ minItems: 1,
1183
+ description: 'List of Cloudfleet control plane regions available for the organization.'
1184
+ },
1185
+ versions: {
1186
+ type: 'array',
1187
+ items: {
1188
+ type: 'object',
1189
+ properties: {
1190
+ id: {
1191
+ type: 'string',
1192
+ description: 'Id of the control plane version. Used in API calls.',
1193
+ example: '1.33.x-cfke.x'
1194
+ },
1195
+ label: {
1196
+ type: 'string',
1197
+ description: 'Label of the control plane version. Used in frontent UI.',
1198
+ example: '1.33.x (Always latest 1.33 patch version)'
1199
+ }
1200
+ },
1201
+ required: ['id', 'label'],
1202
+ additionalProperties: false
1203
+ },
1204
+ minItems: 1,
1205
+ description: 'List of CFKE control plane versions available for the organization.'
1206
+ },
1207
+ copilot_user_hourly_tokens: {
1208
+ type: 'integer',
1209
+ minimum: 0,
1210
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1211
+ example: 42000
1212
+ },
1213
+ copilot_organization_hourly_tokens: {
1214
+ type: 'integer',
1215
+ minimum: 0,
1216
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1217
+ example: 242000
1218
+ }
1219
+ },
1220
+ required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions', 'copilot_user_hourly_tokens', 'copilot_organization_hourly_tokens'],
1221
+ additionalProperties: false
1222
+ };
1223
+ export const RegistryRepositorySchema = {
1224
+ type: 'object',
1225
+ properties: {
1226
+ name: {
1227
+ type: 'string',
1228
+ description: 'Repository name.',
1229
+ example: 'my-app'
1230
+ },
1231
+ region: {
1232
+ type: 'string',
1233
+ description: 'Registry region.',
1234
+ example: 'northamerica'
1235
+ },
1236
+ uri: {
1237
+ type: 'string',
1238
+ description: 'Full URI of the repository.',
1239
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1240
+ }
1241
+ },
1242
+ required: ['name', 'region', 'uri'],
1243
+ additionalProperties: false
1244
+ };
1245
+ export const RegistryRepositoryWithTagsSchema = {
1246
+ type: 'object',
1247
+ properties: {
1248
+ name: {
1249
+ type: 'string',
1250
+ description: 'Repository name.',
1251
+ example: 'my-app'
1252
+ },
1253
+ region: {
1254
+ type: 'string',
1255
+ description: 'Registry region.',
1256
+ example: 'northamerica'
1257
+ },
1258
+ uri: {
1259
+ type: 'string',
1260
+ description: 'Full URI of the repository.',
1261
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1262
+ },
1263
+ tags: {
1264
+ type: 'array',
1265
+ items: {
1266
+ type: 'object',
1267
+ properties: {
1268
+ name: {
1269
+ type: 'string',
1270
+ description: 'Tag name.',
1271
+ example: 'latest'
1272
+ },
1273
+ size: {
1274
+ type: 'number',
1275
+ format: 'float',
1276
+ description: 'Size of the tag in bytes.',
1277
+ example: 123456789
1278
+ },
1279
+ mediaType: {
1280
+ type: 'string',
1281
+ description: 'Media type of the manifest.',
1282
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1283
+ }
1284
+ },
1285
+ required: ['name', 'size'],
1286
+ additionalProperties: false
1287
+ },
1288
+ description: 'Array of tags in the repository.'
1289
+ },
1290
+ totalSize: {
1291
+ type: 'number',
1292
+ format: 'float',
1293
+ description: 'Total size of all tags in the repository in bytes.',
1294
+ example: 987654321
1295
+ }
1296
+ },
1297
+ required: ['name', 'region', 'uri', 'tags', 'totalSize'],
1298
+ additionalProperties: false
1299
+ };
1300
+ export const RegistryTagSchema = {
1301
+ type: 'object',
1302
+ properties: {
1303
+ name: {
1304
+ type: 'string',
1305
+ description: 'Tag name.',
1306
+ example: 'latest'
1307
+ },
1308
+ mediaType: {
1309
+ type: 'string',
1310
+ description: 'Media type of the manifest.',
1311
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1312
+ },
1313
+ config: {
1314
+ type: 'object',
1315
+ properties: {
1316
+ size: {
1317
+ type: 'number',
1318
+ format: 'float',
1319
+ description: 'Size of the config in bytes.',
1320
+ example: 1234
1321
+ }
1322
+ },
1323
+ required: ['size'],
1324
+ additionalProperties: false,
1325
+ description: 'Manifest config metadata.'
1326
+ },
1327
+ layers: {
1328
+ type: 'array',
1329
+ items: {
1330
+ type: 'object',
1331
+ properties: {
1332
+ size: {
1333
+ type: 'number',
1334
+ format: 'float',
1335
+ description: 'Size of the layer in bytes.',
1336
+ example: 5678
1337
+ }
1338
+ },
1339
+ required: ['size'],
1340
+ additionalProperties: false
1341
+ },
1342
+ description: 'Array of layer metadata.'
1343
+ },
1344
+ manifests: {
1345
+ type: 'array',
1346
+ items: {
1347
+ type: 'object',
1348
+ properties: {
1349
+ digest: {
1350
+ type: 'string',
1351
+ description: 'Digest of the manifest.',
1352
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1353
+ },
1354
+ platform: {
1355
+ type: 'object',
1356
+ properties: {
1357
+ architecture: {
1358
+ type: 'string',
1359
+ description: 'Architecture of the platform.',
1360
+ example: 'amd64'
1361
+ },
1362
+ os: {
1363
+ type: 'string',
1364
+ description: 'Operating system of the platform.',
1365
+ example: 'linux'
1366
+ }
1367
+ },
1368
+ required: ['architecture', 'os'],
1369
+ additionalProperties: false,
1370
+ description: 'Platform information for the manifest.'
1371
+ }
1372
+ },
1373
+ required: ['digest'],
1374
+ additionalProperties: false
1375
+ },
1376
+ description: 'Array of manifests for multi-arch images.'
1377
+ },
1378
+ size: {
1379
+ type: 'number',
1380
+ format: 'float',
1381
+ description: 'Total size of the tag in bytes.',
1382
+ example: 123456789
1383
+ },
1384
+ region: {
1385
+ type: 'string',
1386
+ description: 'Registry region.',
1387
+ example: 'northamerica'
1388
+ },
1389
+ repository: {
1390
+ type: 'string',
1391
+ description: 'Repository name.',
1392
+ example: 'my-app'
1393
+ },
1394
+ uri: {
1395
+ type: 'string',
1396
+ description: 'Full URI of the tag.',
1397
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
1398
+ }
1399
+ },
1400
+ required: ['name', 'size', 'region', 'repository', 'uri'],
1401
+ additionalProperties: false
1402
+ };
1373
1403
  export const TokenCreateInputSchema = {
1374
1404
  type: 'object',
1375
1405
  properties: {
@@ -1448,6 +1478,101 @@ export const TokenUpdateInputSchema = {
1448
1478
  },
1449
1479
  additionalProperties: false
1450
1480
  };
1481
+ export const UsageFacetsSchema = {
1482
+ type: 'object',
1483
+ properties: {
1484
+ cluster_id: {
1485
+ type: 'array',
1486
+ items: {
1487
+ type: 'string'
1488
+ },
1489
+ description: 'List of unique cluster IDs',
1490
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1491
+ },
1492
+ product: {
1493
+ type: 'array',
1494
+ items: {
1495
+ type: 'string'
1496
+ },
1497
+ description: 'List of unique products',
1498
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1499
+ }
1500
+ },
1501
+ additionalProperties: false
1502
+ };
1503
+ export const UsageResponseSchema = {
1504
+ type: 'object',
1505
+ properties: {
1506
+ data: {
1507
+ type: 'array',
1508
+ items: {
1509
+ type: 'object',
1510
+ properties: {
1511
+ hour: {
1512
+ type: 'string',
1513
+ description: 'Hour of the usage',
1514
+ example: '2019-01-01T00:00:00.000Z'
1515
+ },
1516
+ cluster_id: {
1517
+ type: 'string',
1518
+ description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1519
+ example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1520
+ },
1521
+ product: {
1522
+ type: 'string',
1523
+ description: 'The product the usage is associated with',
1524
+ example: 'cfke_controlplane'
1525
+ },
1526
+ value: {
1527
+ type: 'number',
1528
+ format: 'float',
1529
+ description: 'Consumption',
1530
+ example: 4
1531
+ },
1532
+ price: {
1533
+ type: 'number',
1534
+ format: 'float',
1535
+ description: 'Price per unit',
1536
+ example: 0.01
1537
+ },
1538
+ total: {
1539
+ type: 'number',
1540
+ format: 'float',
1541
+ description: 'Total cost'
1542
+ }
1543
+ },
1544
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1545
+ additionalProperties: false
1546
+ },
1547
+ description: 'Usage data'
1548
+ },
1549
+ facets: {
1550
+ type: 'object',
1551
+ properties: {
1552
+ cluster_id: {
1553
+ type: 'array',
1554
+ items: {
1555
+ type: 'string'
1556
+ },
1557
+ description: 'List of unique cluster IDs',
1558
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1559
+ },
1560
+ product: {
1561
+ type: 'array',
1562
+ items: {
1563
+ type: 'string'
1564
+ },
1565
+ description: 'List of unique products',
1566
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1567
+ }
1568
+ },
1569
+ additionalProperties: false,
1570
+ description: 'Facets for filtering'
1571
+ }
1572
+ },
1573
+ required: ['data', 'facets'],
1574
+ additionalProperties: false
1575
+ };
1451
1576
  export const UsageSchema = {
1452
1577
  type: 'object',
1453
1578
  properties: {
@@ -1458,90 +1583,33 @@ export const UsageSchema = {
1458
1583
  },
1459
1584
  cluster_id: {
1460
1585
  type: 'string',
1461
- format: 'uuid',
1462
1586
  description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1463
1587
  example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1464
1588
  },
1465
- cluster_tier: {
1466
- type: 'string',
1467
- description: 'Tier of the cluster.',
1468
- example: 'pro',
1469
- enum: ['basic', 'pro', '']
1470
- },
1471
1589
  product: {
1472
1590
  type: 'string',
1473
1591
  description: 'The product the usage is associated with',
1474
- example: 'cfke_controlplane',
1475
- enum: ['cfke_controlplane', 'cfke_connected_nodes', 'infra_compute', 'infra_storage', 'infra_loadbalancing', 'infra_traffic', 'cfcr_storage']
1476
- },
1477
- node_name: {
1478
- type: 'string',
1479
- description: 'Name of the Kubernetes node',
1480
- example: 'flexible-moth-956037384'
1481
- },
1482
- sku: {
1483
- type: 'string',
1484
- description: 'SKU of the Kubernetes node',
1485
- example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
1592
+ example: 'cfke_controlplane'
1486
1593
  },
1487
- cpu: {
1488
- anyOf: [
1489
- {
1490
- type: 'number',
1491
- format: 'float',
1492
- description: 'CPU core count of the node',
1493
- example: 4
1494
- },
1495
- {
1496
- type: 'string',
1497
- enum: ['']
1498
- }
1499
- ]
1594
+ value: {
1595
+ type: 'number',
1596
+ format: 'float',
1597
+ description: 'Consumption',
1598
+ example: 4
1500
1599
  },
1501
1600
  price: {
1502
- anyOf: [
1503
- {
1504
- type: 'number',
1505
- format: 'float',
1506
- description: 'Price',
1507
- example: 4
1508
- },
1509
- {
1510
- type: 'string',
1511
- enum: ['']
1512
- }
1513
- ]
1514
- },
1515
- value: {
1516
- anyOf: [
1517
- {
1518
- type: 'number',
1519
- format: 'float',
1520
- description: 'Value',
1521
- example: 4
1522
- },
1523
- {
1524
- type: 'string',
1525
- enum: ['']
1526
- }
1527
- ]
1601
+ type: 'number',
1602
+ format: 'float',
1603
+ description: 'Price per unit',
1604
+ example: 0.01
1528
1605
  },
1529
1606
  total: {
1530
- anyOf: [
1531
- {
1532
- type: 'number',
1533
- format: 'float',
1534
- description: 'Total',
1535
- example: 4
1536
- },
1537
- {
1538
- type: 'string',
1539
- enum: ['']
1540
- }
1541
- ]
1607
+ type: 'number',
1608
+ format: 'float',
1609
+ description: 'Total cost'
1542
1610
  }
1543
1611
  },
1544
- required: ['cluster_id', 'cluster_tier', 'product', 'node_name', 'sku', 'cpu', 'price', 'value', 'total'],
1612
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1545
1613
  additionalProperties: false
1546
1614
  };
1547
1615
  export const UserCreateInputSchema = {