@cloudfleet/sdk 0.0.1-e0d026d → 0.0.1-e145400

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 (83) 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 +13 -0
  18. package/dist/client.gen.d.ts.map +1 -0
  19. package/dist/client.gen.js +6 -0
  20. package/dist/client.gen.js.map +1 -0
  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/index.d.ts +3 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +3 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/schemas.gen.d.ts +878 -976
  58. package/dist/schemas.gen.d.ts.map +1 -1
  59. package/dist/schemas.gen.js +900 -1013
  60. package/dist/schemas.gen.js.map +1 -1
  61. package/dist/sdk.gen.d.ts +218 -142
  62. package/dist/sdk.gen.d.ts.map +1 -1
  63. package/dist/sdk.gen.js +300 -145
  64. package/dist/sdk.gen.js.map +1 -1
  65. package/dist/services/kubernetes/api.d.ts +196 -0
  66. package/dist/services/kubernetes/api.d.ts.map +1 -0
  67. package/dist/services/kubernetes/api.js +140 -0
  68. package/dist/services/kubernetes/api.js.map +1 -0
  69. package/dist/services/kubernetes/index.d.ts +44 -0
  70. package/dist/services/kubernetes/index.d.ts.map +1 -0
  71. package/dist/services/kubernetes/index.js +68 -0
  72. package/dist/services/kubernetes/index.js.map +1 -0
  73. package/dist/services/kubernetes/types.d.ts +1335 -0
  74. package/dist/services/kubernetes/types.d.ts.map +1 -0
  75. package/dist/services/kubernetes/types.js +2 -0
  76. package/dist/services/kubernetes/types.js.map +1 -0
  77. package/dist/types.gen.d.ts +922 -953
  78. package/dist/types.gen.d.ts.map +1 -1
  79. package/dist/zod.gen.d.ts +1870 -2850
  80. package/dist/zod.gen.d.ts.map +1 -1
  81. package/dist/zod.gen.js +919 -869
  82. package/dist/zod.gen.js.map +1 -1
  83. package/package.json +8 -5
@@ -1,4 +1,262 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
+ export const BillingContactSchema = {
3
+ type: 'object',
4
+ properties: {
5
+ company: {
6
+ type: 'string',
7
+ maxLength: 120,
8
+ minLength: 2,
9
+ pattern: '^(?!\\s)(?!.*\\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$',
10
+ description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
11
+ example: 'ACME Corp.'
12
+ },
13
+ address1: {
14
+ type: 'string',
15
+ nullable: true,
16
+ description: 'Street address, P.O. box, c/o',
17
+ example: '123 Main St.'
18
+ },
19
+ address2: {
20
+ type: 'string',
21
+ nullable: true,
22
+ description: 'Apartment, suite, unit, building, floor, etc.',
23
+ example: 'Suite 100'
24
+ },
25
+ postalCode: {
26
+ type: 'string',
27
+ nullable: true,
28
+ description: 'Postal code as a string.',
29
+ example: '94105'
30
+ },
31
+ city: {
32
+ type: 'string',
33
+ nullable: true,
34
+ description: 'City or town name.',
35
+ example: 'San Francisco'
36
+ },
37
+ state: {
38
+ type: 'string',
39
+ nullable: true,
40
+ description: 'State, province, or region name.',
41
+ example: 'CA'
42
+ },
43
+ country: {
44
+ type: 'string',
45
+ nullable: true,
46
+ description: 'Country as a ISO 3166-1 alpha-2 country code.',
47
+ example: 'US'
48
+ },
49
+ phone: {
50
+ type: 'string',
51
+ nullable: true,
52
+ description: 'Phone number as a string.',
53
+ example: '+1 555 555 5555'
54
+ },
55
+ email: {
56
+ type: 'string',
57
+ format: 'email',
58
+ description: 'Email address used for billing as a string.',
59
+ example: 'email@example.com'
60
+ },
61
+ individual_name: {
62
+ type: 'string',
63
+ description: 'Name of the billing contact person.',
64
+ example: 'John Doe'
65
+ },
66
+ tax_id: {
67
+ type: 'string',
68
+ nullable: true,
69
+ description: 'Tax ID of the organization.',
70
+ example: 'DE123456789'
71
+ },
72
+ tax_id_type: {
73
+ type: 'string',
74
+ nullable: true,
75
+ description: 'Type of the tax ID.',
76
+ example: 'de_vat',
77
+ enum: ['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', '']
78
+ }
79
+ },
80
+ required: ['email', 'individual_name'],
81
+ additionalProperties: false
82
+ };
83
+ export const BillingCreditsSchema = {
84
+ type: 'object',
85
+ properties: {
86
+ id: {
87
+ type: 'string',
88
+ description: 'Generated unique identifier of the promotional code.',
89
+ example: '7kUZnH7nnKUFfvc4NK2KQF'
90
+ },
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: {
104
+ type: 'string',
105
+ format: 'date-time',
106
+ description: 'Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.',
107
+ example: '2023-12-20T13:53:32.000Z'
108
+ },
109
+ code: {
110
+ type: 'string',
111
+ description: 'Promotional code used by the customer.',
112
+ example: 'VQ4SCMB'
113
+ },
114
+ description: {
115
+ type: 'string',
116
+ description: 'Description of the promotional code.',
117
+ example: '10% off on all products'
118
+ },
119
+ value_total: {
120
+ type: 'number',
121
+ format: 'float',
122
+ description: 'Total value of the promotional code.',
123
+ example: 10
124
+ },
125
+ value_remaining: {
126
+ type: 'number',
127
+ format: 'float',
128
+ description: 'Remaining value of the promotional code.',
129
+ example: 8
130
+ }
131
+ },
132
+ required: ['type', 'date_start', 'code', 'value_total'],
133
+ additionalProperties: false
134
+ };
135
+ export const ChartCreateInputSchema = {
136
+ type: 'object',
137
+ properties: {
138
+ values: {
139
+ type: 'string',
140
+ description: 'Values to be used in the chart encoded as a JSON string.'
141
+ },
142
+ version_channel: {
143
+ type: 'string',
144
+ pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
145
+ description: 'Desired version range or channel for the chart.',
146
+ example: '2.x.x-cfke.x'
147
+ },
148
+ name: {
149
+ type: 'string',
150
+ maxLength: 63,
151
+ minLength: 1,
152
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
153
+ description: 'Unique identifier of the chart deployment aka name of the helm release.',
154
+ example: 'postgresql-0'
155
+ },
156
+ namespace: {
157
+ type: 'string',
158
+ maxLength: 63,
159
+ minLength: 1,
160
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
161
+ description: 'Namespace of the chart deployment',
162
+ example: 'default'
163
+ },
164
+ chart: {
165
+ type: 'string',
166
+ maxLength: 63,
167
+ minLength: 1,
168
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
169
+ description: 'Name of the chart listing',
170
+ example: 'postgresql'
171
+ }
172
+ },
173
+ required: ['values', 'version_channel', 'name', 'namespace', 'chart'],
174
+ additionalProperties: false
175
+ };
176
+ export const ChartSchema = {
177
+ type: 'object',
178
+ properties: {
179
+ values: {
180
+ type: 'string',
181
+ description: 'Values to be used in the chart encoded as a JSON string.'
182
+ },
183
+ version_channel: {
184
+ type: 'string',
185
+ pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
186
+ description: 'Desired version range or channel for the chart.',
187
+ example: '2.x.x-cfke.x'
188
+ },
189
+ name: {
190
+ type: 'string',
191
+ maxLength: 63,
192
+ minLength: 1,
193
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
194
+ description: 'Unique identifier of the chart deployment aka name of the helm release.',
195
+ example: 'postgresql-0'
196
+ },
197
+ namespace: {
198
+ type: 'string',
199
+ maxLength: 63,
200
+ minLength: 1,
201
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
202
+ description: 'Namespace of the chart deployment',
203
+ example: 'default'
204
+ },
205
+ chart: {
206
+ type: 'string',
207
+ maxLength: 63,
208
+ minLength: 1,
209
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
210
+ description: 'Name of the chart listing',
211
+ example: 'postgresql'
212
+ },
213
+ status: {
214
+ type: 'string',
215
+ description: 'Status of the chart deployment.',
216
+ example: 'active',
217
+ enum: ['InstallSucceeded', 'InstallFailed', 'UpgradeSucceeded', 'UpgradeFailed', 'TestSucceeded', 'TestFailed', 'RollbackSucceeded', 'RollbackFailed', 'UninstallSucceeded', 'UninstallFailed', 'ArtifactFailed', 'DependencyNotReady', 'Progressing', 'SourceNotReady']
218
+ },
219
+ version_current: {
220
+ type: 'string',
221
+ description: 'Current version of the chart deployment.',
222
+ example: '2.1.33-cfke.11'
223
+ },
224
+ created_at: {
225
+ type: 'string',
226
+ description: 'Creation date and time of the chart deployment.',
227
+ example: '2024-09-12T09:11:27Z'
228
+ },
229
+ updated_at: {
230
+ type: 'string',
231
+ description: 'Last update date and time of the chart deployment.',
232
+ example: '2024-09-12T09:11:27Z'
233
+ },
234
+ ready: {
235
+ type: 'boolean',
236
+ description: 'Indicates if the chart deployment is ready to be used.',
237
+ example: true
238
+ }
239
+ },
240
+ required: ['values', 'version_channel', 'name', 'namespace', 'chart', 'status', 'version_current', 'created_at', 'updated_at', 'ready'],
241
+ additionalProperties: false
242
+ };
243
+ export const ChartUpdateInputSchema = {
244
+ type: 'object',
245
+ properties: {
246
+ values: {
247
+ type: 'string',
248
+ description: 'Values to be used in the chart encoded as a JSON string.'
249
+ },
250
+ version_channel: {
251
+ type: 'string',
252
+ pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
253
+ description: 'Desired version range or channel for the chart.',
254
+ example: '2.x.x-cfke.x'
255
+ }
256
+ },
257
+ required: ['values', 'version_channel'],
258
+ additionalProperties: false
259
+ };
2
260
  export const ClusterCreateInputSchema = {
3
261
  type: 'object',
4
262
  properties: {
@@ -10,25 +268,25 @@ export const ClusterCreateInputSchema = {
10
268
  description: 'Name of the cluster.',
11
269
  example: 'production-cluster'
12
270
  },
13
- region: {
14
- type: 'string',
15
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
16
- default: 'staging',
17
- example: 'northamerica-central-1',
18
- enum: ['staging', 'northamerica-central-1']
19
- },
20
271
  tier: {
21
272
  type: 'string',
22
273
  description: 'Tier of the cluster.',
23
274
  example: 'pro',
24
275
  enum: ['basic', 'pro']
25
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
+ },
26
284
  version_channel: {
27
285
  type: 'string',
28
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-]+)*))?$',
29
287
  description: 'Version of the kubernetes cluster.',
30
288
  default: '1.x.x-cfke.x',
31
- example: '1.29.x-cfke.x'
289
+ example: '1.33.x-cfke.x'
32
290
  }
33
291
  },
34
292
  required: ['name', 'tier'],
@@ -65,7 +323,7 @@ MIIC0DCCAbigAwIBAgI...`
65
323
  kubernetes: {
66
324
  type: 'string',
67
325
  description: 'Kubernetes version of the cluster.',
68
- example: '1.29.3'
326
+ example: '1.33.7'
69
327
  },
70
328
  tailscale: {
71
329
  type: 'string',
@@ -76,9 +334,14 @@ MIIC0DCCAbigAwIBAgI...`
76
334
  type: 'string',
77
335
  description: 'Containerd version of the cluster.',
78
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'
79
342
  }
80
343
  },
81
- required: ['kubernetes', 'tailscale', 'containerd'],
344
+ required: ['kubernetes', 'tailscale', 'containerd', 'nvidia_driver'],
82
345
  additionalProperties: false,
83
346
  description: 'Versions of the different components of the cluster.'
84
347
  },
@@ -120,25 +383,25 @@ export const ClusterSchema = {
120
383
  description: 'Name of the cluster.',
121
384
  example: 'production-cluster'
122
385
  },
123
- region: {
124
- type: 'string',
125
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
126
- default: 'staging',
127
- example: 'northamerica-central-1',
128
- enum: ['staging', 'northamerica-central-1']
129
- },
130
386
  tier: {
131
387
  type: 'string',
132
388
  description: 'Tier of the cluster.',
133
389
  example: 'pro',
134
390
  enum: ['basic', 'pro']
135
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
+ },
136
399
  version_channel: {
137
400
  type: 'string',
138
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-]+)*))?$',
139
402
  description: 'Version of the kubernetes cluster.',
140
403
  default: '1.x.x-cfke.x',
141
- example: '1.29.x-cfke.x'
404
+ example: '1.33.x-cfke.x'
142
405
  },
143
406
  id: {
144
407
  type: 'string',
@@ -150,7 +413,7 @@ export const ClusterSchema = {
150
413
  type: 'string',
151
414
  description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
152
415
  example: 'active',
153
- enum: ['active', 'deleted', 'creating', 'deployed', 'failed', 'updating']
416
+ enum: ['active', 'disabled', 'deleted', 'creating', 'deployed', 'failed', 'updating']
154
417
  },
155
418
  endpoint: {
156
419
  anyOf: [
@@ -175,7 +438,7 @@ MIIC0DCCAbigAwIBAgI...`
175
438
  version_current: {
176
439
  type: 'string',
177
440
  description: 'Current version of the cluster.',
178
- example: '1.29.3-cfke.52'
441
+ example: '1.33.7-cfke.264'
179
442
  },
180
443
  created_at: {
181
444
  type: 'string',
@@ -207,13 +470,20 @@ export const ClusterUpdateInputSchema = {
207
470
  description: 'Name of the cluster.',
208
471
  example: 'production-cluster'
209
472
  },
473
+ tier: {
474
+ type: 'string',
475
+ description: 'Tier of the cluster.',
476
+ example: 'pro',
477
+ enum: ['basic', 'pro']
478
+ },
210
479
  version_channel: {
211
480
  type: 'string',
212
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-]+)*))?$',
213
482
  description: 'Version of the kubernetes cluster.',
214
- example: '1.29.x-cfke.x'
483
+ example: '1.33.x-cfke.x'
215
484
  }
216
485
  },
486
+ required: ['tier'],
217
487
  additionalProperties: false
218
488
  };
219
489
  export const FleetCreateInputSchema = {
@@ -249,34 +519,19 @@ export const FleetCreateInputSchema = {
249
519
  additionalProperties: false
250
520
  },
251
521
  hetzner: {
252
- oneOf: [
253
- {
254
- type: 'object',
255
- properties: {
256
- enabled: {
257
- type: 'boolean',
258
- default: true
259
- },
260
- apiKey: {
261
- type: 'string'
262
- }
263
- },
264
- additionalProperties: false
522
+ type: 'object',
523
+ properties: {
524
+ enabled: {
525
+ type: 'boolean',
526
+ default: true
265
527
  },
266
- {
267
- type: 'object',
268
- properties: {
269
- apiKey: {
270
- type: 'string'
271
- },
272
- enabled: {
273
- type: 'boolean',
274
- default: true
275
- }
276
- },
277
- additionalProperties: false
528
+ apiKey: {
529
+ type: 'string',
530
+ description: 'Hetzner Cloud API key with read / write access'
278
531
  }
279
- ]
532
+ },
533
+ required: ['apiKey'],
534
+ additionalProperties: false
280
535
  },
281
536
  aws: {
282
537
  type: 'object',
@@ -300,14 +555,9 @@ export const FleetCreateInputSchema = {
300
555
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
301
556
  description: 'Unique identifier of the kubernetes fleet.',
302
557
  example: 'new-clouds-fleet'
303
- },
304
- type: {
305
- type: 'string',
306
- description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
307
- enum: ['managed', 'connected']
308
558
  }
309
559
  },
310
- required: ['id', 'type'],
560
+ required: ['id'],
311
561
  additionalProperties: false
312
562
  };
313
563
  export const FleetSchema = {
@@ -343,34 +593,19 @@ export const FleetSchema = {
343
593
  additionalProperties: false
344
594
  },
345
595
  hetzner: {
346
- oneOf: [
347
- {
348
- type: 'object',
349
- properties: {
350
- enabled: {
351
- type: 'boolean',
352
- default: true
353
- },
354
- apiKey: {
355
- type: 'string'
356
- }
357
- },
358
- additionalProperties: false
596
+ type: 'object',
597
+ properties: {
598
+ enabled: {
599
+ type: 'boolean',
600
+ default: true
359
601
  },
360
- {
361
- type: 'object',
362
- properties: {
363
- apiKey: {
364
- type: 'string'
365
- },
366
- enabled: {
367
- type: 'boolean',
368
- default: true
369
- }
370
- },
371
- additionalProperties: false
602
+ apiKey: {
603
+ type: 'string',
604
+ description: 'Hetzner Cloud API key with read / write access'
372
605
  }
373
- ]
606
+ },
607
+ required: ['apiKey'],
608
+ additionalProperties: false
374
609
  },
375
610
  aws: {
376
611
  type: 'object',
@@ -394,14 +629,9 @@ export const FleetSchema = {
394
629
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
395
630
  description: 'Unique identifier of the kubernetes fleet.',
396
631
  example: 'new-clouds-fleet'
397
- },
398
- type: {
399
- type: 'string',
400
- description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
401
- enum: ['managed', 'connected']
402
632
  }
403
633
  },
404
- required: ['id', 'type'],
634
+ required: ['id'],
405
635
  additionalProperties: false
406
636
  };
407
637
  export const FleetUpdateInputSchema = {
@@ -437,36 +667,21 @@ export const FleetUpdateInputSchema = {
437
667
  additionalProperties: false
438
668
  },
439
669
  hetzner: {
440
- oneOf: [
441
- {
442
- type: 'object',
443
- properties: {
444
- enabled: {
445
- type: 'boolean',
446
- default: true
447
- },
448
- apiKey: {
449
- type: 'string'
450
- }
451
- },
452
- additionalProperties: false
453
- },
454
- {
455
- type: 'object',
456
- properties: {
457
- apiKey: {
458
- type: 'string'
459
- },
460
- enabled: {
461
- type: 'boolean',
462
- default: true
463
- }
464
- },
465
- additionalProperties: false
466
- }
467
- ]
468
- },
469
- aws: {
670
+ type: 'object',
671
+ properties: {
672
+ enabled: {
673
+ type: 'boolean',
674
+ default: true
675
+ },
676
+ apiKey: {
677
+ type: 'string',
678
+ description: 'Hetzner Cloud API key with read / write access'
679
+ }
680
+ },
681
+ required: ['apiKey'],
682
+ additionalProperties: false
683
+ },
684
+ aws: {
470
685
  type: 'object',
471
686
  properties: {
472
687
  enabled: {
@@ -484,276 +699,6 @@ export const FleetUpdateInputSchema = {
484
699
  },
485
700
  additionalProperties: false
486
701
  };
487
- export const InfrastructureFilterSchema = {
488
- type: 'object',
489
- properties: {
490
- version: {
491
- type: 'integer',
492
- description: 'Version of the infrastructure filter definition. Currently only version 1 is supported.',
493
- default: 1,
494
- example: 1,
495
- enum: [1]
496
- },
497
- provider: {
498
- type: 'array',
499
- items: {
500
- type: 'string'
501
- },
502
- description: 'Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)',
503
- example: 'AWS'
504
- },
505
- region: {
506
- type: 'array',
507
- items: {
508
- type: 'string'
509
- },
510
- description: 'Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
511
- example: 'northamerica'
512
- },
513
- sub_region: {
514
- type: 'array',
515
- items: {
516
- type: 'string'
517
- },
518
- description: 'Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
519
- example: 'west'
520
- },
521
- csp_region: {
522
- type: 'array',
523
- items: {
524
- type: 'string'
525
- },
526
- description: 'Limits selection of cloud regions to this list of canonical provider regions',
527
- example: 'eu-west-1'
528
- },
529
- instance_type: {
530
- type: 'array',
531
- items: {
532
- type: 'string'
533
- },
534
- description: 'Limits selection of instance types to this list. Instance / VM type as defined by the cloud service provider',
535
- example: 'p4d.24xlarge'
536
- },
537
- accelerator_name: {
538
- type: 'array',
539
- items: {
540
- type: 'string'
541
- },
542
- description: "List of Normalized accelerator model names. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field",
543
- example: 'A100'
544
- },
545
- accelerator_manufacturer: {
546
- type: 'array',
547
- items: {
548
- type: 'string'
549
- },
550
- description: "List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer",
551
- example: 'NVIDIA'
552
- },
553
- accelerator_count_min: {
554
- type: 'integer',
555
- minimum: 0,
556
- description: 'Minimum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
557
- example: 1
558
- },
559
- accelerator_count_max: {
560
- type: 'integer',
561
- minimum: 0,
562
- description: 'Maximum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
563
- example: 8
564
- },
565
- accelerator_memory_min: {
566
- type: 'number',
567
- format: 'float',
568
- description: "Minimum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
569
- example: 40
570
- },
571
- accelerator_memory_max: {
572
- type: 'number',
573
- format: 'float',
574
- description: "Maximum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
575
- example: 80
576
- },
577
- memory_min: {
578
- type: 'integer',
579
- minimum: 0,
580
- description: 'Minimum amount of RAM in gibibytes (GiB)',
581
- example: 32
582
- },
583
- memory_max: {
584
- type: 'integer',
585
- minimum: 0,
586
- description: 'Maximum amount of RAM in gibibytes (GiB)',
587
- example: 64
588
- },
589
- vcpu_min: {
590
- type: 'integer',
591
- minimum: 1,
592
- description: 'Minimum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
593
- example: 32
594
- },
595
- vcpu_max: {
596
- type: 'integer',
597
- minimum: 1,
598
- description: 'Maximum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
599
- example: 128
600
- },
601
- storage_total_min: {
602
- type: 'number',
603
- format: 'float',
604
- minimum: 10,
605
- description: 'Minimum total storage in GiB (attached and local)',
606
- example: 128
607
- },
608
- storage_total_max: {
609
- type: 'number',
610
- format: 'float',
611
- minimum: 10,
612
- description: 'Maximum total storage in GiB (attached and local)',
613
- example: 256
614
- },
615
- storage_local_min: {
616
- type: 'number',
617
- format: 'float',
618
- description: 'Minimum volume of directly attached, block-device local storage in gibibytes (GiB)',
619
- example: 24
620
- },
621
- storage_local_max: {
622
- type: 'number',
623
- format: 'float',
624
- description: 'Maximum volume of directly attached, block-device local storage in gibibytes (GiB)',
625
- example: 128
626
- },
627
- price_min: {
628
- type: 'number',
629
- format: 'float',
630
- description: 'Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
631
- example: 10
632
- },
633
- price_max: {
634
- type: 'number',
635
- format: 'float',
636
- description: 'Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
637
- example: 50
638
- }
639
- },
640
- additionalProperties: false
641
- };
642
- export const InfrastructureInstanceSchema = {
643
- type: 'object',
644
- properties: {
645
- sku: {
646
- type: 'string',
647
- description: 'Cloudfleet instance SKU. Has a format of <provider>-<csp_region>-<instance_type>.',
648
- example: 'AWS-EU-WEST-1C-P4D.24XLARGE'
649
- },
650
- provider: {
651
- type: 'string',
652
- description: 'Normalized cloud service provider name. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)',
653
- example: 'AWS'
654
- },
655
- region: {
656
- type: 'string',
657
- description: 'Normalized region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
658
- example: 'europe'
659
- },
660
- sub_region: {
661
- type: 'string',
662
- description: 'Normalized sub-region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
663
- example: 'west'
664
- },
665
- csp_region: {
666
- type: 'string',
667
- description: 'Region as defined by the cloud service provider',
668
- example: 'eu-west-1'
669
- },
670
- csp_zone: {
671
- type: 'string',
672
- description: 'Availability zone as defined by the cloud service provider',
673
- example: 'eu-west-1a'
674
- },
675
- instance_type: {
676
- type: 'string',
677
- description: 'Instance / VM type as defined by the cloud service provider',
678
- example: 'p4d.24xlarge'
679
- },
680
- architecture: {
681
- type: 'string',
682
- description: 'Instance CPU architecture',
683
- example: 'amd64'
684
- },
685
- os: {
686
- type: 'string',
687
- description: 'Instance operating system',
688
- example: 'linux'
689
- },
690
- vcpu: {
691
- type: 'number',
692
- format: 'float',
693
- minimum: 1,
694
- description: 'CPU count as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
695
- example: 96
696
- },
697
- memory: {
698
- type: 'number',
699
- format: 'float',
700
- minimum: 1,
701
- description: 'Total amount of RAM in gibibytes (GiB)',
702
- example: 1152
703
- },
704
- local_storage: {
705
- type: 'number',
706
- format: 'float',
707
- description: 'Volume of directly attached, block-device local storage in gibibytes (GiB)',
708
- example: 8000
709
- },
710
- accelerator_name: {
711
- type: 'string',
712
- description: "Normalized model name of accelerator. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field",
713
- example: 'A100'
714
- },
715
- accelerator_manufacturer: {
716
- type: 'string',
717
- description: "Normalized manufacturer name of accelerator. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer",
718
- example: 'NVIDIA'
719
- },
720
- accelerator_count: {
721
- type: 'integer',
722
- description: 'Number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
723
- example: 8
724
- },
725
- accelerator_memory: {
726
- type: 'number',
727
- format: 'float',
728
- description: "Ammount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
729
- example: 40
730
- },
731
- pods_capacity: {
732
- type: 'number',
733
- format: 'float',
734
- description: 'Maximum number of pods that can be run on this instance type.',
735
- example: 110
736
- },
737
- capacity_type: {
738
- type: 'string',
739
- description: 'Capacity type of the instance. E.g. `on-demand`, `spot`.',
740
- example: 'on-demand'
741
- },
742
- price: {
743
- type: 'number',
744
- format: 'float',
745
- description: 'Price of running the inctance per hour in USD as defined by the cloud service provider',
746
- example: 35.39655
747
- },
748
- available: {
749
- type: 'boolean',
750
- description: 'Whether this instance type is available.',
751
- example: true
752
- }
753
- },
754
- required: ['sku', 'provider', 'region', 'sub_region', 'csp_region', 'csp_zone', 'instance_type', 'architecture', 'os', 'vcpu', 'memory', 'local_storage', 'price'],
755
- additionalProperties: false
756
- };
757
702
  export const InviteSchema = {
758
703
  type: 'object',
759
704
  properties: {
@@ -798,19 +743,15 @@ export const InvoiceSchema = {
798
743
  description: 'Unique identifier of the invoice. UUID v4 string in canonical form',
799
744
  example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
800
745
  },
801
- organizationId: {
802
- type: 'string',
803
- format: 'uuid',
804
- description: 'Unique identifier of the organization. UUID v4 string in canonical form',
805
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
746
+ number: {
747
+ type: 'string'
806
748
  },
807
749
  status: {
808
750
  type: 'string',
809
751
  description: 'Status of the invoice',
810
- example: 'DRAFT',
811
- enum: ['DRAFT', 'COMMITTED', 'VOID']
752
+ example: 'paid'
812
753
  },
813
- amount: {
754
+ total: {
814
755
  type: 'number',
815
756
  format: 'float',
816
757
  description: 'Total amount of the invoice',
@@ -819,377 +760,175 @@ export const InvoiceSchema = {
819
760
  currency: {
820
761
  type: 'string',
821
762
  description: 'Currency of the invoice',
822
- example: 'USD',
823
- 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']
824
- },
825
- creditAdj: {
826
- type: 'number',
827
- format: 'float',
828
- description: 'Total amount of credit adjustments',
829
- example: 0
763
+ example: 'usd'
830
764
  },
831
- refundAdj: {
832
- type: 'number',
833
- format: 'float',
834
- description: 'Total amount of refund adjustments',
835
- example: 0
765
+ created: {
766
+ type: 'string',
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'
836
770
  },
837
- invoiceDate: {
771
+ period_start: {
838
772
  type: 'string',
839
- description: 'Date of the invoice',
840
- example: '2019-01-01T00:00:00.000Z'
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'
841
776
  },
842
- targetDate: {
777
+ period_end: {
843
778
  type: 'string',
844
- description: 'Target date of the invoice',
845
- example: '2019-01-01T00:00:00.000Z'
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'
846
782
  },
847
- invoiceNumber: {
783
+ invoice_pdf: {
784
+ type: 'string'
785
+ }
786
+ },
787
+ required: ['created', 'period_start', 'period_end'],
788
+ additionalProperties: false
789
+ };
790
+ export const MarketplaceListingFilesSchema = {
791
+ type: 'object',
792
+ properties: {
793
+ chartYaml: {
848
794
  type: 'string',
849
- description: 'Number of the invoice',
850
- example: 'INV-0001'
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`
851
800
  },
852
- balance: {
853
- type: 'number',
854
- format: 'float',
855
- description: 'Balance of the invoice',
856
- example: 100
801
+ valuesYaml: {
802
+ type: 'string',
803
+ description: 'Raw values.yaml content from the Helm chart',
804
+ example: `replicaCount: 1
805
+ image:
806
+ repository: nginx
807
+ tag: latest`
857
808
  },
858
- bundleKeys: {
809
+ valuesSchemaJson: {
810
+ type: 'string',
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: {
859
821
  type: 'string',
860
- description: 'Bundle keys of the invoice',
861
- example: 'bundleKey1,bundleKey2'
822
+ description: 'Name of the chart',
823
+ example: 'nginx-ingress'
862
824
  },
863
- credits: {
825
+ versions: {
864
826
  type: 'array',
865
827
  items: {
866
- type: 'object',
867
- properties: {
868
- id: {
869
- type: 'string',
870
- format: 'uuid',
871
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
872
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
873
- },
874
- linkedInvoiceItemId: {
875
- type: 'string',
876
- format: 'uuid',
877
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
878
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
879
- },
880
- productName: {
881
- type: 'string',
882
- description: 'Name of the product',
883
- example: 'Research team'
884
- },
885
- planName: {
886
- type: 'string',
887
- description: 'Name of the plan',
888
- example: 'Plan A'
889
- },
890
- phaseName: {
891
- type: 'string',
892
- description: 'Name of the phase',
893
- example: 'Phase A'
894
- },
895
- usageName: {
896
- type: 'string',
897
- description: 'Name of the usage',
898
- example: 'Usage A'
899
- },
900
- prettyProductName: {
901
- type: 'string',
902
- description: 'Pretty name of the product',
903
- example: 'Research team'
904
- },
905
- prettyPlanName: {
906
- type: 'string',
907
- description: 'Pretty name of the plan',
908
- example: 'Plan A'
909
- },
910
- prettyPhaseName: {
911
- type: 'string',
912
- description: 'Pretty name of the phase',
913
- example: 'Phase A'
914
- },
915
- prettyUsageName: {
916
- type: 'string',
917
- description: 'Pretty name of the usage',
918
- example: 'Usage A'
919
- },
920
- itemType: {
921
- type: 'string',
922
- description: 'Type of the invoice item',
923
- example: 'EXTERNAL_CHARGE',
924
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
925
- },
926
- description: {
927
- type: 'string',
928
- description: 'Description of the invoice item',
929
- example: 'Description of the invoice item'
930
- },
931
- startDate: {
932
- type: 'string',
933
- description: 'Start date of the invoice item',
934
- example: '2019-01-01T00:00:00.000Z'
935
- },
936
- endDate: {
937
- type: 'string',
938
- description: 'End date of the invoice item',
939
- example: '2019-01-01T00:00:00.000Z'
940
- },
941
- amount: {
942
- type: 'number',
943
- format: 'float',
944
- description: 'Amount of the invoice item',
945
- example: 100
946
- },
947
- rate: {
948
- type: 'number',
949
- format: 'float',
950
- description: 'Rate of the invoice item',
951
- example: 100
952
- },
953
- currency: {
954
- type: 'string',
955
- description: 'Currency of the invoice item',
956
- example: 'USD',
957
- 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']
958
- },
959
- quantity: {
960
- type: 'number',
961
- format: 'float',
962
- description: 'Quantity of the invoice item',
963
- example: 1
964
- },
965
- itemDetails: {
966
- type: 'string',
967
- description: 'Details of the invoice item',
968
- example: 'Details of the invoice item'
969
- },
970
- catalogEffectiveDate: {
971
- type: 'string',
972
- description: 'Effective date of the catalog',
973
- example: '2019-01-01T00:00:00.000Z'
974
- },
975
- childItems: {
976
- type: 'array',
977
- items: {
978
- oneOf: [
979
- {
980
- type: 'array'
981
- },
982
- {
983
- type: 'boolean'
984
- },
985
- {
986
- type: 'number'
987
- },
988
- {
989
- type: 'object',
990
- additionalProperties: true
991
- },
992
- {
993
- type: 'string'
994
- }
995
- ]
996
- },
997
- description: 'Child items of the invoice item'
998
- }
999
- },
1000
- additionalProperties: false
828
+ type: 'string',
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'
1001
832
  },
1002
- description: 'Credits of the invoice'
833
+ description: 'Available versions of the chart'
1003
834
  },
1004
- items: {
835
+ version_channels: {
1005
836
  type: 'array',
1006
837
  items: {
1007
- type: 'object',
1008
- properties: {
1009
- id: {
1010
- type: 'string',
1011
- format: 'uuid',
1012
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
1013
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1014
- },
1015
- linkedInvoiceItemId: {
1016
- type: 'string',
1017
- format: 'uuid',
1018
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
1019
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1020
- },
1021
- productName: {
1022
- type: 'string',
1023
- description: 'Name of the product',
1024
- example: 'Research team'
1025
- },
1026
- planName: {
1027
- type: 'string',
1028
- description: 'Name of the plan',
1029
- example: 'Plan A'
1030
- },
1031
- phaseName: {
1032
- type: 'string',
1033
- description: 'Name of the phase',
1034
- example: 'Phase A'
1035
- },
1036
- usageName: {
1037
- type: 'string',
1038
- description: 'Name of the usage',
1039
- example: 'Usage A'
1040
- },
1041
- prettyProductName: {
1042
- type: 'string',
1043
- description: 'Pretty name of the product',
1044
- example: 'Research team'
1045
- },
1046
- prettyPlanName: {
1047
- type: 'string',
1048
- description: 'Pretty name of the plan',
1049
- example: 'Plan A'
1050
- },
1051
- prettyPhaseName: {
1052
- type: 'string',
1053
- description: 'Pretty name of the phase',
1054
- example: 'Phase A'
1055
- },
1056
- prettyUsageName: {
1057
- type: 'string',
1058
- description: 'Pretty name of the usage',
1059
- example: 'Usage A'
1060
- },
1061
- itemType: {
1062
- type: 'string',
1063
- description: 'Type of the invoice item',
1064
- example: 'EXTERNAL_CHARGE',
1065
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
1066
- },
1067
- description: {
1068
- type: 'string',
1069
- description: 'Description of the invoice item',
1070
- example: 'Description of the invoice item'
1071
- },
1072
- startDate: {
1073
- type: 'string',
1074
- description: 'Start date of the invoice item',
1075
- example: '2019-01-01T00:00:00.000Z'
1076
- },
1077
- endDate: {
1078
- type: 'string',
1079
- description: 'End date of the invoice item',
1080
- example: '2019-01-01T00:00:00.000Z'
1081
- },
1082
- amount: {
1083
- type: 'number',
1084
- format: 'float',
1085
- description: 'Amount of the invoice item',
1086
- example: 100
1087
- },
1088
- rate: {
1089
- type: 'number',
1090
- format: 'float',
1091
- description: 'Rate of the invoice item',
1092
- example: 100
1093
- },
1094
- currency: {
1095
- type: 'string',
1096
- description: 'Currency of the invoice item',
1097
- example: 'USD',
1098
- 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']
1099
- },
1100
- quantity: {
1101
- type: 'number',
1102
- format: 'float',
1103
- description: 'Quantity of the invoice item',
1104
- example: 1
1105
- },
1106
- itemDetails: {
1107
- type: 'string',
1108
- description: 'Details of the invoice item',
1109
- example: 'Details of the invoice item'
838
+ type: 'string',
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-]+)*))?$',
840
+ description: 'Version channel pattern',
841
+ example: '1.18.x-cfke.x'
842
+ },
843
+ description: 'Version channels for the chart'
844
+ },
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'
1110
882
  },
1111
- catalogEffectiveDate: {
1112
- type: 'string',
1113
- description: 'Effective date of the catalog',
1114
- example: '2019-01-01T00:00:00.000Z'
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'
1115
895
  },
1116
- childItems: {
1117
- type: 'array',
1118
- items: {
1119
- oneOf: [
1120
- {
1121
- type: 'array'
1122
- },
1123
- {
1124
- type: 'boolean'
1125
- },
1126
- {
1127
- type: 'number'
1128
- },
1129
- {
1130
- type: 'object',
1131
- additionalProperties: true
1132
- },
1133
- {
1134
- type: 'string'
1135
- }
1136
- ]
1137
- },
1138
- description: 'Child items of the invoice item'
1139
- }
896
+ description: 'Chart source URLs',
897
+ example: ['https://github.com/kubernetes/ingress-nginx']
1140
898
  },
1141
- additionalProperties: false
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
+ }
1142
920
  },
1143
- description: 'Items of the invoice'
921
+ required: ['name', 'version'],
922
+ additionalProperties: false,
923
+ description: 'Chart metadata'
1144
924
  }
1145
925
  },
926
+ required: ['name', 'versions', 'version_channels', 'latestVersion'],
1146
927
  additionalProperties: false
1147
928
  };
1148
- export const OrganizationContactInfoSchema = {
929
+ export const OrganizationCreateInputSchema = {
1149
930
  type: 'object',
1150
931
  properties: {
1151
- address1: {
1152
- type: 'string',
1153
- nullable: true,
1154
- description: 'Street address, P.O. box, c/o',
1155
- example: '123 Main St.'
1156
- },
1157
- address2: {
1158
- type: 'string',
1159
- nullable: true,
1160
- description: 'Apartment, suite, unit, building, floor, etc.',
1161
- example: 'Suite 100'
1162
- },
1163
- postalCode: {
1164
- type: 'string',
1165
- nullable: true,
1166
- description: 'Postal code as a string.',
1167
- example: '94105'
1168
- },
1169
- city: {
1170
- type: 'string',
1171
- nullable: true,
1172
- description: 'City or town name.',
1173
- example: 'San Francisco'
1174
- },
1175
- state: {
1176
- type: 'string',
1177
- nullable: true,
1178
- description: 'State, province, or region name.',
1179
- example: 'CA'
1180
- },
1181
- country: {
1182
- type: 'string',
1183
- nullable: true,
1184
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1185
- example: 'US'
1186
- },
1187
- phone: {
1188
- type: 'string',
1189
- nullable: true,
1190
- description: 'Phone number as a string.',
1191
- example: '+1 555 555 5555'
1192
- },
1193
932
  email: {
1194
933
  type: 'string',
1195
934
  format: 'email',
@@ -1205,15 +944,8 @@ export const OrganizationContactInfoSchema = {
1205
944
  type: 'string',
1206
945
  description: 'Last name of the billing contact person.',
1207
946
  example: 'Doe'
1208
- }
1209
- },
1210
- required: ['email', 'first_name', 'last_name'],
1211
- additionalProperties: false
1212
- };
1213
- export const OrganizationCreateInputSchema = {
1214
- type: 'object',
1215
- properties: {
1216
- name: {
947
+ },
948
+ company_name: {
1217
949
  type: 'string',
1218
950
  maxLength: 120,
1219
951
  minLength: 2,
@@ -1221,150 +953,31 @@ export const OrganizationCreateInputSchema = {
1221
953
  description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
1222
954
  example: 'ACME Corp.'
1223
955
  },
1224
- contactInfo: {
1225
- type: 'object',
1226
- properties: {
1227
- address1: {
1228
- type: 'string',
1229
- description: 'Street address, P.O. box, c/o',
1230
- example: '123 Main St.'
1231
- },
1232
- address2: {
1233
- type: 'string',
1234
- description: 'Apartment, suite, unit, building, floor, etc.',
1235
- example: 'Suite 100'
1236
- },
1237
- postalCode: {
1238
- type: 'string',
1239
- description: 'Postal code as a string.',
1240
- example: '94105'
1241
- },
1242
- city: {
1243
- type: 'string',
1244
- description: 'City or town name.',
1245
- example: 'San Francisco'
1246
- },
1247
- state: {
1248
- type: 'string',
1249
- description: 'State, province, or region name.',
1250
- example: 'CA'
1251
- },
1252
- country: {
1253
- type: 'string',
1254
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1255
- example: 'US'
1256
- },
1257
- phone: {
1258
- type: 'string',
1259
- description: 'Phone number as a string.',
1260
- example: '+1 555 555 5555'
1261
- },
1262
- email: {
1263
- type: 'string',
1264
- format: 'email',
1265
- description: 'Email address used for billing as a string.',
1266
- example: 'email@example.com'
1267
- },
1268
- first_name: {
1269
- type: 'string',
1270
- description: 'First name of the billing contact person.',
1271
- example: 'John'
1272
- },
1273
- last_name: {
1274
- type: 'string',
1275
- description: 'Last name of the billing contact person.',
1276
- example: 'Doe'
1277
- }
1278
- },
1279
- required: ['email', 'first_name', 'last_name'],
1280
- additionalProperties: false,
1281
- description: 'Organization contact information and billing address.'
1282
- },
1283
956
  password: {
1284
957
  type: 'string',
1285
958
  minLength: 8,
1286
959
  description: 'Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
1287
960
  }
1288
961
  },
1289
- required: ['name', 'contactInfo', 'password'],
962
+ required: ['email', 'first_name', 'last_name', 'company_name', 'password'],
1290
963
  additionalProperties: false
1291
964
  };
1292
965
  export const OrganizationSchema = {
1293
966
  type: 'object',
1294
967
  properties: {
968
+ id: {
969
+ type: 'string',
970
+ format: 'uuid',
971
+ description: 'Unique identifier of the organization. UUID v4 string in canonical form',
972
+ example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
973
+ },
1295
974
  name: {
1296
975
  type: 'string',
1297
976
  maxLength: 120,
1298
977
  minLength: 2,
1299
- pattern: '^(?!\\s)(?!.*\\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$',
1300
978
  description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
1301
979
  example: 'ACME Corp.'
1302
980
  },
1303
- contactInfo: {
1304
- type: 'object',
1305
- properties: {
1306
- address1: {
1307
- type: 'string',
1308
- description: 'Street address, P.O. box, c/o',
1309
- example: '123 Main St.'
1310
- },
1311
- address2: {
1312
- type: 'string',
1313
- description: 'Apartment, suite, unit, building, floor, etc.',
1314
- example: 'Suite 100'
1315
- },
1316
- postalCode: {
1317
- type: 'string',
1318
- description: 'Postal code as a string.',
1319
- example: '94105'
1320
- },
1321
- city: {
1322
- type: 'string',
1323
- description: 'City or town name.',
1324
- example: 'San Francisco'
1325
- },
1326
- state: {
1327
- type: 'string',
1328
- description: 'State, province, or region name.',
1329
- example: 'CA'
1330
- },
1331
- country: {
1332
- type: 'string',
1333
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1334
- example: 'US'
1335
- },
1336
- phone: {
1337
- type: 'string',
1338
- description: 'Phone number as a string.',
1339
- example: '+1 555 555 5555'
1340
- },
1341
- email: {
1342
- type: 'string',
1343
- format: 'email',
1344
- description: 'Email address used for billing as a string.',
1345
- example: 'email@example.com'
1346
- },
1347
- first_name: {
1348
- type: 'string',
1349
- description: 'First name of the billing contact person.',
1350
- example: 'John'
1351
- },
1352
- last_name: {
1353
- type: 'string',
1354
- description: 'Last name of the billing contact person.',
1355
- example: 'Doe'
1356
- }
1357
- },
1358
- required: ['email', 'first_name', 'last_name'],
1359
- additionalProperties: false,
1360
- description: 'Organization contact information and billing address.'
1361
- },
1362
- id: {
1363
- type: 'string',
1364
- format: 'uuid',
1365
- description: 'Unique identifier of the organization. UUID v4 string in canonical form',
1366
- example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
1367
- },
1368
981
  date_created: {
1369
982
  type: 'string',
1370
983
  format: 'date-time',
@@ -1402,12 +1015,6 @@ export const OrganizationSchema = {
1402
1015
  description: 'Maximum number of fleets that can be created per cluster.',
1403
1016
  example: 999
1404
1017
  },
1405
- managed_fleets_cpu_max: {
1406
- type: 'integer',
1407
- minimum: 0,
1408
- description: 'Maximum number of CPU cores per managed fleet.',
1409
- example: 999
1410
- },
1411
1018
  cluster_tiers: {
1412
1019
  type: 'array',
1413
1020
  items: {
@@ -1434,115 +1041,44 @@ export const OrganizationSchema = {
1434
1041
  id: {
1435
1042
  type: 'string',
1436
1043
  description: 'Id of the control plane version. Used in API calls.',
1437
- example: '1.29.x-cfke.x'
1044
+ example: '1.33.x-cfke.x'
1438
1045
  },
1439
1046
  label: {
1440
1047
  type: 'string',
1441
1048
  description: 'Label of the control plane version. Used in frontent UI.',
1442
- example: '1.29.x (Always latest 1.29 patch version)'
1443
- }
1444
- },
1445
- required: ['id', 'label'],
1446
- additionalProperties: false
1447
- },
1448
- minItems: 1,
1449
- description: 'List of CFKE control plane versions available for the organization.'
1450
- }
1451
- },
1452
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'managed_fleets_cpu_max', 'cluster_tiers', 'regions', 'versions'],
1453
- additionalProperties: false,
1454
- 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.'
1455
- },
1456
- pending_actions: {
1457
- type: 'array',
1458
- items: {
1459
- type: 'string',
1460
- example: 'signup-payment-method',
1461
- enum: ['signup-billing-address', 'signup-payment-method', 'signup-invite-team', 'signup-create-cluster']
1462
- },
1463
- description: 'List of pending actions that the user needs to complete. Used in Cloudfleet console to guide the user through the onboarding process.'
1464
- },
1465
- status: {
1466
- type: 'string',
1467
- description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1468
- enum: ['active', 'closed', 'suspended']
1469
- }
1470
- },
1471
- required: ['name', 'contactInfo', 'id', 'date_created', 'quota', 'pending_actions', 'status'],
1472
- additionalProperties: false
1473
- };
1474
- export const OrganizationUpdateInputSchema = {
1475
- type: 'object',
1476
- properties: {
1477
- name: {
1478
- type: 'string',
1479
- maxLength: 120,
1480
- minLength: 2,
1481
- pattern: '^(?!\\s)(?!.*\\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$',
1482
- description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
1483
- example: 'ACME Corp.'
1484
- },
1485
- contactInfo: {
1486
- type: 'object',
1487
- properties: {
1488
- address1: {
1489
- type: 'string',
1490
- description: 'Street address, P.O. box, c/o',
1491
- example: '123 Main St.'
1492
- },
1493
- address2: {
1494
- type: 'string',
1495
- description: 'Apartment, suite, unit, building, floor, etc.',
1496
- example: 'Suite 100'
1497
- },
1498
- postalCode: {
1499
- type: 'string',
1500
- description: 'Postal code as a string.',
1501
- example: '94105'
1502
- },
1503
- city: {
1504
- type: 'string',
1505
- description: 'City or town name.',
1506
- example: 'San Francisco'
1507
- },
1508
- state: {
1509
- type: 'string',
1510
- description: 'State, province, or region name.',
1511
- example: 'CA'
1512
- },
1513
- country: {
1514
- type: 'string',
1515
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1516
- example: 'US'
1517
- },
1518
- phone: {
1519
- type: 'string',
1520
- description: 'Phone number as a string.',
1521
- example: '+1 555 555 5555'
1522
- },
1523
- email: {
1524
- type: 'string',
1525
- format: 'email',
1526
- description: 'Email address used for billing as a string.',
1527
- example: 'email@example.com'
1049
+ example: '1.33.x (Always latest 1.33 patch version)'
1050
+ }
1051
+ },
1052
+ required: ['id', 'label'],
1053
+ additionalProperties: false
1054
+ },
1055
+ minItems: 1,
1056
+ description: 'List of CFKE control plane versions available for the organization.'
1528
1057
  },
1529
- first_name: {
1530
- type: 'string',
1531
- description: 'First name of the billing contact person.',
1532
- example: 'John'
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
1533
1063
  },
1534
- last_name: {
1535
- type: 'string',
1536
- description: 'Last name of the billing contact person.',
1537
- example: 'Doe'
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
1538
1069
  }
1539
1070
  },
1540
- required: ['email', 'first_name', 'last_name'],
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'],
1541
1072
  additionalProperties: false,
1542
- description: 'Organization contact information and billing address.'
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.'
1074
+ },
1075
+ status: {
1076
+ type: 'string',
1077
+ description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1078
+ enum: ['active', 'closed', 'suspended']
1543
1079
  }
1544
1080
  },
1545
- required: ['contactInfo'],
1081
+ required: ['id', 'date_created', 'quota', 'status'],
1546
1082
  additionalProperties: false
1547
1083
  };
1548
1084
  export const PaymentMethodSchema = {
@@ -1598,6 +1134,273 @@ export const PaymentMethodSchema = {
1598
1134
  required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1599
1135
  additionalProperties: false
1600
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
+ };
1601
1404
  export const TokenCreateInputSchema = {
1602
1405
  type: 'object',
1603
1406
  properties: {
@@ -1676,32 +1479,138 @@ export const TokenUpdateInputSchema = {
1676
1479
  },
1677
1480
  additionalProperties: false
1678
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
+ };
1679
1577
  export const UsageSchema = {
1680
1578
  type: 'object',
1681
1579
  properties: {
1682
- id: {
1580
+ hour: {
1683
1581
  type: 'string',
1684
- format: 'uuid',
1685
- description: 'Unique identifier of the Usage object, equal to subscription id of the task . UUID v4 string in canonical form',
1686
- example: '8897e84c-2ba1-42fa-9d35-964c80a4ff0f'
1582
+ description: 'Hour of the usage',
1583
+ example: '2019-01-01T00:00:00.000Z'
1687
1584
  },
1688
- task_id: {
1585
+ cluster_id: {
1689
1586
  type: 'string',
1690
- format: 'uuid',
1691
- description: 'Unique identifier of the project. UUID v4 string in canonical form',
1692
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1587
+ description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1588
+ example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1693
1589
  },
1694
- unit: {
1590
+ product: {
1695
1591
  type: 'string',
1696
- description: 'Unit of measurement. E.g. GiB, seconds, etc',
1697
- example: 'second'
1592
+ description: 'The product the usage is associated with',
1593
+ example: 'cfke_controlplane'
1594
+ },
1595
+ value: {
1596
+ type: 'number',
1597
+ format: 'float',
1598
+ description: 'Consumption',
1599
+ example: 4
1600
+ },
1601
+ price: {
1602
+ type: 'number',
1603
+ format: 'float',
1604
+ description: 'Price per unit',
1605
+ example: 0.01
1698
1606
  },
1699
- amount: {
1607
+ total: {
1700
1608
  type: 'number',
1701
- format: 'float'
1609
+ format: 'float',
1610
+ description: 'Total cost'
1702
1611
  }
1703
1612
  },
1704
- required: ['id', 'task_id', 'unit', 'amount'],
1613
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1705
1614
  additionalProperties: false
1706
1615
  };
1707
1616
  export const UserCreateInputSchema = {
@@ -1736,7 +1645,7 @@ export const UserCreateInputSchema = {
1736
1645
  password: {
1737
1646
  type: 'string',
1738
1647
  minLength: 8,
1739
- description: 'User password. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
1648
+ description: 'User password. Must be at least 8 characters long.'
1740
1649
  },
1741
1650
  status: {
1742
1651
  type: 'string',
@@ -1800,28 +1709,6 @@ export const UserSchema = {
1800
1709
  format: 'date-time',
1801
1710
  description: 'Creation date of the user. ISO 8601 date string in UTC timezone',
1802
1711
  example: '2023-11-02T16:08:14.338Z'
1803
- },
1804
- cluster_permissions: {
1805
- type: 'array',
1806
- items: {
1807
- type: 'object',
1808
- properties: {
1809
- cluster_id: {
1810
- type: 'string',
1811
- format: 'uuid',
1812
- description: 'Unique identifier of the cluster. UUID v4 string in canonical form',
1813
- example: '035ce46d-44d8-4e58-a8a2-b0192d1c27df'
1814
- },
1815
- permissions: {
1816
- type: 'string',
1817
- description: 'User permissions to access the cluster. Can be `readwrite` or `readonly`.',
1818
- example: 'readwrite',
1819
- enum: ['readwrite', 'readonly']
1820
- }
1821
- },
1822
- required: ['cluster_id', 'permissions'],
1823
- additionalProperties: false
1824
- }
1825
1712
  }
1826
1713
  },
1827
1714
  required: ['email', 'first_name', 'last_name', 'role', 'status', 'id', 'date_created'],