@cloudfleet/sdk 0.0.1-66590b1 → 0.0.1-67ccc2c

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