@cloudfleet/sdk 0.0.1-176cb2f → 0.0.1-188944c

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