@cloudfleet/sdk 0.0.1-bbb5ebb → 0.0.1-bc3dfb7

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 (73) hide show
  1. package/README.md +26 -2
  2. package/dist/@tanstack/react-query.gen.d.ts +1199 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1215 -0
  5. package/dist/@tanstack/react-query.gen.js.map +1 -0
  6. package/dist/client/client.gen.d.ts +3 -0
  7. package/dist/client/client.gen.d.ts.map +1 -0
  8. package/dist/client/client.gen.js +217 -0
  9. package/dist/client/client.gen.js.map +1 -0
  10. package/dist/client/index.d.ts +9 -0
  11. package/dist/client/index.d.ts.map +1 -0
  12. package/dist/client/index.js +7 -0
  13. package/dist/client/index.js.map +1 -0
  14. package/dist/client/types.gen.d.ts +121 -0
  15. package/dist/client/types.gen.d.ts.map +1 -0
  16. package/dist/client/types.gen.js +3 -0
  17. package/dist/client/types.gen.js.map +1 -0
  18. package/dist/client/utils.gen.d.ts +38 -0
  19. package/dist/client/utils.gen.d.ts.map +1 -0
  20. package/dist/client/utils.gen.js +229 -0
  21. package/dist/client/utils.gen.js.map +1 -0
  22. package/dist/client.gen.d.ts +4 -4
  23. package/dist/client.gen.d.ts.map +1 -1
  24. package/dist/client.gen.js +2 -4
  25. package/dist/client.gen.js.map +1 -1
  26. package/dist/core/auth.gen.d.ts +19 -0
  27. package/dist/core/auth.gen.d.ts.map +1 -0
  28. package/dist/core/auth.gen.js +15 -0
  29. package/dist/core/auth.gen.js.map +1 -0
  30. package/dist/core/bodySerializer.gen.d.ts +26 -0
  31. package/dist/core/bodySerializer.gen.d.ts.map +1 -0
  32. package/dist/core/bodySerializer.gen.js +58 -0
  33. package/dist/core/bodySerializer.gen.js.map +1 -0
  34. package/dist/core/params.gen.d.ts +44 -0
  35. package/dist/core/params.gen.d.ts.map +1 -0
  36. package/dist/core/params.gen.js +101 -0
  37. package/dist/core/params.gen.js.map +1 -0
  38. package/dist/core/pathSerializer.gen.d.ts +34 -0
  39. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  40. package/dist/core/pathSerializer.gen.js +107 -0
  41. package/dist/core/pathSerializer.gen.js.map +1 -0
  42. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  43. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  44. package/dist/core/queryKeySerializer.gen.js +93 -0
  45. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  46. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  47. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  48. package/dist/core/serverSentEvents.gen.js +133 -0
  49. package/dist/core/serverSentEvents.gen.js.map +1 -0
  50. package/dist/core/types.gen.d.ts +79 -0
  51. package/dist/core/types.gen.d.ts.map +1 -0
  52. package/dist/core/types.gen.js +3 -0
  53. package/dist/core/types.gen.js.map +1 -0
  54. package/dist/core/utils.gen.d.ts +20 -0
  55. package/dist/core/utils.gen.d.ts.map +1 -0
  56. package/dist/core/utils.gen.js +88 -0
  57. package/dist/core/utils.gen.js.map +1 -0
  58. package/dist/schemas.gen.d.ts +1774 -594
  59. package/dist/schemas.gen.d.ts.map +1 -1
  60. package/dist/schemas.gen.js +3133 -666
  61. package/dist/schemas.gen.js.map +1 -1
  62. package/dist/sdk.gen.d.ts +346 -135
  63. package/dist/sdk.gen.d.ts.map +1 -1
  64. package/dist/sdk.gen.js +492 -259
  65. package/dist/sdk.gen.js.map +1 -1
  66. package/dist/services/kubernetes/api.d.ts +20 -20
  67. package/dist/types.gen.d.ts +2044 -708
  68. package/dist/types.gen.d.ts.map +1 -1
  69. package/dist/zod.gen.d.ts +3982 -1998
  70. package/dist/zod.gen.d.ts.map +1 -1
  71. package/dist/zod.gen.js +1713 -805
  72. package/dist/zod.gen.js.map +1 -1
  73. package/package.json +28 -9
@@ -1,4 +1,31 @@
1
+ export type ClientOptions = {
2
+ baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3
+ };
4
+ export type BasicPriceConsentInput = {
5
+ /**
6
+ * The administrator's decision on the new Basic price. `accepted` continues to paid billing when the signup credit runs out; `rejected` opts out (clusters are suspended, never charged). A `rejected` org can later be flipped back to `accepted`.
7
+ */
8
+ decision: 'accepted' | 'rejected';
9
+ };
10
+ export type BasicPriceConsent = {
11
+ /**
12
+ * Consent status for the new Basic price. `not_applicable` when the organization is not in scope for the migration. `pending` when the organization must opt in but no admin has decided yet. `accepted` / `rejected` reflect the recorded decision.
13
+ */
14
+ status: 'not_applicable' | 'pending' | 'accepted' | 'rejected';
15
+ /**
16
+ * When the current decision was recorded. Absent while `not_applicable` or `pending`.
17
+ */
18
+ decided_at?: string;
19
+ /**
20
+ * User id of the administrator who recorded the current decision. Absent while `not_applicable` or `pending`.
21
+ */
22
+ decided_by?: string;
23
+ };
1
24
  export type BillingContact = {
25
+ /**
26
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
27
+ */
28
+ type: 'business' | 'personal';
2
29
  /**
3
30
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
4
31
  */
@@ -36,31 +63,192 @@ export type BillingContact = {
36
63
  */
37
64
  email: string;
38
65
  /**
39
- * First name of the billing contact person.
66
+ * Name of the billing contact person.
40
67
  */
41
- first_name: string;
68
+ individual_name: string;
42
69
  /**
43
- * Last name of the billing contact person.
70
+ * Tax ID of the organization.
44
71
  */
45
- last_name: string;
72
+ tax_id?: string;
73
+ /**
74
+ * Type of the tax ID.
75
+ */
76
+ tax_id_type?: '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' | '';
46
77
  };
47
- export type ClusterCreateInput = {
78
+ export type BillingCredits = {
48
79
  /**
49
- * Name of the cluster.
80
+ * Generated unique identifier of the promotional code.
81
+ */
82
+ id?: string;
83
+ /**
84
+ * Type of the promotional code.
85
+ */
86
+ type: 'credit' | 'discount';
87
+ /**
88
+ * Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.
89
+ */
90
+ date_start: string;
91
+ /**
92
+ * Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.
93
+ */
94
+ date_end?: string;
95
+ /**
96
+ * Promotional code used by the customer.
97
+ */
98
+ code: string;
99
+ /**
100
+ * Description of the promotional code.
101
+ */
102
+ description?: string;
103
+ /**
104
+ * Total value of the promotional code.
105
+ */
106
+ value_total: number;
107
+ /**
108
+ * Remaining value of the promotional code.
109
+ */
110
+ value_remaining?: number;
111
+ };
112
+ export type ChartCreateInput = {
113
+ /**
114
+ * Values to be used in the chart encoded as a JSON string.
115
+ */
116
+ values: string;
117
+ /**
118
+ * Desired version range or channel for the chart.
119
+ */
120
+ version_channel: string;
121
+ /**
122
+ * Unique identifier of the chart deployment aka name of the helm release.
123
+ */
124
+ name: string;
125
+ /**
126
+ * Namespace of the chart deployment
127
+ */
128
+ namespace: string;
129
+ /**
130
+ * Name of the chart listing
131
+ */
132
+ chart: string;
133
+ };
134
+ export type Chart = {
135
+ /**
136
+ * Values to be used in the chart encoded as a JSON string.
137
+ */
138
+ values: string;
139
+ /**
140
+ * Desired version range or channel for the chart.
141
+ */
142
+ version_channel: string;
143
+ /**
144
+ * Unique identifier of the chart deployment aka name of the helm release.
50
145
  */
51
146
  name: string;
52
147
  /**
53
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.
148
+ * Namespace of the chart deployment
149
+ */
150
+ namespace: string;
151
+ /**
152
+ * Name of the chart listing
153
+ */
154
+ chart: string;
155
+ /**
156
+ * Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).
157
+ */
158
+ status: string;
159
+ /**
160
+ * Current version of the chart deployment.
54
161
  */
55
- region?: 'staging' | 'northamerica-central-1';
162
+ version_current: string;
163
+ /**
164
+ * Creation date and time of the chart deployment.
165
+ */
166
+ created_at: string;
167
+ /**
168
+ * Last update date and time of the chart deployment.
169
+ */
170
+ updated_at: string;
171
+ /**
172
+ * Indicates if the chart deployment is ready to be used.
173
+ */
174
+ ready: boolean;
175
+ };
176
+ export type ChartUpdateInput = {
177
+ /**
178
+ * Values to be used in the chart encoded as a JSON string.
179
+ */
180
+ values: string;
181
+ /**
182
+ * Desired version range or channel for the chart.
183
+ */
184
+ version_channel: string;
185
+ };
186
+ /**
187
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
188
+ */
189
+ export type ClusterCreateInput = {
190
+ /**
191
+ * Name of the cluster.
192
+ */
193
+ name: string;
56
194
  /**
57
195
  * Tier of the cluster.
58
196
  */
59
- tier: 'basic' | 'pro';
197
+ tier?: 'basic' | 'pro' | 'enterprise';
60
198
  /**
61
199
  * Version of the kubernetes cluster.
62
200
  */
63
201
  version_channel?: string;
202
+ /**
203
+ * Release channel for the cluster's control plane.
204
+ */
205
+ release_channel?: 'rapid' | 'stable' | 'extended';
206
+ /**
207
+ * Cluster feature toggles.
208
+ */
209
+ features?: {
210
+ /**
211
+ * GPU sharing strategy.
212
+ */
213
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
214
+ /**
215
+ * Maximum number of pods that may share a single GPU.
216
+ */
217
+ gpu_max_shared_clients_per_gpu?: number;
218
+ /**
219
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
220
+ */
221
+ cilium_socket_lb_host_namespace_only?: boolean;
222
+ };
223
+ /**
224
+ * Cloudfleet control plane region. This field can not be updated after creation.
225
+ */
226
+ region: string;
227
+ /**
228
+ * Cluster networking configuration. Immutable after creation.
229
+ */
230
+ networking?: {
231
+ /**
232
+ * CIDR block for pod IPs.
233
+ */
234
+ pod_cidr?: string;
235
+ /**
236
+ * CIDR block for service IPs.
237
+ */
238
+ service_cidr?: string;
239
+ /**
240
+ * Enable IPv4+IPv6 dual-stack networking.
241
+ */
242
+ dual_stack?: boolean;
243
+ /**
244
+ * IPv6 pod CIDR. Requires dual_stack.
245
+ */
246
+ pod_cidr_v6?: string;
247
+ /**
248
+ * IPv6 service CIDR. Requires dual_stack.
249
+ */
250
+ service_cidr_v6?: string;
251
+ };
64
252
  };
65
253
  export type ClusterJoinInformation = {
66
254
  /**
@@ -71,6 +259,14 @@ export type ClusterJoinInformation = {
71
259
  * Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.
72
260
  */
73
261
  endpoint: string;
262
+ /**
263
+ * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
264
+ */
265
+ cluster_dns: string;
266
+ /**
267
+ * Pod CIDR for the cluster. Used to configure iptables rules on nodes to prevent Tailscale routing loops.
268
+ */
269
+ pod_cidr: string;
74
270
  /**
75
271
  * Authentication key for the cluster.
76
272
  */
@@ -95,6 +291,10 @@ export type ClusterJoinInformation = {
95
291
  * Containerd version of the cluster.
96
292
  */
97
293
  containerd: string;
294
+ /**
295
+ * NVIDIA driver version of the cluster.
296
+ */
297
+ nvidia_driver: string;
98
298
  };
99
299
  /**
100
300
  * OIDC Information for hosts to access to third party API's.
@@ -114,32 +314,82 @@ export type ClusterJoinInformation = {
114
314
  gcp_workload_identity_provider: string;
115
315
  };
116
316
  };
317
+ /**
318
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
319
+ */
117
320
  export type Cluster = {
118
321
  /**
119
322
  * Name of the cluster.
120
323
  */
121
324
  name: string;
122
- /**
123
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.
124
- */
125
- region?: 'staging' | 'northamerica-central-1';
126
325
  /**
127
326
  * Tier of the cluster.
128
327
  */
129
- tier: 'basic' | 'pro';
328
+ tier: 'basic' | 'pro' | 'enterprise';
130
329
  /**
131
330
  * Version of the kubernetes cluster.
132
331
  */
133
- version_channel?: string;
332
+ version_channel: string;
333
+ /**
334
+ * Release channel for the cluster's control plane.
335
+ */
336
+ release_channel: 'rapid' | 'stable' | 'extended';
337
+ /**
338
+ * Cluster feature toggles.
339
+ */
340
+ features: {
341
+ /**
342
+ * GPU sharing strategy.
343
+ */
344
+ gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
345
+ /**
346
+ * Maximum number of pods that may share a single GPU.
347
+ */
348
+ gpu_max_shared_clients_per_gpu: number;
349
+ /**
350
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
351
+ */
352
+ cilium_socket_lb_host_namespace_only: boolean;
353
+ };
354
+ /**
355
+ * Cloudfleet control plane region. This field can not be updated after creation.
356
+ */
357
+ region: string;
358
+ /**
359
+ * Cluster networking configuration. Immutable after creation.
360
+ */
361
+ networking: {
362
+ /**
363
+ * CIDR block for pod IPs.
364
+ */
365
+ pod_cidr: string;
366
+ /**
367
+ * CIDR block for service IPs.
368
+ */
369
+ service_cidr: string;
370
+ /**
371
+ * Enable IPv4+IPv6 dual-stack networking.
372
+ */
373
+ dual_stack: boolean;
374
+ /**
375
+ * IPv6 pod CIDR. Requires dual_stack.
376
+ */
377
+ pod_cidr_v6: string;
378
+ /**
379
+ * IPv6 service CIDR. Requires dual_stack.
380
+ */
381
+ service_cidr_v6: string;
382
+ };
134
383
  /**
135
384
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
136
385
  */
137
386
  id: string;
138
387
  /**
139
- * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
388
+ * Status of the cluster.
140
389
  */
141
- status: 'active' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
390
+ status: 'creating' | 'deployed' | 'updating' | 'disabled';
142
391
  endpoint?: string | '';
392
+ endpoint_public?: string | '';
143
393
  /**
144
394
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
145
395
  */
@@ -159,129 +409,259 @@ export type Cluster = {
159
409
  /**
160
410
  * Indicates if the cluster is ready to be used.
161
411
  */
162
- ready?: boolean;
412
+ ready: boolean;
163
413
  };
414
+ /**
415
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
416
+ */
164
417
  export type ClusterUpdateInput = {
165
418
  /**
166
419
  * Name of the cluster.
167
420
  */
168
- name?: string;
421
+ name: string;
422
+ /**
423
+ * Tier of the cluster.
424
+ */
425
+ tier?: 'basic' | 'pro' | 'enterprise';
169
426
  /**
170
427
  * Version of the kubernetes cluster.
171
428
  */
172
429
  version_channel?: string;
430
+ /**
431
+ * Release channel for the cluster's control plane.
432
+ */
433
+ release_channel?: 'rapid' | 'stable' | 'extended';
434
+ /**
435
+ * Cluster feature toggles.
436
+ */
437
+ features?: {
438
+ /**
439
+ * GPU sharing strategy.
440
+ */
441
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
442
+ /**
443
+ * Maximum number of pods that may share a single GPU.
444
+ */
445
+ gpu_max_shared_clients_per_gpu?: number;
446
+ /**
447
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
448
+ */
449
+ cilium_socket_lb_host_namespace_only?: boolean;
450
+ };
173
451
  };
452
+ /**
453
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
454
+ */
174
455
  export type FleetCreateInput = {
175
456
  /**
176
457
  * Limits define a set of bounds for provisioning capacity.
177
458
  */
178
459
  limits?: {
179
460
  /**
180
- * CPU limit in cores.
461
+ * CPU limit in cores. Maximum 100,000.
181
462
  */
182
- cpu: number;
463
+ cpu?: number;
183
464
  };
184
465
  gcp?: {
185
- enabled?: boolean;
466
+ enabled: boolean;
186
467
  /**
187
- * Project GCP Project id to deploy instances into
468
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
188
469
  */
189
- project: string;
470
+ project?: string;
190
471
  };
191
472
  hetzner?: {
192
- enabled?: boolean;
193
- apiKey?: string;
194
- } | {
473
+ enabled: boolean;
474
+ /**
475
+ * Hetzner Cloud API token with read/write access (64 alphanumeric characters). Write-only: reads return a redacted placeholder, never the token. Omit the field, or send the placeholder back unchanged, to keep the existing key. Send a new value to rotate it.
476
+ */
195
477
  apiKey?: string;
196
- enabled?: boolean;
197
478
  };
198
479
  aws?: {
199
- enabled?: boolean;
480
+ enabled: boolean;
200
481
  /**
201
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
482
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
202
483
  */
203
- controllerRoleArn: string;
484
+ controllerRoleArn?: string;
204
485
  };
205
486
  /**
206
- * Unique identifier of the kubernetes fleet.
487
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together.
207
488
  */
208
- id: string;
489
+ constraints?: {
490
+ /**
491
+ * Allowed values for `karpenter.sh/capacity-type`.
492
+ */
493
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
494
+ /**
495
+ * Allowed values for `kubernetes.io/arch`.
496
+ */
497
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
498
+ /**
499
+ * Allowed values for `cfke.io/instance-family`.
500
+ */
501
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
502
+ /**
503
+ * Allowed values for `topology.kubernetes.io/region`.
504
+ */
505
+ 'topology.kubernetes.io/region'?: Array<'africa-south1' | 'ap-northeast-1' | 'ap-northeast-2' | 'ap-northeast-3' | 'ap-south-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ash' | 'asia-east1' | 'asia-east2' | 'asia-northeast1' | 'asia-northeast2' | 'asia-northeast3' | 'asia-south1' | 'asia-south2' | 'asia-southeast1' | 'asia-southeast2' | 'australia-southeast1' | 'australia-southeast2' | 'ca-central-1' | 'eu-central-1' | 'eu-central-2' | 'eu-north-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'europe-central2' | 'europe-north1' | 'europe-southwest1' | 'europe-west1' | 'europe-west10' | 'europe-west12' | 'europe-west2' | 'europe-west3' | 'europe-west4' | 'europe-west6' | 'europe-west8' | 'europe-west9' | 'fsn1' | 'hel1' | 'hil' | 'me-central1' | 'me-central2' | 'me-west1' | 'nbg1' | 'northamerica-northeast1' | 'northamerica-northeast2' | 'sa-east-1' | 'sin' | 'southamerica-east1' | 'southamerica-west1' | 'us-central1' | 'us-east-1' | 'us-east-2' | 'us-east1' | 'us-east4' | 'us-east5' | 'us-south1' | 'us-west-1' | 'us-west-2' | 'us-west1' | 'us-west2' | 'us-west3' | 'us-west4'>;
506
+ };
209
507
  /**
210
- * Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.
508
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).
211
509
  */
212
- type: 'managed' | 'connected';
510
+ scalingProfile?: 'aggressive' | 'conservative';
511
+ /**
512
+ * Unique identifier of the kubernetes fleet.
513
+ */
514
+ id: string;
213
515
  };
516
+ /**
517
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
518
+ */
214
519
  export type Fleet = {
215
520
  /**
216
521
  * Limits define a set of bounds for provisioning capacity.
217
522
  */
218
523
  limits?: {
219
524
  /**
220
- * CPU limit in cores.
525
+ * CPU limit in cores. Maximum 100,000.
221
526
  */
222
- cpu: number;
527
+ cpu?: number;
223
528
  };
224
529
  gcp?: {
225
- enabled?: boolean;
530
+ enabled: boolean;
226
531
  /**
227
- * Project GCP Project id to deploy instances into
532
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
228
533
  */
229
- project: string;
534
+ project?: string;
230
535
  };
231
536
  hetzner?: {
232
- enabled?: boolean;
233
- apiKey?: string;
234
- } | {
537
+ enabled: boolean;
538
+ /**
539
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
540
+ */
235
541
  apiKey?: string;
236
- enabled?: boolean;
237
542
  };
238
543
  aws?: {
239
- enabled?: boolean;
544
+ enabled: boolean;
545
+ /**
546
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
547
+ */
548
+ controllerRoleArn?: string;
549
+ };
550
+ /**
551
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together.
552
+ */
553
+ constraints: {
240
554
  /**
241
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
555
+ * Allowed values for `karpenter.sh/capacity-type`.
242
556
  */
243
- controllerRoleArn: string;
557
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
558
+ /**
559
+ * Allowed values for `kubernetes.io/arch`.
560
+ */
561
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
562
+ /**
563
+ * Allowed values for `cfke.io/instance-family`.
564
+ */
565
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
566
+ /**
567
+ * Allowed values for `topology.kubernetes.io/region`.
568
+ */
569
+ 'topology.kubernetes.io/region'?: Array<'africa-south1' | 'ap-northeast-1' | 'ap-northeast-2' | 'ap-northeast-3' | 'ap-south-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ash' | 'asia-east1' | 'asia-east2' | 'asia-northeast1' | 'asia-northeast2' | 'asia-northeast3' | 'asia-south1' | 'asia-south2' | 'asia-southeast1' | 'asia-southeast2' | 'australia-southeast1' | 'australia-southeast2' | 'ca-central-1' | 'eu-central-1' | 'eu-central-2' | 'eu-north-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'europe-central2' | 'europe-north1' | 'europe-southwest1' | 'europe-west1' | 'europe-west10' | 'europe-west12' | 'europe-west2' | 'europe-west3' | 'europe-west4' | 'europe-west6' | 'europe-west8' | 'europe-west9' | 'fsn1' | 'hel1' | 'hil' | 'me-central1' | 'me-central2' | 'me-west1' | 'nbg1' | 'northamerica-northeast1' | 'northamerica-northeast2' | 'sa-east-1' | 'sin' | 'southamerica-east1' | 'southamerica-west1' | 'us-central1' | 'us-east-1' | 'us-east-2' | 'us-east1' | 'us-east4' | 'us-east5' | 'us-south1' | 'us-west-1' | 'us-west-2' | 'us-west1' | 'us-west2' | 'us-west3' | 'us-west4'>;
244
570
  };
571
+ /**
572
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).
573
+ */
574
+ scalingProfile: 'aggressive' | 'conservative';
245
575
  /**
246
576
  * Unique identifier of the kubernetes fleet.
247
577
  */
248
578
  id: string;
249
579
  /**
250
- * Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.
580
+ * Indicates whether the fleet configuration is healthy.
251
581
  */
252
- type: 'managed' | 'connected';
582
+ ready: boolean;
583
+ /**
584
+ * Human-readable reason the fleet is not ready. Present only when `ready` is false.
585
+ */
586
+ status_message?: string;
587
+ /**
588
+ * Creation date and time of the fleet.
589
+ */
590
+ created_at: string;
591
+ /**
592
+ * Date and time the fleet was last updated.
593
+ */
594
+ updated_at: string;
253
595
  };
596
+ /**
597
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
598
+ */
254
599
  export type FleetUpdateInput = {
255
600
  /**
256
601
  * Limits define a set of bounds for provisioning capacity.
257
602
  */
258
603
  limits?: {
259
604
  /**
260
- * CPU limit in cores.
605
+ * CPU limit in cores. Maximum 100,000.
261
606
  */
262
- cpu: number;
607
+ cpu?: number;
263
608
  };
264
609
  gcp?: {
265
- enabled?: boolean;
610
+ enabled: boolean;
266
611
  /**
267
- * Project GCP Project id to deploy instances into
612
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
268
613
  */
269
- project: string;
614
+ project?: string;
270
615
  };
271
616
  hetzner?: {
272
- enabled?: boolean;
273
- apiKey?: string;
274
- } | {
617
+ enabled: boolean;
618
+ /**
619
+ * Hetzner Cloud API token with read/write access (64 alphanumeric characters). Write-only: reads return a redacted placeholder, never the token. Omit the field, or send the placeholder back unchanged, to keep the existing key. Send a new value to rotate it.
620
+ */
275
621
  apiKey?: string;
276
- enabled?: boolean;
277
622
  };
278
623
  aws?: {
279
- enabled?: boolean;
624
+ enabled: boolean;
625
+ /**
626
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
627
+ */
628
+ controllerRoleArn?: string;
629
+ };
630
+ /**
631
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together.
632
+ */
633
+ constraints?: {
634
+ /**
635
+ * Allowed values for `karpenter.sh/capacity-type`.
636
+ */
637
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
280
638
  /**
281
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
639
+ * Allowed values for `kubernetes.io/arch`.
282
640
  */
283
- controllerRoleArn: string;
641
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
642
+ /**
643
+ * Allowed values for `cfke.io/instance-family`.
644
+ */
645
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
646
+ /**
647
+ * Allowed values for `topology.kubernetes.io/region`.
648
+ */
649
+ 'topology.kubernetes.io/region'?: Array<'africa-south1' | 'ap-northeast-1' | 'ap-northeast-2' | 'ap-northeast-3' | 'ap-south-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ash' | 'asia-east1' | 'asia-east2' | 'asia-northeast1' | 'asia-northeast2' | 'asia-northeast3' | 'asia-south1' | 'asia-south2' | 'asia-southeast1' | 'asia-southeast2' | 'australia-southeast1' | 'australia-southeast2' | 'ca-central-1' | 'eu-central-1' | 'eu-central-2' | 'eu-north-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'europe-central2' | 'europe-north1' | 'europe-southwest1' | 'europe-west1' | 'europe-west10' | 'europe-west12' | 'europe-west2' | 'europe-west3' | 'europe-west4' | 'europe-west6' | 'europe-west8' | 'europe-west9' | 'fsn1' | 'hel1' | 'hil' | 'me-central1' | 'me-central2' | 'me-west1' | 'nbg1' | 'northamerica-northeast1' | 'northamerica-northeast2' | 'sa-east-1' | 'sin' | 'southamerica-east1' | 'southamerica-west1' | 'us-central1' | 'us-east-1' | 'us-east-2' | 'us-east1' | 'us-east4' | 'us-east5' | 'us-south1' | 'us-west-1' | 'us-west-2' | 'us-west1' | 'us-west2' | 'us-west3' | 'us-west4'>;
284
650
  };
651
+ /**
652
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).
653
+ */
654
+ scalingProfile?: 'aggressive' | 'conservative';
655
+ };
656
+ export type InviteCreateInput = {
657
+ /**
658
+ * Email address of the user to invite.
659
+ */
660
+ email: string;
661
+ /**
662
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
663
+ */
664
+ role?: 'Administrator' | 'User';
285
665
  };
286
666
  export type Invite = {
287
667
  /**
@@ -304,240 +684,134 @@ export type Invite = {
304
684
  * Generated unique invite code.
305
685
  */
306
686
  code?: string;
687
+ /**
688
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
689
+ */
690
+ role?: 'Administrator' | 'User';
307
691
  };
308
692
  export type Invoice = {
309
693
  /**
310
- * Unique identifier of the invoice. UUID v4 string in canonical form
694
+ * Unique identifier of the invoice.
311
695
  */
312
696
  id?: string;
313
- /**
314
- * Unique identifier of the organization. UUID v4 string in canonical form
315
- */
316
- organizationId?: string;
697
+ number?: string;
317
698
  /**
318
699
  * Status of the invoice
319
700
  */
320
- status?: 'DRAFT' | 'COMMITTED' | 'VOID';
701
+ status?: string;
321
702
  /**
322
703
  * Total amount of the invoice
323
704
  */
324
- amount?: number;
705
+ total?: number;
325
706
  /**
326
707
  * Currency of the invoice
327
708
  */
328
- currency?: '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';
709
+ currency?: string;
329
710
  /**
330
- * Total amount of credit adjustments
711
+ * Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.
331
712
  */
332
- creditAdj?: number;
713
+ created: string;
333
714
  /**
334
- * Total amount of refund adjustments
715
+ * Billing period start timestamp. ISO 8601 date string in the UTC timezone.
335
716
  */
336
- refundAdj?: number;
717
+ period_start: string;
337
718
  /**
338
- * Date of the invoice
719
+ * Billing period end timestamp. ISO 8601 date string in the UTC timezone.
339
720
  */
340
- invoiceDate?: string;
721
+ period_end: string;
722
+ invoice_pdf?: string;
723
+ };
724
+ export type MarketplaceListingFiles = {
341
725
  /**
342
- * Target date of the invoice
726
+ * Raw Chart.yaml content from the Helm chart
343
727
  */
344
- targetDate?: string;
728
+ chartYaml?: string;
345
729
  /**
346
- * Number of the invoice
730
+ * Raw values.yaml content from the Helm chart
347
731
  */
348
- invoiceNumber?: string;
732
+ valuesYaml?: string;
349
733
  /**
350
- * Balance of the invoice
734
+ * JSON schema for values.yaml as a string
351
735
  */
352
- balance?: number;
736
+ valuesSchemaJson?: string;
737
+ };
738
+ export type MarketplaceListing = {
353
739
  /**
354
- * Bundle keys of the invoice
740
+ * Name of the chart
355
741
  */
356
- bundleKeys?: string;
742
+ name: string;
357
743
  /**
358
- * Credits of the invoice
744
+ * Available versions of the chart
359
745
  */
360
- credits?: Array<{
361
- /**
362
- * Unique identifier of the invoice item. UUID v4 string in canonical form
363
- */
364
- id?: string;
365
- /**
366
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
367
- */
368
- linkedInvoiceItemId?: string;
369
- /**
370
- * Name of the product
371
- */
372
- productName?: string;
373
- /**
374
- * Name of the plan
375
- */
376
- planName?: string;
377
- /**
378
- * Name of the phase
379
- */
380
- phaseName?: string;
381
- /**
382
- * Name of the usage
383
- */
384
- usageName?: string;
385
- /**
386
- * Pretty name of the product
387
- */
388
- prettyProductName?: string;
389
- /**
390
- * Pretty name of the plan
391
- */
392
- prettyPlanName?: string;
393
- /**
394
- * Pretty name of the phase
395
- */
396
- prettyPhaseName?: string;
746
+ versions: Array<string>;
747
+ /**
748
+ * Version channels for the chart
749
+ */
750
+ version_channels: Array<string>;
751
+ /**
752
+ * Latest version of the chart
753
+ */
754
+ latestVersion: string;
755
+ /**
756
+ * Chart metadata
757
+ */
758
+ metadata?: {
397
759
  /**
398
- * Pretty name of the usage
760
+ * Chart name from metadata
399
761
  */
400
- prettyUsageName?: string;
762
+ name: string;
401
763
  /**
402
- * Type of the invoice item
764
+ * Chart version from metadata
403
765
  */
404
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
766
+ version: string;
405
767
  /**
406
- * Description of the invoice item
768
+ * Chart description
407
769
  */
408
770
  description?: string;
409
771
  /**
410
- * Start date of the invoice item
772
+ * Application version
411
773
  */
412
- startDate?: string;
774
+ appVersion?: string;
413
775
  /**
414
- * End date of the invoice item
776
+ * Helm API version
415
777
  */
416
- endDate?: string;
778
+ apiVersion?: string;
417
779
  /**
418
- * Amount of the invoice item
780
+ * Chart keywords
419
781
  */
420
- amount?: number;
782
+ keywords?: Array<string>;
421
783
  /**
422
- * Rate of the invoice item
784
+ * Chart home URL
423
785
  */
424
- rate?: number;
786
+ home?: string;
425
787
  /**
426
- * Currency of the invoice item
788
+ * A URL to an SVG or PNG image to be used as an icon
427
789
  */
428
- currency?: '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';
790
+ icon?: string;
429
791
  /**
430
- * Quantity of the invoice item
792
+ * Chart source URLs
431
793
  */
432
- quantity?: number;
794
+ sources?: Array<string>;
433
795
  /**
434
- * Details of the invoice item
796
+ * Chart maintainers
435
797
  */
436
- itemDetails?: string;
437
- /**
438
- * Effective date of the catalog
439
- */
440
- catalogEffectiveDate?: string;
441
- /**
442
- * Child items of the invoice item
443
- */
444
- childItems?: Array<Array<unknown> | boolean | number | {
445
- [key: string]: unknown;
446
- } | string>;
447
- }>;
448
- /**
449
- * Items of the invoice
450
- */
451
- items?: Array<{
452
- /**
453
- * Unique identifier of the invoice item. UUID v4 string in canonical form
454
- */
455
- id?: string;
456
- /**
457
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
458
- */
459
- linkedInvoiceItemId?: string;
460
- /**
461
- * Name of the product
462
- */
463
- productName?: string;
464
- /**
465
- * Name of the plan
466
- */
467
- planName?: string;
468
- /**
469
- * Name of the phase
470
- */
471
- phaseName?: string;
472
- /**
473
- * Name of the usage
474
- */
475
- usageName?: string;
476
- /**
477
- * Pretty name of the product
478
- */
479
- prettyProductName?: string;
480
- /**
481
- * Pretty name of the plan
482
- */
483
- prettyPlanName?: string;
484
- /**
485
- * Pretty name of the phase
486
- */
487
- prettyPhaseName?: string;
488
- /**
489
- * Pretty name of the usage
490
- */
491
- prettyUsageName?: string;
492
- /**
493
- * Type of the invoice item
494
- */
495
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
496
- /**
497
- * Description of the invoice item
498
- */
499
- description?: string;
500
- /**
501
- * Start date of the invoice item
502
- */
503
- startDate?: string;
504
- /**
505
- * End date of the invoice item
506
- */
507
- endDate?: string;
508
- /**
509
- * Amount of the invoice item
510
- */
511
- amount?: number;
512
- /**
513
- * Rate of the invoice item
514
- */
515
- rate?: number;
516
- /**
517
- * Currency of the invoice item
518
- */
519
- currency?: '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';
520
- /**
521
- * Quantity of the invoice item
522
- */
523
- quantity?: number;
524
- /**
525
- * Details of the invoice item
526
- */
527
- itemDetails?: string;
528
- /**
529
- * Effective date of the catalog
530
- */
531
- catalogEffectiveDate?: string;
532
- /**
533
- * Child items of the invoice item
534
- */
535
- childItems?: Array<Array<unknown> | boolean | number | {
536
- [key: string]: unknown;
537
- } | string>;
538
- }>;
798
+ maintainers?: Array<{
799
+ /**
800
+ * Maintainer name
801
+ */
802
+ name: string;
803
+ /**
804
+ * Maintainer email
805
+ */
806
+ email?: string;
807
+ }>;
808
+ };
539
809
  };
540
810
  export type OrganizationCreateInput = {
811
+ /**
812
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
813
+ */
814
+ type: 'business' | 'personal';
541
815
  /**
542
816
  * Email address used for billing as a string.
543
817
  */
@@ -559,6 +833,12 @@ export type OrganizationCreateInput = {
559
833
  */
560
834
  password: string;
561
835
  };
836
+ export type OrganizationCreateOutput = {
837
+ /**
838
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
839
+ */
840
+ id: string;
841
+ };
562
842
  export type Organization = {
563
843
  /**
564
844
  * Unique identifier of the organization. UUID v4 string in canonical form
@@ -568,6 +848,10 @@ export type Organization = {
568
848
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
569
849
  */
570
850
  name?: string;
851
+ /**
852
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
853
+ */
854
+ type: 'business' | 'personal';
571
855
  /**
572
856
  * Creation date of the organization. ISO 8601 date string in UTC timezone
573
857
  */
@@ -593,13 +877,17 @@ export type Organization = {
593
877
  */
594
878
  pro_clusters_available: number;
595
879
  /**
596
- * Maximum number of fleets that can be created per cluster.
880
+ * Maximum number of Enterprise clusters that can be created.
597
881
  */
598
- fleets_max: number;
882
+ enterprise_clusters_max: number;
883
+ /**
884
+ * Available number of Enterprise clusters that can be created.
885
+ */
886
+ enterprise_clusters_available: number;
599
887
  /**
600
- * Maximum number of CPU cores per managed fleet.
888
+ * Maximum number of fleets that can be created per cluster.
601
889
  */
602
- managed_fleets_cpu_max: number;
890
+ fleets_max: number;
603
891
  /**
604
892
  * List of Cloudfleet cluster tiers available for the organization.
605
893
  */
@@ -621,340 +909,1379 @@ export type Organization = {
621
909
  */
622
910
  label: string;
623
911
  }>;
912
+ /**
913
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
914
+ */
915
+ cfcr_storage_gb: number;
624
916
  };
625
917
  /**
626
918
  * Status of the organization. Can be `active` or `closed`, or `suspended`.
627
919
  */
628
920
  status: 'active' | 'closed' | 'suspended';
921
+ /**
922
+ * Verification status of the organization, which determines the assigned quota. `none` when billing information is incomplete, `submitted` when billing information is complete but the organization is not yet verified, `verified` when the organization is verified.
923
+ */
924
+ verification: 'none' | 'submitted' | 'verified';
629
925
  };
630
926
  export type PaymentMethod = {
631
927
  /**
632
- * Unique identifier of the organization. UUID v4 string in canonical form.
928
+ * Payment method identifier. Stripe payment method id for cards/SEPA; the constant `bank_transfer` for the invoice/bank-transfer method. Used to set as default or delete the payment method.
633
929
  */
634
930
  id: string;
635
931
  /**
636
- * Whether organization payment method was set up and ready to use for payments.
637
- */
638
- setup: boolean;
639
- /**
640
- * Payment method type type. Only `card` payments supported at the moment.
932
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
641
933
  */
642
- type: 'card';
934
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
643
935
  /**
644
- * Last 4 digits of the payment card number.
936
+ * Last 4 digits of the payment card number, of the bank account (IBAN) for SEPA Direct Debit, or of the destination IBAN for bank transfer.
645
937
  */
646
938
  last4: string;
647
939
  /**
648
- * Two-digit number representing the card's expiration month.
940
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
649
941
  */
650
942
  exp_month: number;
651
943
  /**
652
- * Four-digit number representing the card's expiration year.
944
+ * Four-digit number representing the card's expiration year. May be in the past for an expired card still on file. Null for SEPA Direct Debit and bank transfer.
653
945
  */
654
946
  exp_year: number;
655
947
  /**
656
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
948
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
657
949
  */
658
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
659
- };
660
- export type TokenCreateInput = {
950
+ brand: string;
661
951
  /**
662
- * Human readable access token name.
952
+ * Full destination IBAN to send bank transfers to. Set only for `bank_transfer`; null otherwise. This is Cloudfleet's virtual receiving account, shown in full so the customer can pay into it.
663
953
  */
664
- name: string;
954
+ iban: string;
665
955
  /**
666
- * Role assumed by the token.
956
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
667
957
  */
668
- role: 'Administrator' | 'User';
669
- };
670
- export type Token = {
958
+ bic: string;
671
959
  /**
672
- * Human readable access token name.
960
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
673
961
  */
674
- name: string;
962
+ account_holder_name: string;
675
963
  /**
676
- * Role assumed by the token.
964
+ * Whether this payment method is the default used for invoices and active subscriptions. Always false for `bank_transfer` (it cannot be a Stripe default payment method).
677
965
  */
678
- role: 'Administrator' | 'User';
966
+ is_default: boolean;
967
+ };
968
+ export type PlatformQuota = {
679
969
  /**
680
- * Generated unique identifier of the access token.
970
+ * Maximum number of Basic clusters that can be created.
681
971
  */
682
- id?: string;
972
+ basic_clusters_max: number;
683
973
  /**
684
- * Access token secret. Unmasked only during creation.
974
+ * Available number of Basic clusters that can be created.
685
975
  */
686
- secret?: string;
976
+ basic_clusters_available: number;
687
977
  /**
688
- * Creation date of the access token. ISO 8601 date string in UTC timezone
978
+ * Maximum number of Pro clusters that can be created.
689
979
  */
690
- date_created: string;
691
- };
692
- export type TokenUpdateInput = {
980
+ pro_clusters_max: number;
693
981
  /**
694
- * Human readable access token name.
982
+ * Available number of Pro clusters that can be created.
695
983
  */
696
- name?: string;
984
+ pro_clusters_available: number;
697
985
  /**
698
- * Role assumed by the token.
986
+ * Maximum number of Enterprise clusters that can be created.
699
987
  */
700
- role?: 'Administrator' | 'User';
701
- };
702
- export type Usage = {
988
+ enterprise_clusters_max: number;
703
989
  /**
704
- * Hour of the usage
990
+ * Available number of Enterprise clusters that can be created.
705
991
  */
706
- hour?: string;
992
+ enterprise_clusters_available: number;
707
993
  /**
708
- * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
994
+ * Maximum number of fleets that can be created per cluster.
709
995
  */
710
- cluster_id: string;
996
+ fleets_max: number;
711
997
  /**
712
- * Tier of the cluster.
998
+ * List of Cloudfleet cluster tiers available for the organization.
713
999
  */
714
- cluster_tier: '';
1000
+ cluster_tiers: Array<string>;
715
1001
  /**
716
- * The product the usage is associated with
1002
+ * List of Cloudfleet control plane regions available for the organization.
717
1003
  */
718
- product: 'cfke_infra_compute' | 'cfke_nodes' | 'cfke_controlplane';
1004
+ regions: Array<string>;
719
1005
  /**
720
- * Name of the Kubernetes node
1006
+ * List of CFKE control plane versions available for the organization.
721
1007
  */
722
- node_name: string;
1008
+ versions: Array<{
1009
+ /**
1010
+ * Id of the control plane version. Used in API calls.
1011
+ */
1012
+ id: string;
1013
+ /**
1014
+ * Label of the control plane version. Used in frontent UI.
1015
+ */
1016
+ label: string;
1017
+ }>;
723
1018
  /**
724
- * SKU of the Kubernetes node
1019
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
725
1020
  */
726
- sku: string;
727
- cpu: number | '';
728
- price: number | '';
729
- value: number | '';
730
- total: number | '';
1021
+ cfcr_storage_gb: number;
731
1022
  };
732
- export type UserCreateInput = {
1023
+ export type RegistryRepository = {
733
1024
  /**
734
- * User email address.
1025
+ * Repository name.
735
1026
  */
736
- email: string;
1027
+ name: string;
737
1028
  /**
738
- * User first name.
1029
+ * Registry region.
739
1030
  */
740
- first_name: string;
1031
+ region: string;
741
1032
  /**
742
- * User last name.
1033
+ * Full URI of the repository.
743
1034
  */
744
- last_name: string;
1035
+ uri: string;
1036
+ };
1037
+ export type RegistryRepositoryWithTags = {
745
1038
  /**
746
- * Generated unique invite code.
1039
+ * Repository name.
747
1040
  */
748
- code: string;
1041
+ name: string;
749
1042
  /**
750
- * User password. Must be at least 8 characters long.
1043
+ * Registry region.
751
1044
  */
752
- password: string;
1045
+ region: string;
753
1046
  /**
754
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1047
+ * Full URI of the repository.
755
1048
  */
756
- status?: 'active' | 'inactive';
1049
+ uri: string;
757
1050
  /**
758
- * User role. Can be 'Administrator', 'User'.
1051
+ * Array of tags in the repository.
759
1052
  */
760
- role?: 'Administrator' | 'User';
1053
+ tags: Array<{
1054
+ /**
1055
+ * Tag name.
1056
+ */
1057
+ name: string;
1058
+ /**
1059
+ * Size of the tag in bytes.
1060
+ */
1061
+ size: number;
1062
+ /**
1063
+ * Media type of the manifest.
1064
+ */
1065
+ mediaType?: string;
1066
+ /**
1067
+ * Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).
1068
+ */
1069
+ platforms?: Array<string>;
1070
+ }>;
1071
+ /**
1072
+ * Total size of all tags in the repository in bytes.
1073
+ */
1074
+ totalSize: number;
761
1075
  };
762
- export type User = {
1076
+ export type RegistryTag = {
763
1077
  /**
764
- * User email address.
1078
+ * Tag name.
765
1079
  */
766
- email: string;
1080
+ name: string;
767
1081
  /**
768
- * User first name.
1082
+ * Manifest digest for pulling by digest.
769
1083
  */
770
- first_name: string;
1084
+ digest: string;
771
1085
  /**
772
- * User last name.
1086
+ * Media type of the manifest.
773
1087
  */
774
- last_name: string;
1088
+ mediaType?: string;
775
1089
  /**
776
- * User role. Can be 'Administrator', 'User'.
1090
+ * Manifest config metadata.
777
1091
  */
778
- role: 'Administrator' | 'User';
1092
+ config?: {
1093
+ /**
1094
+ * Size of the config in bytes.
1095
+ */
1096
+ size: number;
1097
+ };
779
1098
  /**
780
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1099
+ * Array of layer metadata.
781
1100
  */
782
- status: 'active' | 'inactive';
1101
+ layers?: Array<{
1102
+ /**
1103
+ * Digest of the layer.
1104
+ */
1105
+ digest?: string;
1106
+ /**
1107
+ * Size of the layer in bytes.
1108
+ */
1109
+ size: number;
1110
+ }>;
783
1111
  /**
784
- * Unique identifier of the user. UUID v4 string in canonical form
1112
+ * Array of manifests for multi-arch images.
785
1113
  */
786
- id: string;
1114
+ manifests?: Array<{
1115
+ /**
1116
+ * Digest of the manifest.
1117
+ */
1118
+ digest: string;
1119
+ /**
1120
+ * Platform information for the manifest.
1121
+ */
1122
+ platform?: {
1123
+ /**
1124
+ * Architecture of the platform.
1125
+ */
1126
+ architecture: string;
1127
+ /**
1128
+ * Operating system of the platform.
1129
+ */
1130
+ os: string;
1131
+ /**
1132
+ * Variant of the platform (e.g., v7, v8 for ARM).
1133
+ */
1134
+ variant?: string;
1135
+ };
1136
+ /**
1137
+ * Layers for this platform.
1138
+ */
1139
+ layers?: Array<{
1140
+ /**
1141
+ * Digest of the layer.
1142
+ */
1143
+ digest?: string;
1144
+ /**
1145
+ * Size of the layer in bytes.
1146
+ */
1147
+ size: number;
1148
+ }>;
1149
+ /**
1150
+ * Total size of this platform manifest in bytes.
1151
+ */
1152
+ size?: number;
1153
+ }>;
787
1154
  /**
788
- * Creation date of the user. ISO 8601 date string in UTC timezone
1155
+ * Total size of the tag in bytes.
789
1156
  */
790
- date_created: string;
791
- };
792
- export type UserUpdateInput = {
1157
+ size: number;
793
1158
  /**
794
- * User email address.
1159
+ * Registry region.
795
1160
  */
796
- email?: string;
1161
+ region: string;
797
1162
  /**
798
- * User first name.
1163
+ * Repository name.
799
1164
  */
800
- first_name?: string;
1165
+ repository: string;
801
1166
  /**
802
- * User last name.
1167
+ * Full URI of the tag.
803
1168
  */
804
- last_name?: string;
1169
+ uri: string;
1170
+ };
1171
+ export type TicketAttachment = {
805
1172
  /**
806
- * User role. Can be 'Administrator', 'User'.
1173
+ * Unique identifier of the attachment (Mongo ObjectId).
807
1174
  */
808
- role?: 'Administrator' | 'User';
1175
+ id: string;
809
1176
  /**
810
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1177
+ * Original filename as uploaded.
811
1178
  */
812
- status?: 'active' | 'inactive';
813
- };
814
- export type GetUsageData = {
815
- body?: never;
816
- path?: never;
817
- query?: never;
818
- url: '/billing/usage';
819
- };
820
- export type GetUsageErrors = {
1179
+ filename: string;
821
1180
  /**
822
- * Not authenticated
1181
+ * MIME content type of the attachment.
823
1182
  */
824
- 401: unknown;
825
- };
826
- export type GetUsageResponses = {
1183
+ content_type: string;
827
1184
  /**
828
- * An array of usage records.
1185
+ * Size of the attachment in bytes.
829
1186
  */
830
- 200: Array<Usage>;
831
- };
832
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
833
- export type GetBalanceData = {
834
- body?: never;
835
- path?: never;
836
- query?: never;
837
- url: '/billing/balance';
1187
+ size: number;
838
1188
  };
839
- export type GetBalanceResponses = {
1189
+ export type TicketCreateInput = {
840
1190
  /**
841
- * Current balance of the organization in USD as a floating-point number.
1191
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
842
1192
  */
843
- 200: number;
844
- };
845
- export type GetBalanceResponse = GetBalanceResponses[keyof GetBalanceResponses];
846
- export type GetPaymentMethodData = {
847
- body?: never;
848
- path?: never;
849
- query?: never;
850
- url: '/billing/payment-method';
851
- };
852
- export type GetPaymentMethodErrors = {
1193
+ category: 'billing' | 'technical' | 'general';
853
1194
  /**
854
- * Returns 404 Not Found if the organization does not have a payment method set up.
1195
+ * Initial message body in markdown. There is no separate subject the first message body is the description.
855
1196
  */
856
- 404: unknown;
857
- };
858
- export type GetPaymentMethodResponses = {
1197
+ body: string;
859
1198
  /**
860
- * Redacted payment card information.
1199
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
861
1200
  */
862
- 200: PaymentMethod;
1201
+ properties?: {
1202
+ [key: string]: unknown;
1203
+ };
863
1204
  };
864
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
865
- export type GetPaymentMethodSecretData = {
866
- body?: never;
867
- path?: never;
868
- query?: never;
869
- url: '/billing/payment-method';
1205
+ export type TicketMessageInput = {
1206
+ /**
1207
+ * Reply body in markdown.
1208
+ */
1209
+ body: string;
870
1210
  };
871
- export type GetPaymentMethodSecretResponses = {
1211
+ export type TicketMessage = {
872
1212
  /**
873
- * The client secret. Used for client-side retrieval using a publishable key. The client secret can be used to complete a payment from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
874
- *
1213
+ * Unique identifier of the message (Mongo ObjectId).
875
1214
  */
876
- 200: {
1215
+ id: string;
1216
+ /**
1217
+ * Message type. Internal notes are filtered out of customer-facing responses.
1218
+ */
1219
+ type: 'customer_reply' | 'agent_reply';
1220
+ /**
1221
+ * Message body in markdown.
1222
+ */
1223
+ body: string;
1224
+ /**
1225
+ * First name of the author. Null when not provided.
1226
+ */
1227
+ author_first_name?: string;
1228
+ /**
1229
+ * Last name of the author. Null when not provided.
1230
+ */
1231
+ author_last_name?: string;
1232
+ /**
1233
+ * Attachments associated with this message.
1234
+ */
1235
+ attachments?: Array<{
877
1236
  /**
878
- * The client secret.
1237
+ * Unique identifier of the attachment (Mongo ObjectId).
879
1238
  */
880
- id?: string;
881
- };
1239
+ id: string;
1240
+ /**
1241
+ * Original filename as uploaded.
1242
+ */
1243
+ filename: string;
1244
+ /**
1245
+ * MIME content type of the attachment.
1246
+ */
1247
+ content_type: string;
1248
+ /**
1249
+ * Size of the attachment in bytes.
1250
+ */
1251
+ size: number;
1252
+ }>;
1253
+ /**
1254
+ * Creation date of the message. ISO 8601 UTC.
1255
+ */
1256
+ date_created: string;
1257
+ };
1258
+ export type Ticket = {
1259
+ /**
1260
+ * Unique identifier of the ticket (Mongo ObjectId).
1261
+ */
1262
+ id: string;
1263
+ /**
1264
+ * Current state of the ticket.
1265
+ */
1266
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
1267
+ /**
1268
+ * Ticket category.
1269
+ */
1270
+ category: 'billing' | 'technical' | 'general';
1271
+ /**
1272
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
1273
+ */
1274
+ summary: string;
1275
+ /**
1276
+ * Closure timestamp. Null while the ticket is open.
1277
+ */
1278
+ closed_at?: string;
1279
+ /**
1280
+ * Creation date of the ticket. ISO 8601 UTC.
1281
+ */
1282
+ date_created: string;
1283
+ /**
1284
+ * Last update date of the ticket. ISO 8601 UTC.
1285
+ */
1286
+ date_updated: string;
1287
+ /**
1288
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1289
+ */
1290
+ messages?: Array<{
1291
+ /**
1292
+ * Unique identifier of the message (Mongo ObjectId).
1293
+ */
1294
+ id: string;
1295
+ /**
1296
+ * Message type. Internal notes are filtered out of customer-facing responses.
1297
+ */
1298
+ type: 'customer_reply' | 'agent_reply';
1299
+ /**
1300
+ * Message body in markdown.
1301
+ */
1302
+ body: string;
1303
+ /**
1304
+ * First name of the author. Null when not provided.
1305
+ */
1306
+ author_first_name?: string;
1307
+ /**
1308
+ * Last name of the author. Null when not provided.
1309
+ */
1310
+ author_last_name?: string;
1311
+ /**
1312
+ * Attachments associated with this message.
1313
+ */
1314
+ attachments?: Array<{
1315
+ /**
1316
+ * Unique identifier of the attachment (Mongo ObjectId).
1317
+ */
1318
+ id: string;
1319
+ /**
1320
+ * Original filename as uploaded.
1321
+ */
1322
+ filename: string;
1323
+ /**
1324
+ * MIME content type of the attachment.
1325
+ */
1326
+ content_type: string;
1327
+ /**
1328
+ * Size of the attachment in bytes.
1329
+ */
1330
+ size: number;
1331
+ }>;
1332
+ /**
1333
+ * Creation date of the message. ISO 8601 UTC.
1334
+ */
1335
+ date_created: string;
1336
+ }>;
1337
+ };
1338
+ export type TokenCreateInput = {
1339
+ /**
1340
+ * Human readable access token name.
1341
+ */
1342
+ name: string;
1343
+ /**
1344
+ * Role assumed by the token.
1345
+ */
1346
+ role: 'Administrator' | 'User';
1347
+ };
1348
+ export type Token = {
1349
+ /**
1350
+ * Human readable access token name.
1351
+ */
1352
+ name: string;
1353
+ /**
1354
+ * Role assumed by the token.
1355
+ */
1356
+ role: 'Administrator' | 'User';
1357
+ /**
1358
+ * Generated unique identifier of the access token.
1359
+ */
1360
+ id?: string;
1361
+ /**
1362
+ * Access token secret. Unmasked only during creation.
1363
+ */
1364
+ secret?: string;
1365
+ /**
1366
+ * Creation date of the access token. ISO 8601 date string in UTC timezone
1367
+ */
1368
+ date_created: string;
1369
+ };
1370
+ export type TokenUpdateInput = {
1371
+ /**
1372
+ * Human readable access token name.
1373
+ */
1374
+ name?: string;
1375
+ /**
1376
+ * Role assumed by the token.
1377
+ */
1378
+ role?: 'Administrator' | 'User';
1379
+ };
1380
+ export type UsageFacets = {
1381
+ /**
1382
+ * List of unique cluster IDs
1383
+ */
1384
+ cluster_id?: Array<string>;
1385
+ /**
1386
+ * List of unique products
1387
+ */
1388
+ product?: Array<'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage'>;
1389
+ };
1390
+ export type UsageResponse = {
1391
+ /**
1392
+ * Usage data
1393
+ */
1394
+ data: Array<{
1395
+ /**
1396
+ * Hour of the usage
1397
+ */
1398
+ hour: string;
1399
+ /**
1400
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1401
+ */
1402
+ cluster_id: string;
1403
+ /**
1404
+ * The product the usage is associated with
1405
+ */
1406
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1407
+ /**
1408
+ * Consumption
1409
+ */
1410
+ value: number;
1411
+ /**
1412
+ * Price per unit
1413
+ */
1414
+ price: number;
1415
+ /**
1416
+ * Total cost
1417
+ */
1418
+ total: number;
1419
+ }>;
1420
+ /**
1421
+ * Facets for filtering
1422
+ */
1423
+ facets: {
1424
+ /**
1425
+ * List of unique cluster IDs
1426
+ */
1427
+ cluster_id?: Array<string>;
1428
+ /**
1429
+ * List of unique products
1430
+ */
1431
+ product?: Array<'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage'>;
1432
+ };
1433
+ };
1434
+ export type Usage = {
1435
+ /**
1436
+ * Hour of the usage
1437
+ */
1438
+ hour: string;
1439
+ /**
1440
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1441
+ */
1442
+ cluster_id: string;
1443
+ /**
1444
+ * The product the usage is associated with
1445
+ */
1446
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1447
+ /**
1448
+ * Consumption
1449
+ */
1450
+ value: number;
1451
+ /**
1452
+ * Price per unit
1453
+ */
1454
+ price: number;
1455
+ /**
1456
+ * Total cost
1457
+ */
1458
+ total: number;
1459
+ };
1460
+ export type UserCreateInput = {
1461
+ /**
1462
+ * User email address.
1463
+ */
1464
+ email: string;
1465
+ /**
1466
+ * User first name.
1467
+ */
1468
+ first_name: string;
1469
+ /**
1470
+ * User last name.
1471
+ */
1472
+ last_name: string;
1473
+ /**
1474
+ * Generated unique invite code.
1475
+ */
1476
+ code: string;
1477
+ /**
1478
+ * User password. Must be at least 8 characters long.
1479
+ */
1480
+ password: string;
1481
+ };
1482
+ export type User = {
1483
+ /**
1484
+ * User email address.
1485
+ */
1486
+ email: string;
1487
+ /**
1488
+ * User first name.
1489
+ */
1490
+ first_name: string;
1491
+ /**
1492
+ * User last name.
1493
+ */
1494
+ last_name: string;
1495
+ /**
1496
+ * User role. Can be 'Administrator', 'User'.
1497
+ */
1498
+ role: 'Administrator' | 'User';
1499
+ /**
1500
+ * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1501
+ */
1502
+ status: 'active' | 'inactive';
1503
+ /**
1504
+ * Unique identifier of the user. UUID v4 string in canonical form
1505
+ */
1506
+ id: string;
1507
+ /**
1508
+ * Creation date of the user. ISO 8601 date string in UTC timezone
1509
+ */
1510
+ date_created: string;
1511
+ };
1512
+ export type UserUpdateInput = {
1513
+ /**
1514
+ * User email address.
1515
+ */
1516
+ email?: string;
1517
+ /**
1518
+ * User first name.
1519
+ */
1520
+ first_name?: string;
1521
+ /**
1522
+ * User last name.
1523
+ */
1524
+ last_name?: string;
1525
+ /**
1526
+ * User role. Can be 'Administrator', 'User'.
1527
+ */
1528
+ role?: 'Administrator' | 'User';
1529
+ /**
1530
+ * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1531
+ */
1532
+ status?: 'active' | 'inactive';
1533
+ };
1534
+ export type ListUserOrganizationsData = {
1535
+ body?: never;
1536
+ path: {
1537
+ /**
1538
+ * User email address.
1539
+ */
1540
+ email: string;
1541
+ };
1542
+ query?: never;
1543
+ url: '/users/organizations/{email}';
1544
+ };
1545
+ export type ListUserOrganizationsResponses = {
1546
+ /**
1547
+ * An array of organizations the user belongs to.
1548
+ */
1549
+ 200: Array<{
1550
+ /**
1551
+ * Unique identifier of the organization. UUID v4 string in canonical form
1552
+ */
1553
+ realm?: string;
1554
+ /**
1555
+ * Human-readable name of the organization
1556
+ */
1557
+ displayName?: string;
1558
+ }>;
1559
+ };
1560
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1561
+ export type ListUsersData = {
1562
+ body?: never;
1563
+ path?: never;
1564
+ query?: never;
1565
+ url: '/users';
1566
+ };
1567
+ export type ListUsersErrors = {
1568
+ /**
1569
+ * Not authenticated
1570
+ */
1571
+ 401: unknown;
1572
+ };
1573
+ export type ListUsersResponses = {
1574
+ /**
1575
+ * An array of users
1576
+ */
1577
+ 200: Array<User>;
1578
+ };
1579
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1580
+ export type CreateUserData = {
1581
+ body: UserCreateInput;
1582
+ path?: never;
1583
+ query?: never;
1584
+ url: '/users';
1585
+ };
1586
+ export type CreateUserResponses = {
1587
+ /**
1588
+ * Successfully created. Returns created user details.
1589
+ */
1590
+ 200: User;
1591
+ };
1592
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1593
+ export type DeleteUserData = {
1594
+ body?: never;
1595
+ path: {
1596
+ /**
1597
+ * Unique user identifier. UUID v4 string in canonical form
1598
+ */
1599
+ user_id: string;
1600
+ };
1601
+ query?: never;
1602
+ url: '/users/{user_id}';
1603
+ };
1604
+ export type DeleteUserErrors = {
1605
+ /**
1606
+ * Deleting own user is not allowed. Delete your organization instead.
1607
+ */
1608
+ 400: unknown;
1609
+ /**
1610
+ * Not authenticated
1611
+ */
1612
+ 401: unknown;
1613
+ };
1614
+ export type DeleteUserResponses = {
1615
+ /**
1616
+ * User profile information
1617
+ */
1618
+ 200: User;
1619
+ };
1620
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1621
+ export type GetUserData = {
1622
+ body?: never;
1623
+ path: {
1624
+ /**
1625
+ * Unique user identifier. UUID v4 string in canonical form
1626
+ */
1627
+ user_id: string;
1628
+ };
1629
+ query?: never;
1630
+ url: '/users/{user_id}';
1631
+ };
1632
+ export type GetUserErrors = {
1633
+ /**
1634
+ * Not authenticated
1635
+ */
1636
+ 401: unknown;
1637
+ };
1638
+ export type GetUserResponses = {
1639
+ /**
1640
+ * User profile information
1641
+ */
1642
+ 200: User;
1643
+ };
1644
+ export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1645
+ export type UpdateUserData = {
1646
+ body: UserUpdateInput;
1647
+ path: {
1648
+ /**
1649
+ * Unique user identifier. UUID v4 string in canonical form
1650
+ */
1651
+ user_id: string;
1652
+ };
1653
+ query?: never;
1654
+ url: '/users/{user_id}';
1655
+ };
1656
+ export type UpdateUserResponses = {
1657
+ /**
1658
+ * Successfully created. Returns created user details.
1659
+ */
1660
+ 200: User;
1661
+ };
1662
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1663
+ export type ListTokensData = {
1664
+ body?: never;
1665
+ path?: never;
1666
+ query?: never;
1667
+ url: '/tokens';
1668
+ };
1669
+ export type ListTokensErrors = {
1670
+ /**
1671
+ * Not authenticated
1672
+ */
1673
+ 401: unknown;
1674
+ };
1675
+ export type ListTokensResponses = {
1676
+ /**
1677
+ * Returns a list of access token details with masked secrets.
1678
+ */
1679
+ 200: Array<Token>;
1680
+ };
1681
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1682
+ export type CreateTokenData = {
1683
+ body: TokenCreateInput;
1684
+ path?: never;
1685
+ query?: never;
1686
+ url: '/tokens';
1687
+ };
1688
+ export type CreateTokenErrors = {
1689
+ /**
1690
+ * Not authenticated
1691
+ */
1692
+ 401: unknown;
1693
+ };
1694
+ export type CreateTokenResponses = {
1695
+ /**
1696
+ * Successfully created. Returns created token details with unmasked/raw secret.
1697
+ */
1698
+ 200: Token;
1699
+ };
1700
+ export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1701
+ export type DeleteTokenData = {
1702
+ body?: never;
1703
+ path: {
1704
+ /**
1705
+ * Generated unique identifier of the access token.
1706
+ */
1707
+ token_id: string;
1708
+ };
1709
+ query?: never;
1710
+ url: '/tokens/{token_id}';
1711
+ };
1712
+ export type DeleteTokenResponses = {
1713
+ /**
1714
+ * Successfully deleted.
1715
+ */
1716
+ 200: unknown;
1717
+ };
1718
+ export type GetTokenData = {
1719
+ body?: never;
1720
+ path: {
1721
+ /**
1722
+ * Generated unique identifier of the access token.
1723
+ */
1724
+ token_id: string;
1725
+ };
1726
+ query?: never;
1727
+ url: '/tokens/{token_id}';
1728
+ };
1729
+ export type GetTokenErrors = {
1730
+ /**
1731
+ * Not authenticated
1732
+ */
1733
+ 401: unknown;
1734
+ };
1735
+ export type GetTokenResponses = {
1736
+ /**
1737
+ * Returns access token details with masked secret.
1738
+ */
1739
+ 200: Token;
1740
+ };
1741
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1742
+ export type UpdateTokenData = {
1743
+ body: TokenUpdateInput;
1744
+ path: {
1745
+ /**
1746
+ * Generated unique identifier of the access token.
1747
+ */
1748
+ token_id: string;
1749
+ };
1750
+ query?: never;
1751
+ url: '/tokens/{token_id}';
1752
+ };
1753
+ export type UpdateTokenErrors = {
1754
+ /**
1755
+ * Not authenticated
1756
+ */
1757
+ 401: unknown;
1758
+ };
1759
+ export type UpdateTokenResponses = {
1760
+ /**
1761
+ * Successfully updated. Returns updated token details with masked secret.
1762
+ */
1763
+ 200: Token;
1764
+ };
1765
+ export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1766
+ export type RegenerateTokenData = {
1767
+ body?: never;
1768
+ path: {
1769
+ /**
1770
+ * Generated unique identifier of the access token.
1771
+ */
1772
+ token_id: string;
1773
+ };
1774
+ query?: never;
1775
+ url: '/tokens/{token_id}/secret';
1776
+ };
1777
+ export type RegenerateTokenErrors = {
1778
+ /**
1779
+ * Not authenticated
1780
+ */
1781
+ 401: unknown;
882
1782
  };
883
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
884
- export type ListInvoicesData = {
1783
+ export type RegenerateTokenResponses = {
1784
+ /**
1785
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1786
+ */
1787
+ 200: Token;
1788
+ };
1789
+ export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1790
+ export type ListTicketsData = {
885
1791
  body?: never;
886
1792
  path?: never;
887
- query: {
1793
+ query?: never;
1794
+ url: '/tickets';
1795
+ };
1796
+ export type ListTicketsResponses = {
1797
+ /**
1798
+ * An array of tickets for the organization, newest first.
1799
+ */
1800
+ 200: Array<Ticket>;
1801
+ };
1802
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1803
+ export type CreateTicketData = {
1804
+ body: {
888
1805
  /**
889
- * Start date for the usage. Date of oldest data point to retrieve.
1806
+ * JSON-encoded TicketCreateInput.
890
1807
  */
891
- start_date: string;
1808
+ payload?: string;
1809
+ attachments?: Array<Blob | File>;
1810
+ };
1811
+ path?: never;
1812
+ query?: never;
1813
+ url: '/tickets';
1814
+ };
1815
+ export type CreateTicketResponses = {
1816
+ /**
1817
+ * Ticket created.
1818
+ */
1819
+ 200: Ticket;
1820
+ };
1821
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
1822
+ export type CloseTicketData = {
1823
+ body?: never;
1824
+ path: {
1825
+ ticket_id: string;
1826
+ };
1827
+ query?: never;
1828
+ url: '/tickets/{ticket_id}';
1829
+ };
1830
+ export type CloseTicketResponses = {
1831
+ /**
1832
+ * Ticket closed.
1833
+ */
1834
+ 200: Ticket;
1835
+ };
1836
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
1837
+ export type GetTicketData = {
1838
+ body?: never;
1839
+ path: {
1840
+ ticket_id: string;
1841
+ };
1842
+ query?: never;
1843
+ url: '/tickets/{ticket_id}';
1844
+ };
1845
+ export type GetTicketResponses = {
1846
+ /**
1847
+ * Ticket with messages (internal notes excluded).
1848
+ */
1849
+ 200: Ticket;
1850
+ };
1851
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
1852
+ export type ReplyTicketData = {
1853
+ body: {
892
1854
  /**
893
- * End date for the usage. Date of newest data point to retrieve.
1855
+ * JSON-encoded TicketMessageInput.
894
1856
  */
895
- end_date: string;
1857
+ payload?: string;
1858
+ attachments?: Array<Blob | File>;
896
1859
  };
897
- url: '/billing/invoices';
1860
+ path: {
1861
+ ticket_id: string;
1862
+ };
1863
+ query?: never;
1864
+ url: '/tickets/{ticket_id}/messages';
898
1865
  };
899
- export type ListInvoicesErrors = {
1866
+ export type ReplyTicketErrors = {
1867
+ /**
1868
+ * Ticket is closed. Open a new ticket instead.
1869
+ */
1870
+ 409: unknown;
1871
+ };
1872
+ export type ReplyTicketResponses = {
1873
+ /**
1874
+ * Reply appended.
1875
+ */
1876
+ 200: TicketMessage;
1877
+ };
1878
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
1879
+ export type GetTicketAttachmentData = {
1880
+ body?: never;
1881
+ path: {
1882
+ ticket_id: string;
1883
+ attachment_id: string;
1884
+ };
1885
+ query?: never;
1886
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
1887
+ };
1888
+ export type GetTicketAttachmentResponses = {
1889
+ /**
1890
+ * Attachment binary stream.
1891
+ */
1892
+ 200: Blob | File;
1893
+ };
1894
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
1895
+ export type ListRepositoriesData = {
1896
+ body?: never;
1897
+ path?: never;
1898
+ query?: never;
1899
+ url: '/registry';
1900
+ };
1901
+ export type ListRepositoriesErrors = {
1902
+ /**
1903
+ * Not authenticated
1904
+ */
1905
+ 401: unknown;
1906
+ /**
1907
+ * Internal server error
1908
+ */
1909
+ 500: unknown;
1910
+ };
1911
+ export type ListRepositoriesResponses = {
1912
+ /**
1913
+ * List of repositories
1914
+ */
1915
+ 200: Array<RegistryRepository>;
1916
+ };
1917
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
1918
+ export type ListTagsData = {
1919
+ body?: never;
1920
+ path: {
1921
+ /**
1922
+ * Region where the repository is located
1923
+ */
1924
+ region: string;
1925
+ /**
1926
+ * Name of the repository
1927
+ */
1928
+ repository: string;
1929
+ };
1930
+ query?: never;
1931
+ url: '/registry/{region}/{repository}';
1932
+ };
1933
+ export type ListTagsErrors = {
1934
+ /**
1935
+ * Not authenticated
1936
+ */
1937
+ 401: unknown;
1938
+ /**
1939
+ * Repository not found
1940
+ */
1941
+ 404: unknown;
1942
+ /**
1943
+ * Internal server error
1944
+ */
1945
+ 500: unknown;
1946
+ };
1947
+ export type ListTagsResponses = {
1948
+ /**
1949
+ * Repository with tags
1950
+ */
1951
+ 200: RegistryRepositoryWithTags;
1952
+ };
1953
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
1954
+ export type DeleteTagData = {
1955
+ body?: never;
1956
+ path: {
1957
+ /**
1958
+ * Region where the repository is located
1959
+ */
1960
+ region: string;
1961
+ /**
1962
+ * Name of the repository
1963
+ */
1964
+ repository: string;
1965
+ /**
1966
+ * Name of the tag
1967
+ */
1968
+ tag: string;
1969
+ };
1970
+ query?: never;
1971
+ url: '/registry/{region}/{repository}/{tag}';
1972
+ };
1973
+ export type DeleteTagErrors = {
1974
+ /**
1975
+ * Not authenticated
1976
+ */
1977
+ 401: unknown;
1978
+ /**
1979
+ * Tag not found
1980
+ */
1981
+ 404: unknown;
1982
+ /**
1983
+ * Internal server error
1984
+ */
1985
+ 500: unknown;
1986
+ };
1987
+ export type DeleteTagResponses = {
1988
+ /**
1989
+ * Tag successfully deleted
1990
+ */
1991
+ 200: unknown;
1992
+ };
1993
+ export type GetTagData = {
1994
+ body?: never;
1995
+ path: {
1996
+ /**
1997
+ * Region where the repository is located
1998
+ */
1999
+ region: string;
2000
+ /**
2001
+ * Name of the repository
2002
+ */
2003
+ repository: string;
2004
+ /**
2005
+ * Name of the tag
2006
+ */
2007
+ tag: string;
2008
+ };
2009
+ query?: never;
2010
+ url: '/registry/{region}/{repository}/{tag}';
2011
+ };
2012
+ export type GetTagErrors = {
2013
+ /**
2014
+ * Not authenticated
2015
+ */
2016
+ 401: unknown;
2017
+ /**
2018
+ * Tag not found
2019
+ */
2020
+ 404: unknown;
2021
+ /**
2022
+ * Internal server error
2023
+ */
2024
+ 500: unknown;
2025
+ };
2026
+ export type GetTagResponses = {
2027
+ /**
2028
+ * Tag details
2029
+ */
2030
+ 200: RegistryTag;
2031
+ };
2032
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2033
+ export type GetOrganizationData = {
2034
+ body?: never;
2035
+ path?: never;
2036
+ query?: never;
2037
+ url: '/organization';
2038
+ };
2039
+ export type GetOrganizationResponses = {
2040
+ /**
2041
+ * Returns a single object containing organization details.
2042
+ */
2043
+ 200: Organization;
2044
+ };
2045
+ export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2046
+ export type CreateOrganizationData = {
2047
+ body: OrganizationCreateInput;
2048
+ path?: never;
2049
+ query?: never;
2050
+ url: '/organization';
2051
+ };
2052
+ export type CreateOrganizationResponses = {
2053
+ /**
2054
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2055
+ *
2056
+ */
2057
+ 200: OrganizationCreateOutput;
2058
+ };
2059
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2060
+ export type GetBasicPriceConsentData = {
2061
+ body?: never;
2062
+ path?: never;
2063
+ query?: never;
2064
+ url: '/organization/basic-price-consent';
2065
+ };
2066
+ export type GetBasicPriceConsentResponses = {
2067
+ /**
2068
+ * Returns the current consent status.
2069
+ */
2070
+ 200: BasicPriceConsent;
2071
+ };
2072
+ export type GetBasicPriceConsentResponse = GetBasicPriceConsentResponses[keyof GetBasicPriceConsentResponses];
2073
+ export type SetBasicPriceConsentData = {
2074
+ body: BasicPriceConsentInput;
2075
+ path?: never;
2076
+ query?: never;
2077
+ url: '/organization/basic-price-consent';
2078
+ };
2079
+ export type SetBasicPriceConsentErrors = {
2080
+ /**
2081
+ * The authenticated principal has no email address (e.g. a service account) and cannot record this decision.
2082
+ *
2083
+ */
2084
+ 401: unknown;
2085
+ /**
2086
+ * The consent flow does not apply to this organization.
2087
+ */
2088
+ 409: unknown;
2089
+ };
2090
+ export type SetBasicPriceConsentResponses = {
2091
+ /**
2092
+ * Decision recorded. Returns the updated consent status.
2093
+ */
2094
+ 200: BasicPriceConsent;
2095
+ };
2096
+ export type SetBasicPriceConsentResponse = SetBasicPriceConsentResponses[keyof SetBasicPriceConsentResponses];
2097
+ export type PostMcpData = {
2098
+ /**
2099
+ * JSON-RPC 2.0 request payload
2100
+ */
2101
+ body: {
2102
+ jsonrpc?: string;
2103
+ method?: string;
2104
+ id?: string | number;
2105
+ /**
2106
+ * Method-specific parameters
2107
+ */
2108
+ params?: {
2109
+ [key: string]: unknown;
2110
+ };
2111
+ };
2112
+ path?: never;
2113
+ query?: never;
2114
+ url: '/mcp';
2115
+ };
2116
+ export type PostMcpErrors = {
2117
+ /**
2118
+ * Not authenticated
2119
+ */
2120
+ 401: unknown;
2121
+ };
2122
+ export type PostMcpResponses = {
2123
+ /**
2124
+ * JSON-RPC 2.0 success or error response
2125
+ */
2126
+ 200: {
2127
+ jsonrpc?: string;
2128
+ id?: string | number;
2129
+ result?: {
2130
+ [key: string]: unknown;
2131
+ };
2132
+ error?: {
2133
+ code?: number;
2134
+ message?: string;
2135
+ };
2136
+ };
2137
+ };
2138
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2139
+ export type ListMarketplaceChartsData = {
2140
+ body?: never;
2141
+ path?: never;
2142
+ query?: never;
2143
+ url: '/marketplace';
2144
+ };
2145
+ export type ListMarketplaceChartsErrors = {
2146
+ /**
2147
+ * Not authenticated
2148
+ */
2149
+ 401: unknown;
2150
+ };
2151
+ export type ListMarketplaceChartsResponses = {
2152
+ /**
2153
+ * An array of chart listings in the marketplace.
2154
+ */
2155
+ 200: Array<MarketplaceListing>;
2156
+ };
2157
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2158
+ export type GetMarketplaceChartFilesData = {
2159
+ body?: never;
2160
+ path: {
2161
+ /**
2162
+ * Name of the chart in the marketplace.
2163
+ */
2164
+ chart_name: string;
2165
+ /**
2166
+ * Version channel pattern to match (e.g., "1.31.x-cfke.x" for latest 1.31 patch, "1.x.x-cfke.x" for latest 1.x minor).
2167
+ */
2168
+ version_channel: string;
2169
+ };
2170
+ query?: never;
2171
+ url: '/marketplace/{chart_name}/files/{version_channel}';
2172
+ };
2173
+ export type GetMarketplaceChartFilesErrors = {
2174
+ /**
2175
+ * Chart not found or no version matches the channel
2176
+ */
2177
+ 404: unknown;
2178
+ };
2179
+ export type GetMarketplaceChartFilesResponses = {
2180
+ /**
2181
+ * Returns an object containing the chart files for the latest matching version.
2182
+ */
2183
+ 200: MarketplaceListingFiles;
2184
+ };
2185
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2186
+ export type ListInvitesData = {
2187
+ body?: never;
2188
+ path?: never;
2189
+ query?: never;
2190
+ url: '/invites';
2191
+ };
2192
+ export type ListInvitesErrors = {
900
2193
  /**
901
2194
  * Not authenticated
902
2195
  */
903
2196
  401: unknown;
904
2197
  };
905
- export type ListInvoicesResponses = {
2198
+ export type ListInvitesResponses = {
2199
+ /**
2200
+ * An array of invites
2201
+ */
2202
+ 200: Array<Invite>;
2203
+ };
2204
+ export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
2205
+ export type CreateInviteData = {
2206
+ body: InviteCreateInput;
2207
+ path?: never;
2208
+ query?: never;
2209
+ url: '/invites';
2210
+ };
2211
+ export type CreateInviteResponses = {
906
2212
  /**
907
- * An array of usage records.
2213
+ * Successfully created. Returns created invite details.
908
2214
  */
909
- 200: Array<Invoice>;
2215
+ 200: Invite;
910
2216
  };
911
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
912
- export type GetInvoiceData = {
2217
+ export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
2218
+ export type GetInviteData = {
913
2219
  body?: never;
914
2220
  path: {
915
2221
  /**
916
- * Unique invoice identifier. UUID v4 string in canonical form
2222
+ * Invitation code
917
2223
  */
918
- id: string;
2224
+ code: string;
919
2225
  };
920
2226
  query?: never;
921
- url: '/billing/invoices/{id}';
2227
+ url: '/invites/{code}';
922
2228
  };
923
- export type GetInvoiceResponses = {
2229
+ export type GetInviteResponses = {
924
2230
  /**
925
- * Returns a single Invoice HTML representation under `html` property.
2231
+ * The invitation code is valid. Returns the invited email and organization.
926
2232
  */
927
2233
  200: {
928
- html?: string;
2234
+ /**
2235
+ * Email address the invite was issued to.
2236
+ */
2237
+ email?: string;
2238
+ /**
2239
+ * Identifier of the organization the invite grants access to.
2240
+ */
2241
+ organization_id?: string;
929
2242
  };
930
2243
  };
931
- export type GetInvoiceResponse = GetInvoiceResponses[keyof GetInvoiceResponses];
932
- export type GetContactData = {
2244
+ export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
2245
+ export type DeleteInviteData = {
933
2246
  body?: never;
934
- path?: never;
2247
+ path: {
2248
+ /**
2249
+ * User email address
2250
+ */
2251
+ email: string;
2252
+ };
935
2253
  query?: never;
936
- url: '/billing/contact';
2254
+ url: '/invites/{email}';
937
2255
  };
938
- export type GetContactResponses = {
2256
+ export type DeleteInviteResponses = {
939
2257
  /**
940
- * Returns a single object containing organization contact and billing address details.
2258
+ * Successfully deleted.
941
2259
  */
942
- 200: BillingContact;
2260
+ 200: unknown;
943
2261
  };
944
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
945
- export type UpdateContactData = {
946
- body: BillingContact;
947
- path?: never;
2262
+ export type QueryClusterData = {
2263
+ body?: never;
2264
+ path: {
2265
+ /**
2266
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2267
+ */
2268
+ cluster_id: string;
2269
+ };
948
2270
  query?: never;
949
- url: '/billing/contact';
2271
+ url: '/clusters/{cluster_id}/query';
950
2272
  };
951
- export type UpdateContactResponses = {
2273
+ export type QueryClusterErrors = {
952
2274
  /**
953
- * Successfully updated. Returns updated organization details.
2275
+ * Not authenticated
954
2276
  */
955
- 200: BillingContact;
2277
+ 401: unknown;
2278
+ };
2279
+ export type QueryClusterResponses = {
2280
+ /**
2281
+ * Kubernetes API response
2282
+ */
2283
+ 200: unknown;
956
2284
  };
957
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
958
2285
  export type ListFleetsData = {
959
2286
  body?: never;
960
2287
  path: {
@@ -995,6 +2322,10 @@ export type CreateFleetErrors = {
995
2322
  * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
996
2323
  */
997
2324
  402: string;
2325
+ /**
2326
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2327
+ */
2328
+ 409: string;
998
2329
  };
999
2330
  export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1000
2331
  export type CreateFleetResponses = {
@@ -1019,6 +2350,13 @@ export type DeleteFleetData = {
1019
2350
  query?: never;
1020
2351
  url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1021
2352
  };
2353
+ export type DeleteFleetErrors = {
2354
+ /**
2355
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2356
+ */
2357
+ 409: string;
2358
+ };
2359
+ export type DeleteFleetError = DeleteFleetErrors[keyof DeleteFleetErrors];
1022
2360
  export type DeleteFleetResponses = {
1023
2361
  /**
1024
2362
  * Successfully deleted.
@@ -1068,6 +2406,10 @@ export type UpdateFleetErrors = {
1068
2406
  * Organization must have a valid payment method configured to access this endpoint.
1069
2407
  */
1070
2408
  402: string;
2409
+ /**
2410
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2411
+ */
2412
+ 409: string;
1071
2413
  };
1072
2414
  export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1073
2415
  export type UpdateFleetResponses = {
@@ -1077,7 +2419,7 @@ export type UpdateFleetResponses = {
1077
2419
  200: string;
1078
2420
  };
1079
2421
  export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1080
- export type QueryClusterData = {
2422
+ export type ListChartsData = {
1081
2423
  body?: never;
1082
2424
  path: {
1083
2425
  /**
@@ -1086,491 +2428,485 @@ export type QueryClusterData = {
1086
2428
  cluster_id: string;
1087
2429
  };
1088
2430
  query?: never;
1089
- url: '/clusters/{cluster_id}/query';
1090
- };
1091
- export type QueryClusterErrors = {
1092
- /**
1093
- * Not authenticated
1094
- */
1095
- 401: unknown;
1096
- };
1097
- export type QueryClusterResponses = {
1098
- /**
1099
- * Kubernetes API response
1100
- */
1101
- 200: unknown;
1102
- };
1103
- export type ListClustersData = {
1104
- body?: never;
1105
- path?: never;
1106
- query?: never;
1107
- url: '/clusters';
2431
+ url: '/clusters/{cluster_id}/charts';
1108
2432
  };
1109
- export type ListClustersErrors = {
2433
+ export type ListChartsErrors = {
1110
2434
  /**
1111
2435
  * Not authenticated
1112
2436
  */
1113
2437
  401: unknown;
1114
2438
  };
1115
- export type ListClustersResponses = {
2439
+ export type ListChartsResponses = {
1116
2440
  /**
1117
- * An array of clusters
2441
+ * An array of charts
1118
2442
  */
1119
- 200: Array<Cluster>;
2443
+ 200: Array<Chart>;
1120
2444
  };
1121
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1122
- export type CreateClusterData = {
1123
- body: ClusterCreateInput;
1124
- path?: never;
2445
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
2446
+ export type CreateChartData = {
2447
+ body: ChartCreateInput;
2448
+ path: {
2449
+ /**
2450
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2451
+ */
2452
+ cluster_id: string;
2453
+ };
1125
2454
  query?: never;
1126
- url: '/clusters';
2455
+ url: '/clusters/{cluster_id}/charts';
1127
2456
  };
1128
- export type CreateClusterErrors = {
2457
+ export type CreateChartErrors = {
1129
2458
  /**
1130
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2459
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
1131
2460
  */
1132
- 402: string;
2461
+ 409: string;
1133
2462
  };
1134
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1135
- export type CreateClusterResponses = {
2463
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2464
+ export type CreateChartResponses = {
1136
2465
  /**
1137
- * Successfully created. Returns created Cluster ID.
2466
+ * Successfully created. Returns created Chart ID.
1138
2467
  */
1139
2468
  200: string;
1140
2469
  };
1141
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1142
- export type DeleteClusterData = {
2470
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2471
+ export type DeleteChartData = {
1143
2472
  body?: never;
1144
2473
  path: {
1145
2474
  /**
1146
2475
  * Unique identifier of the cluster. UUID v4 string in canonical form
1147
2476
  */
1148
2477
  cluster_id: string;
2478
+ /**
2479
+ * Chart deployment name as the unique identifier of the chart.
2480
+ */
2481
+ chart_name: string;
1149
2482
  };
1150
2483
  query?: never;
1151
- url: '/clusters/{cluster_id}';
2484
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1152
2485
  };
1153
- export type DeleteClusterResponses = {
2486
+ export type DeleteChartErrors = {
2487
+ /**
2488
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2489
+ */
2490
+ 409: string;
2491
+ };
2492
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2493
+ export type DeleteChartResponses = {
1154
2494
  /**
1155
2495
  * Successfully deleted.
1156
2496
  */
1157
2497
  200: string;
1158
2498
  };
1159
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1160
- export type GetClusterData = {
2499
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2500
+ export type GetChartData = {
1161
2501
  body?: never;
1162
2502
  path: {
1163
2503
  /**
1164
2504
  * Unique identifier of the cluster. UUID v4 string in canonical form
1165
2505
  */
1166
2506
  cluster_id: string;
1167
- };
1168
- query?: never;
1169
- url: '/clusters/{cluster_id}';
1170
- };
1171
- export type GetClusterResponses = {
1172
- /**
1173
- * Returns a single object containing cluster details.
1174
- */
1175
- 200: Cluster;
1176
- };
1177
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1178
- export type UpdateClusterData = {
1179
- body: ClusterUpdateInput;
1180
- path: {
1181
2507
  /**
1182
- * Unique identifier of the cluster. UUID v4 string in canonical form
2508
+ * Chart deployment name as the unique identifier of the chart.
1183
2509
  */
1184
- cluster_id: string;
2510
+ chart_name: string;
1185
2511
  };
1186
2512
  query?: never;
1187
- url: '/clusters/{cluster_id}';
2513
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1188
2514
  };
1189
- export type UpdateClusterResponses = {
2515
+ export type GetChartResponses = {
1190
2516
  /**
1191
- * Successfully updated. Returns updated cluster details.
2517
+ * Returns a single object containing chart details.
1192
2518
  */
1193
- 200: Cluster;
2519
+ 200: Chart;
1194
2520
  };
1195
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1196
- export type GetJoinInformationData = {
1197
- body?: never;
2521
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2522
+ export type UpdateChartData = {
2523
+ body: ChartUpdateInput;
1198
2524
  path: {
1199
2525
  /**
1200
2526
  * Unique identifier of the cluster. UUID v4 string in canonical form
1201
2527
  */
1202
2528
  cluster_id: string;
2529
+ /**
2530
+ * Chart deployment name as the unique identifier of the chart.
2531
+ */
2532
+ chart_name: string;
1203
2533
  };
1204
2534
  query?: never;
1205
- url: '/clusters/{cluster_id}/join_information';
2535
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1206
2536
  };
1207
- export type GetJoinInformationErrors = {
2537
+ export type UpdateChartErrors = {
1208
2538
  /**
1209
- * Not authenticated
2539
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
1210
2540
  */
1211
- 401: unknown;
2541
+ 409: string;
1212
2542
  };
1213
- export type GetJoinInformationResponses = {
2543
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2544
+ export type UpdateChartResponses = {
1214
2545
  /**
1215
- * An object of cluster join information
2546
+ * Successfully updated.
1216
2547
  */
1217
- 200: Cluster;
2548
+ 200: string;
1218
2549
  };
1219
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1220
- export type ListInvitesData = {
2550
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2551
+ export type ListClustersData = {
1221
2552
  body?: never;
1222
2553
  path?: never;
1223
2554
  query?: never;
1224
- url: '/invites';
2555
+ url: '/clusters';
1225
2556
  };
1226
- export type ListInvitesErrors = {
2557
+ export type ListClustersErrors = {
1227
2558
  /**
1228
2559
  * Not authenticated
1229
2560
  */
1230
2561
  401: unknown;
1231
2562
  };
1232
- export type ListInvitesResponses = {
2563
+ export type ListClustersResponses = {
1233
2564
  /**
1234
- * An array of invites
2565
+ * An array of clusters
1235
2566
  */
1236
- 200: Array<Invite>;
2567
+ 200: Array<Cluster>;
1237
2568
  };
1238
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1239
- export type CreateInviteData = {
1240
- body: {
1241
- /**
1242
- * User email address
1243
- */
1244
- email?: string;
1245
- };
2569
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2570
+ export type CreateClusterData = {
2571
+ body: ClusterCreateInput;
1246
2572
  path?: never;
1247
2573
  query?: never;
1248
- url: '/invites';
2574
+ url: '/clusters';
1249
2575
  };
1250
- export type CreateInviteResponses = {
2576
+ export type CreateClusterErrors = {
1251
2577
  /**
1252
- * Successfully created. Returns created invite details.
2578
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1253
2579
  */
1254
- 200: Invite;
1255
- };
1256
- export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
1257
- export type GetInviteData = {
1258
- body?: never;
1259
- path: {
1260
- /**
1261
- * Invitation code
1262
- */
1263
- code: string;
1264
- };
1265
- query?: never;
1266
- url: '/invites/{code}';
2580
+ 402: string;
1267
2581
  };
1268
- export type GetInviteResponses = {
2582
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2583
+ export type CreateClusterResponses = {
1269
2584
  /**
1270
- * Returns a single object containing invite details.
2585
+ * Successfully created. Returns created Cluster ID.
1271
2586
  */
1272
- 200: Invite;
2587
+ 200: string;
1273
2588
  };
1274
- export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1275
- export type DeleteInviteData = {
2589
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2590
+ export type DeleteClusterData = {
1276
2591
  body?: never;
1277
2592
  path: {
1278
2593
  /**
1279
- * User email address
2594
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1280
2595
  */
1281
- email: string;
2596
+ cluster_id: string;
1282
2597
  };
1283
2598
  query?: never;
1284
- url: '/invites/{email}';
1285
- };
1286
- export type DeleteInviteResponses = {
1287
- /**
1288
- * Successfully deleted.
1289
- */
1290
- 200: unknown;
1291
- };
1292
- export type GetOrganizationData = {
1293
- body?: never;
1294
- path?: never;
1295
- query?: never;
1296
- url: '/organization';
1297
- };
1298
- export type GetOrganizationResponses = {
1299
- /**
1300
- * Returns a single object containing organization details.
1301
- */
1302
- 200: Organization;
1303
- };
1304
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
1305
- export type CreateOrganizationData = {
1306
- body: OrganizationCreateInput;
1307
- path?: never;
1308
- query?: never;
1309
- url: '/organization';
1310
- };
1311
- export type CreateOrganizationResponses = {
1312
- /**
1313
- * Successfully created a new organization.
1314
- */
1315
- 200: unknown;
1316
- };
1317
- export type ListTokensData = {
1318
- body?: never;
1319
- path?: never;
1320
- query?: never;
1321
- url: '/tokens';
2599
+ url: '/clusters/{cluster_id}';
1322
2600
  };
1323
- export type ListTokensErrors = {
2601
+ export type DeleteClusterErrors = {
1324
2602
  /**
1325
- * Not authenticated
2603
+ * Cluster not found; it does not exist or has already been deleted.
1326
2604
  */
1327
- 401: unknown;
1328
- };
1329
- export type ListTokensResponses = {
2605
+ 404: unknown;
1330
2606
  /**
1331
- * Returns a list of access token details with masked secrets.
2607
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
1332
2608
  */
1333
- 200: Array<Token>;
1334
- };
1335
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1336
- export type CreateTokenData = {
1337
- body: TokenCreateInput;
1338
- path?: never;
1339
- query?: never;
1340
- url: '/tokens';
1341
- };
1342
- export type CreateTokenErrors = {
2609
+ 409: string;
1343
2610
  /**
1344
- * Not authenticated
2611
+ * Transient failure tearing down the cluster; retry the request.
1345
2612
  */
1346
- 401: unknown;
2613
+ 503: unknown;
1347
2614
  };
1348
- export type CreateTokenResponses = {
2615
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2616
+ export type DeleteClusterResponses = {
1349
2617
  /**
1350
- * Successfully created. Returns created token details with unmasked/raw secret.
2618
+ * Successfully deleted. The cluster has been torn down.
1351
2619
  */
1352
- 200: Token;
2620
+ 200: string;
1353
2621
  };
1354
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1355
- export type DeleteTokenData = {
2622
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2623
+ export type GetClusterData = {
1356
2624
  body?: never;
1357
2625
  path: {
1358
2626
  /**
1359
- * Generated unique identifier of the access token.
2627
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1360
2628
  */
1361
- token_id: string;
2629
+ cluster_id: string;
1362
2630
  };
1363
2631
  query?: never;
1364
- url: '/tokens/{token_id}';
2632
+ url: '/clusters/{cluster_id}';
1365
2633
  };
1366
- export type DeleteTokenResponses = {
2634
+ export type GetClusterResponses = {
1367
2635
  /**
1368
- * Successfully deleted.
2636
+ * Returns a single object containing cluster details.
1369
2637
  */
1370
- 200: unknown;
2638
+ 200: Cluster;
1371
2639
  };
1372
- export type GetTokenData = {
1373
- body?: never;
2640
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2641
+ export type UpdateClusterData = {
2642
+ body: ClusterUpdateInput;
1374
2643
  path: {
1375
2644
  /**
1376
- * Generated unique identifier of the access token.
2645
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1377
2646
  */
1378
- token_id: string;
2647
+ cluster_id: string;
1379
2648
  };
1380
2649
  query?: never;
1381
- url: '/tokens/{token_id}';
2650
+ url: '/clusters/{cluster_id}';
1382
2651
  };
1383
- export type GetTokenErrors = {
2652
+ export type UpdateClusterErrors = {
1384
2653
  /**
1385
- * Not authenticated
2654
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
1386
2655
  */
1387
- 401: unknown;
2656
+ 409: string;
1388
2657
  };
1389
- export type GetTokenResponses = {
2658
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2659
+ export type UpdateClusterResponses = {
1390
2660
  /**
1391
- * Returns access token details with masked secret.
2661
+ * Successfully updated. Returns updated cluster details.
1392
2662
  */
1393
- 200: Token;
2663
+ 200: Cluster;
1394
2664
  };
1395
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1396
- export type UpdateTokenData = {
1397
- body: TokenUpdateInput;
2665
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2666
+ export type GetJoinInformationData = {
2667
+ body?: never;
1398
2668
  path: {
1399
2669
  /**
1400
- * Generated unique identifier of the access token.
2670
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1401
2671
  */
1402
- token_id: string;
2672
+ cluster_id: string;
1403
2673
  };
1404
2674
  query?: never;
1405
- url: '/tokens/{token_id}';
2675
+ url: '/clusters/{cluster_id}/join_information';
1406
2676
  };
1407
- export type UpdateTokenErrors = {
2677
+ export type GetJoinInformationErrors = {
1408
2678
  /**
1409
2679
  * Not authenticated
1410
2680
  */
1411
2681
  401: unknown;
2682
+ /**
2683
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2684
+ */
2685
+ 409: string;
1412
2686
  };
1413
- export type UpdateTokenResponses = {
2687
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2688
+ export type GetJoinInformationResponses = {
1414
2689
  /**
1415
- * Successfully updated. Returns updated token details with masked secret.
2690
+ * An object of cluster join information
1416
2691
  */
1417
- 200: Token;
2692
+ 200: ClusterJoinInformation;
1418
2693
  };
1419
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1420
- export type RegenerateTokenData = {
2694
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2695
+ export type GetUsageData = {
1421
2696
  body?: never;
1422
- path: {
2697
+ path?: never;
2698
+ query?: {
1423
2699
  /**
1424
- * Generated unique identifier of the access token.
2700
+ * Time granularity for usage aggregation - hourly (Past 48 hours aggregated by hour), daily (Past 30 days aggregated by day), monthly (Past 12 months aggregated by month)
1425
2701
  */
1426
- token_id: string;
2702
+ granularity?: 'hourly' | 'daily' | 'monthly';
1427
2703
  };
1428
- query?: never;
1429
- url: '/tokens/{token_id}/secret';
2704
+ url: '/billing/usage';
1430
2705
  };
1431
- export type RegenerateTokenErrors = {
2706
+ export type GetUsageErrors = {
1432
2707
  /**
1433
2708
  * Not authenticated
1434
2709
  */
1435
2710
  401: unknown;
1436
2711
  };
1437
- export type RegenerateTokenResponses = {
2712
+ export type GetUsageResponses = {
1438
2713
  /**
1439
- * Successfully updated. Returns updated token details with unmasked / raw secret.
2714
+ * Usage data with facets for filtering
1440
2715
  */
1441
- 200: Token;
2716
+ 200: UsageResponse;
1442
2717
  };
1443
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1444
- export type ListUserOrganizationsData = {
2718
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2719
+ export type GetPaymentMethodSecretData = {
1445
2720
  body?: never;
1446
- path: {
1447
- /**
1448
- * User email address.
1449
- */
1450
- email: string;
1451
- };
2721
+ path?: never;
1452
2722
  query?: never;
1453
- url: '/users/organizations/{email}';
2723
+ url: '/billing/payment-method';
1454
2724
  };
1455
- export type ListUserOrganizationsResponses = {
2725
+ export type GetPaymentMethodSecretResponses = {
1456
2726
  /**
1457
- * An array of organizations the user belongs to.
2727
+ * The client secret. Used for client-side retrieval using a publishable key. The client secret can be used to complete a payment from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
2728
+ *
1458
2729
  */
1459
- 200: Array<{
1460
- /**
1461
- * Unique identifier of the organization. UUID v4 string in canonical form
1462
- */
1463
- realm?: string;
2730
+ 200: {
1464
2731
  /**
1465
- * Human-readable name of the organization
2732
+ * The client secret.
1466
2733
  */
1467
- displayName?: string;
1468
- }>;
2734
+ id?: string;
2735
+ };
1469
2736
  };
1470
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1471
- export type ListUsersData = {
2737
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2738
+ export type ListPaymentMethodsData = {
1472
2739
  body?: never;
1473
2740
  path?: never;
1474
2741
  query?: never;
1475
- url: '/users';
2742
+ url: '/billing/payment-methods';
1476
2743
  };
1477
- export type ListUsersErrors = {
2744
+ export type ListPaymentMethodsErrors = {
1478
2745
  /**
1479
2746
  * Not authenticated
1480
2747
  */
1481
2748
  401: unknown;
1482
2749
  };
1483
- export type ListUsersResponses = {
2750
+ export type ListPaymentMethodsResponses = {
1484
2751
  /**
1485
- * An array of users
2752
+ * An array of payment methods.
1486
2753
  */
1487
- 200: Array<User>;
2754
+ 200: Array<PaymentMethod>;
1488
2755
  };
1489
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1490
- export type CreateUserData = {
1491
- body: UserCreateInput;
1492
- path?: never;
2756
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
2757
+ export type SetDefaultPaymentMethodData = {
2758
+ body?: never;
2759
+ path: {
2760
+ /**
2761
+ * Stripe payment method identifier.
2762
+ */
2763
+ paymentMethodId: string;
2764
+ };
1493
2765
  query?: never;
1494
- url: '/users';
2766
+ url: '/billing/payment-methods/{paymentMethodId}/default';
1495
2767
  };
1496
- export type CreateUserResponses = {
2768
+ export type SetDefaultPaymentMethodErrors = {
1497
2769
  /**
1498
- * Successfully created. Returns created user details.
2770
+ * The bank transfer payment method cannot be set as the default.
1499
2771
  */
1500
- 200: User;
2772
+ 400: unknown;
2773
+ /**
2774
+ * Not authenticated
2775
+ */
2776
+ 401: unknown;
2777
+ /**
2778
+ * Payment method not found.
2779
+ */
2780
+ 404: unknown;
1501
2781
  };
1502
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1503
- export type DeleteUserData = {
2782
+ export type SetDefaultPaymentMethodResponses = {
2783
+ /**
2784
+ * Default payment method updated.
2785
+ */
2786
+ 204: void;
2787
+ };
2788
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
2789
+ export type DeletePaymentMethodData = {
1504
2790
  body?: never;
1505
2791
  path: {
1506
2792
  /**
1507
- * Unique user identifier. UUID v4 string in canonical form
2793
+ * Stripe payment method identifier.
1508
2794
  */
1509
- user_id: string;
2795
+ paymentMethodId: string;
1510
2796
  };
1511
2797
  query?: never;
1512
- url: '/users/{user_id}';
2798
+ url: '/billing/payment-methods/{paymentMethodId}';
1513
2799
  };
1514
- export type DeleteUserErrors = {
2800
+ export type DeletePaymentMethodErrors = {
1515
2801
  /**
1516
- * Deleting own user is not allowed. Delete your organization instead.
2802
+ * The bank transfer payment method cannot be removed.
1517
2803
  */
1518
2804
  400: unknown;
1519
2805
  /**
1520
2806
  * Not authenticated
1521
2807
  */
1522
2808
  401: unknown;
2809
+ /**
2810
+ * Payment method not found.
2811
+ */
2812
+ 404: unknown;
2813
+ /**
2814
+ * Cannot delete the only remaining payment method.
2815
+ */
2816
+ 409: unknown;
1523
2817
  };
1524
- export type DeleteUserResponses = {
2818
+ export type DeletePaymentMethodResponses = {
1525
2819
  /**
1526
- * User profile information
2820
+ * Payment method deleted.
1527
2821
  */
1528
- 200: User;
2822
+ 204: void;
1529
2823
  };
1530
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1531
- export type GetUserData = {
2824
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
2825
+ export type ListInvoicesData = {
1532
2826
  body?: never;
1533
- path: {
1534
- /**
1535
- * Unique user identifier. UUID v4 string in canonical form
1536
- */
1537
- user_id: string;
1538
- };
2827
+ path?: never;
1539
2828
  query?: never;
1540
- url: '/users/{user_id}';
2829
+ url: '/billing/invoices';
1541
2830
  };
1542
- export type GetUserErrors = {
2831
+ export type ListInvoicesErrors = {
1543
2832
  /**
1544
2833
  * Not authenticated
1545
2834
  */
1546
2835
  401: unknown;
1547
2836
  };
1548
- export type GetUserResponses = {
2837
+ export type ListInvoicesResponses = {
1549
2838
  /**
1550
- * User profile information
2839
+ * An array of usage records.
1551
2840
  */
1552
- 200: User;
2841
+ 200: Array<Invoice>;
1553
2842
  };
1554
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1555
- export type UpdateUserData = {
1556
- body: UserUpdateInput;
1557
- path: {
2843
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
2844
+ export type GetContactData = {
2845
+ body?: never;
2846
+ path?: never;
2847
+ query?: never;
2848
+ url: '/billing/contact';
2849
+ };
2850
+ export type GetContactResponses = {
2851
+ /**
2852
+ * Returns a single object containing organization contact and billing address details.
2853
+ */
2854
+ 200: BillingContact;
2855
+ };
2856
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
2857
+ export type UpdateContactData = {
2858
+ body: BillingContact;
2859
+ path?: never;
2860
+ query?: never;
2861
+ url: '/billing/contact';
2862
+ };
2863
+ export type UpdateContactResponses = {
2864
+ /**
2865
+ * Successfully updated. Returns updated organization details.
2866
+ */
2867
+ 200: BillingContact;
2868
+ };
2869
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
2870
+ export type GetCreditsData = {
2871
+ body?: never;
2872
+ path?: never;
2873
+ query?: never;
2874
+ url: '/billing/credits';
2875
+ };
2876
+ export type GetCreditsErrors = {
2877
+ /**
2878
+ * Not authenticated
2879
+ */
2880
+ 401: unknown;
2881
+ };
2882
+ export type GetCreditsResponses = {
2883
+ /**
2884
+ * An array of the applied promotional credits records.
2885
+ */
2886
+ 200: Array<BillingCredits>;
2887
+ };
2888
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
2889
+ export type RedeemCreditsData = {
2890
+ body: {
1558
2891
  /**
1559
- * Unique user identifier. UUID v4 string in canonical form
2892
+ * Promotional code to redeem
1560
2893
  */
1561
- user_id: string;
2894
+ code?: string;
1562
2895
  };
2896
+ path?: never;
1563
2897
  query?: never;
1564
- url: '/users/{user_id}';
2898
+ url: '/billing/credits';
1565
2899
  };
1566
- export type UpdateUserResponses = {
2900
+ export type RedeemCreditsErrors = {
1567
2901
  /**
1568
- * Successfully created. Returns created user details.
2902
+ * Not authenticated
1569
2903
  */
1570
- 200: User;
2904
+ 401: unknown;
1571
2905
  };
1572
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1573
- export type ClientOptions = {
1574
- baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
2906
+ export type RedeemCreditsResponses = {
2907
+ /**
2908
+ * Successfully created a new organization.
2909
+ */
2910
+ 200: unknown;
1575
2911
  };
1576
2912
  //# sourceMappingURL=types.gen.d.ts.map