@cloudfleet/sdk 0.0.1-e80cef7 → 0.0.1-ecad9ab

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 +539 -475
  54. package/dist/schemas.gen.d.ts.map +1 -1
  55. package/dist/schemas.gen.js +559 -514
  56. package/dist/schemas.gen.js.map +1 -1
  57. package/dist/sdk.gen.d.ts +132 -69
  58. package/dist/sdk.gen.d.ts.map +1 -1
  59. package/dist/sdk.gen.js +176 -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 +526 -328
  63. package/dist/types.gen.d.ts.map +1 -1
  64. package/dist/zod.gen.d.ts +1765 -2097
  65. package/dist/zod.gen.d.ts.map +1 -1
  66. package/dist/zod.gen.js +718 -759
  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,25 @@ 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.33.x-cfke.x'
303
290
  }
304
291
  },
305
292
  required: ['name', 'tier'],
@@ -336,7 +323,7 @@ MIIC0DCCAbigAwIBAgI...`
336
323
  kubernetes: {
337
324
  type: 'string',
338
325
  description: 'Kubernetes version of the cluster.',
339
- example: '1.29.3'
326
+ example: '1.33.7'
340
327
  },
341
328
  tailscale: {
342
329
  type: 'string',
@@ -347,9 +334,14 @@ MIIC0DCCAbigAwIBAgI...`
347
334
  type: 'string',
348
335
  description: 'Containerd version of the cluster.',
349
336
  example: '1.7.19'
337
+ },
338
+ nvidia_driver: {
339
+ type: 'string',
340
+ description: 'NVIDIA driver version of the cluster.',
341
+ example: '565.0.0'
350
342
  }
351
343
  },
352
- required: ['kubernetes', 'tailscale', 'containerd'],
344
+ required: ['kubernetes', 'tailscale', 'containerd', 'nvidia_driver'],
353
345
  additionalProperties: false,
354
346
  description: 'Versions of the different components of the cluster.'
355
347
  },
@@ -391,25 +383,25 @@ export const ClusterSchema = {
391
383
  description: 'Name of the cluster.',
392
384
  example: 'production-cluster'
393
385
  },
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
386
  tier: {
402
387
  type: 'string',
403
388
  description: 'Tier of the cluster.',
404
389
  example: 'pro',
405
390
  enum: ['basic', 'pro']
406
391
  },
392
+ region: {
393
+ type: 'string',
394
+ 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.',
395
+ default: 'staging',
396
+ example: 'northamerica-central-1a',
397
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
398
+ },
407
399
  version_channel: {
408
400
  type: 'string',
409
401
  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
402
  description: 'Version of the kubernetes cluster.',
411
403
  default: '1.x.x-cfke.x',
412
- example: '1.29.x-cfke.x'
404
+ example: '1.33.x-cfke.x'
413
405
  },
414
406
  id: {
415
407
  type: 'string',
@@ -421,7 +413,7 @@ export const ClusterSchema = {
421
413
  type: 'string',
422
414
  description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
423
415
  example: 'active',
424
- enum: ['active', 'deleted', 'creating', 'deployed', 'failed', 'updating']
416
+ enum: ['active', 'disabled', 'deleted', 'creating', 'deployed', 'failed', 'updating']
425
417
  },
426
418
  endpoint: {
427
419
  anyOf: [
@@ -446,7 +438,7 @@ MIIC0DCCAbigAwIBAgI...`
446
438
  version_current: {
447
439
  type: 'string',
448
440
  description: 'Current version of the cluster.',
449
- example: '1.29.3-cfke.52'
441
+ example: '1.33.7-cfke.264'
450
442
  },
451
443
  created_at: {
452
444
  type: 'string',
@@ -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.33.x-cfke.x'
486
484
  }
487
485
  },
486
+ required: ['tier'],
488
487
  additionalProperties: false
489
488
  };
490
489
  export const FleetCreateInputSchema = {
@@ -744,19 +743,15 @@ export const InvoiceSchema = {
744
743
  description: 'Unique identifier of the invoice. UUID v4 string in canonical form',
745
744
  example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
746
745
  },
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'
746
+ number: {
747
+ type: 'string'
752
748
  },
753
749
  status: {
754
750
  type: 'string',
755
751
  description: 'Status of the invoice',
756
- example: 'DRAFT',
757
- enum: ['DRAFT', 'COMMITTED', 'VOID']
752
+ example: 'paid'
758
753
  },
759
- amount: {
754
+ total: {
760
755
  type: 'number',
761
756
  format: 'float',
762
757
  description: 'Total amount of the invoice',
@@ -765,416 +760,173 @@ export const InvoiceSchema = {
765
760
  currency: {
766
761
  type: 'string',
767
762
  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'
763
+ example: 'usd'
787
764
  },
788
- targetDate: {
765
+ created: {
789
766
  type: 'string',
790
- description: 'Target date of the invoice',
791
- example: '2019-01-01T00:00:00.000Z'
767
+ format: 'date-time',
768
+ description: 'Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.',
769
+ example: '2023-12-20T13:53:32.000Z'
792
770
  },
793
- invoiceNumber: {
771
+ period_start: {
794
772
  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
773
+ format: 'date-time',
774
+ description: 'Billing period start timestamp. ISO 8601 date string in the UTC timezone.',
775
+ example: '2023-12-20T13:53:32.000Z'
803
776
  },
804
- bundleKeys: {
777
+ period_end: {
805
778
  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'
779
+ format: 'date-time',
780
+ description: 'Billing period end timestamp. ISO 8601 date string in the UTC timezone.',
781
+ example: '2023-12-20T13:53:32.000Z'
949
782
  },
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'
783
+ invoice_pdf: {
784
+ type: 'string'
1090
785
  }
1091
786
  },
787
+ required: ['created', 'period_start', 'period_end'],
1092
788
  additionalProperties: false
1093
789
  };
1094
- export const MarketplaceListingSchema = {
790
+ export const MarketplaceListingFilesSchema = {
1095
791
  type: 'object',
1096
792
  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: {
793
+ chartYaml: {
1111
794
  type: 'string',
1112
- description: 'Author of the chart listing',
1113
- example: 'Portworx'
795
+ description: 'Raw Chart.yaml content from the Helm chart',
796
+ example: `apiVersion: v2
797
+ name: nginx-ingress
798
+ version: 1.18.2-cfke.45
799
+ appVersion: 1.9.4`
1114
800
  },
1115
- description: {
801
+ valuesYaml: {
1116
802
  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'
803
+ description: 'Raw values.yaml content from the Helm chart',
804
+ example: `replicaCount: 1
805
+ image:
806
+ repository: nginx
807
+ tag: latest`
1119
808
  },
1120
- logoUrl: {
809
+ valuesSchemaJson: {
1121
810
  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: {
811
+ description: 'JSON schema for values.yaml as a string',
812
+ example: '{"type":"object","properties":{"replicaCount":{"type":"number"}}}'
813
+ }
814
+ },
815
+ additionalProperties: false
816
+ };
817
+ export const MarketplaceListingSchema = {
818
+ type: 'object',
819
+ properties: {
820
+ name: {
1126
821
  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....'
822
+ description: 'Name of the chart',
823
+ example: 'nginx-ingress'
1129
824
  },
1130
- categories: {
825
+ versions: {
1131
826
  type: 'array',
1132
827
  items: {
1133
828
  type: 'string',
1134
- example: 'AI & Machine Learning'
829
+ 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-]+)*))?$',
830
+ description: 'Specific version of the chart',
831
+ example: '1.18.2-cfke.45'
1135
832
  },
1136
- description: 'Tags of the chart'
833
+ description: 'Available versions of the chart'
1137
834
  },
1138
835
  version_channels: {
1139
836
  type: 'array',
1140
837
  items: {
1141
838
  type: 'string',
1142
839
  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
- }
840
+ description: 'Version channel pattern',
841
+ example: '1.18.x-cfke.x'
842
+ },
843
+ description: 'Version channels for the chart'
1146
844
  },
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'
845
+ latestVersion: {
846
+ type: 'string',
847
+ description: 'Latest version of the chart',
848
+ example: '1.18.2-cfke.45'
849
+ },
850
+ metadata: {
851
+ type: 'object',
852
+ properties: {
853
+ name: {
854
+ type: 'string',
855
+ description: 'Chart name from metadata',
856
+ example: 'nginx-ingress'
857
+ },
858
+ version: {
859
+ type: 'string',
860
+ description: 'Chart version from metadata',
861
+ example: '1.18.2-cfke.45'
862
+ },
863
+ description: {
864
+ type: 'string',
865
+ description: 'Chart description',
866
+ example: 'NGINX Ingress Controller for Kubernetes'
867
+ },
868
+ appVersion: {
869
+ type: 'string',
870
+ description: 'Application version',
871
+ example: '1.9.4'
872
+ },
873
+ apiVersion: {
874
+ type: 'string',
875
+ description: 'Helm API version',
876
+ example: 'v2'
877
+ },
878
+ keywords: {
879
+ type: 'array',
880
+ items: {
881
+ type: 'string'
1157
882
  },
1158
- schema: {
1159
- type: 'string',
1160
- description: 'Schema of the chart values. JSON Schema as string'
883
+ description: 'Chart keywords',
884
+ example: ['ingress', 'nginx', 'load-balancer']
885
+ },
886
+ home: {
887
+ type: 'string',
888
+ description: 'Chart home URL',
889
+ example: 'https://kubernetes.github.io/ingress-nginx/'
890
+ },
891
+ sources: {
892
+ type: 'array',
893
+ items: {
894
+ type: 'string'
1161
895
  },
1162
- placeholder: {
1163
- type: 'string',
1164
- description: 'Schema of the chart values',
1165
- example: `foo: 1
1166
- bar: example`
1167
- }
896
+ description: 'Chart source URLs',
897
+ example: ['https://github.com/kubernetes/ingress-nginx']
1168
898
  },
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 = {
899
+ maintainers: {
900
+ type: 'array',
901
+ items: {
902
+ type: 'object',
903
+ properties: {
904
+ name: {
905
+ type: 'string',
906
+ description: 'Maintainer name',
907
+ example: 'NGINX Team'
908
+ },
909
+ email: {
910
+ type: 'string',
911
+ description: 'Maintainer email',
912
+ example: 'support@nginx.org'
913
+ }
914
+ },
915
+ required: ['name'],
916
+ additionalProperties: false
917
+ },
918
+ description: 'Chart maintainers'
919
+ }
920
+ },
921
+ required: ['name', 'version'],
922
+ additionalProperties: false,
923
+ description: 'Chart metadata'
924
+ }
925
+ },
926
+ required: ['name', 'versions', 'version_channels', 'latestVersion'],
927
+ additionalProperties: false
928
+ };
929
+ export const OrganizationCreateInputSchema = {
1178
930
  type: 'object',
1179
931
  properties: {
1180
932
  email: {
@@ -1289,12 +1041,12 @@ export const OrganizationSchema = {
1289
1041
  id: {
1290
1042
  type: 'string',
1291
1043
  description: 'Id of the control plane version. Used in API calls.',
1292
- example: '1.29.x-cfke.x'
1044
+ example: '1.33.x-cfke.x'
1293
1045
  },
1294
1046
  label: {
1295
1047
  type: 'string',
1296
1048
  description: 'Label of the control plane version. Used in frontent UI.',
1297
- example: '1.29.x (Always latest 1.29 patch version)'
1049
+ example: '1.33.x (Always latest 1.33 patch version)'
1298
1050
  }
1299
1051
  },
1300
1052
  required: ['id', 'label'],
@@ -1370,6 +1122,261 @@ export const PaymentMethodSchema = {
1370
1122
  required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1371
1123
  additionalProperties: false
1372
1124
  };
1125
+ export const PlatformQuotaSchema = {
1126
+ type: 'object',
1127
+ properties: {
1128
+ basic_clusters_max: {
1129
+ type: 'integer',
1130
+ minimum: 0,
1131
+ description: 'Maximum number of Basic clusters that can be created.',
1132
+ example: 999
1133
+ },
1134
+ basic_clusters_available: {
1135
+ type: 'integer',
1136
+ description: 'Available number of Basic clusters that can be created.',
1137
+ example: 999
1138
+ },
1139
+ pro_clusters_max: {
1140
+ type: 'integer',
1141
+ minimum: 0,
1142
+ description: 'Maximum number of Pro clusters that can be created.',
1143
+ example: 999
1144
+ },
1145
+ pro_clusters_available: {
1146
+ type: 'integer',
1147
+ description: 'Available number of Pro clusters that can be created.',
1148
+ example: 999
1149
+ },
1150
+ fleets_max: {
1151
+ type: 'integer',
1152
+ minimum: 0,
1153
+ description: 'Maximum number of fleets that can be created per cluster.',
1154
+ example: 999
1155
+ },
1156
+ cluster_tiers: {
1157
+ type: 'array',
1158
+ items: {
1159
+ type: 'string',
1160
+ example: 'basic'
1161
+ },
1162
+ minItems: 0,
1163
+ description: 'List of Cloudfleet cluster tiers available for the organization.'
1164
+ },
1165
+ regions: {
1166
+ type: 'array',
1167
+ items: {
1168
+ type: 'string',
1169
+ example: 'northamerica-central-1'
1170
+ },
1171
+ minItems: 1,
1172
+ description: 'List of Cloudfleet control plane regions available for the organization.'
1173
+ },
1174
+ versions: {
1175
+ type: 'array',
1176
+ items: {
1177
+ type: 'object',
1178
+ properties: {
1179
+ id: {
1180
+ type: 'string',
1181
+ description: 'Id of the control plane version. Used in API calls.',
1182
+ example: '1.33.x-cfke.x'
1183
+ },
1184
+ label: {
1185
+ type: 'string',
1186
+ description: 'Label of the control plane version. Used in frontent UI.',
1187
+ example: '1.33.x (Always latest 1.33 patch version)'
1188
+ }
1189
+ },
1190
+ required: ['id', 'label'],
1191
+ additionalProperties: false
1192
+ },
1193
+ minItems: 1,
1194
+ description: 'List of CFKE control plane versions available for the organization.'
1195
+ }
1196
+ },
1197
+ required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions'],
1198
+ additionalProperties: false
1199
+ };
1200
+ export const RegistryRepositorySchema = {
1201
+ type: 'object',
1202
+ properties: {
1203
+ name: {
1204
+ type: 'string',
1205
+ description: 'Repository name.',
1206
+ example: 'my-app'
1207
+ },
1208
+ region: {
1209
+ type: 'string',
1210
+ description: 'Registry region.',
1211
+ example: 'northamerica'
1212
+ },
1213
+ uri: {
1214
+ type: 'string',
1215
+ description: 'Full URI of the repository.',
1216
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1217
+ }
1218
+ },
1219
+ required: ['name', 'region', 'uri'],
1220
+ additionalProperties: false
1221
+ };
1222
+ export const RegistryRepositoryWithTagsSchema = {
1223
+ type: 'object',
1224
+ properties: {
1225
+ name: {
1226
+ type: 'string',
1227
+ description: 'Repository name.',
1228
+ example: 'my-app'
1229
+ },
1230
+ region: {
1231
+ type: 'string',
1232
+ description: 'Registry region.',
1233
+ example: 'northamerica'
1234
+ },
1235
+ uri: {
1236
+ type: 'string',
1237
+ description: 'Full URI of the repository.',
1238
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1239
+ },
1240
+ tags: {
1241
+ type: 'array',
1242
+ items: {
1243
+ type: 'object',
1244
+ properties: {
1245
+ name: {
1246
+ type: 'string',
1247
+ description: 'Tag name.',
1248
+ example: 'latest'
1249
+ },
1250
+ size: {
1251
+ type: 'number',
1252
+ format: 'float',
1253
+ description: 'Size of the tag in bytes.',
1254
+ example: 123456789
1255
+ },
1256
+ mediaType: {
1257
+ type: 'string',
1258
+ description: 'Media type of the manifest.',
1259
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1260
+ }
1261
+ },
1262
+ required: ['name', 'size'],
1263
+ additionalProperties: false
1264
+ },
1265
+ description: 'Array of tags in the repository.'
1266
+ },
1267
+ totalSize: {
1268
+ type: 'number',
1269
+ format: 'float',
1270
+ description: 'Total size of all tags in the repository in bytes.',
1271
+ example: 987654321
1272
+ }
1273
+ },
1274
+ required: ['name', 'region', 'uri', 'tags', 'totalSize'],
1275
+ additionalProperties: false
1276
+ };
1277
+ export const RegistryTagSchema = {
1278
+ type: 'object',
1279
+ properties: {
1280
+ name: {
1281
+ type: 'string',
1282
+ description: 'Tag name.',
1283
+ example: 'latest'
1284
+ },
1285
+ mediaType: {
1286
+ type: 'string',
1287
+ description: 'Media type of the manifest.',
1288
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1289
+ },
1290
+ config: {
1291
+ type: 'object',
1292
+ properties: {
1293
+ size: {
1294
+ type: 'number',
1295
+ format: 'float',
1296
+ description: 'Size of the config in bytes.',
1297
+ example: 1234
1298
+ }
1299
+ },
1300
+ required: ['size'],
1301
+ additionalProperties: false,
1302
+ description: 'Manifest config metadata.'
1303
+ },
1304
+ layers: {
1305
+ type: 'array',
1306
+ items: {
1307
+ type: 'object',
1308
+ properties: {
1309
+ size: {
1310
+ type: 'number',
1311
+ format: 'float',
1312
+ description: 'Size of the layer in bytes.',
1313
+ example: 5678
1314
+ }
1315
+ },
1316
+ required: ['size'],
1317
+ additionalProperties: false
1318
+ },
1319
+ description: 'Array of layer metadata.'
1320
+ },
1321
+ manifests: {
1322
+ type: 'array',
1323
+ items: {
1324
+ type: 'object',
1325
+ properties: {
1326
+ digest: {
1327
+ type: 'string',
1328
+ description: 'Digest of the manifest.',
1329
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1330
+ },
1331
+ platform: {
1332
+ type: 'object',
1333
+ properties: {
1334
+ architecture: {
1335
+ type: 'string',
1336
+ description: 'Architecture of the platform.',
1337
+ example: 'amd64'
1338
+ },
1339
+ os: {
1340
+ type: 'string',
1341
+ description: 'Operating system of the platform.',
1342
+ example: 'linux'
1343
+ }
1344
+ },
1345
+ required: ['architecture', 'os'],
1346
+ additionalProperties: false,
1347
+ description: 'Platform information for the manifest.'
1348
+ }
1349
+ },
1350
+ required: ['digest'],
1351
+ additionalProperties: false
1352
+ },
1353
+ description: 'Array of manifests for multi-arch images.'
1354
+ },
1355
+ size: {
1356
+ type: 'number',
1357
+ format: 'float',
1358
+ description: 'Total size of the tag in bytes.',
1359
+ example: 123456789
1360
+ },
1361
+ region: {
1362
+ type: 'string',
1363
+ description: 'Registry region.',
1364
+ example: 'northamerica'
1365
+ },
1366
+ repository: {
1367
+ type: 'string',
1368
+ description: 'Repository name.',
1369
+ example: 'my-app'
1370
+ },
1371
+ uri: {
1372
+ type: 'string',
1373
+ description: 'Full URI of the tag.',
1374
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
1375
+ }
1376
+ },
1377
+ required: ['name', 'size', 'region', 'repository', 'uri'],
1378
+ additionalProperties: false
1379
+ };
1373
1380
  export const TokenCreateInputSchema = {
1374
1381
  type: 'object',
1375
1382
  properties: {
@@ -1448,6 +1455,101 @@ export const TokenUpdateInputSchema = {
1448
1455
  },
1449
1456
  additionalProperties: false
1450
1457
  };
1458
+ export const UsageFacetsSchema = {
1459
+ type: 'object',
1460
+ properties: {
1461
+ cluster_id: {
1462
+ type: 'array',
1463
+ items: {
1464
+ type: 'string'
1465
+ },
1466
+ description: 'List of unique cluster IDs',
1467
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1468
+ },
1469
+ product: {
1470
+ type: 'array',
1471
+ items: {
1472
+ type: 'string'
1473
+ },
1474
+ description: 'List of unique products',
1475
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1476
+ }
1477
+ },
1478
+ additionalProperties: false
1479
+ };
1480
+ export const UsageResponseSchema = {
1481
+ type: 'object',
1482
+ properties: {
1483
+ data: {
1484
+ type: 'array',
1485
+ items: {
1486
+ type: 'object',
1487
+ properties: {
1488
+ hour: {
1489
+ type: 'string',
1490
+ description: 'Hour of the usage',
1491
+ example: '2019-01-01T00:00:00.000Z'
1492
+ },
1493
+ cluster_id: {
1494
+ type: 'string',
1495
+ description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1496
+ example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1497
+ },
1498
+ product: {
1499
+ type: 'string',
1500
+ description: 'The product the usage is associated with',
1501
+ example: 'cfke_controlplane'
1502
+ },
1503
+ value: {
1504
+ type: 'number',
1505
+ format: 'float',
1506
+ description: 'Consumption',
1507
+ example: 4
1508
+ },
1509
+ price: {
1510
+ type: 'number',
1511
+ format: 'float',
1512
+ description: 'Price per unit',
1513
+ example: 0.01
1514
+ },
1515
+ total: {
1516
+ type: 'number',
1517
+ format: 'float',
1518
+ description: 'Total cost'
1519
+ }
1520
+ },
1521
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1522
+ additionalProperties: false
1523
+ },
1524
+ description: 'Usage data'
1525
+ },
1526
+ facets: {
1527
+ type: 'object',
1528
+ properties: {
1529
+ cluster_id: {
1530
+ type: 'array',
1531
+ items: {
1532
+ type: 'string'
1533
+ },
1534
+ description: 'List of unique cluster IDs',
1535
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1536
+ },
1537
+ product: {
1538
+ type: 'array',
1539
+ items: {
1540
+ type: 'string'
1541
+ },
1542
+ description: 'List of unique products',
1543
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1544
+ }
1545
+ },
1546
+ additionalProperties: false,
1547
+ description: 'Facets for filtering'
1548
+ }
1549
+ },
1550
+ required: ['data', 'facets'],
1551
+ additionalProperties: false
1552
+ };
1451
1553
  export const UsageSchema = {
1452
1554
  type: 'object',
1453
1555
  properties: {
@@ -1458,90 +1560,33 @@ export const UsageSchema = {
1458
1560
  },
1459
1561
  cluster_id: {
1460
1562
  type: 'string',
1461
- format: 'uuid',
1462
1563
  description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1463
1564
  example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1464
1565
  },
1465
- cluster_tier: {
1466
- type: 'string',
1467
- description: 'Tier of the cluster.',
1468
- example: 'pro',
1469
- enum: ['basic', 'pro', '']
1470
- },
1471
1566
  product: {
1472
1567
  type: 'string',
1473
1568
  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'
1569
+ example: 'cfke_controlplane'
1481
1570
  },
1482
- sku: {
1483
- type: 'string',
1484
- description: 'SKU of the Kubernetes node',
1485
- example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
1486
- },
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
- ]
1571
+ value: {
1572
+ type: 'number',
1573
+ format: 'float',
1574
+ description: 'Consumption',
1575
+ example: 4
1500
1576
  },
1501
1577
  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
- ]
1578
+ type: 'number',
1579
+ format: 'float',
1580
+ description: 'Price per unit',
1581
+ example: 0.01
1528
1582
  },
1529
1583
  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
- ]
1584
+ type: 'number',
1585
+ format: 'float',
1586
+ description: 'Total cost'
1542
1587
  }
1543
1588
  },
1544
- required: ['cluster_id', 'cluster_tier', 'product', 'node_name', 'sku', 'cpu', 'price', 'value', 'total'],
1589
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1545
1590
  additionalProperties: false
1546
1591
  };
1547
1592
  export const UserCreateInputSchema = {