@cloudfleet/sdk 0.0.1-6a60d36 → 0.0.1-6b43f7e

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