@cloudfleet/sdk 0.0.1-c4175a2 → 0.0.1-c4563f6

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
  */
@@ -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,59 +393,82 @@ 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
+ };
300
435
  };
436
+ /**
437
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
438
+ */
301
439
  export type FleetCreateInput = {
302
440
  /**
303
441
  * Limits define a set of bounds for provisioning capacity.
304
442
  */
305
443
  limits?: {
306
444
  /**
307
- * CPU limit in cores.
445
+ * CPU limit in cores. Maximum 100,000.
308
446
  */
309
447
  cpu?: number;
310
448
  };
311
449
  gcp?: {
312
- enabled?: boolean;
450
+ enabled: boolean;
313
451
  /**
314
- * Project GCP Project id to deploy instances into
452
+ * 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
453
  */
316
- project: string;
454
+ project?: string;
317
455
  };
318
456
  hetzner?: {
319
- enabled?: boolean;
457
+ enabled: boolean;
320
458
  /**
321
- * Hetzner Cloud API key with read / write access. On update, omit this field to keep the existing value.
459
+ * 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
460
  */
323
461
  apiKey?: string;
324
462
  };
325
463
  aws?: {
326
- enabled?: boolean;
464
+ enabled: boolean;
327
465
  /**
328
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
466
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
329
467
  */
330
- controllerRoleArn: string;
468
+ controllerRoleArn?: string;
331
469
  };
332
470
  /**
333
- * 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. Omit a field to place no restriction on that key.
471
+ * 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.
334
472
  */
335
473
  constraints?: {
336
474
  /**
@@ -351,57 +489,77 @@ export type FleetCreateInput = {
351
489
  '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'>;
352
490
  };
353
491
  /**
354
- * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
492
+ * 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`).
355
493
  */
356
494
  scalingProfile?: 'aggressive' | 'conservative';
495
+ /**
496
+ * 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.
497
+ */
498
+ taints?: Array<{
499
+ /**
500
+ * 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.
501
+ */
502
+ key: string;
503
+ /**
504
+ * Taint value. Optional.
505
+ */
506
+ value?: string;
507
+ /**
508
+ * Taint effect.
509
+ */
510
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
511
+ }>;
357
512
  /**
358
513
  * Unique identifier of the kubernetes fleet.
359
514
  */
360
515
  id: string;
361
516
  };
517
+ /**
518
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
519
+ */
362
520
  export type Fleet = {
363
521
  /**
364
522
  * Limits define a set of bounds for provisioning capacity.
365
523
  */
366
524
  limits?: {
367
525
  /**
368
- * CPU limit in cores.
526
+ * CPU limit in cores. Maximum 100,000.
369
527
  */
370
528
  cpu?: number;
371
529
  };
372
530
  gcp?: {
373
- enabled?: boolean;
531
+ enabled: boolean;
374
532
  /**
375
- * Project GCP Project id to deploy instances into
533
+ * 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.
376
534
  */
377
- project: string;
535
+ project?: string;
378
536
  };
379
537
  hetzner?: {
380
- enabled?: boolean;
538
+ enabled: boolean;
381
539
  /**
382
- * Hetzner Cloud API key with read / write access. On update, omit this field to keep the existing value.
540
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
383
541
  */
384
542
  apiKey?: string;
385
543
  };
386
544
  aws?: {
387
- enabled?: boolean;
545
+ enabled: boolean;
388
546
  /**
389
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
547
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
390
548
  */
391
- controllerRoleArn: string;
549
+ controllerRoleArn?: string;
392
550
  };
393
551
  /**
394
- * 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. Omit a field to place no restriction on that key.
552
+ * 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.
395
553
  */
396
- constraints?: {
554
+ constraints: {
397
555
  /**
398
556
  * Allowed values for `karpenter.sh/capacity-type`.
399
557
  */
400
- 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
558
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
401
559
  /**
402
560
  * Allowed values for `kubernetes.io/arch`.
403
561
  */
404
- 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
562
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
405
563
  /**
406
564
  * Allowed values for `cfke.io/instance-family`.
407
565
  */
@@ -412,47 +570,83 @@ export type Fleet = {
412
570
  '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'>;
413
571
  };
414
572
  /**
415
- * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
573
+ * 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`).
416
574
  */
417
- scalingProfile?: 'aggressive' | 'conservative';
575
+ scalingProfile: 'aggressive' | 'conservative';
576
+ /**
577
+ * 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.
578
+ */
579
+ taints: Array<{
580
+ /**
581
+ * 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.
582
+ */
583
+ key: string;
584
+ /**
585
+ * Taint value. Optional.
586
+ */
587
+ value?: string;
588
+ /**
589
+ * Taint effect.
590
+ */
591
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
592
+ }>;
418
593
  /**
419
594
  * Unique identifier of the kubernetes fleet.
420
595
  */
421
596
  id: string;
597
+ /**
598
+ * Indicates whether the fleet configuration is healthy.
599
+ */
600
+ ready: boolean;
601
+ /**
602
+ * Human-readable reason the fleet is not ready. Present only when `ready` is false.
603
+ */
604
+ status_message?: string;
605
+ /**
606
+ * Creation date and time of the fleet.
607
+ */
608
+ created_at: string;
609
+ /**
610
+ * Date and time the fleet was last updated.
611
+ */
612
+ updated_at: string;
422
613
  };
614
+ /**
615
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
616
+ */
423
617
  export type FleetUpdateInput = {
424
618
  /**
425
619
  * Limits define a set of bounds for provisioning capacity.
426
620
  */
427
621
  limits?: {
428
622
  /**
429
- * CPU limit in cores.
623
+ * CPU limit in cores. Maximum 100,000.
430
624
  */
431
625
  cpu?: number;
432
626
  };
433
627
  gcp?: {
434
- enabled?: boolean;
628
+ enabled: boolean;
435
629
  /**
436
- * Project GCP Project id to deploy instances into
630
+ * 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.
437
631
  */
438
- project: string;
632
+ project?: string;
439
633
  };
440
634
  hetzner?: {
441
- enabled?: boolean;
635
+ enabled: boolean;
442
636
  /**
443
- * Hetzner Cloud API key with read / write access. On update, omit this field to keep the existing value.
637
+ * 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.
444
638
  */
445
639
  apiKey?: string;
446
640
  };
447
641
  aws?: {
448
- enabled?: boolean;
642
+ enabled: boolean;
449
643
  /**
450
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
644
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
451
645
  */
452
- controllerRoleArn: string;
646
+ controllerRoleArn?: string;
453
647
  };
454
648
  /**
455
- * 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. Omit a field to place no restriction on that key.
649
+ * 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.
456
650
  */
457
651
  constraints?: {
458
652
  /**
@@ -473,9 +667,36 @@ export type FleetUpdateInput = {
473
667
  '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'>;
474
668
  };
475
669
  /**
476
- * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
670
+ * 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`).
477
671
  */
478
672
  scalingProfile?: 'aggressive' | 'conservative';
673
+ /**
674
+ * 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.
675
+ */
676
+ taints?: Array<{
677
+ /**
678
+ * 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.
679
+ */
680
+ key: string;
681
+ /**
682
+ * Taint value. Optional.
683
+ */
684
+ value?: string;
685
+ /**
686
+ * Taint effect.
687
+ */
688
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
689
+ }>;
690
+ };
691
+ export type InviteCreateInput = {
692
+ /**
693
+ * Email address of the user to invite.
694
+ */
695
+ email: string;
696
+ /**
697
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
698
+ */
699
+ role?: 'Administrator' | 'User';
479
700
  };
480
701
  export type Invite = {
481
702
  /**
@@ -498,6 +719,91 @@ export type Invite = {
498
719
  * Generated unique invite code.
499
720
  */
500
721
  code?: string;
722
+ /**
723
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
724
+ */
725
+ role?: 'Administrator' | 'User';
726
+ };
727
+ export type InvoicePaymentAttempt = {
728
+ /**
729
+ * Identifier of the invoice.
730
+ */
731
+ invoice_id: string;
732
+ /**
733
+ * Invoice number. Null if the invoice has no number.
734
+ */
735
+ number: string;
736
+ /**
737
+ * Amount outstanding when the charge was attempted, in the smallest currency unit.
738
+ */
739
+ amount: number;
740
+ /**
741
+ * Currency of the invoice.
742
+ */
743
+ currency: string;
744
+ /**
745
+ * Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).
746
+ */
747
+ status: 'paid' | 'processing' | 'requires_action' | 'failed';
748
+ /**
749
+ * Client secret used to complete customer authentication. Set only when `status` is `requires_action`.
750
+ */
751
+ client_secret: string;
752
+ /**
753
+ * Decline code. Set only when `status` is `failed`.
754
+ */
755
+ failure_code: string;
756
+ /**
757
+ * Explanation of the decline, suitable for display. Set only when `status` is `failed`.
758
+ */
759
+ failure_message: string;
760
+ };
761
+ export type InvoicePaymentResult = {
762
+ /**
763
+ * 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).
764
+ */
765
+ code: 'paid' | 'processing' | 'action_required' | 'partially_paid' | 'failed' | 'nothing_due' | 'bank_transfer_due';
766
+ /**
767
+ * Summary of the outcome, suitable for display.
768
+ */
769
+ message: string;
770
+ /**
771
+ * One entry per invoice charged, oldest first.
772
+ */
773
+ results: Array<{
774
+ /**
775
+ * Identifier of the invoice.
776
+ */
777
+ invoice_id: string;
778
+ /**
779
+ * Invoice number. Null if the invoice has no number.
780
+ */
781
+ number: string;
782
+ /**
783
+ * Amount outstanding when the charge was attempted, in the smallest currency unit.
784
+ */
785
+ amount: number;
786
+ /**
787
+ * Currency of the invoice.
788
+ */
789
+ currency: string;
790
+ /**
791
+ * Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).
792
+ */
793
+ status: 'paid' | 'processing' | 'requires_action' | 'failed';
794
+ /**
795
+ * Client secret used to complete customer authentication. Set only when `status` is `requires_action`.
796
+ */
797
+ client_secret: string;
798
+ /**
799
+ * Decline code. Set only when `status` is `failed`.
800
+ */
801
+ failure_code: string;
802
+ /**
803
+ * Explanation of the decline, suitable for display. Set only when `status` is `failed`.
804
+ */
805
+ failure_message: string;
806
+ }>;
501
807
  };
502
808
  export type Invoice = {
503
809
  /**
@@ -618,6 +924,10 @@ export type MarketplaceListing = {
618
924
  };
619
925
  };
620
926
  export type OrganizationCreateInput = {
927
+ /**
928
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
929
+ */
930
+ type: 'business' | 'personal';
621
931
  /**
622
932
  * Email address used for billing as a string.
623
933
  */
@@ -639,6 +949,12 @@ export type OrganizationCreateInput = {
639
949
  */
640
950
  password: string;
641
951
  };
952
+ export type OrganizationCreateOutput = {
953
+ /**
954
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
955
+ */
956
+ id: string;
957
+ };
642
958
  export type Organization = {
643
959
  /**
644
960
  * Unique identifier of the organization. UUID v4 string in canonical form
@@ -648,6 +964,10 @@ export type Organization = {
648
964
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
649
965
  */
650
966
  name?: string;
967
+ /**
968
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
969
+ */
970
+ type: 'business' | 'personal';
651
971
  /**
652
972
  * Creation date of the organization. ISO 8601 date string in UTC timezone
653
973
  */
@@ -672,6 +992,14 @@ export type Organization = {
672
992
  * Available number of Pro clusters that can be created.
673
993
  */
674
994
  pro_clusters_available: number;
995
+ /**
996
+ * Maximum number of Enterprise clusters that can be created.
997
+ */
998
+ enterprise_clusters_max: number;
999
+ /**
1000
+ * Available number of Enterprise clusters that can be created.
1001
+ */
1002
+ enterprise_clusters_available: number;
675
1003
  /**
676
1004
  * Maximum number of fleets that can be created per cluster.
677
1005
  */
@@ -706,36 +1034,52 @@ export type Organization = {
706
1034
  * Status of the organization. Can be `active` or `closed`, or `suspended`.
707
1035
  */
708
1036
  status: 'active' | 'closed' | 'suspended';
1037
+ /**
1038
+ * 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.
1039
+ */
1040
+ verification: 'none' | 'submitted' | 'verified';
709
1041
  };
710
1042
  export type PaymentMethod = {
711
1043
  /**
712
- * Unique identifier of the organization. UUID v4 string in canonical form.
1044
+ * 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.
713
1045
  */
714
1046
  id: string;
715
1047
  /**
716
- * Whether organization payment method was set up and ready to use for payments.
1048
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
717
1049
  */
718
- setup: boolean;
1050
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
719
1051
  /**
720
- * Payment method type type. Only `card` payments supported at the moment.
721
- */
722
- type: 'card';
723
- /**
724
- * Last 4 digits of the payment card number.
1052
+ * 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.
725
1053
  */
726
1054
  last4: string;
727
1055
  /**
728
- * Two-digit number representing the card's expiration month.
1056
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
729
1057
  */
730
1058
  exp_month: number;
731
1059
  /**
732
- * Four-digit number representing the card's expiration year.
1060
+ * 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.
733
1061
  */
734
1062
  exp_year: number;
735
1063
  /**
736
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
1064
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
1065
+ */
1066
+ brand: string;
1067
+ /**
1068
+ * 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.
737
1069
  */
738
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
1070
+ iban: string;
1071
+ /**
1072
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
1073
+ */
1074
+ bic: string;
1075
+ /**
1076
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
1077
+ */
1078
+ account_holder_name: string;
1079
+ /**
1080
+ * 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).
1081
+ */
1082
+ is_default: boolean;
739
1083
  };
740
1084
  export type PlatformQuota = {
741
1085
  /**
@@ -754,6 +1098,14 @@ export type PlatformQuota = {
754
1098
  * Available number of Pro clusters that can be created.
755
1099
  */
756
1100
  pro_clusters_available: number;
1101
+ /**
1102
+ * Maximum number of Enterprise clusters that can be created.
1103
+ */
1104
+ enterprise_clusters_max: number;
1105
+ /**
1106
+ * Available number of Enterprise clusters that can be created.
1107
+ */
1108
+ enterprise_clusters_available: number;
757
1109
  /**
758
1110
  * Maximum number of fleets that can be created per cluster.
759
1111
  */
@@ -932,6 +1284,32 @@ export type RegistryTag = {
932
1284
  */
933
1285
  uri: string;
934
1286
  };
1287
+ export type RoadmapItemCreateInput = {
1288
+ /**
1289
+ * Your suggestion in one or two sentences. It is reviewed before it appears on the roadmap.
1290
+ */
1291
+ text: string;
1292
+ };
1293
+ export type RoadmapItem = {
1294
+ /**
1295
+ * Unique identifier of the roadmap item (Mongo ObjectId).
1296
+ */
1297
+ id: string;
1298
+ /**
1299
+ * Short description of the roadmap item.
1300
+ */
1301
+ text: string;
1302
+ /**
1303
+ * The caller's vote on this item: -1 (down), 1 (up), 2 (double up), or null if the caller has not voted.
1304
+ */
1305
+ vote: -1 | 1 | 2;
1306
+ };
1307
+ export type RoadmapVoteInput = {
1308
+ /**
1309
+ * Vote value: -1 (down), 1 (up), or 2 (double up).
1310
+ */
1311
+ value: -1 | 1 | 2;
1312
+ };
935
1313
  export type TicketAttachment = {
936
1314
  /**
937
1315
  * Unique identifier of the attachment (Mongo ObjectId).
@@ -966,91 +1344,6 @@ export type TicketCreateInput = {
966
1344
  [key: string]: unknown;
967
1345
  };
968
1346
  };
969
- export type TicketListResponse = {
970
- /**
971
- * Tickets for the organization, ordered newest first. Messages are omitted from list responses.
972
- */
973
- items: Array<{
974
- /**
975
- * Unique identifier of the ticket (Mongo ObjectId).
976
- */
977
- id: string;
978
- /**
979
- * Current state of the ticket.
980
- */
981
- status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
982
- /**
983
- * Ticket category.
984
- */
985
- category: 'billing' | 'technical' | 'general';
986
- /**
987
- * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
988
- */
989
- summary: string;
990
- /**
991
- * Closure timestamp. Null while the ticket is open.
992
- */
993
- closed_at?: string;
994
- /**
995
- * Creation date of the ticket. ISO 8601 UTC.
996
- */
997
- date_created: string;
998
- /**
999
- * Last update date of the ticket. ISO 8601 UTC.
1000
- */
1001
- date_updated: string;
1002
- /**
1003
- * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1004
- */
1005
- messages?: Array<{
1006
- /**
1007
- * Unique identifier of the message (Mongo ObjectId).
1008
- */
1009
- id: string;
1010
- /**
1011
- * Message type. Internal notes are filtered out of customer-facing responses.
1012
- */
1013
- type: 'customer_reply' | 'agent_reply';
1014
- /**
1015
- * Message body in markdown.
1016
- */
1017
- body: string;
1018
- /**
1019
- * First name of the author. Null when not provided.
1020
- */
1021
- author_first_name?: string;
1022
- /**
1023
- * Last name of the author. Null when not provided.
1024
- */
1025
- author_last_name?: string;
1026
- /**
1027
- * Attachments associated with this message.
1028
- */
1029
- attachments?: Array<{
1030
- /**
1031
- * Unique identifier of the attachment (Mongo ObjectId).
1032
- */
1033
- id: string;
1034
- /**
1035
- * Original filename as uploaded.
1036
- */
1037
- filename: string;
1038
- /**
1039
- * MIME content type of the attachment.
1040
- */
1041
- content_type: string;
1042
- /**
1043
- * Size of the attachment in bytes.
1044
- */
1045
- size: number;
1046
- }>;
1047
- /**
1048
- * Creation date of the message. ISO 8601 UTC.
1049
- */
1050
- date_created: string;
1051
- }>;
1052
- }>;
1053
- };
1054
1347
  export type TicketMessageInput = {
1055
1348
  /**
1056
1349
  * Reply body in markdown.
@@ -1234,7 +1527,7 @@ export type UsageFacets = {
1234
1527
  /**
1235
1528
  * List of unique products
1236
1529
  */
1237
- product?: Array<string>;
1530
+ 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'>;
1238
1531
  };
1239
1532
  export type UsageResponse = {
1240
1533
  /**
@@ -1252,7 +1545,7 @@ export type UsageResponse = {
1252
1545
  /**
1253
1546
  * The product the usage is associated with
1254
1547
  */
1255
- product: string;
1548
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1256
1549
  /**
1257
1550
  * Consumption
1258
1551
  */
@@ -1277,7 +1570,7 @@ export type UsageResponse = {
1277
1570
  /**
1278
1571
  * List of unique products
1279
1572
  */
1280
- product?: Array<string>;
1573
+ 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'>;
1281
1574
  };
1282
1575
  };
1283
1576
  export type Usage = {
@@ -1292,7 +1585,7 @@ export type Usage = {
1292
1585
  /**
1293
1586
  * The product the usage is associated with
1294
1587
  */
1295
- 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';
1296
1589
  /**
1297
1590
  * Consumption
1298
1591
  */
@@ -1327,16 +1620,8 @@ export type UserCreateInput = {
1327
1620
  * User password. Must be at least 8 characters long.
1328
1621
  */
1329
1622
  password: string;
1330
- /**
1331
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1332
- */
1333
- status?: 'active' | 'inactive';
1334
- /**
1335
- * User role. Can be 'Administrator', 'User'.
1336
- */
1337
- role?: 'Administrator' | 'User';
1338
- };
1339
- export type User = {
1623
+ };
1624
+ export type User = {
1340
1625
  /**
1341
1626
  * User email address.
1342
1627
  */
@@ -1388,644 +1673,600 @@ export type UserUpdateInput = {
1388
1673
  */
1389
1674
  status?: 'active' | 'inactive';
1390
1675
  };
1391
- export type GetUsageData = {
1676
+ export type ListUserOrganizationsData = {
1392
1677
  body?: never;
1393
- path?: never;
1394
- query?: {
1678
+ path: {
1395
1679
  /**
1396
- * 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)
1680
+ * User email address.
1397
1681
  */
1398
- granularity?: 'hourly' | 'daily' | 'monthly';
1682
+ email: string;
1399
1683
  };
1400
- url: '/billing/usage';
1401
- };
1402
- export type GetUsageErrors = {
1403
- /**
1404
- * Not authenticated
1405
- */
1406
- 401: unknown;
1684
+ query?: never;
1685
+ url: '/users/organizations/{email}';
1407
1686
  };
1408
- export type GetUsageResponses = {
1687
+ export type ListUserOrganizationsResponses = {
1409
1688
  /**
1410
- * Usage data with facets for filtering
1689
+ * An array of organizations the user belongs to.
1411
1690
  */
1412
- 200: UsageResponse;
1691
+ 200: Array<{
1692
+ /**
1693
+ * Unique identifier of the organization. UUID v4 string in canonical form
1694
+ */
1695
+ realm?: string;
1696
+ /**
1697
+ * Human-readable name of the organization
1698
+ */
1699
+ displayName?: string;
1700
+ }>;
1413
1701
  };
1414
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
1415
- export type GetPaymentMethodData = {
1702
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1703
+ export type ListUsersData = {
1416
1704
  body?: never;
1417
1705
  path?: never;
1418
1706
  query?: never;
1419
- url: '/billing/payment-method';
1707
+ url: '/users';
1420
1708
  };
1421
- export type GetPaymentMethodErrors = {
1709
+ export type ListUsersErrors = {
1422
1710
  /**
1423
- * Returns 404 Not Found if the organization does not have a payment method set up.
1711
+ * Not authenticated
1424
1712
  */
1425
- 404: unknown;
1713
+ 401: unknown;
1426
1714
  };
1427
- export type GetPaymentMethodResponses = {
1715
+ export type ListUsersResponses = {
1428
1716
  /**
1429
- * Redacted payment card information.
1717
+ * An array of users
1430
1718
  */
1431
- 200: PaymentMethod;
1719
+ 200: Array<User>;
1432
1720
  };
1433
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1434
- export type GetPaymentMethodSecretData = {
1435
- body?: never;
1721
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1722
+ export type CreateUserData = {
1723
+ body: UserCreateInput;
1436
1724
  path?: never;
1437
1725
  query?: never;
1438
- url: '/billing/payment-method';
1726
+ url: '/users';
1439
1727
  };
1440
- export type GetPaymentMethodSecretResponses = {
1728
+ export type CreateUserResponses = {
1441
1729
  /**
1442
- * 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.
1443
- *
1730
+ * Successfully created. Returns created user details.
1444
1731
  */
1445
- 200: {
1732
+ 200: User;
1733
+ };
1734
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1735
+ export type DeleteUserData = {
1736
+ body?: never;
1737
+ path: {
1446
1738
  /**
1447
- * The client secret.
1739
+ * Unique user identifier. UUID v4 string in canonical form
1448
1740
  */
1449
- id?: string;
1741
+ user_id: string;
1450
1742
  };
1451
- };
1452
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1453
- export type ListInvoicesData = {
1454
- body?: never;
1455
- path?: never;
1456
1743
  query?: never;
1457
- url: '/billing/invoices';
1744
+ url: '/users/{user_id}';
1458
1745
  };
1459
- export type ListInvoicesErrors = {
1746
+ export type DeleteUserErrors = {
1747
+ /**
1748
+ * Deleting own user is not allowed. Delete your organization instead.
1749
+ */
1750
+ 400: unknown;
1460
1751
  /**
1461
1752
  * Not authenticated
1462
1753
  */
1463
1754
  401: unknown;
1464
1755
  };
1465
- export type ListInvoicesResponses = {
1756
+ export type DeleteUserResponses = {
1466
1757
  /**
1467
- * An array of usage records.
1758
+ * User profile information
1468
1759
  */
1469
- 200: Array<Invoice>;
1760
+ 200: User;
1470
1761
  };
1471
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1472
- export type GetContactData = {
1762
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1763
+ export type GetUserData = {
1473
1764
  body?: never;
1474
- path?: never;
1765
+ path: {
1766
+ /**
1767
+ * Unique user identifier. UUID v4 string in canonical form
1768
+ */
1769
+ user_id: string;
1770
+ };
1475
1771
  query?: never;
1476
- url: '/billing/contact';
1772
+ url: '/users/{user_id}';
1477
1773
  };
1478
- export type GetContactResponses = {
1774
+ export type GetUserErrors = {
1479
1775
  /**
1480
- * Returns a single object containing organization contact and billing address details.
1776
+ * Not authenticated
1481
1777
  */
1482
- 200: BillingContact;
1778
+ 401: unknown;
1483
1779
  };
1484
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
1485
- export type UpdateContactData = {
1486
- body: BillingContact;
1487
- path?: never;
1780
+ export type GetUserResponses = {
1781
+ /**
1782
+ * User profile information
1783
+ */
1784
+ 200: User;
1785
+ };
1786
+ export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1787
+ export type UpdateUserData = {
1788
+ body: UserUpdateInput;
1789
+ path: {
1790
+ /**
1791
+ * Unique user identifier. UUID v4 string in canonical form
1792
+ */
1793
+ user_id: string;
1794
+ };
1488
1795
  query?: never;
1489
- url: '/billing/contact';
1796
+ url: '/users/{user_id}';
1490
1797
  };
1491
- export type UpdateContactResponses = {
1798
+ export type UpdateUserResponses = {
1492
1799
  /**
1493
- * Successfully updated. Returns updated organization details.
1800
+ * Successfully created. Returns created user details.
1494
1801
  */
1495
- 200: BillingContact;
1802
+ 200: User;
1496
1803
  };
1497
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
1498
- export type GetCreditsData = {
1804
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1805
+ export type ListTokensData = {
1499
1806
  body?: never;
1500
1807
  path?: never;
1501
1808
  query?: never;
1502
- url: '/billing/credits';
1809
+ url: '/tokens';
1503
1810
  };
1504
- export type GetCreditsErrors = {
1811
+ export type ListTokensErrors = {
1505
1812
  /**
1506
1813
  * Not authenticated
1507
1814
  */
1508
1815
  401: unknown;
1509
1816
  };
1510
- export type GetCreditsResponses = {
1817
+ export type ListTokensResponses = {
1511
1818
  /**
1512
- * An array of the applied promotional credits records.
1819
+ * Returns a list of access token details with masked secrets.
1513
1820
  */
1514
- 200: Array<BillingCredits>;
1821
+ 200: Array<Token>;
1515
1822
  };
1516
- export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
1517
- export type RedeemCreditsData = {
1518
- body: {
1519
- /**
1520
- * Promotional code to redeem
1521
- */
1522
- code?: string;
1523
- };
1823
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1824
+ export type CreateTokenData = {
1825
+ body: TokenCreateInput;
1524
1826
  path?: never;
1525
1827
  query?: never;
1526
- url: '/billing/credits';
1828
+ url: '/tokens';
1527
1829
  };
1528
- export type RedeemCreditsErrors = {
1830
+ export type CreateTokenErrors = {
1529
1831
  /**
1530
1832
  * Not authenticated
1531
1833
  */
1532
1834
  401: unknown;
1533
1835
  };
1534
- export type RedeemCreditsResponses = {
1836
+ export type CreateTokenResponses = {
1535
1837
  /**
1536
- * Successfully created a new organization.
1838
+ * Successfully created. Returns created token details with unmasked/raw secret.
1839
+ */
1840
+ 200: Token;
1841
+ };
1842
+ export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1843
+ export type DeleteTokenData = {
1844
+ body?: never;
1845
+ path: {
1846
+ /**
1847
+ * Generated unique identifier of the access token.
1848
+ */
1849
+ token_id: string;
1850
+ };
1851
+ query?: never;
1852
+ url: '/tokens/{token_id}';
1853
+ };
1854
+ export type DeleteTokenResponses = {
1855
+ /**
1856
+ * Successfully deleted.
1537
1857
  */
1538
1858
  200: unknown;
1539
1859
  };
1540
- export type ListChartsData = {
1860
+ export type GetTokenData = {
1541
1861
  body?: never;
1542
1862
  path: {
1543
1863
  /**
1544
- * Unique identifier of the cluster. UUID v4 string in canonical form
1864
+ * Generated unique identifier of the access token.
1545
1865
  */
1546
- cluster_id: string;
1866
+ token_id: string;
1547
1867
  };
1548
1868
  query?: never;
1549
- url: '/clusters/{cluster_id}/charts';
1869
+ url: '/tokens/{token_id}';
1550
1870
  };
1551
- export type ListChartsErrors = {
1871
+ export type GetTokenErrors = {
1552
1872
  /**
1553
1873
  * Not authenticated
1554
1874
  */
1555
1875
  401: unknown;
1556
1876
  };
1557
- export type ListChartsResponses = {
1877
+ export type GetTokenResponses = {
1558
1878
  /**
1559
- * An array of charts
1879
+ * Returns access token details with masked secret.
1560
1880
  */
1561
- 200: Array<Chart>;
1881
+ 200: Token;
1562
1882
  };
1563
- export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
1564
- export type CreateChartData = {
1565
- body: ChartCreateInput;
1883
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1884
+ export type UpdateTokenData = {
1885
+ body: TokenUpdateInput;
1566
1886
  path: {
1567
1887
  /**
1568
- * Unique identifier of the cluster. UUID v4 string in canonical form
1888
+ * Generated unique identifier of the access token.
1569
1889
  */
1570
- cluster_id: string;
1890
+ token_id: string;
1571
1891
  };
1572
1892
  query?: never;
1573
- url: '/clusters/{cluster_id}/charts';
1893
+ url: '/tokens/{token_id}';
1574
1894
  };
1575
- export type CreateChartResponses = {
1895
+ export type UpdateTokenErrors = {
1576
1896
  /**
1577
- * Successfully created. Returns created Chart ID.
1897
+ * Not authenticated
1578
1898
  */
1579
- 200: string;
1899
+ 401: unknown;
1580
1900
  };
1581
- export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
1582
- export type DeleteChartData = {
1901
+ export type UpdateTokenResponses = {
1902
+ /**
1903
+ * Successfully updated. Returns updated token details with masked secret.
1904
+ */
1905
+ 200: Token;
1906
+ };
1907
+ export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1908
+ export type RegenerateTokenData = {
1583
1909
  body?: never;
1584
1910
  path: {
1585
1911
  /**
1586
- * Unique identifier of the cluster. UUID v4 string in canonical form
1587
- */
1588
- cluster_id: string;
1589
- /**
1590
- * Chart deployment name as the unique identifier of the chart.
1912
+ * Generated unique identifier of the access token.
1591
1913
  */
1592
- chart_name: string;
1914
+ token_id: string;
1593
1915
  };
1594
1916
  query?: never;
1595
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1917
+ url: '/tokens/{token_id}/secret';
1596
1918
  };
1597
- export type DeleteChartResponses = {
1919
+ export type RegenerateTokenErrors = {
1598
1920
  /**
1599
- * Successfully deleted.
1921
+ * Not authenticated
1600
1922
  */
1601
- 200: string;
1923
+ 401: unknown;
1602
1924
  };
1603
- export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
1604
- export type GetChartData = {
1925
+ export type RegenerateTokenResponses = {
1926
+ /**
1927
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1928
+ */
1929
+ 200: Token;
1930
+ };
1931
+ export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1932
+ export type ListTicketsData = {
1605
1933
  body?: never;
1606
- path: {
1607
- /**
1608
- * Unique identifier of the cluster. UUID v4 string in canonical form
1609
- */
1610
- cluster_id: string;
1611
- /**
1612
- * Chart deployment name as the unique identifier of the chart.
1613
- */
1614
- chart_name: string;
1615
- };
1934
+ path?: never;
1616
1935
  query?: never;
1617
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1936
+ url: '/tickets';
1618
1937
  };
1619
- export type GetChartResponses = {
1938
+ export type ListTicketsResponses = {
1620
1939
  /**
1621
- * Returns a single object containing chart details.
1940
+ * An array of tickets for the organization, newest first.
1622
1941
  */
1623
- 200: Chart;
1942
+ 200: Array<Ticket>;
1624
1943
  };
1625
- export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
1626
- export type UpdateChartData = {
1627
- body: ChartUpdateInput;
1628
- path: {
1629
- /**
1630
- * Unique identifier of the cluster. UUID v4 string in canonical form
1631
- */
1632
- cluster_id: string;
1944
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1945
+ export type CreateTicketData = {
1946
+ body: {
1633
1947
  /**
1634
- * Chart deployment name as the unique identifier of the chart.
1948
+ * JSON-encoded TicketCreateInput.
1635
1949
  */
1636
- chart_name: string;
1950
+ payload?: string;
1951
+ attachments?: Array<Blob | File>;
1637
1952
  };
1953
+ path?: never;
1638
1954
  query?: never;
1639
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1955
+ url: '/tickets';
1640
1956
  };
1641
- export type UpdateChartResponses = {
1957
+ export type CreateTicketResponses = {
1642
1958
  /**
1643
- * Successfully updated.
1959
+ * Ticket created.
1644
1960
  */
1645
- 200: string;
1961
+ 200: Ticket;
1646
1962
  };
1647
- export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
1648
- export type ListFleetsData = {
1963
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
1964
+ export type CloseTicketData = {
1649
1965
  body?: never;
1650
1966
  path: {
1651
- /**
1652
- * Unique identifier of the cluster. UUID v4 string in canonical form
1653
- */
1654
- cluster_id: string;
1967
+ ticket_id: string;
1655
1968
  };
1656
1969
  query?: never;
1657
- url: '/clusters/{cluster_id}/fleets';
1970
+ url: '/tickets/{ticket_id}';
1658
1971
  };
1659
- export type ListFleetsErrors = {
1972
+ export type CloseTicketResponses = {
1660
1973
  /**
1661
- * Not authenticated
1974
+ * Ticket closed.
1662
1975
  */
1663
- 401: unknown;
1976
+ 200: Ticket;
1664
1977
  };
1665
- export type ListFleetsResponses = {
1978
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
1979
+ export type GetTicketData = {
1980
+ body?: never;
1981
+ path: {
1982
+ ticket_id: string;
1983
+ };
1984
+ query?: never;
1985
+ url: '/tickets/{ticket_id}';
1986
+ };
1987
+ export type GetTicketResponses = {
1666
1988
  /**
1667
- * An array of fleets
1989
+ * Ticket with messages (internal notes excluded).
1668
1990
  */
1669
- 200: Array<Fleet>;
1991
+ 200: Ticket;
1670
1992
  };
1671
- export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
1672
- export type CreateFleetData = {
1673
- body: FleetCreateInput;
1674
- path: {
1993
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
1994
+ export type ReplyTicketData = {
1995
+ body: {
1675
1996
  /**
1676
- * Unique identifier of the cluster. UUID v4 string in canonical form
1997
+ * JSON-encoded TicketMessageInput.
1677
1998
  */
1678
- cluster_id: string;
1999
+ payload?: string;
2000
+ attachments?: Array<Blob | File>;
2001
+ };
2002
+ path: {
2003
+ ticket_id: string;
1679
2004
  };
1680
2005
  query?: never;
1681
- url: '/clusters/{cluster_id}/fleets';
2006
+ url: '/tickets/{ticket_id}/messages';
1682
2007
  };
1683
- export type CreateFleetErrors = {
2008
+ export type ReplyTicketErrors = {
1684
2009
  /**
1685
- * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
2010
+ * Ticket is closed. Open a new ticket instead.
1686
2011
  */
1687
- 402: string;
2012
+ 409: unknown;
1688
2013
  };
1689
- export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1690
- export type CreateFleetResponses = {
2014
+ export type ReplyTicketResponses = {
1691
2015
  /**
1692
- * Successfully created. Returns created Fleet ID.
2016
+ * Reply appended.
1693
2017
  */
1694
- 200: string;
2018
+ 200: TicketMessage;
1695
2019
  };
1696
- export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
1697
- export type DeleteFleetData = {
2020
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
2021
+ export type GetTicketAttachmentData = {
1698
2022
  body?: never;
1699
2023
  path: {
1700
- /**
1701
- * Unique identifier of the cluster. UUID v4 string in canonical form
1702
- */
1703
- cluster_id: string;
1704
- /**
1705
- * Unique identifier of the fleet. UUID v4 string in canonical form
1706
- */
1707
- fleet_name: string;
2024
+ ticket_id: string;
2025
+ attachment_id: string;
1708
2026
  };
1709
2027
  query?: never;
1710
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2028
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
1711
2029
  };
1712
- export type DeleteFleetResponses = {
2030
+ export type GetTicketAttachmentResponses = {
1713
2031
  /**
1714
- * Successfully deleted.
2032
+ * Attachment binary stream.
1715
2033
  */
1716
- 200: string;
2034
+ 200: Blob | File;
1717
2035
  };
1718
- export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
1719
- export type GetFleetData = {
2036
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
2037
+ export type ListRoadmapData = {
1720
2038
  body?: never;
1721
- path: {
1722
- /**
1723
- * Unique identifier of the cluster. UUID v4 string in canonical form
1724
- */
1725
- cluster_id: string;
1726
- /**
1727
- * Unique identifier of the fleet. UUID v4 string in canonical form
1728
- */
1729
- fleet_name: string;
1730
- };
2039
+ path?: never;
1731
2040
  query?: never;
1732
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2041
+ url: '/roadmap';
1733
2042
  };
1734
- export type GetFleetResponses = {
2043
+ export type ListRoadmapResponses = {
1735
2044
  /**
1736
- * Returns a single object containing fleet details.
2045
+ * An array of roadmap items, newest first.
1737
2046
  */
1738
- 200: Fleet;
2047
+ 200: Array<RoadmapItem>;
1739
2048
  };
1740
- export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
1741
- export type UpdateFleetData = {
1742
- body: FleetUpdateInput;
2049
+ export type ListRoadmapResponse = ListRoadmapResponses[keyof ListRoadmapResponses];
2050
+ export type SuggestRoadmapData = {
2051
+ body: RoadmapItemCreateInput;
2052
+ path?: never;
2053
+ query?: never;
2054
+ url: '/roadmap';
2055
+ };
2056
+ export type SuggestRoadmapResponses = {
2057
+ /**
2058
+ * Suggestion submitted for review.
2059
+ */
2060
+ 200: RoadmapItem;
2061
+ };
2062
+ export type SuggestRoadmapResponse = SuggestRoadmapResponses[keyof SuggestRoadmapResponses];
2063
+ export type UnvoteRoadmapData = {
2064
+ body?: never;
1743
2065
  path: {
1744
- /**
1745
- * Unique identifier of the cluster. UUID v4 string in canonical form
1746
- */
1747
- cluster_id: string;
1748
- /**
1749
- * Unique identifier of the fleet. UUID v4 string in canonical form
1750
- */
1751
- fleet_name: string;
2066
+ item_id: string;
1752
2067
  };
1753
2068
  query?: never;
1754
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2069
+ url: '/roadmap/{item_id}/vote';
1755
2070
  };
1756
- export type UpdateFleetErrors = {
2071
+ export type UnvoteRoadmapErrors = {
1757
2072
  /**
1758
- * Organization must have a valid payment method configured to access this endpoint.
2073
+ * Roadmap item not found.
1759
2074
  */
1760
- 402: string;
2075
+ 404: unknown;
1761
2076
  };
1762
- export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1763
- export type UpdateFleetResponses = {
2077
+ export type UnvoteRoadmapResponses = {
1764
2078
  /**
1765
- * Successfully updated.
2079
+ * Vote removed. Returns the item without a vote.
1766
2080
  */
1767
- 200: string;
2081
+ 200: RoadmapItem;
1768
2082
  };
1769
- export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1770
- export type QueryClusterData = {
1771
- body?: never;
2083
+ export type UnvoteRoadmapResponse = UnvoteRoadmapResponses[keyof UnvoteRoadmapResponses];
2084
+ export type VoteRoadmapData = {
2085
+ body: RoadmapVoteInput;
1772
2086
  path: {
1773
- /**
1774
- * Unique identifier of the cluster. UUID v4 string in canonical form
1775
- */
1776
- cluster_id: string;
2087
+ item_id: string;
1777
2088
  };
1778
2089
  query?: never;
1779
- url: '/clusters/{cluster_id}/query';
2090
+ url: '/roadmap/{item_id}/vote';
1780
2091
  };
1781
- export type QueryClusterErrors = {
2092
+ export type VoteRoadmapErrors = {
1782
2093
  /**
1783
- * Not authenticated
2094
+ * Roadmap item not found.
1784
2095
  */
1785
- 401: unknown;
2096
+ 404: unknown;
1786
2097
  };
1787
- export type QueryClusterResponses = {
2098
+ export type VoteRoadmapResponses = {
1788
2099
  /**
1789
- * Kubernetes API response
2100
+ * Vote saved. Returns the item with your vote.
1790
2101
  */
1791
- 200: unknown;
2102
+ 200: RoadmapItem;
1792
2103
  };
1793
- export type ListClustersData = {
2104
+ export type VoteRoadmapResponse = VoteRoadmapResponses[keyof VoteRoadmapResponses];
2105
+ export type ListRepositoriesData = {
1794
2106
  body?: never;
1795
2107
  path?: never;
1796
2108
  query?: never;
1797
- url: '/clusters';
2109
+ url: '/registry';
1798
2110
  };
1799
- export type ListClustersErrors = {
2111
+ export type ListRepositoriesErrors = {
1800
2112
  /**
1801
2113
  * Not authenticated
1802
2114
  */
1803
2115
  401: unknown;
1804
- };
1805
- export type ListClustersResponses = {
1806
- /**
1807
- * An array of clusters
1808
- */
1809
- 200: Array<Cluster>;
1810
- };
1811
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1812
- export type CreateClusterData = {
1813
- body: ClusterCreateInput;
1814
- path?: never;
1815
- query?: never;
1816
- url: '/clusters';
1817
- };
1818
- export type CreateClusterErrors = {
1819
2116
  /**
1820
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2117
+ * Internal server error
1821
2118
  */
1822
- 402: string;
2119
+ 500: unknown;
1823
2120
  };
1824
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1825
- export type CreateClusterResponses = {
2121
+ export type ListRepositoriesResponses = {
1826
2122
  /**
1827
- * Successfully created. Returns created Cluster ID.
2123
+ * List of repositories
1828
2124
  */
1829
- 200: string;
2125
+ 200: Array<RegistryRepository>;
1830
2126
  };
1831
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1832
- export type DeleteClusterData = {
2127
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
2128
+ export type ListTagsData = {
1833
2129
  body?: never;
1834
2130
  path: {
1835
2131
  /**
1836
- * Unique identifier of the cluster. UUID v4 string in canonical form
2132
+ * Region where the repository is located
1837
2133
  */
1838
- cluster_id: string;
1839
- };
1840
- query?: never;
1841
- url: '/clusters/{cluster_id}';
1842
- };
1843
- export type DeleteClusterResponses = {
1844
- /**
1845
- * Successfully deleted.
1846
- */
1847
- 200: string;
1848
- };
1849
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1850
- export type GetClusterData = {
1851
- body?: never;
1852
- path: {
2134
+ region: string;
1853
2135
  /**
1854
- * Unique identifier of the cluster. UUID v4 string in canonical form
2136
+ * Name of the repository
1855
2137
  */
1856
- cluster_id: string;
2138
+ repository: string;
1857
2139
  };
1858
2140
  query?: never;
1859
- url: '/clusters/{cluster_id}';
2141
+ url: '/registry/{region}/{repository}';
1860
2142
  };
1861
- export type GetClusterResponses = {
2143
+ export type ListTagsErrors = {
1862
2144
  /**
1863
- * Returns a single object containing cluster details.
2145
+ * Not authenticated
1864
2146
  */
1865
- 200: Cluster;
1866
- };
1867
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1868
- export type UpdateClusterData = {
1869
- body: ClusterUpdateInput;
1870
- path: {
1871
- /**
1872
- * Unique identifier of the cluster. UUID v4 string in canonical form
1873
- */
1874
- cluster_id: string;
1875
- };
1876
- query?: never;
1877
- url: '/clusters/{cluster_id}';
2147
+ 401: unknown;
2148
+ /**
2149
+ * Repository not found
2150
+ */
2151
+ 404: unknown;
2152
+ /**
2153
+ * Internal server error
2154
+ */
2155
+ 500: unknown;
1878
2156
  };
1879
- export type UpdateClusterResponses = {
2157
+ export type ListTagsResponses = {
1880
2158
  /**
1881
- * Successfully updated. Returns updated cluster details.
2159
+ * Repository with tags
1882
2160
  */
1883
- 200: Cluster;
2161
+ 200: RegistryRepositoryWithTags;
1884
2162
  };
1885
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1886
- export type GetJoinInformationData = {
2163
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2164
+ export type DeleteTagData = {
1887
2165
  body?: never;
1888
2166
  path: {
1889
2167
  /**
1890
- * Unique identifier of the cluster. UUID v4 string in canonical form
2168
+ * Region where the repository is located
1891
2169
  */
1892
- cluster_id: string;
2170
+ region: string;
2171
+ /**
2172
+ * Name of the repository
2173
+ */
2174
+ repository: string;
2175
+ /**
2176
+ * Name of the tag
2177
+ */
2178
+ tag: string;
1893
2179
  };
1894
2180
  query?: never;
1895
- url: '/clusters/{cluster_id}/join_information';
2181
+ url: '/registry/{region}/{repository}/{tag}';
1896
2182
  };
1897
- export type GetJoinInformationErrors = {
2183
+ export type DeleteTagErrors = {
1898
2184
  /**
1899
2185
  * Not authenticated
1900
2186
  */
1901
2187
  401: unknown;
1902
- };
1903
- export type GetJoinInformationResponses = {
1904
- /**
1905
- * An object of cluster join information
1906
- */
1907
- 200: ClusterJoinInformation;
1908
- };
1909
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1910
- export type ListInvitesData = {
1911
- body?: never;
1912
- path?: never;
1913
- query?: never;
1914
- url: '/invites';
1915
- };
1916
- export type ListInvitesErrors = {
1917
2188
  /**
1918
- * Not authenticated
2189
+ * Tag not found
1919
2190
  */
1920
- 401: unknown;
1921
- };
1922
- export type ListInvitesResponses = {
2191
+ 404: unknown;
1923
2192
  /**
1924
- * An array of invites
2193
+ * Internal server error
1925
2194
  */
1926
- 200: Array<Invite>;
1927
- };
1928
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1929
- export type CreateInviteData = {
1930
- body: {
1931
- /**
1932
- * User email address
1933
- */
1934
- email?: string;
1935
- };
1936
- path?: never;
1937
- query?: never;
1938
- url: '/invites';
2195
+ 500: unknown;
1939
2196
  };
1940
- export type CreateInviteResponses = {
2197
+ export type DeleteTagResponses = {
1941
2198
  /**
1942
- * Successfully created. Returns created invite details.
2199
+ * Tag successfully deleted
1943
2200
  */
1944
- 200: Invite;
2201
+ 200: unknown;
1945
2202
  };
1946
- export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
1947
- export type GetInviteData = {
2203
+ export type GetTagData = {
1948
2204
  body?: never;
1949
2205
  path: {
1950
2206
  /**
1951
- * Invitation code
2207
+ * Region where the repository is located
1952
2208
  */
1953
- code: string;
1954
- };
1955
- query?: never;
1956
- url: '/invites/{code}';
1957
- };
1958
- export type GetInviteResponses = {
1959
- /**
1960
- * Returns a single object containing invite details.
1961
- */
1962
- 200: Invite;
1963
- };
1964
- export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1965
- export type DeleteInviteData = {
1966
- body?: never;
1967
- path: {
2209
+ region: string;
1968
2210
  /**
1969
- * User email address
2211
+ * Name of the repository
1970
2212
  */
1971
- email: string;
2213
+ repository: string;
2214
+ /**
2215
+ * Name of the tag
2216
+ */
2217
+ tag: string;
1972
2218
  };
1973
2219
  query?: never;
1974
- url: '/invites/{email}';
1975
- };
1976
- export type DeleteInviteResponses = {
1977
- /**
1978
- * Successfully deleted.
1979
- */
1980
- 200: unknown;
1981
- };
1982
- export type ListMarketplaceChartsData = {
1983
- body?: never;
1984
- path?: never;
1985
- query?: never;
1986
- url: '/marketplace';
2220
+ url: '/registry/{region}/{repository}/{tag}';
1987
2221
  };
1988
- export type ListMarketplaceChartsErrors = {
2222
+ export type GetTagErrors = {
1989
2223
  /**
1990
2224
  * Not authenticated
1991
2225
  */
1992
2226
  401: unknown;
2227
+ /**
2228
+ * Tag not found
2229
+ */
2230
+ 404: unknown;
2231
+ /**
2232
+ * Internal server error
2233
+ */
2234
+ 500: unknown;
1993
2235
  };
1994
- export type ListMarketplaceChartsResponses = {
2236
+ export type GetTagResponses = {
1995
2237
  /**
1996
- * An array of chart listings in the marketplace.
2238
+ * Tag details
1997
2239
  */
1998
- 200: Array<MarketplaceListing>;
2240
+ 200: RegistryTag;
1999
2241
  };
2000
- export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2001
- export type GetMarketplaceChartFilesData = {
2242
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2243
+ export type GetOrganizationData = {
2002
2244
  body?: never;
2003
- path: {
2004
- /**
2005
- * Name of the chart in the marketplace.
2006
- */
2007
- chart_name: string;
2008
- /**
2009
- * 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).
2010
- */
2011
- version_channel: string;
2012
- };
2245
+ path?: never;
2013
2246
  query?: never;
2014
- url: '/marketplace/{chart_name}/files/{version_channel}';
2247
+ url: '/organization';
2015
2248
  };
2016
- export type GetMarketplaceChartFilesErrors = {
2249
+ export type GetOrganizationResponses = {
2017
2250
  /**
2018
- * Chart not found or no version matches the channel
2251
+ * Returns a single object containing organization details.
2019
2252
  */
2020
- 404: unknown;
2253
+ 200: Organization;
2021
2254
  };
2022
- export type GetMarketplaceChartFilesResponses = {
2255
+ export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2256
+ export type CreateOrganizationData = {
2257
+ body: OrganizationCreateInput;
2258
+ path?: never;
2259
+ query?: never;
2260
+ url: '/organization';
2261
+ };
2262
+ export type CreateOrganizationResponses = {
2023
2263
  /**
2024
- * Returns an object containing the chart files for the latest matching version.
2264
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2265
+ *
2025
2266
  */
2026
- 200: MarketplaceListingFiles;
2267
+ 200: OrganizationCreateOutput;
2027
2268
  };
2028
- export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2269
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2029
2270
  export type PostMcpData = {
2030
2271
  /**
2031
2272
  * JSON-RPC 2.0 request payload
@@ -2068,528 +2309,808 @@ export type PostMcpResponses = {
2068
2309
  };
2069
2310
  };
2070
2311
  export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2071
- export type GetOrganizationData = {
2072
- body?: never;
2073
- path?: never;
2074
- query?: never;
2075
- url: '/organization';
2076
- };
2077
- export type GetOrganizationResponses = {
2078
- /**
2079
- * Returns a single object containing organization details.
2080
- */
2081
- 200: Organization;
2082
- };
2083
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2084
- export type CreateOrganizationData = {
2085
- body: OrganizationCreateInput;
2086
- path?: never;
2087
- query?: never;
2088
- url: '/organization';
2089
- };
2090
- export type CreateOrganizationResponses = {
2091
- /**
2092
- * Successfully created a new organization.
2093
- */
2094
- 200: unknown;
2095
- };
2096
- export type ListRepositoriesData = {
2312
+ export type ListMarketplaceChartsData = {
2097
2313
  body?: never;
2098
2314
  path?: never;
2099
2315
  query?: never;
2100
- url: '/registry';
2316
+ url: '/marketplace';
2101
2317
  };
2102
- export type ListRepositoriesErrors = {
2318
+ export type ListMarketplaceChartsErrors = {
2103
2319
  /**
2104
2320
  * Not authenticated
2105
2321
  */
2106
2322
  401: unknown;
2107
- /**
2108
- * Internal server error
2109
- */
2110
- 500: unknown;
2111
2323
  };
2112
- export type ListRepositoriesResponses = {
2324
+ export type ListMarketplaceChartsResponses = {
2113
2325
  /**
2114
- * List of repositories
2326
+ * An array of chart listings in the marketplace.
2115
2327
  */
2116
- 200: Array<RegistryRepository>;
2328
+ 200: Array<MarketplaceListing>;
2117
2329
  };
2118
- export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
2119
- export type ListTagsData = {
2330
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2331
+ export type GetMarketplaceChartFilesData = {
2120
2332
  body?: never;
2121
2333
  path: {
2122
2334
  /**
2123
- * Region where the repository is located
2335
+ * Name of the chart in the marketplace.
2124
2336
  */
2125
- region: string;
2337
+ chart_name: string;
2126
2338
  /**
2127
- * Name of the repository
2339
+ * 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).
2128
2340
  */
2129
- repository: string;
2341
+ version_channel: string;
2130
2342
  };
2131
2343
  query?: never;
2132
- url: '/registry/{region}/{repository}';
2344
+ url: '/marketplace/{chart_name}/files/{version_channel}';
2133
2345
  };
2134
- export type ListTagsErrors = {
2135
- /**
2136
- * Not authenticated
2137
- */
2138
- 401: unknown;
2346
+ export type GetMarketplaceChartFilesErrors = {
2139
2347
  /**
2140
- * Repository not found
2348
+ * Chart not found or no version matches the channel
2141
2349
  */
2142
2350
  404: unknown;
2351
+ };
2352
+ export type GetMarketplaceChartFilesResponses = {
2143
2353
  /**
2144
- * Internal server error
2354
+ * Returns an object containing the chart files for the latest matching version.
2145
2355
  */
2146
- 500: unknown;
2356
+ 200: MarketplaceListingFiles;
2147
2357
  };
2148
- export type ListTagsResponses = {
2358
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2359
+ export type ListInvitesData = {
2360
+ body?: never;
2361
+ path?: never;
2362
+ query?: never;
2363
+ url: '/invites';
2364
+ };
2365
+ export type ListInvitesErrors = {
2149
2366
  /**
2150
- * Repository with tags
2367
+ * Not authenticated
2151
2368
  */
2152
- 200: RegistryRepositoryWithTags;
2369
+ 401: unknown;
2153
2370
  };
2154
- export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2155
- export type DeleteTagData = {
2371
+ export type ListInvitesResponses = {
2372
+ /**
2373
+ * An array of invites
2374
+ */
2375
+ 200: Array<Invite>;
2376
+ };
2377
+ export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
2378
+ export type CreateInviteData = {
2379
+ body: InviteCreateInput;
2380
+ path?: never;
2381
+ query?: never;
2382
+ url: '/invites';
2383
+ };
2384
+ export type CreateInviteResponses = {
2385
+ /**
2386
+ * Successfully created. Returns created invite details.
2387
+ */
2388
+ 200: Invite;
2389
+ };
2390
+ export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
2391
+ export type GetInviteData = {
2156
2392
  body?: never;
2157
2393
  path: {
2158
2394
  /**
2159
- * Region where the repository is located
2395
+ * Invitation code
2160
2396
  */
2161
- region: string;
2397
+ code: string;
2398
+ };
2399
+ query?: never;
2400
+ url: '/invites/{code}';
2401
+ };
2402
+ export type GetInviteResponses = {
2403
+ /**
2404
+ * The invitation code is valid. Returns the invited email and organization.
2405
+ */
2406
+ 200: {
2162
2407
  /**
2163
- * Name of the repository
2408
+ * Email address the invite was issued to.
2164
2409
  */
2165
- repository: string;
2410
+ email?: string;
2166
2411
  /**
2167
- * Name of the tag
2412
+ * Identifier of the organization the invite grants access to.
2168
2413
  */
2169
- tag: string;
2414
+ organization_id?: string;
2415
+ };
2416
+ };
2417
+ export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
2418
+ export type DeleteInviteData = {
2419
+ body?: never;
2420
+ path: {
2421
+ /**
2422
+ * User email address
2423
+ */
2424
+ email: string;
2170
2425
  };
2171
2426
  query?: never;
2172
- url: '/registry/{region}/{repository}/{tag}';
2427
+ url: '/invites/{email}';
2173
2428
  };
2174
- export type DeleteTagErrors = {
2429
+ export type DeleteInviteResponses = {
2430
+ /**
2431
+ * Successfully deleted.
2432
+ */
2433
+ 200: unknown;
2434
+ };
2435
+ export type QueryClusterData = {
2436
+ body?: never;
2437
+ path: {
2438
+ /**
2439
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2440
+ */
2441
+ cluster_id: string;
2442
+ };
2443
+ query?: never;
2444
+ url: '/clusters/{cluster_id}/query';
2445
+ };
2446
+ export type QueryClusterErrors = {
2175
2447
  /**
2176
2448
  * Not authenticated
2177
2449
  */
2178
2450
  401: unknown;
2451
+ };
2452
+ export type QueryClusterResponses = {
2179
2453
  /**
2180
- * Tag not found
2454
+ * Kubernetes API response
2181
2455
  */
2182
- 404: unknown;
2456
+ 200: unknown;
2457
+ };
2458
+ export type ListFleetsData = {
2459
+ body?: never;
2460
+ path: {
2461
+ /**
2462
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2463
+ */
2464
+ cluster_id: string;
2465
+ };
2466
+ query?: never;
2467
+ url: '/clusters/{cluster_id}/fleets';
2468
+ };
2469
+ export type ListFleetsErrors = {
2183
2470
  /**
2184
- * Internal server error
2471
+ * Not authenticated
2185
2472
  */
2186
- 500: unknown;
2473
+ 401: unknown;
2187
2474
  };
2188
- export type DeleteTagResponses = {
2475
+ export type ListFleetsResponses = {
2189
2476
  /**
2190
- * Tag successfully deleted
2477
+ * An array of fleets
2191
2478
  */
2192
- 200: unknown;
2479
+ 200: Array<Fleet>;
2193
2480
  };
2194
- export type GetTagData = {
2481
+ export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
2482
+ export type CreateFleetData = {
2483
+ body: FleetCreateInput;
2484
+ path: {
2485
+ /**
2486
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2487
+ */
2488
+ cluster_id: string;
2489
+ };
2490
+ query?: never;
2491
+ url: '/clusters/{cluster_id}/fleets';
2492
+ };
2493
+ export type CreateFleetErrors = {
2494
+ /**
2495
+ * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
2496
+ */
2497
+ 402: string;
2498
+ /**
2499
+ * 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.
2500
+ */
2501
+ 409: string;
2502
+ };
2503
+ export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
2504
+ export type CreateFleetResponses = {
2505
+ /**
2506
+ * Successfully created. Returns created Fleet ID.
2507
+ */
2508
+ 200: string;
2509
+ };
2510
+ export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
2511
+ export type DeleteFleetData = {
2195
2512
  body?: never;
2196
2513
  path: {
2197
2514
  /**
2198
- * Region where the repository is located
2515
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2199
2516
  */
2200
- region: string;
2517
+ cluster_id: string;
2201
2518
  /**
2202
- * Name of the repository
2519
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2203
2520
  */
2204
- repository: string;
2521
+ fleet_name: string;
2522
+ };
2523
+ query?: never;
2524
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2525
+ };
2526
+ export type DeleteFleetErrors = {
2527
+ /**
2528
+ * 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.
2529
+ */
2530
+ 409: string;
2531
+ };
2532
+ export type DeleteFleetError = DeleteFleetErrors[keyof DeleteFleetErrors];
2533
+ export type DeleteFleetResponses = {
2534
+ /**
2535
+ * Successfully deleted.
2536
+ */
2537
+ 200: string;
2538
+ };
2539
+ export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
2540
+ export type GetFleetData = {
2541
+ body?: never;
2542
+ path: {
2205
2543
  /**
2206
- * Name of the tag
2544
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2207
2545
  */
2208
- tag: string;
2546
+ cluster_id: string;
2547
+ /**
2548
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2549
+ */
2550
+ fleet_name: string;
2209
2551
  };
2210
2552
  query?: never;
2211
- url: '/registry/{region}/{repository}/{tag}';
2553
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2212
2554
  };
2213
- export type GetTagErrors = {
2555
+ export type GetFleetResponses = {
2214
2556
  /**
2215
- * Not authenticated
2557
+ * Returns a single object containing fleet details.
2216
2558
  */
2217
- 401: unknown;
2559
+ 200: Fleet;
2560
+ };
2561
+ export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
2562
+ export type UpdateFleetData = {
2563
+ body: FleetUpdateInput;
2564
+ path: {
2565
+ /**
2566
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2567
+ */
2568
+ cluster_id: string;
2569
+ /**
2570
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2571
+ */
2572
+ fleet_name: string;
2573
+ };
2574
+ query?: never;
2575
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2576
+ };
2577
+ export type UpdateFleetErrors = {
2218
2578
  /**
2219
- * Tag not found
2579
+ * Organization must have a valid payment method configured to access this endpoint.
2220
2580
  */
2221
- 404: unknown;
2581
+ 402: string;
2222
2582
  /**
2223
- * Internal server error
2583
+ * 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.
2224
2584
  */
2225
- 500: unknown;
2585
+ 409: string;
2226
2586
  };
2227
- export type GetTagResponses = {
2587
+ export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
2588
+ export type UpdateFleetResponses = {
2228
2589
  /**
2229
- * Tag details
2590
+ * Successfully updated.
2230
2591
  */
2231
- 200: RegistryTag;
2592
+ 200: string;
2232
2593
  };
2233
- export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2234
- export type ListTicketsData = {
2594
+ export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
2595
+ export type ListChartsData = {
2235
2596
  body?: never;
2236
- path?: never;
2597
+ path: {
2598
+ /**
2599
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2600
+ */
2601
+ cluster_id: string;
2602
+ };
2237
2603
  query?: never;
2238
- url: '/tickets';
2604
+ url: '/clusters/{cluster_id}/charts';
2239
2605
  };
2240
- export type ListTicketsResponses = {
2606
+ export type ListChartsErrors = {
2241
2607
  /**
2242
- * Tickets for the organization.
2608
+ * Not authenticated
2243
2609
  */
2244
- 200: TicketListResponse;
2610
+ 401: unknown;
2245
2611
  };
2246
- export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
2247
- export type CreateTicketData = {
2248
- body: {
2612
+ export type ListChartsResponses = {
2613
+ /**
2614
+ * An array of charts
2615
+ */
2616
+ 200: Array<Chart>;
2617
+ };
2618
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
2619
+ export type CreateChartData = {
2620
+ body: ChartCreateInput;
2621
+ path: {
2249
2622
  /**
2250
- * JSON-encoded TicketCreateInput.
2623
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2251
2624
  */
2252
- payload?: string;
2253
- attachments?: Array<Blob | File>;
2625
+ cluster_id: string;
2254
2626
  };
2255
- path?: never;
2256
2627
  query?: never;
2257
- url: '/tickets';
2628
+ url: '/clusters/{cluster_id}/charts';
2258
2629
  };
2259
- export type CreateTicketResponses = {
2630
+ export type CreateChartErrors = {
2260
2631
  /**
2261
- * Ticket created.
2632
+ * 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.
2262
2633
  */
2263
- 200: Ticket;
2634
+ 409: string;
2264
2635
  };
2265
- export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
2266
- export type CloseTicketData = {
2636
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2637
+ export type CreateChartResponses = {
2638
+ /**
2639
+ * Successfully created. Returns created Chart ID.
2640
+ */
2641
+ 200: string;
2642
+ };
2643
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2644
+ export type DeleteChartData = {
2267
2645
  body?: never;
2268
2646
  path: {
2269
- ticket_id: string;
2647
+ /**
2648
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2649
+ */
2650
+ cluster_id: string;
2651
+ /**
2652
+ * Chart deployment name as the unique identifier of the chart.
2653
+ */
2654
+ chart_name: string;
2270
2655
  };
2271
2656
  query?: never;
2272
- url: '/tickets/{ticket_id}';
2657
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2273
2658
  };
2274
- export type CloseTicketResponses = {
2659
+ export type DeleteChartErrors = {
2275
2660
  /**
2276
- * Ticket closed.
2661
+ * 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.
2277
2662
  */
2278
- 200: Ticket;
2663
+ 409: string;
2279
2664
  };
2280
- export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
2281
- export type GetTicketData = {
2665
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2666
+ export type DeleteChartResponses = {
2667
+ /**
2668
+ * Successfully deleted.
2669
+ */
2670
+ 200: string;
2671
+ };
2672
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2673
+ export type GetChartData = {
2282
2674
  body?: never;
2283
2675
  path: {
2284
- ticket_id: string;
2676
+ /**
2677
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2678
+ */
2679
+ cluster_id: string;
2680
+ /**
2681
+ * Chart deployment name as the unique identifier of the chart.
2682
+ */
2683
+ chart_name: string;
2285
2684
  };
2286
2685
  query?: never;
2287
- url: '/tickets/{ticket_id}';
2686
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2288
2687
  };
2289
- export type GetTicketResponses = {
2688
+ export type GetChartResponses = {
2290
2689
  /**
2291
- * Ticket with messages (internal notes excluded).
2690
+ * Returns a single object containing chart details.
2292
2691
  */
2293
- 200: Ticket;
2692
+ 200: Chart;
2294
2693
  };
2295
- export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
2296
- export type ReplyTicketData = {
2297
- body: {
2694
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2695
+ export type UpdateChartData = {
2696
+ body: ChartUpdateInput;
2697
+ path: {
2298
2698
  /**
2299
- * JSON-encoded TicketMessageInput.
2699
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2300
2700
  */
2301
- payload?: string;
2302
- attachments?: Array<Blob | File>;
2701
+ cluster_id: string;
2702
+ /**
2703
+ * Chart deployment name as the unique identifier of the chart.
2704
+ */
2705
+ chart_name: string;
2303
2706
  };
2707
+ query?: never;
2708
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2709
+ };
2710
+ export type UpdateChartErrors = {
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 UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2717
+ export type UpdateChartResponses = {
2718
+ /**
2719
+ * Successfully updated.
2720
+ */
2721
+ 200: string;
2722
+ };
2723
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2724
+ export type ListClustersData = {
2725
+ body?: never;
2726
+ path?: never;
2727
+ query?: never;
2728
+ url: '/clusters';
2729
+ };
2730
+ export type ListClustersErrors = {
2731
+ /**
2732
+ * Not authenticated
2733
+ */
2734
+ 401: unknown;
2735
+ };
2736
+ export type ListClustersResponses = {
2737
+ /**
2738
+ * An array of clusters
2739
+ */
2740
+ 200: Array<Cluster>;
2741
+ };
2742
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2743
+ export type CreateClusterData = {
2744
+ body: ClusterCreateInput;
2745
+ path?: never;
2746
+ query?: never;
2747
+ url: '/clusters';
2748
+ };
2749
+ export type CreateClusterErrors = {
2750
+ /**
2751
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2752
+ */
2753
+ 402: string;
2754
+ };
2755
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2756
+ export type CreateClusterResponses = {
2757
+ /**
2758
+ * Successfully created. Returns created Cluster ID.
2759
+ */
2760
+ 200: string;
2761
+ };
2762
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2763
+ export type DeleteClusterData = {
2764
+ body?: never;
2304
2765
  path: {
2305
- ticket_id: string;
2766
+ /**
2767
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2768
+ */
2769
+ cluster_id: string;
2306
2770
  };
2307
2771
  query?: never;
2308
- url: '/tickets/{ticket_id}/messages';
2772
+ url: '/clusters/{cluster_id}';
2309
2773
  };
2310
- export type ReplyTicketErrors = {
2774
+ export type DeleteClusterErrors = {
2311
2775
  /**
2312
- * Ticket is closed. Open a new ticket instead.
2776
+ * Cluster not found; it does not exist or has already been deleted.
2313
2777
  */
2314
- 409: unknown;
2778
+ 404: unknown;
2779
+ /**
2780
+ * 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.
2781
+ */
2782
+ 409: string;
2783
+ /**
2784
+ * Transient failure tearing down the cluster; retry the request.
2785
+ */
2786
+ 503: unknown;
2315
2787
  };
2316
- export type ReplyTicketResponses = {
2788
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2789
+ export type DeleteClusterResponses = {
2317
2790
  /**
2318
- * Reply appended.
2791
+ * Successfully deleted. The cluster has been torn down.
2319
2792
  */
2320
- 200: TicketMessage;
2793
+ 200: string;
2321
2794
  };
2322
- export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
2323
- export type GetTicketAttachmentData = {
2795
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2796
+ export type GetClusterData = {
2324
2797
  body?: never;
2325
2798
  path: {
2326
- ticket_id: string;
2327
- attachment_id: string;
2799
+ /**
2800
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2801
+ */
2802
+ cluster_id: string;
2328
2803
  };
2329
2804
  query?: never;
2330
- url: '/tickets/{ticket_id}/attachments/{attachment_id}';
2805
+ url: '/clusters/{cluster_id}';
2331
2806
  };
2332
- export type GetTicketAttachmentResponses = {
2807
+ export type GetClusterResponses = {
2333
2808
  /**
2334
- * Attachment binary stream.
2809
+ * Returns a single object containing cluster details.
2335
2810
  */
2336
- 200: Blob | File;
2811
+ 200: Cluster;
2812
+ };
2813
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2814
+ export type UpdateClusterData = {
2815
+ body: ClusterUpdateInput;
2816
+ path: {
2817
+ /**
2818
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2819
+ */
2820
+ cluster_id: string;
2821
+ };
2822
+ query?: never;
2823
+ url: '/clusters/{cluster_id}';
2824
+ };
2825
+ export type UpdateClusterErrors = {
2826
+ /**
2827
+ * 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.
2828
+ */
2829
+ 409: string;
2830
+ };
2831
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2832
+ export type UpdateClusterResponses = {
2833
+ /**
2834
+ * Successfully updated. Returns updated cluster details.
2835
+ */
2836
+ 200: Cluster;
2337
2837
  };
2338
- export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
2339
- export type ListTokensData = {
2838
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2839
+ export type GetJoinInformationData = {
2340
2840
  body?: never;
2341
- path?: never;
2841
+ path: {
2842
+ /**
2843
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2844
+ */
2845
+ cluster_id: string;
2846
+ };
2342
2847
  query?: never;
2343
- url: '/tokens';
2848
+ url: '/clusters/{cluster_id}/join_information';
2344
2849
  };
2345
- export type ListTokensErrors = {
2850
+ export type GetJoinInformationErrors = {
2346
2851
  /**
2347
2852
  * Not authenticated
2348
2853
  */
2349
2854
  401: unknown;
2855
+ /**
2856
+ * 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.
2857
+ */
2858
+ 409: string;
2859
+ /**
2860
+ * 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.
2861
+ */
2862
+ 426: string;
2350
2863
  };
2351
- export type ListTokensResponses = {
2864
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2865
+ export type GetJoinInformationResponses = {
2352
2866
  /**
2353
- * Returns a list of access token details with masked secrets.
2867
+ * An object of cluster join information
2354
2868
  */
2355
- 200: Array<Token>;
2869
+ 200: ClusterJoinInformation;
2356
2870
  };
2357
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
2358
- export type CreateTokenData = {
2359
- body: TokenCreateInput;
2871
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2872
+ export type GetUsageData = {
2873
+ body?: never;
2360
2874
  path?: never;
2361
- query?: never;
2362
- url: '/tokens';
2875
+ query?: {
2876
+ /**
2877
+ * 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)
2878
+ */
2879
+ granularity?: 'hourly' | 'daily' | 'monthly';
2880
+ };
2881
+ url: '/billing/usage';
2363
2882
  };
2364
- export type CreateTokenErrors = {
2883
+ export type GetUsageErrors = {
2365
2884
  /**
2366
2885
  * Not authenticated
2367
2886
  */
2368
2887
  401: unknown;
2369
2888
  };
2370
- export type CreateTokenResponses = {
2889
+ export type GetUsageResponses = {
2371
2890
  /**
2372
- * Successfully created. Returns created token details with unmasked/raw secret.
2891
+ * Usage data with facets for filtering
2373
2892
  */
2374
- 200: Token;
2893
+ 200: UsageResponse;
2375
2894
  };
2376
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
2377
- export type DeleteTokenData = {
2895
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2896
+ export type GetPaymentMethodSecretData = {
2378
2897
  body?: never;
2379
- path: {
2380
- /**
2381
- * Generated unique identifier of the access token.
2382
- */
2383
- token_id: string;
2384
- };
2898
+ path?: never;
2385
2899
  query?: never;
2386
- url: '/tokens/{token_id}';
2900
+ url: '/billing/payment-method';
2387
2901
  };
2388
- export type DeleteTokenResponses = {
2902
+ export type GetPaymentMethodSecretResponses = {
2389
2903
  /**
2390
- * Successfully deleted.
2904
+ * 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.
2905
+ *
2391
2906
  */
2392
- 200: unknown;
2393
- };
2394
- export type GetTokenData = {
2395
- body?: never;
2396
- path: {
2907
+ 200: {
2397
2908
  /**
2398
- * Generated unique identifier of the access token.
2909
+ * The client secret.
2399
2910
  */
2400
- token_id: string;
2911
+ id?: string;
2401
2912
  };
2913
+ };
2914
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2915
+ export type ListPaymentMethodsData = {
2916
+ body?: never;
2917
+ path?: never;
2402
2918
  query?: never;
2403
- url: '/tokens/{token_id}';
2919
+ url: '/billing/payment-methods';
2404
2920
  };
2405
- export type GetTokenErrors = {
2921
+ export type ListPaymentMethodsErrors = {
2406
2922
  /**
2407
2923
  * Not authenticated
2408
2924
  */
2409
2925
  401: unknown;
2410
2926
  };
2411
- export type GetTokenResponses = {
2927
+ export type ListPaymentMethodsResponses = {
2412
2928
  /**
2413
- * Returns access token details with masked secret.
2929
+ * An array of payment methods.
2414
2930
  */
2415
- 200: Token;
2931
+ 200: Array<PaymentMethod>;
2416
2932
  };
2417
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
2418
- export type UpdateTokenData = {
2419
- body: TokenUpdateInput;
2933
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
2934
+ export type SetDefaultPaymentMethodData = {
2935
+ body?: never;
2420
2936
  path: {
2421
2937
  /**
2422
- * Generated unique identifier of the access token.
2938
+ * Stripe payment method identifier.
2423
2939
  */
2424
- token_id: string;
2940
+ paymentMethodId: string;
2425
2941
  };
2426
2942
  query?: never;
2427
- url: '/tokens/{token_id}';
2943
+ url: '/billing/payment-methods/{paymentMethodId}/default';
2428
2944
  };
2429
- export type UpdateTokenErrors = {
2945
+ export type SetDefaultPaymentMethodErrors = {
2946
+ /**
2947
+ * The bank transfer payment method cannot be set as the default.
2948
+ */
2949
+ 400: unknown;
2430
2950
  /**
2431
2951
  * Not authenticated
2432
2952
  */
2433
2953
  401: unknown;
2954
+ /**
2955
+ * Payment method not found.
2956
+ */
2957
+ 404: unknown;
2434
2958
  };
2435
- export type UpdateTokenResponses = {
2959
+ export type SetDefaultPaymentMethodResponses = {
2436
2960
  /**
2437
- * Successfully updated. Returns updated token details with masked secret.
2961
+ * Default payment method updated.
2438
2962
  */
2439
- 200: Token;
2963
+ 204: void;
2440
2964
  };
2441
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
2442
- export type RegenerateTokenData = {
2965
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
2966
+ export type DeletePaymentMethodData = {
2443
2967
  body?: never;
2444
2968
  path: {
2445
2969
  /**
2446
- * Generated unique identifier of the access token.
2970
+ * Stripe payment method identifier.
2447
2971
  */
2448
- token_id: string;
2972
+ paymentMethodId: string;
2449
2973
  };
2450
2974
  query?: never;
2451
- url: '/tokens/{token_id}/secret';
2975
+ url: '/billing/payment-methods/{paymentMethodId}';
2452
2976
  };
2453
- export type RegenerateTokenErrors = {
2977
+ export type DeletePaymentMethodErrors = {
2978
+ /**
2979
+ * The bank transfer payment method cannot be removed.
2980
+ */
2981
+ 400: unknown;
2454
2982
  /**
2455
2983
  * Not authenticated
2456
2984
  */
2457
2985
  401: unknown;
2986
+ /**
2987
+ * Payment method not found.
2988
+ */
2989
+ 404: unknown;
2990
+ /**
2991
+ * Cannot delete the only remaining payment method.
2992
+ */
2993
+ 409: unknown;
2458
2994
  };
2459
- export type RegenerateTokenResponses = {
2995
+ export type DeletePaymentMethodResponses = {
2460
2996
  /**
2461
- * Successfully updated. Returns updated token details with unmasked / raw secret.
2997
+ * Payment method deleted.
2462
2998
  */
2463
- 200: Token;
2999
+ 204: void;
2464
3000
  };
2465
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
2466
- export type ListUserOrganizationsData = {
3001
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
3002
+ export type ListInvoicesData = {
2467
3003
  body?: never;
2468
- path: {
2469
- /**
2470
- * User email address.
2471
- */
2472
- email: string;
2473
- };
3004
+ path?: never;
2474
3005
  query?: never;
2475
- url: '/users/organizations/{email}';
3006
+ url: '/billing/invoices';
2476
3007
  };
2477
- export type ListUserOrganizationsResponses = {
3008
+ export type ListInvoicesErrors = {
2478
3009
  /**
2479
- * An array of organizations the user belongs to.
3010
+ * Not authenticated
2480
3011
  */
2481
- 200: Array<{
2482
- /**
2483
- * Unique identifier of the organization. UUID v4 string in canonical form
2484
- */
2485
- realm?: string;
2486
- /**
2487
- * Human-readable name of the organization
2488
- */
2489
- displayName?: string;
2490
- }>;
3012
+ 401: unknown;
2491
3013
  };
2492
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
2493
- export type ListUsersData = {
3014
+ export type ListInvoicesResponses = {
3015
+ /**
3016
+ * An array of usage records.
3017
+ */
3018
+ 200: Array<Invoice>;
3019
+ };
3020
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
3021
+ export type PayOpenInvoicesData = {
2494
3022
  body?: never;
2495
3023
  path?: never;
2496
3024
  query?: never;
2497
- url: '/users';
3025
+ url: '/billing/invoices/pay';
2498
3026
  };
2499
- export type ListUsersErrors = {
3027
+ export type PayOpenInvoicesErrors = {
3028
+ /**
3029
+ * The organization has no payment method that can be charged.
3030
+ */
3031
+ 400: unknown;
2500
3032
  /**
2501
3033
  * Not authenticated
2502
3034
  */
2503
3035
  401: unknown;
3036
+ /**
3037
+ * Too many payment attempts for this organization.
3038
+ */
3039
+ 429: unknown;
2504
3040
  };
2505
- export type ListUsersResponses = {
3041
+ export type PayOpenInvoicesResponses = {
2506
3042
  /**
2507
- * An array of users
3043
+ * The outcome of the attempt.
2508
3044
  */
2509
- 200: Array<User>;
3045
+ 200: InvoicePaymentResult;
2510
3046
  };
2511
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
2512
- export type CreateUserData = {
2513
- body: UserCreateInput;
3047
+ export type PayOpenInvoicesResponse = PayOpenInvoicesResponses[keyof PayOpenInvoicesResponses];
3048
+ export type GetContactData = {
3049
+ body?: never;
2514
3050
  path?: never;
2515
3051
  query?: never;
2516
- url: '/users';
3052
+ url: '/billing/contact';
2517
3053
  };
2518
- export type CreateUserResponses = {
3054
+ export type GetContactResponses = {
2519
3055
  /**
2520
- * Successfully created. Returns created user details.
3056
+ * Returns a single object containing organization contact and billing address details.
2521
3057
  */
2522
- 200: User;
3058
+ 200: BillingContact;
2523
3059
  };
2524
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
2525
- export type DeleteUserData = {
2526
- body?: never;
2527
- path: {
2528
- /**
2529
- * Unique user identifier. UUID v4 string in canonical form
2530
- */
2531
- user_id: string;
2532
- };
3060
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
3061
+ export type UpdateContactData = {
3062
+ body: BillingContact;
3063
+ path?: never;
2533
3064
  query?: never;
2534
- url: '/users/{user_id}';
3065
+ url: '/billing/contact';
2535
3066
  };
2536
- export type DeleteUserErrors = {
3067
+ export type UpdateContactResponses = {
2537
3068
  /**
2538
- * Deleting own user is not allowed. Delete your organization instead.
3069
+ * Successfully updated. Returns updated organization details.
2539
3070
  */
2540
- 400: unknown;
3071
+ 200: BillingContact;
3072
+ };
3073
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
3074
+ export type GetCreditsData = {
3075
+ body?: never;
3076
+ path?: never;
3077
+ query?: never;
3078
+ url: '/billing/credits';
3079
+ };
3080
+ export type GetCreditsErrors = {
2541
3081
  /**
2542
3082
  * Not authenticated
2543
3083
  */
2544
3084
  401: unknown;
2545
3085
  };
2546
- export type DeleteUserResponses = {
3086
+ export type GetCreditsResponses = {
2547
3087
  /**
2548
- * User profile information
3088
+ * An array of the applied promotional credits records.
2549
3089
  */
2550
- 200: User;
3090
+ 200: Array<BillingCredits>;
2551
3091
  };
2552
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
2553
- export type GetUserData = {
2554
- body?: never;
2555
- path: {
3092
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
3093
+ export type RedeemCreditsData = {
3094
+ body: {
2556
3095
  /**
2557
- * Unique user identifier. UUID v4 string in canonical form
3096
+ * Promotional code to redeem
2558
3097
  */
2559
- user_id: string;
3098
+ code?: string;
2560
3099
  };
3100
+ path?: never;
2561
3101
  query?: never;
2562
- url: '/users/{user_id}';
3102
+ url: '/billing/credits';
2563
3103
  };
2564
- export type GetUserErrors = {
3104
+ export type RedeemCreditsErrors = {
2565
3105
  /**
2566
3106
  * Not authenticated
2567
3107
  */
2568
3108
  401: unknown;
2569
3109
  };
2570
- export type GetUserResponses = {
2571
- /**
2572
- * User profile information
2573
- */
2574
- 200: User;
2575
- };
2576
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
2577
- export type UpdateUserData = {
2578
- body: UserUpdateInput;
2579
- path: {
2580
- /**
2581
- * Unique user identifier. UUID v4 string in canonical form
2582
- */
2583
- user_id: string;
2584
- };
2585
- query?: never;
2586
- url: '/users/{user_id}';
2587
- };
2588
- export type UpdateUserResponses = {
3110
+ export type RedeemCreditsResponses = {
2589
3111
  /**
2590
- * Successfully created. Returns created user details.
3112
+ * Successfully created a new organization.
2591
3113
  */
2592
- 200: User;
3114
+ 200: unknown;
2593
3115
  };
2594
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
2595
3116
  //# sourceMappingURL=types.gen.d.ts.map