@cloudfleet/sdk 0.0.1-90edb44 → 0.0.1-958f27d

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 (64) hide show
  1. package/dist/@tanstack/react-query.gen.d.ts +1149 -0
  2. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  3. package/dist/@tanstack/react-query.gen.js +1165 -0
  4. package/dist/@tanstack/react-query.gen.js.map +1 -0
  5. package/dist/client/client.gen.d.ts.map +1 -1
  6. package/dist/client/client.gen.js +167 -96
  7. package/dist/client/client.gen.js.map +1 -1
  8. package/dist/client/index.d.ts +2 -1
  9. package/dist/client/index.d.ts.map +1 -1
  10. package/dist/client/index.js +1 -0
  11. package/dist/client/index.js.map +1 -1
  12. package/dist/client/types.gen.d.ts +16 -18
  13. package/dist/client/types.gen.d.ts.map +1 -1
  14. package/dist/client/utils.gen.d.ts +13 -21
  15. package/dist/client/utils.gen.d.ts.map +1 -1
  16. package/dist/client/utils.gen.js +58 -115
  17. package/dist/client/utils.gen.js.map +1 -1
  18. package/dist/client.gen.d.ts +3 -3
  19. package/dist/client.gen.d.ts.map +1 -1
  20. package/dist/client.gen.js +1 -3
  21. package/dist/client.gen.js.map +1 -1
  22. package/dist/core/auth.gen.d.ts.map +1 -1
  23. package/dist/core/auth.gen.js.map +1 -1
  24. package/dist/core/bodySerializer.gen.d.ts +16 -8
  25. package/dist/core/bodySerializer.gen.d.ts.map +1 -1
  26. package/dist/core/bodySerializer.gen.js +4 -1
  27. package/dist/core/bodySerializer.gen.js.map +1 -1
  28. package/dist/core/params.gen.d.ts +10 -0
  29. package/dist/core/params.gen.d.ts.map +1 -1
  30. package/dist/core/params.gen.js +18 -6
  31. package/dist/core/params.gen.js.map +1 -1
  32. package/dist/core/pathSerializer.gen.d.ts.map +1 -1
  33. package/dist/core/pathSerializer.gen.js +3 -11
  34. package/dist/core/pathSerializer.gen.js.map +1 -1
  35. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  36. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  37. package/dist/core/queryKeySerializer.gen.js +93 -0
  38. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  39. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  40. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  41. package/dist/core/serverSentEvents.gen.js +133 -0
  42. package/dist/core/serverSentEvents.gen.js.map +1 -0
  43. package/dist/core/types.gen.d.ts +13 -13
  44. package/dist/core/types.gen.d.ts.map +1 -1
  45. package/dist/core/utils.gen.d.ts +20 -0
  46. package/dist/core/utils.gen.d.ts.map +1 -0
  47. package/dist/core/utils.gen.js +88 -0
  48. package/dist/core/utils.gen.js.map +1 -0
  49. package/dist/schemas.gen.d.ts +1346 -589
  50. package/dist/schemas.gen.d.ts.map +1 -1
  51. package/dist/schemas.gen.js +2664 -693
  52. package/dist/schemas.gen.js.map +1 -1
  53. package/dist/sdk.gen.d.ts +153 -31
  54. package/dist/sdk.gen.d.ts.map +1 -1
  55. package/dist/sdk.gen.js +242 -173
  56. package/dist/sdk.gen.js.map +1 -1
  57. package/dist/services/kubernetes/api.d.ts +20 -20
  58. package/dist/types.gen.d.ts +1189 -389
  59. package/dist/types.gen.d.ts.map +1 -1
  60. package/dist/zod.gen.d.ts +2789 -2023
  61. package/dist/zod.gen.d.ts.map +1 -1
  62. package/dist/zod.gen.js +1251 -1129
  63. package/dist/zod.gen.js.map +1 -1
  64. package/package.json +29 -6
@@ -1,4 +1,11 @@
1
+ export type ClientOptions = {
2
+ baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3
+ };
1
4
  export type BillingContact = {
5
+ /**
6
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
7
+ */
8
+ type: 'business' | 'personal';
2
9
  /**
3
10
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
4
11
  */
@@ -36,13 +43,9 @@ export type BillingContact = {
36
43
  */
37
44
  email: string;
38
45
  /**
39
- * First name of the billing contact person.
40
- */
41
- first_name: string;
42
- /**
43
- * Last name of the billing contact person.
46
+ * Name of the billing contact person.
44
47
  */
45
- last_name: string;
48
+ individual_name: string;
46
49
  /**
47
50
  * Tax ID of the organization.
48
51
  */
@@ -58,35 +61,31 @@ export type BillingCredits = {
58
61
  */
59
62
  id?: string;
60
63
  /**
61
- * Date of the credit application. ISO 8601 date string in the UTC timezone.
62
- */
63
- date_created: string;
64
- /**
65
- * Promotional code used by the customer.
64
+ * Type of the promotional code.
66
65
  */
67
- code: string;
66
+ type: 'credit' | 'discount';
68
67
  /**
69
- * Description of the promotional code.
68
+ * Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.
70
69
  */
71
- description?: string;
70
+ date_start: string;
72
71
  /**
73
- * 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.
74
73
  */
75
- products?: Array<string>;
74
+ date_end?: string;
76
75
  /**
77
- * Type of the promotional code.
76
+ * Promotional code used by the customer.
78
77
  */
79
- type: 'credit' | 'discount';
78
+ code: string;
80
79
  /**
81
- * Value of the promotional code.
80
+ * Description of the promotional code.
82
81
  */
83
- value: number;
82
+ description?: string;
84
83
  /**
85
- * Date of the billing cycle. An ISO 8601 date string in the UTC timezone.
84
+ * Total value of the promotional code.
86
85
  */
87
- billing_period: string;
86
+ value_total: number;
88
87
  /**
89
- * Value of the promotional code.
88
+ * Remaining value of the promotional code.
90
89
  */
91
90
  value_remaining?: number;
92
91
  };
@@ -134,9 +133,9 @@ export type Chart = {
134
133
  */
135
134
  chart: string;
136
135
  /**
137
- * Status of the chart deployment.
136
+ * Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).
138
137
  */
139
- status: 'InstallSucceeded' | 'InstallFailed' | 'UpgradeSucceeded' | 'UpgradeFailed' | 'TestSucceeded' | 'TestFailed' | 'RollbackSucceeded' | 'RollbackFailed' | 'UninstallSucceeded' | 'UninstallFailed' | 'ArtifactFailed' | 'DependencyNotReady' | 'Progressing' | 'SourceNotReady';
138
+ status: string;
140
139
  /**
141
140
  * Current version of the chart deployment.
142
141
  */
@@ -174,9 +173,9 @@ export type ClusterCreateInput = {
174
173
  */
175
174
  tier: 'basic' | 'pro';
176
175
  /**
177
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
176
+ * Cloudfleet control plane region. This field can not be updated after creation.
178
177
  */
179
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
178
+ region: string;
180
179
  /**
181
180
  * Version of the kubernetes cluster.
182
181
  */
@@ -191,6 +190,14 @@ export type ClusterJoinInformation = {
191
190
  * Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.
192
191
  */
193
192
  endpoint: string;
193
+ /**
194
+ * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
195
+ */
196
+ cluster_dns: string;
197
+ /**
198
+ * Pod CIDR for the cluster. Used to configure iptables rules on nodes to prevent Tailscale routing loops.
199
+ */
200
+ pod_cidr: string;
194
201
  /**
195
202
  * Authentication key for the cluster.
196
203
  */
@@ -248,13 +255,9 @@ export type Cluster = {
248
255
  */
249
256
  tier: 'basic' | 'pro';
250
257
  /**
251
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
258
+ * Cloudfleet control plane region. This field can not be updated after creation.
252
259
  */
253
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
254
- /**
255
- * Version of the kubernetes cluster.
256
- */
257
- version_channel?: string;
260
+ region: string;
258
261
  /**
259
262
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
260
263
  */
@@ -262,8 +265,9 @@ export type Cluster = {
262
265
  /**
263
266
  * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
264
267
  */
265
- status: 'active' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
268
+ status: 'active' | 'disabled' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
266
269
  endpoint?: string | '';
270
+ endpoint_public?: string | '';
267
271
  /**
268
272
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
269
273
  */
@@ -284,6 +288,10 @@ export type Cluster = {
284
288
  * Indicates if the cluster is ready to be used.
285
289
  */
286
290
  ready?: boolean;
291
+ /**
292
+ * Version of the kubernetes cluster.
293
+ */
294
+ version_channel?: string;
287
295
  };
288
296
  export type ClusterUpdateInput = {
289
297
  /**
@@ -305,31 +313,56 @@ export type FleetCreateInput = {
305
313
  */
306
314
  limits?: {
307
315
  /**
308
- * CPU limit in cores.
316
+ * CPU limit in cores. Maximum 100,000.
309
317
  */
310
- cpu: number;
318
+ cpu?: number;
311
319
  };
312
320
  gcp?: {
313
- enabled?: boolean;
321
+ enabled: boolean;
314
322
  /**
315
- * Project GCP Project id to deploy instances into
323
+ * 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.
316
324
  */
317
- project: string;
325
+ project?: string;
318
326
  };
319
327
  hetzner?: {
320
- enabled?: boolean;
328
+ enabled: boolean;
321
329
  /**
322
- * Hetzner Cloud API key with read / write access
330
+ * Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.
323
331
  */
324
- apiKey: string;
332
+ apiKey?: string;
325
333
  };
326
334
  aws?: {
327
- enabled?: boolean;
335
+ enabled: boolean;
328
336
  /**
329
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
337
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
330
338
  */
331
- controllerRoleArn: string;
339
+ controllerRoleArn?: string;
332
340
  };
341
+ /**
342
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
343
+ */
344
+ constraints?: {
345
+ /**
346
+ * Allowed values for `karpenter.sh/capacity-type`.
347
+ */
348
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
349
+ /**
350
+ * Allowed values for `kubernetes.io/arch`.
351
+ */
352
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
353
+ /**
354
+ * Allowed values for `cfke.io/instance-family`.
355
+ */
356
+ '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'>;
357
+ /**
358
+ * Allowed values for `topology.kubernetes.io/region`.
359
+ */
360
+ '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'>;
361
+ };
362
+ /**
363
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
364
+ */
365
+ scalingProfile?: 'aggressive' | 'conservative';
333
366
  /**
334
367
  * Unique identifier of the kubernetes fleet.
335
368
  */
@@ -341,31 +374,56 @@ export type Fleet = {
341
374
  */
342
375
  limits?: {
343
376
  /**
344
- * CPU limit in cores.
377
+ * CPU limit in cores. Maximum 100,000.
345
378
  */
346
- cpu: number;
379
+ cpu?: number;
347
380
  };
348
381
  gcp?: {
349
- enabled?: boolean;
382
+ enabled: boolean;
350
383
  /**
351
- * Project GCP Project id to deploy instances into
384
+ * 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.
352
385
  */
353
- project: string;
386
+ project?: string;
354
387
  };
355
388
  hetzner?: {
356
- enabled?: boolean;
389
+ enabled: boolean;
357
390
  /**
358
- * Hetzner Cloud API key with read / write access
391
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
359
392
  */
360
- apiKey: string;
393
+ apiKey?: string;
361
394
  };
362
395
  aws?: {
363
- enabled?: boolean;
396
+ enabled: boolean;
397
+ /**
398
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
399
+ */
400
+ controllerRoleArn?: string;
401
+ };
402
+ /**
403
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
404
+ */
405
+ constraints?: {
406
+ /**
407
+ * Allowed values for `karpenter.sh/capacity-type`.
408
+ */
409
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
410
+ /**
411
+ * Allowed values for `kubernetes.io/arch`.
412
+ */
413
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
414
+ /**
415
+ * Allowed values for `cfke.io/instance-family`.
416
+ */
417
+ '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'>;
364
418
  /**
365
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
419
+ * Allowed values for `topology.kubernetes.io/region`.
366
420
  */
367
- controllerRoleArn: string;
421
+ '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'>;
368
422
  };
423
+ /**
424
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
425
+ */
426
+ scalingProfile: 'aggressive' | 'conservative';
369
427
  /**
370
428
  * Unique identifier of the kubernetes fleet.
371
429
  */
@@ -377,31 +435,66 @@ export type FleetUpdateInput = {
377
435
  */
378
436
  limits?: {
379
437
  /**
380
- * CPU limit in cores.
438
+ * CPU limit in cores. Maximum 100,000.
381
439
  */
382
- cpu: number;
440
+ cpu?: number;
383
441
  };
384
442
  gcp?: {
385
- enabled?: boolean;
443
+ enabled: boolean;
386
444
  /**
387
- * Project GCP Project id to deploy instances into
445
+ * 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.
388
446
  */
389
- project: string;
447
+ project?: string;
390
448
  };
391
449
  hetzner?: {
392
- enabled?: boolean;
450
+ enabled: boolean;
393
451
  /**
394
- * Hetzner Cloud API key with read / write access
452
+ * Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.
395
453
  */
396
- apiKey: string;
454
+ apiKey?: string;
397
455
  };
398
456
  aws?: {
399
- enabled?: boolean;
457
+ enabled: boolean;
458
+ /**
459
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
460
+ */
461
+ controllerRoleArn?: string;
462
+ };
463
+ /**
464
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
465
+ */
466
+ constraints?: {
467
+ /**
468
+ * Allowed values for `karpenter.sh/capacity-type`.
469
+ */
470
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
471
+ /**
472
+ * Allowed values for `kubernetes.io/arch`.
473
+ */
474
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
475
+ /**
476
+ * Allowed values for `cfke.io/instance-family`.
477
+ */
478
+ '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'>;
400
479
  /**
401
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
480
+ * Allowed values for `topology.kubernetes.io/region`.
402
481
  */
403
- controllerRoleArn: string;
482
+ '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'>;
404
483
  };
484
+ /**
485
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
486
+ */
487
+ scalingProfile: 'aggressive' | 'conservative';
488
+ };
489
+ export type InviteCreateInput = {
490
+ /**
491
+ * Email address of the user to invite.
492
+ */
493
+ email: string;
494
+ /**
495
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
496
+ */
497
+ role?: 'Administrator' | 'User';
405
498
  };
406
499
  export type Invite = {
407
500
  /**
@@ -424,399 +517,725 @@ export type Invite = {
424
517
  * Generated unique invite code.
425
518
  */
426
519
  code?: string;
520
+ /**
521
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
522
+ */
523
+ role?: 'Administrator' | 'User';
427
524
  };
428
525
  export type Invoice = {
429
526
  /**
430
- * Unique identifier of the invoice. UUID v4 string in canonical form
527
+ * Unique identifier of the invoice.
431
528
  */
432
529
  id?: string;
433
- /**
434
- * Unique identifier of the organization. UUID v4 string in canonical form
435
- */
436
- organizationId?: string;
530
+ number?: string;
437
531
  /**
438
532
  * Status of the invoice
439
533
  */
440
- status?: 'DRAFT' | 'COMMITTED' | 'VOID';
534
+ status?: string;
441
535
  /**
442
536
  * Total amount of the invoice
443
537
  */
444
- amount?: number;
538
+ total?: number;
445
539
  /**
446
540
  * Currency of the invoice
447
541
  */
448
- 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';
542
+ currency?: string;
543
+ /**
544
+ * Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.
545
+ */
546
+ created: string;
547
+ /**
548
+ * Billing period start timestamp. ISO 8601 date string in the UTC timezone.
549
+ */
550
+ period_start: string;
551
+ /**
552
+ * Billing period end timestamp. ISO 8601 date string in the UTC timezone.
553
+ */
554
+ period_end: string;
555
+ invoice_pdf?: string;
556
+ };
557
+ export type MarketplaceListingFiles = {
449
558
  /**
450
- * Total amount of credit adjustments
559
+ * Raw Chart.yaml content from the Helm chart
451
560
  */
452
- creditAdj?: number;
561
+ chartYaml?: string;
453
562
  /**
454
- * Total amount of refund adjustments
563
+ * Raw values.yaml content from the Helm chart
455
564
  */
456
- refundAdj?: number;
565
+ valuesYaml?: string;
457
566
  /**
458
- * Date of the invoice
567
+ * JSON schema for values.yaml as a string
459
568
  */
460
- invoiceDate?: string;
569
+ valuesSchemaJson?: string;
570
+ };
571
+ export type MarketplaceListing = {
461
572
  /**
462
- * Target date of the invoice
573
+ * Name of the chart
463
574
  */
464
- targetDate?: string;
575
+ name: string;
465
576
  /**
466
- * Number of the invoice
577
+ * Available versions of the chart
467
578
  */
468
- invoiceNumber?: string;
579
+ versions: Array<string>;
469
580
  /**
470
- * Balance of the invoice
581
+ * Version channels for the chart
471
582
  */
472
- balance?: number;
583
+ version_channels: Array<string>;
473
584
  /**
474
- * Bundle keys of the invoice
585
+ * Latest version of the chart
475
586
  */
476
- bundleKeys?: string;
587
+ latestVersion: string;
477
588
  /**
478
- * Credits of the invoice
589
+ * Chart metadata
479
590
  */
480
- credits?: Array<{
591
+ metadata?: {
481
592
  /**
482
- * Unique identifier of the invoice item. UUID v4 string in canonical form
593
+ * Chart name from metadata
483
594
  */
484
- id?: string;
595
+ name: string;
485
596
  /**
486
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
597
+ * Chart version from metadata
487
598
  */
488
- linkedInvoiceItemId?: string;
599
+ version: string;
489
600
  /**
490
- * Name of the product
601
+ * Chart description
491
602
  */
492
- productName?: string;
603
+ description?: string;
493
604
  /**
494
- * Name of the plan
605
+ * Application version
495
606
  */
496
- planName?: string;
607
+ appVersion?: string;
497
608
  /**
498
- * Name of the phase
609
+ * Helm API version
499
610
  */
500
- phaseName?: string;
611
+ apiVersion?: string;
501
612
  /**
502
- * Name of the usage
613
+ * Chart keywords
503
614
  */
504
- usageName?: string;
615
+ keywords?: Array<string>;
505
616
  /**
506
- * Pretty name of the product
617
+ * Chart home URL
507
618
  */
508
- prettyProductName?: string;
619
+ home?: string;
509
620
  /**
510
- * Pretty name of the plan
621
+ * A URL to an SVG or PNG image to be used as an icon
511
622
  */
512
- prettyPlanName?: string;
623
+ icon?: string;
513
624
  /**
514
- * Pretty name of the phase
625
+ * Chart source URLs
515
626
  */
516
- prettyPhaseName?: string;
627
+ sources?: Array<string>;
517
628
  /**
518
- * Pretty name of the usage
629
+ * Chart maintainers
519
630
  */
520
- prettyUsageName?: string;
631
+ maintainers?: Array<{
632
+ /**
633
+ * Maintainer name
634
+ */
635
+ name: string;
636
+ /**
637
+ * Maintainer email
638
+ */
639
+ email?: string;
640
+ }>;
641
+ };
642
+ };
643
+ export type OrganizationCreateInput = {
644
+ /**
645
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
646
+ */
647
+ type: 'business' | 'personal';
648
+ /**
649
+ * Email address used for billing as a string.
650
+ */
651
+ email: string;
652
+ /**
653
+ * First name of the billing contact person.
654
+ */
655
+ first_name: string;
656
+ /**
657
+ * Last name of the billing contact person.
658
+ */
659
+ last_name: string;
660
+ /**
661
+ * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
662
+ */
663
+ company_name: string;
664
+ /**
665
+ * 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.
666
+ */
667
+ password: string;
668
+ };
669
+ export type OrganizationCreateOutput = {
670
+ /**
671
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
672
+ */
673
+ id: string;
674
+ };
675
+ export type Organization = {
676
+ /**
677
+ * Unique identifier of the organization. UUID v4 string in canonical form
678
+ */
679
+ id: string;
680
+ /**
681
+ * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
682
+ */
683
+ name?: string;
684
+ /**
685
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
686
+ */
687
+ type: 'business' | 'personal';
688
+ /**
689
+ * Creation date of the organization. ISO 8601 date string in UTC timezone
690
+ */
691
+ date_created: string;
692
+ /**
693
+ * 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.
694
+ */
695
+ quota: {
521
696
  /**
522
- * Type of the invoice item
697
+ * Maximum number of Basic clusters that can be created.
523
698
  */
524
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
699
+ basic_clusters_max: number;
525
700
  /**
526
- * Description of the invoice item
701
+ * Available number of Basic clusters that can be created.
527
702
  */
528
- description?: string;
703
+ basic_clusters_available: number;
529
704
  /**
530
- * Start date of the invoice item
705
+ * Maximum number of Pro clusters that can be created.
531
706
  */
532
- startDate?: string;
707
+ pro_clusters_max: number;
533
708
  /**
534
- * End date of the invoice item
709
+ * Available number of Pro clusters that can be created.
535
710
  */
536
- endDate?: string;
711
+ pro_clusters_available: number;
537
712
  /**
538
- * Amount of the invoice item
713
+ * Maximum number of fleets that can be created per cluster.
539
714
  */
540
- amount?: number;
715
+ fleets_max: number;
541
716
  /**
542
- * Rate of the invoice item
717
+ * List of Cloudfleet cluster tiers available for the organization.
543
718
  */
544
- rate?: number;
719
+ cluster_tiers: Array<string>;
545
720
  /**
546
- * Currency of the invoice item
721
+ * List of Cloudfleet control plane regions available for the organization.
547
722
  */
548
- 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';
723
+ regions: Array<string>;
549
724
  /**
550
- * Quantity of the invoice item
725
+ * List of CFKE control plane versions available for the organization.
551
726
  */
552
- quantity?: number;
727
+ versions: Array<{
728
+ /**
729
+ * Id of the control plane version. Used in API calls.
730
+ */
731
+ id: string;
732
+ /**
733
+ * Label of the control plane version. Used in frontent UI.
734
+ */
735
+ label: string;
736
+ }>;
553
737
  /**
554
- * Details of the invoice item
738
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
555
739
  */
556
- itemDetails?: string;
740
+ cfcr_storage_gb: number;
741
+ };
742
+ /**
743
+ * Status of the organization. Can be `active` or `closed`, or `suspended`.
744
+ */
745
+ status: 'active' | 'closed' | 'suspended';
746
+ /**
747
+ * 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.
748
+ */
749
+ verification: 'none' | 'submitted' | 'verified';
750
+ };
751
+ export type PaymentMethod = {
752
+ /**
753
+ * 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.
754
+ */
755
+ id: string;
756
+ /**
757
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
758
+ */
759
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
760
+ /**
761
+ * 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.
762
+ */
763
+ last4: string;
764
+ /**
765
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
766
+ */
767
+ exp_month: number;
768
+ /**
769
+ * 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.
770
+ */
771
+ exp_year: number;
772
+ /**
773
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
774
+ */
775
+ brand: string;
776
+ /**
777
+ * 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.
778
+ */
779
+ iban: string;
780
+ /**
781
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
782
+ */
783
+ bic: string;
784
+ /**
785
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
786
+ */
787
+ account_holder_name: string;
788
+ /**
789
+ * 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).
790
+ */
791
+ is_default: boolean;
792
+ };
793
+ export type PlatformQuota = {
794
+ /**
795
+ * Maximum number of Basic clusters that can be created.
796
+ */
797
+ basic_clusters_max: number;
798
+ /**
799
+ * Available number of Basic clusters that can be created.
800
+ */
801
+ basic_clusters_available: number;
802
+ /**
803
+ * Maximum number of Pro clusters that can be created.
804
+ */
805
+ pro_clusters_max: number;
806
+ /**
807
+ * Available number of Pro clusters that can be created.
808
+ */
809
+ pro_clusters_available: number;
810
+ /**
811
+ * Maximum number of fleets that can be created per cluster.
812
+ */
813
+ fleets_max: number;
814
+ /**
815
+ * List of Cloudfleet cluster tiers available for the organization.
816
+ */
817
+ cluster_tiers: Array<string>;
818
+ /**
819
+ * List of Cloudfleet control plane regions available for the organization.
820
+ */
821
+ regions: Array<string>;
822
+ /**
823
+ * List of CFKE control plane versions available for the organization.
824
+ */
825
+ versions: Array<{
557
826
  /**
558
- * Effective date of the catalog
827
+ * Id of the control plane version. Used in API calls.
559
828
  */
560
- catalogEffectiveDate?: string;
829
+ id: string;
561
830
  /**
562
- * Child items of the invoice item
831
+ * Label of the control plane version. Used in frontent UI.
563
832
  */
564
- childItems?: Array<Array<unknown> | boolean | number | {
565
- [key: string]: unknown;
566
- } | string>;
833
+ label: string;
567
834
  }>;
568
835
  /**
569
- * Items of the invoice
836
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
570
837
  */
571
- items?: Array<{
572
- /**
573
- * Unique identifier of the invoice item. UUID v4 string in canonical form
574
- */
575
- id?: string;
576
- /**
577
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
578
- */
579
- linkedInvoiceItemId?: string;
838
+ cfcr_storage_gb: number;
839
+ };
840
+ export type RegistryRepository = {
841
+ /**
842
+ * Repository name.
843
+ */
844
+ name: string;
845
+ /**
846
+ * Registry region.
847
+ */
848
+ region: string;
849
+ /**
850
+ * Full URI of the repository.
851
+ */
852
+ uri: string;
853
+ };
854
+ export type RegistryRepositoryWithTags = {
855
+ /**
856
+ * Repository name.
857
+ */
858
+ name: string;
859
+ /**
860
+ * Registry region.
861
+ */
862
+ region: string;
863
+ /**
864
+ * Full URI of the repository.
865
+ */
866
+ uri: string;
867
+ /**
868
+ * Array of tags in the repository.
869
+ */
870
+ tags: Array<{
580
871
  /**
581
- * Name of the product
872
+ * Tag name.
582
873
  */
583
- productName?: string;
874
+ name: string;
584
875
  /**
585
- * Name of the plan
876
+ * Size of the tag in bytes.
586
877
  */
587
- planName?: string;
878
+ size: number;
588
879
  /**
589
- * Name of the phase
880
+ * Media type of the manifest.
590
881
  */
591
- phaseName?: string;
882
+ mediaType?: string;
592
883
  /**
593
- * Name of the usage
884
+ * Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).
594
885
  */
595
- usageName?: string;
886
+ platforms?: Array<string>;
887
+ }>;
888
+ /**
889
+ * Total size of all tags in the repository in bytes.
890
+ */
891
+ totalSize: number;
892
+ };
893
+ export type RegistryTag = {
894
+ /**
895
+ * Tag name.
896
+ */
897
+ name: string;
898
+ /**
899
+ * Manifest digest for pulling by digest.
900
+ */
901
+ digest: string;
902
+ /**
903
+ * Media type of the manifest.
904
+ */
905
+ mediaType?: string;
906
+ /**
907
+ * Manifest config metadata.
908
+ */
909
+ config?: {
596
910
  /**
597
- * Pretty name of the product
911
+ * Size of the config in bytes.
598
912
  */
599
- prettyProductName?: string;
913
+ size: number;
914
+ };
915
+ /**
916
+ * Array of layer metadata.
917
+ */
918
+ layers?: Array<{
600
919
  /**
601
- * Pretty name of the plan
920
+ * Digest of the layer.
602
921
  */
603
- prettyPlanName?: string;
922
+ digest?: string;
604
923
  /**
605
- * Pretty name of the phase
924
+ * Size of the layer in bytes.
606
925
  */
607
- prettyPhaseName?: string;
926
+ size: number;
927
+ }>;
928
+ /**
929
+ * Array of manifests for multi-arch images.
930
+ */
931
+ manifests?: Array<{
608
932
  /**
609
- * Pretty name of the usage
933
+ * Digest of the manifest.
610
934
  */
611
- prettyUsageName?: string;
935
+ digest: string;
612
936
  /**
613
- * Type of the invoice item
937
+ * Platform information for the manifest.
614
938
  */
615
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
939
+ platform?: {
940
+ /**
941
+ * Architecture of the platform.
942
+ */
943
+ architecture: string;
944
+ /**
945
+ * Operating system of the platform.
946
+ */
947
+ os: string;
948
+ /**
949
+ * Variant of the platform (e.g., v7, v8 for ARM).
950
+ */
951
+ variant?: string;
952
+ };
616
953
  /**
617
- * Description of the invoice item
954
+ * Layers for this platform.
618
955
  */
619
- description?: string;
956
+ layers?: Array<{
957
+ /**
958
+ * Digest of the layer.
959
+ */
960
+ digest?: string;
961
+ /**
962
+ * Size of the layer in bytes.
963
+ */
964
+ size: number;
965
+ }>;
620
966
  /**
621
- * Start date of the invoice item
967
+ * Total size of this platform manifest in bytes.
622
968
  */
623
- startDate?: string;
969
+ size?: number;
970
+ }>;
971
+ /**
972
+ * Total size of the tag in bytes.
973
+ */
974
+ size: number;
975
+ /**
976
+ * Registry region.
977
+ */
978
+ region: string;
979
+ /**
980
+ * Repository name.
981
+ */
982
+ repository: string;
983
+ /**
984
+ * Full URI of the tag.
985
+ */
986
+ uri: string;
987
+ };
988
+ export type TicketAttachment = {
989
+ /**
990
+ * Unique identifier of the attachment (Mongo ObjectId).
991
+ */
992
+ id: string;
993
+ /**
994
+ * Original filename as uploaded.
995
+ */
996
+ filename: string;
997
+ /**
998
+ * MIME content type of the attachment.
999
+ */
1000
+ content_type: string;
1001
+ /**
1002
+ * Size of the attachment in bytes.
1003
+ */
1004
+ size: number;
1005
+ };
1006
+ export type TicketCreateInput = {
1007
+ /**
1008
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
1009
+ */
1010
+ category: 'billing' | 'technical' | 'general';
1011
+ /**
1012
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
1013
+ */
1014
+ body: string;
1015
+ /**
1016
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
1017
+ */
1018
+ properties?: {
1019
+ [key: string]: unknown;
1020
+ };
1021
+ };
1022
+ export type TicketListResponse = {
1023
+ /**
1024
+ * Tickets for the organization, ordered newest first. Messages are omitted from list responses.
1025
+ */
1026
+ items: Array<{
624
1027
  /**
625
- * End date of the invoice item
1028
+ * Unique identifier of the ticket (Mongo ObjectId).
626
1029
  */
627
- endDate?: string;
1030
+ id: string;
628
1031
  /**
629
- * Amount of the invoice item
1032
+ * Current state of the ticket.
630
1033
  */
631
- amount?: number;
1034
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
632
1035
  /**
633
- * Rate of the invoice item
1036
+ * Ticket category.
634
1037
  */
635
- rate?: number;
1038
+ category: 'billing' | 'technical' | 'general';
636
1039
  /**
637
- * Currency of the invoice item
1040
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
638
1041
  */
639
- 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';
1042
+ summary: string;
640
1043
  /**
641
- * Quantity of the invoice item
1044
+ * Closure timestamp. Null while the ticket is open.
642
1045
  */
643
- quantity?: number;
1046
+ closed_at?: string;
644
1047
  /**
645
- * Details of the invoice item
1048
+ * Creation date of the ticket. ISO 8601 UTC.
646
1049
  */
647
- itemDetails?: string;
1050
+ date_created: string;
648
1051
  /**
649
- * Effective date of the catalog
1052
+ * Last update date of the ticket. ISO 8601 UTC.
650
1053
  */
651
- catalogEffectiveDate?: string;
1054
+ date_updated: string;
652
1055
  /**
653
- * Child items of the invoice item
1056
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
654
1057
  */
655
- childItems?: Array<Array<unknown> | boolean | number | {
656
- [key: string]: unknown;
657
- } | string>;
1058
+ messages?: Array<{
1059
+ /**
1060
+ * Unique identifier of the message (Mongo ObjectId).
1061
+ */
1062
+ id: string;
1063
+ /**
1064
+ * Message type. Internal notes are filtered out of customer-facing responses.
1065
+ */
1066
+ type: 'customer_reply' | 'agent_reply';
1067
+ /**
1068
+ * Message body in markdown.
1069
+ */
1070
+ body: string;
1071
+ /**
1072
+ * First name of the author. Null when not provided.
1073
+ */
1074
+ author_first_name?: string;
1075
+ /**
1076
+ * Last name of the author. Null when not provided.
1077
+ */
1078
+ author_last_name?: string;
1079
+ /**
1080
+ * Attachments associated with this message.
1081
+ */
1082
+ attachments?: Array<{
1083
+ /**
1084
+ * Unique identifier of the attachment (Mongo ObjectId).
1085
+ */
1086
+ id: string;
1087
+ /**
1088
+ * Original filename as uploaded.
1089
+ */
1090
+ filename: string;
1091
+ /**
1092
+ * MIME content type of the attachment.
1093
+ */
1094
+ content_type: string;
1095
+ /**
1096
+ * Size of the attachment in bytes.
1097
+ */
1098
+ size: number;
1099
+ }>;
1100
+ /**
1101
+ * Creation date of the message. ISO 8601 UTC.
1102
+ */
1103
+ date_created: string;
1104
+ }>;
658
1105
  }>;
659
1106
  };
660
- export type MarketplaceListing = {
1107
+ export type TicketMessageInput = {
661
1108
  /**
662
- * Id of the chart listing
1109
+ * Reply body in markdown.
663
1110
  */
664
- id: string;
1111
+ body: string;
1112
+ };
1113
+ export type TicketMessage = {
665
1114
  /**
666
- * Name of the chart listing
1115
+ * Unique identifier of the message (Mongo ObjectId).
667
1116
  */
668
- name: string;
1117
+ id: string;
669
1118
  /**
670
- * Author of the chart listing
1119
+ * Message type. Internal notes are filtered out of customer-facing responses.
671
1120
  */
672
- developer: string;
1121
+ type: 'customer_reply' | 'agent_reply';
673
1122
  /**
674
- * Short description of the chart listing
1123
+ * Message body in markdown.
675
1124
  */
676
- description: string;
1125
+ body: string;
677
1126
  /**
678
- * Logo of the chart listing
1127
+ * First name of the author. Null when not provided.
679
1128
  */
680
- logoUrl: string;
1129
+ author_first_name?: string;
681
1130
  /**
682
- * Long description of the chart listing
1131
+ * Last name of the author. Null when not provided.
683
1132
  */
684
- longDescription: string;
1133
+ author_last_name?: string;
685
1134
  /**
686
- * Tags of the chart
1135
+ * Attachments associated with this message.
687
1136
  */
688
- categories: Array<string>;
689
- version_channels: Array<string>;
690
- value_schemas: Array<{
1137
+ attachments?: Array<{
691
1138
  /**
692
- * Version of the chart.
1139
+ * Unique identifier of the attachment (Mongo ObjectId).
693
1140
  */
694
- version: string;
1141
+ id: string;
1142
+ /**
1143
+ * Original filename as uploaded.
1144
+ */
1145
+ filename: string;
695
1146
  /**
696
- * Schema of the chart values. JSON Schema as string
1147
+ * MIME content type of the attachment.
697
1148
  */
698
- schema: string;
1149
+ content_type: string;
699
1150
  /**
700
- * Schema of the chart values
1151
+ * Size of the attachment in bytes.
701
1152
  */
702
- placeholder: string;
1153
+ size: number;
703
1154
  }>;
704
- };
705
- export type OrganizationCreateInput = {
706
1155
  /**
707
- * Email address used for billing as a string.
1156
+ * Creation date of the message. ISO 8601 UTC.
708
1157
  */
709
- email: string;
1158
+ date_created: string;
1159
+ };
1160
+ export type Ticket = {
710
1161
  /**
711
- * First name of the billing contact person.
1162
+ * Unique identifier of the ticket (Mongo ObjectId).
712
1163
  */
713
- first_name: string;
1164
+ id: string;
714
1165
  /**
715
- * Last name of the billing contact person.
1166
+ * Current state of the ticket.
716
1167
  */
717
- last_name: string;
1168
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
718
1169
  /**
719
- * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
1170
+ * Ticket category.
720
1171
  */
721
- company_name: string;
1172
+ category: 'billing' | 'technical' | 'general';
722
1173
  /**
723
- * 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.
1174
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
724
1175
  */
725
- password: string;
726
- };
727
- export type Organization = {
1176
+ summary: string;
728
1177
  /**
729
- * Unique identifier of the organization. UUID v4 string in canonical form
1178
+ * Closure timestamp. Null while the ticket is open.
730
1179
  */
731
- id: string;
1180
+ closed_at?: string;
732
1181
  /**
733
- * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
1182
+ * Creation date of the ticket. ISO 8601 UTC.
734
1183
  */
735
- name?: string;
1184
+ date_created: string;
736
1185
  /**
737
- * Creation date of the organization. ISO 8601 date string in UTC timezone
1186
+ * Last update date of the ticket. ISO 8601 UTC.
738
1187
  */
739
- date_created: string;
1188
+ date_updated: string;
740
1189
  /**
741
- * 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.
1190
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
742
1191
  */
743
- quota: {
1192
+ messages?: Array<{
744
1193
  /**
745
- * Maximum number of Basic clusters that can be created.
1194
+ * Unique identifier of the message (Mongo ObjectId).
746
1195
  */
747
- basic_clusters_max: number;
1196
+ id: string;
748
1197
  /**
749
- * Available number of Basic clusters that can be created.
1198
+ * Message type. Internal notes are filtered out of customer-facing responses.
750
1199
  */
751
- basic_clusters_available: number;
1200
+ type: 'customer_reply' | 'agent_reply';
752
1201
  /**
753
- * Maximum number of Pro clusters that can be created.
1202
+ * Message body in markdown.
754
1203
  */
755
- pro_clusters_max: number;
1204
+ body: string;
756
1205
  /**
757
- * Available number of Pro clusters that can be created.
1206
+ * First name of the author. Null when not provided.
758
1207
  */
759
- pro_clusters_available: number;
1208
+ author_first_name?: string;
760
1209
  /**
761
- * Maximum number of fleets that can be created per cluster.
1210
+ * Last name of the author. Null when not provided.
762
1211
  */
763
- fleets_max: number;
1212
+ author_last_name?: string;
764
1213
  /**
765
- * List of Cloudfleet cluster tiers available for the organization.
1214
+ * Attachments associated with this message.
766
1215
  */
767
- cluster_tiers: Array<string>;
768
- /**
769
- * List of Cloudfleet control plane regions available for the organization.
770
- */
771
- regions: Array<string>;
772
- /**
773
- * List of CFKE control plane versions available for the organization.
774
- */
775
- versions: Array<{
1216
+ attachments?: Array<{
776
1217
  /**
777
- * Id of the control plane version. Used in API calls.
1218
+ * Unique identifier of the attachment (Mongo ObjectId).
778
1219
  */
779
1220
  id: string;
780
1221
  /**
781
- * Label of the control plane version. Used in frontent UI.
1222
+ * Original filename as uploaded.
782
1223
  */
783
- label: string;
1224
+ filename: string;
1225
+ /**
1226
+ * MIME content type of the attachment.
1227
+ */
1228
+ content_type: string;
1229
+ /**
1230
+ * Size of the attachment in bytes.
1231
+ */
1232
+ size: number;
784
1233
  }>;
785
- };
786
- /**
787
- * Status of the organization. Can be `active` or `closed`, or `suspended`.
788
- */
789
- status: 'active' | 'closed' | 'suspended';
790
- };
791
- export type PaymentMethod = {
792
- /**
793
- * Unique identifier of the organization. UUID v4 string in canonical form.
794
- */
795
- id: string;
796
- /**
797
- * Whether organization payment method was set up and ready to use for payments.
798
- */
799
- setup: boolean;
800
- /**
801
- * Payment method type type. Only `card` payments supported at the moment.
802
- */
803
- type: 'card';
804
- /**
805
- * Last 4 digits of the payment card number.
806
- */
807
- last4: string;
808
- /**
809
- * Two-digit number representing the card's expiration month.
810
- */
811
- exp_month: number;
812
- /**
813
- * Four-digit number representing the card's expiration year.
814
- */
815
- exp_year: number;
816
- /**
817
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
818
- */
819
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
1234
+ /**
1235
+ * Creation date of the message. ISO 8601 UTC.
1236
+ */
1237
+ date_created: string;
1238
+ }>;
820
1239
  };
821
1240
  export type TokenCreateInput = {
822
1241
  /**
@@ -860,35 +1279,85 @@ export type TokenUpdateInput = {
860
1279
  */
861
1280
  role?: 'Administrator' | 'User';
862
1281
  };
1282
+ export type UsageFacets = {
1283
+ /**
1284
+ * List of unique cluster IDs
1285
+ */
1286
+ cluster_id?: Array<string>;
1287
+ /**
1288
+ * List of unique products
1289
+ */
1290
+ product?: Array<string>;
1291
+ };
1292
+ export type UsageResponse = {
1293
+ /**
1294
+ * Usage data
1295
+ */
1296
+ data: Array<{
1297
+ /**
1298
+ * Hour of the usage
1299
+ */
1300
+ hour: string;
1301
+ /**
1302
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1303
+ */
1304
+ cluster_id: string;
1305
+ /**
1306
+ * The product the usage is associated with
1307
+ */
1308
+ product: string;
1309
+ /**
1310
+ * Consumption
1311
+ */
1312
+ value: number;
1313
+ /**
1314
+ * Price per unit
1315
+ */
1316
+ price: number;
1317
+ /**
1318
+ * Total cost
1319
+ */
1320
+ total: number;
1321
+ }>;
1322
+ /**
1323
+ * Facets for filtering
1324
+ */
1325
+ facets: {
1326
+ /**
1327
+ * List of unique cluster IDs
1328
+ */
1329
+ cluster_id?: Array<string>;
1330
+ /**
1331
+ * List of unique products
1332
+ */
1333
+ product?: Array<string>;
1334
+ };
1335
+ };
863
1336
  export type Usage = {
864
1337
  /**
865
1338
  * Hour of the usage
866
1339
  */
867
- hour?: string;
1340
+ hour: string;
868
1341
  /**
869
1342
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
870
1343
  */
871
1344
  cluster_id: string;
872
1345
  /**
873
- * Tier of the cluster.
1346
+ * The product the usage is associated with
874
1347
  */
875
- cluster_tier: 'basic' | 'pro' | '';
1348
+ product: string;
876
1349
  /**
877
- * The product the usage is associated with
1350
+ * Consumption
878
1351
  */
879
- product: 'cfke_controlplane' | 'cfke_connected_nodes' | 'infra_compute' | 'infra_storage' | 'infra_loadbalancing' | 'infra_traffic' | 'cfcr_storage';
1352
+ value: number;
880
1353
  /**
881
- * Name of the Kubernetes node
1354
+ * Price per unit
882
1355
  */
883
- node_name: string;
1356
+ price: number;
884
1357
  /**
885
- * SKU of the Kubernetes node
1358
+ * Total cost
886
1359
  */
887
- sku: string;
888
- cpu: number | '';
889
- price: number | '';
890
- value: number | '';
891
- total: number | '';
1360
+ total: number;
892
1361
  };
893
1362
  export type UserCreateInput = {
894
1363
  /**
@@ -911,14 +1380,6 @@ export type UserCreateInput = {
911
1380
  * User password. Must be at least 8 characters long.
912
1381
  */
913
1382
  password: string;
914
- /**
915
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
916
- */
917
- status?: 'active' | 'inactive';
918
- /**
919
- * User role. Can be 'Administrator', 'User'.
920
- */
921
- role?: 'Administrator' | 'User';
922
1383
  };
923
1384
  export type User = {
924
1385
  /**
@@ -975,7 +1436,12 @@ export type UserUpdateInput = {
975
1436
  export type GetUsageData = {
976
1437
  body?: never;
977
1438
  path?: never;
978
- query?: never;
1439
+ query?: {
1440
+ /**
1441
+ * 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)
1442
+ */
1443
+ granularity?: 'hourly' | 'daily' | 'monthly';
1444
+ };
979
1445
  url: '/billing/usage';
980
1446
  };
981
1447
  export type GetUsageErrors = {
@@ -986,43 +1452,11 @@ export type GetUsageErrors = {
986
1452
  };
987
1453
  export type GetUsageResponses = {
988
1454
  /**
989
- * An array of usage records.
1455
+ * Usage data with facets for filtering
990
1456
  */
991
- 200: Array<Usage>;
1457
+ 200: UsageResponse;
992
1458
  };
993
1459
  export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
994
- export type GetBalanceData = {
995
- body?: never;
996
- path?: never;
997
- query?: never;
998
- url: '/billing/balance';
999
- };
1000
- export type GetBalanceResponses = {
1001
- /**
1002
- * Current balance of the organization in USD as a floating-point number.
1003
- */
1004
- 200: number;
1005
- };
1006
- export type GetBalanceResponse = GetBalanceResponses[keyof GetBalanceResponses];
1007
- export type GetPaymentMethodData = {
1008
- body?: never;
1009
- path?: never;
1010
- query?: never;
1011
- url: '/billing/payment-method';
1012
- };
1013
- export type GetPaymentMethodErrors = {
1014
- /**
1015
- * Returns 404 Not Found if the organization does not have a payment method set up.
1016
- */
1017
- 404: unknown;
1018
- };
1019
- export type GetPaymentMethodResponses = {
1020
- /**
1021
- * Redacted payment card information.
1022
- */
1023
- 200: PaymentMethod;
1024
- };
1025
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1026
1460
  export type GetPaymentMethodSecretData = {
1027
1461
  body?: never;
1028
1462
  path?: never;
@@ -1042,54 +1476,112 @@ export type GetPaymentMethodSecretResponses = {
1042
1476
  };
1043
1477
  };
1044
1478
  export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1045
- export type ListInvoicesData = {
1479
+ export type ListPaymentMethodsData = {
1046
1480
  body?: never;
1047
1481
  path?: never;
1048
- query: {
1049
- /**
1050
- * Start date for the usage. Date of oldest data point to retrieve.
1051
- */
1052
- start_date: string;
1482
+ query?: never;
1483
+ url: '/billing/payment-methods';
1484
+ };
1485
+ export type ListPaymentMethodsErrors = {
1486
+ /**
1487
+ * Not authenticated
1488
+ */
1489
+ 401: unknown;
1490
+ };
1491
+ export type ListPaymentMethodsResponses = {
1492
+ /**
1493
+ * An array of payment methods.
1494
+ */
1495
+ 200: Array<PaymentMethod>;
1496
+ };
1497
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
1498
+ export type SetDefaultPaymentMethodData = {
1499
+ body?: never;
1500
+ path: {
1053
1501
  /**
1054
- * End date for the usage. Date of newest data point to retrieve.
1502
+ * Stripe payment method identifier.
1055
1503
  */
1056
- end_date: string;
1504
+ paymentMethodId: string;
1057
1505
  };
1058
- url: '/billing/invoices';
1506
+ query?: never;
1507
+ url: '/billing/payment-methods/{paymentMethodId}/default';
1059
1508
  };
1060
- export type ListInvoicesErrors = {
1509
+ export type SetDefaultPaymentMethodErrors = {
1510
+ /**
1511
+ * The bank transfer payment method cannot be set as the default.
1512
+ */
1513
+ 400: unknown;
1061
1514
  /**
1062
1515
  * Not authenticated
1063
1516
  */
1064
1517
  401: unknown;
1518
+ /**
1519
+ * Payment method not found.
1520
+ */
1521
+ 404: unknown;
1065
1522
  };
1066
- export type ListInvoicesResponses = {
1523
+ export type SetDefaultPaymentMethodResponses = {
1067
1524
  /**
1068
- * An array of usage records.
1525
+ * Default payment method updated.
1069
1526
  */
1070
- 200: Array<Invoice>;
1527
+ 204: void;
1071
1528
  };
1072
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1073
- export type GetInvoiceData = {
1529
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
1530
+ export type DeletePaymentMethodData = {
1074
1531
  body?: never;
1075
1532
  path: {
1076
1533
  /**
1077
- * Unique invoice identifier. UUID v4 string in canonical form
1534
+ * Stripe payment method identifier.
1078
1535
  */
1079
- id: string;
1536
+ paymentMethodId: string;
1080
1537
  };
1081
1538
  query?: never;
1082
- url: '/billing/invoices/{id}';
1539
+ url: '/billing/payment-methods/{paymentMethodId}';
1083
1540
  };
1084
- export type GetInvoiceResponses = {
1541
+ export type DeletePaymentMethodErrors = {
1085
1542
  /**
1086
- * Returns a single Invoice HTML representation under `html` property.
1543
+ * The bank transfer payment method cannot be removed.
1087
1544
  */
1088
- 200: {
1089
- html?: string;
1090
- };
1545
+ 400: unknown;
1546
+ /**
1547
+ * Not authenticated
1548
+ */
1549
+ 401: unknown;
1550
+ /**
1551
+ * Payment method not found.
1552
+ */
1553
+ 404: unknown;
1554
+ /**
1555
+ * Cannot delete the only remaining payment method.
1556
+ */
1557
+ 409: unknown;
1558
+ };
1559
+ export type DeletePaymentMethodResponses = {
1560
+ /**
1561
+ * Payment method deleted.
1562
+ */
1563
+ 204: void;
1564
+ };
1565
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
1566
+ export type ListInvoicesData = {
1567
+ body?: never;
1568
+ path?: never;
1569
+ query?: never;
1570
+ url: '/billing/invoices';
1571
+ };
1572
+ export type ListInvoicesErrors = {
1573
+ /**
1574
+ * Not authenticated
1575
+ */
1576
+ 401: unknown;
1091
1577
  };
1092
- export type GetInvoiceResponse = GetInvoiceResponses[keyof GetInvoiceResponses];
1578
+ export type ListInvoicesResponses = {
1579
+ /**
1580
+ * An array of usage records.
1581
+ */
1582
+ 200: Array<Invoice>;
1583
+ };
1584
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1093
1585
  export type GetContactData = {
1094
1586
  body?: never;
1095
1587
  path?: never;
@@ -1461,9 +1953,19 @@ export type DeleteClusterData = {
1461
1953
  query?: never;
1462
1954
  url: '/clusters/{cluster_id}';
1463
1955
  };
1956
+ export type DeleteClusterErrors = {
1957
+ /**
1958
+ * Cluster not found — it does not exist or has already been deleted.
1959
+ */
1960
+ 404: unknown;
1961
+ /**
1962
+ * Transient failure tearing down the cluster; retry the request.
1963
+ */
1964
+ 503: unknown;
1965
+ };
1464
1966
  export type DeleteClusterResponses = {
1465
1967
  /**
1466
- * Successfully deleted.
1968
+ * Successfully deleted. The cluster has been torn down.
1467
1969
  */
1468
1970
  200: string;
1469
1971
  };
@@ -1548,12 +2050,7 @@ export type ListInvitesResponses = {
1548
2050
  };
1549
2051
  export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1550
2052
  export type CreateInviteData = {
1551
- body: {
1552
- /**
1553
- * User email address
1554
- */
1555
- email?: string;
1556
- };
2053
+ body: InviteCreateInput;
1557
2054
  path?: never;
1558
2055
  query?: never;
1559
2056
  url: '/invites';
@@ -1578,9 +2075,18 @@ export type GetInviteData = {
1578
2075
  };
1579
2076
  export type GetInviteResponses = {
1580
2077
  /**
1581
- * Returns a single object containing invite details.
2078
+ * The invitation code is valid. Returns the invited email and organization.
1582
2079
  */
1583
- 200: Invite;
2080
+ 200: {
2081
+ /**
2082
+ * Email address the invite was issued to.
2083
+ */
2084
+ email?: string;
2085
+ /**
2086
+ * Identifier of the organization the invite grants access to.
2087
+ */
2088
+ organization_id?: string;
2089
+ };
1584
2090
  };
1585
2091
  export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1586
2092
  export type DeleteInviteData = {
@@ -1619,24 +2125,76 @@ export type ListMarketplaceChartsResponses = {
1619
2125
  200: Array<MarketplaceListing>;
1620
2126
  };
1621
2127
  export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
1622
- export type GetMarketplaceChartData = {
2128
+ export type GetMarketplaceChartFilesData = {
1623
2129
  body?: never;
1624
2130
  path: {
1625
2131
  /**
1626
- * Unique identifier of the chart listing in the marketplace.
2132
+ * Name of the chart in the marketplace.
2133
+ */
2134
+ chart_name: string;
2135
+ /**
2136
+ * 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).
2137
+ */
2138
+ version_channel: string;
2139
+ };
2140
+ query?: never;
2141
+ url: '/marketplace/{chart_name}/files/{version_channel}';
2142
+ };
2143
+ export type GetMarketplaceChartFilesErrors = {
2144
+ /**
2145
+ * Chart not found or no version matches the channel
2146
+ */
2147
+ 404: unknown;
2148
+ };
2149
+ export type GetMarketplaceChartFilesResponses = {
2150
+ /**
2151
+ * Returns an object containing the chart files for the latest matching version.
2152
+ */
2153
+ 200: MarketplaceListingFiles;
2154
+ };
2155
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2156
+ export type PostMcpData = {
2157
+ /**
2158
+ * JSON-RPC 2.0 request payload
2159
+ */
2160
+ body: {
2161
+ jsonrpc?: string;
2162
+ method?: string;
2163
+ id?: string | number;
2164
+ /**
2165
+ * Method-specific parameters
1627
2166
  */
1628
- listing_id: string;
2167
+ params?: {
2168
+ [key: string]: unknown;
2169
+ };
1629
2170
  };
2171
+ path?: never;
1630
2172
  query?: never;
1631
- url: '/marketplace/{listing_id}';
2173
+ url: '/mcp';
1632
2174
  };
1633
- export type GetMarketplaceChartResponses = {
2175
+ export type PostMcpErrors = {
1634
2176
  /**
1635
- * Returns an object containing the chart listing details.
2177
+ * Not authenticated
2178
+ */
2179
+ 401: unknown;
2180
+ };
2181
+ export type PostMcpResponses = {
2182
+ /**
2183
+ * JSON-RPC 2.0 success or error response
1636
2184
  */
1637
- 200: MarketplaceListing;
2185
+ 200: {
2186
+ jsonrpc?: string;
2187
+ id?: string | number;
2188
+ result?: {
2189
+ [key: string]: unknown;
2190
+ };
2191
+ error?: {
2192
+ code?: number;
2193
+ message?: string;
2194
+ };
2195
+ };
1638
2196
  };
1639
- export type GetMarketplaceChartResponse = GetMarketplaceChartResponses[keyof GetMarketplaceChartResponses];
2197
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
1640
2198
  export type GetOrganizationData = {
1641
2199
  body?: never;
1642
2200
  path?: never;
@@ -1658,10 +2216,255 @@ export type CreateOrganizationData = {
1658
2216
  };
1659
2217
  export type CreateOrganizationResponses = {
1660
2218
  /**
1661
- * Successfully created a new organization.
2219
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2220
+ *
2221
+ */
2222
+ 200: OrganizationCreateOutput;
2223
+ };
2224
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2225
+ export type ListRepositoriesData = {
2226
+ body?: never;
2227
+ path?: never;
2228
+ query?: never;
2229
+ url: '/registry';
2230
+ };
2231
+ export type ListRepositoriesErrors = {
2232
+ /**
2233
+ * Not authenticated
2234
+ */
2235
+ 401: unknown;
2236
+ /**
2237
+ * Internal server error
2238
+ */
2239
+ 500: unknown;
2240
+ };
2241
+ export type ListRepositoriesResponses = {
2242
+ /**
2243
+ * List of repositories
2244
+ */
2245
+ 200: Array<RegistryRepository>;
2246
+ };
2247
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
2248
+ export type ListTagsData = {
2249
+ body?: never;
2250
+ path: {
2251
+ /**
2252
+ * Region where the repository is located
2253
+ */
2254
+ region: string;
2255
+ /**
2256
+ * Name of the repository
2257
+ */
2258
+ repository: string;
2259
+ };
2260
+ query?: never;
2261
+ url: '/registry/{region}/{repository}';
2262
+ };
2263
+ export type ListTagsErrors = {
2264
+ /**
2265
+ * Not authenticated
2266
+ */
2267
+ 401: unknown;
2268
+ /**
2269
+ * Repository not found
2270
+ */
2271
+ 404: unknown;
2272
+ /**
2273
+ * Internal server error
2274
+ */
2275
+ 500: unknown;
2276
+ };
2277
+ export type ListTagsResponses = {
2278
+ /**
2279
+ * Repository with tags
2280
+ */
2281
+ 200: RegistryRepositoryWithTags;
2282
+ };
2283
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2284
+ export type DeleteTagData = {
2285
+ body?: never;
2286
+ path: {
2287
+ /**
2288
+ * Region where the repository is located
2289
+ */
2290
+ region: string;
2291
+ /**
2292
+ * Name of the repository
2293
+ */
2294
+ repository: string;
2295
+ /**
2296
+ * Name of the tag
2297
+ */
2298
+ tag: string;
2299
+ };
2300
+ query?: never;
2301
+ url: '/registry/{region}/{repository}/{tag}';
2302
+ };
2303
+ export type DeleteTagErrors = {
2304
+ /**
2305
+ * Not authenticated
2306
+ */
2307
+ 401: unknown;
2308
+ /**
2309
+ * Tag not found
2310
+ */
2311
+ 404: unknown;
2312
+ /**
2313
+ * Internal server error
2314
+ */
2315
+ 500: unknown;
2316
+ };
2317
+ export type DeleteTagResponses = {
2318
+ /**
2319
+ * Tag successfully deleted
1662
2320
  */
1663
2321
  200: unknown;
1664
2322
  };
2323
+ export type GetTagData = {
2324
+ body?: never;
2325
+ path: {
2326
+ /**
2327
+ * Region where the repository is located
2328
+ */
2329
+ region: string;
2330
+ /**
2331
+ * Name of the repository
2332
+ */
2333
+ repository: string;
2334
+ /**
2335
+ * Name of the tag
2336
+ */
2337
+ tag: string;
2338
+ };
2339
+ query?: never;
2340
+ url: '/registry/{region}/{repository}/{tag}';
2341
+ };
2342
+ export type GetTagErrors = {
2343
+ /**
2344
+ * Not authenticated
2345
+ */
2346
+ 401: unknown;
2347
+ /**
2348
+ * Tag not found
2349
+ */
2350
+ 404: unknown;
2351
+ /**
2352
+ * Internal server error
2353
+ */
2354
+ 500: unknown;
2355
+ };
2356
+ export type GetTagResponses = {
2357
+ /**
2358
+ * Tag details
2359
+ */
2360
+ 200: RegistryTag;
2361
+ };
2362
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2363
+ export type ListTicketsData = {
2364
+ body?: never;
2365
+ path?: never;
2366
+ query?: never;
2367
+ url: '/tickets';
2368
+ };
2369
+ export type ListTicketsResponses = {
2370
+ /**
2371
+ * Tickets for the organization.
2372
+ */
2373
+ 200: TicketListResponse;
2374
+ };
2375
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
2376
+ export type CreateTicketData = {
2377
+ body: {
2378
+ /**
2379
+ * JSON-encoded TicketCreateInput.
2380
+ */
2381
+ payload?: string;
2382
+ attachments?: Array<Blob | File>;
2383
+ };
2384
+ path?: never;
2385
+ query?: never;
2386
+ url: '/tickets';
2387
+ };
2388
+ export type CreateTicketResponses = {
2389
+ /**
2390
+ * Ticket created.
2391
+ */
2392
+ 200: Ticket;
2393
+ };
2394
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
2395
+ export type CloseTicketData = {
2396
+ body?: never;
2397
+ path: {
2398
+ ticket_id: string;
2399
+ };
2400
+ query?: never;
2401
+ url: '/tickets/{ticket_id}';
2402
+ };
2403
+ export type CloseTicketResponses = {
2404
+ /**
2405
+ * Ticket closed.
2406
+ */
2407
+ 200: Ticket;
2408
+ };
2409
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
2410
+ export type GetTicketData = {
2411
+ body?: never;
2412
+ path: {
2413
+ ticket_id: string;
2414
+ };
2415
+ query?: never;
2416
+ url: '/tickets/{ticket_id}';
2417
+ };
2418
+ export type GetTicketResponses = {
2419
+ /**
2420
+ * Ticket with messages (internal notes excluded).
2421
+ */
2422
+ 200: Ticket;
2423
+ };
2424
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
2425
+ export type ReplyTicketData = {
2426
+ body: {
2427
+ /**
2428
+ * JSON-encoded TicketMessageInput.
2429
+ */
2430
+ payload?: string;
2431
+ attachments?: Array<Blob | File>;
2432
+ };
2433
+ path: {
2434
+ ticket_id: string;
2435
+ };
2436
+ query?: never;
2437
+ url: '/tickets/{ticket_id}/messages';
2438
+ };
2439
+ export type ReplyTicketErrors = {
2440
+ /**
2441
+ * Ticket is closed. Open a new ticket instead.
2442
+ */
2443
+ 409: unknown;
2444
+ };
2445
+ export type ReplyTicketResponses = {
2446
+ /**
2447
+ * Reply appended.
2448
+ */
2449
+ 200: TicketMessage;
2450
+ };
2451
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
2452
+ export type GetTicketAttachmentData = {
2453
+ body?: never;
2454
+ path: {
2455
+ ticket_id: string;
2456
+ attachment_id: string;
2457
+ };
2458
+ query?: never;
2459
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
2460
+ };
2461
+ export type GetTicketAttachmentResponses = {
2462
+ /**
2463
+ * Attachment binary stream.
2464
+ */
2465
+ 200: Blob | File;
2466
+ };
2467
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
1665
2468
  export type ListTokensData = {
1666
2469
  body?: never;
1667
2470
  path?: never;
@@ -1918,7 +2721,4 @@ export type UpdateUserResponses = {
1918
2721
  200: User;
1919
2722
  };
1920
2723
  export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1921
- export type ClientOptions = {
1922
- baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
1923
- };
1924
2724
  //# sourceMappingURL=types.gen.d.ts.map