@cloudfleet/sdk 0.0.1-41d4ab0 → 0.0.1-43887de

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.
@@ -2,6 +2,10 @@ export type ClientOptions = {
2
2
  baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3
3
  };
4
4
  export type BillingContact = {
5
+ /**
6
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
7
+ */
8
+ type: 'business' | 'personal';
5
9
  /**
6
10
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
7
11
  */
@@ -49,7 +53,7 @@ export type BillingContact = {
49
53
  /**
50
54
  * Type of the tax ID.
51
55
  */
52
- 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' | '';
56
+ tax_id_type?: 'ad_nrt' | 'ae_trn' | 'al_tin' | 'am_tin' | 'ao_tin' | 'ar_cuit' | 'at_vat' | 'au_abn' | 'au_arn' | 'aw_tin' | 'az_tin' | 'ba_tin' | 'bb_tin' | 'bd_bin' | 'be_vat' | 'bf_ifu' | 'bg_uic' | 'bg_vat' | 'bh_vat' | 'bj_ifu' | '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' | 'cm_niu' | 'cn_tin' | 'co_nit' | 'cr_tin' | 'cv_nif' | 'cy_vat' | 'cz_vat' | 'de_stn' | 'de_vat' | 'dk_vat' | 'do_rcn' | 'ec_ruc' | 'ee_vat' | 'eg_tin' | 'es_cif' | 'es_vat' | 'et_tin' | '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' | 'kg_tin' | 'kh_tin' | 'kr_brn' | 'kz_bin' | 'la_tin' | 'li_uid' | 'li_vat' | 'lk_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' | '';
53
57
  };
54
58
  export type BillingCredits = {
55
59
  /**
@@ -129,9 +133,9 @@ export type Chart = {
129
133
  */
130
134
  chart: string;
131
135
  /**
132
- * Status of the chart deployment.
136
+ * Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).
133
137
  */
134
- status: 'InstallSucceeded' | 'InstallFailed' | 'UpgradeSucceeded' | 'UpgradeFailed' | 'TestSucceeded' | 'TestFailed' | 'RollbackSucceeded' | 'RollbackFailed' | 'UninstallSucceeded' | 'UninstallFailed' | 'ArtifactFailed' | 'DependencyNotReady' | 'Progressing' | 'SourceNotReady';
138
+ status: string;
135
139
  /**
136
140
  * Current version of the chart deployment.
137
141
  */
@@ -159,6 +163,9 @@ export type ChartUpdateInput = {
159
163
  */
160
164
  version_channel: string;
161
165
  };
166
+ /**
167
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
168
+ */
162
169
  export type ClusterCreateInput = {
163
170
  /**
164
171
  * Name of the cluster.
@@ -167,15 +174,61 @@ export type ClusterCreateInput = {
167
174
  /**
168
175
  * Tier of the cluster.
169
176
  */
170
- tier: 'basic' | 'pro';
177
+ tier?: 'basic' | 'pro' | 'enterprise';
178
+ /**
179
+ * Version of the kubernetes cluster.
180
+ */
181
+ version_channel?: string;
171
182
  /**
172
- * Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
183
+ * Release channel for the cluster's control plane.
173
184
  */
174
- region?: 'staging-1a' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
185
+ release_channel?: 'rapid' | 'stable' | 'extended';
175
186
  /**
176
- * Version of the kubernetes cluster.
187
+ * Cluster feature toggles.
188
+ */
189
+ features?: {
190
+ /**
191
+ * GPU sharing strategy.
192
+ */
193
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
194
+ /**
195
+ * Maximum number of pods that may share a single GPU.
196
+ */
197
+ gpu_max_shared_clients_per_gpu?: number;
198
+ /**
199
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
200
+ */
201
+ cilium_socket_lb_host_namespace_only?: boolean;
202
+ };
203
+ /**
204
+ * Cloudfleet control plane region. This field can not be updated after creation.
177
205
  */
178
- version_channel?: '1.x.x-cfke.x' | '1.31.x-cfke.x' | '1.32.x-cfke.x' | '1.33.x-cfke.x';
206
+ region: string;
207
+ /**
208
+ * Cluster networking configuration. Immutable after creation.
209
+ */
210
+ networking?: {
211
+ /**
212
+ * CIDR block for pod IPs.
213
+ */
214
+ pod_cidr?: string;
215
+ /**
216
+ * CIDR block for service IPs.
217
+ */
218
+ service_cidr?: string;
219
+ /**
220
+ * Enable IPv4+IPv6 dual-stack networking.
221
+ */
222
+ dual_stack?: boolean;
223
+ /**
224
+ * IPv6 pod CIDR. Requires dual_stack.
225
+ */
226
+ pod_cidr_v6?: string;
227
+ /**
228
+ * IPv6 service CIDR. Requires dual_stack.
229
+ */
230
+ service_cidr_v6?: string;
231
+ };
179
232
  };
180
233
  export type ClusterJoinInformation = {
181
234
  /**
@@ -190,10 +243,18 @@ export type ClusterJoinInformation = {
190
243
  * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
191
244
  */
192
245
  cluster_dns: string;
246
+ /**
247
+ * Pod CIDR for the cluster. Used to configure iptables rules on nodes to prevent Tailscale routing loops.
248
+ */
249
+ pod_cidr: string;
193
250
  /**
194
251
  * Authentication key for the cluster.
195
252
  */
196
253
  auth_key: string;
254
+ /**
255
+ * Coordination server the node registers against. Empty on data plane v1 clusters, where the node advertises its own tag instead. A non-empty value requires a client that declares the dataplane-v2 capability.
256
+ */
257
+ login_server: string;
197
258
  /**
198
259
  * Bootstrap token for the cluster.
199
260
  */
@@ -237,6 +298,9 @@ export type ClusterJoinInformation = {
237
298
  gcp_workload_identity_provider: string;
238
299
  };
239
300
  };
301
+ /**
302
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
303
+ */
240
304
  export type Cluster = {
241
305
  /**
242
306
  * Name of the cluster.
@@ -245,20 +309,71 @@ export type Cluster = {
245
309
  /**
246
310
  * Tier of the cluster.
247
311
  */
248
- tier: 'basic' | 'pro';
312
+ tier: 'basic' | 'pro' | 'enterprise';
313
+ /**
314
+ * Version of the kubernetes cluster.
315
+ */
316
+ version_channel: string;
317
+ /**
318
+ * Release channel for the cluster's control plane.
319
+ */
320
+ release_channel: 'rapid' | 'stable' | 'extended';
321
+ /**
322
+ * Cluster feature toggles.
323
+ */
324
+ features: {
325
+ /**
326
+ * GPU sharing strategy.
327
+ */
328
+ gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
329
+ /**
330
+ * Maximum number of pods that may share a single GPU.
331
+ */
332
+ gpu_max_shared_clients_per_gpu: number;
333
+ /**
334
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
335
+ */
336
+ cilium_socket_lb_host_namespace_only: boolean;
337
+ };
338
+ /**
339
+ * Cloudfleet control plane region. This field can not be updated after creation.
340
+ */
341
+ region: string;
249
342
  /**
250
- * Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
343
+ * Cluster networking configuration. Immutable after creation.
251
344
  */
252
- region?: 'staging-1a' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
345
+ networking: {
346
+ /**
347
+ * CIDR block for pod IPs.
348
+ */
349
+ pod_cidr: string;
350
+ /**
351
+ * CIDR block for service IPs.
352
+ */
353
+ service_cidr: string;
354
+ /**
355
+ * Enable IPv4+IPv6 dual-stack networking.
356
+ */
357
+ dual_stack: boolean;
358
+ /**
359
+ * IPv6 pod CIDR. Requires dual_stack.
360
+ */
361
+ pod_cidr_v6: string;
362
+ /**
363
+ * IPv6 service CIDR. Requires dual_stack.
364
+ */
365
+ service_cidr_v6: string;
366
+ };
253
367
  /**
254
368
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
255
369
  */
256
370
  id: string;
257
371
  /**
258
- * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
372
+ * Status of the cluster.
259
373
  */
260
- status: 'active' | 'disabled' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
374
+ status: 'creating' | 'deployed' | 'updating' | 'disabled';
261
375
  endpoint?: string | '';
376
+ endpoint_public?: string | '';
262
377
  /**
263
378
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
264
379
  */
@@ -278,129 +393,338 @@ export type Cluster = {
278
393
  /**
279
394
  * Indicates if the cluster is ready to be used.
280
395
  */
281
- ready?: boolean;
282
- /**
283
- * Version of the kubernetes cluster.
284
- */
285
- version_channel?: string;
396
+ ready: boolean;
286
397
  };
398
+ /**
399
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
400
+ */
287
401
  export type ClusterUpdateInput = {
288
402
  /**
289
403
  * Name of the cluster.
290
404
  */
291
- name?: string;
405
+ name: string;
292
406
  /**
293
407
  * Tier of the cluster.
294
408
  */
295
- tier: 'basic' | 'pro';
409
+ tier?: 'basic' | 'pro' | 'enterprise';
296
410
  /**
297
411
  * Version of the kubernetes cluster.
298
412
  */
299
413
  version_channel?: string;
414
+ /**
415
+ * Release channel for the cluster's control plane.
416
+ */
417
+ release_channel?: 'rapid' | 'stable' | 'extended';
418
+ /**
419
+ * Cluster feature toggles.
420
+ */
421
+ features?: {
422
+ /**
423
+ * GPU sharing strategy.
424
+ */
425
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
426
+ /**
427
+ * Maximum number of pods that may share a single GPU.
428
+ */
429
+ gpu_max_shared_clients_per_gpu?: number;
430
+ /**
431
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
432
+ */
433
+ cilium_socket_lb_host_namespace_only?: boolean;
434
+ };
435
+ };
436
+ export type FeedbackCreateInput = {
437
+ /**
438
+ * Overall sentiment: positive, neutral or negative.
439
+ */
440
+ sentiment: 'positive' | 'neutral' | 'negative';
441
+ /**
442
+ * What was useful, confusing, wrong or missing.
443
+ */
444
+ message: string;
445
+ /**
446
+ * What you were trying to do when it happened.
447
+ */
448
+ context?: string;
449
+ /**
450
+ * Where the feedback was sent from: cli, mcp, plugin, console or api. Defaults to api.
451
+ */
452
+ source?: 'cli' | 'mcp' | 'plugin' | 'console' | 'api';
453
+ /**
454
+ * Name and version of the sending client.
455
+ */
456
+ client?: string;
457
+ };
458
+ export type Feedback = {
459
+ /**
460
+ * Unique identifier of the feedback entry (Mongo ObjectId).
461
+ */
462
+ id: string;
300
463
  };
464
+ /**
465
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
466
+ */
301
467
  export type FleetCreateInput = {
302
468
  /**
303
469
  * Limits define a set of bounds for provisioning capacity.
304
470
  */
305
471
  limits?: {
306
472
  /**
307
- * CPU limit in cores.
473
+ * CPU limit in cores. Maximum 100,000.
308
474
  */
309
- cpu: number;
475
+ cpu?: number;
310
476
  };
311
477
  gcp?: {
312
- enabled?: boolean;
478
+ enabled: boolean;
313
479
  /**
314
- * Project GCP Project id to deploy instances into
480
+ * 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.
315
481
  */
316
- project: string;
482
+ project?: string;
317
483
  };
318
484
  hetzner?: {
319
- enabled?: boolean;
485
+ enabled: boolean;
320
486
  /**
321
- * Hetzner Cloud API key with read / write access
487
+ * 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.
322
488
  */
323
- apiKey: string;
489
+ apiKey?: string;
324
490
  };
325
491
  aws?: {
326
- enabled?: boolean;
492
+ enabled: boolean;
327
493
  /**
328
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
494
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
329
495
  */
330
- controllerRoleArn: string;
496
+ controllerRoleArn?: string;
331
497
  };
498
+ /**
499
+ * 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.
500
+ */
501
+ constraints?: {
502
+ /**
503
+ * Allowed values for `karpenter.sh/capacity-type`.
504
+ */
505
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
506
+ /**
507
+ * Allowed values for `kubernetes.io/arch`.
508
+ */
509
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
510
+ /**
511
+ * Allowed values for `cfke.io/instance-family`.
512
+ */
513
+ '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'>;
514
+ /**
515
+ * Allowed values for `topology.kubernetes.io/region`.
516
+ */
517
+ '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'>;
518
+ };
519
+ /**
520
+ * 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`).
521
+ */
522
+ scalingProfile?: 'aggressive' | 'conservative';
523
+ /**
524
+ * Taints applied to every node the fleet provisions, so only pods that tolerate them schedule there. Each key and effect pair may appear once. Full-overwrite: omit to remove all taints.
525
+ */
526
+ taints?: Array<{
527
+ /**
528
+ * Taint key: a Kubernetes qualified name with an optional DNS subdomain prefix. Keys under `node.kubernetes.io`, `node.cloudprovider.kubernetes.io`, `node.cilium.io`, `karpenter.sh` and `cfke.io` (and their subdomains) are reserved.
529
+ */
530
+ key: string;
531
+ /**
532
+ * Taint value. Optional.
533
+ */
534
+ value?: string;
535
+ /**
536
+ * Taint effect.
537
+ */
538
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
539
+ }>;
332
540
  /**
333
541
  * Unique identifier of the kubernetes fleet.
334
542
  */
335
543
  id: string;
336
544
  };
545
+ /**
546
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
547
+ */
337
548
  export type Fleet = {
338
549
  /**
339
550
  * Limits define a set of bounds for provisioning capacity.
340
551
  */
341
552
  limits?: {
342
553
  /**
343
- * CPU limit in cores.
554
+ * CPU limit in cores. Maximum 100,000.
344
555
  */
345
- cpu: number;
556
+ cpu?: number;
346
557
  };
347
558
  gcp?: {
348
- enabled?: boolean;
559
+ enabled: boolean;
349
560
  /**
350
- * Project GCP Project id to deploy instances into
561
+ * 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.
351
562
  */
352
- project: string;
563
+ project?: string;
353
564
  };
354
565
  hetzner?: {
355
- enabled?: boolean;
566
+ enabled: boolean;
356
567
  /**
357
- * Hetzner Cloud API key with read / write access
568
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
358
569
  */
359
- apiKey: string;
570
+ apiKey?: string;
360
571
  };
361
572
  aws?: {
362
- enabled?: boolean;
573
+ enabled: boolean;
574
+ /**
575
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
576
+ */
577
+ controllerRoleArn?: string;
578
+ };
579
+ /**
580
+ * 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.
581
+ */
582
+ constraints: {
583
+ /**
584
+ * Allowed values for `karpenter.sh/capacity-type`.
585
+ */
586
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
587
+ /**
588
+ * Allowed values for `kubernetes.io/arch`.
589
+ */
590
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
591
+ /**
592
+ * Allowed values for `cfke.io/instance-family`.
593
+ */
594
+ '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'>;
363
595
  /**
364
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
596
+ * Allowed values for `topology.kubernetes.io/region`.
365
597
  */
366
- controllerRoleArn: string;
598
+ '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'>;
367
599
  };
600
+ /**
601
+ * 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`).
602
+ */
603
+ scalingProfile: 'aggressive' | 'conservative';
604
+ /**
605
+ * Taints applied to every node the fleet provisions, so only pods that tolerate them schedule there. Each key and effect pair may appear once. Full-overwrite: omit to remove all taints.
606
+ */
607
+ taints: Array<{
608
+ /**
609
+ * Taint key: a Kubernetes qualified name with an optional DNS subdomain prefix. Keys under `node.kubernetes.io`, `node.cloudprovider.kubernetes.io`, `node.cilium.io`, `karpenter.sh` and `cfke.io` (and their subdomains) are reserved.
610
+ */
611
+ key: string;
612
+ /**
613
+ * Taint value. Optional.
614
+ */
615
+ value?: string;
616
+ /**
617
+ * Taint effect.
618
+ */
619
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
620
+ }>;
368
621
  /**
369
622
  * Unique identifier of the kubernetes fleet.
370
623
  */
371
624
  id: string;
625
+ /**
626
+ * Indicates whether the fleet configuration is healthy.
627
+ */
628
+ ready: boolean;
629
+ /**
630
+ * Human-readable reason the fleet is not ready. Present only when `ready` is false.
631
+ */
632
+ status_message?: string;
633
+ /**
634
+ * Creation date and time of the fleet.
635
+ */
636
+ created_at: string;
637
+ /**
638
+ * Date and time the fleet was last updated.
639
+ */
640
+ updated_at: string;
372
641
  };
642
+ /**
643
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
644
+ */
373
645
  export type FleetUpdateInput = {
374
646
  /**
375
647
  * Limits define a set of bounds for provisioning capacity.
376
648
  */
377
649
  limits?: {
378
650
  /**
379
- * CPU limit in cores.
651
+ * CPU limit in cores. Maximum 100,000.
380
652
  */
381
- cpu: number;
653
+ cpu?: number;
382
654
  };
383
655
  gcp?: {
384
- enabled?: boolean;
656
+ enabled: boolean;
385
657
  /**
386
- * Project GCP Project id to deploy instances into
658
+ * 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.
387
659
  */
388
- project: string;
660
+ project?: string;
389
661
  };
390
662
  hetzner?: {
391
- enabled?: boolean;
663
+ enabled: boolean;
392
664
  /**
393
- * Hetzner Cloud API key with read / write access
665
+ * 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.
394
666
  */
395
- apiKey: string;
667
+ apiKey?: string;
396
668
  };
397
669
  aws?: {
398
- enabled?: boolean;
670
+ enabled: boolean;
671
+ /**
672
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
673
+ */
674
+ controllerRoleArn?: string;
675
+ };
676
+ /**
677
+ * 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.
678
+ */
679
+ constraints?: {
680
+ /**
681
+ * Allowed values for `karpenter.sh/capacity-type`.
682
+ */
683
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
684
+ /**
685
+ * Allowed values for `kubernetes.io/arch`.
686
+ */
687
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
399
688
  /**
400
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
689
+ * Allowed values for `cfke.io/instance-family`.
401
690
  */
402
- controllerRoleArn: string;
691
+ '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'>;
692
+ /**
693
+ * Allowed values for `topology.kubernetes.io/region`.
694
+ */
695
+ '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'>;
403
696
  };
697
+ /**
698
+ * 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`).
699
+ */
700
+ scalingProfile?: 'aggressive' | 'conservative';
701
+ /**
702
+ * Taints applied to every node the fleet provisions, so only pods that tolerate them schedule there. Each key and effect pair may appear once. Full-overwrite: omit to remove all taints.
703
+ */
704
+ taints?: Array<{
705
+ /**
706
+ * Taint key: a Kubernetes qualified name with an optional DNS subdomain prefix. Keys under `node.kubernetes.io`, `node.cloudprovider.kubernetes.io`, `node.cilium.io`, `karpenter.sh` and `cfke.io` (and their subdomains) are reserved.
707
+ */
708
+ key: string;
709
+ /**
710
+ * Taint value. Optional.
711
+ */
712
+ value?: string;
713
+ /**
714
+ * Taint effect.
715
+ */
716
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
717
+ }>;
718
+ };
719
+ export type InviteCreateInput = {
720
+ /**
721
+ * Email address of the user to invite.
722
+ */
723
+ email: string;
724
+ /**
725
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
726
+ */
727
+ role?: 'Administrator' | 'User';
404
728
  };
405
729
  export type Invite = {
406
730
  /**
@@ -423,6 +747,91 @@ export type Invite = {
423
747
  * Generated unique invite code.
424
748
  */
425
749
  code?: string;
750
+ /**
751
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
752
+ */
753
+ role?: 'Administrator' | 'User';
754
+ };
755
+ export type InvoicePaymentAttempt = {
756
+ /**
757
+ * Identifier of the invoice.
758
+ */
759
+ invoice_id: string;
760
+ /**
761
+ * Invoice number. Null if the invoice has no number.
762
+ */
763
+ number: string;
764
+ /**
765
+ * Amount outstanding when the charge was attempted, in the smallest currency unit.
766
+ */
767
+ amount: number;
768
+ /**
769
+ * Currency of the invoice.
770
+ */
771
+ currency: string;
772
+ /**
773
+ * Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).
774
+ */
775
+ status: 'paid' | 'processing' | 'requires_action' | 'failed';
776
+ /**
777
+ * Client secret used to complete customer authentication. Set only when `status` is `requires_action`.
778
+ */
779
+ client_secret: string;
780
+ /**
781
+ * Decline code. Set only when `status` is `failed`.
782
+ */
783
+ failure_code: string;
784
+ /**
785
+ * Explanation of the decline, suitable for display. Set only when `status` is `failed`.
786
+ */
787
+ failure_message: string;
788
+ };
789
+ export type InvoicePaymentResult = {
790
+ /**
791
+ * Overall outcome: `paid` (nothing outstanding), `processing` (all accepted, not yet settled), `action_required` (one or more await customer authentication), `partially_paid`, `failed`, `nothing_due`, or `bank_transfer_due` (the organization pays by bank transfer; nothing was charged).
792
+ */
793
+ code: 'paid' | 'processing' | 'action_required' | 'partially_paid' | 'failed' | 'nothing_due' | 'bank_transfer_due';
794
+ /**
795
+ * Summary of the outcome, suitable for display.
796
+ */
797
+ message: string;
798
+ /**
799
+ * One entry per invoice charged, oldest first.
800
+ */
801
+ results: Array<{
802
+ /**
803
+ * Identifier of the invoice.
804
+ */
805
+ invoice_id: string;
806
+ /**
807
+ * Invoice number. Null if the invoice has no number.
808
+ */
809
+ number: string;
810
+ /**
811
+ * Amount outstanding when the charge was attempted, in the smallest currency unit.
812
+ */
813
+ amount: number;
814
+ /**
815
+ * Currency of the invoice.
816
+ */
817
+ currency: string;
818
+ /**
819
+ * Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).
820
+ */
821
+ status: 'paid' | 'processing' | 'requires_action' | 'failed';
822
+ /**
823
+ * Client secret used to complete customer authentication. Set only when `status` is `requires_action`.
824
+ */
825
+ client_secret: string;
826
+ /**
827
+ * Decline code. Set only when `status` is `failed`.
828
+ */
829
+ failure_code: string;
830
+ /**
831
+ * Explanation of the decline, suitable for display. Set only when `status` is `failed`.
832
+ */
833
+ failure_message: string;
834
+ }>;
426
835
  };
427
836
  export type Invoice = {
428
837
  /**
@@ -543,6 +952,10 @@ export type MarketplaceListing = {
543
952
  };
544
953
  };
545
954
  export type OrganizationCreateInput = {
955
+ /**
956
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
957
+ */
958
+ type: 'business' | 'personal';
546
959
  /**
547
960
  * Email address used for billing as a string.
548
961
  */
@@ -564,6 +977,12 @@ export type OrganizationCreateInput = {
564
977
  */
565
978
  password: string;
566
979
  };
980
+ export type OrganizationCreateOutput = {
981
+ /**
982
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
983
+ */
984
+ id: string;
985
+ };
567
986
  export type Organization = {
568
987
  /**
569
988
  * Unique identifier of the organization. UUID v4 string in canonical form
@@ -573,6 +992,10 @@ export type Organization = {
573
992
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
574
993
  */
575
994
  name?: string;
995
+ /**
996
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
997
+ */
998
+ type: 'business' | 'personal';
576
999
  /**
577
1000
  * Creation date of the organization. ISO 8601 date string in UTC timezone
578
1001
  */
@@ -597,6 +1020,14 @@ export type Organization = {
597
1020
  * Available number of Pro clusters that can be created.
598
1021
  */
599
1022
  pro_clusters_available: number;
1023
+ /**
1024
+ * Maximum number of Enterprise clusters that can be created.
1025
+ */
1026
+ enterprise_clusters_max: number;
1027
+ /**
1028
+ * Available number of Enterprise clusters that can be created.
1029
+ */
1030
+ enterprise_clusters_available: number;
600
1031
  /**
601
1032
  * Maximum number of fleets that can be created per cluster.
602
1033
  */
@@ -631,36 +1062,52 @@ export type Organization = {
631
1062
  * Status of the organization. Can be `active` or `closed`, or `suspended`.
632
1063
  */
633
1064
  status: 'active' | 'closed' | 'suspended';
1065
+ /**
1066
+ * 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.
1067
+ */
1068
+ verification: 'none' | 'submitted' | 'verified';
634
1069
  };
635
1070
  export type PaymentMethod = {
636
1071
  /**
637
- * Unique identifier of the organization. UUID v4 string in canonical form.
1072
+ * 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.
638
1073
  */
639
1074
  id: string;
640
1075
  /**
641
- * Whether organization payment method was set up and ready to use for payments.
642
- */
643
- setup: boolean;
644
- /**
645
- * Payment method type type. Only `card` payments supported at the moment.
1076
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
646
1077
  */
647
- type: 'card';
1078
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
648
1079
  /**
649
- * Last 4 digits of the payment card number.
1080
+ * 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.
650
1081
  */
651
1082
  last4: string;
652
1083
  /**
653
- * Two-digit number representing the card's expiration month.
1084
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
654
1085
  */
655
1086
  exp_month: number;
656
1087
  /**
657
- * Four-digit number representing the card's expiration year.
1088
+ * 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.
658
1089
  */
659
1090
  exp_year: number;
660
1091
  /**
661
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
1092
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
662
1093
  */
663
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
1094
+ brand: string;
1095
+ /**
1096
+ * 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.
1097
+ */
1098
+ iban: string;
1099
+ /**
1100
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
1101
+ */
1102
+ bic: string;
1103
+ /**
1104
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
1105
+ */
1106
+ account_holder_name: string;
1107
+ /**
1108
+ * 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).
1109
+ */
1110
+ is_default: boolean;
664
1111
  };
665
1112
  export type PlatformQuota = {
666
1113
  /**
@@ -679,6 +1126,14 @@ export type PlatformQuota = {
679
1126
  * Available number of Pro clusters that can be created.
680
1127
  */
681
1128
  pro_clusters_available: number;
1129
+ /**
1130
+ * Maximum number of Enterprise clusters that can be created.
1131
+ */
1132
+ enterprise_clusters_max: number;
1133
+ /**
1134
+ * Available number of Enterprise clusters that can be created.
1135
+ */
1136
+ enterprise_clusters_available: number;
682
1137
  /**
683
1138
  * Maximum number of fleets that can be created per cluster.
684
1139
  */
@@ -857,11 +1312,216 @@ export type RegistryTag = {
857
1312
  */
858
1313
  uri: string;
859
1314
  };
860
- export type TokenCreateInput = {
1315
+ export type RoadmapItemCreateInput = {
861
1316
  /**
862
- * Human readable access token name.
1317
+ * Your suggestion in one or two sentences. It is reviewed before it appears on the roadmap.
863
1318
  */
864
- name: string;
1319
+ text: string;
1320
+ };
1321
+ export type RoadmapItem = {
1322
+ /**
1323
+ * Unique identifier of the roadmap item (Mongo ObjectId).
1324
+ */
1325
+ id: string;
1326
+ /**
1327
+ * Short description of the roadmap item.
1328
+ */
1329
+ text: string;
1330
+ /**
1331
+ * The caller's vote on this item: -1 (down), 1 (up), 2 (double up), or null if the caller has not voted.
1332
+ */
1333
+ vote: -1 | 1 | 2;
1334
+ };
1335
+ export type RoadmapVoteInput = {
1336
+ /**
1337
+ * Vote value: -1 (down), 1 (up), or 2 (double up).
1338
+ */
1339
+ value: -1 | 1 | 2;
1340
+ };
1341
+ export type TicketAttachment = {
1342
+ /**
1343
+ * Unique identifier of the attachment (Mongo ObjectId).
1344
+ */
1345
+ id: string;
1346
+ /**
1347
+ * Original filename as uploaded.
1348
+ */
1349
+ filename: string;
1350
+ /**
1351
+ * MIME content type of the attachment.
1352
+ */
1353
+ content_type: string;
1354
+ /**
1355
+ * Size of the attachment in bytes.
1356
+ */
1357
+ size: number;
1358
+ };
1359
+ export type TicketCreateInput = {
1360
+ /**
1361
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
1362
+ */
1363
+ category: 'billing' | 'technical' | 'general';
1364
+ /**
1365
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
1366
+ */
1367
+ body: string;
1368
+ /**
1369
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
1370
+ */
1371
+ properties?: {
1372
+ [key: string]: unknown;
1373
+ };
1374
+ /**
1375
+ * Grant Cloudfleet support staff access to the organization's resources while the ticket is open. Access cannot be revoked; it ends when the ticket is closed.
1376
+ */
1377
+ grant_support_access?: boolean;
1378
+ };
1379
+ export type TicketMessageInput = {
1380
+ /**
1381
+ * Reply body in markdown.
1382
+ */
1383
+ body: string;
1384
+ };
1385
+ export type TicketMessage = {
1386
+ /**
1387
+ * Unique identifier of the message (Mongo ObjectId).
1388
+ */
1389
+ id: string;
1390
+ /**
1391
+ * Message type. Internal notes are filtered out of customer-facing responses.
1392
+ */
1393
+ type: 'customer_reply' | 'agent_reply';
1394
+ /**
1395
+ * Message body in markdown.
1396
+ */
1397
+ body: string;
1398
+ /**
1399
+ * First name of the author. Null when not provided.
1400
+ */
1401
+ author_first_name?: string;
1402
+ /**
1403
+ * Last name of the author. Null when not provided.
1404
+ */
1405
+ author_last_name?: string;
1406
+ /**
1407
+ * Attachments associated with this message.
1408
+ */
1409
+ attachments?: Array<{
1410
+ /**
1411
+ * Unique identifier of the attachment (Mongo ObjectId).
1412
+ */
1413
+ id: string;
1414
+ /**
1415
+ * Original filename as uploaded.
1416
+ */
1417
+ filename: string;
1418
+ /**
1419
+ * MIME content type of the attachment.
1420
+ */
1421
+ content_type: string;
1422
+ /**
1423
+ * Size of the attachment in bytes.
1424
+ */
1425
+ size: number;
1426
+ }>;
1427
+ /**
1428
+ * Creation date of the message. ISO 8601 UTC.
1429
+ */
1430
+ date_created: string;
1431
+ };
1432
+ export type Ticket = {
1433
+ /**
1434
+ * Unique identifier of the ticket (Mongo ObjectId).
1435
+ */
1436
+ id: string;
1437
+ /**
1438
+ * Current state of the ticket.
1439
+ */
1440
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
1441
+ /**
1442
+ * Ticket category.
1443
+ */
1444
+ category: 'billing' | 'technical' | 'general';
1445
+ /**
1446
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
1447
+ */
1448
+ summary: string;
1449
+ /**
1450
+ * Whether Cloudfleet support staff currently have access to the organization's resources. True once access is granted and until the ticket is closed.
1451
+ */
1452
+ support_access_granted: boolean;
1453
+ /**
1454
+ * When support access was granted. Null if it never was. Kept after the ticket is closed.
1455
+ */
1456
+ support_access_granted_at: string;
1457
+ /**
1458
+ * Closure timestamp. Null while the ticket is open.
1459
+ */
1460
+ closed_at?: string;
1461
+ /**
1462
+ * Creation date of the ticket. ISO 8601 UTC.
1463
+ */
1464
+ date_created: string;
1465
+ /**
1466
+ * Last update date of the ticket. ISO 8601 UTC.
1467
+ */
1468
+ date_updated: string;
1469
+ /**
1470
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1471
+ */
1472
+ messages?: Array<{
1473
+ /**
1474
+ * Unique identifier of the message (Mongo ObjectId).
1475
+ */
1476
+ id: string;
1477
+ /**
1478
+ * Message type. Internal notes are filtered out of customer-facing responses.
1479
+ */
1480
+ type: 'customer_reply' | 'agent_reply';
1481
+ /**
1482
+ * Message body in markdown.
1483
+ */
1484
+ body: string;
1485
+ /**
1486
+ * First name of the author. Null when not provided.
1487
+ */
1488
+ author_first_name?: string;
1489
+ /**
1490
+ * Last name of the author. Null when not provided.
1491
+ */
1492
+ author_last_name?: string;
1493
+ /**
1494
+ * Attachments associated with this message.
1495
+ */
1496
+ attachments?: Array<{
1497
+ /**
1498
+ * Unique identifier of the attachment (Mongo ObjectId).
1499
+ */
1500
+ id: string;
1501
+ /**
1502
+ * Original filename as uploaded.
1503
+ */
1504
+ filename: string;
1505
+ /**
1506
+ * MIME content type of the attachment.
1507
+ */
1508
+ content_type: string;
1509
+ /**
1510
+ * Size of the attachment in bytes.
1511
+ */
1512
+ size: number;
1513
+ }>;
1514
+ /**
1515
+ * Creation date of the message. ISO 8601 UTC.
1516
+ */
1517
+ date_created: string;
1518
+ }>;
1519
+ };
1520
+ export type TokenCreateInput = {
1521
+ /**
1522
+ * Human readable access token name.
1523
+ */
1524
+ name: string;
865
1525
  /**
866
1526
  * Role assumed by the token.
867
1527
  */
@@ -907,7 +1567,7 @@ export type UsageFacets = {
907
1567
  /**
908
1568
  * List of unique products
909
1569
  */
910
- product?: Array<string>;
1570
+ 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'>;
911
1571
  };
912
1572
  export type UsageResponse = {
913
1573
  /**
@@ -925,7 +1585,7 @@ export type UsageResponse = {
925
1585
  /**
926
1586
  * The product the usage is associated with
927
1587
  */
928
- product: string;
1588
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
929
1589
  /**
930
1590
  * Consumption
931
1591
  */
@@ -950,7 +1610,7 @@ export type UsageResponse = {
950
1610
  /**
951
1611
  * List of unique products
952
1612
  */
953
- product?: Array<string>;
1613
+ 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'>;
954
1614
  };
955
1615
  };
956
1616
  export type Usage = {
@@ -965,7 +1625,7 @@ export type Usage = {
965
1625
  /**
966
1626
  * The product the usage is associated with
967
1627
  */
968
- product: string;
1628
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
969
1629
  /**
970
1630
  * Consumption
971
1631
  */
@@ -1000,14 +1660,6 @@ export type UserCreateInput = {
1000
1660
  * User password. Must be at least 8 characters long.
1001
1661
  */
1002
1662
  password: string;
1003
- /**
1004
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1005
- */
1006
- status?: 'active' | 'inactive';
1007
- /**
1008
- * User role. Can be 'Administrator', 'User'.
1009
- */
1010
- role?: 'Administrator' | 'User';
1011
1663
  };
1012
1664
  export type User = {
1013
1665
  /**
@@ -1061,710 +1713,594 @@ export type UserUpdateInput = {
1061
1713
  */
1062
1714
  status?: 'active' | 'inactive';
1063
1715
  };
1064
- export type GetUsageData = {
1716
+ export type ListUserOrganizationsData = {
1065
1717
  body?: never;
1066
- path?: never;
1067
- query?: {
1718
+ path: {
1068
1719
  /**
1069
- * 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)
1720
+ * User email address.
1070
1721
  */
1071
- granularity?: 'hourly' | 'daily' | 'monthly';
1722
+ email: string;
1072
1723
  };
1073
- url: '/billing/usage';
1074
- };
1075
- export type GetUsageErrors = {
1076
- /**
1077
- * Not authenticated
1078
- */
1079
- 401: unknown;
1724
+ query?: never;
1725
+ url: '/users/organizations/{email}';
1080
1726
  };
1081
- export type GetUsageResponses = {
1727
+ export type ListUserOrganizationsResponses = {
1082
1728
  /**
1083
- * Usage data with facets for filtering
1729
+ * An array of organizations the user belongs to.
1084
1730
  */
1085
- 200: UsageResponse;
1731
+ 200: Array<{
1732
+ /**
1733
+ * Unique identifier of the organization. UUID v4 string in canonical form
1734
+ */
1735
+ realm?: string;
1736
+ /**
1737
+ * Human-readable name of the organization
1738
+ */
1739
+ displayName?: string;
1740
+ }>;
1086
1741
  };
1087
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
1088
- export type GetPaymentMethodData = {
1742
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1743
+ export type ListUsersData = {
1089
1744
  body?: never;
1090
1745
  path?: never;
1091
1746
  query?: never;
1092
- url: '/billing/payment-method';
1747
+ url: '/users';
1093
1748
  };
1094
- export type GetPaymentMethodErrors = {
1749
+ export type ListUsersErrors = {
1095
1750
  /**
1096
- * Returns 404 Not Found if the organization does not have a payment method set up.
1751
+ * Not authenticated
1097
1752
  */
1098
- 404: unknown;
1753
+ 401: unknown;
1099
1754
  };
1100
- export type GetPaymentMethodResponses = {
1755
+ export type ListUsersResponses = {
1101
1756
  /**
1102
- * Redacted payment card information.
1757
+ * An array of users
1103
1758
  */
1104
- 200: PaymentMethod;
1759
+ 200: Array<User>;
1105
1760
  };
1106
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1107
- export type GetPaymentMethodSecretData = {
1108
- body?: never;
1761
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1762
+ export type CreateUserData = {
1763
+ body: UserCreateInput;
1109
1764
  path?: never;
1110
1765
  query?: never;
1111
- url: '/billing/payment-method';
1766
+ url: '/users';
1112
1767
  };
1113
- export type GetPaymentMethodSecretResponses = {
1768
+ export type CreateUserResponses = {
1114
1769
  /**
1115
- * 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.
1116
- *
1770
+ * Successfully created. Returns created user details.
1117
1771
  */
1118
- 200: {
1772
+ 200: User;
1773
+ };
1774
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1775
+ export type DeleteUserData = {
1776
+ body?: never;
1777
+ path: {
1119
1778
  /**
1120
- * The client secret.
1779
+ * Unique user identifier. UUID v4 string in canonical form
1121
1780
  */
1122
- id?: string;
1781
+ user_id: string;
1123
1782
  };
1124
- };
1125
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1126
- export type ListInvoicesData = {
1127
- body?: never;
1128
- path?: never;
1129
1783
  query?: never;
1130
- url: '/billing/invoices';
1131
- };
1132
- export type ListInvoicesErrors = {
1133
- /**
1134
- * Not authenticated
1135
- */
1136
- 401: unknown;
1784
+ url: '/users/{user_id}';
1137
1785
  };
1138
- export type ListInvoicesResponses = {
1786
+ export type DeleteUserErrors = {
1139
1787
  /**
1140
- * An array of usage records.
1788
+ * Deleting own user is not allowed. Delete your organization instead.
1141
1789
  */
1142
- 200: Array<Invoice>;
1143
- };
1144
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1145
- export type GetContactData = {
1146
- body?: never;
1147
- path?: never;
1148
- query?: never;
1149
- url: '/billing/contact';
1150
- };
1151
- export type GetContactResponses = {
1790
+ 400: unknown;
1152
1791
  /**
1153
- * Returns a single object containing organization contact and billing address details.
1792
+ * Not authenticated
1154
1793
  */
1155
- 200: BillingContact;
1156
- };
1157
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
1158
- export type UpdateContactData = {
1159
- body: BillingContact;
1160
- path?: never;
1161
- query?: never;
1162
- url: '/billing/contact';
1794
+ 401: unknown;
1163
1795
  };
1164
- export type UpdateContactResponses = {
1796
+ export type DeleteUserResponses = {
1165
1797
  /**
1166
- * Successfully updated. Returns updated organization details.
1798
+ * User profile information
1167
1799
  */
1168
- 200: BillingContact;
1800
+ 200: User;
1169
1801
  };
1170
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
1171
- export type GetCreditsData = {
1802
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1803
+ export type GetUserData = {
1172
1804
  body?: never;
1173
- path?: never;
1805
+ path: {
1806
+ /**
1807
+ * Unique user identifier. UUID v4 string in canonical form
1808
+ */
1809
+ user_id: string;
1810
+ };
1174
1811
  query?: never;
1175
- url: '/billing/credits';
1812
+ url: '/users/{user_id}';
1176
1813
  };
1177
- export type GetCreditsErrors = {
1814
+ export type GetUserErrors = {
1178
1815
  /**
1179
1816
  * Not authenticated
1180
1817
  */
1181
1818
  401: unknown;
1182
1819
  };
1183
- export type GetCreditsResponses = {
1820
+ export type GetUserResponses = {
1184
1821
  /**
1185
- * An array of the applied promotional credits records.
1822
+ * User profile information
1186
1823
  */
1187
- 200: Array<BillingCredits>;
1824
+ 200: User;
1188
1825
  };
1189
- export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
1190
- export type RedeemCreditsData = {
1191
- body: {
1826
+ export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1827
+ export type UpdateUserData = {
1828
+ body: UserUpdateInput;
1829
+ path: {
1192
1830
  /**
1193
- * Promotional code to redeem
1831
+ * Unique user identifier. UUID v4 string in canonical form
1194
1832
  */
1195
- code?: string;
1833
+ user_id: string;
1196
1834
  };
1835
+ query?: never;
1836
+ url: '/users/{user_id}';
1837
+ };
1838
+ export type UpdateUserResponses = {
1839
+ /**
1840
+ * Successfully created. Returns created user details.
1841
+ */
1842
+ 200: User;
1843
+ };
1844
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1845
+ export type ListTokensData = {
1846
+ body?: never;
1197
1847
  path?: never;
1198
1848
  query?: never;
1199
- url: '/billing/credits';
1849
+ url: '/tokens';
1200
1850
  };
1201
- export type RedeemCreditsErrors = {
1851
+ export type ListTokensErrors = {
1202
1852
  /**
1203
1853
  * Not authenticated
1204
1854
  */
1205
1855
  401: unknown;
1206
1856
  };
1207
- export type RedeemCreditsResponses = {
1857
+ export type ListTokensResponses = {
1208
1858
  /**
1209
- * Successfully created a new organization.
1859
+ * Returns a list of access token details with masked secrets.
1210
1860
  */
1211
- 200: unknown;
1861
+ 200: Array<Token>;
1212
1862
  };
1213
- export type ListChartsData = {
1214
- body?: never;
1215
- path: {
1216
- /**
1217
- * Unique identifier of the cluster. UUID v4 string in canonical form
1218
- */
1219
- cluster_id: string;
1220
- };
1863
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1864
+ export type CreateTokenData = {
1865
+ body: TokenCreateInput;
1866
+ path?: never;
1221
1867
  query?: never;
1222
- url: '/clusters/{cluster_id}/charts';
1868
+ url: '/tokens';
1223
1869
  };
1224
- export type ListChartsErrors = {
1870
+ export type CreateTokenErrors = {
1225
1871
  /**
1226
1872
  * Not authenticated
1227
1873
  */
1228
1874
  401: unknown;
1229
1875
  };
1230
- export type ListChartsResponses = {
1876
+ export type CreateTokenResponses = {
1231
1877
  /**
1232
- * An array of charts
1878
+ * Successfully created. Returns created token details with unmasked/raw secret.
1233
1879
  */
1234
- 200: Array<Chart>;
1880
+ 200: Token;
1235
1881
  };
1236
- export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
1237
- export type CreateChartData = {
1238
- body: ChartCreateInput;
1882
+ export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1883
+ export type DeleteTokenData = {
1884
+ body?: never;
1239
1885
  path: {
1240
1886
  /**
1241
- * Unique identifier of the cluster. UUID v4 string in canonical form
1887
+ * Generated unique identifier of the access token.
1242
1888
  */
1243
- cluster_id: string;
1889
+ token_id: string;
1244
1890
  };
1245
1891
  query?: never;
1246
- url: '/clusters/{cluster_id}/charts';
1892
+ url: '/tokens/{token_id}';
1247
1893
  };
1248
- export type CreateChartResponses = {
1894
+ export type DeleteTokenResponses = {
1249
1895
  /**
1250
- * Successfully created. Returns created Chart ID.
1896
+ * Successfully deleted.
1251
1897
  */
1252
- 200: string;
1898
+ 200: unknown;
1253
1899
  };
1254
- export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
1255
- export type DeleteChartData = {
1900
+ export type GetTokenData = {
1256
1901
  body?: never;
1257
1902
  path: {
1258
1903
  /**
1259
- * Unique identifier of the cluster. UUID v4 string in canonical form
1260
- */
1261
- cluster_id: string;
1262
- /**
1263
- * Chart deployment name as the unique identifier of the chart.
1904
+ * Generated unique identifier of the access token.
1264
1905
  */
1265
- chart_name: string;
1906
+ token_id: string;
1266
1907
  };
1267
1908
  query?: never;
1268
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1909
+ url: '/tokens/{token_id}';
1269
1910
  };
1270
- export type DeleteChartResponses = {
1911
+ export type GetTokenErrors = {
1271
1912
  /**
1272
- * Successfully deleted.
1913
+ * Not authenticated
1273
1914
  */
1274
- 200: string;
1275
- };
1276
- export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
1277
- export type GetChartData = {
1278
- body?: never;
1279
- path: {
1280
- /**
1281
- * Unique identifier of the cluster. UUID v4 string in canonical form
1282
- */
1283
- cluster_id: string;
1284
- /**
1285
- * Chart deployment name as the unique identifier of the chart.
1286
- */
1287
- chart_name: string;
1288
- };
1289
- query?: never;
1290
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1915
+ 401: unknown;
1291
1916
  };
1292
- export type GetChartResponses = {
1917
+ export type GetTokenResponses = {
1293
1918
  /**
1294
- * Returns a single object containing chart details.
1919
+ * Returns access token details with masked secret.
1295
1920
  */
1296
- 200: Chart;
1921
+ 200: Token;
1297
1922
  };
1298
- export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
1299
- export type UpdateChartData = {
1300
- body: ChartUpdateInput;
1923
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1924
+ export type UpdateTokenData = {
1925
+ body: TokenUpdateInput;
1301
1926
  path: {
1302
1927
  /**
1303
- * Unique identifier of the cluster. UUID v4 string in canonical form
1304
- */
1305
- cluster_id: string;
1306
- /**
1307
- * Chart deployment name as the unique identifier of the chart.
1928
+ * Generated unique identifier of the access token.
1308
1929
  */
1309
- chart_name: string;
1930
+ token_id: string;
1310
1931
  };
1311
1932
  query?: never;
1312
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1933
+ url: '/tokens/{token_id}';
1313
1934
  };
1314
- export type UpdateChartResponses = {
1935
+ export type UpdateTokenErrors = {
1315
1936
  /**
1316
- * Successfully updated.
1937
+ * Not authenticated
1317
1938
  */
1318
- 200: string;
1939
+ 401: unknown;
1319
1940
  };
1320
- export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
1321
- export type ListFleetsData = {
1941
+ export type UpdateTokenResponses = {
1942
+ /**
1943
+ * Successfully updated. Returns updated token details with masked secret.
1944
+ */
1945
+ 200: Token;
1946
+ };
1947
+ export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1948
+ export type RegenerateTokenData = {
1322
1949
  body?: never;
1323
1950
  path: {
1324
1951
  /**
1325
- * Unique identifier of the cluster. UUID v4 string in canonical form
1952
+ * Generated unique identifier of the access token.
1326
1953
  */
1327
- cluster_id: string;
1954
+ token_id: string;
1328
1955
  };
1329
1956
  query?: never;
1330
- url: '/clusters/{cluster_id}/fleets';
1957
+ url: '/tokens/{token_id}/secret';
1331
1958
  };
1332
- export type ListFleetsErrors = {
1959
+ export type RegenerateTokenErrors = {
1333
1960
  /**
1334
1961
  * Not authenticated
1335
1962
  */
1336
1963
  401: unknown;
1337
1964
  };
1338
- export type ListFleetsResponses = {
1965
+ export type RegenerateTokenResponses = {
1339
1966
  /**
1340
- * An array of fleets
1967
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1341
1968
  */
1342
- 200: Array<Fleet>;
1969
+ 200: Token;
1343
1970
  };
1344
- export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
1345
- export type CreateFleetData = {
1346
- body: FleetCreateInput;
1347
- path: {
1348
- /**
1349
- * Unique identifier of the cluster. UUID v4 string in canonical form
1350
- */
1351
- cluster_id: string;
1352
- };
1971
+ export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1972
+ export type ListTicketsData = {
1973
+ body?: never;
1974
+ path?: never;
1353
1975
  query?: never;
1354
- url: '/clusters/{cluster_id}/fleets';
1976
+ url: '/tickets';
1355
1977
  };
1356
- export type CreateFleetErrors = {
1978
+ export type ListTicketsResponses = {
1357
1979
  /**
1358
- * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1980
+ * An array of tickets for the organization, newest first.
1359
1981
  */
1360
- 402: string;
1982
+ 200: Array<Ticket>;
1361
1983
  };
1362
- export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1363
- export type CreateFleetResponses = {
1984
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1985
+ export type CreateTicketData = {
1986
+ body: {
1987
+ /**
1988
+ * JSON-encoded TicketCreateInput.
1989
+ */
1990
+ payload?: string;
1991
+ attachments?: Array<Blob | File>;
1992
+ };
1993
+ path?: never;
1994
+ query?: never;
1995
+ url: '/tickets';
1996
+ };
1997
+ export type CreateTicketResponses = {
1364
1998
  /**
1365
- * Successfully created. Returns created Fleet ID.
1999
+ * Ticket created.
1366
2000
  */
1367
- 200: string;
2001
+ 200: Ticket;
1368
2002
  };
1369
- export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
1370
- export type DeleteFleetData = {
2003
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
2004
+ export type CloseTicketData = {
1371
2005
  body?: never;
1372
2006
  path: {
1373
- /**
1374
- * Unique identifier of the cluster. UUID v4 string in canonical form
1375
- */
1376
- cluster_id: string;
1377
- /**
1378
- * Unique identifier of the fleet. UUID v4 string in canonical form
1379
- */
1380
- fleet_name: string;
2007
+ ticket_id: string;
1381
2008
  };
1382
2009
  query?: never;
1383
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2010
+ url: '/tickets/{ticket_id}';
1384
2011
  };
1385
- export type DeleteFleetResponses = {
2012
+ export type CloseTicketResponses = {
1386
2013
  /**
1387
- * Successfully deleted.
2014
+ * Ticket closed.
1388
2015
  */
1389
- 200: string;
2016
+ 200: Ticket;
1390
2017
  };
1391
- export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
1392
- export type GetFleetData = {
2018
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
2019
+ export type GetTicketData = {
1393
2020
  body?: never;
1394
2021
  path: {
1395
- /**
1396
- * Unique identifier of the cluster. UUID v4 string in canonical form
1397
- */
1398
- cluster_id: string;
1399
- /**
1400
- * Unique identifier of the fleet. UUID v4 string in canonical form
1401
- */
1402
- fleet_name: string;
2022
+ ticket_id: string;
1403
2023
  };
1404
2024
  query?: never;
1405
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2025
+ url: '/tickets/{ticket_id}';
1406
2026
  };
1407
- export type GetFleetResponses = {
2027
+ export type GetTicketResponses = {
1408
2028
  /**
1409
- * Returns a single object containing fleet details.
2029
+ * Ticket with messages (internal notes excluded).
1410
2030
  */
1411
- 200: Fleet;
2031
+ 200: Ticket;
1412
2032
  };
1413
- export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
1414
- export type UpdateFleetData = {
1415
- body: FleetUpdateInput;
2033
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
2034
+ export type GrantTicketSupportAccessData = {
2035
+ body?: never;
1416
2036
  path: {
1417
- /**
1418
- * Unique identifier of the cluster. UUID v4 string in canonical form
1419
- */
1420
- cluster_id: string;
1421
- /**
1422
- * Unique identifier of the fleet. UUID v4 string in canonical form
1423
- */
1424
- fleet_name: string;
2037
+ ticket_id: string;
1425
2038
  };
1426
2039
  query?: never;
1427
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2040
+ url: '/tickets/{ticket_id}/support-access';
1428
2041
  };
1429
- export type UpdateFleetErrors = {
2042
+ export type GrantTicketSupportAccessErrors = {
1430
2043
  /**
1431
- * Organization must have a valid payment method configured to access this endpoint.
2044
+ * Ticket is closed. Open a new ticket instead.
1432
2045
  */
1433
- 402: string;
2046
+ 409: unknown;
1434
2047
  };
1435
- export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1436
- export type UpdateFleetResponses = {
2048
+ export type GrantTicketSupportAccessResponses = {
1437
2049
  /**
1438
- * Successfully updated.
2050
+ * Support access granted.
1439
2051
  */
1440
- 200: string;
2052
+ 200: Ticket;
1441
2053
  };
1442
- export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1443
- export type QueryClusterData = {
1444
- body?: never;
1445
- path: {
2054
+ export type GrantTicketSupportAccessResponse = GrantTicketSupportAccessResponses[keyof GrantTicketSupportAccessResponses];
2055
+ export type ReplyTicketData = {
2056
+ body: {
1446
2057
  /**
1447
- * Unique identifier of the cluster. UUID v4 string in canonical form
2058
+ * JSON-encoded TicketMessageInput.
1448
2059
  */
1449
- cluster_id: string;
2060
+ payload?: string;
2061
+ attachments?: Array<Blob | File>;
2062
+ };
2063
+ path: {
2064
+ ticket_id: string;
1450
2065
  };
1451
2066
  query?: never;
1452
- url: '/clusters/{cluster_id}/query';
2067
+ url: '/tickets/{ticket_id}/messages';
1453
2068
  };
1454
- export type QueryClusterErrors = {
2069
+ export type ReplyTicketErrors = {
1455
2070
  /**
1456
- * Not authenticated
2071
+ * Ticket is closed. Open a new ticket instead.
1457
2072
  */
1458
- 401: unknown;
2073
+ 409: unknown;
1459
2074
  };
1460
- export type QueryClusterResponses = {
2075
+ export type ReplyTicketResponses = {
1461
2076
  /**
1462
- * Kubernetes API response
2077
+ * Reply appended.
1463
2078
  */
1464
- 200: unknown;
2079
+ 200: TicketMessage;
1465
2080
  };
1466
- export type ListClustersData = {
1467
- body?: never;
1468
- path?: never;
1469
- query?: never;
1470
- url: '/clusters';
1471
- };
1472
- export type ListClustersErrors = {
1473
- /**
1474
- * Not authenticated
1475
- */
1476
- 401: unknown;
1477
- };
1478
- export type ListClustersResponses = {
1479
- /**
1480
- * An array of clusters
1481
- */
1482
- 200: Array<Cluster>;
1483
- };
1484
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1485
- export type CreateClusterData = {
1486
- body: ClusterCreateInput;
1487
- path?: never;
1488
- query?: never;
1489
- url: '/clusters';
1490
- };
1491
- export type CreateClusterErrors = {
1492
- /**
1493
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1494
- */
1495
- 402: string;
1496
- };
1497
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1498
- export type CreateClusterResponses = {
1499
- /**
1500
- * Successfully created. Returns created Cluster ID.
1501
- */
1502
- 200: string;
1503
- };
1504
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1505
- export type DeleteClusterData = {
2081
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
2082
+ export type GetTicketAttachmentData = {
1506
2083
  body?: never;
1507
2084
  path: {
1508
- /**
1509
- * Unique identifier of the cluster. UUID v4 string in canonical form
1510
- */
1511
- cluster_id: string;
2085
+ ticket_id: string;
2086
+ attachment_id: string;
1512
2087
  };
1513
2088
  query?: never;
1514
- url: '/clusters/{cluster_id}';
2089
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
1515
2090
  };
1516
- export type DeleteClusterResponses = {
2091
+ export type GetTicketAttachmentResponses = {
1517
2092
  /**
1518
- * Successfully deleted.
2093
+ * Attachment binary stream.
1519
2094
  */
1520
- 200: string;
2095
+ 200: Blob | File;
1521
2096
  };
1522
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1523
- export type GetClusterData = {
2097
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
2098
+ export type ListRoadmapData = {
1524
2099
  body?: never;
1525
- path: {
1526
- /**
1527
- * Unique identifier of the cluster. UUID v4 string in canonical form
1528
- */
1529
- cluster_id: string;
1530
- };
2100
+ path?: never;
1531
2101
  query?: never;
1532
- url: '/clusters/{cluster_id}';
2102
+ url: '/roadmap';
1533
2103
  };
1534
- export type GetClusterResponses = {
2104
+ export type ListRoadmapResponses = {
1535
2105
  /**
1536
- * Returns a single object containing cluster details.
2106
+ * An array of roadmap items, newest first.
1537
2107
  */
1538
- 200: Cluster;
2108
+ 200: Array<RoadmapItem>;
1539
2109
  };
1540
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1541
- export type UpdateClusterData = {
1542
- body: ClusterUpdateInput;
1543
- path: {
1544
- /**
1545
- * Unique identifier of the cluster. UUID v4 string in canonical form
1546
- */
1547
- cluster_id: string;
1548
- };
2110
+ export type ListRoadmapResponse = ListRoadmapResponses[keyof ListRoadmapResponses];
2111
+ export type SuggestRoadmapData = {
2112
+ body: RoadmapItemCreateInput;
2113
+ path?: never;
1549
2114
  query?: never;
1550
- url: '/clusters/{cluster_id}';
2115
+ url: '/roadmap';
1551
2116
  };
1552
- export type UpdateClusterResponses = {
2117
+ export type SuggestRoadmapResponses = {
1553
2118
  /**
1554
- * Successfully updated. Returns updated cluster details.
2119
+ * Suggestion submitted for review.
1555
2120
  */
1556
- 200: Cluster;
2121
+ 200: RoadmapItem;
1557
2122
  };
1558
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1559
- export type GetClusterCaData = {
2123
+ export type SuggestRoadmapResponse = SuggestRoadmapResponses[keyof SuggestRoadmapResponses];
2124
+ export type UnvoteRoadmapData = {
1560
2125
  body?: never;
1561
2126
  path: {
1562
- /**
1563
- * Unique identifier of the cluster. UUID v4 string in canonical form
1564
- */
1565
- cluster_id: string;
2127
+ item_id: string;
1566
2128
  };
1567
2129
  query?: never;
1568
- url: '/clusters/{cluster_id}/ca';
2130
+ url: '/roadmap/{item_id}/vote';
1569
2131
  };
1570
- export type GetClusterCaErrors = {
2132
+ export type UnvoteRoadmapErrors = {
1571
2133
  /**
1572
- * Cluster not found, or its certificate authority is not available yet.
2134
+ * Roadmap item not found.
1573
2135
  */
1574
2136
  404: unknown;
1575
2137
  };
1576
- export type GetClusterCaResponses = {
2138
+ export type UnvoteRoadmapResponses = {
1577
2139
  /**
1578
- * PEM-encoded certificate authority of the cluster.
2140
+ * Vote removed. Returns the item without a vote.
1579
2141
  */
1580
- 200: string;
2142
+ 200: RoadmapItem;
1581
2143
  };
1582
- export type GetClusterCaResponse = GetClusterCaResponses[keyof GetClusterCaResponses];
1583
- export type GetJoinInformationData = {
1584
- body?: never;
2144
+ export type UnvoteRoadmapResponse = UnvoteRoadmapResponses[keyof UnvoteRoadmapResponses];
2145
+ export type VoteRoadmapData = {
2146
+ body: RoadmapVoteInput;
1585
2147
  path: {
1586
- /**
1587
- * Unique identifier of the cluster. UUID v4 string in canonical form
1588
- */
1589
- cluster_id: string;
2148
+ item_id: string;
1590
2149
  };
1591
2150
  query?: never;
1592
- url: '/clusters/{cluster_id}/join_information';
2151
+ url: '/roadmap/{item_id}/vote';
1593
2152
  };
1594
- export type GetJoinInformationErrors = {
2153
+ export type VoteRoadmapErrors = {
1595
2154
  /**
1596
- * Not authenticated
2155
+ * Roadmap item not found.
1597
2156
  */
1598
- 401: unknown;
2157
+ 404: unknown;
1599
2158
  };
1600
- export type GetJoinInformationResponses = {
2159
+ export type VoteRoadmapResponses = {
1601
2160
  /**
1602
- * An object of cluster join information
2161
+ * Vote saved. Returns the item with your vote.
1603
2162
  */
1604
- 200: ClusterJoinInformation;
2163
+ 200: RoadmapItem;
1605
2164
  };
1606
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1607
- export type ListInvitesData = {
2165
+ export type VoteRoadmapResponse = VoteRoadmapResponses[keyof VoteRoadmapResponses];
2166
+ export type ListRepositoriesData = {
1608
2167
  body?: never;
1609
2168
  path?: never;
1610
2169
  query?: never;
1611
- url: '/invites';
2170
+ url: '/registry';
1612
2171
  };
1613
- export type ListInvitesErrors = {
2172
+ export type ListRepositoriesErrors = {
1614
2173
  /**
1615
2174
  * Not authenticated
1616
2175
  */
1617
2176
  401: unknown;
1618
- };
1619
- export type ListInvitesResponses = {
1620
2177
  /**
1621
- * An array of invites
2178
+ * Internal server error
1622
2179
  */
1623
- 200: Array<Invite>;
1624
- };
1625
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1626
- export type CreateInviteData = {
1627
- body: {
1628
- /**
1629
- * User email address
1630
- */
1631
- email?: string;
1632
- };
1633
- path?: never;
1634
- query?: never;
1635
- url: '/invites';
2180
+ 500: unknown;
1636
2181
  };
1637
- export type CreateInviteResponses = {
2182
+ export type ListRepositoriesResponses = {
1638
2183
  /**
1639
- * Successfully created. Returns created invite details.
2184
+ * List of repositories
1640
2185
  */
1641
- 200: Invite;
2186
+ 200: Array<RegistryRepository>;
1642
2187
  };
1643
- export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
1644
- export type GetInviteData = {
2188
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
2189
+ export type ListTagsData = {
1645
2190
  body?: never;
1646
2191
  path: {
1647
2192
  /**
1648
- * Invitation code
2193
+ * Region where the repository is located
1649
2194
  */
1650
- code: string;
1651
- };
1652
- query?: never;
1653
- url: '/invites/{code}';
1654
- };
1655
- export type GetInviteResponses = {
1656
- /**
1657
- * Returns a single object containing invite details.
1658
- */
1659
- 200: Invite;
1660
- };
1661
- export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1662
- export type DeleteInviteData = {
1663
- body?: never;
1664
- path: {
2195
+ region: string;
1665
2196
  /**
1666
- * User email address
2197
+ * Name of the repository
1667
2198
  */
1668
- email: string;
2199
+ repository: string;
1669
2200
  };
1670
2201
  query?: never;
1671
- url: '/invites/{email}';
1672
- };
1673
- export type DeleteInviteResponses = {
1674
- /**
1675
- * Successfully deleted.
1676
- */
1677
- 200: unknown;
1678
- };
1679
- export type ListMarketplaceChartsData = {
1680
- body?: never;
1681
- path?: never;
1682
- query?: never;
1683
- url: '/marketplace';
2202
+ url: '/registry/{region}/{repository}';
1684
2203
  };
1685
- export type ListMarketplaceChartsErrors = {
2204
+ export type ListTagsErrors = {
1686
2205
  /**
1687
2206
  * Not authenticated
1688
2207
  */
1689
2208
  401: unknown;
2209
+ /**
2210
+ * Repository not found
2211
+ */
2212
+ 404: unknown;
2213
+ /**
2214
+ * Internal server error
2215
+ */
2216
+ 500: unknown;
1690
2217
  };
1691
- export type ListMarketplaceChartsResponses = {
2218
+ export type ListTagsResponses = {
1692
2219
  /**
1693
- * An array of chart listings in the marketplace.
2220
+ * Repository with tags
1694
2221
  */
1695
- 200: Array<MarketplaceListing>;
2222
+ 200: RegistryRepositoryWithTags;
1696
2223
  };
1697
- export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
1698
- export type GetMarketplaceChartFilesData = {
2224
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2225
+ export type DeleteTagData = {
1699
2226
  body?: never;
1700
2227
  path: {
1701
2228
  /**
1702
- * Name of the chart in the marketplace.
2229
+ * Region where the repository is located
1703
2230
  */
1704
- chart_name: string;
2231
+ region: string;
1705
2232
  /**
1706
- * 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).
2233
+ * Name of the repository
1707
2234
  */
1708
- version_channel: string;
2235
+ repository: string;
2236
+ /**
2237
+ * Name of the tag
2238
+ */
2239
+ tag: string;
1709
2240
  };
1710
2241
  query?: never;
1711
- url: '/marketplace/{chart_name}/files/{version_channel}';
2242
+ url: '/registry/{region}/{repository}/{tag}';
1712
2243
  };
1713
- export type GetMarketplaceChartFilesErrors = {
2244
+ export type DeleteTagErrors = {
1714
2245
  /**
1715
- * Chart not found or no version matches the channel
2246
+ * Not authenticated
2247
+ */
2248
+ 401: unknown;
2249
+ /**
2250
+ * Tag not found
1716
2251
  */
1717
2252
  404: unknown;
1718
- };
1719
- export type GetMarketplaceChartFilesResponses = {
1720
2253
  /**
1721
- * Returns an object containing the chart files for the latest matching version.
2254
+ * Internal server error
1722
2255
  */
1723
- 200: MarketplaceListingFiles;
2256
+ 500: unknown;
1724
2257
  };
1725
- export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
1726
- export type PostMcpData = {
2258
+ export type DeleteTagResponses = {
1727
2259
  /**
1728
- * JSON-RPC 2.0 request payload
2260
+ * Tag successfully deleted
1729
2261
  */
1730
- body: {
1731
- jsonrpc?: string;
1732
- method?: string;
1733
- id?: string | number;
2262
+ 200: unknown;
2263
+ };
2264
+ export type GetTagData = {
2265
+ body?: never;
2266
+ path: {
1734
2267
  /**
1735
- * Method-specific parameters
2268
+ * Region where the repository is located
1736
2269
  */
1737
- params?: {
1738
- [key: string]: unknown;
1739
- };
2270
+ region: string;
2271
+ /**
2272
+ * Name of the repository
2273
+ */
2274
+ repository: string;
2275
+ /**
2276
+ * Name of the tag
2277
+ */
2278
+ tag: string;
1740
2279
  };
1741
- path?: never;
1742
2280
  query?: never;
1743
- url: '/mcp';
2281
+ url: '/registry/{region}/{repository}/{tag}';
1744
2282
  };
1745
- export type PostMcpErrors = {
2283
+ export type GetTagErrors = {
1746
2284
  /**
1747
2285
  * Not authenticated
1748
2286
  */
1749
2287
  401: unknown;
1750
- };
1751
- export type PostMcpResponses = {
1752
2288
  /**
1753
- * JSON-RPC 2.0 success or error response
2289
+ * Tag not found
1754
2290
  */
1755
- 200: {
1756
- jsonrpc?: string;
1757
- id?: string | number;
1758
- result?: {
1759
- [key: string]: unknown;
1760
- };
1761
- error?: {
1762
- code?: number;
1763
- message?: string;
1764
- };
1765
- };
2291
+ 404: unknown;
2292
+ /**
2293
+ * Internal server error
2294
+ */
2295
+ 500: unknown;
1766
2296
  };
1767
- export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2297
+ export type GetTagResponses = {
2298
+ /**
2299
+ * Tag details
2300
+ */
2301
+ 200: RegistryTag;
2302
+ };
2303
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
1768
2304
  export type GetOrganizationData = {
1769
2305
  body?: never;
1770
2306
  path?: never;
@@ -1786,402 +2322,875 @@ export type CreateOrganizationData = {
1786
2322
  };
1787
2323
  export type CreateOrganizationResponses = {
1788
2324
  /**
1789
- * Successfully created a new organization.
2325
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2326
+ *
1790
2327
  */
1791
- 200: unknown;
2328
+ 200: OrganizationCreateOutput;
1792
2329
  };
1793
- export type ListRepositoriesData = {
1794
- body?: never;
2330
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2331
+ export type PostMcpData = {
2332
+ /**
2333
+ * JSON-RPC 2.0 request payload
2334
+ */
2335
+ body: {
2336
+ jsonrpc?: string;
2337
+ method?: string;
2338
+ id?: string | number;
2339
+ /**
2340
+ * Method-specific parameters
2341
+ */
2342
+ params?: {
2343
+ [key: string]: unknown;
2344
+ };
2345
+ };
1795
2346
  path?: never;
1796
2347
  query?: never;
1797
- url: '/registry';
2348
+ url: '/mcp';
1798
2349
  };
1799
- export type ListRepositoriesErrors = {
2350
+ export type PostMcpErrors = {
1800
2351
  /**
1801
2352
  * Not authenticated
1802
2353
  */
1803
2354
  401: unknown;
2355
+ };
2356
+ export type PostMcpResponses = {
1804
2357
  /**
1805
- * Internal server error
2358
+ * JSON-RPC 2.0 success or error response
1806
2359
  */
1807
- 500: unknown;
2360
+ 200: {
2361
+ jsonrpc?: string;
2362
+ id?: string | number;
2363
+ result?: {
2364
+ [key: string]: unknown;
2365
+ };
2366
+ error?: {
2367
+ code?: number;
2368
+ message?: string;
2369
+ };
2370
+ };
1808
2371
  };
1809
- export type ListRepositoriesResponses = {
2372
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2373
+ export type ListMarketplaceChartsData = {
2374
+ body?: never;
2375
+ path?: never;
2376
+ query?: never;
2377
+ url: '/marketplace';
2378
+ };
2379
+ export type ListMarketplaceChartsErrors = {
1810
2380
  /**
1811
- * List of repositories
2381
+ * Not authenticated
1812
2382
  */
1813
- 200: Array<RegistryRepository>;
2383
+ 401: unknown;
1814
2384
  };
1815
- export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
1816
- export type ListTagsData = {
2385
+ export type ListMarketplaceChartsResponses = {
2386
+ /**
2387
+ * An array of chart listings in the marketplace.
2388
+ */
2389
+ 200: Array<MarketplaceListing>;
2390
+ };
2391
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2392
+ export type GetMarketplaceChartFilesData = {
1817
2393
  body?: never;
1818
2394
  path: {
1819
2395
  /**
1820
- * Region where the repository is located
2396
+ * Name of the chart in the marketplace.
1821
2397
  */
1822
- region: string;
2398
+ chart_name: string;
1823
2399
  /**
1824
- * Name of the repository
2400
+ * 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).
1825
2401
  */
1826
- repository: string;
2402
+ version_channel: string;
1827
2403
  };
1828
2404
  query?: never;
1829
- url: '/registry/{region}/{repository}';
2405
+ url: '/marketplace/{chart_name}/files/{version_channel}';
1830
2406
  };
1831
- export type ListTagsErrors = {
2407
+ export type GetMarketplaceChartFilesErrors = {
2408
+ /**
2409
+ * Chart not found or no version matches the channel
2410
+ */
2411
+ 404: unknown;
2412
+ };
2413
+ export type GetMarketplaceChartFilesResponses = {
2414
+ /**
2415
+ * Returns an object containing the chart files for the latest matching version.
2416
+ */
2417
+ 200: MarketplaceListingFiles;
2418
+ };
2419
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2420
+ export type ListInvitesData = {
2421
+ body?: never;
2422
+ path?: never;
2423
+ query?: never;
2424
+ url: '/invites';
2425
+ };
2426
+ export type ListInvitesErrors = {
1832
2427
  /**
1833
2428
  * Not authenticated
1834
2429
  */
1835
2430
  401: unknown;
2431
+ };
2432
+ export type ListInvitesResponses = {
1836
2433
  /**
1837
- * Repository not found
2434
+ * An array of invites
1838
2435
  */
1839
- 404: unknown;
2436
+ 200: Array<Invite>;
2437
+ };
2438
+ export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
2439
+ export type CreateInviteData = {
2440
+ body: InviteCreateInput;
2441
+ path?: never;
2442
+ query?: never;
2443
+ url: '/invites';
2444
+ };
2445
+ export type CreateInviteResponses = {
1840
2446
  /**
1841
- * Internal server error
2447
+ * Successfully created. Returns created invite details.
1842
2448
  */
1843
- 500: unknown;
2449
+ 200: Invite;
1844
2450
  };
1845
- export type ListTagsResponses = {
2451
+ export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
2452
+ export type GetInviteData = {
2453
+ body?: never;
2454
+ path: {
2455
+ /**
2456
+ * Invitation code
2457
+ */
2458
+ code: string;
2459
+ };
2460
+ query?: never;
2461
+ url: '/invites/{code}';
2462
+ };
2463
+ export type GetInviteResponses = {
1846
2464
  /**
1847
- * Repository with tags
2465
+ * The invitation code is valid. Returns the invited email and organization.
1848
2466
  */
1849
- 200: RegistryRepositoryWithTags;
2467
+ 200: {
2468
+ /**
2469
+ * Email address the invite was issued to.
2470
+ */
2471
+ email?: string;
2472
+ /**
2473
+ * Identifier of the organization the invite grants access to.
2474
+ */
2475
+ organization_id?: string;
2476
+ };
1850
2477
  };
1851
- export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
1852
- export type DeleteTagData = {
2478
+ export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
2479
+ export type DeleteInviteData = {
1853
2480
  body?: never;
1854
2481
  path: {
1855
2482
  /**
1856
- * Region where the repository is located
2483
+ * User email address
1857
2484
  */
1858
- region: string;
2485
+ email: string;
2486
+ };
2487
+ query?: never;
2488
+ url: '/invites/{email}';
2489
+ };
2490
+ export type DeleteInviteResponses = {
2491
+ /**
2492
+ * Successfully deleted.
2493
+ */
2494
+ 200: unknown;
2495
+ };
2496
+ export type SendFeedbackData = {
2497
+ body: FeedbackCreateInput;
2498
+ path?: never;
2499
+ query?: never;
2500
+ url: '/feedback';
2501
+ };
2502
+ export type SendFeedbackErrors = {
2503
+ /**
2504
+ * Too much feedback from this organization in the last hour.
2505
+ */
2506
+ 429: unknown;
2507
+ };
2508
+ export type SendFeedbackResponses = {
2509
+ /**
2510
+ * Feedback received.
2511
+ */
2512
+ 200: Feedback;
2513
+ };
2514
+ export type SendFeedbackResponse = SendFeedbackResponses[keyof SendFeedbackResponses];
2515
+ export type QueryClusterData = {
2516
+ body?: never;
2517
+ path: {
1859
2518
  /**
1860
- * Name of the repository
2519
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1861
2520
  */
1862
- repository: string;
2521
+ cluster_id: string;
2522
+ };
2523
+ query?: never;
2524
+ url: '/clusters/{cluster_id}/query';
2525
+ };
2526
+ export type QueryClusterErrors = {
2527
+ /**
2528
+ * Not authenticated
2529
+ */
2530
+ 401: unknown;
2531
+ };
2532
+ export type QueryClusterResponses = {
2533
+ /**
2534
+ * Kubernetes API response
2535
+ */
2536
+ 200: unknown;
2537
+ };
2538
+ export type ListFleetsData = {
2539
+ body?: never;
2540
+ path: {
1863
2541
  /**
1864
- * Name of the tag
2542
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1865
2543
  */
1866
- tag: string;
2544
+ cluster_id: string;
1867
2545
  };
1868
2546
  query?: never;
1869
- url: '/registry/{region}/{repository}/{tag}';
2547
+ url: '/clusters/{cluster_id}/fleets';
1870
2548
  };
1871
- export type DeleteTagErrors = {
2549
+ export type ListFleetsErrors = {
1872
2550
  /**
1873
2551
  * Not authenticated
1874
2552
  */
1875
2553
  401: unknown;
2554
+ };
2555
+ export type ListFleetsResponses = {
1876
2556
  /**
1877
- * Tag not found
2557
+ * An array of fleets
1878
2558
  */
1879
- 404: unknown;
2559
+ 200: Array<Fleet>;
2560
+ };
2561
+ export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
2562
+ export type CreateFleetData = {
2563
+ body: FleetCreateInput;
2564
+ path: {
2565
+ /**
2566
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2567
+ */
2568
+ cluster_id: string;
2569
+ };
2570
+ query?: never;
2571
+ url: '/clusters/{cluster_id}/fleets';
2572
+ };
2573
+ export type CreateFleetErrors = {
1880
2574
  /**
1881
- * Internal server error
2575
+ * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1882
2576
  */
1883
- 500: unknown;
2577
+ 402: string;
2578
+ /**
2579
+ * 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.
2580
+ */
2581
+ 409: string;
1884
2582
  };
1885
- export type DeleteTagResponses = {
2583
+ export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
2584
+ export type CreateFleetResponses = {
1886
2585
  /**
1887
- * Tag successfully deleted
2586
+ * Successfully created. Returns created Fleet ID.
1888
2587
  */
1889
- 200: unknown;
2588
+ 200: string;
1890
2589
  };
1891
- export type GetTagData = {
2590
+ export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
2591
+ export type DeleteFleetData = {
1892
2592
  body?: never;
1893
2593
  path: {
1894
2594
  /**
1895
- * Region where the repository is located
2595
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1896
2596
  */
1897
- region: string;
2597
+ cluster_id: string;
1898
2598
  /**
1899
- * Name of the repository
2599
+ * Unique identifier of the fleet. UUID v4 string in canonical form
1900
2600
  */
1901
- repository: string;
2601
+ fleet_name: string;
2602
+ };
2603
+ query?: never;
2604
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2605
+ };
2606
+ export type DeleteFleetErrors = {
2607
+ /**
2608
+ * 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.
2609
+ */
2610
+ 409: string;
2611
+ };
2612
+ export type DeleteFleetError = DeleteFleetErrors[keyof DeleteFleetErrors];
2613
+ export type DeleteFleetResponses = {
2614
+ /**
2615
+ * Successfully deleted.
2616
+ */
2617
+ 200: string;
2618
+ };
2619
+ export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
2620
+ export type GetFleetData = {
2621
+ body?: never;
2622
+ path: {
1902
2623
  /**
1903
- * Name of the tag
2624
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1904
2625
  */
1905
- tag: string;
2626
+ cluster_id: string;
2627
+ /**
2628
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2629
+ */
2630
+ fleet_name: string;
1906
2631
  };
1907
2632
  query?: never;
1908
- url: '/registry/{region}/{repository}/{tag}';
2633
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2634
+ };
2635
+ export type GetFleetResponses = {
2636
+ /**
2637
+ * Returns a single object containing fleet details.
2638
+ */
2639
+ 200: Fleet;
2640
+ };
2641
+ export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
2642
+ export type UpdateFleetData = {
2643
+ body: FleetUpdateInput;
2644
+ path: {
2645
+ /**
2646
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2647
+ */
2648
+ cluster_id: string;
2649
+ /**
2650
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2651
+ */
2652
+ fleet_name: string;
2653
+ };
2654
+ query?: never;
2655
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2656
+ };
2657
+ export type UpdateFleetErrors = {
2658
+ /**
2659
+ * Organization must have a valid payment method configured to access this endpoint.
2660
+ */
2661
+ 402: string;
2662
+ /**
2663
+ * 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.
2664
+ */
2665
+ 409: string;
2666
+ };
2667
+ export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
2668
+ export type UpdateFleetResponses = {
2669
+ /**
2670
+ * Successfully updated.
2671
+ */
2672
+ 200: string;
2673
+ };
2674
+ export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
2675
+ export type ListChartsData = {
2676
+ body?: never;
2677
+ path: {
2678
+ /**
2679
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2680
+ */
2681
+ cluster_id: string;
2682
+ };
2683
+ query?: never;
2684
+ url: '/clusters/{cluster_id}/charts';
2685
+ };
2686
+ export type ListChartsErrors = {
2687
+ /**
2688
+ * Not authenticated
2689
+ */
2690
+ 401: unknown;
2691
+ };
2692
+ export type ListChartsResponses = {
2693
+ /**
2694
+ * An array of charts
2695
+ */
2696
+ 200: Array<Chart>;
2697
+ };
2698
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
2699
+ export type CreateChartData = {
2700
+ body: ChartCreateInput;
2701
+ path: {
2702
+ /**
2703
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2704
+ */
2705
+ cluster_id: string;
2706
+ };
2707
+ query?: never;
2708
+ url: '/clusters/{cluster_id}/charts';
2709
+ };
2710
+ export type CreateChartErrors = {
2711
+ /**
2712
+ * 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.
2713
+ */
2714
+ 409: string;
2715
+ };
2716
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2717
+ export type CreateChartResponses = {
2718
+ /**
2719
+ * Successfully created. Returns created Chart ID.
2720
+ */
2721
+ 200: string;
2722
+ };
2723
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2724
+ export type DeleteChartData = {
2725
+ body?: never;
2726
+ path: {
2727
+ /**
2728
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2729
+ */
2730
+ cluster_id: string;
2731
+ /**
2732
+ * Chart deployment name as the unique identifier of the chart.
2733
+ */
2734
+ chart_name: string;
2735
+ };
2736
+ query?: never;
2737
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2738
+ };
2739
+ export type DeleteChartErrors = {
2740
+ /**
2741
+ * 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.
2742
+ */
2743
+ 409: string;
2744
+ };
2745
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2746
+ export type DeleteChartResponses = {
2747
+ /**
2748
+ * Successfully deleted.
2749
+ */
2750
+ 200: string;
2751
+ };
2752
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2753
+ export type GetChartData = {
2754
+ body?: never;
2755
+ path: {
2756
+ /**
2757
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2758
+ */
2759
+ cluster_id: string;
2760
+ /**
2761
+ * Chart deployment name as the unique identifier of the chart.
2762
+ */
2763
+ chart_name: string;
2764
+ };
2765
+ query?: never;
2766
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2767
+ };
2768
+ export type GetChartResponses = {
2769
+ /**
2770
+ * Returns a single object containing chart details.
2771
+ */
2772
+ 200: Chart;
2773
+ };
2774
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2775
+ export type UpdateChartData = {
2776
+ body: ChartUpdateInput;
2777
+ path: {
2778
+ /**
2779
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2780
+ */
2781
+ cluster_id: string;
2782
+ /**
2783
+ * Chart deployment name as the unique identifier of the chart.
2784
+ */
2785
+ chart_name: string;
2786
+ };
2787
+ query?: never;
2788
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2789
+ };
2790
+ export type UpdateChartErrors = {
2791
+ /**
2792
+ * 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.
2793
+ */
2794
+ 409: string;
2795
+ };
2796
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2797
+ export type UpdateChartResponses = {
2798
+ /**
2799
+ * Successfully updated.
2800
+ */
2801
+ 200: string;
2802
+ };
2803
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2804
+ export type ListClustersData = {
2805
+ body?: never;
2806
+ path?: never;
2807
+ query?: never;
2808
+ url: '/clusters';
2809
+ };
2810
+ export type ListClustersErrors = {
2811
+ /**
2812
+ * Not authenticated
2813
+ */
2814
+ 401: unknown;
2815
+ };
2816
+ export type ListClustersResponses = {
2817
+ /**
2818
+ * An array of clusters
2819
+ */
2820
+ 200: Array<Cluster>;
2821
+ };
2822
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2823
+ export type CreateClusterData = {
2824
+ body: ClusterCreateInput;
2825
+ path?: never;
2826
+ query?: never;
2827
+ url: '/clusters';
2828
+ };
2829
+ export type CreateClusterErrors = {
2830
+ /**
2831
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2832
+ */
2833
+ 402: string;
2834
+ };
2835
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2836
+ export type CreateClusterResponses = {
2837
+ /**
2838
+ * Successfully created. Returns created Cluster ID.
2839
+ */
2840
+ 200: string;
2841
+ };
2842
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2843
+ export type DeleteClusterData = {
2844
+ body?: never;
2845
+ path: {
2846
+ /**
2847
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2848
+ */
2849
+ cluster_id: string;
2850
+ };
2851
+ query?: never;
2852
+ url: '/clusters/{cluster_id}';
2853
+ };
2854
+ export type DeleteClusterErrors = {
2855
+ /**
2856
+ * Cluster not found; it does not exist or has already been deleted.
2857
+ */
2858
+ 404: unknown;
2859
+ /**
2860
+ * 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.
2861
+ */
2862
+ 409: string;
2863
+ /**
2864
+ * Transient failure tearing down the cluster; retry the request.
2865
+ */
2866
+ 503: unknown;
2867
+ };
2868
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2869
+ export type DeleteClusterResponses = {
2870
+ /**
2871
+ * Successfully deleted. The cluster has been torn down.
2872
+ */
2873
+ 200: string;
2874
+ };
2875
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2876
+ export type GetClusterData = {
2877
+ body?: never;
2878
+ path: {
2879
+ /**
2880
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2881
+ */
2882
+ cluster_id: string;
2883
+ };
2884
+ query?: never;
2885
+ url: '/clusters/{cluster_id}';
2886
+ };
2887
+ export type GetClusterResponses = {
2888
+ /**
2889
+ * Returns a single object containing cluster details.
2890
+ */
2891
+ 200: Cluster;
2892
+ };
2893
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2894
+ export type UpdateClusterData = {
2895
+ body: ClusterUpdateInput;
2896
+ path: {
2897
+ /**
2898
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2899
+ */
2900
+ cluster_id: string;
2901
+ };
2902
+ query?: never;
2903
+ url: '/clusters/{cluster_id}';
2904
+ };
2905
+ export type UpdateClusterErrors = {
2906
+ /**
2907
+ * 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.
2908
+ */
2909
+ 409: string;
2910
+ };
2911
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2912
+ export type UpdateClusterResponses = {
2913
+ /**
2914
+ * Successfully updated. Returns updated cluster details.
2915
+ */
2916
+ 200: Cluster;
2917
+ };
2918
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2919
+ export type GetJoinInformationData = {
2920
+ body?: never;
2921
+ path: {
2922
+ /**
2923
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2924
+ */
2925
+ cluster_id: string;
2926
+ };
2927
+ query?: never;
2928
+ url: '/clusters/{cluster_id}/join_information';
1909
2929
  };
1910
- export type GetTagErrors = {
2930
+ export type GetJoinInformationErrors = {
1911
2931
  /**
1912
2932
  * Not authenticated
1913
2933
  */
1914
2934
  401: unknown;
1915
2935
  /**
1916
- * Tag not found
2936
+ * 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.
1917
2937
  */
1918
- 404: unknown;
2938
+ 409: string;
1919
2939
  /**
1920
- * Internal server error
2940
+ * The cluster runs on Cloudfleet data plane v2 and the calling client did not declare the dataplane-v2 capability, so it cannot provision a node for it. Upgrade the Cloudfleet CLI or Terraform provider.
1921
2941
  */
1922
- 500: unknown;
2942
+ 426: string;
1923
2943
  };
1924
- export type GetTagResponses = {
2944
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2945
+ export type GetJoinInformationResponses = {
1925
2946
  /**
1926
- * Tag details
2947
+ * An object of cluster join information
1927
2948
  */
1928
- 200: RegistryTag;
2949
+ 200: ClusterJoinInformation;
1929
2950
  };
1930
- export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
1931
- export type ListTokensData = {
2951
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2952
+ export type GetUsageData = {
1932
2953
  body?: never;
1933
2954
  path?: never;
1934
- query?: never;
1935
- url: '/tokens';
2955
+ query?: {
2956
+ /**
2957
+ * 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)
2958
+ */
2959
+ granularity?: 'hourly' | 'daily' | 'monthly';
2960
+ };
2961
+ url: '/billing/usage';
1936
2962
  };
1937
- export type ListTokensErrors = {
2963
+ export type GetUsageErrors = {
1938
2964
  /**
1939
2965
  * Not authenticated
1940
2966
  */
1941
2967
  401: unknown;
1942
2968
  };
1943
- export type ListTokensResponses = {
2969
+ export type GetUsageResponses = {
1944
2970
  /**
1945
- * Returns a list of access token details with masked secrets.
2971
+ * Usage data with facets for filtering
1946
2972
  */
1947
- 200: Array<Token>;
2973
+ 200: UsageResponse;
1948
2974
  };
1949
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1950
- export type CreateTokenData = {
1951
- body: TokenCreateInput;
2975
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2976
+ export type GetPaymentMethodSecretData = {
2977
+ body?: never;
1952
2978
  path?: never;
1953
2979
  query?: never;
1954
- url: '/tokens';
1955
- };
1956
- export type CreateTokenErrors = {
1957
- /**
1958
- * Not authenticated
1959
- */
1960
- 401: unknown;
2980
+ url: '/billing/payment-method';
1961
2981
  };
1962
- export type CreateTokenResponses = {
2982
+ export type GetPaymentMethodSecretResponses = {
1963
2983
  /**
1964
- * Successfully created. Returns created token details with unmasked/raw secret.
2984
+ * 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.
2985
+ *
1965
2986
  */
1966
- 200: Token;
1967
- };
1968
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1969
- export type DeleteTokenData = {
1970
- body?: never;
1971
- path: {
2987
+ 200: {
1972
2988
  /**
1973
- * Generated unique identifier of the access token.
2989
+ * The client secret.
1974
2990
  */
1975
- token_id: string;
2991
+ id?: string;
1976
2992
  };
1977
- query?: never;
1978
- url: '/tokens/{token_id}';
1979
- };
1980
- export type DeleteTokenResponses = {
1981
- /**
1982
- * Successfully deleted.
1983
- */
1984
- 200: unknown;
1985
2993
  };
1986
- export type GetTokenData = {
2994
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2995
+ export type ListPaymentMethodsData = {
1987
2996
  body?: never;
1988
- path: {
1989
- /**
1990
- * Generated unique identifier of the access token.
1991
- */
1992
- token_id: string;
1993
- };
2997
+ path?: never;
1994
2998
  query?: never;
1995
- url: '/tokens/{token_id}';
2999
+ url: '/billing/payment-methods';
1996
3000
  };
1997
- export type GetTokenErrors = {
3001
+ export type ListPaymentMethodsErrors = {
1998
3002
  /**
1999
3003
  * Not authenticated
2000
3004
  */
2001
3005
  401: unknown;
2002
3006
  };
2003
- export type GetTokenResponses = {
3007
+ export type ListPaymentMethodsResponses = {
2004
3008
  /**
2005
- * Returns access token details with masked secret.
3009
+ * An array of payment methods.
2006
3010
  */
2007
- 200: Token;
3011
+ 200: Array<PaymentMethod>;
2008
3012
  };
2009
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
2010
- export type UpdateTokenData = {
2011
- body: TokenUpdateInput;
3013
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
3014
+ export type SetDefaultPaymentMethodData = {
3015
+ body?: never;
2012
3016
  path: {
2013
3017
  /**
2014
- * Generated unique identifier of the access token.
3018
+ * Stripe payment method identifier.
2015
3019
  */
2016
- token_id: string;
3020
+ paymentMethodId: string;
2017
3021
  };
2018
3022
  query?: never;
2019
- url: '/tokens/{token_id}';
3023
+ url: '/billing/payment-methods/{paymentMethodId}/default';
2020
3024
  };
2021
- export type UpdateTokenErrors = {
3025
+ export type SetDefaultPaymentMethodErrors = {
3026
+ /**
3027
+ * The bank transfer payment method cannot be set as the default.
3028
+ */
3029
+ 400: unknown;
2022
3030
  /**
2023
3031
  * Not authenticated
2024
3032
  */
2025
3033
  401: unknown;
3034
+ /**
3035
+ * Payment method not found.
3036
+ */
3037
+ 404: unknown;
2026
3038
  };
2027
- export type UpdateTokenResponses = {
3039
+ export type SetDefaultPaymentMethodResponses = {
2028
3040
  /**
2029
- * Successfully updated. Returns updated token details with masked secret.
3041
+ * Default payment method updated.
2030
3042
  */
2031
- 200: Token;
3043
+ 204: void;
2032
3044
  };
2033
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
2034
- export type RegenerateTokenData = {
3045
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
3046
+ export type DeletePaymentMethodData = {
2035
3047
  body?: never;
2036
3048
  path: {
2037
3049
  /**
2038
- * Generated unique identifier of the access token.
3050
+ * Stripe payment method identifier.
2039
3051
  */
2040
- token_id: string;
3052
+ paymentMethodId: string;
2041
3053
  };
2042
3054
  query?: never;
2043
- url: '/tokens/{token_id}/secret';
3055
+ url: '/billing/payment-methods/{paymentMethodId}';
2044
3056
  };
2045
- export type RegenerateTokenErrors = {
3057
+ export type DeletePaymentMethodErrors = {
3058
+ /**
3059
+ * The bank transfer payment method cannot be removed.
3060
+ */
3061
+ 400: unknown;
2046
3062
  /**
2047
3063
  * Not authenticated
2048
3064
  */
2049
3065
  401: unknown;
3066
+ /**
3067
+ * Payment method not found.
3068
+ */
3069
+ 404: unknown;
3070
+ /**
3071
+ * Cannot delete the only remaining payment method.
3072
+ */
3073
+ 409: unknown;
2050
3074
  };
2051
- export type RegenerateTokenResponses = {
3075
+ export type DeletePaymentMethodResponses = {
2052
3076
  /**
2053
- * Successfully updated. Returns updated token details with unmasked / raw secret.
3077
+ * Payment method deleted.
2054
3078
  */
2055
- 200: Token;
3079
+ 204: void;
2056
3080
  };
2057
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
2058
- export type ListUserOrganizationsData = {
3081
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
3082
+ export type ListInvoicesData = {
2059
3083
  body?: never;
2060
- path: {
2061
- /**
2062
- * User email address.
2063
- */
2064
- email: string;
2065
- };
3084
+ path?: never;
2066
3085
  query?: never;
2067
- url: '/users/organizations/{email}';
3086
+ url: '/billing/invoices';
2068
3087
  };
2069
- export type ListUserOrganizationsResponses = {
3088
+ export type ListInvoicesErrors = {
2070
3089
  /**
2071
- * An array of organizations the user belongs to.
3090
+ * Not authenticated
2072
3091
  */
2073
- 200: Array<{
2074
- /**
2075
- * Unique identifier of the organization. UUID v4 string in canonical form
2076
- */
2077
- realm?: string;
2078
- /**
2079
- * Human-readable name of the organization
2080
- */
2081
- displayName?: string;
2082
- }>;
3092
+ 401: unknown;
2083
3093
  };
2084
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
2085
- export type ListUsersData = {
3094
+ export type ListInvoicesResponses = {
3095
+ /**
3096
+ * An array of usage records.
3097
+ */
3098
+ 200: Array<Invoice>;
3099
+ };
3100
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
3101
+ export type PayOpenInvoicesData = {
2086
3102
  body?: never;
2087
3103
  path?: never;
2088
3104
  query?: never;
2089
- url: '/users';
3105
+ url: '/billing/invoices/pay';
2090
3106
  };
2091
- export type ListUsersErrors = {
3107
+ export type PayOpenInvoicesErrors = {
3108
+ /**
3109
+ * The organization has no payment method that can be charged.
3110
+ */
3111
+ 400: unknown;
2092
3112
  /**
2093
3113
  * Not authenticated
2094
3114
  */
2095
3115
  401: unknown;
3116
+ /**
3117
+ * Too many payment attempts for this organization.
3118
+ */
3119
+ 429: unknown;
2096
3120
  };
2097
- export type ListUsersResponses = {
3121
+ export type PayOpenInvoicesResponses = {
2098
3122
  /**
2099
- * An array of users
3123
+ * The outcome of the attempt.
2100
3124
  */
2101
- 200: Array<User>;
3125
+ 200: InvoicePaymentResult;
2102
3126
  };
2103
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
2104
- export type CreateUserData = {
2105
- body: UserCreateInput;
3127
+ export type PayOpenInvoicesResponse = PayOpenInvoicesResponses[keyof PayOpenInvoicesResponses];
3128
+ export type GetContactData = {
3129
+ body?: never;
2106
3130
  path?: never;
2107
3131
  query?: never;
2108
- url: '/users';
3132
+ url: '/billing/contact';
2109
3133
  };
2110
- export type CreateUserResponses = {
3134
+ export type GetContactResponses = {
2111
3135
  /**
2112
- * Successfully created. Returns created user details.
3136
+ * Returns a single object containing organization contact and billing address details.
2113
3137
  */
2114
- 200: User;
3138
+ 200: BillingContact;
2115
3139
  };
2116
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
2117
- export type DeleteUserData = {
2118
- body?: never;
2119
- path: {
2120
- /**
2121
- * Unique user identifier. UUID v4 string in canonical form
2122
- */
2123
- user_id: string;
2124
- };
3140
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
3141
+ export type UpdateContactData = {
3142
+ body: BillingContact;
3143
+ path?: never;
2125
3144
  query?: never;
2126
- url: '/users/{user_id}';
3145
+ url: '/billing/contact';
2127
3146
  };
2128
- export type DeleteUserErrors = {
3147
+ export type UpdateContactResponses = {
2129
3148
  /**
2130
- * Deleting own user is not allowed. Delete your organization instead.
3149
+ * Successfully updated. Returns updated organization details.
2131
3150
  */
2132
- 400: unknown;
3151
+ 200: BillingContact;
3152
+ };
3153
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
3154
+ export type GetCreditsData = {
3155
+ body?: never;
3156
+ path?: never;
3157
+ query?: never;
3158
+ url: '/billing/credits';
3159
+ };
3160
+ export type GetCreditsErrors = {
2133
3161
  /**
2134
3162
  * Not authenticated
2135
3163
  */
2136
3164
  401: unknown;
2137
3165
  };
2138
- export type DeleteUserResponses = {
3166
+ export type GetCreditsResponses = {
2139
3167
  /**
2140
- * User profile information
3168
+ * An array of the applied promotional credits records.
2141
3169
  */
2142
- 200: User;
3170
+ 200: Array<BillingCredits>;
2143
3171
  };
2144
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
2145
- export type GetUserData = {
2146
- body?: never;
2147
- path: {
3172
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
3173
+ export type RedeemCreditsData = {
3174
+ body: {
2148
3175
  /**
2149
- * Unique user identifier. UUID v4 string in canonical form
3176
+ * Promotional code to redeem
2150
3177
  */
2151
- user_id: string;
3178
+ code?: string;
2152
3179
  };
3180
+ path?: never;
2153
3181
  query?: never;
2154
- url: '/users/{user_id}';
3182
+ url: '/billing/credits';
2155
3183
  };
2156
- export type GetUserErrors = {
3184
+ export type RedeemCreditsErrors = {
2157
3185
  /**
2158
3186
  * Not authenticated
2159
3187
  */
2160
3188
  401: unknown;
2161
3189
  };
2162
- export type GetUserResponses = {
2163
- /**
2164
- * User profile information
2165
- */
2166
- 200: User;
2167
- };
2168
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
2169
- export type UpdateUserData = {
2170
- body: UserUpdateInput;
2171
- path: {
2172
- /**
2173
- * Unique user identifier. UUID v4 string in canonical form
2174
- */
2175
- user_id: string;
2176
- };
2177
- query?: never;
2178
- url: '/users/{user_id}';
2179
- };
2180
- export type UpdateUserResponses = {
3190
+ export type RedeemCreditsResponses = {
2181
3191
  /**
2182
- * Successfully created. Returns created user details.
3192
+ * Successfully created a new organization.
2183
3193
  */
2184
- 200: User;
3194
+ 200: unknown;
2185
3195
  };
2186
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
2187
3196
  //# sourceMappingURL=types.gen.d.ts.map