@cloudfleet/sdk 0.0.1-96d5fec → 0.0.1-9835b73

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.
@@ -1,4 +1,275 @@
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
+ first_name: {
62
+ type: 'string',
63
+ description: 'First name of the billing contact person.',
64
+ example: 'John'
65
+ },
66
+ last_name: {
67
+ type: 'string',
68
+ description: 'Last name of the billing contact person.',
69
+ example: 'Doe'
70
+ },
71
+ tax_id: {
72
+ type: 'string',
73
+ nullable: true,
74
+ description: 'Tax ID of the organization.',
75
+ example: 'DE123456789'
76
+ },
77
+ tax_id_type: {
78
+ type: 'string',
79
+ nullable: true,
80
+ description: 'Type of the tax ID.',
81
+ example: 'de_vat',
82
+ 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
+ }
84
+ },
85
+ required: ['email', 'first_name', 'last_name'],
86
+ additionalProperties: false
87
+ };
88
+ export const BillingCreditsSchema = {
89
+ type: 'object',
90
+ properties: {
91
+ id: {
92
+ type: 'string',
93
+ description: 'Generated unique identifier of the promotional code.',
94
+ example: '7kUZnH7nnKUFfvc4NK2KQF'
95
+ },
96
+ date_created: {
97
+ type: 'string',
98
+ format: 'date-time',
99
+ description: 'Date of the credit application. ISO 8601 date string in the UTC timezone.',
100
+ example: '2023-12-20T13:53:32.000Z'
101
+ },
102
+ code: {
103
+ type: 'string',
104
+ description: 'Promotional code used by the customer.',
105
+ example: 'VQ4SCMB'
106
+ },
107
+ description: {
108
+ type: 'string',
109
+ description: 'Description of the promotional code.',
110
+ example: '10% off on all products'
111
+ },
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: {
127
+ type: 'number',
128
+ format: 'float',
129
+ description: 'Value of the promotional code.',
130
+ example: 10
131
+ },
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
+ value_remaining: {
139
+ type: 'number',
140
+ format: 'float',
141
+ description: 'Value of the promotional code.',
142
+ example: 10
143
+ }
144
+ },
145
+ required: ['date_created', 'code', 'type', 'value', 'billing_period'],
146
+ additionalProperties: false
147
+ };
148
+ export const ChartCreateInputSchema = {
149
+ type: 'object',
150
+ properties: {
151
+ values: {
152
+ type: 'string',
153
+ description: 'Values to be used in the chart encoded as a JSON string.'
154
+ },
155
+ version_channel: {
156
+ type: 'string',
157
+ 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-]+)*))?$',
158
+ description: 'Desired version range or channel for the chart.',
159
+ example: '2.x.x-cfke.x'
160
+ },
161
+ name: {
162
+ type: 'string',
163
+ maxLength: 63,
164
+ minLength: 1,
165
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
166
+ description: 'Unique identifier of the chart deployment aka name of the helm release.',
167
+ example: 'postgresql-0'
168
+ },
169
+ namespace: {
170
+ type: 'string',
171
+ maxLength: 63,
172
+ minLength: 1,
173
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
174
+ description: 'Namespace of the chart deployment',
175
+ example: 'default'
176
+ },
177
+ chart: {
178
+ type: 'string',
179
+ maxLength: 63,
180
+ minLength: 1,
181
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
182
+ description: 'Name of the chart listing',
183
+ example: 'postgresql'
184
+ }
185
+ },
186
+ required: ['values', 'version_channel', 'name', 'namespace', 'chart'],
187
+ additionalProperties: false
188
+ };
189
+ export const ChartSchema = {
190
+ type: 'object',
191
+ properties: {
192
+ values: {
193
+ type: 'string',
194
+ description: 'Values to be used in the chart encoded as a JSON string.'
195
+ },
196
+ version_channel: {
197
+ type: 'string',
198
+ 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-]+)*))?$',
199
+ description: 'Desired version range or channel for the chart.',
200
+ example: '2.x.x-cfke.x'
201
+ },
202
+ name: {
203
+ type: 'string',
204
+ maxLength: 63,
205
+ minLength: 1,
206
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
207
+ description: 'Unique identifier of the chart deployment aka name of the helm release.',
208
+ example: 'postgresql-0'
209
+ },
210
+ namespace: {
211
+ type: 'string',
212
+ maxLength: 63,
213
+ minLength: 1,
214
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
215
+ description: 'Namespace of the chart deployment',
216
+ example: 'default'
217
+ },
218
+ chart: {
219
+ type: 'string',
220
+ maxLength: 63,
221
+ minLength: 1,
222
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
223
+ description: 'Name of the chart listing',
224
+ example: 'postgresql'
225
+ },
226
+ status: {
227
+ type: 'string',
228
+ description: 'Status of the chart deployment.',
229
+ example: 'active',
230
+ enum: ['InstallSucceeded', 'InstallFailed', 'UpgradeSucceeded', 'UpgradeFailed', 'TestSucceeded', 'TestFailed', 'RollbackSucceeded', 'RollbackFailed', 'UninstallSucceeded', 'UninstallFailed', 'ArtifactFailed', 'DependencyNotReady', 'Progressing', 'SourceNotReady']
231
+ },
232
+ version_current: {
233
+ type: 'string',
234
+ description: 'Current version of the chart deployment.',
235
+ example: '2.1.33-cfke.11'
236
+ },
237
+ created_at: {
238
+ type: 'string',
239
+ description: 'Creation date and time of the chart deployment.',
240
+ example: '2024-09-12T09:11:27Z'
241
+ },
242
+ updated_at: {
243
+ type: 'string',
244
+ description: 'Last update date and time of the chart deployment.',
245
+ example: '2024-09-12T09:11:27Z'
246
+ },
247
+ ready: {
248
+ type: 'boolean',
249
+ description: 'Indicates if the chart deployment is ready to be used.',
250
+ example: true
251
+ }
252
+ },
253
+ required: ['values', 'version_channel', 'name', 'namespace', 'chart', 'status', 'version_current', 'created_at', 'updated_at', 'ready'],
254
+ additionalProperties: false
255
+ };
256
+ export const ChartUpdateInputSchema = {
257
+ type: 'object',
258
+ properties: {
259
+ values: {
260
+ type: 'string',
261
+ description: 'Values to be used in the chart encoded as a JSON string.'
262
+ },
263
+ version_channel: {
264
+ type: 'string',
265
+ 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-]+)*))?$',
266
+ description: 'Desired version range or channel for the chart.',
267
+ example: '2.x.x-cfke.x'
268
+ }
269
+ },
270
+ required: ['values', 'version_channel'],
271
+ additionalProperties: false
272
+ };
2
273
  export const ClusterCreateInputSchema = {
3
274
  type: 'object',
4
275
  properties: {
@@ -10,19 +281,19 @@ export const ClusterCreateInputSchema = {
10
281
  description: 'Name of the cluster.',
11
282
  example: 'production-cluster'
12
283
  },
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
284
  tier: {
21
285
  type: 'string',
22
286
  description: 'Tier of the cluster.',
23
287
  example: 'pro',
24
288
  enum: ['basic', 'pro']
25
289
  },
290
+ region: {
291
+ 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.',
293
+ default: 'staging',
294
+ example: 'northamerica-central-1',
295
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a']
296
+ },
26
297
  version_channel: {
27
298
  type: 'string',
28
299
  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-]+)*))?$',
@@ -81,9 +352,32 @@ MIIC0DCCAbigAwIBAgI...`
81
352
  required: ['kubernetes', 'tailscale', 'containerd'],
82
353
  additionalProperties: false,
83
354
  description: 'Versions of the different components of the cluster.'
355
+ },
356
+ third_party_api_access_config: {
357
+ type: 'object',
358
+ properties: {
359
+ metadata_url: {
360
+ type: 'string',
361
+ description: 'Kubernetes metadata server.',
362
+ example: 'https://10.31.64.4'
363
+ },
364
+ aws_role_arn: {
365
+ type: 'string',
366
+ description: 'AWS Role ARN.',
367
+ example: 'arn:aws:iam::891376988828:role/0371f8fd-e164-48e1-b9e7-c3bdc3b4f403'
368
+ },
369
+ gcp_workload_identity_provider: {
370
+ type: 'string',
371
+ description: 'GCP Workload Identity provider.',
372
+ example: '//iam.googleapis.com/projects/89014267864/locations/global/workloadIdentityPools/cfke/providers/oidc'
373
+ }
374
+ },
375
+ required: ['metadata_url', 'aws_role_arn', 'gcp_workload_identity_provider'],
376
+ additionalProperties: false,
377
+ description: "OIDC Information for hosts to access to third party API's."
84
378
  }
85
379
  },
86
- required: ['certificate_authority', 'endpoint', 'auth_key', 'bootstrap_token', 'versions'],
380
+ required: ['certificate_authority', 'endpoint', 'auth_key', 'bootstrap_token', 'versions', 'third_party_api_access_config'],
87
381
  additionalProperties: false
88
382
  };
89
383
  export const ClusterSchema = {
@@ -97,19 +391,19 @@ export const ClusterSchema = {
97
391
  description: 'Name of the cluster.',
98
392
  example: 'production-cluster'
99
393
  },
100
- region: {
101
- type: 'string',
102
- description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
103
- default: 'staging',
104
- example: 'northamerica-central-1',
105
- enum: ['staging', 'northamerica-central-1']
106
- },
107
394
  tier: {
108
395
  type: 'string',
109
396
  description: 'Tier of the cluster.',
110
397
  example: 'pro',
111
398
  enum: ['basic', 'pro']
112
399
  },
400
+ region: {
401
+ type: 'string',
402
+ description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a". This field can not be updated after creation.',
403
+ default: 'staging',
404
+ example: 'northamerica-central-1',
405
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a']
406
+ },
113
407
  version_channel: {
114
408
  type: 'string',
115
409
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
@@ -184,6 +478,12 @@ export const ClusterUpdateInputSchema = {
184
478
  description: 'Name of the cluster.',
185
479
  example: 'production-cluster'
186
480
  },
481
+ tier: {
482
+ type: 'string',
483
+ description: 'Tier of the cluster.',
484
+ example: 'pro',
485
+ enum: ['basic', 'pro']
486
+ },
187
487
  version_channel: {
188
488
  type: 'string',
189
489
  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-]+)*))?$',
@@ -191,6 +491,7 @@ export const ClusterUpdateInputSchema = {
191
491
  example: '1.29.x-cfke.x'
192
492
  }
193
493
  },
494
+ required: ['tier'],
194
495
  additionalProperties: false
195
496
  };
196
497
  export const FleetCreateInputSchema = {
@@ -226,34 +527,19 @@ export const FleetCreateInputSchema = {
226
527
  additionalProperties: false
227
528
  },
228
529
  hetzner: {
229
- oneOf: [
230
- {
231
- type: 'object',
232
- properties: {
233
- enabled: {
234
- type: 'boolean',
235
- default: true
236
- },
237
- apiKey: {
238
- type: 'string'
239
- }
240
- },
241
- additionalProperties: false
530
+ type: 'object',
531
+ properties: {
532
+ enabled: {
533
+ type: 'boolean',
534
+ default: true
242
535
  },
243
- {
244
- type: 'object',
245
- properties: {
246
- apiKey: {
247
- type: 'string'
248
- },
249
- enabled: {
250
- type: 'boolean',
251
- default: true
252
- }
253
- },
254
- additionalProperties: false
536
+ apiKey: {
537
+ type: 'string',
538
+ description: 'Hetzner Cloud API key with read / write access'
255
539
  }
256
- ]
540
+ },
541
+ required: ['apiKey'],
542
+ additionalProperties: false
257
543
  },
258
544
  aws: {
259
545
  type: 'object',
@@ -277,14 +563,9 @@ export const FleetCreateInputSchema = {
277
563
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
278
564
  description: 'Unique identifier of the kubernetes fleet.',
279
565
  example: 'new-clouds-fleet'
280
- },
281
- type: {
282
- type: 'string',
283
- description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
284
- enum: ['managed', 'connected']
285
566
  }
286
567
  },
287
- required: ['id', 'type'],
568
+ required: ['id'],
288
569
  additionalProperties: false
289
570
  };
290
571
  export const FleetSchema = {
@@ -320,34 +601,19 @@ export const FleetSchema = {
320
601
  additionalProperties: false
321
602
  },
322
603
  hetzner: {
323
- oneOf: [
324
- {
325
- type: 'object',
326
- properties: {
327
- enabled: {
328
- type: 'boolean',
329
- default: true
330
- },
331
- apiKey: {
332
- type: 'string'
333
- }
334
- },
335
- additionalProperties: false
604
+ type: 'object',
605
+ properties: {
606
+ enabled: {
607
+ type: 'boolean',
608
+ default: true
336
609
  },
337
- {
338
- type: 'object',
339
- properties: {
340
- apiKey: {
341
- type: 'string'
342
- },
343
- enabled: {
344
- type: 'boolean',
345
- default: true
346
- }
347
- },
348
- additionalProperties: false
610
+ apiKey: {
611
+ type: 'string',
612
+ description: 'Hetzner Cloud API key with read / write access'
349
613
  }
350
- ]
614
+ },
615
+ required: ['apiKey'],
616
+ additionalProperties: false
351
617
  },
352
618
  aws: {
353
619
  type: 'object',
@@ -371,14 +637,9 @@ export const FleetSchema = {
371
637
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
372
638
  description: 'Unique identifier of the kubernetes fleet.',
373
639
  example: 'new-clouds-fleet'
374
- },
375
- type: {
376
- type: 'string',
377
- description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
378
- enum: ['managed', 'connected']
379
640
  }
380
641
  },
381
- required: ['id', 'type'],
642
+ required: ['id'],
382
643
  additionalProperties: false
383
644
  };
384
645
  export const FleetUpdateInputSchema = {
@@ -414,34 +675,19 @@ export const FleetUpdateInputSchema = {
414
675
  additionalProperties: false
415
676
  },
416
677
  hetzner: {
417
- oneOf: [
418
- {
419
- type: 'object',
420
- properties: {
421
- enabled: {
422
- type: 'boolean',
423
- default: true
424
- },
425
- apiKey: {
426
- type: 'string'
427
- }
428
- },
429
- additionalProperties: false
678
+ type: 'object',
679
+ properties: {
680
+ enabled: {
681
+ type: 'boolean',
682
+ default: true
430
683
  },
431
- {
432
- type: 'object',
433
- properties: {
434
- apiKey: {
435
- type: 'string'
436
- },
437
- enabled: {
438
- type: 'boolean',
439
- default: true
440
- }
441
- },
442
- additionalProperties: false
684
+ apiKey: {
685
+ type: 'string',
686
+ description: 'Hetzner Cloud API key with read / write access'
443
687
  }
444
- ]
688
+ },
689
+ required: ['apiKey'],
690
+ additionalProperties: false
445
691
  },
446
692
  aws: {
447
693
  type: 'object',
@@ -461,276 +707,6 @@ export const FleetUpdateInputSchema = {
461
707
  },
462
708
  additionalProperties: false
463
709
  };
464
- export const InfrastructureFilterSchema = {
465
- type: 'object',
466
- properties: {
467
- version: {
468
- type: 'integer',
469
- description: 'Version of the infrastructure filter definition. Currently only version 1 is supported.',
470
- default: 1,
471
- example: 1,
472
- enum: [1]
473
- },
474
- provider: {
475
- type: 'array',
476
- items: {
477
- type: 'string'
478
- },
479
- 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/)',
480
- example: 'AWS'
481
- },
482
- region: {
483
- type: 'array',
484
- items: {
485
- type: 'string'
486
- },
487
- 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/)',
488
- example: 'northamerica'
489
- },
490
- sub_region: {
491
- type: 'array',
492
- items: {
493
- type: 'string'
494
- },
495
- 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/)',
496
- example: 'west'
497
- },
498
- csp_region: {
499
- type: 'array',
500
- items: {
501
- type: 'string'
502
- },
503
- description: 'Limits selection of cloud regions to this list of canonical provider regions',
504
- example: 'eu-west-1'
505
- },
506
- instance_type: {
507
- type: 'array',
508
- items: {
509
- type: 'string'
510
- },
511
- description: 'Limits selection of instance types to this list. Instance / VM type as defined by the cloud service provider',
512
- example: 'p4d.24xlarge'
513
- },
514
- accelerator_name: {
515
- type: 'array',
516
- items: {
517
- type: 'string'
518
- },
519
- 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",
520
- example: 'A100'
521
- },
522
- accelerator_manufacturer: {
523
- type: 'array',
524
- items: {
525
- type: 'string'
526
- },
527
- description: "List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer",
528
- example: 'NVIDIA'
529
- },
530
- accelerator_count_min: {
531
- type: 'integer',
532
- minimum: 0,
533
- 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.',
534
- example: 1
535
- },
536
- accelerator_count_max: {
537
- type: 'integer',
538
- minimum: 0,
539
- 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.',
540
- example: 8
541
- },
542
- accelerator_memory_min: {
543
- type: 'number',
544
- format: 'float',
545
- 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",
546
- example: 40
547
- },
548
- accelerator_memory_max: {
549
- type: 'number',
550
- format: 'float',
551
- 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",
552
- example: 80
553
- },
554
- memory_min: {
555
- type: 'integer',
556
- minimum: 0,
557
- description: 'Minimum amount of RAM in gibibytes (GiB)',
558
- example: 32
559
- },
560
- memory_max: {
561
- type: 'integer',
562
- minimum: 0,
563
- description: 'Maximum amount of RAM in gibibytes (GiB)',
564
- example: 64
565
- },
566
- vcpu_min: {
567
- type: 'integer',
568
- minimum: 1,
569
- 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.',
570
- example: 32
571
- },
572
- vcpu_max: {
573
- type: 'integer',
574
- minimum: 1,
575
- 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.',
576
- example: 128
577
- },
578
- storage_total_min: {
579
- type: 'number',
580
- format: 'float',
581
- minimum: 10,
582
- description: 'Minimum total storage in GiB (attached and local)',
583
- example: 128
584
- },
585
- storage_total_max: {
586
- type: 'number',
587
- format: 'float',
588
- minimum: 10,
589
- description: 'Maximum total storage in GiB (attached and local)',
590
- example: 256
591
- },
592
- storage_local_min: {
593
- type: 'number',
594
- format: 'float',
595
- description: 'Minimum volume of directly attached, block-device local storage in gibibytes (GiB)',
596
- example: 24
597
- },
598
- storage_local_max: {
599
- type: 'number',
600
- format: 'float',
601
- description: 'Maximum volume of directly attached, block-device local storage in gibibytes (GiB)',
602
- example: 128
603
- },
604
- price_min: {
605
- type: 'number',
606
- format: 'float',
607
- description: 'Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
608
- example: 10
609
- },
610
- price_max: {
611
- type: 'number',
612
- format: 'float',
613
- description: 'Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
614
- example: 50
615
- }
616
- },
617
- additionalProperties: false
618
- };
619
- export const InfrastructureInstanceSchema = {
620
- type: 'object',
621
- properties: {
622
- sku: {
623
- type: 'string',
624
- description: 'Cloudfleet instance SKU. Has a format of <provider>-<csp_region>-<instance_type>.',
625
- example: 'AWS-EU-WEST-1C-P4D.24XLARGE'
626
- },
627
- provider: {
628
- type: 'string',
629
- description: 'Normalized cloud service provider name. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)',
630
- example: 'AWS'
631
- },
632
- region: {
633
- type: 'string',
634
- 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/)',
635
- example: 'europe'
636
- },
637
- sub_region: {
638
- type: 'string',
639
- 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/)',
640
- example: 'west'
641
- },
642
- csp_region: {
643
- type: 'string',
644
- description: 'Region as defined by the cloud service provider',
645
- example: 'eu-west-1'
646
- },
647
- csp_zone: {
648
- type: 'string',
649
- description: 'Availability zone as defined by the cloud service provider',
650
- example: 'eu-west-1a'
651
- },
652
- instance_type: {
653
- type: 'string',
654
- description: 'Instance / VM type as defined by the cloud service provider',
655
- example: 'p4d.24xlarge'
656
- },
657
- architecture: {
658
- type: 'string',
659
- description: 'Instance CPU architecture',
660
- example: 'amd64'
661
- },
662
- os: {
663
- type: 'string',
664
- description: 'Instance operating system',
665
- example: 'linux'
666
- },
667
- vcpu: {
668
- type: 'number',
669
- format: 'float',
670
- minimum: 1,
671
- 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.',
672
- example: 96
673
- },
674
- memory: {
675
- type: 'number',
676
- format: 'float',
677
- minimum: 1,
678
- description: 'Total amount of RAM in gibibytes (GiB)',
679
- example: 1152
680
- },
681
- local_storage: {
682
- type: 'number',
683
- format: 'float',
684
- description: 'Volume of directly attached, block-device local storage in gibibytes (GiB)',
685
- example: 8000
686
- },
687
- accelerator_name: {
688
- type: 'string',
689
- 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",
690
- example: 'A100'
691
- },
692
- accelerator_manufacturer: {
693
- type: 'string',
694
- description: "Normalized manufacturer name of accelerator. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer",
695
- example: 'NVIDIA'
696
- },
697
- accelerator_count: {
698
- type: 'integer',
699
- 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.',
700
- example: 8
701
- },
702
- accelerator_memory: {
703
- type: 'number',
704
- format: 'float',
705
- 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",
706
- example: 40
707
- },
708
- pods_capacity: {
709
- type: 'number',
710
- format: 'float',
711
- description: 'Maximum number of pods that can be run on this instance type.',
712
- example: 110
713
- },
714
- capacity_type: {
715
- type: 'string',
716
- description: 'Capacity type of the instance. E.g. `on-demand`, `spot`.',
717
- example: 'on-demand'
718
- },
719
- price: {
720
- type: 'number',
721
- format: 'float',
722
- description: 'Price of running the inctance per hour in USD as defined by the cloud service provider',
723
- example: 35.39655
724
- },
725
- available: {
726
- type: 'boolean',
727
- description: 'Whether this instance type is available.',
728
- example: true
729
- }
730
- },
731
- required: ['sku', 'provider', 'region', 'sub_region', 'csp_region', 'csp_zone', 'instance_type', 'architecture', 'os', 'vcpu', 'memory', 'local_storage', 'price'],
732
- additionalProperties: false
733
- };
734
710
  export const InviteSchema = {
735
711
  type: 'object',
736
712
  properties: {
@@ -1122,51 +1098,92 @@ export const InvoiceSchema = {
1122
1098
  },
1123
1099
  additionalProperties: false
1124
1100
  };
1125
- export const OrganizationContactInfoSchema = {
1101
+ export const MarketplaceListingSchema = {
1126
1102
  type: 'object',
1127
1103
  properties: {
1128
- address1: {
1104
+ id: {
1129
1105
  type: 'string',
1130
- nullable: true,
1131
- description: 'Street address, P.O. box, c/o',
1132
- example: '123 Main St.'
1106
+ maxLength: 63,
1107
+ minLength: 1,
1108
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
1109
+ description: 'Id of the chart listing',
1110
+ example: 'portworx-enterprise-disaster-recovery-baremetal'
1133
1111
  },
1134
- address2: {
1112
+ name: {
1135
1113
  type: 'string',
1136
- nullable: true,
1137
- description: 'Apartment, suite, unit, building, floor, etc.',
1138
- example: 'Suite 100'
1114
+ description: 'Name of the chart listing',
1115
+ example: 'Portworx Enterprise + Disaster Recovery - Baremetal'
1139
1116
  },
1140
- postalCode: {
1117
+ developer: {
1141
1118
  type: 'string',
1142
- nullable: true,
1143
- description: 'Postal code as a string.',
1144
- example: '94105'
1119
+ description: 'Author of the chart listing',
1120
+ example: 'Portworx'
1145
1121
  },
1146
- city: {
1122
+ description: {
1147
1123
  type: 'string',
1148
- nullable: true,
1149
- description: 'City or town name.',
1150
- example: 'San Francisco'
1124
+ description: 'Short description of the chart listing',
1125
+ example: 'Run Kubernetes with unmatched scalability, availability, and self-service access to any storage'
1151
1126
  },
1152
- state: {
1127
+ logoUrl: {
1153
1128
  type: 'string',
1154
- nullable: true,
1155
- description: 'State, province, or region name.',
1156
- example: 'CA'
1129
+ description: 'Logo of the chart listing',
1130
+ example: 'https://portworx.com/wp-content/themes/portworx/assets/images/header/portworx-logo.png'
1157
1131
  },
1158
- country: {
1132
+ longDescription: {
1159
1133
  type: 'string',
1160
- nullable: true,
1161
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1162
- example: 'US'
1134
+ description: 'Long description of the chart listing',
1135
+ example: 'Portworx-Enterprise is the complete multi-cloud ready Kubernetes storage platform for running mission-critical apps in production....'
1163
1136
  },
1164
- phone: {
1165
- type: 'string',
1166
- nullable: true,
1167
- description: 'Phone number as a string.',
1168
- example: '+1 555 555 5555'
1137
+ categories: {
1138
+ type: 'array',
1139
+ items: {
1140
+ type: 'string',
1141
+ example: 'AI & Machine Learning'
1142
+ },
1143
+ description: 'Tags of the chart'
1144
+ },
1145
+ version_channels: {
1146
+ type: 'array',
1147
+ items: {
1148
+ type: 'string',
1149
+ 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-]+)*))?$',
1150
+ description: 'Version of the chart.',
1151
+ example: '2.x.x-cfke.x'
1152
+ }
1169
1153
  },
1154
+ value_schemas: {
1155
+ type: 'array',
1156
+ items: {
1157
+ type: 'object',
1158
+ properties: {
1159
+ version: {
1160
+ type: 'string',
1161
+ 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-]+)*))?$',
1162
+ description: 'Version of the chart.',
1163
+ example: '2.1.1-cfke.123'
1164
+ },
1165
+ schema: {
1166
+ type: 'string',
1167
+ description: 'Schema of the chart values. JSON Schema as string'
1168
+ },
1169
+ placeholder: {
1170
+ type: 'string',
1171
+ description: 'Schema of the chart values',
1172
+ example: `foo: 1
1173
+ bar: example`
1174
+ }
1175
+ },
1176
+ required: ['version', 'schema', 'placeholder'],
1177
+ additionalProperties: false
1178
+ }
1179
+ }
1180
+ },
1181
+ required: ['id', 'name', 'developer', 'description', 'logoUrl', 'longDescription', 'categories', 'version_channels', 'value_schemas'],
1182
+ additionalProperties: false
1183
+ };
1184
+ export const OrganizationCreateInputSchema = {
1185
+ type: 'object',
1186
+ properties: {
1170
1187
  email: {
1171
1188
  type: 'string',
1172
1189
  format: 'email',
@@ -1182,15 +1199,8 @@ export const OrganizationContactInfoSchema = {
1182
1199
  type: 'string',
1183
1200
  description: 'Last name of the billing contact person.',
1184
1201
  example: 'Doe'
1185
- }
1186
- },
1187
- required: ['email', 'first_name', 'last_name'],
1188
- additionalProperties: false
1189
- };
1190
- export const OrganizationCreateInputSchema = {
1191
- type: 'object',
1192
- properties: {
1193
- name: {
1202
+ },
1203
+ company_name: {
1194
1204
  type: 'string',
1195
1205
  maxLength: 120,
1196
1206
  minLength: 2,
@@ -1198,150 +1208,31 @@ export const OrganizationCreateInputSchema = {
1198
1208
  description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
1199
1209
  example: 'ACME Corp.'
1200
1210
  },
1201
- contactInfo: {
1202
- type: 'object',
1203
- properties: {
1204
- address1: {
1205
- type: 'string',
1206
- description: 'Street address, P.O. box, c/o',
1207
- example: '123 Main St.'
1208
- },
1209
- address2: {
1210
- type: 'string',
1211
- description: 'Apartment, suite, unit, building, floor, etc.',
1212
- example: 'Suite 100'
1213
- },
1214
- postalCode: {
1215
- type: 'string',
1216
- description: 'Postal code as a string.',
1217
- example: '94105'
1218
- },
1219
- city: {
1220
- type: 'string',
1221
- description: 'City or town name.',
1222
- example: 'San Francisco'
1223
- },
1224
- state: {
1225
- type: 'string',
1226
- description: 'State, province, or region name.',
1227
- example: 'CA'
1228
- },
1229
- country: {
1230
- type: 'string',
1231
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1232
- example: 'US'
1233
- },
1234
- phone: {
1235
- type: 'string',
1236
- description: 'Phone number as a string.',
1237
- example: '+1 555 555 5555'
1238
- },
1239
- email: {
1240
- type: 'string',
1241
- format: 'email',
1242
- description: 'Email address used for billing as a string.',
1243
- example: 'email@example.com'
1244
- },
1245
- first_name: {
1246
- type: 'string',
1247
- description: 'First name of the billing contact person.',
1248
- example: 'John'
1249
- },
1250
- last_name: {
1251
- type: 'string',
1252
- description: 'Last name of the billing contact person.',
1253
- example: 'Doe'
1254
- }
1255
- },
1256
- required: ['email', 'first_name', 'last_name'],
1257
- additionalProperties: false,
1258
- description: 'Organization contact information and billing address.'
1259
- },
1260
1211
  password: {
1261
1212
  type: 'string',
1262
1213
  minLength: 8,
1263
1214
  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.'
1264
1215
  }
1265
1216
  },
1266
- required: ['name', 'contactInfo', 'password'],
1217
+ required: ['email', 'first_name', 'last_name', 'company_name', 'password'],
1267
1218
  additionalProperties: false
1268
1219
  };
1269
1220
  export const OrganizationSchema = {
1270
1221
  type: 'object',
1271
1222
  properties: {
1223
+ id: {
1224
+ type: 'string',
1225
+ format: 'uuid',
1226
+ description: 'Unique identifier of the organization. UUID v4 string in canonical form',
1227
+ example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
1228
+ },
1272
1229
  name: {
1273
1230
  type: 'string',
1274
1231
  maxLength: 120,
1275
1232
  minLength: 2,
1276
- 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,}$',
1277
1233
  description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
1278
1234
  example: 'ACME Corp.'
1279
1235
  },
1280
- contactInfo: {
1281
- type: 'object',
1282
- properties: {
1283
- address1: {
1284
- type: 'string',
1285
- description: 'Street address, P.O. box, c/o',
1286
- example: '123 Main St.'
1287
- },
1288
- address2: {
1289
- type: 'string',
1290
- description: 'Apartment, suite, unit, building, floor, etc.',
1291
- example: 'Suite 100'
1292
- },
1293
- postalCode: {
1294
- type: 'string',
1295
- description: 'Postal code as a string.',
1296
- example: '94105'
1297
- },
1298
- city: {
1299
- type: 'string',
1300
- description: 'City or town name.',
1301
- example: 'San Francisco'
1302
- },
1303
- state: {
1304
- type: 'string',
1305
- description: 'State, province, or region name.',
1306
- example: 'CA'
1307
- },
1308
- country: {
1309
- type: 'string',
1310
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1311
- example: 'US'
1312
- },
1313
- phone: {
1314
- type: 'string',
1315
- description: 'Phone number as a string.',
1316
- example: '+1 555 555 5555'
1317
- },
1318
- email: {
1319
- type: 'string',
1320
- format: 'email',
1321
- description: 'Email address used for billing as a string.',
1322
- example: 'email@example.com'
1323
- },
1324
- first_name: {
1325
- type: 'string',
1326
- description: 'First name of the billing contact person.',
1327
- example: 'John'
1328
- },
1329
- last_name: {
1330
- type: 'string',
1331
- description: 'Last name of the billing contact person.',
1332
- example: 'Doe'
1333
- }
1334
- },
1335
- required: ['email', 'first_name', 'last_name'],
1336
- additionalProperties: false,
1337
- description: 'Organization contact information and billing address.'
1338
- },
1339
- id: {
1340
- type: 'string',
1341
- format: 'uuid',
1342
- description: 'Unique identifier of the organization. UUID v4 string in canonical form',
1343
- example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
1344
- },
1345
1236
  date_created: {
1346
1237
  type: 'string',
1347
1238
  format: 'date-time',
@@ -1379,12 +1270,6 @@ export const OrganizationSchema = {
1379
1270
  description: 'Maximum number of fleets that can be created per cluster.',
1380
1271
  example: 999
1381
1272
  },
1382
- managed_fleets_cpu_max: {
1383
- type: 'integer',
1384
- minimum: 0,
1385
- description: 'Maximum number of CPU cores per managed fleet.',
1386
- example: 999
1387
- },
1388
1273
  cluster_tiers: {
1389
1274
  type: 'array',
1390
1275
  items: {
@@ -1426,100 +1311,17 @@ export const OrganizationSchema = {
1426
1311
  description: 'List of CFKE control plane versions available for the organization.'
1427
1312
  }
1428
1313
  },
1429
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'managed_fleets_cpu_max', 'cluster_tiers', 'regions', 'versions'],
1314
+ required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions'],
1430
1315
  additionalProperties: false,
1431
1316
  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.'
1432
1317
  },
1433
- pending_actions: {
1434
- type: 'array',
1435
- items: {
1436
- type: 'string',
1437
- example: 'signup-payment-method',
1438
- enum: ['signup-billing-address', 'signup-payment-method', 'signup-invite-team', 'signup-create-cluster']
1439
- },
1440
- description: 'List of pending actions that the user needs to complete. Used in Cloudfleet console to guide the user through the onboarding process.'
1441
- },
1442
1318
  status: {
1443
1319
  type: 'string',
1444
1320
  description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1445
1321
  enum: ['active', 'closed', 'suspended']
1446
1322
  }
1447
1323
  },
1448
- required: ['name', 'contactInfo', 'id', 'date_created', 'quota', 'pending_actions', 'status'],
1449
- additionalProperties: false
1450
- };
1451
- export const OrganizationUpdateInputSchema = {
1452
- type: 'object',
1453
- properties: {
1454
- name: {
1455
- type: 'string',
1456
- maxLength: 120,
1457
- minLength: 2,
1458
- 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,}$',
1459
- description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
1460
- example: 'ACME Corp.'
1461
- },
1462
- contactInfo: {
1463
- type: 'object',
1464
- properties: {
1465
- address1: {
1466
- type: 'string',
1467
- description: 'Street address, P.O. box, c/o',
1468
- example: '123 Main St.'
1469
- },
1470
- address2: {
1471
- type: 'string',
1472
- description: 'Apartment, suite, unit, building, floor, etc.',
1473
- example: 'Suite 100'
1474
- },
1475
- postalCode: {
1476
- type: 'string',
1477
- description: 'Postal code as a string.',
1478
- example: '94105'
1479
- },
1480
- city: {
1481
- type: 'string',
1482
- description: 'City or town name.',
1483
- example: 'San Francisco'
1484
- },
1485
- state: {
1486
- type: 'string',
1487
- description: 'State, province, or region name.',
1488
- example: 'CA'
1489
- },
1490
- country: {
1491
- type: 'string',
1492
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1493
- example: 'US'
1494
- },
1495
- phone: {
1496
- type: 'string',
1497
- description: 'Phone number as a string.',
1498
- example: '+1 555 555 5555'
1499
- },
1500
- email: {
1501
- type: 'string',
1502
- format: 'email',
1503
- description: 'Email address used for billing as a string.',
1504
- example: 'email@example.com'
1505
- },
1506
- first_name: {
1507
- type: 'string',
1508
- description: 'First name of the billing contact person.',
1509
- example: 'John'
1510
- },
1511
- last_name: {
1512
- type: 'string',
1513
- description: 'Last name of the billing contact person.',
1514
- example: 'Doe'
1515
- }
1516
- },
1517
- required: ['email', 'first_name', 'last_name'],
1518
- additionalProperties: false,
1519
- description: 'Organization contact information and billing address.'
1520
- }
1521
- },
1522
- required: ['contactInfo'],
1324
+ required: ['id', 'date_created', 'quota', 'status'],
1523
1325
  additionalProperties: false
1524
1326
  };
1525
1327
  export const PaymentMethodSchema = {
@@ -1656,29 +1458,97 @@ export const TokenUpdateInputSchema = {
1656
1458
  export const UsageSchema = {
1657
1459
  type: 'object',
1658
1460
  properties: {
1659
- id: {
1461
+ hour: {
1660
1462
  type: 'string',
1661
- format: 'uuid',
1662
- description: 'Unique identifier of the Usage object, equal to subscription id of the task . UUID v4 string in canonical form',
1663
- example: '8897e84c-2ba1-42fa-9d35-964c80a4ff0f'
1463
+ description: 'Hour of the usage',
1464
+ example: '2019-01-01T00:00:00.000Z'
1664
1465
  },
1665
- task_id: {
1466
+ cluster_id: {
1666
1467
  type: 'string',
1667
1468
  format: 'uuid',
1668
- description: 'Unique identifier of the project. UUID v4 string in canonical form',
1669
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
1469
+ description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1470
+ example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1670
1471
  },
1671
- unit: {
1472
+ cluster_tier: {
1672
1473
  type: 'string',
1673
- description: 'Unit of measurement. E.g. GiB, seconds, etc',
1674
- example: 'second'
1474
+ description: 'Tier of the cluster.',
1475
+ example: 'pro',
1476
+ enum: ['basic', 'pro', '']
1675
1477
  },
1676
- amount: {
1677
- type: 'number',
1678
- format: 'float'
1478
+ product: {
1479
+ type: 'string',
1480
+ description: 'The product the usage is associated with',
1481
+ example: 'cfke_controlplane',
1482
+ enum: ['cfke_controlplane', 'cfke_connected_nodes', 'infra_compute', 'infra_storage', 'infra_loadbalancing', 'infra_traffic', 'cfcr_storage']
1483
+ },
1484
+ node_name: {
1485
+ type: 'string',
1486
+ description: 'Name of the Kubernetes node',
1487
+ example: 'flexible-moth-956037384'
1488
+ },
1489
+ sku: {
1490
+ type: 'string',
1491
+ description: 'SKU of the Kubernetes node',
1492
+ example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
1493
+ },
1494
+ cpu: {
1495
+ anyOf: [
1496
+ {
1497
+ type: 'number',
1498
+ format: 'float',
1499
+ description: 'CPU core count of the node',
1500
+ example: 4
1501
+ },
1502
+ {
1503
+ type: 'string',
1504
+ enum: ['']
1505
+ }
1506
+ ]
1507
+ },
1508
+ price: {
1509
+ anyOf: [
1510
+ {
1511
+ type: 'number',
1512
+ format: 'float',
1513
+ description: 'Price',
1514
+ example: 4
1515
+ },
1516
+ {
1517
+ type: 'string',
1518
+ enum: ['']
1519
+ }
1520
+ ]
1521
+ },
1522
+ value: {
1523
+ anyOf: [
1524
+ {
1525
+ type: 'number',
1526
+ format: 'float',
1527
+ description: 'Value',
1528
+ example: 4
1529
+ },
1530
+ {
1531
+ type: 'string',
1532
+ enum: ['']
1533
+ }
1534
+ ]
1535
+ },
1536
+ total: {
1537
+ anyOf: [
1538
+ {
1539
+ type: 'number',
1540
+ format: 'float',
1541
+ description: 'Total',
1542
+ example: 4
1543
+ },
1544
+ {
1545
+ type: 'string',
1546
+ enum: ['']
1547
+ }
1548
+ ]
1679
1549
  }
1680
1550
  },
1681
- required: ['id', 'task_id', 'unit', 'amount'],
1551
+ required: ['cluster_id', 'cluster_tier', 'product', 'node_name', 'sku', 'cpu', 'price', 'value', 'total'],
1682
1552
  additionalProperties: false
1683
1553
  };
1684
1554
  export const UserCreateInputSchema = {
@@ -1713,7 +1583,7 @@ export const UserCreateInputSchema = {
1713
1583
  password: {
1714
1584
  type: 'string',
1715
1585
  minLength: 8,
1716
- 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.'
1586
+ description: 'User password. Must be at least 8 characters long.'
1717
1587
  },
1718
1588
  status: {
1719
1589
  type: 'string',
@@ -1777,28 +1647,6 @@ export const UserSchema = {
1777
1647
  format: 'date-time',
1778
1648
  description: 'Creation date of the user. ISO 8601 date string in UTC timezone',
1779
1649
  example: '2023-11-02T16:08:14.338Z'
1780
- },
1781
- cluster_permissions: {
1782
- type: 'array',
1783
- items: {
1784
- type: 'object',
1785
- properties: {
1786
- cluster_id: {
1787
- type: 'string',
1788
- format: 'uuid',
1789
- description: 'Unique identifier of the cluster. UUID v4 string in canonical form',
1790
- example: '035ce46d-44d8-4e58-a8a2-b0192d1c27df'
1791
- },
1792
- permissions: {
1793
- type: 'string',
1794
- description: 'User permissions to access the cluster. Can be `readwrite` or `readonly`.',
1795
- example: 'readwrite',
1796
- enum: ['readwrite', 'readonly']
1797
- }
1798
- },
1799
- required: ['cluster_id', 'permissions'],
1800
- additionalProperties: false
1801
- }
1802
1650
  }
1803
1651
  },
1804
1652
  required: ['email', 'first_name', 'last_name', 'role', 'status', 'id', 'date_created'],