@cloudfleet/sdk 0.0.1-b9e1348 → 0.0.1-ba4d67b

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 (88) 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/index.d.ts +3 -0
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +3 -0
  61. package/dist/index.js.map +1 -1
  62. package/dist/schemas.gen.d.ts +1768 -610
  63. package/dist/schemas.gen.d.ts.map +1 -1
  64. package/dist/schemas.gen.js +3130 -685
  65. package/dist/schemas.gen.js.map +1 -1
  66. package/dist/sdk.gen.d.ts +341 -142
  67. package/dist/sdk.gen.d.ts.map +1 -1
  68. package/dist/sdk.gen.js +481 -274
  69. package/dist/sdk.gen.js.map +1 -1
  70. package/dist/services/kubernetes/api.d.ts +196 -0
  71. package/dist/services/kubernetes/api.d.ts.map +1 -0
  72. package/dist/services/kubernetes/api.js +140 -0
  73. package/dist/services/kubernetes/api.js.map +1 -0
  74. package/dist/services/kubernetes/index.d.ts +44 -0
  75. package/dist/services/kubernetes/index.d.ts.map +1 -0
  76. package/dist/services/kubernetes/index.js +68 -0
  77. package/dist/services/kubernetes/index.js.map +1 -0
  78. package/dist/services/kubernetes/types.d.ts +1335 -0
  79. package/dist/services/kubernetes/types.d.ts.map +1 -0
  80. package/dist/services/kubernetes/types.js +2 -0
  81. package/dist/services/kubernetes/types.js.map +1 -0
  82. package/dist/types.gen.d.ts +2049 -772
  83. package/dist/types.gen.d.ts.map +1 -1
  84. package/dist/zod.gen.d.ts +3982 -2192
  85. package/dist/zod.gen.d.ts.map +1 -1
  86. package/dist/zod.gen.js +1713 -814
  87. package/dist/zod.gen.js.map +1 -1
  88. package/package.json +30 -7
@@ -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,350 +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';
761
- };
762
- export type 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
+ }>;
763
1071
  /**
764
- * User email address.
1072
+ * Total size of all tags in the repository in bytes.
765
1073
  */
766
- email: string;
1074
+ totalSize: number;
1075
+ };
1076
+ export type RegistryTag = {
767
1077
  /**
768
- * User first name.
1078
+ * Tag name.
769
1079
  */
770
- first_name: string;
1080
+ name: string;
771
1081
  /**
772
- * User last name.
1082
+ * Manifest digest for pulling by digest.
773
1083
  */
774
- last_name: string;
1084
+ digest: string;
775
1085
  /**
776
- * User role. Can be 'Administrator', 'User'.
1086
+ * Media type of the manifest.
777
1087
  */
778
- role: 'Administrator' | 'User';
1088
+ mediaType?: string;
779
1089
  /**
780
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1090
+ * Manifest config metadata.
781
1091
  */
782
- status: 'active' | 'inactive';
1092
+ config?: {
1093
+ /**
1094
+ * Size of the config in bytes.
1095
+ */
1096
+ size: number;
1097
+ };
783
1098
  /**
784
- * Unique identifier of the user. UUID v4 string in canonical form
1099
+ * Array of layer metadata.
785
1100
  */
786
- id: string;
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
+ }>;
787
1111
  /**
788
- * Creation date of the user. ISO 8601 date string in UTC timezone
1112
+ * Array of manifests for multi-arch images.
789
1113
  */
790
- date_created: string;
791
- cluster_permissions?: Array<{
1114
+ manifests?: Array<{
792
1115
  /**
793
- * Unique identifier of the cluster. UUID v4 string in canonical form
1116
+ * Digest of the manifest.
794
1117
  */
795
- cluster_id: string;
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
+ }>;
796
1149
  /**
797
- * User permissions to access the cluster. Can be `readwrite` or `readonly`.
1150
+ * Total size of this platform manifest in bytes.
798
1151
  */
799
- permissions: 'readwrite' | 'readonly';
1152
+ size?: number;
800
1153
  }>;
801
- };
802
- export type UserUpdateInput = {
803
1154
  /**
804
- * User email address.
1155
+ * Total size of the tag in bytes.
805
1156
  */
806
- email?: string;
1157
+ size: number;
807
1158
  /**
808
- * User first name.
1159
+ * Registry region.
809
1160
  */
810
- first_name?: string;
1161
+ region: string;
811
1162
  /**
812
- * User last name.
1163
+ * Repository name.
813
1164
  */
814
- last_name?: string;
1165
+ repository: string;
815
1166
  /**
816
- * User role. Can be 'Administrator', 'User'.
1167
+ * Full URI of the tag.
817
1168
  */
818
- role?: 'Administrator' | 'User';
1169
+ uri: string;
1170
+ };
1171
+ export type TicketAttachment = {
819
1172
  /**
820
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1173
+ * Unique identifier of the attachment (Mongo ObjectId).
821
1174
  */
822
- status?: 'active' | 'inactive';
823
- };
824
- export type GetUsageData = {
825
- body?: never;
826
- path?: never;
827
- query?: never;
828
- url: '/billing/usage';
829
- };
830
- export type GetUsageErrors = {
1175
+ id: string;
831
1176
  /**
832
- * Not authenticated
1177
+ * Original filename as uploaded.
833
1178
  */
834
- 401: unknown;
835
- };
836
- export type GetUsageResponses = {
1179
+ filename: string;
837
1180
  /**
838
- * An array of usage records.
1181
+ * MIME content type of the attachment.
839
1182
  */
840
- 200: Array<Usage>;
841
- };
842
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
843
- export type GetBalanceData = {
844
- body?: never;
845
- path?: never;
846
- query?: never;
847
- url: '/billing/balance';
848
- };
849
- export type GetBalanceResponses = {
1183
+ content_type: string;
850
1184
  /**
851
- * Current balance of the organization in USD as a floating-point number.
1185
+ * Size of the attachment in bytes.
852
1186
  */
853
- 200: number;
854
- };
855
- export type GetBalanceResponse = GetBalanceResponses[keyof GetBalanceResponses];
856
- export type GetPaymentMethodData = {
857
- body?: never;
858
- path?: never;
859
- query?: never;
860
- url: '/billing/payment-method';
1187
+ size: number;
861
1188
  };
862
- export type GetPaymentMethodErrors = {
1189
+ export type TicketCreateInput = {
863
1190
  /**
864
- * Returns 404 Not Found if the organization does not have a payment method set up.
1191
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
865
1192
  */
866
- 404: unknown;
867
- };
868
- export type GetPaymentMethodResponses = {
1193
+ category: 'billing' | 'technical' | 'general';
869
1194
  /**
870
- * Redacted payment card information.
1195
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
871
1196
  */
872
- 200: PaymentMethod;
873
- };
874
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
875
- export type GetPaymentMethodSecretData = {
876
- body?: never;
877
- path?: never;
878
- query?: never;
879
- url: '/billing/payment-method';
880
- };
881
- export type GetPaymentMethodSecretResponses = {
1197
+ body: string;
882
1198
  /**
883
- * 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.
884
- *
1199
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
885
1200
  */
886
- 200: {
887
- /**
888
- * The client secret.
889
- */
890
- id?: string;
891
- };
892
- };
893
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
894
- export type ListInvoicesData = {
895
- body?: never;
896
- path?: never;
897
- query: {
898
- /**
899
- * Start date for the usage. Date of oldest data point to retrieve.
900
- */
901
- start_date: string;
902
- /**
903
- * End date for the usage. Date of newest data point to retrieve.
904
- */
905
- end_date: string;
1201
+ properties?: {
1202
+ [key: string]: unknown;
906
1203
  };
907
- url: '/billing/invoices';
908
1204
  };
909
- export type ListInvoicesErrors = {
1205
+ export type TicketMessageInput = {
910
1206
  /**
911
- * Not authenticated
1207
+ * Reply body in markdown.
912
1208
  */
913
- 401: unknown;
1209
+ body: string;
914
1210
  };
915
- export type ListInvoicesResponses = {
1211
+ export type TicketMessage = {
1212
+ /**
1213
+ * Unique identifier of the message (Mongo ObjectId).
1214
+ */
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<{
1236
+ /**
1237
+ * Unique identifier of the attachment (Mongo ObjectId).
1238
+ */
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;
1782
+ };
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 = {
1791
+ body?: never;
1792
+ path?: never;
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: {
1805
+ /**
1806
+ * JSON-encoded TicketCreateInput.
1807
+ */
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 = {
916
1846
  /**
917
- * An array of usage records.
1847
+ * Ticket with messages (internal notes excluded).
918
1848
  */
919
- 200: Array<Invoice>;
1849
+ 200: Ticket;
1850
+ };
1851
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
1852
+ export type ReplyTicketData = {
1853
+ body: {
1854
+ /**
1855
+ * JSON-encoded TicketMessageInput.
1856
+ */
1857
+ payload?: string;
1858
+ attachments?: Array<Blob | File>;
1859
+ };
1860
+ path: {
1861
+ ticket_id: string;
1862
+ };
1863
+ query?: never;
1864
+ url: '/tickets/{ticket_id}/messages';
1865
+ };
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 = {
2193
+ /**
2194
+ * Not authenticated
2195
+ */
2196
+ 401: unknown;
2197
+ };
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 = {
2212
+ /**
2213
+ * Successfully created. Returns created invite details.
2214
+ */
2215
+ 200: Invite;
2216
+ };
2217
+ export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
2218
+ export type GetInviteData = {
2219
+ body?: never;
2220
+ path: {
2221
+ /**
2222
+ * Invitation code
2223
+ */
2224
+ code: string;
2225
+ };
2226
+ query?: never;
2227
+ url: '/invites/{code}';
2228
+ };
2229
+ export type GetInviteResponses = {
2230
+ /**
2231
+ * The invitation code is valid. Returns the invited email and organization.
2232
+ */
2233
+ 200: {
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;
2242
+ };
920
2243
  };
921
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
922
- export type GetInvoiceData = {
2244
+ export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
2245
+ export type DeleteInviteData = {
923
2246
  body?: never;
924
2247
  path: {
925
2248
  /**
926
- * Unique invoice identifier. UUID v4 string in canonical form
2249
+ * User email address
927
2250
  */
928
- id: string;
2251
+ email: string;
929
2252
  };
930
2253
  query?: never;
931
- url: '/billing/invoices/{id}';
2254
+ url: '/invites/{email}';
932
2255
  };
933
- export type GetInvoiceResponses = {
2256
+ export type DeleteInviteResponses = {
934
2257
  /**
935
- * Returns a single Invoice HTML representation under `html` property.
2258
+ * Successfully deleted.
936
2259
  */
937
- 200: {
938
- html?: string;
939
- };
2260
+ 200: unknown;
940
2261
  };
941
- export type GetInvoiceResponse = GetInvoiceResponses[keyof GetInvoiceResponses];
942
- export type GetContactData = {
2262
+ export type QueryClusterData = {
943
2263
  body?: never;
944
- path?: never;
2264
+ path: {
2265
+ /**
2266
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2267
+ */
2268
+ cluster_id: string;
2269
+ };
945
2270
  query?: never;
946
- url: '/billing/contact';
2271
+ url: '/clusters/{cluster_id}/query';
947
2272
  };
948
- export type GetContactResponses = {
2273
+ export type QueryClusterErrors = {
949
2274
  /**
950
- * Returns a single object containing organization contact and billing address details.
2275
+ * Not authenticated
951
2276
  */
952
- 200: BillingContact;
953
- };
954
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
955
- export type UpdateContactData = {
956
- body: BillingContact;
957
- path?: never;
958
- query?: never;
959
- url: '/billing/contact';
2277
+ 401: unknown;
960
2278
  };
961
- export type UpdateContactResponses = {
2279
+ export type QueryClusterResponses = {
962
2280
  /**
963
- * Successfully updated. Returns updated organization details.
2281
+ * Kubernetes API response
964
2282
  */
965
- 200: BillingContact;
2283
+ 200: unknown;
966
2284
  };
967
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
968
2285
  export type ListFleetsData = {
969
2286
  body?: never;
970
2287
  path: {
@@ -1005,6 +2322,10 @@ export type CreateFleetErrors = {
1005
2322
  * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1006
2323
  */
1007
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;
1008
2329
  };
1009
2330
  export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1010
2331
  export type CreateFleetResponses = {
@@ -1029,6 +2350,13 @@ export type DeleteFleetData = {
1029
2350
  query?: never;
1030
2351
  url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1031
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];
1032
2360
  export type DeleteFleetResponses = {
1033
2361
  /**
1034
2362
  * Successfully deleted.
@@ -1078,6 +2406,10 @@ export type UpdateFleetErrors = {
1078
2406
  * Organization must have a valid payment method configured to access this endpoint.
1079
2407
  */
1080
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;
1081
2413
  };
1082
2414
  export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1083
2415
  export type UpdateFleetResponses = {
@@ -1087,7 +2419,7 @@ export type UpdateFleetResponses = {
1087
2419
  200: string;
1088
2420
  };
1089
2421
  export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1090
- export type QueryClusterData = {
2422
+ export type ListChartsData = {
1091
2423
  body?: never;
1092
2424
  path: {
1093
2425
  /**
@@ -1096,540 +2428,485 @@ export type QueryClusterData = {
1096
2428
  cluster_id: string;
1097
2429
  };
1098
2430
  query?: never;
1099
- url: '/clusters/{cluster_id}/query';
1100
- };
1101
- export type QueryClusterErrors = {
1102
- /**
1103
- * Not authenticated
1104
- */
1105
- 401: unknown;
1106
- };
1107
- export type QueryClusterResponses = {
1108
- /**
1109
- * Kubernetes API response
1110
- */
1111
- 200: unknown;
1112
- };
1113
- export type ListClustersData = {
1114
- body?: never;
1115
- path?: never;
1116
- query?: never;
1117
- url: '/clusters';
2431
+ url: '/clusters/{cluster_id}/charts';
1118
2432
  };
1119
- export type ListClustersErrors = {
2433
+ export type ListChartsErrors = {
1120
2434
  /**
1121
2435
  * Not authenticated
1122
2436
  */
1123
2437
  401: unknown;
1124
2438
  };
1125
- export type ListClustersResponses = {
2439
+ export type ListChartsResponses = {
1126
2440
  /**
1127
- * An array of clusters
2441
+ * An array of charts
1128
2442
  */
1129
- 200: Array<Cluster>;
2443
+ 200: Array<Chart>;
1130
2444
  };
1131
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1132
- export type CreateClusterData = {
1133
- body: ClusterCreateInput;
1134
- 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
+ };
1135
2454
  query?: never;
1136
- url: '/clusters';
2455
+ url: '/clusters/{cluster_id}/charts';
1137
2456
  };
1138
- export type CreateClusterErrors = {
2457
+ export type CreateChartErrors = {
1139
2458
  /**
1140
- * 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.
1141
2460
  */
1142
- 402: string;
2461
+ 409: string;
1143
2462
  };
1144
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1145
- export type CreateClusterResponses = {
2463
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2464
+ export type CreateChartResponses = {
1146
2465
  /**
1147
- * Successfully created. Returns created Cluster ID.
2466
+ * Successfully created. Returns created Chart ID.
1148
2467
  */
1149
2468
  200: string;
1150
2469
  };
1151
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1152
- export type DeleteClusterData = {
2470
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2471
+ export type DeleteChartData = {
1153
2472
  body?: never;
1154
2473
  path: {
1155
2474
  /**
1156
2475
  * Unique identifier of the cluster. UUID v4 string in canonical form
1157
2476
  */
1158
2477
  cluster_id: string;
2478
+ /**
2479
+ * Chart deployment name as the unique identifier of the chart.
2480
+ */
2481
+ chart_name: string;
1159
2482
  };
1160
2483
  query?: never;
1161
- url: '/clusters/{cluster_id}';
2484
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1162
2485
  };
1163
- 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 = {
1164
2494
  /**
1165
2495
  * Successfully deleted.
1166
2496
  */
1167
2497
  200: string;
1168
2498
  };
1169
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1170
- export type GetClusterData = {
2499
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2500
+ export type GetChartData = {
1171
2501
  body?: never;
1172
2502
  path: {
1173
2503
  /**
1174
2504
  * Unique identifier of the cluster. UUID v4 string in canonical form
1175
2505
  */
1176
2506
  cluster_id: string;
1177
- };
1178
- query?: never;
1179
- url: '/clusters/{cluster_id}';
1180
- };
1181
- export type GetClusterResponses = {
1182
- /**
1183
- * Returns a single object containing cluster details.
1184
- */
1185
- 200: Cluster;
1186
- };
1187
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1188
- export type UpdateClusterData = {
1189
- body: ClusterUpdateInput;
1190
- path: {
1191
2507
  /**
1192
- * Unique identifier of the cluster. UUID v4 string in canonical form
2508
+ * Chart deployment name as the unique identifier of the chart.
1193
2509
  */
1194
- cluster_id: string;
2510
+ chart_name: string;
1195
2511
  };
1196
2512
  query?: never;
1197
- url: '/clusters/{cluster_id}';
2513
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1198
2514
  };
1199
- export type UpdateClusterResponses = {
2515
+ export type GetChartResponses = {
1200
2516
  /**
1201
- * Successfully updated. Returns updated cluster details.
2517
+ * Returns a single object containing chart details.
1202
2518
  */
1203
- 200: Cluster;
2519
+ 200: Chart;
1204
2520
  };
1205
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1206
- export type GetJoinInformationData = {
1207
- body?: never;
2521
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2522
+ export type UpdateChartData = {
2523
+ body: ChartUpdateInput;
1208
2524
  path: {
1209
2525
  /**
1210
2526
  * Unique identifier of the cluster. UUID v4 string in canonical form
1211
2527
  */
1212
2528
  cluster_id: string;
2529
+ /**
2530
+ * Chart deployment name as the unique identifier of the chart.
2531
+ */
2532
+ chart_name: string;
1213
2533
  };
1214
2534
  query?: never;
1215
- url: '/clusters/{cluster_id}/join_information';
2535
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1216
2536
  };
1217
- export type GetJoinInformationErrors = {
2537
+ export type UpdateChartErrors = {
1218
2538
  /**
1219
- * 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.
1220
2540
  */
1221
- 401: unknown;
2541
+ 409: string;
1222
2542
  };
1223
- export type GetJoinInformationResponses = {
2543
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2544
+ export type UpdateChartResponses = {
1224
2545
  /**
1225
- * An object of cluster join information
2546
+ * Successfully updated.
1226
2547
  */
1227
- 200: Cluster;
2548
+ 200: string;
1228
2549
  };
1229
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1230
- export type ListInvitesData = {
2550
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2551
+ export type ListClustersData = {
1231
2552
  body?: never;
1232
2553
  path?: never;
1233
2554
  query?: never;
1234
- url: '/invites';
2555
+ url: '/clusters';
1235
2556
  };
1236
- export type ListInvitesErrors = {
2557
+ export type ListClustersErrors = {
1237
2558
  /**
1238
2559
  * Not authenticated
1239
2560
  */
1240
2561
  401: unknown;
1241
2562
  };
1242
- export type ListInvitesResponses = {
2563
+ export type ListClustersResponses = {
1243
2564
  /**
1244
- * An array of invites
2565
+ * An array of clusters
1245
2566
  */
1246
- 200: Array<Invite>;
2567
+ 200: Array<Cluster>;
1247
2568
  };
1248
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1249
- export type CreateInviteData = {
1250
- body: {
1251
- /**
1252
- * User email address
1253
- */
1254
- email?: string;
1255
- };
2569
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2570
+ export type CreateClusterData = {
2571
+ body: ClusterCreateInput;
1256
2572
  path?: never;
1257
2573
  query?: never;
1258
- url: '/invites';
2574
+ url: '/clusters';
1259
2575
  };
1260
- export type CreateInviteResponses = {
2576
+ export type CreateClusterErrors = {
1261
2577
  /**
1262
- * Successfully created. Returns created invite details.
2578
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1263
2579
  */
1264
- 200: Invite;
1265
- };
1266
- export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
1267
- export type GetInviteData = {
1268
- body?: never;
1269
- path: {
1270
- /**
1271
- * Invitation code
1272
- */
1273
- code: string;
1274
- };
1275
- query?: never;
1276
- url: '/invites/{code}';
2580
+ 402: string;
1277
2581
  };
1278
- export type GetInviteResponses = {
2582
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2583
+ export type CreateClusterResponses = {
1279
2584
  /**
1280
- * Returns a single object containing invite details.
2585
+ * Successfully created. Returns created Cluster ID.
1281
2586
  */
1282
- 200: Invite;
2587
+ 200: string;
1283
2588
  };
1284
- export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1285
- export type DeleteInviteData = {
2589
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2590
+ export type DeleteClusterData = {
1286
2591
  body?: never;
1287
2592
  path: {
1288
2593
  /**
1289
- * User email address
2594
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1290
2595
  */
1291
- email: string;
2596
+ cluster_id: string;
1292
2597
  };
1293
2598
  query?: never;
1294
- url: '/invites/{email}';
1295
- };
1296
- export type DeleteInviteResponses = {
1297
- /**
1298
- * Successfully deleted.
1299
- */
1300
- 200: unknown;
1301
- };
1302
- export type GetOrganizationData = {
1303
- body?: never;
1304
- path?: never;
1305
- query?: never;
1306
- url: '/organization';
1307
- };
1308
- export type GetOrganizationResponses = {
1309
- /**
1310
- * Returns a single object containing organization details.
1311
- */
1312
- 200: Organization;
1313
- };
1314
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
1315
- export type CreateOrganizationData = {
1316
- body: OrganizationCreateInput;
1317
- path?: never;
1318
- query?: never;
1319
- url: '/organization';
1320
- };
1321
- export type CreateOrganizationResponses = {
1322
- /**
1323
- * Successfully created a new organization.
1324
- */
1325
- 200: unknown;
1326
- };
1327
- export type ListTokensData = {
1328
- body?: never;
1329
- path?: never;
1330
- query?: never;
1331
- url: '/tokens';
1332
- };
1333
- export type ListTokensErrors = {
1334
- /**
1335
- * Not authenticated
1336
- */
1337
- 401: unknown;
1338
- };
1339
- export type ListTokensResponses = {
1340
- /**
1341
- * Returns a list of access token details with masked secrets.
1342
- */
1343
- 200: Array<Token>;
1344
- };
1345
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1346
- export type CreateTokenData = {
1347
- body: TokenCreateInput;
1348
- path?: never;
1349
- query?: never;
1350
- url: '/tokens';
2599
+ url: '/clusters/{cluster_id}';
1351
2600
  };
1352
- export type CreateTokenErrors = {
2601
+ export type DeleteClusterErrors = {
1353
2602
  /**
1354
- * Not authenticated
2603
+ * Cluster not found; it does not exist or has already been deleted.
1355
2604
  */
1356
- 401: unknown;
2605
+ 404: unknown;
2606
+ /**
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.
2608
+ */
2609
+ 409: string;
2610
+ /**
2611
+ * Transient failure tearing down the cluster; retry the request.
2612
+ */
2613
+ 503: unknown;
1357
2614
  };
1358
- export type CreateTokenResponses = {
2615
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2616
+ export type DeleteClusterResponses = {
1359
2617
  /**
1360
- * Successfully created. Returns created token details with unmasked/raw secret.
2618
+ * Successfully deleted. The cluster has been torn down.
1361
2619
  */
1362
- 200: Token;
2620
+ 200: string;
1363
2621
  };
1364
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1365
- export type DeleteTokenData = {
2622
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2623
+ export type GetClusterData = {
1366
2624
  body?: never;
1367
2625
  path: {
1368
2626
  /**
1369
- * Generated unique identifier of the access token.
2627
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1370
2628
  */
1371
- token_id: string;
2629
+ cluster_id: string;
1372
2630
  };
1373
2631
  query?: never;
1374
- url: '/tokens/{token_id}';
2632
+ url: '/clusters/{cluster_id}';
1375
2633
  };
1376
- export type DeleteTokenResponses = {
2634
+ export type GetClusterResponses = {
1377
2635
  /**
1378
- * Successfully deleted.
2636
+ * Returns a single object containing cluster details.
1379
2637
  */
1380
- 200: unknown;
2638
+ 200: Cluster;
1381
2639
  };
1382
- export type GetTokenData = {
1383
- body?: never;
2640
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2641
+ export type UpdateClusterData = {
2642
+ body: ClusterUpdateInput;
1384
2643
  path: {
1385
2644
  /**
1386
- * Generated unique identifier of the access token.
2645
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1387
2646
  */
1388
- token_id: string;
2647
+ cluster_id: string;
1389
2648
  };
1390
2649
  query?: never;
1391
- url: '/tokens/{token_id}';
2650
+ url: '/clusters/{cluster_id}';
1392
2651
  };
1393
- export type GetTokenErrors = {
2652
+ export type UpdateClusterErrors = {
1394
2653
  /**
1395
- * 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.
1396
2655
  */
1397
- 401: unknown;
2656
+ 409: string;
1398
2657
  };
1399
- export type GetTokenResponses = {
2658
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2659
+ export type UpdateClusterResponses = {
1400
2660
  /**
1401
- * Returns access token details with masked secret.
2661
+ * Successfully updated. Returns updated cluster details.
1402
2662
  */
1403
- 200: Token;
2663
+ 200: Cluster;
1404
2664
  };
1405
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1406
- export type UpdateTokenData = {
1407
- body: TokenUpdateInput;
2665
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2666
+ export type GetJoinInformationData = {
2667
+ body?: never;
1408
2668
  path: {
1409
2669
  /**
1410
- * Generated unique identifier of the access token.
2670
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1411
2671
  */
1412
- token_id: string;
2672
+ cluster_id: string;
1413
2673
  };
1414
2674
  query?: never;
1415
- url: '/tokens/{token_id}';
2675
+ url: '/clusters/{cluster_id}/join_information';
1416
2676
  };
1417
- export type UpdateTokenErrors = {
2677
+ export type GetJoinInformationErrors = {
1418
2678
  /**
1419
2679
  * Not authenticated
1420
2680
  */
1421
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;
1422
2686
  };
1423
- export type UpdateTokenResponses = {
2687
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2688
+ export type GetJoinInformationResponses = {
1424
2689
  /**
1425
- * Successfully updated. Returns updated token details with masked secret.
2690
+ * An object of cluster join information
1426
2691
  */
1427
- 200: Token;
2692
+ 200: ClusterJoinInformation;
1428
2693
  };
1429
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1430
- export type RegenerateTokenData = {
2694
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2695
+ export type GetUsageData = {
1431
2696
  body?: never;
1432
- path: {
2697
+ path?: never;
2698
+ query?: {
1433
2699
  /**
1434
- * 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)
1435
2701
  */
1436
- token_id: string;
2702
+ granularity?: 'hourly' | 'daily' | 'monthly';
1437
2703
  };
1438
- query?: never;
1439
- url: '/tokens/{token_id}/secret';
2704
+ url: '/billing/usage';
1440
2705
  };
1441
- export type RegenerateTokenErrors = {
2706
+ export type GetUsageErrors = {
1442
2707
  /**
1443
2708
  * Not authenticated
1444
2709
  */
1445
2710
  401: unknown;
1446
2711
  };
1447
- export type RegenerateTokenResponses = {
2712
+ export type GetUsageResponses = {
1448
2713
  /**
1449
- * Successfully updated. Returns updated token details with unmasked / raw secret.
2714
+ * Usage data with facets for filtering
1450
2715
  */
1451
- 200: Token;
2716
+ 200: UsageResponse;
1452
2717
  };
1453
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1454
- export type ListUserOrganizationsData = {
2718
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2719
+ export type GetPaymentMethodSecretData = {
1455
2720
  body?: never;
1456
- path: {
1457
- /**
1458
- * User email address.
1459
- */
1460
- email: string;
1461
- };
2721
+ path?: never;
1462
2722
  query?: never;
1463
- url: '/users/organizations/{email}';
2723
+ url: '/billing/payment-method';
1464
2724
  };
1465
- export type ListUserOrganizationsResponses = {
2725
+ export type GetPaymentMethodSecretResponses = {
1466
2726
  /**
1467
- * 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
+ *
1468
2729
  */
1469
- 200: Array<{
1470
- /**
1471
- * Unique identifier of the organization. UUID v4 string in canonical form
1472
- */
1473
- realm?: string;
2730
+ 200: {
1474
2731
  /**
1475
- * Human-readable name of the organization
2732
+ * The client secret.
1476
2733
  */
1477
- displayName?: string;
1478
- }>;
2734
+ id?: string;
2735
+ };
1479
2736
  };
1480
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1481
- export type ListUsersData = {
2737
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2738
+ export type ListPaymentMethodsData = {
1482
2739
  body?: never;
1483
2740
  path?: never;
1484
2741
  query?: never;
1485
- url: '/users';
2742
+ url: '/billing/payment-methods';
1486
2743
  };
1487
- export type ListUsersErrors = {
2744
+ export type ListPaymentMethodsErrors = {
1488
2745
  /**
1489
2746
  * Not authenticated
1490
2747
  */
1491
2748
  401: unknown;
1492
2749
  };
1493
- export type ListUsersResponses = {
2750
+ export type ListPaymentMethodsResponses = {
1494
2751
  /**
1495
- * An array of users
2752
+ * An array of payment methods.
1496
2753
  */
1497
- 200: Array<User>;
2754
+ 200: Array<PaymentMethod>;
1498
2755
  };
1499
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1500
- export type CreateUserData = {
1501
- body: UserCreateInput;
1502
- 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
+ };
1503
2765
  query?: never;
1504
- url: '/users';
2766
+ url: '/billing/payment-methods/{paymentMethodId}/default';
1505
2767
  };
1506
- export type CreateUserResponses = {
2768
+ export type SetDefaultPaymentMethodErrors = {
1507
2769
  /**
1508
- * Successfully created. Returns created user details.
2770
+ * The bank transfer payment method cannot be set as the default.
1509
2771
  */
1510
- 200: User;
2772
+ 400: unknown;
2773
+ /**
2774
+ * Not authenticated
2775
+ */
2776
+ 401: unknown;
2777
+ /**
2778
+ * Payment method not found.
2779
+ */
2780
+ 404: unknown;
1511
2781
  };
1512
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1513
- 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 = {
1514
2790
  body?: never;
1515
2791
  path: {
1516
2792
  /**
1517
- * Unique user identifier. UUID v4 string in canonical form
2793
+ * Stripe payment method identifier.
1518
2794
  */
1519
- user_id: string;
2795
+ paymentMethodId: string;
1520
2796
  };
1521
2797
  query?: never;
1522
- url: '/users/{user_id}';
2798
+ url: '/billing/payment-methods/{paymentMethodId}';
1523
2799
  };
1524
- export type DeleteUserErrors = {
2800
+ export type DeletePaymentMethodErrors = {
1525
2801
  /**
1526
- * Deleting own user is not allowed. Delete your organization instead.
2802
+ * The bank transfer payment method cannot be removed.
1527
2803
  */
1528
2804
  400: unknown;
1529
2805
  /**
1530
2806
  * Not authenticated
1531
2807
  */
1532
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;
1533
2817
  };
1534
- export type DeleteUserResponses = {
2818
+ export type DeletePaymentMethodResponses = {
1535
2819
  /**
1536
- * User profile information
2820
+ * Payment method deleted.
1537
2821
  */
1538
- 200: User;
2822
+ 204: void;
1539
2823
  };
1540
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1541
- export type GetUserData = {
2824
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
2825
+ export type ListInvoicesData = {
1542
2826
  body?: never;
1543
- path: {
1544
- /**
1545
- * Unique user identifier. UUID v4 string in canonical form
1546
- */
1547
- user_id: string;
1548
- };
2827
+ path?: never;
1549
2828
  query?: never;
1550
- url: '/users/{user_id}';
2829
+ url: '/billing/invoices';
1551
2830
  };
1552
- export type GetUserErrors = {
2831
+ export type ListInvoicesErrors = {
1553
2832
  /**
1554
2833
  * Not authenticated
1555
2834
  */
1556
2835
  401: unknown;
1557
2836
  };
1558
- export type GetUserResponses = {
2837
+ export type ListInvoicesResponses = {
1559
2838
  /**
1560
- * User profile information
2839
+ * An array of usage records.
1561
2840
  */
1562
- 200: User;
2841
+ 200: Array<Invoice>;
1563
2842
  };
1564
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1565
- export type UpdateUserData = {
1566
- body: UserUpdateInput;
1567
- path: {
1568
- /**
1569
- * Unique user identifier. UUID v4 string in canonical form
1570
- */
1571
- user_id: string;
1572
- };
2843
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
2844
+ export type GetContactData = {
2845
+ body?: never;
2846
+ path?: never;
1573
2847
  query?: never;
1574
- url: '/users/{user_id}';
2848
+ url: '/billing/contact';
1575
2849
  };
1576
- export type UpdateUserResponses = {
2850
+ export type GetContactResponses = {
1577
2851
  /**
1578
- * Successfully created. Returns created user details.
2852
+ * Returns a single object containing organization contact and billing address details.
1579
2853
  */
1580
- 200: User;
2854
+ 200: BillingContact;
1581
2855
  };
1582
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1583
- export type DeleteClusterPermissionsData = {
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 = {
1584
2871
  body?: never;
1585
- path: {
1586
- /**
1587
- * Unique user identifier. UUID v4 string in canonical form
1588
- */
1589
- user_id: string;
1590
- /**
1591
- * Unique cluster identifier. UUID v4 string in canonical form
1592
- */
1593
- cluster_id: string;
1594
- };
2872
+ path?: never;
1595
2873
  query?: never;
1596
- url: '/users/{user_id}/clusters/{cluster_id}';
2874
+ url: '/billing/credits';
1597
2875
  };
1598
- export type DeleteClusterPermissionsResponses = {
2876
+ export type GetCreditsErrors = {
1599
2877
  /**
1600
- * Successfully removed user from the cluster. Returns updated user details.
2878
+ * Not authenticated
1601
2879
  */
1602
- 200: User;
2880
+ 401: unknown;
2881
+ };
2882
+ export type GetCreditsResponses = {
2883
+ /**
2884
+ * An array of the applied promotional credits records.
2885
+ */
2886
+ 200: Array<BillingCredits>;
1603
2887
  };
1604
- export type DeleteClusterPermissionsResponse = DeleteClusterPermissionsResponses[keyof DeleteClusterPermissionsResponses];
1605
- export type SetClusterPermissionsData = {
2888
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
2889
+ export type RedeemCreditsData = {
1606
2890
  body: {
1607
2891
  /**
1608
- * Level of permissions for the user to access the cluster
1609
- */
1610
- permissions?: 'readwrite' | 'readonly';
1611
- };
1612
- path: {
1613
- /**
1614
- * Unique user identifier. UUID v4 string in canonical form
1615
- */
1616
- user_id: string;
1617
- /**
1618
- * Unique cluster identifier. UUID v4 string in canonical form
2892
+ * Promotional code to redeem
1619
2893
  */
1620
- cluster_id: string;
2894
+ code?: string;
1621
2895
  };
2896
+ path?: never;
1622
2897
  query?: never;
1623
- url: '/users/{user_id}/clusters/{cluster_id}';
2898
+ url: '/billing/credits';
1624
2899
  };
1625
- export type SetClusterPermissionsResponses = {
2900
+ export type RedeemCreditsErrors = {
1626
2901
  /**
1627
- * Successfully created. Returns created user details.
2902
+ * Not authenticated
1628
2903
  */
1629
- 200: User;
2904
+ 401: unknown;
1630
2905
  };
1631
- export type SetClusterPermissionsResponse = SetClusterPermissionsResponses[keyof SetClusterPermissionsResponses];
1632
- export type ClientOptions = {
1633
- baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
2906
+ export type RedeemCreditsResponses = {
2907
+ /**
2908
+ * Successfully created a new organization.
2909
+ */
2910
+ 200: unknown;
1634
2911
  };
1635
2912
  //# sourceMappingURL=types.gen.d.ts.map