@cloudfleet/sdk 0.0.1-ad0e55f → 0.0.1-af2f3f9

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 +1159 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1175 -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 +1601 -569
  47. package/dist/schemas.gen.d.ts.map +1 -1
  48. package/dist/schemas.gen.js +3024 -711
  49. package/dist/schemas.gen.js.map +1 -1
  50. package/dist/sdk.gen.d.ts +296 -164
  51. package/dist/sdk.gen.d.ts.map +1 -1
  52. package/dist/sdk.gen.js +429 -350
  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 +1781 -765
  56. package/dist/types.gen.d.ts.map +1 -1
  57. package/dist/zod.gen.d.ts +3511 -2559
  58. package/dist/zod.gen.d.ts.map +1 -1
  59. package/dist/zod.gen.js +1442 -1190
  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
  */
@@ -39,13 +43,9 @@ export type BillingContact = {
39
43
  */
40
44
  email: string;
41
45
  /**
42
- * First name of the billing contact person.
43
- */
44
- first_name: string;
45
- /**
46
- * Last name of the billing contact person.
46
+ * Name of the billing contact person.
47
47
  */
48
- last_name: string;
48
+ individual_name: string;
49
49
  /**
50
50
  * Tax ID of the organization.
51
51
  */
@@ -61,35 +61,31 @@ export type BillingCredits = {
61
61
  */
62
62
  id?: string;
63
63
  /**
64
- * Date of the credit application. ISO 8601 date string in the UTC timezone.
65
- */
66
- date_created: string;
67
- /**
68
- * Promotional code used by the customer.
64
+ * Type of the promotional code.
69
65
  */
70
- code: string;
66
+ type: 'credit' | 'discount';
71
67
  /**
72
- * Description of the promotional code.
68
+ * Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.
73
69
  */
74
- description?: string;
70
+ date_start: string;
75
71
  /**
76
- * List of product SKUs that the promotional code can be used on.
72
+ * Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.
77
73
  */
78
- products?: Array<string>;
74
+ date_end?: string;
79
75
  /**
80
- * Type of the promotional code.
76
+ * Promotional code used by the customer.
81
77
  */
82
- type: 'credit' | 'discount';
78
+ code: string;
83
79
  /**
84
- * Value of the promotional code.
80
+ * Description of the promotional code.
85
81
  */
86
- value: number;
82
+ description?: string;
87
83
  /**
88
- * Date of the billing cycle. An ISO 8601 date string in the UTC timezone.
84
+ * Total value of the promotional code.
89
85
  */
90
- billing_period: string;
86
+ value_total: number;
91
87
  /**
92
- * Value of the promotional code.
88
+ * Remaining value of the promotional code.
93
89
  */
94
90
  value_remaining?: number;
95
91
  };
@@ -137,9 +133,9 @@ export type Chart = {
137
133
  */
138
134
  chart: string;
139
135
  /**
140
- * Status of the chart deployment.
136
+ * Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).
141
137
  */
142
- status: 'InstallSucceeded' | 'InstallFailed' | 'UpgradeSucceeded' | 'UpgradeFailed' | 'TestSucceeded' | 'TestFailed' | 'RollbackSucceeded' | 'RollbackFailed' | 'UninstallSucceeded' | 'UninstallFailed' | 'ArtifactFailed' | 'DependencyNotReady' | 'Progressing' | 'SourceNotReady';
138
+ status: string;
143
139
  /**
144
140
  * Current version of the chart deployment.
145
141
  */
@@ -167,6 +163,9 @@ export type ChartUpdateInput = {
167
163
  */
168
164
  version_channel: string;
169
165
  };
166
+ /**
167
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
168
+ */
170
169
  export type ClusterCreateInput = {
171
170
  /**
172
171
  * Name of the cluster.
@@ -175,15 +174,61 @@ export type ClusterCreateInput = {
175
174
  /**
176
175
  * Tier of the cluster.
177
176
  */
178
- tier: 'basic' | 'pro';
179
- /**
180
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
181
- */
182
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
177
+ tier?: 'basic' | 'pro' | 'enterprise';
183
178
  /**
184
179
  * Version of the kubernetes cluster.
185
180
  */
186
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
+ };
187
232
  };
188
233
  export type ClusterJoinInformation = {
189
234
  /**
@@ -194,6 +239,14 @@ export type ClusterJoinInformation = {
194
239
  * Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.
195
240
  */
196
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;
197
250
  /**
198
251
  * Authentication key for the cluster.
199
252
  */
@@ -241,6 +294,9 @@ export type ClusterJoinInformation = {
241
294
  gcp_workload_identity_provider: string;
242
295
  };
243
296
  };
297
+ /**
298
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
299
+ */
244
300
  export type Cluster = {
245
301
  /**
246
302
  * Name of the cluster.
@@ -249,24 +305,71 @@ export type Cluster = {
249
305
  /**
250
306
  * Tier of the cluster.
251
307
  */
252
- tier: 'basic' | 'pro';
308
+ tier: 'basic' | 'pro' | 'enterprise';
253
309
  /**
254
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
310
+ * Version of the kubernetes cluster.
255
311
  */
256
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
312
+ version_channel: string;
257
313
  /**
258
- * Version of the kubernetes cluster.
314
+ * Release channel for the cluster's control plane.
259
315
  */
260
- version_channel?: string;
316
+ release_channel: 'rapid' | 'stable' | 'extended';
317
+ /**
318
+ * Cluster feature toggles.
319
+ */
320
+ features: {
321
+ /**
322
+ * GPU sharing strategy.
323
+ */
324
+ gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
325
+ /**
326
+ * Maximum number of pods that may share a single GPU.
327
+ */
328
+ gpu_max_shared_clients_per_gpu: number;
329
+ /**
330
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
331
+ */
332
+ cilium_socket_lb_host_namespace_only: boolean;
333
+ };
334
+ /**
335
+ * Cloudfleet control plane region. This field can not be updated after creation.
336
+ */
337
+ region: string;
338
+ /**
339
+ * Cluster networking configuration. Immutable after creation.
340
+ */
341
+ networking: {
342
+ /**
343
+ * CIDR block for pod IPs.
344
+ */
345
+ pod_cidr: string;
346
+ /**
347
+ * CIDR block for service IPs.
348
+ */
349
+ service_cidr: string;
350
+ /**
351
+ * Enable IPv4+IPv6 dual-stack networking.
352
+ */
353
+ dual_stack: boolean;
354
+ /**
355
+ * IPv6 pod CIDR. Requires dual_stack.
356
+ */
357
+ pod_cidr_v6: string;
358
+ /**
359
+ * IPv6 service CIDR. Requires dual_stack.
360
+ */
361
+ service_cidr_v6: string;
362
+ };
261
363
  /**
262
364
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
263
365
  */
264
366
  id: string;
265
367
  /**
266
- * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
368
+ * Status of the cluster.
267
369
  */
268
- status: 'active' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
370
+ status: 'creating' | 'deployed' | 'updating' | 'disabled';
269
371
  endpoint?: string | '';
372
+ endpoint_public?: string | '';
270
373
  /**
271
374
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
272
375
  */
@@ -286,125 +389,259 @@ export type Cluster = {
286
389
  /**
287
390
  * Indicates if the cluster is ready to be used.
288
391
  */
289
- ready?: boolean;
392
+ ready: boolean;
290
393
  };
394
+ /**
395
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
396
+ */
291
397
  export type ClusterUpdateInput = {
292
398
  /**
293
399
  * Name of the cluster.
294
400
  */
295
- name?: string;
401
+ name: string;
296
402
  /**
297
403
  * Tier of the cluster.
298
404
  */
299
- tier: 'basic' | 'pro';
405
+ tier?: 'basic' | 'pro' | 'enterprise';
300
406
  /**
301
407
  * Version of the kubernetes cluster.
302
408
  */
303
409
  version_channel?: string;
410
+ /**
411
+ * Release channel for the cluster's control plane.
412
+ */
413
+ release_channel?: 'rapid' | 'stable' | 'extended';
414
+ /**
415
+ * Cluster feature toggles.
416
+ */
417
+ features?: {
418
+ /**
419
+ * GPU sharing strategy.
420
+ */
421
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
422
+ /**
423
+ * Maximum number of pods that may share a single GPU.
424
+ */
425
+ gpu_max_shared_clients_per_gpu?: number;
426
+ /**
427
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
428
+ */
429
+ cilium_socket_lb_host_namespace_only?: boolean;
430
+ };
304
431
  };
432
+ /**
433
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
434
+ */
305
435
  export type FleetCreateInput = {
306
436
  /**
307
437
  * Limits define a set of bounds for provisioning capacity.
308
438
  */
309
439
  limits?: {
310
440
  /**
311
- * CPU limit in cores.
441
+ * CPU limit in cores. Maximum 100,000.
312
442
  */
313
- cpu: number;
443
+ cpu?: number;
314
444
  };
315
445
  gcp?: {
316
- enabled?: boolean;
446
+ enabled: boolean;
317
447
  /**
318
- * Project GCP Project id to deploy instances into
448
+ * 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.
319
449
  */
320
- project: string;
450
+ project?: string;
321
451
  };
322
452
  hetzner?: {
323
- enabled?: boolean;
453
+ enabled: boolean;
324
454
  /**
325
- * Hetzner Cloud API key with read / write access
455
+ * 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.
326
456
  */
327
- apiKey: string;
457
+ apiKey?: string;
328
458
  };
329
459
  aws?: {
330
- enabled?: boolean;
460
+ enabled: boolean;
461
+ /**
462
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
463
+ */
464
+ controllerRoleArn?: string;
465
+ };
466
+ /**
467
+ * 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.
468
+ */
469
+ constraints?: {
470
+ /**
471
+ * Allowed values for `karpenter.sh/capacity-type`.
472
+ */
473
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
474
+ /**
475
+ * Allowed values for `kubernetes.io/arch`.
476
+ */
477
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
478
+ /**
479
+ * Allowed values for `cfke.io/instance-family`.
480
+ */
481
+ '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'>;
331
482
  /**
332
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
483
+ * Allowed values for `topology.kubernetes.io/region`.
333
484
  */
334
- controllerRoleArn: string;
485
+ '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'>;
335
486
  };
487
+ /**
488
+ * 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`).
489
+ */
490
+ scalingProfile?: 'aggressive' | 'conservative';
336
491
  /**
337
492
  * Unique identifier of the kubernetes fleet.
338
493
  */
339
494
  id: string;
340
495
  };
496
+ /**
497
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
498
+ */
341
499
  export type Fleet = {
342
500
  /**
343
501
  * Limits define a set of bounds for provisioning capacity.
344
502
  */
345
503
  limits?: {
346
504
  /**
347
- * CPU limit in cores.
505
+ * CPU limit in cores. Maximum 100,000.
348
506
  */
349
- cpu: number;
507
+ cpu?: number;
350
508
  };
351
509
  gcp?: {
352
- enabled?: boolean;
510
+ enabled: boolean;
353
511
  /**
354
- * Project GCP Project id to deploy instances into
512
+ * 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.
355
513
  */
356
- project: string;
514
+ project?: string;
357
515
  };
358
516
  hetzner?: {
359
- enabled?: boolean;
517
+ enabled: boolean;
360
518
  /**
361
- * Hetzner Cloud API key with read / write access
519
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
362
520
  */
363
- apiKey: string;
521
+ apiKey?: string;
364
522
  };
365
523
  aws?: {
366
- enabled?: boolean;
524
+ enabled: boolean;
525
+ /**
526
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
527
+ */
528
+ controllerRoleArn?: string;
529
+ };
530
+ /**
531
+ * 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.
532
+ */
533
+ constraints: {
534
+ /**
535
+ * Allowed values for `karpenter.sh/capacity-type`.
536
+ */
537
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
538
+ /**
539
+ * Allowed values for `kubernetes.io/arch`.
540
+ */
541
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
367
542
  /**
368
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
543
+ * Allowed values for `cfke.io/instance-family`.
369
544
  */
370
- controllerRoleArn: string;
545
+ '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'>;
546
+ /**
547
+ * Allowed values for `topology.kubernetes.io/region`.
548
+ */
549
+ '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'>;
371
550
  };
551
+ /**
552
+ * 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`).
553
+ */
554
+ scalingProfile: 'aggressive' | 'conservative';
372
555
  /**
373
556
  * Unique identifier of the kubernetes fleet.
374
557
  */
375
558
  id: string;
559
+ /**
560
+ * Indicates whether the fleet configuration is healthy.
561
+ */
562
+ ready: boolean;
563
+ /**
564
+ * Human-readable reason the fleet is not ready. Present only when `ready` is false.
565
+ */
566
+ status_message?: string;
567
+ /**
568
+ * Creation date and time of the fleet.
569
+ */
570
+ created_at: string;
571
+ /**
572
+ * Date and time the fleet was last updated.
573
+ */
574
+ updated_at: string;
376
575
  };
576
+ /**
577
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
578
+ */
377
579
  export type FleetUpdateInput = {
378
580
  /**
379
581
  * Limits define a set of bounds for provisioning capacity.
380
582
  */
381
583
  limits?: {
382
584
  /**
383
- * CPU limit in cores.
585
+ * CPU limit in cores. Maximum 100,000.
384
586
  */
385
- cpu: number;
587
+ cpu?: number;
386
588
  };
387
589
  gcp?: {
388
- enabled?: boolean;
590
+ enabled: boolean;
389
591
  /**
390
- * Project GCP Project id to deploy instances into
592
+ * 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.
391
593
  */
392
- project: string;
594
+ project?: string;
393
595
  };
394
596
  hetzner?: {
395
- enabled?: boolean;
597
+ enabled: boolean;
396
598
  /**
397
- * Hetzner Cloud API key with read / write access
599
+ * 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.
398
600
  */
399
- apiKey: string;
601
+ apiKey?: string;
400
602
  };
401
603
  aws?: {
402
- enabled?: boolean;
604
+ enabled: boolean;
605
+ /**
606
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
607
+ */
608
+ controllerRoleArn?: string;
609
+ };
610
+ /**
611
+ * 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.
612
+ */
613
+ constraints?: {
614
+ /**
615
+ * Allowed values for `karpenter.sh/capacity-type`.
616
+ */
617
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
618
+ /**
619
+ * Allowed values for `kubernetes.io/arch`.
620
+ */
621
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
403
622
  /**
404
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
623
+ * Allowed values for `cfke.io/instance-family`.
405
624
  */
406
- controllerRoleArn: string;
625
+ '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'>;
626
+ /**
627
+ * Allowed values for `topology.kubernetes.io/region`.
628
+ */
629
+ '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'>;
407
630
  };
631
+ /**
632
+ * 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`).
633
+ */
634
+ scalingProfile?: 'aggressive' | 'conservative';
635
+ };
636
+ export type InviteCreateInput = {
637
+ /**
638
+ * Email address of the user to invite.
639
+ */
640
+ email: string;
641
+ /**
642
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
643
+ */
644
+ role?: 'Administrator' | 'User';
408
645
  };
409
646
  export type Invite = {
410
647
  /**
@@ -427,399 +664,741 @@ export type Invite = {
427
664
  * Generated unique invite code.
428
665
  */
429
666
  code?: string;
667
+ /**
668
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
669
+ */
670
+ role?: 'Administrator' | 'User';
430
671
  };
431
672
  export type Invoice = {
432
673
  /**
433
- * Unique identifier of the invoice. UUID v4 string in canonical form
674
+ * Unique identifier of the invoice.
434
675
  */
435
676
  id?: string;
436
- /**
437
- * Unique identifier of the organization. UUID v4 string in canonical form
438
- */
439
- organizationId?: string;
677
+ number?: string;
440
678
  /**
441
679
  * Status of the invoice
442
680
  */
443
- status?: 'DRAFT' | 'COMMITTED' | 'VOID';
681
+ status?: string;
444
682
  /**
445
683
  * Total amount of the invoice
446
684
  */
447
- amount?: number;
685
+ total?: number;
448
686
  /**
449
687
  * Currency of the invoice
450
688
  */
451
- currency?: 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYR' | 'BZD' | 'CAD' | 'CDF' | 'CHF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GGP' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'IMP' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JEP' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LTL' | 'LVL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRO' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLL' | 'SOS' | 'SPL' | 'SRD' | 'STD' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TVD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'UYU' | 'UZS' | 'VEF' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XDR' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWD' | 'BTC';
689
+ currency?: string;
690
+ /**
691
+ * Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.
692
+ */
693
+ created: string;
694
+ /**
695
+ * Billing period start timestamp. ISO 8601 date string in the UTC timezone.
696
+ */
697
+ period_start: string;
698
+ /**
699
+ * Billing period end timestamp. ISO 8601 date string in the UTC timezone.
700
+ */
701
+ period_end: string;
702
+ invoice_pdf?: string;
703
+ };
704
+ export type MarketplaceListingFiles = {
452
705
  /**
453
- * Total amount of credit adjustments
706
+ * Raw Chart.yaml content from the Helm chart
454
707
  */
455
- creditAdj?: number;
708
+ chartYaml?: string;
456
709
  /**
457
- * Total amount of refund adjustments
710
+ * Raw values.yaml content from the Helm chart
458
711
  */
459
- refundAdj?: number;
712
+ valuesYaml?: string;
460
713
  /**
461
- * Date of the invoice
714
+ * JSON schema for values.yaml as a string
462
715
  */
463
- invoiceDate?: string;
716
+ valuesSchemaJson?: string;
717
+ };
718
+ export type MarketplaceListing = {
464
719
  /**
465
- * Target date of the invoice
720
+ * Name of the chart
466
721
  */
467
- targetDate?: string;
722
+ name: string;
468
723
  /**
469
- * Number of the invoice
724
+ * Available versions of the chart
470
725
  */
471
- invoiceNumber?: string;
726
+ versions: Array<string>;
472
727
  /**
473
- * Balance of the invoice
728
+ * Version channels for the chart
474
729
  */
475
- balance?: number;
730
+ version_channels: Array<string>;
476
731
  /**
477
- * Bundle keys of the invoice
732
+ * Latest version of the chart
478
733
  */
479
- bundleKeys?: string;
734
+ latestVersion: string;
480
735
  /**
481
- * Credits of the invoice
736
+ * Chart metadata
482
737
  */
483
- credits?: Array<{
738
+ metadata?: {
484
739
  /**
485
- * Unique identifier of the invoice item. UUID v4 string in canonical form
740
+ * Chart name from metadata
486
741
  */
487
- id?: string;
742
+ name: string;
488
743
  /**
489
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
744
+ * Chart version from metadata
490
745
  */
491
- linkedInvoiceItemId?: string;
746
+ version: string;
492
747
  /**
493
- * Name of the product
748
+ * Chart description
494
749
  */
495
- productName?: string;
750
+ description?: string;
496
751
  /**
497
- * Name of the plan
752
+ * Application version
498
753
  */
499
- planName?: string;
754
+ appVersion?: string;
500
755
  /**
501
- * Name of the phase
756
+ * Helm API version
502
757
  */
503
- phaseName?: string;
758
+ apiVersion?: string;
504
759
  /**
505
- * Name of the usage
760
+ * Chart keywords
506
761
  */
507
- usageName?: string;
762
+ keywords?: Array<string>;
508
763
  /**
509
- * Pretty name of the product
764
+ * Chart home URL
510
765
  */
511
- prettyProductName?: string;
766
+ home?: string;
512
767
  /**
513
- * Pretty name of the plan
768
+ * A URL to an SVG or PNG image to be used as an icon
514
769
  */
515
- prettyPlanName?: string;
770
+ icon?: string;
516
771
  /**
517
- * Pretty name of the phase
772
+ * Chart source URLs
518
773
  */
519
- prettyPhaseName?: string;
774
+ sources?: Array<string>;
520
775
  /**
521
- * Pretty name of the usage
776
+ * Chart maintainers
522
777
  */
523
- prettyUsageName?: string;
778
+ maintainers?: Array<{
779
+ /**
780
+ * Maintainer name
781
+ */
782
+ name: string;
783
+ /**
784
+ * Maintainer email
785
+ */
786
+ email?: string;
787
+ }>;
788
+ };
789
+ };
790
+ export type OrganizationCreateInput = {
791
+ /**
792
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
793
+ */
794
+ type: 'business' | 'personal';
795
+ /**
796
+ * Email address used for billing as a string.
797
+ */
798
+ email: string;
799
+ /**
800
+ * First name of the billing contact person.
801
+ */
802
+ first_name: string;
803
+ /**
804
+ * Last name of the billing contact person.
805
+ */
806
+ last_name: string;
807
+ /**
808
+ * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
809
+ */
810
+ company_name: string;
811
+ /**
812
+ * Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.
813
+ */
814
+ password: string;
815
+ };
816
+ export type OrganizationCreateOutput = {
817
+ /**
818
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
819
+ */
820
+ id: string;
821
+ };
822
+ export type Organization = {
823
+ /**
824
+ * Unique identifier of the organization. UUID v4 string in canonical form
825
+ */
826
+ id: string;
827
+ /**
828
+ * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
829
+ */
830
+ name?: string;
831
+ /**
832
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
833
+ */
834
+ type: 'business' | 'personal';
835
+ /**
836
+ * Creation date of the organization. ISO 8601 date string in UTC timezone
837
+ */
838
+ date_created: string;
839
+ /**
840
+ * For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota.
841
+ */
842
+ quota: {
524
843
  /**
525
- * Type of the invoice item
844
+ * Maximum number of Basic clusters that can be created.
526
845
  */
527
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
846
+ basic_clusters_max: number;
528
847
  /**
529
- * Description of the invoice item
848
+ * Available number of Basic clusters that can be created.
530
849
  */
531
- description?: string;
850
+ basic_clusters_available: number;
532
851
  /**
533
- * Start date of the invoice item
852
+ * Maximum number of Pro clusters that can be created.
534
853
  */
535
- startDate?: string;
854
+ pro_clusters_max: number;
536
855
  /**
537
- * End date of the invoice item
856
+ * Available number of Pro clusters that can be created.
538
857
  */
539
- endDate?: string;
858
+ pro_clusters_available: number;
540
859
  /**
541
- * Amount of the invoice item
860
+ * Maximum number of Enterprise clusters that can be created.
542
861
  */
543
- amount?: number;
862
+ enterprise_clusters_max: number;
544
863
  /**
545
- * Rate of the invoice item
864
+ * Available number of Enterprise clusters that can be created.
546
865
  */
547
- rate?: number;
866
+ enterprise_clusters_available: number;
548
867
  /**
549
- * Currency of the invoice item
868
+ * Maximum number of fleets that can be created per cluster.
550
869
  */
551
- currency?: 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYR' | 'BZD' | 'CAD' | 'CDF' | 'CHF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GGP' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'IMP' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JEP' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LTL' | 'LVL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRO' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLL' | 'SOS' | 'SPL' | 'SRD' | 'STD' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TVD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'UYU' | 'UZS' | 'VEF' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XDR' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWD' | 'BTC';
870
+ fleets_max: number;
552
871
  /**
553
- * Quantity of the invoice item
872
+ * List of Cloudfleet cluster tiers available for the organization.
554
873
  */
555
- quantity?: number;
874
+ cluster_tiers: Array<string>;
556
875
  /**
557
- * Details of the invoice item
876
+ * List of Cloudfleet control plane regions available for the organization.
558
877
  */
559
- itemDetails?: string;
878
+ regions: Array<string>;
560
879
  /**
561
- * Effective date of the catalog
880
+ * List of CFKE control plane versions available for the organization.
562
881
  */
563
- catalogEffectiveDate?: string;
882
+ versions: Array<{
883
+ /**
884
+ * Id of the control plane version. Used in API calls.
885
+ */
886
+ id: string;
887
+ /**
888
+ * Label of the control plane version. Used in frontent UI.
889
+ */
890
+ label: string;
891
+ }>;
564
892
  /**
565
- * Child items of the invoice item
893
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
566
894
  */
567
- childItems?: Array<Array<unknown> | boolean | number | {
568
- [key: string]: unknown;
569
- } | string>;
570
- }>;
895
+ cfcr_storage_gb: number;
896
+ };
897
+ /**
898
+ * Status of the organization. Can be `active` or `closed`, or `suspended`.
899
+ */
900
+ status: 'active' | 'closed' | 'suspended';
901
+ /**
902
+ * 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.
903
+ */
904
+ verification: 'none' | 'submitted' | 'verified';
905
+ };
906
+ export type PaymentMethod = {
907
+ /**
908
+ * 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.
909
+ */
910
+ id: string;
911
+ /**
912
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
913
+ */
914
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
915
+ /**
916
+ * 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.
917
+ */
918
+ last4: string;
919
+ /**
920
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
921
+ */
922
+ exp_month: number;
923
+ /**
924
+ * 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.
925
+ */
926
+ exp_year: number;
927
+ /**
928
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
929
+ */
930
+ brand: string;
931
+ /**
932
+ * 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.
933
+ */
934
+ iban: string;
935
+ /**
936
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
937
+ */
938
+ bic: string;
939
+ /**
940
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
941
+ */
942
+ account_holder_name: string;
571
943
  /**
572
- * Items of the invoice
944
+ * 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).
573
945
  */
574
- items?: Array<{
946
+ is_default: boolean;
947
+ };
948
+ export type PlatformQuota = {
949
+ /**
950
+ * Maximum number of Basic clusters that can be created.
951
+ */
952
+ basic_clusters_max: number;
953
+ /**
954
+ * Available number of Basic clusters that can be created.
955
+ */
956
+ basic_clusters_available: number;
957
+ /**
958
+ * Maximum number of Pro clusters that can be created.
959
+ */
960
+ pro_clusters_max: number;
961
+ /**
962
+ * Available number of Pro clusters that can be created.
963
+ */
964
+ pro_clusters_available: number;
965
+ /**
966
+ * Maximum number of Enterprise clusters that can be created.
967
+ */
968
+ enterprise_clusters_max: number;
969
+ /**
970
+ * Available number of Enterprise clusters that can be created.
971
+ */
972
+ enterprise_clusters_available: number;
973
+ /**
974
+ * Maximum number of fleets that can be created per cluster.
975
+ */
976
+ fleets_max: number;
977
+ /**
978
+ * List of Cloudfleet cluster tiers available for the organization.
979
+ */
980
+ cluster_tiers: Array<string>;
981
+ /**
982
+ * List of Cloudfleet control plane regions available for the organization.
983
+ */
984
+ regions: Array<string>;
985
+ /**
986
+ * List of CFKE control plane versions available for the organization.
987
+ */
988
+ versions: Array<{
575
989
  /**
576
- * Unique identifier of the invoice item. UUID v4 string in canonical form
990
+ * Id of the control plane version. Used in API calls.
577
991
  */
578
- id?: string;
992
+ id: string;
579
993
  /**
580
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
994
+ * Label of the control plane version. Used in frontent UI.
581
995
  */
582
- linkedInvoiceItemId?: string;
996
+ label: string;
997
+ }>;
998
+ /**
999
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
1000
+ */
1001
+ cfcr_storage_gb: number;
1002
+ };
1003
+ export type RegistryRepository = {
1004
+ /**
1005
+ * Repository name.
1006
+ */
1007
+ name: string;
1008
+ /**
1009
+ * Registry region.
1010
+ */
1011
+ region: string;
1012
+ /**
1013
+ * Full URI of the repository.
1014
+ */
1015
+ uri: string;
1016
+ };
1017
+ export type RegistryRepositoryWithTags = {
1018
+ /**
1019
+ * Repository name.
1020
+ */
1021
+ name: string;
1022
+ /**
1023
+ * Registry region.
1024
+ */
1025
+ region: string;
1026
+ /**
1027
+ * Full URI of the repository.
1028
+ */
1029
+ uri: string;
1030
+ /**
1031
+ * Array of tags in the repository.
1032
+ */
1033
+ tags: Array<{
583
1034
  /**
584
- * Name of the product
1035
+ * Tag name.
585
1036
  */
586
- productName?: string;
1037
+ name: string;
587
1038
  /**
588
- * Name of the plan
1039
+ * Size of the tag in bytes.
589
1040
  */
590
- planName?: string;
1041
+ size: number;
591
1042
  /**
592
- * Name of the phase
1043
+ * Media type of the manifest.
593
1044
  */
594
- phaseName?: string;
1045
+ mediaType?: string;
595
1046
  /**
596
- * Name of the usage
1047
+ * Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).
597
1048
  */
598
- usageName?: string;
1049
+ platforms?: Array<string>;
1050
+ }>;
1051
+ /**
1052
+ * Total size of all tags in the repository in bytes.
1053
+ */
1054
+ totalSize: number;
1055
+ };
1056
+ export type RegistryTag = {
1057
+ /**
1058
+ * Tag name.
1059
+ */
1060
+ name: string;
1061
+ /**
1062
+ * Manifest digest for pulling by digest.
1063
+ */
1064
+ digest: string;
1065
+ /**
1066
+ * Media type of the manifest.
1067
+ */
1068
+ mediaType?: string;
1069
+ /**
1070
+ * Manifest config metadata.
1071
+ */
1072
+ config?: {
599
1073
  /**
600
- * Pretty name of the product
1074
+ * Size of the config in bytes.
601
1075
  */
602
- prettyProductName?: string;
1076
+ size: number;
1077
+ };
1078
+ /**
1079
+ * Array of layer metadata.
1080
+ */
1081
+ layers?: Array<{
603
1082
  /**
604
- * Pretty name of the plan
1083
+ * Digest of the layer.
605
1084
  */
606
- prettyPlanName?: string;
1085
+ digest?: string;
607
1086
  /**
608
- * Pretty name of the phase
1087
+ * Size of the layer in bytes.
609
1088
  */
610
- prettyPhaseName?: string;
1089
+ size: number;
1090
+ }>;
1091
+ /**
1092
+ * Array of manifests for multi-arch images.
1093
+ */
1094
+ manifests?: Array<{
611
1095
  /**
612
- * Pretty name of the usage
1096
+ * Digest of the manifest.
613
1097
  */
614
- prettyUsageName?: string;
1098
+ digest: string;
615
1099
  /**
616
- * Type of the invoice item
1100
+ * Platform information for the manifest.
617
1101
  */
618
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
1102
+ platform?: {
1103
+ /**
1104
+ * Architecture of the platform.
1105
+ */
1106
+ architecture: string;
1107
+ /**
1108
+ * Operating system of the platform.
1109
+ */
1110
+ os: string;
1111
+ /**
1112
+ * Variant of the platform (e.g., v7, v8 for ARM).
1113
+ */
1114
+ variant?: string;
1115
+ };
619
1116
  /**
620
- * Description of the invoice item
1117
+ * Layers for this platform.
621
1118
  */
622
- description?: string;
1119
+ layers?: Array<{
1120
+ /**
1121
+ * Digest of the layer.
1122
+ */
1123
+ digest?: string;
1124
+ /**
1125
+ * Size of the layer in bytes.
1126
+ */
1127
+ size: number;
1128
+ }>;
623
1129
  /**
624
- * Start date of the invoice item
1130
+ * Total size of this platform manifest in bytes.
625
1131
  */
626
- startDate?: string;
1132
+ size?: number;
1133
+ }>;
1134
+ /**
1135
+ * Total size of the tag in bytes.
1136
+ */
1137
+ size: number;
1138
+ /**
1139
+ * Registry region.
1140
+ */
1141
+ region: string;
1142
+ /**
1143
+ * Repository name.
1144
+ */
1145
+ repository: string;
1146
+ /**
1147
+ * Full URI of the tag.
1148
+ */
1149
+ uri: string;
1150
+ };
1151
+ export type TicketAttachment = {
1152
+ /**
1153
+ * Unique identifier of the attachment (Mongo ObjectId).
1154
+ */
1155
+ id: string;
1156
+ /**
1157
+ * Original filename as uploaded.
1158
+ */
1159
+ filename: string;
1160
+ /**
1161
+ * MIME content type of the attachment.
1162
+ */
1163
+ content_type: string;
1164
+ /**
1165
+ * Size of the attachment in bytes.
1166
+ */
1167
+ size: number;
1168
+ };
1169
+ export type TicketCreateInput = {
1170
+ /**
1171
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
1172
+ */
1173
+ category: 'billing' | 'technical' | 'general';
1174
+ /**
1175
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
1176
+ */
1177
+ body: string;
1178
+ /**
1179
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
1180
+ */
1181
+ properties?: {
1182
+ [key: string]: unknown;
1183
+ };
1184
+ };
1185
+ export type TicketListResponse = {
1186
+ /**
1187
+ * Tickets for the organization, ordered newest first. Messages are omitted from list responses.
1188
+ */
1189
+ items: Array<{
627
1190
  /**
628
- * End date of the invoice item
1191
+ * Unique identifier of the ticket (Mongo ObjectId).
629
1192
  */
630
- endDate?: string;
1193
+ id: string;
631
1194
  /**
632
- * Amount of the invoice item
1195
+ * Current state of the ticket.
633
1196
  */
634
- amount?: number;
1197
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
635
1198
  /**
636
- * Rate of the invoice item
1199
+ * Ticket category.
637
1200
  */
638
- rate?: number;
1201
+ category: 'billing' | 'technical' | 'general';
639
1202
  /**
640
- * Currency of the invoice item
1203
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
641
1204
  */
642
- currency?: 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYR' | 'BZD' | 'CAD' | 'CDF' | 'CHF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GGP' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'IMP' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JEP' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LTL' | 'LVL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRO' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLL' | 'SOS' | 'SPL' | 'SRD' | 'STD' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TVD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'UYU' | 'UZS' | 'VEF' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XDR' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWD' | 'BTC';
1205
+ summary: string;
643
1206
  /**
644
- * Quantity of the invoice item
1207
+ * Closure timestamp. Null while the ticket is open.
645
1208
  */
646
- quantity?: number;
1209
+ closed_at?: string;
647
1210
  /**
648
- * Details of the invoice item
1211
+ * Creation date of the ticket. ISO 8601 UTC.
649
1212
  */
650
- itemDetails?: string;
1213
+ date_created: string;
651
1214
  /**
652
- * Effective date of the catalog
1215
+ * Last update date of the ticket. ISO 8601 UTC.
653
1216
  */
654
- catalogEffectiveDate?: string;
1217
+ date_updated: string;
655
1218
  /**
656
- * Child items of the invoice item
1219
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
657
1220
  */
658
- childItems?: Array<Array<unknown> | boolean | number | {
659
- [key: string]: unknown;
660
- } | string>;
1221
+ messages?: Array<{
1222
+ /**
1223
+ * Unique identifier of the message (Mongo ObjectId).
1224
+ */
1225
+ id: string;
1226
+ /**
1227
+ * Message type. Internal notes are filtered out of customer-facing responses.
1228
+ */
1229
+ type: 'customer_reply' | 'agent_reply';
1230
+ /**
1231
+ * Message body in markdown.
1232
+ */
1233
+ body: string;
1234
+ /**
1235
+ * First name of the author. Null when not provided.
1236
+ */
1237
+ author_first_name?: string;
1238
+ /**
1239
+ * Last name of the author. Null when not provided.
1240
+ */
1241
+ author_last_name?: string;
1242
+ /**
1243
+ * Attachments associated with this message.
1244
+ */
1245
+ attachments?: Array<{
1246
+ /**
1247
+ * Unique identifier of the attachment (Mongo ObjectId).
1248
+ */
1249
+ id: string;
1250
+ /**
1251
+ * Original filename as uploaded.
1252
+ */
1253
+ filename: string;
1254
+ /**
1255
+ * MIME content type of the attachment.
1256
+ */
1257
+ content_type: string;
1258
+ /**
1259
+ * Size of the attachment in bytes.
1260
+ */
1261
+ size: number;
1262
+ }>;
1263
+ /**
1264
+ * Creation date of the message. ISO 8601 UTC.
1265
+ */
1266
+ date_created: string;
1267
+ }>;
661
1268
  }>;
662
1269
  };
663
- export type MarketplaceListing = {
1270
+ export type TicketMessageInput = {
664
1271
  /**
665
- * Id of the chart listing
1272
+ * Reply body in markdown.
666
1273
  */
667
- id: string;
1274
+ body: string;
1275
+ };
1276
+ export type TicketMessage = {
668
1277
  /**
669
- * Name of the chart listing
1278
+ * Unique identifier of the message (Mongo ObjectId).
670
1279
  */
671
- name: string;
1280
+ id: string;
672
1281
  /**
673
- * Author of the chart listing
1282
+ * Message type. Internal notes are filtered out of customer-facing responses.
674
1283
  */
675
- developer: string;
1284
+ type: 'customer_reply' | 'agent_reply';
676
1285
  /**
677
- * Short description of the chart listing
1286
+ * Message body in markdown.
678
1287
  */
679
- description: string;
1288
+ body: string;
680
1289
  /**
681
- * Logo of the chart listing
1290
+ * First name of the author. Null when not provided.
682
1291
  */
683
- logoUrl: string;
1292
+ author_first_name?: string;
684
1293
  /**
685
- * Long description of the chart listing
1294
+ * Last name of the author. Null when not provided.
686
1295
  */
687
- longDescription: string;
1296
+ author_last_name?: string;
688
1297
  /**
689
- * Tags of the chart
1298
+ * Attachments associated with this message.
690
1299
  */
691
- categories: Array<string>;
692
- version_channels: Array<string>;
693
- value_schemas: Array<{
1300
+ attachments?: Array<{
694
1301
  /**
695
- * Version of the chart.
1302
+ * Unique identifier of the attachment (Mongo ObjectId).
696
1303
  */
697
- version: string;
1304
+ id: string;
698
1305
  /**
699
- * Schema of the chart values. JSON Schema as string
1306
+ * Original filename as uploaded.
700
1307
  */
701
- schema: string;
1308
+ filename: string;
702
1309
  /**
703
- * Schema of the chart values
1310
+ * MIME content type of the attachment.
704
1311
  */
705
- placeholder: string;
1312
+ content_type: string;
1313
+ /**
1314
+ * Size of the attachment in bytes.
1315
+ */
1316
+ size: number;
706
1317
  }>;
707
- };
708
- export type OrganizationCreateInput = {
709
1318
  /**
710
- * Email address used for billing as a string.
1319
+ * Creation date of the message. ISO 8601 UTC.
711
1320
  */
712
- email: string;
1321
+ date_created: string;
1322
+ };
1323
+ export type Ticket = {
713
1324
  /**
714
- * First name of the billing contact person.
1325
+ * Unique identifier of the ticket (Mongo ObjectId).
715
1326
  */
716
- first_name: string;
1327
+ id: string;
717
1328
  /**
718
- * Last name of the billing contact person.
1329
+ * Current state of the ticket.
719
1330
  */
720
- last_name: string;
1331
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
721
1332
  /**
722
- * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
1333
+ * Ticket category.
723
1334
  */
724
- company_name: string;
1335
+ category: 'billing' | 'technical' | 'general';
725
1336
  /**
726
- * Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.
1337
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
727
1338
  */
728
- password: string;
729
- };
730
- export type Organization = {
1339
+ summary: string;
731
1340
  /**
732
- * Unique identifier of the organization. UUID v4 string in canonical form
1341
+ * Closure timestamp. Null while the ticket is open.
733
1342
  */
734
- id: string;
1343
+ closed_at?: string;
735
1344
  /**
736
- * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
1345
+ * Creation date of the ticket. ISO 8601 UTC.
737
1346
  */
738
- name?: string;
1347
+ date_created: string;
739
1348
  /**
740
- * Creation date of the organization. ISO 8601 date string in UTC timezone
1349
+ * Last update date of the ticket. ISO 8601 UTC.
741
1350
  */
742
- date_created: string;
1351
+ date_updated: string;
743
1352
  /**
744
- * For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota.
1353
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
745
1354
  */
746
- quota: {
1355
+ messages?: Array<{
747
1356
  /**
748
- * Maximum number of Basic clusters that can be created.
749
- */
750
- basic_clusters_max: number;
751
- /**
752
- * Available number of Basic clusters that can be created.
753
- */
754
- basic_clusters_available: number;
755
- /**
756
- * Maximum number of Pro clusters that can be created.
1357
+ * Unique identifier of the message (Mongo ObjectId).
757
1358
  */
758
- pro_clusters_max: number;
1359
+ id: string;
759
1360
  /**
760
- * Available number of Pro clusters that can be created.
1361
+ * Message type. Internal notes are filtered out of customer-facing responses.
761
1362
  */
762
- pro_clusters_available: number;
1363
+ type: 'customer_reply' | 'agent_reply';
763
1364
  /**
764
- * Maximum number of fleets that can be created per cluster.
1365
+ * Message body in markdown.
765
1366
  */
766
- fleets_max: number;
1367
+ body: string;
767
1368
  /**
768
- * List of Cloudfleet cluster tiers available for the organization.
1369
+ * First name of the author. Null when not provided.
769
1370
  */
770
- cluster_tiers: Array<string>;
1371
+ author_first_name?: string;
771
1372
  /**
772
- * List of Cloudfleet control plane regions available for the organization.
1373
+ * Last name of the author. Null when not provided.
773
1374
  */
774
- regions: Array<string>;
1375
+ author_last_name?: string;
775
1376
  /**
776
- * List of CFKE control plane versions available for the organization.
1377
+ * Attachments associated with this message.
777
1378
  */
778
- versions: Array<{
1379
+ attachments?: Array<{
779
1380
  /**
780
- * Id of the control plane version. Used in API calls.
1381
+ * Unique identifier of the attachment (Mongo ObjectId).
781
1382
  */
782
1383
  id: string;
783
1384
  /**
784
- * Label of the control plane version. Used in frontent UI.
1385
+ * Original filename as uploaded.
785
1386
  */
786
- label: string;
1387
+ filename: string;
1388
+ /**
1389
+ * MIME content type of the attachment.
1390
+ */
1391
+ content_type: string;
1392
+ /**
1393
+ * Size of the attachment in bytes.
1394
+ */
1395
+ size: number;
787
1396
  }>;
788
- };
789
- /**
790
- * Status of the organization. Can be `active` or `closed`, or `suspended`.
791
- */
792
- status: 'active' | 'closed' | 'suspended';
793
- };
794
- export type PaymentMethod = {
795
- /**
796
- * Unique identifier of the organization. UUID v4 string in canonical form.
797
- */
798
- id: string;
799
- /**
800
- * Whether organization payment method was set up and ready to use for payments.
801
- */
802
- setup: boolean;
803
- /**
804
- * Payment method type type. Only `card` payments supported at the moment.
805
- */
806
- type: 'card';
807
- /**
808
- * Last 4 digits of the payment card number.
809
- */
810
- last4: string;
811
- /**
812
- * Two-digit number representing the card's expiration month.
813
- */
814
- exp_month: number;
815
- /**
816
- * Four-digit number representing the card's expiration year.
817
- */
818
- exp_year: number;
819
- /**
820
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
821
- */
822
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
1397
+ /**
1398
+ * Creation date of the message. ISO 8601 UTC.
1399
+ */
1400
+ date_created: string;
1401
+ }>;
823
1402
  };
824
1403
  export type TokenCreateInput = {
825
1404
  /**
@@ -863,35 +1442,85 @@ export type TokenUpdateInput = {
863
1442
  */
864
1443
  role?: 'Administrator' | 'User';
865
1444
  };
866
- export type Usage = {
1445
+ export type UsageFacets = {
867
1446
  /**
868
- * Hour of the usage
1447
+ * List of unique cluster IDs
869
1448
  */
870
- hour?: string;
1449
+ cluster_id?: Array<string>;
871
1450
  /**
872
- * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1451
+ * List of unique products
873
1452
  */
874
- cluster_id: string;
1453
+ product?: Array<string>;
1454
+ };
1455
+ export type UsageResponse = {
875
1456
  /**
876
- * Tier of the cluster.
1457
+ * Usage data
877
1458
  */
878
- cluster_tier: 'basic' | 'pro' | '';
879
- /**
880
- * The product the usage is associated with
1459
+ data: Array<{
1460
+ /**
1461
+ * Hour of the usage
1462
+ */
1463
+ hour: string;
1464
+ /**
1465
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1466
+ */
1467
+ cluster_id: string;
1468
+ /**
1469
+ * The product the usage is associated with
1470
+ */
1471
+ product: string;
1472
+ /**
1473
+ * Consumption
1474
+ */
1475
+ value: number;
1476
+ /**
1477
+ * Price per unit
1478
+ */
1479
+ price: number;
1480
+ /**
1481
+ * Total cost
1482
+ */
1483
+ total: number;
1484
+ }>;
1485
+ /**
1486
+ * Facets for filtering
1487
+ */
1488
+ facets: {
1489
+ /**
1490
+ * List of unique cluster IDs
1491
+ */
1492
+ cluster_id?: Array<string>;
1493
+ /**
1494
+ * List of unique products
1495
+ */
1496
+ product?: Array<string>;
1497
+ };
1498
+ };
1499
+ export type Usage = {
1500
+ /**
1501
+ * Hour of the usage
1502
+ */
1503
+ hour: string;
1504
+ /**
1505
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1506
+ */
1507
+ cluster_id: string;
1508
+ /**
1509
+ * The product the usage is associated with
881
1510
  */
882
- product: 'cfke_controlplane' | 'cfke_connected_nodes' | 'infra_compute' | 'infra_storage' | 'infra_loadbalancing' | 'infra_traffic' | 'cfcr_storage';
1511
+ product: string;
883
1512
  /**
884
- * Name of the Kubernetes node
1513
+ * Consumption
885
1514
  */
886
- node_name: string;
1515
+ value: number;
1516
+ /**
1517
+ * Price per unit
1518
+ */
1519
+ price: number;
887
1520
  /**
888
- * SKU of the Kubernetes node
1521
+ * Total cost
889
1522
  */
890
- sku: string;
891
- cpu: number | '';
892
- price: number | '';
893
- value: number | '';
894
- total: number | '';
1523
+ total: number;
895
1524
  };
896
1525
  export type UserCreateInput = {
897
1526
  /**
@@ -914,14 +1543,6 @@ export type UserCreateInput = {
914
1543
  * User password. Must be at least 8 characters long.
915
1544
  */
916
1545
  password: string;
917
- /**
918
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
919
- */
920
- status?: 'active' | 'inactive';
921
- /**
922
- * User role. Can be 'Administrator', 'User'.
923
- */
924
- role?: 'Administrator' | 'User';
925
1546
  };
926
1547
  export type User = {
927
1548
  /**
@@ -975,300 +1596,720 @@ export type UserUpdateInput = {
975
1596
  */
976
1597
  status?: 'active' | 'inactive';
977
1598
  };
978
- export type GetUsageData = {
1599
+ export type ListUserOrganizationsData = {
1600
+ body?: never;
1601
+ path: {
1602
+ /**
1603
+ * User email address.
1604
+ */
1605
+ email: string;
1606
+ };
1607
+ query?: never;
1608
+ url: '/users/organizations/{email}';
1609
+ };
1610
+ export type ListUserOrganizationsResponses = {
1611
+ /**
1612
+ * An array of organizations the user belongs to.
1613
+ */
1614
+ 200: Array<{
1615
+ /**
1616
+ * Unique identifier of the organization. UUID v4 string in canonical form
1617
+ */
1618
+ realm?: string;
1619
+ /**
1620
+ * Human-readable name of the organization
1621
+ */
1622
+ displayName?: string;
1623
+ }>;
1624
+ };
1625
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1626
+ export type ListUsersData = {
979
1627
  body?: never;
980
1628
  path?: never;
981
1629
  query?: never;
982
- url: '/billing/usage';
1630
+ url: '/users';
983
1631
  };
984
- export type GetUsageErrors = {
1632
+ export type ListUsersErrors = {
985
1633
  /**
986
1634
  * Not authenticated
987
1635
  */
988
1636
  401: unknown;
989
1637
  };
990
- export type GetUsageResponses = {
1638
+ export type ListUsersResponses = {
991
1639
  /**
992
- * An array of usage records.
1640
+ * An array of users
993
1641
  */
994
- 200: Array<Usage>;
1642
+ 200: Array<User>;
995
1643
  };
996
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
997
- export type GetBalanceData = {
998
- body?: never;
1644
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1645
+ export type CreateUserData = {
1646
+ body: UserCreateInput;
999
1647
  path?: never;
1000
1648
  query?: never;
1001
- url: '/billing/balance';
1649
+ url: '/users';
1002
1650
  };
1003
- export type GetBalanceResponses = {
1651
+ export type CreateUserResponses = {
1004
1652
  /**
1005
- * Current balance of the organization in USD as a floating-point number.
1653
+ * Successfully created. Returns created user details.
1006
1654
  */
1007
- 200: number;
1655
+ 200: User;
1008
1656
  };
1009
- export type GetBalanceResponse = GetBalanceResponses[keyof GetBalanceResponses];
1010
- export type GetPaymentMethodData = {
1657
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1658
+ export type DeleteUserData = {
1011
1659
  body?: never;
1012
- path?: never;
1660
+ path: {
1661
+ /**
1662
+ * Unique user identifier. UUID v4 string in canonical form
1663
+ */
1664
+ user_id: string;
1665
+ };
1013
1666
  query?: never;
1014
- url: '/billing/payment-method';
1667
+ url: '/users/{user_id}';
1015
1668
  };
1016
- export type GetPaymentMethodErrors = {
1669
+ export type DeleteUserErrors = {
1017
1670
  /**
1018
- * Returns 404 Not Found if the organization does not have a payment method set up.
1671
+ * Deleting own user is not allowed. Delete your organization instead.
1019
1672
  */
1020
- 404: unknown;
1021
- };
1022
- export type GetPaymentMethodResponses = {
1673
+ 400: unknown;
1023
1674
  /**
1024
- * Redacted payment card information.
1675
+ * Not authenticated
1025
1676
  */
1026
- 200: PaymentMethod;
1027
- };
1028
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1029
- export type GetPaymentMethodSecretData = {
1030
- body?: never;
1031
- path?: never;
1032
- query?: never;
1033
- url: '/billing/payment-method';
1677
+ 401: unknown;
1034
1678
  };
1035
- export type GetPaymentMethodSecretResponses = {
1679
+ export type DeleteUserResponses = {
1036
1680
  /**
1037
- * 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.
1038
- *
1681
+ * User profile information
1039
1682
  */
1040
- 200: {
1041
- /**
1042
- * The client secret.
1043
- */
1044
- id?: string;
1045
- };
1683
+ 200: User;
1046
1684
  };
1047
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1048
- export type ListInvoicesData = {
1685
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1686
+ export type GetUserData = {
1049
1687
  body?: never;
1050
- path?: never;
1051
- query: {
1052
- /**
1053
- * Start date for the usage. Date of oldest data point to retrieve.
1054
- */
1055
- start_date: string;
1688
+ path: {
1056
1689
  /**
1057
- * End date for the usage. Date of newest data point to retrieve.
1690
+ * Unique user identifier. UUID v4 string in canonical form
1058
1691
  */
1059
- end_date: string;
1692
+ user_id: string;
1060
1693
  };
1061
- url: '/billing/invoices';
1694
+ query?: never;
1695
+ url: '/users/{user_id}';
1062
1696
  };
1063
- export type ListInvoicesErrors = {
1697
+ export type GetUserErrors = {
1064
1698
  /**
1065
1699
  * Not authenticated
1066
1700
  */
1067
1701
  401: unknown;
1068
1702
  };
1069
- export type ListInvoicesResponses = {
1703
+ export type GetUserResponses = {
1070
1704
  /**
1071
- * An array of usage records.
1705
+ * User profile information
1072
1706
  */
1073
- 200: Array<Invoice>;
1707
+ 200: User;
1074
1708
  };
1075
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1076
- export type GetInvoiceData = {
1077
- body?: never;
1709
+ export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1710
+ export type UpdateUserData = {
1711
+ body: UserUpdateInput;
1078
1712
  path: {
1079
1713
  /**
1080
- * Unique invoice identifier. UUID v4 string in canonical form
1714
+ * Unique user identifier. UUID v4 string in canonical form
1081
1715
  */
1082
- id: string;
1716
+ user_id: string;
1083
1717
  };
1084
1718
  query?: never;
1085
- url: '/billing/invoices/{id}';
1719
+ url: '/users/{user_id}';
1086
1720
  };
1087
- export type GetInvoiceResponses = {
1721
+ export type UpdateUserResponses = {
1088
1722
  /**
1089
- * Returns a single Invoice HTML representation under `html` property.
1723
+ * Successfully created. Returns created user details.
1090
1724
  */
1091
- 200: {
1092
- html?: string;
1093
- };
1725
+ 200: User;
1094
1726
  };
1095
- export type GetInvoiceResponse = GetInvoiceResponses[keyof GetInvoiceResponses];
1096
- export type GetContactData = {
1727
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1728
+ export type ListTokensData = {
1097
1729
  body?: never;
1098
1730
  path?: never;
1099
1731
  query?: never;
1100
- url: '/billing/contact';
1732
+ url: '/tokens';
1101
1733
  };
1102
- export type GetContactResponses = {
1734
+ export type ListTokensErrors = {
1103
1735
  /**
1104
- * Returns a single object containing organization contact and billing address details.
1736
+ * Not authenticated
1105
1737
  */
1106
- 200: BillingContact;
1107
- };
1108
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
1109
- export type UpdateContactData = {
1110
- body: BillingContact;
1111
- path?: never;
1112
- query?: never;
1113
- url: '/billing/contact';
1738
+ 401: unknown;
1114
1739
  };
1115
- export type UpdateContactResponses = {
1740
+ export type ListTokensResponses = {
1116
1741
  /**
1117
- * Successfully updated. Returns updated organization details.
1742
+ * Returns a list of access token details with masked secrets.
1118
1743
  */
1119
- 200: BillingContact;
1744
+ 200: Array<Token>;
1120
1745
  };
1121
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
1122
- export type GetCreditsData = {
1123
- body?: never;
1746
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1747
+ export type CreateTokenData = {
1748
+ body: TokenCreateInput;
1124
1749
  path?: never;
1125
1750
  query?: never;
1126
- url: '/billing/credits';
1751
+ url: '/tokens';
1127
1752
  };
1128
- export type GetCreditsErrors = {
1753
+ export type CreateTokenErrors = {
1129
1754
  /**
1130
1755
  * Not authenticated
1131
1756
  */
1132
1757
  401: unknown;
1133
1758
  };
1134
- export type GetCreditsResponses = {
1759
+ export type CreateTokenResponses = {
1135
1760
  /**
1136
- * An array of the applied promotional credits records.
1761
+ * Successfully created. Returns created token details with unmasked/raw secret.
1137
1762
  */
1138
- 200: Array<BillingCredits>;
1763
+ 200: Token;
1139
1764
  };
1140
- export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
1141
- export type RedeemCreditsData = {
1142
- body: {
1765
+ export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1766
+ export type DeleteTokenData = {
1767
+ body?: never;
1768
+ path: {
1143
1769
  /**
1144
- * Promotional code to redeem
1770
+ * Generated unique identifier of the access token.
1145
1771
  */
1146
- code?: string;
1772
+ token_id: string;
1147
1773
  };
1148
- path?: never;
1149
1774
  query?: never;
1150
- url: '/billing/credits';
1151
- };
1152
- export type RedeemCreditsErrors = {
1153
- /**
1154
- * Not authenticated
1155
- */
1156
- 401: unknown;
1775
+ url: '/tokens/{token_id}';
1157
1776
  };
1158
- export type RedeemCreditsResponses = {
1777
+ export type DeleteTokenResponses = {
1159
1778
  /**
1160
- * Successfully created a new organization.
1779
+ * Successfully deleted.
1161
1780
  */
1162
1781
  200: unknown;
1163
1782
  };
1164
- export type ListChartsData = {
1783
+ export type GetTokenData = {
1165
1784
  body?: never;
1166
1785
  path: {
1167
1786
  /**
1168
- * Unique identifier of the cluster. UUID v4 string in canonical form
1787
+ * Generated unique identifier of the access token.
1169
1788
  */
1170
- cluster_id: string;
1789
+ token_id: string;
1171
1790
  };
1172
1791
  query?: never;
1173
- url: '/clusters/{cluster_id}/charts';
1792
+ url: '/tokens/{token_id}';
1174
1793
  };
1175
- export type ListChartsErrors = {
1794
+ export type GetTokenErrors = {
1176
1795
  /**
1177
1796
  * Not authenticated
1178
1797
  */
1179
1798
  401: unknown;
1180
1799
  };
1181
- export type ListChartsResponses = {
1800
+ export type GetTokenResponses = {
1182
1801
  /**
1183
- * An array of charts
1802
+ * Returns access token details with masked secret.
1184
1803
  */
1185
- 200: Array<Chart>;
1804
+ 200: Token;
1186
1805
  };
1187
- export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
1188
- export type CreateChartData = {
1189
- body: ChartCreateInput;
1806
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1807
+ export type UpdateTokenData = {
1808
+ body: TokenUpdateInput;
1190
1809
  path: {
1191
1810
  /**
1192
- * Unique identifier of the cluster. UUID v4 string in canonical form
1811
+ * Generated unique identifier of the access token.
1193
1812
  */
1194
- cluster_id: string;
1813
+ token_id: string;
1195
1814
  };
1196
1815
  query?: never;
1197
- url: '/clusters/{cluster_id}/charts';
1816
+ url: '/tokens/{token_id}';
1198
1817
  };
1199
- export type CreateChartResponses = {
1818
+ export type UpdateTokenErrors = {
1200
1819
  /**
1201
- * Successfully created. Returns created Chart ID.
1820
+ * Not authenticated
1202
1821
  */
1203
- 200: string;
1822
+ 401: unknown;
1204
1823
  };
1205
- export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
1206
- export type DeleteChartData = {
1824
+ export type UpdateTokenResponses = {
1825
+ /**
1826
+ * Successfully updated. Returns updated token details with masked secret.
1827
+ */
1828
+ 200: Token;
1829
+ };
1830
+ export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1831
+ export type RegenerateTokenData = {
1207
1832
  body?: never;
1208
1833
  path: {
1209
1834
  /**
1210
- * Unique identifier of the cluster. UUID v4 string in canonical form
1835
+ * Generated unique identifier of the access token.
1211
1836
  */
1212
- cluster_id: string;
1837
+ token_id: string;
1838
+ };
1839
+ query?: never;
1840
+ url: '/tokens/{token_id}/secret';
1841
+ };
1842
+ export type RegenerateTokenErrors = {
1843
+ /**
1844
+ * Not authenticated
1845
+ */
1846
+ 401: unknown;
1847
+ };
1848
+ export type RegenerateTokenResponses = {
1849
+ /**
1850
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1851
+ */
1852
+ 200: Token;
1853
+ };
1854
+ export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1855
+ export type ListTicketsData = {
1856
+ body?: never;
1857
+ path?: never;
1858
+ query?: never;
1859
+ url: '/tickets';
1860
+ };
1861
+ export type ListTicketsResponses = {
1862
+ /**
1863
+ * Tickets for the organization.
1864
+ */
1865
+ 200: TicketListResponse;
1866
+ };
1867
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1868
+ export type CreateTicketData = {
1869
+ body: {
1213
1870
  /**
1214
- * Chart deployment name as the unique identifier of the chart.
1871
+ * JSON-encoded TicketCreateInput.
1215
1872
  */
1216
- chart_name: string;
1873
+ payload?: string;
1874
+ attachments?: Array<Blob | File>;
1217
1875
  };
1876
+ path?: never;
1218
1877
  query?: never;
1219
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1878
+ url: '/tickets';
1220
1879
  };
1221
- export type DeleteChartResponses = {
1880
+ export type CreateTicketResponses = {
1222
1881
  /**
1223
- * Successfully deleted.
1882
+ * Ticket created.
1224
1883
  */
1225
- 200: string;
1884
+ 200: Ticket;
1226
1885
  };
1227
- export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
1228
- export type GetChartData = {
1886
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
1887
+ export type CloseTicketData = {
1888
+ body?: never;
1889
+ path: {
1890
+ ticket_id: string;
1891
+ };
1892
+ query?: never;
1893
+ url: '/tickets/{ticket_id}';
1894
+ };
1895
+ export type CloseTicketResponses = {
1896
+ /**
1897
+ * Ticket closed.
1898
+ */
1899
+ 200: Ticket;
1900
+ };
1901
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
1902
+ export type GetTicketData = {
1229
1903
  body?: never;
1230
1904
  path: {
1905
+ ticket_id: string;
1906
+ };
1907
+ query?: never;
1908
+ url: '/tickets/{ticket_id}';
1909
+ };
1910
+ export type GetTicketResponses = {
1911
+ /**
1912
+ * Ticket with messages (internal notes excluded).
1913
+ */
1914
+ 200: Ticket;
1915
+ };
1916
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
1917
+ export type ReplyTicketData = {
1918
+ body: {
1231
1919
  /**
1232
- * Unique identifier of the cluster. UUID v4 string in canonical form
1920
+ * JSON-encoded TicketMessageInput.
1233
1921
  */
1234
- cluster_id: string;
1922
+ payload?: string;
1923
+ attachments?: Array<Blob | File>;
1924
+ };
1925
+ path: {
1926
+ ticket_id: string;
1927
+ };
1928
+ query?: never;
1929
+ url: '/tickets/{ticket_id}/messages';
1930
+ };
1931
+ export type ReplyTicketErrors = {
1932
+ /**
1933
+ * Ticket is closed. Open a new ticket instead.
1934
+ */
1935
+ 409: unknown;
1936
+ };
1937
+ export type ReplyTicketResponses = {
1938
+ /**
1939
+ * Reply appended.
1940
+ */
1941
+ 200: TicketMessage;
1942
+ };
1943
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
1944
+ export type GetTicketAttachmentData = {
1945
+ body?: never;
1946
+ path: {
1947
+ ticket_id: string;
1948
+ attachment_id: string;
1949
+ };
1950
+ query?: never;
1951
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
1952
+ };
1953
+ export type GetTicketAttachmentResponses = {
1954
+ /**
1955
+ * Attachment binary stream.
1956
+ */
1957
+ 200: Blob | File;
1958
+ };
1959
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
1960
+ export type ListRepositoriesData = {
1961
+ body?: never;
1962
+ path?: never;
1963
+ query?: never;
1964
+ url: '/registry';
1965
+ };
1966
+ export type ListRepositoriesErrors = {
1967
+ /**
1968
+ * Not authenticated
1969
+ */
1970
+ 401: unknown;
1971
+ /**
1972
+ * Internal server error
1973
+ */
1974
+ 500: unknown;
1975
+ };
1976
+ export type ListRepositoriesResponses = {
1977
+ /**
1978
+ * List of repositories
1979
+ */
1980
+ 200: Array<RegistryRepository>;
1981
+ };
1982
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
1983
+ export type ListTagsData = {
1984
+ body?: never;
1985
+ path: {
1235
1986
  /**
1236
- * Chart deployment name as the unique identifier of the chart.
1987
+ * Region where the repository is located
1988
+ */
1989
+ region: string;
1990
+ /**
1991
+ * Name of the repository
1992
+ */
1993
+ repository: string;
1994
+ };
1995
+ query?: never;
1996
+ url: '/registry/{region}/{repository}';
1997
+ };
1998
+ export type ListTagsErrors = {
1999
+ /**
2000
+ * Not authenticated
2001
+ */
2002
+ 401: unknown;
2003
+ /**
2004
+ * Repository not found
2005
+ */
2006
+ 404: unknown;
2007
+ /**
2008
+ * Internal server error
2009
+ */
2010
+ 500: unknown;
2011
+ };
2012
+ export type ListTagsResponses = {
2013
+ /**
2014
+ * Repository with tags
2015
+ */
2016
+ 200: RegistryRepositoryWithTags;
2017
+ };
2018
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2019
+ export type DeleteTagData = {
2020
+ body?: never;
2021
+ path: {
2022
+ /**
2023
+ * Region where the repository is located
2024
+ */
2025
+ region: string;
2026
+ /**
2027
+ * Name of the repository
2028
+ */
2029
+ repository: string;
2030
+ /**
2031
+ * Name of the tag
2032
+ */
2033
+ tag: string;
2034
+ };
2035
+ query?: never;
2036
+ url: '/registry/{region}/{repository}/{tag}';
2037
+ };
2038
+ export type DeleteTagErrors = {
2039
+ /**
2040
+ * Not authenticated
2041
+ */
2042
+ 401: unknown;
2043
+ /**
2044
+ * Tag not found
2045
+ */
2046
+ 404: unknown;
2047
+ /**
2048
+ * Internal server error
2049
+ */
2050
+ 500: unknown;
2051
+ };
2052
+ export type DeleteTagResponses = {
2053
+ /**
2054
+ * Tag successfully deleted
2055
+ */
2056
+ 200: unknown;
2057
+ };
2058
+ export type GetTagData = {
2059
+ body?: never;
2060
+ path: {
2061
+ /**
2062
+ * Region where the repository is located
2063
+ */
2064
+ region: string;
2065
+ /**
2066
+ * Name of the repository
2067
+ */
2068
+ repository: string;
2069
+ /**
2070
+ * Name of the tag
2071
+ */
2072
+ tag: string;
2073
+ };
2074
+ query?: never;
2075
+ url: '/registry/{region}/{repository}/{tag}';
2076
+ };
2077
+ export type GetTagErrors = {
2078
+ /**
2079
+ * Not authenticated
2080
+ */
2081
+ 401: unknown;
2082
+ /**
2083
+ * Tag not found
2084
+ */
2085
+ 404: unknown;
2086
+ /**
2087
+ * Internal server error
2088
+ */
2089
+ 500: unknown;
2090
+ };
2091
+ export type GetTagResponses = {
2092
+ /**
2093
+ * Tag details
2094
+ */
2095
+ 200: RegistryTag;
2096
+ };
2097
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2098
+ export type GetOrganizationData = {
2099
+ body?: never;
2100
+ path?: never;
2101
+ query?: never;
2102
+ url: '/organization';
2103
+ };
2104
+ export type GetOrganizationResponses = {
2105
+ /**
2106
+ * Returns a single object containing organization details.
2107
+ */
2108
+ 200: Organization;
2109
+ };
2110
+ export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2111
+ export type CreateOrganizationData = {
2112
+ body: OrganizationCreateInput;
2113
+ path?: never;
2114
+ query?: never;
2115
+ url: '/organization';
2116
+ };
2117
+ export type CreateOrganizationResponses = {
2118
+ /**
2119
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2120
+ *
2121
+ */
2122
+ 200: OrganizationCreateOutput;
2123
+ };
2124
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2125
+ export type PostMcpData = {
2126
+ /**
2127
+ * JSON-RPC 2.0 request payload
2128
+ */
2129
+ body: {
2130
+ jsonrpc?: string;
2131
+ method?: string;
2132
+ id?: string | number;
2133
+ /**
2134
+ * Method-specific parameters
2135
+ */
2136
+ params?: {
2137
+ [key: string]: unknown;
2138
+ };
2139
+ };
2140
+ path?: never;
2141
+ query?: never;
2142
+ url: '/mcp';
2143
+ };
2144
+ export type PostMcpErrors = {
2145
+ /**
2146
+ * Not authenticated
2147
+ */
2148
+ 401: unknown;
2149
+ };
2150
+ export type PostMcpResponses = {
2151
+ /**
2152
+ * JSON-RPC 2.0 success or error response
2153
+ */
2154
+ 200: {
2155
+ jsonrpc?: string;
2156
+ id?: string | number;
2157
+ result?: {
2158
+ [key: string]: unknown;
2159
+ };
2160
+ error?: {
2161
+ code?: number;
2162
+ message?: string;
2163
+ };
2164
+ };
2165
+ };
2166
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2167
+ export type ListMarketplaceChartsData = {
2168
+ body?: never;
2169
+ path?: never;
2170
+ query?: never;
2171
+ url: '/marketplace';
2172
+ };
2173
+ export type ListMarketplaceChartsErrors = {
2174
+ /**
2175
+ * Not authenticated
2176
+ */
2177
+ 401: unknown;
2178
+ };
2179
+ export type ListMarketplaceChartsResponses = {
2180
+ /**
2181
+ * An array of chart listings in the marketplace.
2182
+ */
2183
+ 200: Array<MarketplaceListing>;
2184
+ };
2185
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2186
+ export type GetMarketplaceChartFilesData = {
2187
+ body?: never;
2188
+ path: {
2189
+ /**
2190
+ * Name of the chart in the marketplace.
1237
2191
  */
1238
2192
  chart_name: string;
2193
+ /**
2194
+ * 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).
2195
+ */
2196
+ version_channel: string;
1239
2197
  };
1240
2198
  query?: never;
1241
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2199
+ url: '/marketplace/{chart_name}/files/{version_channel}';
1242
2200
  };
1243
- export type GetChartResponses = {
2201
+ export type GetMarketplaceChartFilesErrors = {
1244
2202
  /**
1245
- * Returns a single object containing chart details.
2203
+ * Chart not found or no version matches the channel
2204
+ */
2205
+ 404: unknown;
2206
+ };
2207
+ export type GetMarketplaceChartFilesResponses = {
2208
+ /**
2209
+ * Returns an object containing the chart files for the latest matching version.
2210
+ */
2211
+ 200: MarketplaceListingFiles;
2212
+ };
2213
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2214
+ export type ListInvitesData = {
2215
+ body?: never;
2216
+ path?: never;
2217
+ query?: never;
2218
+ url: '/invites';
2219
+ };
2220
+ export type ListInvitesErrors = {
2221
+ /**
2222
+ * Not authenticated
2223
+ */
2224
+ 401: unknown;
2225
+ };
2226
+ export type ListInvitesResponses = {
2227
+ /**
2228
+ * An array of invites
2229
+ */
2230
+ 200: Array<Invite>;
2231
+ };
2232
+ export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
2233
+ export type CreateInviteData = {
2234
+ body: InviteCreateInput;
2235
+ path?: never;
2236
+ query?: never;
2237
+ url: '/invites';
2238
+ };
2239
+ export type CreateInviteResponses = {
2240
+ /**
2241
+ * Successfully created. Returns created invite details.
2242
+ */
2243
+ 200: Invite;
2244
+ };
2245
+ export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
2246
+ export type GetInviteData = {
2247
+ body?: never;
2248
+ path: {
2249
+ /**
2250
+ * Invitation code
2251
+ */
2252
+ code: string;
2253
+ };
2254
+ query?: never;
2255
+ url: '/invites/{code}';
2256
+ };
2257
+ export type GetInviteResponses = {
2258
+ /**
2259
+ * The invitation code is valid. Returns the invited email and organization.
2260
+ */
2261
+ 200: {
2262
+ /**
2263
+ * Email address the invite was issued to.
2264
+ */
2265
+ email?: string;
2266
+ /**
2267
+ * Identifier of the organization the invite grants access to.
2268
+ */
2269
+ organization_id?: string;
2270
+ };
2271
+ };
2272
+ export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
2273
+ export type DeleteInviteData = {
2274
+ body?: never;
2275
+ path: {
2276
+ /**
2277
+ * User email address
2278
+ */
2279
+ email: string;
2280
+ };
2281
+ query?: never;
2282
+ url: '/invites/{email}';
2283
+ };
2284
+ export type DeleteInviteResponses = {
2285
+ /**
2286
+ * Successfully deleted.
1246
2287
  */
1247
- 200: Chart;
2288
+ 200: unknown;
1248
2289
  };
1249
- export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
1250
- export type UpdateChartData = {
1251
- body: ChartUpdateInput;
2290
+ export type QueryClusterData = {
2291
+ body?: never;
1252
2292
  path: {
1253
2293
  /**
1254
2294
  * Unique identifier of the cluster. UUID v4 string in canonical form
1255
2295
  */
1256
2296
  cluster_id: string;
1257
- /**
1258
- * Chart deployment name as the unique identifier of the chart.
1259
- */
1260
- chart_name: string;
1261
2297
  };
1262
2298
  query?: never;
1263
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2299
+ url: '/clusters/{cluster_id}/query';
1264
2300
  };
1265
- export type UpdateChartResponses = {
2301
+ export type QueryClusterErrors = {
1266
2302
  /**
1267
- * Successfully updated.
2303
+ * Not authenticated
1268
2304
  */
1269
- 200: string;
2305
+ 401: unknown;
2306
+ };
2307
+ export type QueryClusterResponses = {
2308
+ /**
2309
+ * Kubernetes API response
2310
+ */
2311
+ 200: unknown;
1270
2312
  };
1271
- export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
1272
2313
  export type ListFleetsData = {
1273
2314
  body?: never;
1274
2315
  path: {
@@ -1309,6 +2350,10 @@ export type CreateFleetErrors = {
1309
2350
  * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1310
2351
  */
1311
2352
  402: string;
2353
+ /**
2354
+ * 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.
2355
+ */
2356
+ 409: string;
1312
2357
  };
1313
2358
  export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1314
2359
  export type CreateFleetResponses = {
@@ -1333,6 +2378,13 @@ export type DeleteFleetData = {
1333
2378
  query?: never;
1334
2379
  url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1335
2380
  };
2381
+ export type DeleteFleetErrors = {
2382
+ /**
2383
+ * 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.
2384
+ */
2385
+ 409: string;
2386
+ };
2387
+ export type DeleteFleetError = DeleteFleetErrors[keyof DeleteFleetErrors];
1336
2388
  export type DeleteFleetResponses = {
1337
2389
  /**
1338
2390
  * Successfully deleted.
@@ -1382,6 +2434,10 @@ export type UpdateFleetErrors = {
1382
2434
  * Organization must have a valid payment method configured to access this endpoint.
1383
2435
  */
1384
2436
  402: string;
2437
+ /**
2438
+ * 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.
2439
+ */
2440
+ 409: string;
1385
2441
  };
1386
2442
  export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1387
2443
  export type UpdateFleetResponses = {
@@ -1391,7 +2447,7 @@ export type UpdateFleetResponses = {
1391
2447
  200: string;
1392
2448
  };
1393
2449
  export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1394
- export type QueryClusterData = {
2450
+ export type ListChartsData = {
1395
2451
  body?: never;
1396
2452
  path: {
1397
2453
  /**
@@ -1400,525 +2456,485 @@ export type QueryClusterData = {
1400
2456
  cluster_id: string;
1401
2457
  };
1402
2458
  query?: never;
1403
- url: '/clusters/{cluster_id}/query';
1404
- };
1405
- export type QueryClusterErrors = {
1406
- /**
1407
- * Not authenticated
1408
- */
1409
- 401: unknown;
1410
- };
1411
- export type QueryClusterResponses = {
1412
- /**
1413
- * Kubernetes API response
1414
- */
1415
- 200: unknown;
1416
- };
1417
- export type ListClustersData = {
1418
- body?: never;
1419
- path?: never;
1420
- query?: never;
1421
- url: '/clusters';
2459
+ url: '/clusters/{cluster_id}/charts';
1422
2460
  };
1423
- export type ListClustersErrors = {
2461
+ export type ListChartsErrors = {
1424
2462
  /**
1425
2463
  * Not authenticated
1426
2464
  */
1427
2465
  401: unknown;
1428
2466
  };
1429
- export type ListClustersResponses = {
2467
+ export type ListChartsResponses = {
1430
2468
  /**
1431
- * An array of clusters
2469
+ * An array of charts
1432
2470
  */
1433
- 200: Array<Cluster>;
2471
+ 200: Array<Chart>;
1434
2472
  };
1435
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1436
- export type CreateClusterData = {
1437
- body: ClusterCreateInput;
1438
- path?: never;
2473
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
2474
+ export type CreateChartData = {
2475
+ body: ChartCreateInput;
2476
+ path: {
2477
+ /**
2478
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2479
+ */
2480
+ cluster_id: string;
2481
+ };
1439
2482
  query?: never;
1440
- url: '/clusters';
2483
+ url: '/clusters/{cluster_id}/charts';
1441
2484
  };
1442
- export type CreateClusterErrors = {
2485
+ export type CreateChartErrors = {
1443
2486
  /**
1444
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2487
+ * 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.
1445
2488
  */
1446
- 402: string;
2489
+ 409: string;
1447
2490
  };
1448
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1449
- export type CreateClusterResponses = {
2491
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2492
+ export type CreateChartResponses = {
1450
2493
  /**
1451
- * Successfully created. Returns created Cluster ID.
2494
+ * Successfully created. Returns created Chart ID.
1452
2495
  */
1453
2496
  200: string;
1454
2497
  };
1455
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1456
- export type DeleteClusterData = {
2498
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2499
+ export type DeleteChartData = {
1457
2500
  body?: never;
1458
2501
  path: {
1459
2502
  /**
1460
2503
  * Unique identifier of the cluster. UUID v4 string in canonical form
1461
2504
  */
1462
2505
  cluster_id: string;
2506
+ /**
2507
+ * Chart deployment name as the unique identifier of the chart.
2508
+ */
2509
+ chart_name: string;
1463
2510
  };
1464
2511
  query?: never;
1465
- url: '/clusters/{cluster_id}';
2512
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1466
2513
  };
1467
- export type DeleteClusterResponses = {
2514
+ export type DeleteChartErrors = {
2515
+ /**
2516
+ * 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.
2517
+ */
2518
+ 409: string;
2519
+ };
2520
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2521
+ export type DeleteChartResponses = {
1468
2522
  /**
1469
2523
  * Successfully deleted.
1470
2524
  */
1471
2525
  200: string;
1472
2526
  };
1473
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1474
- export type GetClusterData = {
2527
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2528
+ export type GetChartData = {
1475
2529
  body?: never;
1476
2530
  path: {
1477
2531
  /**
1478
2532
  * Unique identifier of the cluster. UUID v4 string in canonical form
1479
2533
  */
1480
2534
  cluster_id: string;
1481
- };
1482
- query?: never;
1483
- url: '/clusters/{cluster_id}';
1484
- };
1485
- export type GetClusterResponses = {
1486
- /**
1487
- * Returns a single object containing cluster details.
1488
- */
1489
- 200: Cluster;
1490
- };
1491
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1492
- export type UpdateClusterData = {
1493
- body: ClusterUpdateInput;
1494
- path: {
1495
2535
  /**
1496
- * Unique identifier of the cluster. UUID v4 string in canonical form
2536
+ * Chart deployment name as the unique identifier of the chart.
1497
2537
  */
1498
- cluster_id: string;
2538
+ chart_name: string;
1499
2539
  };
1500
2540
  query?: never;
1501
- url: '/clusters/{cluster_id}';
2541
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1502
2542
  };
1503
- export type UpdateClusterResponses = {
2543
+ export type GetChartResponses = {
1504
2544
  /**
1505
- * Successfully updated. Returns updated cluster details.
2545
+ * Returns a single object containing chart details.
1506
2546
  */
1507
- 200: Cluster;
2547
+ 200: Chart;
1508
2548
  };
1509
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1510
- export type GetJoinInformationData = {
1511
- body?: never;
2549
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2550
+ export type UpdateChartData = {
2551
+ body: ChartUpdateInput;
1512
2552
  path: {
1513
2553
  /**
1514
2554
  * Unique identifier of the cluster. UUID v4 string in canonical form
1515
2555
  */
1516
2556
  cluster_id: string;
2557
+ /**
2558
+ * Chart deployment name as the unique identifier of the chart.
2559
+ */
2560
+ chart_name: string;
1517
2561
  };
1518
2562
  query?: never;
1519
- url: '/clusters/{cluster_id}/join_information';
2563
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1520
2564
  };
1521
- export type GetJoinInformationErrors = {
2565
+ export type UpdateChartErrors = {
1522
2566
  /**
1523
- * Not authenticated
2567
+ * 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.
1524
2568
  */
1525
- 401: unknown;
2569
+ 409: string;
1526
2570
  };
1527
- export type GetJoinInformationResponses = {
2571
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2572
+ export type UpdateChartResponses = {
1528
2573
  /**
1529
- * An object of cluster join information
2574
+ * Successfully updated.
1530
2575
  */
1531
- 200: ClusterJoinInformation;
2576
+ 200: string;
1532
2577
  };
1533
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1534
- export type ListInvitesData = {
2578
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2579
+ export type ListClustersData = {
1535
2580
  body?: never;
1536
2581
  path?: never;
1537
2582
  query?: never;
1538
- url: '/invites';
2583
+ url: '/clusters';
1539
2584
  };
1540
- export type ListInvitesErrors = {
2585
+ export type ListClustersErrors = {
1541
2586
  /**
1542
2587
  * Not authenticated
1543
2588
  */
1544
2589
  401: unknown;
1545
2590
  };
1546
- export type ListInvitesResponses = {
2591
+ export type ListClustersResponses = {
1547
2592
  /**
1548
- * An array of invites
2593
+ * An array of clusters
1549
2594
  */
1550
- 200: Array<Invite>;
2595
+ 200: Array<Cluster>;
1551
2596
  };
1552
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1553
- export type CreateInviteData = {
1554
- body: {
1555
- /**
1556
- * User email address
1557
- */
1558
- email?: string;
1559
- };
2597
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2598
+ export type CreateClusterData = {
2599
+ body: ClusterCreateInput;
1560
2600
  path?: never;
1561
2601
  query?: never;
1562
- url: '/invites';
2602
+ url: '/clusters';
1563
2603
  };
1564
- export type CreateInviteResponses = {
2604
+ export type CreateClusterErrors = {
1565
2605
  /**
1566
- * Successfully created. Returns created invite details.
2606
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1567
2607
  */
1568
- 200: Invite;
1569
- };
1570
- export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
1571
- export type GetInviteData = {
1572
- body?: never;
1573
- path: {
1574
- /**
1575
- * Invitation code
1576
- */
1577
- code: string;
1578
- };
1579
- query?: never;
1580
- url: '/invites/{code}';
2608
+ 402: string;
1581
2609
  };
1582
- export type GetInviteResponses = {
2610
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2611
+ export type CreateClusterResponses = {
1583
2612
  /**
1584
- * Returns a single object containing invite details.
2613
+ * Successfully created. Returns created Cluster ID.
1585
2614
  */
1586
- 200: Invite;
2615
+ 200: string;
1587
2616
  };
1588
- export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1589
- export type DeleteInviteData = {
2617
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2618
+ export type DeleteClusterData = {
1590
2619
  body?: never;
1591
2620
  path: {
1592
2621
  /**
1593
- * User email address
2622
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1594
2623
  */
1595
- email: string;
2624
+ cluster_id: string;
1596
2625
  };
1597
2626
  query?: never;
1598
- url: '/invites/{email}';
2627
+ url: '/clusters/{cluster_id}';
1599
2628
  };
1600
- export type DeleteInviteResponses = {
2629
+ export type DeleteClusterErrors = {
1601
2630
  /**
1602
- * Successfully deleted.
2631
+ * Cluster not found; it does not exist or has already been deleted.
1603
2632
  */
1604
- 200: unknown;
1605
- };
1606
- export type ListMarketplaceChartsData = {
1607
- body?: never;
1608
- path?: never;
1609
- query?: never;
1610
- url: '/marketplace';
1611
- };
1612
- export type ListMarketplaceChartsErrors = {
2633
+ 404: unknown;
1613
2634
  /**
1614
- * Not authenticated
2635
+ * 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.
1615
2636
  */
1616
- 401: unknown;
2637
+ 409: string;
2638
+ /**
2639
+ * Transient failure tearing down the cluster; retry the request.
2640
+ */
2641
+ 503: unknown;
1617
2642
  };
1618
- export type ListMarketplaceChartsResponses = {
2643
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2644
+ export type DeleteClusterResponses = {
1619
2645
  /**
1620
- * An array of chart listings in the marketplace.
2646
+ * Successfully deleted. The cluster has been torn down.
1621
2647
  */
1622
- 200: Array<MarketplaceListing>;
2648
+ 200: string;
1623
2649
  };
1624
- export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
1625
- export type GetMarketplaceChartData = {
2650
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2651
+ export type GetClusterData = {
1626
2652
  body?: never;
1627
2653
  path: {
1628
2654
  /**
1629
- * Unique identifier of the chart listing in the marketplace.
2655
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1630
2656
  */
1631
- listing_id: string;
2657
+ cluster_id: string;
1632
2658
  };
1633
2659
  query?: never;
1634
- url: '/marketplace/{listing_id}';
2660
+ url: '/clusters/{cluster_id}';
1635
2661
  };
1636
- export type GetMarketplaceChartResponses = {
2662
+ export type GetClusterResponses = {
1637
2663
  /**
1638
- * Returns an object containing the chart listing details.
2664
+ * Returns a single object containing cluster details.
1639
2665
  */
1640
- 200: MarketplaceListing;
2666
+ 200: Cluster;
1641
2667
  };
1642
- export type GetMarketplaceChartResponse = GetMarketplaceChartResponses[keyof GetMarketplaceChartResponses];
1643
- export type GetOrganizationData = {
1644
- body?: never;
1645
- path?: never;
2668
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2669
+ export type UpdateClusterData = {
2670
+ body: ClusterUpdateInput;
2671
+ path: {
2672
+ /**
2673
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2674
+ */
2675
+ cluster_id: string;
2676
+ };
1646
2677
  query?: never;
1647
- url: '/organization';
2678
+ url: '/clusters/{cluster_id}';
1648
2679
  };
1649
- export type GetOrganizationResponses = {
2680
+ export type UpdateClusterErrors = {
1650
2681
  /**
1651
- * Returns a single object containing organization details.
2682
+ * 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.
1652
2683
  */
1653
- 200: Organization;
1654
- };
1655
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
1656
- export type CreateOrganizationData = {
1657
- body: OrganizationCreateInput;
1658
- path?: never;
1659
- query?: never;
1660
- url: '/organization';
2684
+ 409: string;
1661
2685
  };
1662
- export type CreateOrganizationResponses = {
2686
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2687
+ export type UpdateClusterResponses = {
1663
2688
  /**
1664
- * Successfully created a new organization.
2689
+ * Successfully updated. Returns updated cluster details.
1665
2690
  */
1666
- 200: unknown;
2691
+ 200: Cluster;
1667
2692
  };
1668
- export type ListTokensData = {
2693
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2694
+ export type GetJoinInformationData = {
1669
2695
  body?: never;
1670
- path?: never;
2696
+ path: {
2697
+ /**
2698
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2699
+ */
2700
+ cluster_id: string;
2701
+ };
1671
2702
  query?: never;
1672
- url: '/tokens';
2703
+ url: '/clusters/{cluster_id}/join_information';
1673
2704
  };
1674
- export type ListTokensErrors = {
2705
+ export type GetJoinInformationErrors = {
1675
2706
  /**
1676
2707
  * Not authenticated
1677
2708
  */
1678
2709
  401: unknown;
2710
+ /**
2711
+ * 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.
2712
+ */
2713
+ 409: string;
1679
2714
  };
1680
- export type ListTokensResponses = {
2715
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2716
+ export type GetJoinInformationResponses = {
1681
2717
  /**
1682
- * Returns a list of access token details with masked secrets.
2718
+ * An object of cluster join information
1683
2719
  */
1684
- 200: Array<Token>;
2720
+ 200: ClusterJoinInformation;
1685
2721
  };
1686
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1687
- export type CreateTokenData = {
1688
- body: TokenCreateInput;
2722
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2723
+ export type GetUsageData = {
2724
+ body?: never;
1689
2725
  path?: never;
1690
- query?: never;
1691
- url: '/tokens';
2726
+ query?: {
2727
+ /**
2728
+ * 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)
2729
+ */
2730
+ granularity?: 'hourly' | 'daily' | 'monthly';
2731
+ };
2732
+ url: '/billing/usage';
1692
2733
  };
1693
- export type CreateTokenErrors = {
2734
+ export type GetUsageErrors = {
1694
2735
  /**
1695
2736
  * Not authenticated
1696
2737
  */
1697
2738
  401: unknown;
1698
2739
  };
1699
- export type CreateTokenResponses = {
2740
+ export type GetUsageResponses = {
1700
2741
  /**
1701
- * Successfully created. Returns created token details with unmasked/raw secret.
2742
+ * Usage data with facets for filtering
1702
2743
  */
1703
- 200: Token;
2744
+ 200: UsageResponse;
1704
2745
  };
1705
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1706
- export type DeleteTokenData = {
2746
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2747
+ export type GetPaymentMethodSecretData = {
1707
2748
  body?: never;
1708
- path: {
1709
- /**
1710
- * Generated unique identifier of the access token.
1711
- */
1712
- token_id: string;
1713
- };
2749
+ path?: never;
1714
2750
  query?: never;
1715
- url: '/tokens/{token_id}';
2751
+ url: '/billing/payment-method';
1716
2752
  };
1717
- export type DeleteTokenResponses = {
2753
+ export type GetPaymentMethodSecretResponses = {
1718
2754
  /**
1719
- * Successfully deleted.
2755
+ * 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.
2756
+ *
1720
2757
  */
1721
- 200: unknown;
1722
- };
1723
- export type GetTokenData = {
1724
- body?: never;
1725
- path: {
2758
+ 200: {
1726
2759
  /**
1727
- * Generated unique identifier of the access token.
2760
+ * The client secret.
1728
2761
  */
1729
- token_id: string;
2762
+ id?: string;
1730
2763
  };
2764
+ };
2765
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2766
+ export type ListPaymentMethodsData = {
2767
+ body?: never;
2768
+ path?: never;
1731
2769
  query?: never;
1732
- url: '/tokens/{token_id}';
2770
+ url: '/billing/payment-methods';
1733
2771
  };
1734
- export type GetTokenErrors = {
2772
+ export type ListPaymentMethodsErrors = {
1735
2773
  /**
1736
2774
  * Not authenticated
1737
2775
  */
1738
2776
  401: unknown;
1739
2777
  };
1740
- export type GetTokenResponses = {
2778
+ export type ListPaymentMethodsResponses = {
1741
2779
  /**
1742
- * Returns access token details with masked secret.
2780
+ * An array of payment methods.
1743
2781
  */
1744
- 200: Token;
2782
+ 200: Array<PaymentMethod>;
1745
2783
  };
1746
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1747
- export type UpdateTokenData = {
1748
- body: TokenUpdateInput;
2784
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
2785
+ export type SetDefaultPaymentMethodData = {
2786
+ body?: never;
1749
2787
  path: {
1750
2788
  /**
1751
- * Generated unique identifier of the access token.
2789
+ * Stripe payment method identifier.
1752
2790
  */
1753
- token_id: string;
2791
+ paymentMethodId: string;
1754
2792
  };
1755
2793
  query?: never;
1756
- url: '/tokens/{token_id}';
2794
+ url: '/billing/payment-methods/{paymentMethodId}/default';
1757
2795
  };
1758
- export type UpdateTokenErrors = {
2796
+ export type SetDefaultPaymentMethodErrors = {
2797
+ /**
2798
+ * The bank transfer payment method cannot be set as the default.
2799
+ */
2800
+ 400: unknown;
1759
2801
  /**
1760
2802
  * Not authenticated
1761
2803
  */
1762
2804
  401: unknown;
2805
+ /**
2806
+ * Payment method not found.
2807
+ */
2808
+ 404: unknown;
1763
2809
  };
1764
- export type UpdateTokenResponses = {
2810
+ export type SetDefaultPaymentMethodResponses = {
1765
2811
  /**
1766
- * Successfully updated. Returns updated token details with masked secret.
2812
+ * Default payment method updated.
1767
2813
  */
1768
- 200: Token;
2814
+ 204: void;
1769
2815
  };
1770
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1771
- export type RegenerateTokenData = {
2816
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
2817
+ export type DeletePaymentMethodData = {
1772
2818
  body?: never;
1773
2819
  path: {
1774
2820
  /**
1775
- * Generated unique identifier of the access token.
2821
+ * Stripe payment method identifier.
1776
2822
  */
1777
- token_id: string;
2823
+ paymentMethodId: string;
1778
2824
  };
1779
2825
  query?: never;
1780
- url: '/tokens/{token_id}/secret';
2826
+ url: '/billing/payment-methods/{paymentMethodId}';
1781
2827
  };
1782
- export type RegenerateTokenErrors = {
2828
+ export type DeletePaymentMethodErrors = {
2829
+ /**
2830
+ * The bank transfer payment method cannot be removed.
2831
+ */
2832
+ 400: unknown;
1783
2833
  /**
1784
2834
  * Not authenticated
1785
2835
  */
1786
2836
  401: unknown;
1787
- };
1788
- export type RegenerateTokenResponses = {
1789
2837
  /**
1790
- * Successfully updated. Returns updated token details with unmasked / raw secret.
2838
+ * Payment method not found.
1791
2839
  */
1792
- 200: Token;
1793
- };
1794
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1795
- export type ListUserOrganizationsData = {
1796
- body?: never;
1797
- path: {
1798
- /**
1799
- * User email address.
1800
- */
1801
- email: string;
1802
- };
1803
- query?: never;
1804
- url: '/users/organizations/{email}';
2840
+ 404: unknown;
2841
+ /**
2842
+ * Cannot delete the only remaining payment method.
2843
+ */
2844
+ 409: unknown;
1805
2845
  };
1806
- export type ListUserOrganizationsResponses = {
2846
+ export type DeletePaymentMethodResponses = {
1807
2847
  /**
1808
- * An array of organizations the user belongs to.
2848
+ * Payment method deleted.
1809
2849
  */
1810
- 200: Array<{
1811
- /**
1812
- * Unique identifier of the organization. UUID v4 string in canonical form
1813
- */
1814
- realm?: string;
1815
- /**
1816
- * Human-readable name of the organization
1817
- */
1818
- displayName?: string;
1819
- }>;
2850
+ 204: void;
1820
2851
  };
1821
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1822
- export type ListUsersData = {
2852
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
2853
+ export type ListInvoicesData = {
1823
2854
  body?: never;
1824
2855
  path?: never;
1825
2856
  query?: never;
1826
- url: '/users';
2857
+ url: '/billing/invoices';
1827
2858
  };
1828
- export type ListUsersErrors = {
2859
+ export type ListInvoicesErrors = {
1829
2860
  /**
1830
2861
  * Not authenticated
1831
2862
  */
1832
2863
  401: unknown;
1833
2864
  };
1834
- export type ListUsersResponses = {
2865
+ export type ListInvoicesResponses = {
1835
2866
  /**
1836
- * An array of users
2867
+ * An array of usage records.
1837
2868
  */
1838
- 200: Array<User>;
2869
+ 200: Array<Invoice>;
1839
2870
  };
1840
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1841
- export type CreateUserData = {
1842
- body: UserCreateInput;
2871
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
2872
+ export type GetContactData = {
2873
+ body?: never;
1843
2874
  path?: never;
1844
2875
  query?: never;
1845
- url: '/users';
2876
+ url: '/billing/contact';
1846
2877
  };
1847
- export type CreateUserResponses = {
2878
+ export type GetContactResponses = {
1848
2879
  /**
1849
- * Successfully created. Returns created user details.
2880
+ * Returns a single object containing organization contact and billing address details.
1850
2881
  */
1851
- 200: User;
2882
+ 200: BillingContact;
1852
2883
  };
1853
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1854
- export type DeleteUserData = {
1855
- body?: never;
1856
- path: {
1857
- /**
1858
- * Unique user identifier. UUID v4 string in canonical form
1859
- */
1860
- user_id: string;
1861
- };
2884
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
2885
+ export type UpdateContactData = {
2886
+ body: BillingContact;
2887
+ path?: never;
1862
2888
  query?: never;
1863
- url: '/users/{user_id}';
2889
+ url: '/billing/contact';
1864
2890
  };
1865
- export type DeleteUserErrors = {
2891
+ export type UpdateContactResponses = {
1866
2892
  /**
1867
- * Deleting own user is not allowed. Delete your organization instead.
2893
+ * Successfully updated. Returns updated organization details.
1868
2894
  */
1869
- 400: unknown;
2895
+ 200: BillingContact;
2896
+ };
2897
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
2898
+ export type GetCreditsData = {
2899
+ body?: never;
2900
+ path?: never;
2901
+ query?: never;
2902
+ url: '/billing/credits';
2903
+ };
2904
+ export type GetCreditsErrors = {
1870
2905
  /**
1871
2906
  * Not authenticated
1872
2907
  */
1873
2908
  401: unknown;
1874
2909
  };
1875
- export type DeleteUserResponses = {
2910
+ export type GetCreditsResponses = {
1876
2911
  /**
1877
- * User profile information
2912
+ * An array of the applied promotional credits records.
1878
2913
  */
1879
- 200: User;
2914
+ 200: Array<BillingCredits>;
1880
2915
  };
1881
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1882
- export type GetUserData = {
1883
- body?: never;
1884
- path: {
2916
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
2917
+ export type RedeemCreditsData = {
2918
+ body: {
1885
2919
  /**
1886
- * Unique user identifier. UUID v4 string in canonical form
2920
+ * Promotional code to redeem
1887
2921
  */
1888
- user_id: string;
2922
+ code?: string;
1889
2923
  };
2924
+ path?: never;
1890
2925
  query?: never;
1891
- url: '/users/{user_id}';
2926
+ url: '/billing/credits';
1892
2927
  };
1893
- export type GetUserErrors = {
2928
+ export type RedeemCreditsErrors = {
1894
2929
  /**
1895
2930
  * Not authenticated
1896
2931
  */
1897
2932
  401: unknown;
1898
2933
  };
1899
- export type GetUserResponses = {
1900
- /**
1901
- * User profile information
1902
- */
1903
- 200: User;
1904
- };
1905
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1906
- export type UpdateUserData = {
1907
- body: UserUpdateInput;
1908
- path: {
1909
- /**
1910
- * Unique user identifier. UUID v4 string in canonical form
1911
- */
1912
- user_id: string;
1913
- };
1914
- query?: never;
1915
- url: '/users/{user_id}';
1916
- };
1917
- export type UpdateUserResponses = {
2934
+ export type RedeemCreditsResponses = {
1918
2935
  /**
1919
- * Successfully created. Returns created user details.
2936
+ * Successfully created a new organization.
1920
2937
  */
1921
- 200: User;
2938
+ 200: unknown;
1922
2939
  };
1923
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1924
2940
  //# sourceMappingURL=types.gen.d.ts.map