@cloudfleet/sdk 0.0.1-e80cef7 → 0.0.1-e9ed8e0

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