@cloudfleet/sdk 0.0.1-0ac9bf0 → 0.0.1-0b7b21b

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.md +26 -2
  2. package/dist/@tanstack/react-query.gen.d.ts +1077 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1286 -0
  5. package/dist/@tanstack/react-query.gen.js.map +1 -0
  6. package/dist/client/client.gen.d.ts.map +1 -1
  7. package/dist/client/client.gen.js +114 -102
  8. package/dist/client/client.gen.js.map +1 -1
  9. package/dist/client/index.d.ts +1 -1
  10. package/dist/client/index.d.ts.map +1 -1
  11. package/dist/client/index.js.map +1 -1
  12. package/dist/client/types.gen.d.ts +9 -13
  13. package/dist/client/types.gen.d.ts.map +1 -1
  14. package/dist/client/utils.gen.d.ts +8 -4
  15. package/dist/client/utils.gen.d.ts.map +1 -1
  16. package/dist/client/utils.gen.js +13 -15
  17. package/dist/client/utils.gen.js.map +1 -1
  18. package/dist/client.gen.d.ts.map +1 -1
  19. package/dist/client.gen.js +1 -3
  20. package/dist/client.gen.js.map +1 -1
  21. package/dist/core/auth.gen.d.ts.map +1 -1
  22. package/dist/core/auth.gen.js.map +1 -1
  23. package/dist/core/bodySerializer.gen.d.ts +16 -8
  24. package/dist/core/bodySerializer.gen.d.ts.map +1 -1
  25. package/dist/core/bodySerializer.gen.js +1 -1
  26. package/dist/core/bodySerializer.gen.js.map +1 -1
  27. package/dist/core/params.gen.d.ts +10 -0
  28. package/dist/core/params.gen.d.ts.map +1 -1
  29. package/dist/core/params.gen.js +22 -10
  30. package/dist/core/params.gen.js.map +1 -1
  31. package/dist/core/pathSerializer.gen.d.ts.map +1 -1
  32. package/dist/core/pathSerializer.gen.js +3 -11
  33. package/dist/core/pathSerializer.gen.js.map +1 -1
  34. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -1
  35. package/dist/core/queryKeySerializer.gen.js +4 -11
  36. package/dist/core/queryKeySerializer.gen.js.map +1 -1
  37. package/dist/core/serverSentEvents.gen.d.ts +1 -1
  38. package/dist/core/serverSentEvents.gen.d.ts.map +1 -1
  39. package/dist/core/serverSentEvents.gen.js +6 -9
  40. package/dist/core/serverSentEvents.gen.js.map +1 -1
  41. package/dist/core/types.gen.d.ts +1 -1
  42. package/dist/core/types.gen.d.ts.map +1 -1
  43. package/dist/core/utils.gen.d.ts.map +1 -1
  44. package/dist/core/utils.gen.js +1 -1
  45. package/dist/core/utils.gen.js.map +1 -1
  46. package/dist/schemas.gen.d.ts +1770 -273
  47. package/dist/schemas.gen.d.ts.map +1 -1
  48. package/dist/schemas.gen.js +3181 -308
  49. package/dist/schemas.gen.js.map +1 -1
  50. package/dist/sdk.gen.d.ts +305 -164
  51. package/dist/sdk.gen.d.ts.map +1 -1
  52. package/dist/sdk.gen.js +447 -323
  53. package/dist/sdk.gen.js.map +1 -1
  54. package/dist/services/kubernetes/api.d.ts +8 -8
  55. package/dist/types.gen.d.ts +2054 -579
  56. package/dist/types.gen.d.ts.map +1 -1
  57. package/dist/zod.gen.d.ts +3692 -1312
  58. package/dist/zod.gen.d.ts.map +1 -1
  59. package/dist/zod.gen.js +1559 -570
  60. package/dist/zod.gen.js.map +1 -1
  61. package/package.json +28 -8
@@ -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';
171
- /**
172
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
173
- */
174
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
177
+ tier?: 'basic' | 'pro' | 'enterprise';
175
178
  /**
176
179
  * Version of the kubernetes cluster.
177
180
  */
178
181
  version_channel?: string;
182
+ /**
183
+ * Release channel for the cluster's control plane.
184
+ */
185
+ release_channel?: 'rapid' | 'stable' | 'extended';
186
+ /**
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.
205
+ */
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
  /**
@@ -186,10 +239,22 @@ export type ClusterJoinInformation = {
186
239
  * Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.
187
240
  */
188
241
  endpoint: string;
242
+ /**
243
+ * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
244
+ */
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;
189
250
  /**
190
251
  * Authentication key for the cluster.
191
252
  */
192
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;
193
258
  /**
194
259
  * Bootstrap token for the cluster.
195
260
  */
@@ -233,6 +298,9 @@ export type ClusterJoinInformation = {
233
298
  gcp_workload_identity_provider: string;
234
299
  };
235
300
  };
301
+ /**
302
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
303
+ */
236
304
  export type Cluster = {
237
305
  /**
238
306
  * Name of the cluster.
@@ -241,24 +309,71 @@ export type Cluster = {
241
309
  /**
242
310
  * Tier of the cluster.
243
311
  */
244
- tier: 'basic' | 'pro';
312
+ tier: 'basic' | 'pro' | 'enterprise';
245
313
  /**
246
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
314
+ * Version of the kubernetes cluster.
247
315
  */
248
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
316
+ version_channel: string;
249
317
  /**
250
- * Version of the kubernetes cluster.
318
+ * Release channel for the cluster's control plane.
251
319
  */
252
- version_channel?: string;
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;
342
+ /**
343
+ * Cluster networking configuration. Immutable after creation.
344
+ */
345
+ networking: {
346
+ /**
347
+ * CIDR block for pod IPs.
348
+ */
349
+ pod_cidr: string;
350
+ /**
351
+ * CIDR block for service IPs.
352
+ */
353
+ service_cidr: string;
354
+ /**
355
+ * Enable IPv4+IPv6 dual-stack networking.
356
+ */
357
+ dual_stack: boolean;
358
+ /**
359
+ * IPv6 pod CIDR. Requires dual_stack.
360
+ */
361
+ pod_cidr_v6: string;
362
+ /**
363
+ * IPv6 service CIDR. Requires dual_stack.
364
+ */
365
+ service_cidr_v6: string;
366
+ };
253
367
  /**
254
368
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
255
369
  */
256
370
  id: string;
257
371
  /**
258
- * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
372
+ * Status of the cluster.
259
373
  */
260
- status: 'active' | 'disabled' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
374
+ status: 'creating' | 'deployed' | 'updating' | 'disabled';
261
375
  endpoint?: string | '';
376
+ endpoint_public?: string | '';
262
377
  /**
263
378
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
264
379
  */
@@ -278,125 +393,310 @@ export type Cluster = {
278
393
  /**
279
394
  * Indicates if the cluster is ready to be used.
280
395
  */
281
- ready?: boolean;
396
+ ready: boolean;
282
397
  };
398
+ /**
399
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
400
+ */
283
401
  export type ClusterUpdateInput = {
284
402
  /**
285
403
  * Name of the cluster.
286
404
  */
287
- name?: string;
405
+ name: string;
288
406
  /**
289
407
  * Tier of the cluster.
290
408
  */
291
- tier: 'basic' | 'pro';
409
+ tier?: 'basic' | 'pro' | 'enterprise';
292
410
  /**
293
411
  * Version of the kubernetes cluster.
294
412
  */
295
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
+ };
296
435
  };
436
+ /**
437
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
438
+ */
297
439
  export type FleetCreateInput = {
298
440
  /**
299
441
  * Limits define a set of bounds for provisioning capacity.
300
442
  */
301
443
  limits?: {
302
444
  /**
303
- * CPU limit in cores.
445
+ * CPU limit in cores. Maximum 100,000.
304
446
  */
305
- cpu: number;
447
+ cpu?: number;
306
448
  };
307
449
  gcp?: {
308
- enabled?: boolean;
450
+ enabled: boolean;
309
451
  /**
310
- * Project GCP Project id to deploy instances into
452
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
311
453
  */
312
- project: string;
454
+ project?: string;
313
455
  };
314
456
  hetzner?: {
315
- enabled?: boolean;
457
+ enabled: boolean;
316
458
  /**
317
- * Hetzner Cloud API key with read / write access
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.
318
460
  */
319
- apiKey: string;
461
+ apiKey?: string;
320
462
  };
321
463
  aws?: {
322
- enabled?: boolean;
464
+ enabled: boolean;
465
+ /**
466
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
467
+ */
468
+ controllerRoleArn?: string;
469
+ };
470
+ /**
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.
472
+ */
473
+ constraints?: {
474
+ /**
475
+ * Allowed values for `karpenter.sh/capacity-type`.
476
+ */
477
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
478
+ /**
479
+ * Allowed values for `kubernetes.io/arch`.
480
+ */
481
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
482
+ /**
483
+ * Allowed values for `cfke.io/instance-family`.
484
+ */
485
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
323
486
  /**
324
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
487
+ * Allowed values for `topology.kubernetes.io/region`.
325
488
  */
326
- controllerRoleArn: string;
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'>;
327
490
  };
491
+ /**
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`).
493
+ */
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
+ }>;
328
512
  /**
329
513
  * Unique identifier of the kubernetes fleet.
330
514
  */
331
515
  id: string;
332
516
  };
517
+ /**
518
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
519
+ */
333
520
  export type Fleet = {
334
521
  /**
335
522
  * Limits define a set of bounds for provisioning capacity.
336
523
  */
337
524
  limits?: {
338
525
  /**
339
- * CPU limit in cores.
526
+ * CPU limit in cores. Maximum 100,000.
340
527
  */
341
- cpu: number;
528
+ cpu?: number;
342
529
  };
343
530
  gcp?: {
344
- enabled?: boolean;
531
+ enabled: boolean;
345
532
  /**
346
- * Project GCP Project id to deploy instances into
533
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
347
534
  */
348
- project: string;
535
+ project?: string;
349
536
  };
350
537
  hetzner?: {
351
- enabled?: boolean;
538
+ enabled: boolean;
352
539
  /**
353
- * Hetzner Cloud API key with read / write access
540
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
354
541
  */
355
- apiKey: string;
542
+ apiKey?: string;
356
543
  };
357
544
  aws?: {
358
- enabled?: boolean;
545
+ enabled: boolean;
546
+ /**
547
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
548
+ */
549
+ controllerRoleArn?: string;
550
+ };
551
+ /**
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.
553
+ */
554
+ constraints: {
555
+ /**
556
+ * Allowed values for `karpenter.sh/capacity-type`.
557
+ */
558
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
559
+ /**
560
+ * Allowed values for `kubernetes.io/arch`.
561
+ */
562
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
563
+ /**
564
+ * Allowed values for `cfke.io/instance-family`.
565
+ */
566
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
359
567
  /**
360
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
568
+ * Allowed values for `topology.kubernetes.io/region`.
361
569
  */
362
- controllerRoleArn: string;
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'>;
363
571
  };
572
+ /**
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`).
574
+ */
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
+ }>;
364
593
  /**
365
594
  * Unique identifier of the kubernetes fleet.
366
595
  */
367
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;
368
613
  };
614
+ /**
615
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
616
+ */
369
617
  export type FleetUpdateInput = {
370
618
  /**
371
619
  * Limits define a set of bounds for provisioning capacity.
372
620
  */
373
621
  limits?: {
374
622
  /**
375
- * CPU limit in cores.
623
+ * CPU limit in cores. Maximum 100,000.
376
624
  */
377
- cpu: number;
625
+ cpu?: number;
378
626
  };
379
627
  gcp?: {
380
- enabled?: boolean;
628
+ enabled: boolean;
381
629
  /**
382
- * Project GCP Project id to deploy instances into
630
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
383
631
  */
384
- project: string;
632
+ project?: string;
385
633
  };
386
634
  hetzner?: {
387
- enabled?: boolean;
635
+ enabled: boolean;
388
636
  /**
389
- * Hetzner Cloud API key with read / write access
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.
390
638
  */
391
- apiKey: string;
639
+ apiKey?: string;
392
640
  };
393
641
  aws?: {
394
- enabled?: boolean;
642
+ enabled: boolean;
643
+ /**
644
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
645
+ */
646
+ controllerRoleArn?: string;
647
+ };
648
+ /**
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.
650
+ */
651
+ constraints?: {
652
+ /**
653
+ * Allowed values for `karpenter.sh/capacity-type`.
654
+ */
655
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
656
+ /**
657
+ * Allowed values for `kubernetes.io/arch`.
658
+ */
659
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
660
+ /**
661
+ * Allowed values for `cfke.io/instance-family`.
662
+ */
663
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
395
664
  /**
396
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
665
+ * Allowed values for `topology.kubernetes.io/region`.
397
666
  */
398
- controllerRoleArn: string;
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'>;
399
668
  };
669
+ /**
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`).
671
+ */
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';
400
700
  };
401
701
  export type Invite = {
402
702
  /**
@@ -419,10 +719,95 @@ export type Invite = {
419
719
  * Generated unique invite code.
420
720
  */
421
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
+ }>;
422
807
  };
423
808
  export type Invoice = {
424
809
  /**
425
- * Unique identifier of the invoice. UUID v4 string in canonical form
810
+ * Unique identifier of the invoice.
426
811
  */
427
812
  id?: string;
428
813
  number?: string;
@@ -452,52 +837,97 @@ export type Invoice = {
452
837
  period_end: string;
453
838
  invoice_pdf?: string;
454
839
  };
455
- export type MarketplaceListing = {
840
+ export type MarketplaceListingFiles = {
456
841
  /**
457
- * Id of the chart listing
842
+ * Raw Chart.yaml content from the Helm chart
458
843
  */
459
- id: string;
844
+ chartYaml?: string;
460
845
  /**
461
- * Name of the chart listing
846
+ * Raw values.yaml content from the Helm chart
462
847
  */
463
- name: string;
848
+ valuesYaml?: string;
464
849
  /**
465
- * Author of the chart listing
850
+ * JSON schema for values.yaml as a string
466
851
  */
467
- developer: string;
852
+ valuesSchemaJson?: string;
853
+ };
854
+ export type MarketplaceListing = {
468
855
  /**
469
- * Short description of the chart listing
856
+ * Name of the chart
470
857
  */
471
- description: string;
858
+ name: string;
472
859
  /**
473
- * Logo of the chart listing
860
+ * Available versions of the chart
474
861
  */
475
- logoUrl: string;
862
+ versions: Array<string>;
476
863
  /**
477
- * Long description of the chart listing
864
+ * Version channels for the chart
478
865
  */
479
- longDescription: string;
866
+ version_channels: Array<string>;
480
867
  /**
481
- * Tags of the chart
868
+ * Latest version of the chart
482
869
  */
483
- categories: Array<string>;
484
- version_channels: Array<string>;
485
- value_schemas: Array<{
870
+ latestVersion: string;
871
+ /**
872
+ * Chart metadata
873
+ */
874
+ metadata?: {
875
+ /**
876
+ * Chart name from metadata
877
+ */
878
+ name: string;
486
879
  /**
487
- * Version of the chart.
880
+ * Chart version from metadata
488
881
  */
489
882
  version: string;
490
883
  /**
491
- * Schema of the chart values. JSON Schema as string
884
+ * Chart description
492
885
  */
493
- schema: string;
886
+ description?: string;
494
887
  /**
495
- * Schema of the chart values
888
+ * Application version
496
889
  */
497
- placeholder: string;
498
- }>;
890
+ appVersion?: string;
891
+ /**
892
+ * Helm API version
893
+ */
894
+ apiVersion?: string;
895
+ /**
896
+ * Chart keywords
897
+ */
898
+ keywords?: Array<string>;
899
+ /**
900
+ * Chart home URL
901
+ */
902
+ home?: string;
903
+ /**
904
+ * A URL to an SVG or PNG image to be used as an icon
905
+ */
906
+ icon?: string;
907
+ /**
908
+ * Chart source URLs
909
+ */
910
+ sources?: Array<string>;
911
+ /**
912
+ * Chart maintainers
913
+ */
914
+ maintainers?: Array<{
915
+ /**
916
+ * Maintainer name
917
+ */
918
+ name: string;
919
+ /**
920
+ * Maintainer email
921
+ */
922
+ email?: string;
923
+ }>;
924
+ };
499
925
  };
500
926
  export type OrganizationCreateInput = {
927
+ /**
928
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
929
+ */
930
+ type: 'business' | 'personal';
501
931
  /**
502
932
  * Email address used for billing as a string.
503
933
  */
@@ -519,6 +949,12 @@ export type OrganizationCreateInput = {
519
949
  */
520
950
  password: string;
521
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
+ };
522
958
  export type Organization = {
523
959
  /**
524
960
  * Unique identifier of the organization. UUID v4 string in canonical form
@@ -528,6 +964,10 @@ export type Organization = {
528
964
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
529
965
  */
530
966
  name?: string;
967
+ /**
968
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
969
+ */
970
+ type: 'business' | 'personal';
531
971
  /**
532
972
  * Creation date of the organization. ISO 8601 date string in UTC timezone
533
973
  */
@@ -552,6 +992,14 @@ export type Organization = {
552
992
  * Available number of Pro clusters that can be created.
553
993
  */
554
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;
555
1003
  /**
556
1004
  * Maximum number of fleets that can be created per cluster.
557
1005
  */
@@ -577,448 +1025,1469 @@ export type Organization = {
577
1025
  */
578
1026
  label: string;
579
1027
  }>;
1028
+ /**
1029
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
1030
+ */
1031
+ cfcr_storage_gb: number;
580
1032
  };
581
1033
  /**
582
1034
  * Status of the organization. Can be `active` or `closed`, or `suspended`.
583
1035
  */
584
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';
585
1041
  };
586
1042
  export type PaymentMethod = {
587
1043
  /**
588
- * 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.
589
1045
  */
590
1046
  id: string;
591
1047
  /**
592
- * Whether organization payment method was set up and ready to use for payments.
593
- */
594
- setup: boolean;
595
- /**
596
- * 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.
597
1049
  */
598
- type: 'card';
1050
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
599
1051
  /**
600
- * 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.
601
1053
  */
602
1054
  last4: string;
603
1055
  /**
604
- * 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.
605
1057
  */
606
1058
  exp_month: number;
607
1059
  /**
608
- * 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.
609
1061
  */
610
1062
  exp_year: number;
611
1063
  /**
612
- * 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.
613
1065
  */
614
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
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).
1081
+ */
1082
+ is_default: boolean;
615
1083
  };
616
- export type TokenCreateInput = {
1084
+ export type PlatformQuota = {
617
1085
  /**
618
- * Human readable access token name.
1086
+ * Maximum number of Basic clusters that can be created.
1087
+ */
1088
+ basic_clusters_max: number;
1089
+ /**
1090
+ * Available number of Basic clusters that can be created.
1091
+ */
1092
+ basic_clusters_available: number;
1093
+ /**
1094
+ * Maximum number of Pro clusters that can be created.
1095
+ */
1096
+ pro_clusters_max: number;
1097
+ /**
1098
+ * Available number of Pro clusters that can be created.
1099
+ */
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;
1109
+ /**
1110
+ * Maximum number of fleets that can be created per cluster.
1111
+ */
1112
+ fleets_max: number;
1113
+ /**
1114
+ * List of Cloudfleet cluster tiers available for the organization.
1115
+ */
1116
+ cluster_tiers: Array<string>;
1117
+ /**
1118
+ * List of Cloudfleet control plane regions available for the organization.
1119
+ */
1120
+ regions: Array<string>;
1121
+ /**
1122
+ * List of CFKE control plane versions available for the organization.
1123
+ */
1124
+ versions: Array<{
1125
+ /**
1126
+ * Id of the control plane version. Used in API calls.
1127
+ */
1128
+ id: string;
1129
+ /**
1130
+ * Label of the control plane version. Used in frontent UI.
1131
+ */
1132
+ label: string;
1133
+ }>;
1134
+ /**
1135
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
1136
+ */
1137
+ cfcr_storage_gb: number;
1138
+ };
1139
+ export type RegistryRepository = {
1140
+ /**
1141
+ * Repository name.
619
1142
  */
620
1143
  name: string;
621
1144
  /**
622
- * Role assumed by the token.
1145
+ * Registry region.
623
1146
  */
624
- role: 'Administrator' | 'User';
1147
+ region: string;
1148
+ /**
1149
+ * Full URI of the repository.
1150
+ */
1151
+ uri: string;
625
1152
  };
626
- export type Token = {
1153
+ export type RegistryRepositoryWithTags = {
627
1154
  /**
628
- * Human readable access token name.
1155
+ * Repository name.
629
1156
  */
630
1157
  name: string;
631
1158
  /**
632
- * Role assumed by the token.
1159
+ * Registry region.
633
1160
  */
634
- role: 'Administrator' | 'User';
1161
+ region: string;
635
1162
  /**
636
- * Generated unique identifier of the access token.
1163
+ * Full URI of the repository.
637
1164
  */
638
- id?: string;
1165
+ uri: string;
639
1166
  /**
640
- * Access token secret. Unmasked only during creation.
1167
+ * Array of tags in the repository.
641
1168
  */
642
- secret?: string;
1169
+ tags: Array<{
1170
+ /**
1171
+ * Tag name.
1172
+ */
1173
+ name: string;
1174
+ /**
1175
+ * Size of the tag in bytes.
1176
+ */
1177
+ size: number;
1178
+ /**
1179
+ * Media type of the manifest.
1180
+ */
1181
+ mediaType?: string;
1182
+ /**
1183
+ * Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).
1184
+ */
1185
+ platforms?: Array<string>;
1186
+ }>;
643
1187
  /**
644
- * Creation date of the access token. ISO 8601 date string in UTC timezone
1188
+ * Total size of all tags in the repository in bytes.
645
1189
  */
646
- date_created: string;
1190
+ totalSize: number;
647
1191
  };
648
- export type TokenUpdateInput = {
1192
+ export type RegistryTag = {
649
1193
  /**
650
- * Human readable access token name.
1194
+ * Tag name.
651
1195
  */
652
- name?: string;
1196
+ name: string;
653
1197
  /**
654
- * Role assumed by the token.
1198
+ * Manifest digest for pulling by digest.
655
1199
  */
656
- role?: 'Administrator' | 'User';
1200
+ digest: string;
1201
+ /**
1202
+ * Media type of the manifest.
1203
+ */
1204
+ mediaType?: string;
1205
+ /**
1206
+ * Manifest config metadata.
1207
+ */
1208
+ config?: {
1209
+ /**
1210
+ * Size of the config in bytes.
1211
+ */
1212
+ size: number;
1213
+ };
1214
+ /**
1215
+ * Array of layer metadata.
1216
+ */
1217
+ layers?: Array<{
1218
+ /**
1219
+ * Digest of the layer.
1220
+ */
1221
+ digest?: string;
1222
+ /**
1223
+ * Size of the layer in bytes.
1224
+ */
1225
+ size: number;
1226
+ }>;
1227
+ /**
1228
+ * Array of manifests for multi-arch images.
1229
+ */
1230
+ manifests?: Array<{
1231
+ /**
1232
+ * Digest of the manifest.
1233
+ */
1234
+ digest: string;
1235
+ /**
1236
+ * Platform information for the manifest.
1237
+ */
1238
+ platform?: {
1239
+ /**
1240
+ * Architecture of the platform.
1241
+ */
1242
+ architecture: string;
1243
+ /**
1244
+ * Operating system of the platform.
1245
+ */
1246
+ os: string;
1247
+ /**
1248
+ * Variant of the platform (e.g., v7, v8 for ARM).
1249
+ */
1250
+ variant?: string;
1251
+ };
1252
+ /**
1253
+ * Layers for this platform.
1254
+ */
1255
+ layers?: Array<{
1256
+ /**
1257
+ * Digest of the layer.
1258
+ */
1259
+ digest?: string;
1260
+ /**
1261
+ * Size of the layer in bytes.
1262
+ */
1263
+ size: number;
1264
+ }>;
1265
+ /**
1266
+ * Total size of this platform manifest in bytes.
1267
+ */
1268
+ size?: number;
1269
+ }>;
1270
+ /**
1271
+ * Total size of the tag in bytes.
1272
+ */
1273
+ size: number;
1274
+ /**
1275
+ * Registry region.
1276
+ */
1277
+ region: string;
1278
+ /**
1279
+ * Repository name.
1280
+ */
1281
+ repository: string;
1282
+ /**
1283
+ * Full URI of the tag.
1284
+ */
1285
+ uri: string;
657
1286
  };
658
- export type Usage = {
1287
+ export type RoadmapItemCreateInput = {
659
1288
  /**
660
- * Hour of the usage
1289
+ * Your suggestion in one or two sentences. It is reviewed before it appears on the roadmap.
661
1290
  */
662
- hour?: string;
1291
+ text: string;
1292
+ };
1293
+ export type RoadmapItem = {
663
1294
  /**
664
- * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1295
+ * Unique identifier of the roadmap item (Mongo ObjectId).
665
1296
  */
666
- cluster_id: string;
1297
+ id: string;
667
1298
  /**
668
- * Tier of the cluster.
1299
+ * Short description of the roadmap item.
669
1300
  */
670
- cluster_tier: 'basic' | 'pro' | '';
1301
+ text: string;
671
1302
  /**
672
- * The product the usage is associated with
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
+ };
1313
+ export type TicketAttachment = {
1314
+ /**
1315
+ * Unique identifier of the attachment (Mongo ObjectId).
1316
+ */
1317
+ id: string;
1318
+ /**
1319
+ * Original filename as uploaded.
673
1320
  */
674
- product: 'cfke_controlplane' | 'cfke_connected_nodes' | 'infra_compute' | 'infra_storage' | 'infra_loadbalancing' | 'infra_traffic' | 'cfcr_storage';
1321
+ filename: string;
675
1322
  /**
676
- * Name of the Kubernetes node
1323
+ * MIME content type of the attachment.
677
1324
  */
678
- node_name: string;
1325
+ content_type: string;
679
1326
  /**
680
- * SKU of the Kubernetes node
1327
+ * Size of the attachment in bytes.
681
1328
  */
682
- sku: string;
683
- cpu: number | '';
684
- price: number | '';
685
- value: number | '';
686
- total: number | '';
1329
+ size: number;
687
1330
  };
688
- export type UserCreateInput = {
1331
+ export type TicketCreateInput = {
689
1332
  /**
690
- * User email address.
1333
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
691
1334
  */
692
- email: string;
1335
+ category: 'billing' | 'technical' | 'general';
693
1336
  /**
694
- * User first name.
1337
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
695
1338
  */
696
- first_name: string;
1339
+ body: string;
697
1340
  /**
698
- * User last name.
1341
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
699
1342
  */
700
- last_name: string;
1343
+ properties?: {
1344
+ [key: string]: unknown;
1345
+ };
701
1346
  /**
702
- * Generated unique invite code.
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.
703
1348
  */
704
- code: string;
1349
+ grant_support_access?: boolean;
1350
+ };
1351
+ export type TicketMessageInput = {
705
1352
  /**
706
- * User password. Must be at least 8 characters long.
1353
+ * Reply body in markdown.
707
1354
  */
708
- password: string;
1355
+ body: string;
1356
+ };
1357
+ export type TicketMessage = {
709
1358
  /**
710
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1359
+ * Unique identifier of the message (Mongo ObjectId).
711
1360
  */
712
- status?: 'active' | 'inactive';
1361
+ id: string;
713
1362
  /**
714
- * User role. Can be 'Administrator', 'User'.
1363
+ * Message type. Internal notes are filtered out of customer-facing responses.
715
1364
  */
716
- role?: 'Administrator' | 'User';
1365
+ type: 'customer_reply' | 'agent_reply';
1366
+ /**
1367
+ * Message body in markdown.
1368
+ */
1369
+ body: string;
1370
+ /**
1371
+ * First name of the author. Null when not provided.
1372
+ */
1373
+ author_first_name?: string;
1374
+ /**
1375
+ * Last name of the author. Null when not provided.
1376
+ */
1377
+ author_last_name?: string;
1378
+ /**
1379
+ * Attachments associated with this message.
1380
+ */
1381
+ attachments?: Array<{
1382
+ /**
1383
+ * Unique identifier of the attachment (Mongo ObjectId).
1384
+ */
1385
+ id: string;
1386
+ /**
1387
+ * Original filename as uploaded.
1388
+ */
1389
+ filename: string;
1390
+ /**
1391
+ * MIME content type of the attachment.
1392
+ */
1393
+ content_type: string;
1394
+ /**
1395
+ * Size of the attachment in bytes.
1396
+ */
1397
+ size: number;
1398
+ }>;
1399
+ /**
1400
+ * Creation date of the message. ISO 8601 UTC.
1401
+ */
1402
+ date_created: string;
717
1403
  };
718
- export type User = {
1404
+ export type Ticket = {
719
1405
  /**
720
- * User email address.
1406
+ * Unique identifier of the ticket (Mongo ObjectId).
721
1407
  */
722
- email: string;
1408
+ id: string;
723
1409
  /**
724
- * User first name.
1410
+ * Current state of the ticket.
725
1411
  */
726
- first_name: string;
1412
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
727
1413
  /**
728
- * User last name.
1414
+ * Ticket category.
729
1415
  */
730
- last_name: string;
1416
+ category: 'billing' | 'technical' | 'general';
731
1417
  /**
732
- * User role. Can be 'Administrator', 'User'.
1418
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
1419
+ */
1420
+ summary: string;
1421
+ /**
1422
+ * Whether Cloudfleet support staff currently have access to the organization's resources. True once access is granted and until the ticket is closed.
1423
+ */
1424
+ support_access_granted: boolean;
1425
+ /**
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.
1435
+ */
1436
+ date_created: string;
1437
+ /**
1438
+ * Last update date of the ticket. ISO 8601 UTC.
1439
+ */
1440
+ date_updated: string;
1441
+ /**
1442
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1443
+ */
1444
+ messages?: Array<{
1445
+ /**
1446
+ * Unique identifier of the message (Mongo ObjectId).
1447
+ */
1448
+ id: string;
1449
+ /**
1450
+ * Message type. Internal notes are filtered out of customer-facing responses.
1451
+ */
1452
+ type: 'customer_reply' | 'agent_reply';
1453
+ /**
1454
+ * Message body in markdown.
1455
+ */
1456
+ body: string;
1457
+ /**
1458
+ * First name of the author. Null when not provided.
1459
+ */
1460
+ author_first_name?: string;
1461
+ /**
1462
+ * Last name of the author. Null when not provided.
1463
+ */
1464
+ author_last_name?: string;
1465
+ /**
1466
+ * Attachments associated with this message.
1467
+ */
1468
+ attachments?: Array<{
1469
+ /**
1470
+ * Unique identifier of the attachment (Mongo ObjectId).
1471
+ */
1472
+ id: string;
1473
+ /**
1474
+ * Original filename as uploaded.
1475
+ */
1476
+ filename: string;
1477
+ /**
1478
+ * MIME content type of the attachment.
1479
+ */
1480
+ content_type: string;
1481
+ /**
1482
+ * Size of the attachment in bytes.
1483
+ */
1484
+ size: number;
1485
+ }>;
1486
+ /**
1487
+ * Creation date of the message. ISO 8601 UTC.
1488
+ */
1489
+ date_created: string;
1490
+ }>;
1491
+ };
1492
+ export type TokenCreateInput = {
1493
+ /**
1494
+ * Human readable access token name.
1495
+ */
1496
+ name: string;
1497
+ /**
1498
+ * Role assumed by the token.
1499
+ */
1500
+ role: 'Administrator' | 'User';
1501
+ };
1502
+ export type Token = {
1503
+ /**
1504
+ * Human readable access token name.
1505
+ */
1506
+ name: string;
1507
+ /**
1508
+ * Role assumed by the token.
733
1509
  */
734
1510
  role: 'Administrator' | 'User';
735
1511
  /**
736
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1512
+ * Generated unique identifier of the access token.
737
1513
  */
738
- status: 'active' | 'inactive';
1514
+ id?: string;
739
1515
  /**
740
- * Unique identifier of the user. UUID v4 string in canonical form
1516
+ * Access token secret. Unmasked only during creation.
741
1517
  */
742
- id: string;
1518
+ secret?: string;
743
1519
  /**
744
- * Creation date of the user. ISO 8601 date string in UTC timezone
1520
+ * Creation date of the access token. ISO 8601 date string in UTC timezone
745
1521
  */
746
1522
  date_created: string;
747
1523
  };
748
- export type UserUpdateInput = {
1524
+ export type TokenUpdateInput = {
749
1525
  /**
750
- * User email address.
1526
+ * Human readable access token name.
751
1527
  */
752
- email?: string;
1528
+ name?: string;
1529
+ /**
1530
+ * Role assumed by the token.
1531
+ */
1532
+ role?: 'Administrator' | 'User';
1533
+ };
1534
+ export type UsageFacets = {
1535
+ /**
1536
+ * List of unique cluster IDs
1537
+ */
1538
+ cluster_id?: Array<string>;
1539
+ /**
1540
+ * List of unique products
1541
+ */
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'>;
1543
+ };
1544
+ export type UsageResponse = {
1545
+ /**
1546
+ * Usage data
1547
+ */
1548
+ data: Array<{
1549
+ /**
1550
+ * Hour of the usage
1551
+ */
1552
+ hour: string;
1553
+ /**
1554
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1555
+ */
1556
+ cluster_id: string;
1557
+ /**
1558
+ * The product the usage is associated with
1559
+ */
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';
1561
+ /**
1562
+ * Consumption
1563
+ */
1564
+ value: number;
1565
+ /**
1566
+ * Price per unit
1567
+ */
1568
+ price: number;
1569
+ /**
1570
+ * Total cost
1571
+ */
1572
+ total: number;
1573
+ }>;
1574
+ /**
1575
+ * Facets for filtering
1576
+ */
1577
+ facets: {
1578
+ /**
1579
+ * List of unique cluster IDs
1580
+ */
1581
+ cluster_id?: Array<string>;
1582
+ /**
1583
+ * List of unique products
1584
+ */
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'>;
1586
+ };
1587
+ };
1588
+ export type Usage = {
1589
+ /**
1590
+ * Hour of the usage
1591
+ */
1592
+ hour: string;
1593
+ /**
1594
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1595
+ */
1596
+ cluster_id: string;
1597
+ /**
1598
+ * The product the usage is associated with
1599
+ */
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';
1601
+ /**
1602
+ * Consumption
1603
+ */
1604
+ value: number;
1605
+ /**
1606
+ * Price per unit
1607
+ */
1608
+ price: number;
1609
+ /**
1610
+ * Total cost
1611
+ */
1612
+ total: number;
1613
+ };
1614
+ export type UserCreateInput = {
1615
+ /**
1616
+ * User email address.
1617
+ */
1618
+ email: string;
1619
+ /**
1620
+ * User first name.
1621
+ */
1622
+ first_name: string;
1623
+ /**
1624
+ * User last name.
1625
+ */
1626
+ last_name: string;
1627
+ /**
1628
+ * Generated unique invite code.
1629
+ */
1630
+ code: string;
1631
+ /**
1632
+ * User password. Must be at least 8 characters long.
1633
+ */
1634
+ password: string;
1635
+ };
1636
+ export type User = {
1637
+ /**
1638
+ * User email address.
1639
+ */
1640
+ email: string;
1641
+ /**
1642
+ * User first name.
1643
+ */
1644
+ first_name: string;
1645
+ /**
1646
+ * User last name.
1647
+ */
1648
+ last_name: string;
1649
+ /**
1650
+ * User role. Can be 'Administrator', 'User'.
1651
+ */
1652
+ role: 'Administrator' | 'User';
1653
+ /**
1654
+ * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1655
+ */
1656
+ status: 'active' | 'inactive';
1657
+ /**
1658
+ * Unique identifier of the user. UUID v4 string in canonical form
1659
+ */
1660
+ id: string;
1661
+ /**
1662
+ * Creation date of the user. ISO 8601 date string in UTC timezone
1663
+ */
1664
+ date_created: string;
1665
+ };
1666
+ export type UserUpdateInput = {
1667
+ /**
1668
+ * User email address.
1669
+ */
1670
+ email?: string;
1671
+ /**
1672
+ * User first name.
1673
+ */
1674
+ first_name?: string;
1675
+ /**
1676
+ * User last name.
1677
+ */
1678
+ last_name?: string;
1679
+ /**
1680
+ * User role. Can be 'Administrator', 'User'.
1681
+ */
1682
+ role?: 'Administrator' | 'User';
1683
+ /**
1684
+ * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1685
+ */
1686
+ status?: 'active' | 'inactive';
1687
+ };
1688
+ export type ListUserOrganizationsData = {
1689
+ body?: never;
1690
+ path: {
1691
+ /**
1692
+ * User email address.
1693
+ */
1694
+ email: string;
1695
+ };
1696
+ query?: never;
1697
+ url: '/users/organizations/{email}';
1698
+ };
1699
+ export type ListUserOrganizationsResponses = {
1700
+ /**
1701
+ * An array of organizations the user belongs to.
1702
+ */
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
+ }>;
1713
+ };
1714
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1715
+ export type ListUsersData = {
1716
+ body?: never;
1717
+ path?: never;
1718
+ query?: never;
1719
+ url: '/users';
1720
+ };
1721
+ export type ListUsersErrors = {
1722
+ /**
1723
+ * Not authenticated
1724
+ */
1725
+ 401: unknown;
1726
+ };
1727
+ export type ListUsersResponses = {
1728
+ /**
1729
+ * An array of users
1730
+ */
1731
+ 200: Array<User>;
1732
+ };
1733
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1734
+ export type CreateUserData = {
1735
+ body: UserCreateInput;
1736
+ path?: never;
1737
+ query?: never;
1738
+ url: '/users';
1739
+ };
1740
+ export type CreateUserResponses = {
1741
+ /**
1742
+ * Successfully created. Returns created user details.
1743
+ */
1744
+ 200: User;
1745
+ };
1746
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1747
+ export type DeleteUserData = {
1748
+ body?: never;
1749
+ path: {
1750
+ /**
1751
+ * Unique user identifier. UUID v4 string in canonical form
1752
+ */
1753
+ user_id: string;
1754
+ };
1755
+ query?: never;
1756
+ url: '/users/{user_id}';
1757
+ };
1758
+ export type DeleteUserErrors = {
1759
+ /**
1760
+ * Deleting own user is not allowed. Delete your organization instead.
1761
+ */
1762
+ 400: unknown;
1763
+ /**
1764
+ * Not authenticated
1765
+ */
1766
+ 401: unknown;
1767
+ };
1768
+ export type DeleteUserResponses = {
1769
+ /**
1770
+ * User profile information
1771
+ */
1772
+ 200: User;
1773
+ };
1774
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1775
+ export type GetUserData = {
1776
+ body?: never;
1777
+ path: {
1778
+ /**
1779
+ * Unique user identifier. UUID v4 string in canonical form
1780
+ */
1781
+ user_id: string;
1782
+ };
1783
+ query?: never;
1784
+ url: '/users/{user_id}';
1785
+ };
1786
+ export type GetUserErrors = {
1787
+ /**
1788
+ * Not authenticated
1789
+ */
1790
+ 401: unknown;
1791
+ };
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
+ };
1807
+ query?: never;
1808
+ url: '/users/{user_id}';
1809
+ };
1810
+ export type UpdateUserResponses = {
1811
+ /**
1812
+ * Successfully created. Returns created user details.
1813
+ */
1814
+ 200: User;
1815
+ };
1816
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1817
+ export type ListTokensData = {
1818
+ body?: never;
1819
+ path?: never;
1820
+ query?: never;
1821
+ url: '/tokens';
1822
+ };
1823
+ export type ListTokensErrors = {
1824
+ /**
1825
+ * Not authenticated
1826
+ */
1827
+ 401: unknown;
1828
+ };
1829
+ export type ListTokensResponses = {
1830
+ /**
1831
+ * Returns a list of access token details with masked secrets.
1832
+ */
1833
+ 200: Array<Token>;
1834
+ };
1835
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1836
+ export type CreateTokenData = {
1837
+ body: TokenCreateInput;
1838
+ path?: never;
1839
+ query?: never;
1840
+ url: '/tokens';
1841
+ };
1842
+ export type CreateTokenErrors = {
1843
+ /**
1844
+ * Not authenticated
1845
+ */
1846
+ 401: unknown;
1847
+ };
1848
+ export type CreateTokenResponses = {
1849
+ /**
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.
1869
+ */
1870
+ 200: unknown;
1871
+ };
1872
+ export type GetTokenData = {
1873
+ body?: never;
1874
+ path: {
1875
+ /**
1876
+ * Generated unique identifier of the access token.
1877
+ */
1878
+ token_id: string;
1879
+ };
1880
+ query?: never;
1881
+ url: '/tokens/{token_id}';
1882
+ };
1883
+ export type GetTokenErrors = {
1884
+ /**
1885
+ * Not authenticated
1886
+ */
1887
+ 401: unknown;
1888
+ };
1889
+ export type GetTokenResponses = {
1890
+ /**
1891
+ * Returns access token details with masked secret.
1892
+ */
1893
+ 200: Token;
1894
+ };
1895
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1896
+ export type UpdateTokenData = {
1897
+ body: TokenUpdateInput;
1898
+ path: {
1899
+ /**
1900
+ * Generated unique identifier of the access token.
1901
+ */
1902
+ token_id: string;
1903
+ };
1904
+ query?: never;
1905
+ url: '/tokens/{token_id}';
1906
+ };
1907
+ export type UpdateTokenErrors = {
1908
+ /**
1909
+ * Not authenticated
1910
+ */
1911
+ 401: unknown;
1912
+ };
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 = {
1921
+ body?: never;
1922
+ path: {
1923
+ /**
1924
+ * Generated unique identifier of the access token.
1925
+ */
1926
+ token_id: string;
1927
+ };
1928
+ query?: never;
1929
+ url: '/tokens/{token_id}/secret';
1930
+ };
1931
+ export type RegenerateTokenErrors = {
1932
+ /**
1933
+ * Not authenticated
1934
+ */
1935
+ 401: unknown;
1936
+ };
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 = {
1945
+ body?: never;
1946
+ path?: never;
1947
+ query?: never;
1948
+ url: '/tickets';
1949
+ };
1950
+ export type ListTicketsResponses = {
1951
+ /**
1952
+ * An array of tickets for the organization, newest first.
1953
+ */
1954
+ 200: Array<Ticket>;
1955
+ };
1956
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1957
+ export type CreateTicketData = {
1958
+ body: {
1959
+ /**
1960
+ * JSON-encoded TicketCreateInput.
1961
+ */
1962
+ payload?: string;
1963
+ attachments?: Array<Blob | File>;
1964
+ };
1965
+ path?: never;
1966
+ query?: never;
1967
+ url: '/tickets';
1968
+ };
1969
+ export type CreateTicketResponses = {
1970
+ /**
1971
+ * Ticket created.
1972
+ */
1973
+ 200: Ticket;
1974
+ };
1975
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
1976
+ export type CloseTicketData = {
1977
+ body?: never;
1978
+ path: {
1979
+ ticket_id: string;
1980
+ };
1981
+ query?: never;
1982
+ url: '/tickets/{ticket_id}';
1983
+ };
1984
+ export type CloseTicketResponses = {
1985
+ /**
1986
+ * Ticket closed.
1987
+ */
1988
+ 200: Ticket;
1989
+ };
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 = {
2000
+ /**
2001
+ * Ticket with messages (internal notes excluded).
2002
+ */
2003
+ 200: Ticket;
2004
+ };
2005
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
2006
+ export type GrantTicketSupportAccessData = {
2007
+ body?: never;
2008
+ path: {
2009
+ ticket_id: string;
2010
+ };
2011
+ query?: never;
2012
+ url: '/tickets/{ticket_id}/support-access';
2013
+ };
2014
+ export type GrantTicketSupportAccessErrors = {
2015
+ /**
2016
+ * Ticket is closed. Open a new ticket instead.
2017
+ */
2018
+ 409: unknown;
2019
+ };
2020
+ export type GrantTicketSupportAccessResponses = {
2021
+ /**
2022
+ * Support access granted.
2023
+ */
2024
+ 200: Ticket;
2025
+ };
2026
+ export type GrantTicketSupportAccessResponse = GrantTicketSupportAccessResponses[keyof GrantTicketSupportAccessResponses];
2027
+ export type ReplyTicketData = {
2028
+ body: {
2029
+ /**
2030
+ * JSON-encoded TicketMessageInput.
2031
+ */
2032
+ payload?: string;
2033
+ attachments?: Array<Blob | File>;
2034
+ };
2035
+ path: {
2036
+ ticket_id: string;
2037
+ };
2038
+ query?: never;
2039
+ url: '/tickets/{ticket_id}/messages';
2040
+ };
2041
+ export type ReplyTicketErrors = {
2042
+ /**
2043
+ * Ticket is closed. Open a new ticket instead.
2044
+ */
2045
+ 409: unknown;
2046
+ };
2047
+ export type ReplyTicketResponses = {
2048
+ /**
2049
+ * Reply appended.
2050
+ */
2051
+ 200: TicketMessage;
2052
+ };
2053
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
2054
+ export type GetTicketAttachmentData = {
2055
+ body?: never;
2056
+ path: {
2057
+ ticket_id: string;
2058
+ attachment_id: string;
2059
+ };
2060
+ query?: never;
2061
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
2062
+ };
2063
+ export type GetTicketAttachmentResponses = {
2064
+ /**
2065
+ * Attachment binary stream.
2066
+ */
2067
+ 200: Blob | File;
2068
+ };
2069
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
2070
+ export type ListRoadmapData = {
2071
+ body?: never;
2072
+ path?: never;
2073
+ query?: never;
2074
+ url: '/roadmap';
2075
+ };
2076
+ export type ListRoadmapResponses = {
2077
+ /**
2078
+ * An array of roadmap items, newest first.
2079
+ */
2080
+ 200: Array<RoadmapItem>;
2081
+ };
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 = {
2090
+ /**
2091
+ * Suggestion submitted for review.
2092
+ */
2093
+ 200: RoadmapItem;
2094
+ };
2095
+ export type SuggestRoadmapResponse = SuggestRoadmapResponses[keyof SuggestRoadmapResponses];
2096
+ export type UnvoteRoadmapData = {
2097
+ body?: never;
2098
+ path: {
2099
+ item_id: string;
2100
+ };
2101
+ query?: never;
2102
+ url: '/roadmap/{item_id}/vote';
2103
+ };
2104
+ export type UnvoteRoadmapErrors = {
753
2105
  /**
754
- * User first name.
2106
+ * Roadmap item not found.
755
2107
  */
756
- first_name?: string;
2108
+ 404: unknown;
2109
+ };
2110
+ export type UnvoteRoadmapResponses = {
757
2111
  /**
758
- * User last name.
2112
+ * Vote removed. Returns the item without a vote.
759
2113
  */
760
- last_name?: string;
2114
+ 200: RoadmapItem;
2115
+ };
2116
+ export type UnvoteRoadmapResponse = UnvoteRoadmapResponses[keyof UnvoteRoadmapResponses];
2117
+ export type VoteRoadmapData = {
2118
+ body: RoadmapVoteInput;
2119
+ path: {
2120
+ item_id: string;
2121
+ };
2122
+ query?: never;
2123
+ url: '/roadmap/{item_id}/vote';
2124
+ };
2125
+ export type VoteRoadmapErrors = {
761
2126
  /**
762
- * User role. Can be 'Administrator', 'User'.
2127
+ * Roadmap item not found.
763
2128
  */
764
- role?: 'Administrator' | 'User';
2129
+ 404: unknown;
2130
+ };
2131
+ export type VoteRoadmapResponses = {
765
2132
  /**
766
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
2133
+ * Vote saved. Returns the item with your vote.
767
2134
  */
768
- status?: 'active' | 'inactive';
2135
+ 200: RoadmapItem;
769
2136
  };
770
- export type GetUsageData = {
2137
+ export type VoteRoadmapResponse = VoteRoadmapResponses[keyof VoteRoadmapResponses];
2138
+ export type ListRepositoriesData = {
771
2139
  body?: never;
772
2140
  path?: never;
773
2141
  query?: never;
774
- url: '/billing/usage';
2142
+ url: '/registry';
775
2143
  };
776
- export type GetUsageErrors = {
2144
+ export type ListRepositoriesErrors = {
777
2145
  /**
778
2146
  * Not authenticated
779
2147
  */
780
2148
  401: unknown;
2149
+ /**
2150
+ * Internal server error
2151
+ */
2152
+ 500: unknown;
781
2153
  };
782
- export type GetUsageResponses = {
2154
+ export type ListRepositoriesResponses = {
783
2155
  /**
784
- * An array of usage records.
2156
+ * List of repositories
785
2157
  */
786
- 200: Array<Usage>;
2158
+ 200: Array<RegistryRepository>;
787
2159
  };
788
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
789
- export type GetPaymentMethodData = {
2160
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
2161
+ export type ListTagsData = {
790
2162
  body?: never;
791
- path?: never;
2163
+ path: {
2164
+ /**
2165
+ * Region where the repository is located
2166
+ */
2167
+ region: string;
2168
+ /**
2169
+ * Name of the repository
2170
+ */
2171
+ repository: string;
2172
+ };
792
2173
  query?: never;
793
- url: '/billing/payment-method';
2174
+ url: '/registry/{region}/{repository}';
794
2175
  };
795
- export type GetPaymentMethodErrors = {
2176
+ export type ListTagsErrors = {
2177
+ /**
2178
+ * Not authenticated
2179
+ */
2180
+ 401: unknown;
796
2181
  /**
797
- * Returns 404 Not Found if the organization does not have a payment method set up.
2182
+ * Repository not found
798
2183
  */
799
2184
  404: unknown;
2185
+ /**
2186
+ * Internal server error
2187
+ */
2188
+ 500: unknown;
800
2189
  };
801
- export type GetPaymentMethodResponses = {
2190
+ export type ListTagsResponses = {
802
2191
  /**
803
- * Redacted payment card information.
2192
+ * Repository with tags
804
2193
  */
805
- 200: PaymentMethod;
2194
+ 200: RegistryRepositoryWithTags;
806
2195
  };
807
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
808
- export type GetPaymentMethodSecretData = {
2196
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2197
+ export type DeleteTagData = {
809
2198
  body?: never;
810
- path?: never;
2199
+ path: {
2200
+ /**
2201
+ * Region where the repository is located
2202
+ */
2203
+ region: string;
2204
+ /**
2205
+ * Name of the repository
2206
+ */
2207
+ repository: string;
2208
+ /**
2209
+ * Name of the tag
2210
+ */
2211
+ tag: string;
2212
+ };
811
2213
  query?: never;
812
- url: '/billing/payment-method';
2214
+ url: '/registry/{region}/{repository}/{tag}';
813
2215
  };
814
- export type GetPaymentMethodSecretResponses = {
2216
+ export type DeleteTagErrors = {
815
2217
  /**
816
- * 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.
817
- *
2218
+ * Not authenticated
818
2219
  */
819
- 200: {
2220
+ 401: unknown;
2221
+ /**
2222
+ * Tag not found
2223
+ */
2224
+ 404: unknown;
2225
+ /**
2226
+ * Internal server error
2227
+ */
2228
+ 500: unknown;
2229
+ };
2230
+ export type DeleteTagResponses = {
2231
+ /**
2232
+ * Tag successfully deleted
2233
+ */
2234
+ 200: unknown;
2235
+ };
2236
+ export type GetTagData = {
2237
+ body?: never;
2238
+ path: {
820
2239
  /**
821
- * The client secret.
2240
+ * Region where the repository is located
822
2241
  */
823
- 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;
824
2251
  };
825
- };
826
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
827
- export type ListInvoicesData = {
828
- body?: never;
829
- path?: never;
830
2252
  query?: never;
831
- url: '/billing/invoices';
2253
+ url: '/registry/{region}/{repository}/{tag}';
832
2254
  };
833
- export type ListInvoicesErrors = {
2255
+ export type GetTagErrors = {
834
2256
  /**
835
2257
  * Not authenticated
836
2258
  */
837
2259
  401: unknown;
2260
+ /**
2261
+ * Tag not found
2262
+ */
2263
+ 404: unknown;
2264
+ /**
2265
+ * Internal server error
2266
+ */
2267
+ 500: unknown;
838
2268
  };
839
- export type ListInvoicesResponses = {
2269
+ export type GetTagResponses = {
840
2270
  /**
841
- * An array of usage records.
2271
+ * Tag details
842
2272
  */
843
- 200: Array<Invoice>;
2273
+ 200: RegistryTag;
844
2274
  };
845
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
846
- export type GetContactData = {
2275
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2276
+ export type GetOrganizationData = {
847
2277
  body?: never;
848
2278
  path?: never;
849
2279
  query?: never;
850
- url: '/billing/contact';
2280
+ url: '/organization';
851
2281
  };
852
- export type GetContactResponses = {
2282
+ export type GetOrganizationResponses = {
853
2283
  /**
854
- * Returns a single object containing organization contact and billing address details.
2284
+ * Returns a single object containing organization details.
855
2285
  */
856
- 200: BillingContact;
2286
+ 200: Organization;
857
2287
  };
858
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
859
- export type UpdateContactData = {
860
- body: BillingContact;
2288
+ export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2289
+ export type CreateOrganizationData = {
2290
+ body: OrganizationCreateInput;
861
2291
  path?: never;
862
2292
  query?: never;
863
- url: '/billing/contact';
2293
+ url: '/organization';
864
2294
  };
865
- export type UpdateContactResponses = {
2295
+ export type CreateOrganizationResponses = {
866
2296
  /**
867
- * Successfully updated. Returns updated organization details.
2297
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2298
+ *
868
2299
  */
869
- 200: BillingContact;
2300
+ 200: OrganizationCreateOutput;
870
2301
  };
871
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
872
- export type GetCreditsData = {
873
- body?: never;
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;
2311
+ /**
2312
+ * Method-specific parameters
2313
+ */
2314
+ params?: {
2315
+ [key: string]: unknown;
2316
+ };
2317
+ };
874
2318
  path?: never;
875
2319
  query?: never;
876
- url: '/billing/credits';
2320
+ url: '/mcp';
877
2321
  };
878
- export type GetCreditsErrors = {
2322
+ export type PostMcpErrors = {
879
2323
  /**
880
2324
  * Not authenticated
881
2325
  */
882
2326
  401: unknown;
883
2327
  };
884
- export type GetCreditsResponses = {
2328
+ export type PostMcpResponses = {
885
2329
  /**
886
- * An array of the applied promotional credits records.
2330
+ * JSON-RPC 2.0 success or error response
887
2331
  */
888
- 200: Array<BillingCredits>;
889
- };
890
- export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
891
- export type RedeemCreditsData = {
892
- body: {
893
- /**
894
- * Promotional code to redeem
895
- */
896
- code?: string;
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
+ };
897
2342
  };
2343
+ };
2344
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2345
+ export type ListMarketplaceChartsData = {
2346
+ body?: never;
898
2347
  path?: never;
899
2348
  query?: never;
900
- url: '/billing/credits';
2349
+ url: '/marketplace';
901
2350
  };
902
- export type RedeemCreditsErrors = {
2351
+ export type ListMarketplaceChartsErrors = {
903
2352
  /**
904
2353
  * Not authenticated
905
2354
  */
906
2355
  401: unknown;
907
2356
  };
908
- export type RedeemCreditsResponses = {
2357
+ export type ListMarketplaceChartsResponses = {
909
2358
  /**
910
- * Successfully created a new organization.
2359
+ * An array of chart listings in the marketplace.
911
2360
  */
912
- 200: unknown;
2361
+ 200: Array<MarketplaceListing>;
913
2362
  };
914
- export type ListChartsData = {
2363
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2364
+ export type GetMarketplaceChartFilesData = {
915
2365
  body?: never;
916
2366
  path: {
917
2367
  /**
918
- * Unique identifier of the cluster. UUID v4 string in canonical form
2368
+ * Name of the chart in the marketplace.
919
2369
  */
920
- cluster_id: string;
2370
+ chart_name: string;
2371
+ /**
2372
+ * Version channel pattern to match (e.g., "1.31.x-cfke.x" for latest 1.31 patch, "1.x.x-cfke.x" for latest 1.x minor).
2373
+ */
2374
+ version_channel: string;
921
2375
  };
922
2376
  query?: never;
923
- url: '/clusters/{cluster_id}/charts';
2377
+ url: '/marketplace/{chart_name}/files/{version_channel}';
924
2378
  };
925
- export type ListChartsErrors = {
2379
+ export type GetMarketplaceChartFilesErrors = {
2380
+ /**
2381
+ * Chart not found or no version matches the channel
2382
+ */
2383
+ 404: unknown;
2384
+ };
2385
+ export type GetMarketplaceChartFilesResponses = {
2386
+ /**
2387
+ * Returns an object containing the chart files for the latest matching version.
2388
+ */
2389
+ 200: MarketplaceListingFiles;
2390
+ };
2391
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2392
+ export type ListInvitesData = {
2393
+ body?: never;
2394
+ path?: never;
2395
+ query?: never;
2396
+ url: '/invites';
2397
+ };
2398
+ export type ListInvitesErrors = {
926
2399
  /**
927
2400
  * Not authenticated
928
2401
  */
929
2402
  401: unknown;
930
2403
  };
931
- export type ListChartsResponses = {
2404
+ export type ListInvitesResponses = {
932
2405
  /**
933
- * An array of charts
2406
+ * An array of invites
934
2407
  */
935
- 200: Array<Chart>;
2408
+ 200: Array<Invite>;
936
2409
  };
937
- export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
938
- export type CreateChartData = {
939
- body: ChartCreateInput;
940
- path: {
941
- /**
942
- * Unique identifier of the cluster. UUID v4 string in canonical form
943
- */
944
- cluster_id: string;
945
- };
2410
+ export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
2411
+ export type CreateInviteData = {
2412
+ body: InviteCreateInput;
2413
+ path?: never;
946
2414
  query?: never;
947
- url: '/clusters/{cluster_id}/charts';
2415
+ url: '/invites';
948
2416
  };
949
- export type CreateChartResponses = {
2417
+ export type CreateInviteResponses = {
950
2418
  /**
951
- * Successfully created. Returns created Chart ID.
2419
+ * Successfully created. Returns created invite details.
952
2420
  */
953
- 200: string;
2421
+ 200: Invite;
954
2422
  };
955
- export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
956
- export type DeleteChartData = {
2423
+ export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
2424
+ export type GetInviteData = {
957
2425
  body?: never;
958
2426
  path: {
959
2427
  /**
960
- * Unique identifier of the cluster. UUID v4 string in canonical form
961
- */
962
- cluster_id: string;
963
- /**
964
- * Chart deployment name as the unique identifier of the chart.
2428
+ * Invitation code
965
2429
  */
966
- chart_name: string;
2430
+ code: string;
967
2431
  };
968
2432
  query?: never;
969
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2433
+ url: '/invites/{code}';
970
2434
  };
971
- export type DeleteChartResponses = {
2435
+ export type GetInviteResponses = {
972
2436
  /**
973
- * Successfully deleted.
2437
+ * The invitation code is valid. Returns the invited email and organization.
974
2438
  */
975
- 200: string;
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
+ };
976
2449
  };
977
- export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
978
- export type GetChartData = {
2450
+ export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
2451
+ export type DeleteInviteData = {
979
2452
  body?: never;
980
2453
  path: {
981
2454
  /**
982
- * Unique identifier of the cluster. UUID v4 string in canonical form
983
- */
984
- cluster_id: string;
985
- /**
986
- * Chart deployment name as the unique identifier of the chart.
2455
+ * User email address
987
2456
  */
988
- chart_name: string;
2457
+ email: string;
989
2458
  };
990
2459
  query?: never;
991
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2460
+ url: '/invites/{email}';
992
2461
  };
993
- export type GetChartResponses = {
2462
+ export type DeleteInviteResponses = {
994
2463
  /**
995
- * Returns a single object containing chart details.
2464
+ * Successfully deleted.
996
2465
  */
997
- 200: Chart;
2466
+ 200: unknown;
998
2467
  };
999
- export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
1000
- export type UpdateChartData = {
1001
- body: ChartUpdateInput;
2468
+ export type QueryClusterData = {
2469
+ body?: never;
1002
2470
  path: {
1003
2471
  /**
1004
2472
  * Unique identifier of the cluster. UUID v4 string in canonical form
1005
2473
  */
1006
2474
  cluster_id: string;
1007
- /**
1008
- * Chart deployment name as the unique identifier of the chart.
1009
- */
1010
- chart_name: string;
1011
2475
  };
1012
2476
  query?: never;
1013
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2477
+ url: '/clusters/{cluster_id}/query';
1014
2478
  };
1015
- export type UpdateChartResponses = {
2479
+ export type QueryClusterErrors = {
1016
2480
  /**
1017
- * Successfully updated.
2481
+ * Not authenticated
1018
2482
  */
1019
- 200: string;
2483
+ 401: unknown;
2484
+ };
2485
+ export type QueryClusterResponses = {
2486
+ /**
2487
+ * Kubernetes API response
2488
+ */
2489
+ 200: unknown;
1020
2490
  };
1021
- export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
1022
2491
  export type ListFleetsData = {
1023
2492
  body?: never;
1024
2493
  path: {
@@ -1059,6 +2528,10 @@ export type CreateFleetErrors = {
1059
2528
  * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1060
2529
  */
1061
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;
1062
2535
  };
1063
2536
  export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1064
2537
  export type CreateFleetResponses = {
@@ -1083,6 +2556,13 @@ export type DeleteFleetData = {
1083
2556
  query?: never;
1084
2557
  url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1085
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];
1086
2566
  export type DeleteFleetResponses = {
1087
2567
  /**
1088
2568
  * Successfully deleted.
@@ -1132,6 +2612,10 @@ export type UpdateFleetErrors = {
1132
2612
  * Organization must have a valid payment method configured to access this endpoint.
1133
2613
  */
1134
2614
  402: string;
2615
+ /**
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.
2617
+ */
2618
+ 409: string;
1135
2619
  };
1136
2620
  export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1137
2621
  export type UpdateFleetResponses = {
@@ -1141,7 +2625,7 @@ export type UpdateFleetResponses = {
1141
2625
  200: string;
1142
2626
  };
1143
2627
  export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1144
- export type QueryClusterData = {
2628
+ export type ListChartsData = {
1145
2629
  body?: never;
1146
2630
  path: {
1147
2631
  /**
@@ -1150,525 +2634,516 @@ export type QueryClusterData = {
1150
2634
  cluster_id: string;
1151
2635
  };
1152
2636
  query?: never;
1153
- url: '/clusters/{cluster_id}/query';
1154
- };
1155
- export type QueryClusterErrors = {
1156
- /**
1157
- * Not authenticated
1158
- */
1159
- 401: unknown;
1160
- };
1161
- export type QueryClusterResponses = {
1162
- /**
1163
- * Kubernetes API response
1164
- */
1165
- 200: unknown;
1166
- };
1167
- export type ListClustersData = {
1168
- body?: never;
1169
- path?: never;
1170
- query?: never;
1171
- url: '/clusters';
2637
+ url: '/clusters/{cluster_id}/charts';
1172
2638
  };
1173
- export type ListClustersErrors = {
2639
+ export type ListChartsErrors = {
1174
2640
  /**
1175
2641
  * Not authenticated
1176
2642
  */
1177
2643
  401: unknown;
1178
2644
  };
1179
- export type ListClustersResponses = {
2645
+ export type ListChartsResponses = {
1180
2646
  /**
1181
- * An array of clusters
2647
+ * An array of charts
1182
2648
  */
1183
- 200: Array<Cluster>;
2649
+ 200: Array<Chart>;
1184
2650
  };
1185
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1186
- export type CreateClusterData = {
1187
- body: ClusterCreateInput;
1188
- path?: never;
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
+ };
1189
2660
  query?: never;
1190
- url: '/clusters';
2661
+ url: '/clusters/{cluster_id}/charts';
1191
2662
  };
1192
- export type CreateClusterErrors = {
2663
+ export type CreateChartErrors = {
1193
2664
  /**
1194
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
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.
1195
2666
  */
1196
- 402: string;
2667
+ 409: string;
1197
2668
  };
1198
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1199
- export type CreateClusterResponses = {
2669
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2670
+ export type CreateChartResponses = {
1200
2671
  /**
1201
- * Successfully created. Returns created Cluster ID.
2672
+ * Successfully created. Returns created Chart ID.
1202
2673
  */
1203
2674
  200: string;
1204
2675
  };
1205
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1206
- export type DeleteClusterData = {
2676
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2677
+ export type DeleteChartData = {
1207
2678
  body?: never;
1208
2679
  path: {
1209
2680
  /**
1210
2681
  * Unique identifier of the cluster. UUID v4 string in canonical form
1211
2682
  */
1212
2683
  cluster_id: string;
2684
+ /**
2685
+ * Chart deployment name as the unique identifier of the chart.
2686
+ */
2687
+ chart_name: string;
1213
2688
  };
1214
2689
  query?: never;
1215
- url: '/clusters/{cluster_id}';
2690
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1216
2691
  };
1217
- export type DeleteClusterResponses = {
2692
+ export type DeleteChartErrors = {
2693
+ /**
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.
2695
+ */
2696
+ 409: string;
2697
+ };
2698
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2699
+ export type DeleteChartResponses = {
1218
2700
  /**
1219
2701
  * Successfully deleted.
1220
2702
  */
1221
2703
  200: string;
1222
2704
  };
1223
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1224
- export type GetClusterData = {
2705
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2706
+ export type GetChartData = {
1225
2707
  body?: never;
1226
2708
  path: {
1227
2709
  /**
1228
2710
  * Unique identifier of the cluster. UUID v4 string in canonical form
1229
2711
  */
1230
2712
  cluster_id: string;
1231
- };
1232
- query?: never;
1233
- url: '/clusters/{cluster_id}';
1234
- };
1235
- export type GetClusterResponses = {
1236
- /**
1237
- * Returns a single object containing cluster details.
1238
- */
1239
- 200: Cluster;
1240
- };
1241
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1242
- export type UpdateClusterData = {
1243
- body: ClusterUpdateInput;
1244
- path: {
1245
2713
  /**
1246
- * Unique identifier of the cluster. UUID v4 string in canonical form
2714
+ * Chart deployment name as the unique identifier of the chart.
1247
2715
  */
1248
- cluster_id: string;
2716
+ chart_name: string;
1249
2717
  };
1250
2718
  query?: never;
1251
- url: '/clusters/{cluster_id}';
2719
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1252
2720
  };
1253
- export type UpdateClusterResponses = {
2721
+ export type GetChartResponses = {
1254
2722
  /**
1255
- * Successfully updated. Returns updated cluster details.
2723
+ * Returns a single object containing chart details.
1256
2724
  */
1257
- 200: Cluster;
2725
+ 200: Chart;
1258
2726
  };
1259
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1260
- export type GetJoinInformationData = {
1261
- body?: never;
2727
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2728
+ export type UpdateChartData = {
2729
+ body: ChartUpdateInput;
1262
2730
  path: {
1263
2731
  /**
1264
2732
  * Unique identifier of the cluster. UUID v4 string in canonical form
1265
2733
  */
1266
2734
  cluster_id: string;
2735
+ /**
2736
+ * Chart deployment name as the unique identifier of the chart.
2737
+ */
2738
+ chart_name: string;
1267
2739
  };
1268
2740
  query?: never;
1269
- url: '/clusters/{cluster_id}/join_information';
2741
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1270
2742
  };
1271
- export type GetJoinInformationErrors = {
2743
+ export type UpdateChartErrors = {
1272
2744
  /**
1273
- * Not authenticated
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.
1274
2746
  */
1275
- 401: unknown;
2747
+ 409: string;
1276
2748
  };
1277
- export type GetJoinInformationResponses = {
2749
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2750
+ export type UpdateChartResponses = {
1278
2751
  /**
1279
- * An object of cluster join information
2752
+ * Successfully updated.
1280
2753
  */
1281
- 200: ClusterJoinInformation;
2754
+ 200: string;
1282
2755
  };
1283
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1284
- export type ListInvitesData = {
2756
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2757
+ export type ListClustersData = {
1285
2758
  body?: never;
1286
2759
  path?: never;
1287
2760
  query?: never;
1288
- url: '/invites';
2761
+ url: '/clusters';
1289
2762
  };
1290
- export type ListInvitesErrors = {
2763
+ export type ListClustersErrors = {
1291
2764
  /**
1292
2765
  * Not authenticated
1293
2766
  */
1294
2767
  401: unknown;
1295
2768
  };
1296
- export type ListInvitesResponses = {
2769
+ export type ListClustersResponses = {
1297
2770
  /**
1298
- * An array of invites
2771
+ * An array of clusters
1299
2772
  */
1300
- 200: Array<Invite>;
2773
+ 200: Array<Cluster>;
1301
2774
  };
1302
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1303
- export type CreateInviteData = {
1304
- body: {
1305
- /**
1306
- * User email address
1307
- */
1308
- email?: string;
1309
- };
2775
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2776
+ export type CreateClusterData = {
2777
+ body: ClusterCreateInput;
1310
2778
  path?: never;
1311
2779
  query?: never;
1312
- url: '/invites';
2780
+ url: '/clusters';
1313
2781
  };
1314
- export type CreateInviteResponses = {
2782
+ export type CreateClusterErrors = {
1315
2783
  /**
1316
- * Successfully created. Returns created invite details.
2784
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1317
2785
  */
1318
- 200: Invite;
1319
- };
1320
- export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
1321
- export type GetInviteData = {
1322
- body?: never;
1323
- path: {
1324
- /**
1325
- * Invitation code
1326
- */
1327
- code: string;
1328
- };
1329
- query?: never;
1330
- url: '/invites/{code}';
2786
+ 402: string;
1331
2787
  };
1332
- export type GetInviteResponses = {
2788
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2789
+ export type CreateClusterResponses = {
1333
2790
  /**
1334
- * Returns a single object containing invite details.
2791
+ * Successfully created. Returns created Cluster ID.
1335
2792
  */
1336
- 200: Invite;
2793
+ 200: string;
1337
2794
  };
1338
- export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1339
- export type DeleteInviteData = {
2795
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2796
+ export type DeleteClusterData = {
1340
2797
  body?: never;
1341
2798
  path: {
1342
2799
  /**
1343
- * User email address
2800
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1344
2801
  */
1345
- email: string;
2802
+ cluster_id: string;
1346
2803
  };
1347
2804
  query?: never;
1348
- url: '/invites/{email}';
2805
+ url: '/clusters/{cluster_id}';
1349
2806
  };
1350
- export type DeleteInviteResponses = {
2807
+ export type DeleteClusterErrors = {
1351
2808
  /**
1352
- * Successfully deleted.
2809
+ * Cluster not found; it does not exist or has already been deleted.
1353
2810
  */
1354
- 200: unknown;
1355
- };
1356
- export type ListMarketplaceChartsData = {
1357
- body?: never;
1358
- path?: never;
1359
- query?: never;
1360
- url: '/marketplace';
1361
- };
1362
- export type ListMarketplaceChartsErrors = {
2811
+ 404: unknown;
1363
2812
  /**
1364
- * Not authenticated
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.
1365
2814
  */
1366
- 401: unknown;
2815
+ 409: string;
2816
+ /**
2817
+ * Transient failure tearing down the cluster; retry the request.
2818
+ */
2819
+ 503: unknown;
1367
2820
  };
1368
- export type ListMarketplaceChartsResponses = {
2821
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2822
+ export type DeleteClusterResponses = {
1369
2823
  /**
1370
- * An array of chart listings in the marketplace.
2824
+ * Successfully deleted. The cluster has been torn down.
1371
2825
  */
1372
- 200: Array<MarketplaceListing>;
2826
+ 200: string;
1373
2827
  };
1374
- export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
1375
- export type GetMarketplaceChartData = {
2828
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2829
+ export type GetClusterData = {
1376
2830
  body?: never;
1377
2831
  path: {
1378
2832
  /**
1379
- * Unique identifier of the chart listing in the marketplace.
2833
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1380
2834
  */
1381
- listing_id: string;
2835
+ cluster_id: string;
1382
2836
  };
1383
2837
  query?: never;
1384
- url: '/marketplace/{listing_id}';
2838
+ url: '/clusters/{cluster_id}';
1385
2839
  };
1386
- export type GetMarketplaceChartResponses = {
2840
+ export type GetClusterResponses = {
1387
2841
  /**
1388
- * Returns an object containing the chart listing details.
2842
+ * Returns a single object containing cluster details.
1389
2843
  */
1390
- 200: MarketplaceListing;
2844
+ 200: Cluster;
1391
2845
  };
1392
- export type GetMarketplaceChartResponse = GetMarketplaceChartResponses[keyof GetMarketplaceChartResponses];
1393
- export type GetOrganizationData = {
1394
- body?: never;
1395
- path?: never;
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
+ };
1396
2855
  query?: never;
1397
- url: '/organization';
2856
+ url: '/clusters/{cluster_id}';
1398
2857
  };
1399
- export type GetOrganizationResponses = {
2858
+ export type UpdateClusterErrors = {
1400
2859
  /**
1401
- * Returns a single object containing organization details.
1402
- */
1403
- 200: Organization;
1404
- };
1405
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
1406
- export type CreateOrganizationData = {
1407
- body: OrganizationCreateInput;
1408
- path?: never;
1409
- query?: never;
1410
- url: '/organization';
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;
1411
2863
  };
1412
- export type CreateOrganizationResponses = {
2864
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2865
+ export type UpdateClusterResponses = {
1413
2866
  /**
1414
- * Successfully created a new organization.
2867
+ * Successfully updated. Returns updated cluster details.
1415
2868
  */
1416
- 200: unknown;
2869
+ 200: Cluster;
1417
2870
  };
1418
- export type ListTokensData = {
2871
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2872
+ export type GetJoinInformationData = {
1419
2873
  body?: never;
1420
- path?: never;
2874
+ path: {
2875
+ /**
2876
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2877
+ */
2878
+ cluster_id: string;
2879
+ };
1421
2880
  query?: never;
1422
- url: '/tokens';
2881
+ url: '/clusters/{cluster_id}/join_information';
1423
2882
  };
1424
- export type ListTokensErrors = {
2883
+ export type GetJoinInformationErrors = {
1425
2884
  /**
1426
2885
  * Not authenticated
1427
2886
  */
1428
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;
1429
2896
  };
1430
- export type ListTokensResponses = {
2897
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2898
+ export type GetJoinInformationResponses = {
1431
2899
  /**
1432
- * Returns a list of access token details with masked secrets.
2900
+ * An object of cluster join information
1433
2901
  */
1434
- 200: Array<Token>;
2902
+ 200: ClusterJoinInformation;
1435
2903
  };
1436
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1437
- export type CreateTokenData = {
1438
- body: TokenCreateInput;
2904
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2905
+ export type GetUsageData = {
2906
+ body?: never;
1439
2907
  path?: never;
1440
- query?: never;
1441
- 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';
1442
2915
  };
1443
- export type CreateTokenErrors = {
2916
+ export type GetUsageErrors = {
1444
2917
  /**
1445
2918
  * Not authenticated
1446
2919
  */
1447
2920
  401: unknown;
1448
2921
  };
1449
- export type CreateTokenResponses = {
2922
+ export type GetUsageResponses = {
1450
2923
  /**
1451
- * Successfully created. Returns created token details with unmasked/raw secret.
2924
+ * Usage data with facets for filtering
1452
2925
  */
1453
- 200: Token;
2926
+ 200: UsageResponse;
1454
2927
  };
1455
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1456
- export type DeleteTokenData = {
2928
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2929
+ export type GetPaymentMethodSecretData = {
1457
2930
  body?: never;
1458
- path: {
1459
- /**
1460
- * Generated unique identifier of the access token.
1461
- */
1462
- token_id: string;
1463
- };
2931
+ path?: never;
1464
2932
  query?: never;
1465
- url: '/tokens/{token_id}';
2933
+ url: '/billing/payment-method';
1466
2934
  };
1467
- export type DeleteTokenResponses = {
2935
+ export type GetPaymentMethodSecretResponses = {
1468
2936
  /**
1469
- * 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
+ *
1470
2939
  */
1471
- 200: unknown;
1472
- };
1473
- export type GetTokenData = {
1474
- body?: never;
1475
- path: {
2940
+ 200: {
1476
2941
  /**
1477
- * Generated unique identifier of the access token.
2942
+ * The client secret.
1478
2943
  */
1479
- token_id: string;
2944
+ id?: string;
1480
2945
  };
2946
+ };
2947
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2948
+ export type ListPaymentMethodsData = {
2949
+ body?: never;
2950
+ path?: never;
1481
2951
  query?: never;
1482
- url: '/tokens/{token_id}';
2952
+ url: '/billing/payment-methods';
1483
2953
  };
1484
- export type GetTokenErrors = {
2954
+ export type ListPaymentMethodsErrors = {
1485
2955
  /**
1486
2956
  * Not authenticated
1487
2957
  */
1488
2958
  401: unknown;
1489
2959
  };
1490
- export type GetTokenResponses = {
2960
+ export type ListPaymentMethodsResponses = {
1491
2961
  /**
1492
- * Returns access token details with masked secret.
2962
+ * An array of payment methods.
1493
2963
  */
1494
- 200: Token;
2964
+ 200: Array<PaymentMethod>;
1495
2965
  };
1496
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1497
- export type UpdateTokenData = {
1498
- body: TokenUpdateInput;
2966
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
2967
+ export type SetDefaultPaymentMethodData = {
2968
+ body?: never;
1499
2969
  path: {
1500
2970
  /**
1501
- * Generated unique identifier of the access token.
2971
+ * Stripe payment method identifier.
1502
2972
  */
1503
- token_id: string;
2973
+ paymentMethodId: string;
1504
2974
  };
1505
2975
  query?: never;
1506
- url: '/tokens/{token_id}';
2976
+ url: '/billing/payment-methods/{paymentMethodId}/default';
1507
2977
  };
1508
- export type UpdateTokenErrors = {
2978
+ export type SetDefaultPaymentMethodErrors = {
2979
+ /**
2980
+ * The bank transfer payment method cannot be set as the default.
2981
+ */
2982
+ 400: unknown;
1509
2983
  /**
1510
2984
  * Not authenticated
1511
2985
  */
1512
2986
  401: unknown;
2987
+ /**
2988
+ * Payment method not found.
2989
+ */
2990
+ 404: unknown;
1513
2991
  };
1514
- export type UpdateTokenResponses = {
2992
+ export type SetDefaultPaymentMethodResponses = {
1515
2993
  /**
1516
- * Successfully updated. Returns updated token details with masked secret.
2994
+ * Default payment method updated.
1517
2995
  */
1518
- 200: Token;
2996
+ 204: void;
1519
2997
  };
1520
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1521
- export type RegenerateTokenData = {
2998
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
2999
+ export type DeletePaymentMethodData = {
1522
3000
  body?: never;
1523
3001
  path: {
1524
3002
  /**
1525
- * Generated unique identifier of the access token.
3003
+ * Stripe payment method identifier.
1526
3004
  */
1527
- token_id: string;
3005
+ paymentMethodId: string;
1528
3006
  };
1529
3007
  query?: never;
1530
- url: '/tokens/{token_id}/secret';
3008
+ url: '/billing/payment-methods/{paymentMethodId}';
1531
3009
  };
1532
- export type RegenerateTokenErrors = {
3010
+ export type DeletePaymentMethodErrors = {
3011
+ /**
3012
+ * The bank transfer payment method cannot be removed.
3013
+ */
3014
+ 400: unknown;
1533
3015
  /**
1534
3016
  * Not authenticated
1535
3017
  */
1536
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;
1537
3027
  };
1538
- export type RegenerateTokenResponses = {
3028
+ export type DeletePaymentMethodResponses = {
1539
3029
  /**
1540
- * Successfully updated. Returns updated token details with unmasked / raw secret.
3030
+ * Payment method deleted.
1541
3031
  */
1542
- 200: Token;
3032
+ 204: void;
1543
3033
  };
1544
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1545
- export type ListUserOrganizationsData = {
3034
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
3035
+ export type ListInvoicesData = {
1546
3036
  body?: never;
1547
- path: {
1548
- /**
1549
- * User email address.
1550
- */
1551
- email: string;
1552
- };
3037
+ path?: never;
1553
3038
  query?: never;
1554
- url: '/users/organizations/{email}';
3039
+ url: '/billing/invoices';
1555
3040
  };
1556
- export type ListUserOrganizationsResponses = {
3041
+ export type ListInvoicesErrors = {
1557
3042
  /**
1558
- * An array of organizations the user belongs to.
3043
+ * Not authenticated
1559
3044
  */
1560
- 200: Array<{
1561
- /**
1562
- * Unique identifier of the organization. UUID v4 string in canonical form
1563
- */
1564
- realm?: string;
1565
- /**
1566
- * Human-readable name of the organization
1567
- */
1568
- displayName?: string;
1569
- }>;
3045
+ 401: unknown;
1570
3046
  };
1571
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1572
- 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 = {
1573
3055
  body?: never;
1574
3056
  path?: never;
1575
3057
  query?: never;
1576
- url: '/users';
3058
+ url: '/billing/invoices/pay';
1577
3059
  };
1578
- export type ListUsersErrors = {
3060
+ export type PayOpenInvoicesErrors = {
3061
+ /**
3062
+ * The organization has no payment method that can be charged.
3063
+ */
3064
+ 400: unknown;
1579
3065
  /**
1580
3066
  * Not authenticated
1581
3067
  */
1582
3068
  401: unknown;
3069
+ /**
3070
+ * Too many payment attempts for this organization.
3071
+ */
3072
+ 429: unknown;
1583
3073
  };
1584
- export type ListUsersResponses = {
3074
+ export type PayOpenInvoicesResponses = {
1585
3075
  /**
1586
- * An array of users
3076
+ * The outcome of the attempt.
1587
3077
  */
1588
- 200: Array<User>;
3078
+ 200: InvoicePaymentResult;
1589
3079
  };
1590
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1591
- export type CreateUserData = {
1592
- body: UserCreateInput;
3080
+ export type PayOpenInvoicesResponse = PayOpenInvoicesResponses[keyof PayOpenInvoicesResponses];
3081
+ export type GetContactData = {
3082
+ body?: never;
1593
3083
  path?: never;
1594
3084
  query?: never;
1595
- url: '/users';
3085
+ url: '/billing/contact';
1596
3086
  };
1597
- export type CreateUserResponses = {
3087
+ export type GetContactResponses = {
1598
3088
  /**
1599
- * Successfully created. Returns created user details.
3089
+ * Returns a single object containing organization contact and billing address details.
1600
3090
  */
1601
- 200: User;
3091
+ 200: BillingContact;
1602
3092
  };
1603
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1604
- export type DeleteUserData = {
1605
- body?: never;
1606
- path: {
1607
- /**
1608
- * Unique user identifier. UUID v4 string in canonical form
1609
- */
1610
- user_id: string;
1611
- };
3093
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
3094
+ export type UpdateContactData = {
3095
+ body: BillingContact;
3096
+ path?: never;
1612
3097
  query?: never;
1613
- url: '/users/{user_id}';
3098
+ url: '/billing/contact';
1614
3099
  };
1615
- export type DeleteUserErrors = {
3100
+ export type UpdateContactResponses = {
1616
3101
  /**
1617
- * Deleting own user is not allowed. Delete your organization instead.
3102
+ * Successfully updated. Returns updated organization details.
1618
3103
  */
1619
- 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 = {
1620
3114
  /**
1621
3115
  * Not authenticated
1622
3116
  */
1623
3117
  401: unknown;
1624
3118
  };
1625
- export type DeleteUserResponses = {
3119
+ export type GetCreditsResponses = {
1626
3120
  /**
1627
- * User profile information
3121
+ * An array of the applied promotional credits records.
1628
3122
  */
1629
- 200: User;
3123
+ 200: Array<BillingCredits>;
1630
3124
  };
1631
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1632
- export type GetUserData = {
1633
- body?: never;
1634
- path: {
3125
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
3126
+ export type RedeemCreditsData = {
3127
+ body: {
1635
3128
  /**
1636
- * Unique user identifier. UUID v4 string in canonical form
3129
+ * Promotional code to redeem
1637
3130
  */
1638
- user_id: string;
3131
+ code?: string;
1639
3132
  };
3133
+ path?: never;
1640
3134
  query?: never;
1641
- url: '/users/{user_id}';
3135
+ url: '/billing/credits';
1642
3136
  };
1643
- export type GetUserErrors = {
3137
+ export type RedeemCreditsErrors = {
1644
3138
  /**
1645
3139
  * Not authenticated
1646
3140
  */
1647
3141
  401: unknown;
1648
3142
  };
1649
- export type GetUserResponses = {
1650
- /**
1651
- * User profile information
1652
- */
1653
- 200: User;
1654
- };
1655
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1656
- export type UpdateUserData = {
1657
- body: UserUpdateInput;
1658
- path: {
1659
- /**
1660
- * Unique user identifier. UUID v4 string in canonical form
1661
- */
1662
- user_id: string;
1663
- };
1664
- query?: never;
1665
- url: '/users/{user_id}';
1666
- };
1667
- export type UpdateUserResponses = {
3143
+ export type RedeemCreditsResponses = {
1668
3144
  /**
1669
- * Successfully created. Returns created user details.
3145
+ * Successfully created a new organization.
1670
3146
  */
1671
- 200: User;
3147
+ 200: unknown;
1672
3148
  };
1673
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1674
3149
  //# sourceMappingURL=types.gen.d.ts.map