@cloudfleet/sdk 0.0.1-6ee63f5 → 0.0.1-713251e

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 (49) hide show
  1. package/dist/client/client.gen.d.ts.map +1 -1
  2. package/dist/client/client.gen.js +77 -21
  3. package/dist/client/client.gen.js.map +1 -1
  4. package/dist/client/index.d.ts +1 -0
  5. package/dist/client/index.d.ts.map +1 -1
  6. package/dist/client/index.js +1 -0
  7. package/dist/client/index.js.map +1 -1
  8. package/dist/client/types.gen.d.ts +12 -10
  9. package/dist/client/types.gen.d.ts.map +1 -1
  10. package/dist/client/utils.gen.d.ts +7 -19
  11. package/dist/client/utils.gen.d.ts.map +1 -1
  12. package/dist/client/utils.gen.js +51 -106
  13. package/dist/client/utils.gen.js.map +1 -1
  14. package/dist/client.gen.d.ts +3 -3
  15. package/dist/client.gen.d.ts.map +1 -1
  16. package/dist/client.gen.js.map +1 -1
  17. package/dist/core/bodySerializer.gen.d.ts.map +1 -1
  18. package/dist/core/bodySerializer.gen.js +3 -0
  19. package/dist/core/bodySerializer.gen.js.map +1 -1
  20. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  21. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  22. package/dist/core/queryKeySerializer.gen.js +100 -0
  23. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  24. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  25. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  26. package/dist/core/serverSentEvents.gen.js +136 -0
  27. package/dist/core/serverSentEvents.gen.js.map +1 -0
  28. package/dist/core/types.gen.d.ts +12 -12
  29. package/dist/core/types.gen.d.ts.map +1 -1
  30. package/dist/core/utils.gen.d.ts +20 -0
  31. package/dist/core/utils.gen.d.ts.map +1 -0
  32. package/dist/core/utils.gen.js +88 -0
  33. package/dist/core/utils.gen.js.map +1 -0
  34. package/dist/schemas.gen.d.ts +543 -467
  35. package/dist/schemas.gen.d.ts.map +1 -1
  36. package/dist/schemas.gen.js +558 -501
  37. package/dist/schemas.gen.js.map +1 -1
  38. package/dist/sdk.gen.d.ts +90 -20
  39. package/dist/sdk.gen.d.ts.map +1 -1
  40. package/dist/sdk.gen.js +162 -73
  41. package/dist/sdk.gen.js.map +1 -1
  42. package/dist/services/kubernetes/api.d.ts +12 -12
  43. package/dist/types.gen.d.ts +529 -323
  44. package/dist/types.gen.d.ts.map +1 -1
  45. package/dist/zod.gen.d.ts +281 -1305
  46. package/dist/zod.gen.d.ts.map +1 -1
  47. package/dist/zod.gen.js +204 -689
  48. package/dist/zod.gen.js.map +1 -1
  49. package/package.json +4 -4
@@ -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 = {
@@ -289,17 +276,17 @@ export const ClusterCreateInputSchema = {
289
276
  },
290
277
  region: {
291
278
  type: 'string',
292
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a". This field can not be updated after creation.',
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.',
293
280
  default: 'staging',
294
- example: 'northamerica-central-1',
295
- enum: ['staging', 'northamerica-central-1', 'europe-central-1a']
281
+ example: 'northamerica-central-1a',
282
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
296
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',
@@ -404,17 +391,17 @@ export const ClusterSchema = {
404
391
  },
405
392
  region: {
406
393
  type: 'string',
407
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a". This field can not be updated after creation.',
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.',
408
395
  default: 'staging',
409
- example: 'northamerica-central-1',
410
- enum: ['staging', 'northamerica-central-1', 'europe-central-1a']
396
+ example: 'northamerica-central-1a',
397
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
411
398
  },
412
399
  version_channel: {
413
400
  type: 'string',
414
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-]+)*))?$',
415
402
  description: 'Version of the kubernetes cluster.',
416
403
  default: '1.x.x-cfke.x',
417
- example: '1.29.x-cfke.x'
404
+ example: '1.33.x-cfke.x'
418
405
  },
419
406
  id: {
420
407
  type: 'string',
@@ -426,7 +413,7 @@ export const ClusterSchema = {
426
413
  type: 'string',
427
414
  description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
428
415
  example: 'active',
429
- enum: ['active', 'deleted', 'creating', 'deployed', 'failed', 'updating']
416
+ enum: ['active', 'disabled', 'deleted', 'creating', 'deployed', 'failed', 'updating']
430
417
  },
431
418
  endpoint: {
432
419
  anyOf: [
@@ -451,7 +438,7 @@ MIIC0DCCAbigAwIBAgI...`
451
438
  version_current: {
452
439
  type: 'string',
453
440
  description: 'Current version of the cluster.',
454
- example: '1.29.3-cfke.52'
441
+ example: '1.33.7-cfke.264'
455
442
  },
456
443
  created_at: {
457
444
  type: 'string',
@@ -493,7 +480,7 @@ export const ClusterUpdateInputSchema = {
493
480
  type: 'string',
494
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-]+)*))?$',
495
482
  description: 'Version of the kubernetes cluster.',
496
- example: '1.29.x-cfke.x'
483
+ example: '1.33.x-cfke.x'
497
484
  }
498
485
  },
499
486
  required: ['tier'],
@@ -756,19 +743,15 @@ export const InvoiceSchema = {
756
743
  description: 'Unique identifier of the invoice. UUID v4 string in canonical form',
757
744
  example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
758
745
  },
759
- organizationId: {
760
- type: 'string',
761
- format: 'uuid',
762
- description: 'Unique identifier of the organization. UUID v4 string in canonical form',
763
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
746
+ number: {
747
+ type: 'string'
764
748
  },
765
749
  status: {
766
750
  type: 'string',
767
751
  description: 'Status of the invoice',
768
- example: 'DRAFT',
769
- enum: ['DRAFT', 'COMMITTED', 'VOID']
752
+ example: 'paid'
770
753
  },
771
- amount: {
754
+ total: {
772
755
  type: 'number',
773
756
  format: 'float',
774
757
  description: 'Total amount of the invoice',
@@ -777,413 +760,170 @@ export const InvoiceSchema = {
777
760
  currency: {
778
761
  type: 'string',
779
762
  description: 'Currency of the invoice',
780
- example: 'USD',
781
- 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']
782
- },
783
- creditAdj: {
784
- type: 'number',
785
- format: 'float',
786
- description: 'Total amount of credit adjustments',
787
- example: 0
788
- },
789
- refundAdj: {
790
- type: 'number',
791
- format: 'float',
792
- description: 'Total amount of refund adjustments',
793
- example: 0
794
- },
795
- invoiceDate: {
796
- type: 'string',
797
- description: 'Date of the invoice',
798
- example: '2019-01-01T00:00:00.000Z'
763
+ example: 'usd'
799
764
  },
800
- targetDate: {
765
+ created: {
801
766
  type: 'string',
802
- description: 'Target date of the invoice',
803
- 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'
804
770
  },
805
- invoiceNumber: {
771
+ period_start: {
806
772
  type: 'string',
807
- description: 'Number of the invoice',
808
- example: 'INV-0001'
809
- },
810
- balance: {
811
- type: 'number',
812
- format: 'float',
813
- description: 'Balance of the invoice',
814
- 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'
815
776
  },
816
- bundleKeys: {
777
+ period_end: {
817
778
  type: 'string',
818
- description: 'Bundle keys of the invoice',
819
- example: 'bundleKey1,bundleKey2'
820
- },
821
- credits: {
822
- type: 'array',
823
- items: {
824
- type: 'object',
825
- properties: {
826
- id: {
827
- type: 'string',
828
- format: 'uuid',
829
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
830
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
831
- },
832
- linkedInvoiceItemId: {
833
- type: 'string',
834
- format: 'uuid',
835
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
836
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
837
- },
838
- productName: {
839
- type: 'string',
840
- description: 'Name of the product',
841
- example: 'Research team'
842
- },
843
- planName: {
844
- type: 'string',
845
- description: 'Name of the plan',
846
- example: 'Plan A'
847
- },
848
- phaseName: {
849
- type: 'string',
850
- description: 'Name of the phase',
851
- example: 'Phase A'
852
- },
853
- usageName: {
854
- type: 'string',
855
- description: 'Name of the usage',
856
- example: 'Usage A'
857
- },
858
- prettyProductName: {
859
- type: 'string',
860
- description: 'Pretty name of the product',
861
- example: 'Research team'
862
- },
863
- prettyPlanName: {
864
- type: 'string',
865
- description: 'Pretty name of the plan',
866
- example: 'Plan A'
867
- },
868
- prettyPhaseName: {
869
- type: 'string',
870
- description: 'Pretty name of the phase',
871
- example: 'Phase A'
872
- },
873
- prettyUsageName: {
874
- type: 'string',
875
- description: 'Pretty name of the usage',
876
- example: 'Usage A'
877
- },
878
- itemType: {
879
- type: 'string',
880
- description: 'Type of the invoice item',
881
- example: 'EXTERNAL_CHARGE',
882
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
883
- },
884
- description: {
885
- type: 'string',
886
- description: 'Description of the invoice item',
887
- example: 'Description of the invoice item'
888
- },
889
- startDate: {
890
- type: 'string',
891
- description: 'Start date of the invoice item',
892
- example: '2019-01-01T00:00:00.000Z'
893
- },
894
- endDate: {
895
- type: 'string',
896
- description: 'End date of the invoice item',
897
- example: '2019-01-01T00:00:00.000Z'
898
- },
899
- amount: {
900
- type: 'number',
901
- format: 'float',
902
- description: 'Amount of the invoice item',
903
- example: 100
904
- },
905
- rate: {
906
- type: 'number',
907
- format: 'float',
908
- description: 'Rate of the invoice item',
909
- example: 100
910
- },
911
- currency: {
912
- type: 'string',
913
- description: 'Currency of the invoice item',
914
- example: 'USD',
915
- 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']
916
- },
917
- quantity: {
918
- type: 'number',
919
- format: 'float',
920
- description: 'Quantity of the invoice item',
921
- example: 1
922
- },
923
- itemDetails: {
924
- type: 'string',
925
- description: 'Details of the invoice item',
926
- example: 'Details of the invoice item'
927
- },
928
- catalogEffectiveDate: {
929
- type: 'string',
930
- description: 'Effective date of the catalog',
931
- example: '2019-01-01T00:00:00.000Z'
932
- },
933
- childItems: {
934
- type: 'array',
935
- items: {
936
- oneOf: [
937
- {
938
- type: 'array'
939
- },
940
- {
941
- type: 'boolean'
942
- },
943
- {
944
- type: 'number'
945
- },
946
- {
947
- type: 'object',
948
- additionalProperties: true
949
- },
950
- {
951
- type: 'string'
952
- }
953
- ]
954
- },
955
- description: 'Child items of the invoice item'
956
- }
957
- },
958
- additionalProperties: false
959
- },
960
- 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'
961
782
  },
962
- items: {
963
- type: 'array',
964
- items: {
965
- type: 'object',
966
- properties: {
967
- id: {
968
- type: 'string',
969
- format: 'uuid',
970
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
971
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
972
- },
973
- linkedInvoiceItemId: {
974
- type: 'string',
975
- format: 'uuid',
976
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
977
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
978
- },
979
- productName: {
980
- type: 'string',
981
- description: 'Name of the product',
982
- example: 'Research team'
983
- },
984
- planName: {
985
- type: 'string',
986
- description: 'Name of the plan',
987
- example: 'Plan A'
988
- },
989
- phaseName: {
990
- type: 'string',
991
- description: 'Name of the phase',
992
- example: 'Phase A'
993
- },
994
- usageName: {
995
- type: 'string',
996
- description: 'Name of the usage',
997
- example: 'Usage A'
998
- },
999
- prettyProductName: {
1000
- type: 'string',
1001
- description: 'Pretty name of the product',
1002
- example: 'Research team'
1003
- },
1004
- prettyPlanName: {
1005
- type: 'string',
1006
- description: 'Pretty name of the plan',
1007
- example: 'Plan A'
1008
- },
1009
- prettyPhaseName: {
1010
- type: 'string',
1011
- description: 'Pretty name of the phase',
1012
- example: 'Phase A'
1013
- },
1014
- prettyUsageName: {
1015
- type: 'string',
1016
- description: 'Pretty name of the usage',
1017
- example: 'Usage A'
1018
- },
1019
- itemType: {
1020
- type: 'string',
1021
- description: 'Type of the invoice item',
1022
- example: 'EXTERNAL_CHARGE',
1023
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
1024
- },
1025
- description: {
1026
- type: 'string',
1027
- description: 'Description of the invoice item',
1028
- example: 'Description of the invoice item'
1029
- },
1030
- startDate: {
1031
- type: 'string',
1032
- description: 'Start date of the invoice item',
1033
- example: '2019-01-01T00:00:00.000Z'
1034
- },
1035
- endDate: {
1036
- type: 'string',
1037
- description: 'End date of the invoice item',
1038
- example: '2019-01-01T00:00:00.000Z'
1039
- },
1040
- amount: {
1041
- type: 'number',
1042
- format: 'float',
1043
- description: 'Amount of the invoice item',
1044
- example: 100
1045
- },
1046
- rate: {
1047
- type: 'number',
1048
- format: 'float',
1049
- description: 'Rate of the invoice item',
1050
- example: 100
1051
- },
1052
- currency: {
1053
- type: 'string',
1054
- description: 'Currency of the invoice item',
1055
- example: 'USD',
1056
- 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']
1057
- },
1058
- quantity: {
1059
- type: 'number',
1060
- format: 'float',
1061
- description: 'Quantity of the invoice item',
1062
- example: 1
1063
- },
1064
- itemDetails: {
1065
- type: 'string',
1066
- description: 'Details of the invoice item',
1067
- example: 'Details of the invoice item'
1068
- },
1069
- catalogEffectiveDate: {
1070
- type: 'string',
1071
- description: 'Effective date of the catalog',
1072
- example: '2019-01-01T00:00:00.000Z'
1073
- },
1074
- childItems: {
1075
- type: 'array',
1076
- items: {
1077
- oneOf: [
1078
- {
1079
- type: 'array'
1080
- },
1081
- {
1082
- type: 'boolean'
1083
- },
1084
- {
1085
- type: 'number'
1086
- },
1087
- {
1088
- type: 'object',
1089
- additionalProperties: true
1090
- },
1091
- {
1092
- type: 'string'
1093
- }
1094
- ]
1095
- },
1096
- description: 'Child items of the invoice item'
1097
- }
1098
- },
1099
- additionalProperties: false
1100
- },
1101
- description: 'Items of the invoice'
783
+ invoice_pdf: {
784
+ type: 'string'
1102
785
  }
1103
786
  },
787
+ required: ['created', 'period_start', 'period_end'],
1104
788
  additionalProperties: false
1105
789
  };
1106
- export const MarketplaceListingSchema = {
790
+ export const MarketplaceListingFilesSchema = {
1107
791
  type: 'object',
1108
792
  properties: {
1109
- id: {
1110
- type: 'string',
1111
- maxLength: 63,
1112
- minLength: 1,
1113
- pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
1114
- description: 'Id of the chart listing',
1115
- example: 'portworx-enterprise-disaster-recovery-baremetal'
1116
- },
1117
- name: {
1118
- type: 'string',
1119
- description: 'Name of the chart listing',
1120
- example: 'Portworx Enterprise + Disaster Recovery - Baremetal'
1121
- },
1122
- developer: {
793
+ chartYaml: {
1123
794
  type: 'string',
1124
- description: 'Author of the chart listing',
1125
- 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`
1126
800
  },
1127
- description: {
801
+ valuesYaml: {
1128
802
  type: 'string',
1129
- description: 'Short description of the chart listing',
1130
- 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`
1131
808
  },
1132
- logoUrl: {
809
+ valuesSchemaJson: {
1133
810
  type: 'string',
1134
- description: 'Logo of the chart listing',
1135
- example: 'https://portworx.com/wp-content/themes/portworx/assets/images/header/portworx-logo.png'
1136
- },
1137
- 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: {
1138
821
  type: 'string',
1139
- description: 'Long description of the chart listing',
1140
- 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'
1141
824
  },
1142
- categories: {
825
+ versions: {
1143
826
  type: 'array',
1144
827
  items: {
1145
828
  type: 'string',
1146
- 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'
1147
832
  },
1148
- description: 'Tags of the chart'
833
+ description: 'Available versions of the chart'
1149
834
  },
1150
835
  version_channels: {
1151
836
  type: 'array',
1152
837
  items: {
1153
838
  type: 'string',
1154
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-]+)*))?$',
1155
- description: 'Version of the chart.',
1156
- example: '2.x.x-cfke.x'
1157
- }
840
+ description: 'Version channel pattern',
841
+ example: '1.18.x-cfke.x'
842
+ },
843
+ description: 'Version channels for the chart'
1158
844
  },
1159
- value_schemas: {
1160
- type: 'array',
1161
- items: {
1162
- type: 'object',
1163
- properties: {
1164
- version: {
1165
- type: 'string',
1166
- 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-]+)*))?$',
1167
- description: 'Version of the chart.',
1168
- 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'
1169
882
  },
1170
- schema: {
1171
- type: 'string',
1172
- 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'
1173
895
  },
1174
- placeholder: {
1175
- type: 'string',
1176
- description: 'Schema of the chart values',
1177
- example: `foo: 1
1178
- bar: example`
1179
- }
896
+ description: 'Chart source URLs',
897
+ example: ['https://github.com/kubernetes/ingress-nginx']
1180
898
  },
1181
- required: ['version', 'schema', 'placeholder'],
1182
- additionalProperties: false
1183
- }
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'
1184
924
  }
1185
925
  },
1186
- required: ['id', 'name', 'developer', 'description', 'logoUrl', 'longDescription', 'categories', 'version_channels', 'value_schemas'],
926
+ required: ['name', 'versions', 'version_channels', 'latestVersion'],
1187
927
  additionalProperties: false
1188
928
  };
1189
929
  export const OrganizationCreateInputSchema = {
@@ -1301,12 +1041,12 @@ export const OrganizationSchema = {
1301
1041
  id: {
1302
1042
  type: 'string',
1303
1043
  description: 'Id of the control plane version. Used in API calls.',
1304
- example: '1.29.x-cfke.x'
1044
+ example: '1.33.x-cfke.x'
1305
1045
  },
1306
1046
  label: {
1307
1047
  type: 'string',
1308
1048
  description: 'Label of the control plane version. Used in frontent UI.',
1309
- example: '1.29.x (Always latest 1.29 patch version)'
1049
+ example: '1.33.x (Always latest 1.33 patch version)'
1310
1050
  }
1311
1051
  },
1312
1052
  required: ['id', 'label'],
@@ -1314,9 +1054,21 @@ export const OrganizationSchema = {
1314
1054
  },
1315
1055
  minItems: 1,
1316
1056
  description: 'List of CFKE control plane versions available for the organization.'
1057
+ },
1058
+ copilot_user_hourly_tokens: {
1059
+ type: 'integer',
1060
+ minimum: 0,
1061
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1062
+ example: 42000
1063
+ },
1064
+ copilot_organization_hourly_tokens: {
1065
+ type: 'integer',
1066
+ minimum: 0,
1067
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1068
+ example: 242000
1317
1069
  }
1318
1070
  },
1319
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions'],
1071
+ 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'],
1320
1072
  additionalProperties: false,
1321
1073
  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.'
1322
1074
  },
@@ -1382,6 +1134,273 @@ export const PaymentMethodSchema = {
1382
1134
  required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1383
1135
  additionalProperties: false
1384
1136
  };
1137
+ export const PlatformQuotaSchema = {
1138
+ type: 'object',
1139
+ properties: {
1140
+ basic_clusters_max: {
1141
+ type: 'integer',
1142
+ minimum: 0,
1143
+ description: 'Maximum number of Basic clusters that can be created.',
1144
+ example: 999
1145
+ },
1146
+ basic_clusters_available: {
1147
+ type: 'integer',
1148
+ description: 'Available number of Basic clusters that can be created.',
1149
+ example: 999
1150
+ },
1151
+ pro_clusters_max: {
1152
+ type: 'integer',
1153
+ minimum: 0,
1154
+ description: 'Maximum number of Pro clusters that can be created.',
1155
+ example: 999
1156
+ },
1157
+ pro_clusters_available: {
1158
+ type: 'integer',
1159
+ description: 'Available number of Pro clusters that can be created.',
1160
+ example: 999
1161
+ },
1162
+ fleets_max: {
1163
+ type: 'integer',
1164
+ minimum: 0,
1165
+ description: 'Maximum number of fleets that can be created per cluster.',
1166
+ example: 999
1167
+ },
1168
+ cluster_tiers: {
1169
+ type: 'array',
1170
+ items: {
1171
+ type: 'string',
1172
+ example: 'basic'
1173
+ },
1174
+ minItems: 0,
1175
+ description: 'List of Cloudfleet cluster tiers available for the organization.'
1176
+ },
1177
+ regions: {
1178
+ type: 'array',
1179
+ items: {
1180
+ type: 'string',
1181
+ example: 'northamerica-central-1'
1182
+ },
1183
+ minItems: 1,
1184
+ description: 'List of Cloudfleet control plane regions available for the organization.'
1185
+ },
1186
+ versions: {
1187
+ type: 'array',
1188
+ items: {
1189
+ type: 'object',
1190
+ properties: {
1191
+ id: {
1192
+ type: 'string',
1193
+ description: 'Id of the control plane version. Used in API calls.',
1194
+ example: '1.33.x-cfke.x'
1195
+ },
1196
+ label: {
1197
+ type: 'string',
1198
+ description: 'Label of the control plane version. Used in frontent UI.',
1199
+ example: '1.33.x (Always latest 1.33 patch version)'
1200
+ }
1201
+ },
1202
+ required: ['id', 'label'],
1203
+ additionalProperties: false
1204
+ },
1205
+ minItems: 1,
1206
+ description: 'List of CFKE control plane versions available for the organization.'
1207
+ },
1208
+ copilot_user_hourly_tokens: {
1209
+ type: 'integer',
1210
+ minimum: 0,
1211
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1212
+ example: 42000
1213
+ },
1214
+ copilot_organization_hourly_tokens: {
1215
+ type: 'integer',
1216
+ minimum: 0,
1217
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1218
+ example: 242000
1219
+ }
1220
+ },
1221
+ 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'],
1222
+ additionalProperties: false
1223
+ };
1224
+ export const RegistryRepositorySchema = {
1225
+ type: 'object',
1226
+ properties: {
1227
+ name: {
1228
+ type: 'string',
1229
+ description: 'Repository name.',
1230
+ example: 'my-app'
1231
+ },
1232
+ region: {
1233
+ type: 'string',
1234
+ description: 'Registry region.',
1235
+ example: 'northamerica'
1236
+ },
1237
+ uri: {
1238
+ type: 'string',
1239
+ description: 'Full URI of the repository.',
1240
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1241
+ }
1242
+ },
1243
+ required: ['name', 'region', 'uri'],
1244
+ additionalProperties: false
1245
+ };
1246
+ export const RegistryRepositoryWithTagsSchema = {
1247
+ type: 'object',
1248
+ properties: {
1249
+ name: {
1250
+ type: 'string',
1251
+ description: 'Repository name.',
1252
+ example: 'my-app'
1253
+ },
1254
+ region: {
1255
+ type: 'string',
1256
+ description: 'Registry region.',
1257
+ example: 'northamerica'
1258
+ },
1259
+ uri: {
1260
+ type: 'string',
1261
+ description: 'Full URI of the repository.',
1262
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1263
+ },
1264
+ tags: {
1265
+ type: 'array',
1266
+ items: {
1267
+ type: 'object',
1268
+ properties: {
1269
+ name: {
1270
+ type: 'string',
1271
+ description: 'Tag name.',
1272
+ example: 'latest'
1273
+ },
1274
+ size: {
1275
+ type: 'number',
1276
+ format: 'float',
1277
+ description: 'Size of the tag in bytes.',
1278
+ example: 123456789
1279
+ },
1280
+ mediaType: {
1281
+ type: 'string',
1282
+ description: 'Media type of the manifest.',
1283
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1284
+ }
1285
+ },
1286
+ required: ['name', 'size'],
1287
+ additionalProperties: false
1288
+ },
1289
+ description: 'Array of tags in the repository.'
1290
+ },
1291
+ totalSize: {
1292
+ type: 'number',
1293
+ format: 'float',
1294
+ description: 'Total size of all tags in the repository in bytes.',
1295
+ example: 987654321
1296
+ }
1297
+ },
1298
+ required: ['name', 'region', 'uri', 'tags', 'totalSize'],
1299
+ additionalProperties: false
1300
+ };
1301
+ export const RegistryTagSchema = {
1302
+ type: 'object',
1303
+ properties: {
1304
+ name: {
1305
+ type: 'string',
1306
+ description: 'Tag name.',
1307
+ example: 'latest'
1308
+ },
1309
+ mediaType: {
1310
+ type: 'string',
1311
+ description: 'Media type of the manifest.',
1312
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1313
+ },
1314
+ config: {
1315
+ type: 'object',
1316
+ properties: {
1317
+ size: {
1318
+ type: 'number',
1319
+ format: 'float',
1320
+ description: 'Size of the config in bytes.',
1321
+ example: 1234
1322
+ }
1323
+ },
1324
+ required: ['size'],
1325
+ additionalProperties: false,
1326
+ description: 'Manifest config metadata.'
1327
+ },
1328
+ layers: {
1329
+ type: 'array',
1330
+ items: {
1331
+ type: 'object',
1332
+ properties: {
1333
+ size: {
1334
+ type: 'number',
1335
+ format: 'float',
1336
+ description: 'Size of the layer in bytes.',
1337
+ example: 5678
1338
+ }
1339
+ },
1340
+ required: ['size'],
1341
+ additionalProperties: false
1342
+ },
1343
+ description: 'Array of layer metadata.'
1344
+ },
1345
+ manifests: {
1346
+ type: 'array',
1347
+ items: {
1348
+ type: 'object',
1349
+ properties: {
1350
+ digest: {
1351
+ type: 'string',
1352
+ description: 'Digest of the manifest.',
1353
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1354
+ },
1355
+ platform: {
1356
+ type: 'object',
1357
+ properties: {
1358
+ architecture: {
1359
+ type: 'string',
1360
+ description: 'Architecture of the platform.',
1361
+ example: 'amd64'
1362
+ },
1363
+ os: {
1364
+ type: 'string',
1365
+ description: 'Operating system of the platform.',
1366
+ example: 'linux'
1367
+ }
1368
+ },
1369
+ required: ['architecture', 'os'],
1370
+ additionalProperties: false,
1371
+ description: 'Platform information for the manifest.'
1372
+ }
1373
+ },
1374
+ required: ['digest'],
1375
+ additionalProperties: false
1376
+ },
1377
+ description: 'Array of manifests for multi-arch images.'
1378
+ },
1379
+ size: {
1380
+ type: 'number',
1381
+ format: 'float',
1382
+ description: 'Total size of the tag in bytes.',
1383
+ example: 123456789
1384
+ },
1385
+ region: {
1386
+ type: 'string',
1387
+ description: 'Registry region.',
1388
+ example: 'northamerica'
1389
+ },
1390
+ repository: {
1391
+ type: 'string',
1392
+ description: 'Repository name.',
1393
+ example: 'my-app'
1394
+ },
1395
+ uri: {
1396
+ type: 'string',
1397
+ description: 'Full URI of the tag.',
1398
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
1399
+ }
1400
+ },
1401
+ required: ['name', 'size', 'region', 'repository', 'uri'],
1402
+ additionalProperties: false
1403
+ };
1385
1404
  export const TokenCreateInputSchema = {
1386
1405
  type: 'object',
1387
1406
  properties: {
@@ -1460,6 +1479,101 @@ export const TokenUpdateInputSchema = {
1460
1479
  },
1461
1480
  additionalProperties: false
1462
1481
  };
1482
+ export const UsageFacetsSchema = {
1483
+ type: 'object',
1484
+ properties: {
1485
+ cluster_id: {
1486
+ type: 'array',
1487
+ items: {
1488
+ type: 'string'
1489
+ },
1490
+ description: 'List of unique cluster IDs',
1491
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1492
+ },
1493
+ product: {
1494
+ type: 'array',
1495
+ items: {
1496
+ type: 'string'
1497
+ },
1498
+ description: 'List of unique products',
1499
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1500
+ }
1501
+ },
1502
+ additionalProperties: false
1503
+ };
1504
+ export const UsageResponseSchema = {
1505
+ type: 'object',
1506
+ properties: {
1507
+ data: {
1508
+ type: 'array',
1509
+ items: {
1510
+ type: 'object',
1511
+ properties: {
1512
+ hour: {
1513
+ type: 'string',
1514
+ description: 'Hour of the usage',
1515
+ example: '2019-01-01T00:00:00.000Z'
1516
+ },
1517
+ cluster_id: {
1518
+ type: 'string',
1519
+ description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1520
+ example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1521
+ },
1522
+ product: {
1523
+ type: 'string',
1524
+ description: 'The product the usage is associated with',
1525
+ example: 'cfke_controlplane'
1526
+ },
1527
+ value: {
1528
+ type: 'number',
1529
+ format: 'float',
1530
+ description: 'Consumption',
1531
+ example: 4
1532
+ },
1533
+ price: {
1534
+ type: 'number',
1535
+ format: 'float',
1536
+ description: 'Price per unit',
1537
+ example: 0.01
1538
+ },
1539
+ total: {
1540
+ type: 'number',
1541
+ format: 'float',
1542
+ description: 'Total cost'
1543
+ }
1544
+ },
1545
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1546
+ additionalProperties: false
1547
+ },
1548
+ description: 'Usage data'
1549
+ },
1550
+ facets: {
1551
+ type: 'object',
1552
+ properties: {
1553
+ cluster_id: {
1554
+ type: 'array',
1555
+ items: {
1556
+ type: 'string'
1557
+ },
1558
+ description: 'List of unique cluster IDs',
1559
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1560
+ },
1561
+ product: {
1562
+ type: 'array',
1563
+ items: {
1564
+ type: 'string'
1565
+ },
1566
+ description: 'List of unique products',
1567
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1568
+ }
1569
+ },
1570
+ additionalProperties: false,
1571
+ description: 'Facets for filtering'
1572
+ }
1573
+ },
1574
+ required: ['data', 'facets'],
1575
+ additionalProperties: false
1576
+ };
1463
1577
  export const UsageSchema = {
1464
1578
  type: 'object',
1465
1579
  properties: {
@@ -1470,90 +1584,33 @@ export const UsageSchema = {
1470
1584
  },
1471
1585
  cluster_id: {
1472
1586
  type: 'string',
1473
- format: 'uuid',
1474
1587
  description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1475
1588
  example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1476
1589
  },
1477
- cluster_tier: {
1478
- type: 'string',
1479
- description: 'Tier of the cluster.',
1480
- example: 'pro',
1481
- enum: ['basic', 'pro', '']
1482
- },
1483
1590
  product: {
1484
1591
  type: 'string',
1485
1592
  description: 'The product the usage is associated with',
1486
- example: 'cfke_controlplane',
1487
- enum: ['cfke_controlplane', 'cfke_connected_nodes', 'infra_compute', 'infra_storage', 'infra_loadbalancing', 'infra_traffic', 'cfcr_storage']
1488
- },
1489
- node_name: {
1490
- type: 'string',
1491
- description: 'Name of the Kubernetes node',
1492
- example: 'flexible-moth-956037384'
1593
+ example: 'cfke_controlplane'
1493
1594
  },
1494
- sku: {
1495
- type: 'string',
1496
- description: 'SKU of the Kubernetes node',
1497
- example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
1498
- },
1499
- cpu: {
1500
- anyOf: [
1501
- {
1502
- type: 'number',
1503
- format: 'float',
1504
- description: 'CPU core count of the node',
1505
- example: 4
1506
- },
1507
- {
1508
- type: 'string',
1509
- enum: ['']
1510
- }
1511
- ]
1595
+ value: {
1596
+ type: 'number',
1597
+ format: 'float',
1598
+ description: 'Consumption',
1599
+ example: 4
1512
1600
  },
1513
1601
  price: {
1514
- anyOf: [
1515
- {
1516
- type: 'number',
1517
- format: 'float',
1518
- description: 'Price',
1519
- example: 4
1520
- },
1521
- {
1522
- type: 'string',
1523
- enum: ['']
1524
- }
1525
- ]
1526
- },
1527
- value: {
1528
- anyOf: [
1529
- {
1530
- type: 'number',
1531
- format: 'float',
1532
- description: 'Value',
1533
- example: 4
1534
- },
1535
- {
1536
- type: 'string',
1537
- enum: ['']
1538
- }
1539
- ]
1602
+ type: 'number',
1603
+ format: 'float',
1604
+ description: 'Price per unit',
1605
+ example: 0.01
1540
1606
  },
1541
1607
  total: {
1542
- anyOf: [
1543
- {
1544
- type: 'number',
1545
- format: 'float',
1546
- description: 'Total',
1547
- example: 4
1548
- },
1549
- {
1550
- type: 'string',
1551
- enum: ['']
1552
- }
1553
- ]
1608
+ type: 'number',
1609
+ format: 'float',
1610
+ description: 'Total cost'
1554
1611
  }
1555
1612
  },
1556
- required: ['cluster_id', 'cluster_tier', 'product', 'node_name', 'sku', 'cpu', 'price', 'value', 'total'],
1613
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1557
1614
  additionalProperties: false
1558
1615
  };
1559
1616
  export const UserCreateInputSchema = {