@cloudfleet/sdk 0.0.1-04dcf91 → 0.0.1-079832b

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