@cloudfleet/sdk 0.0.1-775f88b → 0.0.1-7796b47

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.
@@ -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
  */
@@ -129,9 +153,9 @@ export type Chart = {
129
153
  */
130
154
  chart: string;
131
155
  /**
132
- * Status of the chart deployment.
156
+ * Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).
133
157
  */
134
- status: 'InstallSucceeded' | 'InstallFailed' | 'UpgradeSucceeded' | 'UpgradeFailed' | 'TestSucceeded' | 'TestFailed' | 'RollbackSucceeded' | 'RollbackFailed' | 'UninstallSucceeded' | 'UninstallFailed' | 'ArtifactFailed' | 'DependencyNotReady' | 'Progressing' | 'SourceNotReady';
158
+ status: string;
135
159
  /**
136
160
  * Current version of the chart deployment.
137
161
  */
@@ -159,6 +183,9 @@ export type ChartUpdateInput = {
159
183
  */
160
184
  version_channel: string;
161
185
  };
186
+ /**
187
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
188
+ */
162
189
  export type ClusterCreateInput = {
163
190
  /**
164
191
  * Name of the cluster.
@@ -167,15 +194,61 @@ export type ClusterCreateInput = {
167
194
  /**
168
195
  * Tier of the cluster.
169
196
  */
170
- tier: 'basic' | 'pro';
197
+ tier?: 'basic' | 'pro' | 'enterprise';
171
198
  /**
172
- * Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
199
+ * Version of the kubernetes cluster.
173
200
  */
174
- region?: 'staging-1a' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
201
+ version_channel?: string;
175
202
  /**
176
- * Version of the kubernetes cluster.
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.
177
229
  */
178
- version_channel?: '1.x.x-cfke.x' | '1.31.x-cfke.x' | '1.32.x-cfke.x' | '1.33.x-cfke.x';
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
+ };
179
252
  };
180
253
  export type ClusterJoinInformation = {
181
254
  /**
@@ -190,6 +263,10 @@ export type ClusterJoinInformation = {
190
263
  * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
191
264
  */
192
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;
193
270
  /**
194
271
  * Authentication key for the cluster.
195
272
  */
@@ -237,6 +314,9 @@ export type ClusterJoinInformation = {
237
314
  gcp_workload_identity_provider: string;
238
315
  };
239
316
  };
317
+ /**
318
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
319
+ */
240
320
  export type Cluster = {
241
321
  /**
242
322
  * Name of the cluster.
@@ -245,20 +325,71 @@ export type Cluster = {
245
325
  /**
246
326
  * Tier of the cluster.
247
327
  */
248
- tier: 'basic' | 'pro';
328
+ tier: 'basic' | 'pro' | 'enterprise';
329
+ /**
330
+ * Version of the kubernetes cluster.
331
+ */
332
+ version_channel: string;
333
+ /**
334
+ * Release channel for the cluster's control plane.
335
+ */
336
+ release_channel: 'rapid' | 'stable' | 'extended';
249
337
  /**
250
- * Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
338
+ * Cluster feature toggles.
251
339
  */
252
- region?: 'staging-1a' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
340
+ features: {
341
+ /**
342
+ * GPU sharing strategy.
343
+ */
344
+ gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
345
+ /**
346
+ * Maximum number of pods that may share a single GPU.
347
+ */
348
+ gpu_max_shared_clients_per_gpu: number;
349
+ /**
350
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
351
+ */
352
+ cilium_socket_lb_host_namespace_only: boolean;
353
+ };
354
+ /**
355
+ * Cloudfleet control plane region. This field can not be updated after creation.
356
+ */
357
+ region: string;
358
+ /**
359
+ * Cluster networking configuration. Immutable after creation.
360
+ */
361
+ networking: {
362
+ /**
363
+ * CIDR block for pod IPs.
364
+ */
365
+ pod_cidr: string;
366
+ /**
367
+ * CIDR block for service IPs.
368
+ */
369
+ service_cidr: string;
370
+ /**
371
+ * Enable IPv4+IPv6 dual-stack networking.
372
+ */
373
+ dual_stack: boolean;
374
+ /**
375
+ * IPv6 pod CIDR. Requires dual_stack.
376
+ */
377
+ pod_cidr_v6: string;
378
+ /**
379
+ * IPv6 service CIDR. Requires dual_stack.
380
+ */
381
+ service_cidr_v6: string;
382
+ };
253
383
  /**
254
384
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
255
385
  */
256
386
  id: string;
257
387
  /**
258
- * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
388
+ * Status of the cluster.
259
389
  */
260
- status: 'active' | 'disabled' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
390
+ status: 'creating' | 'deployed' | 'updating' | 'disabled';
261
391
  endpoint?: string | '';
392
+ endpoint_public?: string | '';
262
393
  /**
263
394
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
264
395
  */
@@ -278,129 +409,259 @@ export type Cluster = {
278
409
  /**
279
410
  * Indicates if the cluster is ready to be used.
280
411
  */
281
- ready?: boolean;
282
- /**
283
- * Version of the kubernetes cluster.
284
- */
285
- version_channel?: string;
412
+ ready: boolean;
286
413
  };
414
+ /**
415
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
416
+ */
287
417
  export type ClusterUpdateInput = {
288
418
  /**
289
419
  * Name of the cluster.
290
420
  */
291
- name?: string;
421
+ name: string;
292
422
  /**
293
423
  * Tier of the cluster.
294
424
  */
295
- tier: 'basic' | 'pro';
425
+ tier?: 'basic' | 'pro' | 'enterprise';
296
426
  /**
297
427
  * Version of the kubernetes cluster.
298
428
  */
299
429
  version_channel?: string;
430
+ /**
431
+ * Release channel for the cluster's control plane.
432
+ */
433
+ release_channel?: 'rapid' | 'stable' | 'extended';
434
+ /**
435
+ * Cluster feature toggles.
436
+ */
437
+ features?: {
438
+ /**
439
+ * GPU sharing strategy.
440
+ */
441
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
442
+ /**
443
+ * Maximum number of pods that may share a single GPU.
444
+ */
445
+ gpu_max_shared_clients_per_gpu?: number;
446
+ /**
447
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
448
+ */
449
+ cilium_socket_lb_host_namespace_only?: boolean;
450
+ };
300
451
  };
452
+ /**
453
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
454
+ */
301
455
  export type FleetCreateInput = {
302
456
  /**
303
457
  * Limits define a set of bounds for provisioning capacity.
304
458
  */
305
459
  limits?: {
306
460
  /**
307
- * CPU limit in cores.
461
+ * CPU limit in cores. Maximum 100,000.
308
462
  */
309
- cpu: number;
463
+ cpu?: number;
310
464
  };
311
465
  gcp?: {
312
- enabled?: boolean;
466
+ enabled: boolean;
313
467
  /**
314
- * Project GCP Project id to deploy instances into
468
+ * 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.
315
469
  */
316
- project: string;
470
+ project?: string;
317
471
  };
318
472
  hetzner?: {
319
- enabled?: boolean;
473
+ enabled: boolean;
320
474
  /**
321
- * Hetzner Cloud API key with read / write access
475
+ * 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.
322
476
  */
323
- apiKey: string;
477
+ apiKey?: string;
324
478
  };
325
479
  aws?: {
326
- enabled?: boolean;
480
+ enabled: boolean;
481
+ /**
482
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
483
+ */
484
+ controllerRoleArn?: string;
485
+ };
486
+ /**
487
+ * 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.
488
+ */
489
+ constraints?: {
490
+ /**
491
+ * Allowed values for `karpenter.sh/capacity-type`.
492
+ */
493
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
327
494
  /**
328
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
495
+ * Allowed values for `kubernetes.io/arch`.
329
496
  */
330
- controllerRoleArn: string;
497
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
498
+ /**
499
+ * Allowed values for `cfke.io/instance-family`.
500
+ */
501
+ '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'>;
502
+ /**
503
+ * Allowed values for `topology.kubernetes.io/region`.
504
+ */
505
+ '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'>;
331
506
  };
507
+ /**
508
+ * 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`).
509
+ */
510
+ scalingProfile?: 'aggressive' | 'conservative';
332
511
  /**
333
512
  * Unique identifier of the kubernetes fleet.
334
513
  */
335
514
  id: string;
336
515
  };
516
+ /**
517
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
518
+ */
337
519
  export type Fleet = {
338
520
  /**
339
521
  * Limits define a set of bounds for provisioning capacity.
340
522
  */
341
523
  limits?: {
342
524
  /**
343
- * CPU limit in cores.
525
+ * CPU limit in cores. Maximum 100,000.
344
526
  */
345
- cpu: number;
527
+ cpu?: number;
346
528
  };
347
529
  gcp?: {
348
- enabled?: boolean;
530
+ enabled: boolean;
349
531
  /**
350
- * Project GCP Project id to deploy instances into
532
+ * 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.
351
533
  */
352
- project: string;
534
+ project?: string;
353
535
  };
354
536
  hetzner?: {
355
- enabled?: boolean;
537
+ enabled: boolean;
356
538
  /**
357
- * Hetzner Cloud API key with read / write access
539
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
358
540
  */
359
- apiKey: string;
541
+ apiKey?: string;
360
542
  };
361
543
  aws?: {
362
- enabled?: boolean;
544
+ enabled: boolean;
545
+ /**
546
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
547
+ */
548
+ controllerRoleArn?: string;
549
+ };
550
+ /**
551
+ * 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.
552
+ */
553
+ constraints: {
554
+ /**
555
+ * Allowed values for `karpenter.sh/capacity-type`.
556
+ */
557
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
558
+ /**
559
+ * Allowed values for `kubernetes.io/arch`.
560
+ */
561
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
562
+ /**
563
+ * Allowed values for `cfke.io/instance-family`.
564
+ */
565
+ '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'>;
363
566
  /**
364
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
567
+ * Allowed values for `topology.kubernetes.io/region`.
365
568
  */
366
- controllerRoleArn: string;
569
+ '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'>;
367
570
  };
571
+ /**
572
+ * 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`).
573
+ */
574
+ scalingProfile: 'aggressive' | 'conservative';
368
575
  /**
369
576
  * Unique identifier of the kubernetes fleet.
370
577
  */
371
578
  id: string;
579
+ /**
580
+ * Indicates whether the fleet configuration is healthy.
581
+ */
582
+ ready: boolean;
583
+ /**
584
+ * Human-readable reason the fleet is not ready. Present only when `ready` is false.
585
+ */
586
+ status_message?: string;
587
+ /**
588
+ * Creation date and time of the fleet.
589
+ */
590
+ created_at: string;
591
+ /**
592
+ * Date and time the fleet was last updated.
593
+ */
594
+ updated_at: string;
372
595
  };
596
+ /**
597
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
598
+ */
373
599
  export type FleetUpdateInput = {
374
600
  /**
375
601
  * Limits define a set of bounds for provisioning capacity.
376
602
  */
377
603
  limits?: {
378
604
  /**
379
- * CPU limit in cores.
605
+ * CPU limit in cores. Maximum 100,000.
380
606
  */
381
- cpu: number;
607
+ cpu?: number;
382
608
  };
383
609
  gcp?: {
384
- enabled?: boolean;
610
+ enabled: boolean;
385
611
  /**
386
- * Project GCP Project id to deploy instances into
612
+ * 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.
387
613
  */
388
- project: string;
614
+ project?: string;
389
615
  };
390
616
  hetzner?: {
391
- enabled?: boolean;
617
+ enabled: boolean;
392
618
  /**
393
- * Hetzner Cloud API key with read / write access
619
+ * 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.
394
620
  */
395
- apiKey: string;
621
+ apiKey?: string;
396
622
  };
397
623
  aws?: {
398
- enabled?: boolean;
624
+ enabled: boolean;
625
+ /**
626
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
627
+ */
628
+ controllerRoleArn?: string;
629
+ };
630
+ /**
631
+ * 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.
632
+ */
633
+ constraints?: {
634
+ /**
635
+ * Allowed values for `karpenter.sh/capacity-type`.
636
+ */
637
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
638
+ /**
639
+ * Allowed values for `kubernetes.io/arch`.
640
+ */
641
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
642
+ /**
643
+ * Allowed values for `cfke.io/instance-family`.
644
+ */
645
+ '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'>;
399
646
  /**
400
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
647
+ * Allowed values for `topology.kubernetes.io/region`.
401
648
  */
402
- controllerRoleArn: string;
649
+ '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'>;
403
650
  };
651
+ /**
652
+ * 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`).
653
+ */
654
+ scalingProfile?: 'aggressive' | 'conservative';
655
+ };
656
+ export type InviteCreateInput = {
657
+ /**
658
+ * Email address of the user to invite.
659
+ */
660
+ email: string;
661
+ /**
662
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
663
+ */
664
+ role?: 'Administrator' | 'User';
404
665
  };
405
666
  export type Invite = {
406
667
  /**
@@ -423,6 +684,10 @@ export type Invite = {
423
684
  * Generated unique invite code.
424
685
  */
425
686
  code?: string;
687
+ /**
688
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
689
+ */
690
+ role?: 'Administrator' | 'User';
426
691
  };
427
692
  export type Invoice = {
428
693
  /**
@@ -543,6 +808,10 @@ export type MarketplaceListing = {
543
808
  };
544
809
  };
545
810
  export type OrganizationCreateInput = {
811
+ /**
812
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
813
+ */
814
+ type: 'business' | 'personal';
546
815
  /**
547
816
  * Email address used for billing as a string.
548
817
  */
@@ -564,6 +833,12 @@ export type OrganizationCreateInput = {
564
833
  */
565
834
  password: string;
566
835
  };
836
+ export type OrganizationCreateOutput = {
837
+ /**
838
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
839
+ */
840
+ id: string;
841
+ };
567
842
  export type Organization = {
568
843
  /**
569
844
  * Unique identifier of the organization. UUID v4 string in canonical form
@@ -573,6 +848,10 @@ export type Organization = {
573
848
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
574
849
  */
575
850
  name?: string;
851
+ /**
852
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
853
+ */
854
+ type: 'business' | 'personal';
576
855
  /**
577
856
  * Creation date of the organization. ISO 8601 date string in UTC timezone
578
857
  */
@@ -597,6 +876,14 @@ export type Organization = {
597
876
  * Available number of Pro clusters that can be created.
598
877
  */
599
878
  pro_clusters_available: number;
879
+ /**
880
+ * Maximum number of Enterprise clusters that can be created.
881
+ */
882
+ enterprise_clusters_max: number;
883
+ /**
884
+ * Available number of Enterprise clusters that can be created.
885
+ */
886
+ enterprise_clusters_available: number;
600
887
  /**
601
888
  * Maximum number of fleets that can be created per cluster.
602
889
  */
@@ -631,36 +918,52 @@ export type Organization = {
631
918
  * Status of the organization. Can be `active` or `closed`, or `suspended`.
632
919
  */
633
920
  status: 'active' | 'closed' | 'suspended';
921
+ /**
922
+ * 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.
923
+ */
924
+ verification: 'none' | 'submitted' | 'verified';
634
925
  };
635
926
  export type PaymentMethod = {
636
927
  /**
637
- * Unique identifier of the organization. UUID v4 string in canonical form.
928
+ * 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.
638
929
  */
639
930
  id: string;
640
931
  /**
641
- * Whether organization payment method was set up and ready to use for payments.
642
- */
643
- setup: boolean;
644
- /**
645
- * Payment method type type. Only `card` payments supported at the moment.
932
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
646
933
  */
647
- type: 'card';
934
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
648
935
  /**
649
- * Last 4 digits of the payment card number.
936
+ * 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.
650
937
  */
651
938
  last4: string;
652
939
  /**
653
- * Two-digit number representing the card's expiration month.
940
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
654
941
  */
655
942
  exp_month: number;
656
943
  /**
657
- * Four-digit number representing the card's expiration year.
944
+ * 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.
658
945
  */
659
946
  exp_year: number;
660
947
  /**
661
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
948
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
949
+ */
950
+ brand: string;
951
+ /**
952
+ * 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.
953
+ */
954
+ iban: string;
955
+ /**
956
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
957
+ */
958
+ bic: string;
959
+ /**
960
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
961
+ */
962
+ account_holder_name: string;
963
+ /**
964
+ * 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).
662
965
  */
663
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
966
+ is_default: boolean;
664
967
  };
665
968
  export type PlatformQuota = {
666
969
  /**
@@ -679,6 +982,14 @@ export type PlatformQuota = {
679
982
  * Available number of Pro clusters that can be created.
680
983
  */
681
984
  pro_clusters_available: number;
985
+ /**
986
+ * Maximum number of Enterprise clusters that can be created.
987
+ */
988
+ enterprise_clusters_max: number;
989
+ /**
990
+ * Available number of Enterprise clusters that can be created.
991
+ */
992
+ enterprise_clusters_available: number;
682
993
  /**
683
994
  * Maximum number of fleets that can be created per cluster.
684
995
  */
@@ -857,121 +1168,288 @@ export type RegistryTag = {
857
1168
  */
858
1169
  uri: string;
859
1170
  };
860
- export type TokenCreateInput = {
1171
+ export type TicketAttachment = {
861
1172
  /**
862
- * Human readable access token name.
1173
+ * Unique identifier of the attachment (Mongo ObjectId).
863
1174
  */
864
- name: string;
1175
+ id: string;
865
1176
  /**
866
- * Role assumed by the token.
1177
+ * Original filename as uploaded.
867
1178
  */
868
- role: 'Administrator' | 'User';
869
- };
870
- export type Token = {
1179
+ filename: string;
871
1180
  /**
872
- * Human readable access token name.
1181
+ * MIME content type of the attachment.
873
1182
  */
874
- name: string;
1183
+ content_type: string;
875
1184
  /**
876
- * Role assumed by the token.
1185
+ * Size of the attachment in bytes.
877
1186
  */
878
- role: 'Administrator' | 'User';
1187
+ size: number;
1188
+ };
1189
+ export type TicketCreateInput = {
879
1190
  /**
880
- * Generated unique identifier of the access token.
1191
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
881
1192
  */
882
- id?: string;
1193
+ category: 'billing' | 'technical' | 'general';
883
1194
  /**
884
- * Access token secret. Unmasked only during creation.
1195
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
885
1196
  */
886
- secret?: string;
1197
+ body: string;
887
1198
  /**
888
- * Creation date of the access token. ISO 8601 date string in UTC timezone
1199
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
889
1200
  */
890
- date_created: string;
1201
+ properties?: {
1202
+ [key: string]: unknown;
1203
+ };
891
1204
  };
892
- export type TokenUpdateInput = {
1205
+ export type TicketMessageInput = {
893
1206
  /**
894
- * Human readable access token name.
1207
+ * Reply body in markdown.
895
1208
  */
896
- name?: string;
1209
+ body: string;
1210
+ };
1211
+ export type TicketMessage = {
897
1212
  /**
898
- * Role assumed by the token.
1213
+ * Unique identifier of the message (Mongo ObjectId).
899
1214
  */
900
- role?: 'Administrator' | 'User';
901
- };
902
- export type UsageFacets = {
1215
+ id: string;
903
1216
  /**
904
- * List of unique cluster IDs
1217
+ * Message type. Internal notes are filtered out of customer-facing responses.
905
1218
  */
906
- cluster_id?: Array<string>;
1219
+ type: 'customer_reply' | 'agent_reply';
907
1220
  /**
908
- * List of unique products
1221
+ * Message body in markdown.
909
1222
  */
910
- product?: Array<string>;
911
- };
912
- export type UsageResponse = {
1223
+ body: string;
913
1224
  /**
914
- * Usage data
1225
+ * First name of the author. Null when not provided.
915
1226
  */
916
- data: Array<{
917
- /**
918
- * Hour of the usage
919
- */
920
- hour: string;
921
- /**
922
- * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
923
- */
924
- cluster_id: string;
1227
+ author_first_name?: string;
1228
+ /**
1229
+ * Last name of the author. Null when not provided.
1230
+ */
1231
+ author_last_name?: string;
1232
+ /**
1233
+ * Attachments associated with this message.
1234
+ */
1235
+ attachments?: Array<{
925
1236
  /**
926
- * The product the usage is associated with
1237
+ * Unique identifier of the attachment (Mongo ObjectId).
927
1238
  */
928
- product: string;
1239
+ id: string;
929
1240
  /**
930
- * Consumption
1241
+ * Original filename as uploaded.
931
1242
  */
932
- value: number;
1243
+ filename: string;
933
1244
  /**
934
- * Price per unit
1245
+ * MIME content type of the attachment.
935
1246
  */
936
- price: number;
1247
+ content_type: string;
937
1248
  /**
938
- * Total cost
1249
+ * Size of the attachment in bytes.
939
1250
  */
940
- total: number;
1251
+ size: number;
941
1252
  }>;
942
1253
  /**
943
- * Facets for filtering
1254
+ * Creation date of the message. ISO 8601 UTC.
944
1255
  */
945
- facets: {
946
- /**
947
- * List of unique cluster IDs
948
- */
949
- cluster_id?: Array<string>;
950
- /**
951
- * List of unique products
952
- */
953
- product?: Array<string>;
954
- };
1256
+ date_created: string;
955
1257
  };
956
- export type Usage = {
1258
+ export type Ticket = {
957
1259
  /**
958
- * Hour of the usage
1260
+ * Unique identifier of the ticket (Mongo ObjectId).
959
1261
  */
960
- hour: string;
1262
+ id: string;
961
1263
  /**
962
- * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1264
+ * Current state of the ticket.
963
1265
  */
964
- cluster_id: string;
1266
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
965
1267
  /**
966
- * The product the usage is associated with
1268
+ * Ticket category.
967
1269
  */
968
- product: string;
1270
+ category: 'billing' | 'technical' | 'general';
969
1271
  /**
970
- * Consumption
1272
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
971
1273
  */
972
- value: number;
1274
+ summary: string;
973
1275
  /**
974
- * Price per unit
1276
+ * Closure timestamp. Null while the ticket is open.
1277
+ */
1278
+ closed_at?: string;
1279
+ /**
1280
+ * Creation date of the ticket. ISO 8601 UTC.
1281
+ */
1282
+ date_created: string;
1283
+ /**
1284
+ * Last update date of the ticket. ISO 8601 UTC.
1285
+ */
1286
+ date_updated: string;
1287
+ /**
1288
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1289
+ */
1290
+ messages?: Array<{
1291
+ /**
1292
+ * Unique identifier of the message (Mongo ObjectId).
1293
+ */
1294
+ id: string;
1295
+ /**
1296
+ * Message type. Internal notes are filtered out of customer-facing responses.
1297
+ */
1298
+ type: 'customer_reply' | 'agent_reply';
1299
+ /**
1300
+ * Message body in markdown.
1301
+ */
1302
+ body: string;
1303
+ /**
1304
+ * First name of the author. Null when not provided.
1305
+ */
1306
+ author_first_name?: string;
1307
+ /**
1308
+ * Last name of the author. Null when not provided.
1309
+ */
1310
+ author_last_name?: string;
1311
+ /**
1312
+ * Attachments associated with this message.
1313
+ */
1314
+ attachments?: Array<{
1315
+ /**
1316
+ * Unique identifier of the attachment (Mongo ObjectId).
1317
+ */
1318
+ id: string;
1319
+ /**
1320
+ * Original filename as uploaded.
1321
+ */
1322
+ filename: string;
1323
+ /**
1324
+ * MIME content type of the attachment.
1325
+ */
1326
+ content_type: string;
1327
+ /**
1328
+ * Size of the attachment in bytes.
1329
+ */
1330
+ size: number;
1331
+ }>;
1332
+ /**
1333
+ * Creation date of the message. ISO 8601 UTC.
1334
+ */
1335
+ date_created: string;
1336
+ }>;
1337
+ };
1338
+ export type TokenCreateInput = {
1339
+ /**
1340
+ * Human readable access token name.
1341
+ */
1342
+ name: string;
1343
+ /**
1344
+ * Role assumed by the token.
1345
+ */
1346
+ role: 'Administrator' | 'User';
1347
+ };
1348
+ export type Token = {
1349
+ /**
1350
+ * Human readable access token name.
1351
+ */
1352
+ name: string;
1353
+ /**
1354
+ * Role assumed by the token.
1355
+ */
1356
+ role: 'Administrator' | 'User';
1357
+ /**
1358
+ * Generated unique identifier of the access token.
1359
+ */
1360
+ id?: string;
1361
+ /**
1362
+ * Access token secret. Unmasked only during creation.
1363
+ */
1364
+ secret?: string;
1365
+ /**
1366
+ * Creation date of the access token. ISO 8601 date string in UTC timezone
1367
+ */
1368
+ date_created: string;
1369
+ };
1370
+ export type TokenUpdateInput = {
1371
+ /**
1372
+ * Human readable access token name.
1373
+ */
1374
+ name?: string;
1375
+ /**
1376
+ * Role assumed by the token.
1377
+ */
1378
+ role?: 'Administrator' | 'User';
1379
+ };
1380
+ export type UsageFacets = {
1381
+ /**
1382
+ * List of unique cluster IDs
1383
+ */
1384
+ cluster_id?: Array<string>;
1385
+ /**
1386
+ * List of unique products
1387
+ */
1388
+ 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'>;
1389
+ };
1390
+ export type UsageResponse = {
1391
+ /**
1392
+ * Usage data
1393
+ */
1394
+ data: Array<{
1395
+ /**
1396
+ * Hour of the usage
1397
+ */
1398
+ hour: string;
1399
+ /**
1400
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1401
+ */
1402
+ cluster_id: string;
1403
+ /**
1404
+ * The product the usage is associated with
1405
+ */
1406
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1407
+ /**
1408
+ * Consumption
1409
+ */
1410
+ value: number;
1411
+ /**
1412
+ * Price per unit
1413
+ */
1414
+ price: number;
1415
+ /**
1416
+ * Total cost
1417
+ */
1418
+ total: number;
1419
+ }>;
1420
+ /**
1421
+ * Facets for filtering
1422
+ */
1423
+ facets: {
1424
+ /**
1425
+ * List of unique cluster IDs
1426
+ */
1427
+ cluster_id?: Array<string>;
1428
+ /**
1429
+ * List of unique products
1430
+ */
1431
+ 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'>;
1432
+ };
1433
+ };
1434
+ export type Usage = {
1435
+ /**
1436
+ * Hour of the usage
1437
+ */
1438
+ hour: string;
1439
+ /**
1440
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1441
+ */
1442
+ cluster_id: string;
1443
+ /**
1444
+ * The product the usage is associated with
1445
+ */
1446
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1447
+ /**
1448
+ * Consumption
1449
+ */
1450
+ value: number;
1451
+ /**
1452
+ * Price per unit
975
1453
  */
976
1454
  price: number;
977
1455
  /**
@@ -1000,14 +1478,6 @@ export type UserCreateInput = {
1000
1478
  * User password. Must be at least 8 characters long.
1001
1479
  */
1002
1480
  password: string;
1003
- /**
1004
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1005
- */
1006
- status?: 'active' | 'inactive';
1007
- /**
1008
- * User role. Can be 'Administrator', 'User'.
1009
- */
1010
- role?: 'Administrator' | 'User';
1011
1481
  };
1012
1482
  export type User = {
1013
1483
  /**
@@ -1061,575 +1531,679 @@ export type UserUpdateInput = {
1061
1531
  */
1062
1532
  status?: 'active' | 'inactive';
1063
1533
  };
1064
- export type GetUsageData = {
1534
+ export type ListUserOrganizationsData = {
1065
1535
  body?: never;
1066
- path?: never;
1067
- query?: {
1536
+ path: {
1068
1537
  /**
1069
- * 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)
1538
+ * User email address.
1070
1539
  */
1071
- granularity?: 'hourly' | 'daily' | 'monthly';
1540
+ email: string;
1072
1541
  };
1073
- url: '/billing/usage';
1074
- };
1075
- export type GetUsageErrors = {
1076
- /**
1077
- * Not authenticated
1078
- */
1079
- 401: unknown;
1542
+ query?: never;
1543
+ url: '/users/organizations/{email}';
1080
1544
  };
1081
- export type GetUsageResponses = {
1545
+ export type ListUserOrganizationsResponses = {
1082
1546
  /**
1083
- * Usage data with facets for filtering
1547
+ * An array of organizations the user belongs to.
1084
1548
  */
1085
- 200: UsageResponse;
1549
+ 200: Array<{
1550
+ /**
1551
+ * Unique identifier of the organization. UUID v4 string in canonical form
1552
+ */
1553
+ realm?: string;
1554
+ /**
1555
+ * Human-readable name of the organization
1556
+ */
1557
+ displayName?: string;
1558
+ }>;
1086
1559
  };
1087
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
1088
- export type GetPaymentMethodData = {
1560
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1561
+ export type ListUsersData = {
1089
1562
  body?: never;
1090
1563
  path?: never;
1091
1564
  query?: never;
1092
- url: '/billing/payment-method';
1565
+ url: '/users';
1093
1566
  };
1094
- export type GetPaymentMethodErrors = {
1567
+ export type ListUsersErrors = {
1095
1568
  /**
1096
- * Returns 404 Not Found if the organization does not have a payment method set up.
1569
+ * Not authenticated
1097
1570
  */
1098
- 404: unknown;
1571
+ 401: unknown;
1099
1572
  };
1100
- export type GetPaymentMethodResponses = {
1573
+ export type ListUsersResponses = {
1101
1574
  /**
1102
- * Redacted payment card information.
1575
+ * An array of users
1103
1576
  */
1104
- 200: PaymentMethod;
1577
+ 200: Array<User>;
1105
1578
  };
1106
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1107
- export type GetPaymentMethodSecretData = {
1108
- body?: never;
1579
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1580
+ export type CreateUserData = {
1581
+ body: UserCreateInput;
1109
1582
  path?: never;
1110
1583
  query?: never;
1111
- url: '/billing/payment-method';
1584
+ url: '/users';
1112
1585
  };
1113
- export type GetPaymentMethodSecretResponses = {
1586
+ export type CreateUserResponses = {
1114
1587
  /**
1115
- * 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.
1116
- *
1588
+ * Successfully created. Returns created user details.
1117
1589
  */
1118
- 200: {
1590
+ 200: User;
1591
+ };
1592
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1593
+ export type DeleteUserData = {
1594
+ body?: never;
1595
+ path: {
1119
1596
  /**
1120
- * The client secret.
1597
+ * Unique user identifier. UUID v4 string in canonical form
1121
1598
  */
1122
- id?: string;
1599
+ user_id: string;
1123
1600
  };
1124
- };
1125
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1126
- export type ListInvoicesData = {
1127
- body?: never;
1128
- path?: never;
1129
1601
  query?: never;
1130
- url: '/billing/invoices';
1602
+ url: '/users/{user_id}';
1131
1603
  };
1132
- export type ListInvoicesErrors = {
1604
+ export type DeleteUserErrors = {
1605
+ /**
1606
+ * Deleting own user is not allowed. Delete your organization instead.
1607
+ */
1608
+ 400: unknown;
1133
1609
  /**
1134
1610
  * Not authenticated
1135
1611
  */
1136
1612
  401: unknown;
1137
1613
  };
1138
- export type ListInvoicesResponses = {
1614
+ export type DeleteUserResponses = {
1139
1615
  /**
1140
- * An array of usage records.
1616
+ * User profile information
1141
1617
  */
1142
- 200: Array<Invoice>;
1618
+ 200: User;
1143
1619
  };
1144
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1145
- export type GetContactData = {
1620
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1621
+ export type GetUserData = {
1146
1622
  body?: never;
1147
- path?: never;
1623
+ path: {
1624
+ /**
1625
+ * Unique user identifier. UUID v4 string in canonical form
1626
+ */
1627
+ user_id: string;
1628
+ };
1148
1629
  query?: never;
1149
- url: '/billing/contact';
1630
+ url: '/users/{user_id}';
1150
1631
  };
1151
- export type GetContactResponses = {
1632
+ export type GetUserErrors = {
1152
1633
  /**
1153
- * Returns a single object containing organization contact and billing address details.
1634
+ * Not authenticated
1154
1635
  */
1155
- 200: BillingContact;
1636
+ 401: unknown;
1156
1637
  };
1157
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
1158
- export type UpdateContactData = {
1159
- body: BillingContact;
1160
- path?: never;
1638
+ export type GetUserResponses = {
1639
+ /**
1640
+ * User profile information
1641
+ */
1642
+ 200: User;
1643
+ };
1644
+ export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1645
+ export type UpdateUserData = {
1646
+ body: UserUpdateInput;
1647
+ path: {
1648
+ /**
1649
+ * Unique user identifier. UUID v4 string in canonical form
1650
+ */
1651
+ user_id: string;
1652
+ };
1161
1653
  query?: never;
1162
- url: '/billing/contact';
1654
+ url: '/users/{user_id}';
1163
1655
  };
1164
- export type UpdateContactResponses = {
1656
+ export type UpdateUserResponses = {
1165
1657
  /**
1166
- * Successfully updated. Returns updated organization details.
1658
+ * Successfully created. Returns created user details.
1167
1659
  */
1168
- 200: BillingContact;
1660
+ 200: User;
1169
1661
  };
1170
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
1171
- export type GetCreditsData = {
1662
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1663
+ export type ListTokensData = {
1172
1664
  body?: never;
1173
1665
  path?: never;
1174
1666
  query?: never;
1175
- url: '/billing/credits';
1667
+ url: '/tokens';
1176
1668
  };
1177
- export type GetCreditsErrors = {
1669
+ export type ListTokensErrors = {
1178
1670
  /**
1179
1671
  * Not authenticated
1180
1672
  */
1181
1673
  401: unknown;
1182
1674
  };
1183
- export type GetCreditsResponses = {
1675
+ export type ListTokensResponses = {
1184
1676
  /**
1185
- * An array of the applied promotional credits records.
1677
+ * Returns a list of access token details with masked secrets.
1186
1678
  */
1187
- 200: Array<BillingCredits>;
1679
+ 200: Array<Token>;
1188
1680
  };
1189
- export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
1190
- export type RedeemCreditsData = {
1191
- body: {
1192
- /**
1193
- * Promotional code to redeem
1194
- */
1195
- code?: string;
1196
- };
1681
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1682
+ export type CreateTokenData = {
1683
+ body: TokenCreateInput;
1197
1684
  path?: never;
1198
1685
  query?: never;
1199
- url: '/billing/credits';
1686
+ url: '/tokens';
1200
1687
  };
1201
- export type RedeemCreditsErrors = {
1688
+ export type CreateTokenErrors = {
1202
1689
  /**
1203
1690
  * Not authenticated
1204
1691
  */
1205
1692
  401: unknown;
1206
1693
  };
1207
- export type RedeemCreditsResponses = {
1694
+ export type CreateTokenResponses = {
1208
1695
  /**
1209
- * Successfully created a new organization.
1696
+ * Successfully created. Returns created token details with unmasked/raw secret.
1697
+ */
1698
+ 200: Token;
1699
+ };
1700
+ export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1701
+ export type DeleteTokenData = {
1702
+ body?: never;
1703
+ path: {
1704
+ /**
1705
+ * Generated unique identifier of the access token.
1706
+ */
1707
+ token_id: string;
1708
+ };
1709
+ query?: never;
1710
+ url: '/tokens/{token_id}';
1711
+ };
1712
+ export type DeleteTokenResponses = {
1713
+ /**
1714
+ * Successfully deleted.
1210
1715
  */
1211
1716
  200: unknown;
1212
1717
  };
1213
- export type ListChartsData = {
1718
+ export type GetTokenData = {
1214
1719
  body?: never;
1215
1720
  path: {
1216
1721
  /**
1217
- * Unique identifier of the cluster. UUID v4 string in canonical form
1722
+ * Generated unique identifier of the access token.
1218
1723
  */
1219
- cluster_id: string;
1724
+ token_id: string;
1220
1725
  };
1221
1726
  query?: never;
1222
- url: '/clusters/{cluster_id}/charts';
1727
+ url: '/tokens/{token_id}';
1223
1728
  };
1224
- export type ListChartsErrors = {
1729
+ export type GetTokenErrors = {
1225
1730
  /**
1226
1731
  * Not authenticated
1227
1732
  */
1228
1733
  401: unknown;
1229
1734
  };
1230
- export type ListChartsResponses = {
1735
+ export type GetTokenResponses = {
1231
1736
  /**
1232
- * An array of charts
1737
+ * Returns access token details with masked secret.
1233
1738
  */
1234
- 200: Array<Chart>;
1739
+ 200: Token;
1235
1740
  };
1236
- export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
1237
- export type CreateChartData = {
1238
- body: ChartCreateInput;
1741
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1742
+ export type UpdateTokenData = {
1743
+ body: TokenUpdateInput;
1239
1744
  path: {
1240
1745
  /**
1241
- * Unique identifier of the cluster. UUID v4 string in canonical form
1746
+ * Generated unique identifier of the access token.
1242
1747
  */
1243
- cluster_id: string;
1748
+ token_id: string;
1244
1749
  };
1245
1750
  query?: never;
1246
- url: '/clusters/{cluster_id}/charts';
1751
+ url: '/tokens/{token_id}';
1247
1752
  };
1248
- export type CreateChartResponses = {
1753
+ export type UpdateTokenErrors = {
1249
1754
  /**
1250
- * Successfully created. Returns created Chart ID.
1755
+ * Not authenticated
1251
1756
  */
1252
- 200: string;
1757
+ 401: unknown;
1253
1758
  };
1254
- export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
1255
- export type DeleteChartData = {
1759
+ export type UpdateTokenResponses = {
1760
+ /**
1761
+ * Successfully updated. Returns updated token details with masked secret.
1762
+ */
1763
+ 200: Token;
1764
+ };
1765
+ export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1766
+ export type RegenerateTokenData = {
1256
1767
  body?: never;
1257
1768
  path: {
1258
1769
  /**
1259
- * Unique identifier of the cluster. UUID v4 string in canonical form
1260
- */
1261
- cluster_id: string;
1262
- /**
1263
- * Chart deployment name as the unique identifier of the chart.
1770
+ * Generated unique identifier of the access token.
1264
1771
  */
1265
- chart_name: string;
1772
+ token_id: string;
1266
1773
  };
1267
1774
  query?: never;
1268
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1775
+ url: '/tokens/{token_id}/secret';
1269
1776
  };
1270
- export type DeleteChartResponses = {
1777
+ export type RegenerateTokenErrors = {
1271
1778
  /**
1272
- * Successfully deleted.
1779
+ * Not authenticated
1273
1780
  */
1274
- 200: string;
1781
+ 401: unknown;
1275
1782
  };
1276
- export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
1277
- export type GetChartData = {
1783
+ export type RegenerateTokenResponses = {
1784
+ /**
1785
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1786
+ */
1787
+ 200: Token;
1788
+ };
1789
+ export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1790
+ export type ListTicketsData = {
1278
1791
  body?: never;
1279
- path: {
1280
- /**
1281
- * Unique identifier of the cluster. UUID v4 string in canonical form
1282
- */
1283
- cluster_id: string;
1284
- /**
1285
- * Chart deployment name as the unique identifier of the chart.
1286
- */
1287
- chart_name: string;
1288
- };
1792
+ path?: never;
1289
1793
  query?: never;
1290
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1794
+ url: '/tickets';
1291
1795
  };
1292
- export type GetChartResponses = {
1796
+ export type ListTicketsResponses = {
1293
1797
  /**
1294
- * Returns a single object containing chart details.
1798
+ * An array of tickets for the organization, newest first.
1295
1799
  */
1296
- 200: Chart;
1800
+ 200: Array<Ticket>;
1297
1801
  };
1298
- export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
1299
- export type UpdateChartData = {
1300
- body: ChartUpdateInput;
1301
- path: {
1302
- /**
1303
- * Unique identifier of the cluster. UUID v4 string in canonical form
1304
- */
1305
- cluster_id: string;
1802
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1803
+ export type CreateTicketData = {
1804
+ body: {
1306
1805
  /**
1307
- * Chart deployment name as the unique identifier of the chart.
1806
+ * JSON-encoded TicketCreateInput.
1308
1807
  */
1309
- chart_name: string;
1808
+ payload?: string;
1809
+ attachments?: Array<Blob | File>;
1310
1810
  };
1811
+ path?: never;
1311
1812
  query?: never;
1312
- url: '/clusters/{cluster_id}/charts/{chart_name}';
1813
+ url: '/tickets';
1313
1814
  };
1314
- export type UpdateChartResponses = {
1815
+ export type CreateTicketResponses = {
1315
1816
  /**
1316
- * Successfully updated.
1817
+ * Ticket created.
1317
1818
  */
1318
- 200: string;
1819
+ 200: Ticket;
1319
1820
  };
1320
- export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
1321
- export type ListFleetsData = {
1821
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
1822
+ export type CloseTicketData = {
1322
1823
  body?: never;
1323
1824
  path: {
1324
- /**
1325
- * Unique identifier of the cluster. UUID v4 string in canonical form
1326
- */
1327
- cluster_id: string;
1825
+ ticket_id: string;
1328
1826
  };
1329
1827
  query?: never;
1330
- url: '/clusters/{cluster_id}/fleets';
1828
+ url: '/tickets/{ticket_id}';
1331
1829
  };
1332
- export type ListFleetsErrors = {
1830
+ export type CloseTicketResponses = {
1333
1831
  /**
1334
- * Not authenticated
1832
+ * Ticket closed.
1335
1833
  */
1336
- 401: unknown;
1834
+ 200: Ticket;
1337
1835
  };
1338
- export type ListFleetsResponses = {
1836
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
1837
+ export type GetTicketData = {
1838
+ body?: never;
1839
+ path: {
1840
+ ticket_id: string;
1841
+ };
1842
+ query?: never;
1843
+ url: '/tickets/{ticket_id}';
1844
+ };
1845
+ export type GetTicketResponses = {
1339
1846
  /**
1340
- * An array of fleets
1847
+ * Ticket with messages (internal notes excluded).
1341
1848
  */
1342
- 200: Array<Fleet>;
1849
+ 200: Ticket;
1343
1850
  };
1344
- export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
1345
- export type CreateFleetData = {
1346
- body: FleetCreateInput;
1347
- path: {
1851
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
1852
+ export type ReplyTicketData = {
1853
+ body: {
1348
1854
  /**
1349
- * Unique identifier of the cluster. UUID v4 string in canonical form
1855
+ * JSON-encoded TicketMessageInput.
1350
1856
  */
1351
- cluster_id: string;
1857
+ payload?: string;
1858
+ attachments?: Array<Blob | File>;
1859
+ };
1860
+ path: {
1861
+ ticket_id: string;
1352
1862
  };
1353
1863
  query?: never;
1354
- url: '/clusters/{cluster_id}/fleets';
1864
+ url: '/tickets/{ticket_id}/messages';
1355
1865
  };
1356
- export type CreateFleetErrors = {
1866
+ export type ReplyTicketErrors = {
1357
1867
  /**
1358
- * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1868
+ * Ticket is closed. Open a new ticket instead.
1359
1869
  */
1360
- 402: string;
1870
+ 409: unknown;
1361
1871
  };
1362
- export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1363
- export type CreateFleetResponses = {
1872
+ export type ReplyTicketResponses = {
1364
1873
  /**
1365
- * Successfully created. Returns created Fleet ID.
1874
+ * Reply appended.
1366
1875
  */
1367
- 200: string;
1876
+ 200: TicketMessage;
1368
1877
  };
1369
- export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
1370
- export type DeleteFleetData = {
1878
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
1879
+ export type GetTicketAttachmentData = {
1371
1880
  body?: never;
1372
1881
  path: {
1373
- /**
1374
- * Unique identifier of the cluster. UUID v4 string in canonical form
1375
- */
1376
- cluster_id: string;
1377
- /**
1378
- * Unique identifier of the fleet. UUID v4 string in canonical form
1379
- */
1380
- fleet_name: string;
1882
+ ticket_id: string;
1883
+ attachment_id: string;
1381
1884
  };
1382
1885
  query?: never;
1383
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1886
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
1384
1887
  };
1385
- export type DeleteFleetResponses = {
1888
+ export type GetTicketAttachmentResponses = {
1386
1889
  /**
1387
- * Successfully deleted.
1890
+ * Attachment binary stream.
1388
1891
  */
1389
- 200: string;
1892
+ 200: Blob | File;
1390
1893
  };
1391
- export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
1392
- export type GetFleetData = {
1894
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
1895
+ export type ListRepositoriesData = {
1393
1896
  body?: never;
1394
- path: {
1395
- /**
1396
- * Unique identifier of the cluster. UUID v4 string in canonical form
1397
- */
1398
- cluster_id: string;
1399
- /**
1400
- * Unique identifier of the fleet. UUID v4 string in canonical form
1401
- */
1402
- fleet_name: string;
1403
- };
1897
+ path?: never;
1404
1898
  query?: never;
1405
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1899
+ url: '/registry';
1406
1900
  };
1407
- export type GetFleetResponses = {
1901
+ export type ListRepositoriesErrors = {
1408
1902
  /**
1409
- * Returns a single object containing fleet details.
1903
+ * Not authenticated
1410
1904
  */
1411
- 200: Fleet;
1412
- };
1413
- export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
1414
- export type UpdateFleetData = {
1415
- body: FleetUpdateInput;
1905
+ 401: unknown;
1906
+ /**
1907
+ * Internal server error
1908
+ */
1909
+ 500: unknown;
1910
+ };
1911
+ export type ListRepositoriesResponses = {
1912
+ /**
1913
+ * List of repositories
1914
+ */
1915
+ 200: Array<RegistryRepository>;
1916
+ };
1917
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
1918
+ export type ListTagsData = {
1919
+ body?: never;
1416
1920
  path: {
1417
1921
  /**
1418
- * Unique identifier of the cluster. UUID v4 string in canonical form
1922
+ * Region where the repository is located
1419
1923
  */
1420
- cluster_id: string;
1924
+ region: string;
1421
1925
  /**
1422
- * Unique identifier of the fleet. UUID v4 string in canonical form
1926
+ * Name of the repository
1423
1927
  */
1424
- fleet_name: string;
1928
+ repository: string;
1425
1929
  };
1426
1930
  query?: never;
1427
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1931
+ url: '/registry/{region}/{repository}';
1428
1932
  };
1429
- export type UpdateFleetErrors = {
1933
+ export type ListTagsErrors = {
1430
1934
  /**
1431
- * Organization must have a valid payment method configured to access this endpoint.
1935
+ * Not authenticated
1432
1936
  */
1433
- 402: string;
1937
+ 401: unknown;
1938
+ /**
1939
+ * Repository not found
1940
+ */
1941
+ 404: unknown;
1942
+ /**
1943
+ * Internal server error
1944
+ */
1945
+ 500: unknown;
1434
1946
  };
1435
- export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1436
- export type UpdateFleetResponses = {
1947
+ export type ListTagsResponses = {
1437
1948
  /**
1438
- * Successfully updated.
1949
+ * Repository with tags
1439
1950
  */
1440
- 200: string;
1951
+ 200: RegistryRepositoryWithTags;
1441
1952
  };
1442
- export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1443
- export type QueryClusterData = {
1953
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
1954
+ export type DeleteTagData = {
1444
1955
  body?: never;
1445
1956
  path: {
1446
1957
  /**
1447
- * Unique identifier of the cluster. UUID v4 string in canonical form
1958
+ * Region where the repository is located
1448
1959
  */
1449
- cluster_id: string;
1960
+ region: string;
1961
+ /**
1962
+ * Name of the repository
1963
+ */
1964
+ repository: string;
1965
+ /**
1966
+ * Name of the tag
1967
+ */
1968
+ tag: string;
1450
1969
  };
1451
1970
  query?: never;
1452
- url: '/clusters/{cluster_id}/query';
1971
+ url: '/registry/{region}/{repository}/{tag}';
1453
1972
  };
1454
- export type QueryClusterErrors = {
1973
+ export type DeleteTagErrors = {
1455
1974
  /**
1456
1975
  * Not authenticated
1457
1976
  */
1458
1977
  401: unknown;
1978
+ /**
1979
+ * Tag not found
1980
+ */
1981
+ 404: unknown;
1982
+ /**
1983
+ * Internal server error
1984
+ */
1985
+ 500: unknown;
1459
1986
  };
1460
- export type QueryClusterResponses = {
1987
+ export type DeleteTagResponses = {
1461
1988
  /**
1462
- * Kubernetes API response
1989
+ * Tag successfully deleted
1463
1990
  */
1464
1991
  200: unknown;
1465
1992
  };
1466
- export type ListClustersData = {
1993
+ export type GetTagData = {
1467
1994
  body?: never;
1468
- path?: never;
1995
+ path: {
1996
+ /**
1997
+ * Region where the repository is located
1998
+ */
1999
+ region: string;
2000
+ /**
2001
+ * Name of the repository
2002
+ */
2003
+ repository: string;
2004
+ /**
2005
+ * Name of the tag
2006
+ */
2007
+ tag: string;
2008
+ };
1469
2009
  query?: never;
1470
- url: '/clusters';
2010
+ url: '/registry/{region}/{repository}/{tag}';
1471
2011
  };
1472
- export type ListClustersErrors = {
2012
+ export type GetTagErrors = {
1473
2013
  /**
1474
2014
  * Not authenticated
1475
2015
  */
1476
2016
  401: unknown;
1477
- };
1478
- export type ListClustersResponses = {
1479
2017
  /**
1480
- * An array of clusters
2018
+ * Tag not found
1481
2019
  */
1482
- 200: Array<Cluster>;
1483
- };
1484
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1485
- export type CreateClusterData = {
1486
- body: ClusterCreateInput;
1487
- path?: never;
1488
- query?: never;
1489
- url: '/clusters';
1490
- };
1491
- export type CreateClusterErrors = {
2020
+ 404: unknown;
1492
2021
  /**
1493
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2022
+ * Internal server error
1494
2023
  */
1495
- 402: string;
2024
+ 500: unknown;
1496
2025
  };
1497
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1498
- export type CreateClusterResponses = {
2026
+ export type GetTagResponses = {
1499
2027
  /**
1500
- * Successfully created. Returns created Cluster ID.
2028
+ * Tag details
1501
2029
  */
1502
- 200: string;
2030
+ 200: RegistryTag;
1503
2031
  };
1504
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1505
- export type DeleteClusterData = {
2032
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2033
+ export type GetOrganizationData = {
1506
2034
  body?: never;
1507
- path: {
1508
- /**
1509
- * Unique identifier of the cluster. UUID v4 string in canonical form
1510
- */
1511
- cluster_id: string;
1512
- };
2035
+ path?: never;
1513
2036
  query?: never;
1514
- url: '/clusters/{cluster_id}';
2037
+ url: '/organization';
1515
2038
  };
1516
- export type DeleteClusterResponses = {
2039
+ export type GetOrganizationResponses = {
1517
2040
  /**
1518
- * Successfully deleted.
2041
+ * Returns a single object containing organization details.
1519
2042
  */
1520
- 200: string;
2043
+ 200: Organization;
1521
2044
  };
1522
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1523
- export type GetClusterData = {
1524
- body?: never;
1525
- path: {
1526
- /**
1527
- * Unique identifier of the cluster. UUID v4 string in canonical form
1528
- */
1529
- cluster_id: string;
1530
- };
2045
+ export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2046
+ export type CreateOrganizationData = {
2047
+ body: OrganizationCreateInput;
2048
+ path?: never;
1531
2049
  query?: never;
1532
- url: '/clusters/{cluster_id}';
2050
+ url: '/organization';
1533
2051
  };
1534
- export type GetClusterResponses = {
2052
+ export type CreateOrganizationResponses = {
1535
2053
  /**
1536
- * Returns a single object containing cluster details.
2054
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2055
+ *
1537
2056
  */
1538
- 200: Cluster;
2057
+ 200: OrganizationCreateOutput;
1539
2058
  };
1540
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1541
- export type UpdateClusterData = {
1542
- body: ClusterUpdateInput;
1543
- path: {
1544
- /**
1545
- * Unique identifier of the cluster. UUID v4 string in canonical form
1546
- */
1547
- cluster_id: string;
1548
- };
2059
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2060
+ export type GetBasicPriceConsentData = {
2061
+ body?: never;
2062
+ path?: never;
1549
2063
  query?: never;
1550
- url: '/clusters/{cluster_id}';
2064
+ url: '/organization/basic-price-consent';
1551
2065
  };
1552
- export type UpdateClusterResponses = {
2066
+ export type GetBasicPriceConsentResponses = {
1553
2067
  /**
1554
- * Successfully updated. Returns updated cluster details.
2068
+ * Returns the current consent status.
1555
2069
  */
1556
- 200: Cluster;
2070
+ 200: BasicPriceConsent;
1557
2071
  };
1558
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1559
- export type GetClusterCaData = {
1560
- body?: never;
1561
- path: {
1562
- /**
1563
- * Unique identifier of the cluster. UUID v4 string in canonical form
1564
- */
1565
- cluster_id: string;
1566
- };
2072
+ export type GetBasicPriceConsentResponse = GetBasicPriceConsentResponses[keyof GetBasicPriceConsentResponses];
2073
+ export type SetBasicPriceConsentData = {
2074
+ body: BasicPriceConsentInput;
2075
+ path?: never;
1567
2076
  query?: never;
1568
- url: '/clusters/{cluster_id}/ca';
2077
+ url: '/organization/basic-price-consent';
1569
2078
  };
1570
- export type GetClusterCaErrors = {
2079
+ export type SetBasicPriceConsentErrors = {
1571
2080
  /**
1572
- * Cluster not found, or its certificate authority is not available yet.
2081
+ * The authenticated principal has no email address (e.g. a service account) and cannot record this decision.
2082
+ *
1573
2083
  */
1574
- 404: unknown;
2084
+ 401: unknown;
2085
+ /**
2086
+ * The consent flow does not apply to this organization.
2087
+ */
2088
+ 409: unknown;
1575
2089
  };
1576
- export type GetClusterCaResponses = {
2090
+ export type SetBasicPriceConsentResponses = {
1577
2091
  /**
1578
- * PEM-encoded certificate authority of the cluster.
2092
+ * Decision recorded. Returns the updated consent status.
1579
2093
  */
1580
- 200: string;
2094
+ 200: BasicPriceConsent;
1581
2095
  };
1582
- export type GetClusterCaResponse = GetClusterCaResponses[keyof GetClusterCaResponses];
1583
- export type GetJoinInformationData = {
1584
- body?: never;
1585
- path: {
2096
+ export type SetBasicPriceConsentResponse = SetBasicPriceConsentResponses[keyof SetBasicPriceConsentResponses];
2097
+ export type PostMcpData = {
2098
+ /**
2099
+ * JSON-RPC 2.0 request payload
2100
+ */
2101
+ body: {
2102
+ jsonrpc?: string;
2103
+ method?: string;
2104
+ id?: string | number;
1586
2105
  /**
1587
- * Unique identifier of the cluster. UUID v4 string in canonical form
2106
+ * Method-specific parameters
1588
2107
  */
1589
- cluster_id: string;
2108
+ params?: {
2109
+ [key: string]: unknown;
2110
+ };
1590
2111
  };
2112
+ path?: never;
1591
2113
  query?: never;
1592
- url: '/clusters/{cluster_id}/join_information';
2114
+ url: '/mcp';
1593
2115
  };
1594
- export type GetJoinInformationErrors = {
2116
+ export type PostMcpErrors = {
1595
2117
  /**
1596
2118
  * Not authenticated
1597
2119
  */
1598
2120
  401: unknown;
1599
2121
  };
1600
- export type GetJoinInformationResponses = {
2122
+ export type PostMcpResponses = {
1601
2123
  /**
1602
- * An object of cluster join information
2124
+ * JSON-RPC 2.0 success or error response
1603
2125
  */
1604
- 200: ClusterJoinInformation;
2126
+ 200: {
2127
+ jsonrpc?: string;
2128
+ id?: string | number;
2129
+ result?: {
2130
+ [key: string]: unknown;
2131
+ };
2132
+ error?: {
2133
+ code?: number;
2134
+ message?: string;
2135
+ };
2136
+ };
1605
2137
  };
1606
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1607
- export type ListInvitesData = {
2138
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2139
+ export type ListMarketplaceChartsData = {
1608
2140
  body?: never;
1609
2141
  path?: never;
1610
2142
  query?: never;
1611
- url: '/invites';
2143
+ url: '/marketplace';
1612
2144
  };
1613
- export type ListInvitesErrors = {
2145
+ export type ListMarketplaceChartsErrors = {
1614
2146
  /**
1615
2147
  * Not authenticated
1616
2148
  */
1617
2149
  401: unknown;
1618
2150
  };
1619
- export type ListInvitesResponses = {
2151
+ export type ListMarketplaceChartsResponses = {
1620
2152
  /**
1621
- * An array of invites
2153
+ * An array of chart listings in the marketplace.
1622
2154
  */
1623
- 200: Array<Invite>;
2155
+ 200: Array<MarketplaceListing>;
1624
2156
  };
1625
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1626
- export type CreateInviteData = {
1627
- body: {
2157
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2158
+ export type GetMarketplaceChartFilesData = {
2159
+ body?: never;
2160
+ path: {
1628
2161
  /**
1629
- * User email address
2162
+ * Name of the chart in the marketplace.
1630
2163
  */
1631
- email?: string;
2164
+ chart_name: string;
2165
+ /**
2166
+ * 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).
2167
+ */
2168
+ version_channel: string;
1632
2169
  };
2170
+ query?: never;
2171
+ url: '/marketplace/{chart_name}/files/{version_channel}';
2172
+ };
2173
+ export type GetMarketplaceChartFilesErrors = {
2174
+ /**
2175
+ * Chart not found or no version matches the channel
2176
+ */
2177
+ 404: unknown;
2178
+ };
2179
+ export type GetMarketplaceChartFilesResponses = {
2180
+ /**
2181
+ * Returns an object containing the chart files for the latest matching version.
2182
+ */
2183
+ 200: MarketplaceListingFiles;
2184
+ };
2185
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2186
+ export type ListInvitesData = {
2187
+ body?: never;
2188
+ path?: never;
2189
+ query?: never;
2190
+ url: '/invites';
2191
+ };
2192
+ export type ListInvitesErrors = {
2193
+ /**
2194
+ * Not authenticated
2195
+ */
2196
+ 401: unknown;
2197
+ };
2198
+ export type ListInvitesResponses = {
2199
+ /**
2200
+ * An array of invites
2201
+ */
2202
+ 200: Array<Invite>;
2203
+ };
2204
+ export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
2205
+ export type CreateInviteData = {
2206
+ body: InviteCreateInput;
1633
2207
  path?: never;
1634
2208
  query?: never;
1635
2209
  url: '/invites';
@@ -1654,9 +2228,18 @@ export type GetInviteData = {
1654
2228
  };
1655
2229
  export type GetInviteResponses = {
1656
2230
  /**
1657
- * Returns a single object containing invite details.
2231
+ * The invitation code is valid. Returns the invited email and organization.
1658
2232
  */
1659
- 200: Invite;
2233
+ 200: {
2234
+ /**
2235
+ * Email address the invite was issued to.
2236
+ */
2237
+ email?: string;
2238
+ /**
2239
+ * Identifier of the organization the invite grants access to.
2240
+ */
2241
+ organization_id?: string;
2242
+ };
1660
2243
  };
1661
2244
  export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1662
2245
  export type DeleteInviteData = {
@@ -1676,512 +2259,654 @@ export type DeleteInviteResponses = {
1676
2259
  */
1677
2260
  200: unknown;
1678
2261
  };
1679
- export type ListMarketplaceChartsData = {
2262
+ export type QueryClusterData = {
1680
2263
  body?: never;
1681
- path?: never;
2264
+ path: {
2265
+ /**
2266
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2267
+ */
2268
+ cluster_id: string;
2269
+ };
1682
2270
  query?: never;
1683
- url: '/marketplace';
2271
+ url: '/clusters/{cluster_id}/query';
1684
2272
  };
1685
- export type ListMarketplaceChartsErrors = {
2273
+ export type QueryClusterErrors = {
1686
2274
  /**
1687
2275
  * Not authenticated
1688
2276
  */
1689
2277
  401: unknown;
1690
2278
  };
1691
- export type ListMarketplaceChartsResponses = {
2279
+ export type QueryClusterResponses = {
1692
2280
  /**
1693
- * An array of chart listings in the marketplace.
2281
+ * Kubernetes API response
1694
2282
  */
1695
- 200: Array<MarketplaceListing>;
2283
+ 200: unknown;
1696
2284
  };
1697
- export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
1698
- export type GetMarketplaceChartFilesData = {
2285
+ export type ListFleetsData = {
1699
2286
  body?: never;
1700
2287
  path: {
1701
2288
  /**
1702
- * Name of the chart in the marketplace.
2289
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1703
2290
  */
1704
- chart_name: string;
2291
+ cluster_id: string;
2292
+ };
2293
+ query?: never;
2294
+ url: '/clusters/{cluster_id}/fleets';
2295
+ };
2296
+ export type ListFleetsErrors = {
2297
+ /**
2298
+ * Not authenticated
2299
+ */
2300
+ 401: unknown;
2301
+ };
2302
+ export type ListFleetsResponses = {
2303
+ /**
2304
+ * An array of fleets
2305
+ */
2306
+ 200: Array<Fleet>;
2307
+ };
2308
+ export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
2309
+ export type CreateFleetData = {
2310
+ body: FleetCreateInput;
2311
+ path: {
1705
2312
  /**
1706
- * 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).
2313
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1707
2314
  */
1708
- version_channel: string;
2315
+ cluster_id: string;
1709
2316
  };
1710
2317
  query?: never;
1711
- url: '/marketplace/{chart_name}/files/{version_channel}';
2318
+ url: '/clusters/{cluster_id}/fleets';
1712
2319
  };
1713
- export type GetMarketplaceChartFilesErrors = {
2320
+ export type CreateFleetErrors = {
1714
2321
  /**
1715
- * Chart not found or no version matches the channel
2322
+ * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1716
2323
  */
1717
- 404: unknown;
1718
- };
1719
- export type GetMarketplaceChartFilesResponses = {
2324
+ 402: string;
1720
2325
  /**
1721
- * Returns an object containing the chart files for the latest matching version.
2326
+ * 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.
1722
2327
  */
1723
- 200: MarketplaceListingFiles;
2328
+ 409: string;
1724
2329
  };
1725
- export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
1726
- export type PostMcpData = {
2330
+ export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
2331
+ export type CreateFleetResponses = {
1727
2332
  /**
1728
- * JSON-RPC 2.0 request payload
2333
+ * Successfully created. Returns created Fleet ID.
1729
2334
  */
1730
- body: {
1731
- jsonrpc?: string;
1732
- method?: string;
1733
- id?: string | number;
2335
+ 200: string;
2336
+ };
2337
+ export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
2338
+ export type DeleteFleetData = {
2339
+ body?: never;
2340
+ path: {
1734
2341
  /**
1735
- * Method-specific parameters
2342
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1736
2343
  */
1737
- params?: {
1738
- [key: string]: unknown;
1739
- };
2344
+ cluster_id: string;
2345
+ /**
2346
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2347
+ */
2348
+ fleet_name: string;
1740
2349
  };
1741
- path?: never;
1742
2350
  query?: never;
1743
- url: '/mcp';
2351
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1744
2352
  };
1745
- export type PostMcpErrors = {
2353
+ export type DeleteFleetErrors = {
1746
2354
  /**
1747
- * Not authenticated
2355
+ * 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.
1748
2356
  */
1749
- 401: unknown;
2357
+ 409: string;
1750
2358
  };
1751
- export type PostMcpResponses = {
2359
+ export type DeleteFleetError = DeleteFleetErrors[keyof DeleteFleetErrors];
2360
+ export type DeleteFleetResponses = {
1752
2361
  /**
1753
- * JSON-RPC 2.0 success or error response
2362
+ * Successfully deleted.
1754
2363
  */
1755
- 200: {
1756
- jsonrpc?: string;
1757
- id?: string | number;
1758
- result?: {
1759
- [key: string]: unknown;
1760
- };
1761
- error?: {
1762
- code?: number;
1763
- message?: string;
1764
- };
1765
- };
2364
+ 200: string;
1766
2365
  };
1767
- export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
1768
- export type GetOrganizationData = {
2366
+ export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
2367
+ export type GetFleetData = {
1769
2368
  body?: never;
1770
- path?: never;
2369
+ path: {
2370
+ /**
2371
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2372
+ */
2373
+ cluster_id: string;
2374
+ /**
2375
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2376
+ */
2377
+ fleet_name: string;
2378
+ };
1771
2379
  query?: never;
1772
- url: '/organization';
2380
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1773
2381
  };
1774
- export type GetOrganizationResponses = {
2382
+ export type GetFleetResponses = {
1775
2383
  /**
1776
- * Returns a single object containing organization details.
2384
+ * Returns a single object containing fleet details.
1777
2385
  */
1778
- 200: Organization;
2386
+ 200: Fleet;
1779
2387
  };
1780
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
1781
- export type CreateOrganizationData = {
1782
- body: OrganizationCreateInput;
1783
- path?: never;
2388
+ export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
2389
+ export type UpdateFleetData = {
2390
+ body: FleetUpdateInput;
2391
+ path: {
2392
+ /**
2393
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2394
+ */
2395
+ cluster_id: string;
2396
+ /**
2397
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2398
+ */
2399
+ fleet_name: string;
2400
+ };
1784
2401
  query?: never;
1785
- url: '/organization';
2402
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1786
2403
  };
1787
- export type CreateOrganizationResponses = {
2404
+ export type UpdateFleetErrors = {
1788
2405
  /**
1789
- * Successfully created a new organization.
2406
+ * Organization must have a valid payment method configured to access this endpoint.
1790
2407
  */
1791
- 200: unknown;
2408
+ 402: string;
2409
+ /**
2410
+ * 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.
2411
+ */
2412
+ 409: string;
1792
2413
  };
1793
- export type ListRepositoriesData = {
2414
+ export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
2415
+ export type UpdateFleetResponses = {
2416
+ /**
2417
+ * Successfully updated.
2418
+ */
2419
+ 200: string;
2420
+ };
2421
+ export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
2422
+ export type ListChartsData = {
1794
2423
  body?: never;
1795
- path?: never;
2424
+ path: {
2425
+ /**
2426
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2427
+ */
2428
+ cluster_id: string;
2429
+ };
1796
2430
  query?: never;
1797
- url: '/registry';
2431
+ url: '/clusters/{cluster_id}/charts';
1798
2432
  };
1799
- export type ListRepositoriesErrors = {
2433
+ export type ListChartsErrors = {
1800
2434
  /**
1801
2435
  * Not authenticated
1802
2436
  */
1803
2437
  401: unknown;
2438
+ };
2439
+ export type ListChartsResponses = {
1804
2440
  /**
1805
- * Internal server error
2441
+ * An array of charts
1806
2442
  */
1807
- 500: unknown;
2443
+ 200: Array<Chart>;
1808
2444
  };
1809
- export type ListRepositoriesResponses = {
2445
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
2446
+ export type CreateChartData = {
2447
+ body: ChartCreateInput;
2448
+ path: {
2449
+ /**
2450
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2451
+ */
2452
+ cluster_id: string;
2453
+ };
2454
+ query?: never;
2455
+ url: '/clusters/{cluster_id}/charts';
2456
+ };
2457
+ export type CreateChartErrors = {
1810
2458
  /**
1811
- * List of repositories
2459
+ * 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.
1812
2460
  */
1813
- 200: Array<RegistryRepository>;
2461
+ 409: string;
1814
2462
  };
1815
- export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
1816
- export type ListTagsData = {
2463
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2464
+ export type CreateChartResponses = {
2465
+ /**
2466
+ * Successfully created. Returns created Chart ID.
2467
+ */
2468
+ 200: string;
2469
+ };
2470
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2471
+ export type DeleteChartData = {
1817
2472
  body?: never;
1818
2473
  path: {
1819
2474
  /**
1820
- * Region where the repository is located
2475
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1821
2476
  */
1822
- region: string;
2477
+ cluster_id: string;
1823
2478
  /**
1824
- * Name of the repository
2479
+ * Chart deployment name as the unique identifier of the chart.
1825
2480
  */
1826
- repository: string;
2481
+ chart_name: string;
1827
2482
  };
1828
2483
  query?: never;
1829
- url: '/registry/{region}/{repository}';
2484
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1830
2485
  };
1831
- export type ListTagsErrors = {
1832
- /**
1833
- * Not authenticated
1834
- */
1835
- 401: unknown;
2486
+ export type DeleteChartErrors = {
1836
2487
  /**
1837
- * Repository not found
2488
+ * 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.
1838
2489
  */
1839
- 404: unknown;
1840
- /**
1841
- * Internal server error
1842
- */
1843
- 500: unknown;
2490
+ 409: string;
1844
2491
  };
1845
- export type ListTagsResponses = {
2492
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2493
+ export type DeleteChartResponses = {
1846
2494
  /**
1847
- * Repository with tags
2495
+ * Successfully deleted.
1848
2496
  */
1849
- 200: RegistryRepositoryWithTags;
2497
+ 200: string;
1850
2498
  };
1851
- export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
1852
- export type DeleteTagData = {
2499
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2500
+ export type GetChartData = {
1853
2501
  body?: never;
1854
2502
  path: {
1855
2503
  /**
1856
- * Region where the repository is located
2504
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1857
2505
  */
1858
- region: string;
2506
+ cluster_id: string;
1859
2507
  /**
1860
- * Name of the repository
2508
+ * Chart deployment name as the unique identifier of the chart.
1861
2509
  */
1862
- repository: string;
2510
+ chart_name: string;
2511
+ };
2512
+ query?: never;
2513
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2514
+ };
2515
+ export type GetChartResponses = {
2516
+ /**
2517
+ * Returns a single object containing chart details.
2518
+ */
2519
+ 200: Chart;
2520
+ };
2521
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2522
+ export type UpdateChartData = {
2523
+ body: ChartUpdateInput;
2524
+ path: {
1863
2525
  /**
1864
- * Name of the tag
2526
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1865
2527
  */
1866
- tag: string;
2528
+ cluster_id: string;
2529
+ /**
2530
+ * Chart deployment name as the unique identifier of the chart.
2531
+ */
2532
+ chart_name: string;
1867
2533
  };
1868
2534
  query?: never;
1869
- url: '/registry/{region}/{repository}/{tag}';
2535
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1870
2536
  };
1871
- export type DeleteTagErrors = {
2537
+ export type UpdateChartErrors = {
2538
+ /**
2539
+ * 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.
2540
+ */
2541
+ 409: string;
2542
+ };
2543
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2544
+ export type UpdateChartResponses = {
2545
+ /**
2546
+ * Successfully updated.
2547
+ */
2548
+ 200: string;
2549
+ };
2550
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2551
+ export type ListClustersData = {
2552
+ body?: never;
2553
+ path?: never;
2554
+ query?: never;
2555
+ url: '/clusters';
2556
+ };
2557
+ export type ListClustersErrors = {
1872
2558
  /**
1873
2559
  * Not authenticated
1874
2560
  */
1875
2561
  401: unknown;
2562
+ };
2563
+ export type ListClustersResponses = {
1876
2564
  /**
1877
- * Tag not found
2565
+ * An array of clusters
2566
+ */
2567
+ 200: Array<Cluster>;
2568
+ };
2569
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2570
+ export type CreateClusterData = {
2571
+ body: ClusterCreateInput;
2572
+ path?: never;
2573
+ query?: never;
2574
+ url: '/clusters';
2575
+ };
2576
+ export type CreateClusterErrors = {
2577
+ /**
2578
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2579
+ */
2580
+ 402: string;
2581
+ };
2582
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2583
+ export type CreateClusterResponses = {
2584
+ /**
2585
+ * Successfully created. Returns created Cluster ID.
2586
+ */
2587
+ 200: string;
2588
+ };
2589
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2590
+ export type DeleteClusterData = {
2591
+ body?: never;
2592
+ path: {
2593
+ /**
2594
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2595
+ */
2596
+ cluster_id: string;
2597
+ };
2598
+ query?: never;
2599
+ url: '/clusters/{cluster_id}';
2600
+ };
2601
+ export type DeleteClusterErrors = {
2602
+ /**
2603
+ * Cluster not found; it does not exist or has already been deleted.
1878
2604
  */
1879
2605
  404: unknown;
1880
2606
  /**
1881
- * Internal server error
2607
+ * 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.
1882
2608
  */
1883
- 500: unknown;
2609
+ 409: string;
2610
+ /**
2611
+ * Transient failure tearing down the cluster; retry the request.
2612
+ */
2613
+ 503: unknown;
1884
2614
  };
1885
- export type DeleteTagResponses = {
2615
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2616
+ export type DeleteClusterResponses = {
1886
2617
  /**
1887
- * Tag successfully deleted
2618
+ * Successfully deleted. The cluster has been torn down.
1888
2619
  */
1889
- 200: unknown;
2620
+ 200: string;
1890
2621
  };
1891
- export type GetTagData = {
2622
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2623
+ export type GetClusterData = {
1892
2624
  body?: never;
1893
2625
  path: {
1894
2626
  /**
1895
- * Region where the repository is located
2627
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1896
2628
  */
1897
- region: string;
2629
+ cluster_id: string;
2630
+ };
2631
+ query?: never;
2632
+ url: '/clusters/{cluster_id}';
2633
+ };
2634
+ export type GetClusterResponses = {
2635
+ /**
2636
+ * Returns a single object containing cluster details.
2637
+ */
2638
+ 200: Cluster;
2639
+ };
2640
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2641
+ export type UpdateClusterData = {
2642
+ body: ClusterUpdateInput;
2643
+ path: {
1898
2644
  /**
1899
- * Name of the repository
2645
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1900
2646
  */
1901
- repository: string;
2647
+ cluster_id: string;
2648
+ };
2649
+ query?: never;
2650
+ url: '/clusters/{cluster_id}';
2651
+ };
2652
+ export type UpdateClusterErrors = {
2653
+ /**
2654
+ * 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.
2655
+ */
2656
+ 409: string;
2657
+ };
2658
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2659
+ export type UpdateClusterResponses = {
2660
+ /**
2661
+ * Successfully updated. Returns updated cluster details.
2662
+ */
2663
+ 200: Cluster;
2664
+ };
2665
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2666
+ export type GetJoinInformationData = {
2667
+ body?: never;
2668
+ path: {
1902
2669
  /**
1903
- * Name of the tag
2670
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1904
2671
  */
1905
- tag: string;
2672
+ cluster_id: string;
1906
2673
  };
1907
2674
  query?: never;
1908
- url: '/registry/{region}/{repository}/{tag}';
2675
+ url: '/clusters/{cluster_id}/join_information';
1909
2676
  };
1910
- export type GetTagErrors = {
2677
+ export type GetJoinInformationErrors = {
1911
2678
  /**
1912
2679
  * Not authenticated
1913
2680
  */
1914
2681
  401: unknown;
1915
2682
  /**
1916
- * Tag not found
1917
- */
1918
- 404: unknown;
1919
- /**
1920
- * Internal server error
2683
+ * 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.
1921
2684
  */
1922
- 500: unknown;
2685
+ 409: string;
1923
2686
  };
1924
- export type GetTagResponses = {
2687
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2688
+ export type GetJoinInformationResponses = {
1925
2689
  /**
1926
- * Tag details
2690
+ * An object of cluster join information
1927
2691
  */
1928
- 200: RegistryTag;
2692
+ 200: ClusterJoinInformation;
1929
2693
  };
1930
- export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
1931
- export type ListTokensData = {
2694
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2695
+ export type GetUsageData = {
1932
2696
  body?: never;
1933
2697
  path?: never;
1934
- query?: never;
1935
- url: '/tokens';
2698
+ query?: {
2699
+ /**
2700
+ * 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)
2701
+ */
2702
+ granularity?: 'hourly' | 'daily' | 'monthly';
2703
+ };
2704
+ url: '/billing/usage';
1936
2705
  };
1937
- export type ListTokensErrors = {
2706
+ export type GetUsageErrors = {
1938
2707
  /**
1939
2708
  * Not authenticated
1940
2709
  */
1941
2710
  401: unknown;
1942
2711
  };
1943
- export type ListTokensResponses = {
2712
+ export type GetUsageResponses = {
1944
2713
  /**
1945
- * Returns a list of access token details with masked secrets.
2714
+ * Usage data with facets for filtering
1946
2715
  */
1947
- 200: Array<Token>;
2716
+ 200: UsageResponse;
1948
2717
  };
1949
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1950
- export type CreateTokenData = {
1951
- body: TokenCreateInput;
2718
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2719
+ export type GetPaymentMethodSecretData = {
2720
+ body?: never;
1952
2721
  path?: never;
1953
2722
  query?: never;
1954
- url: '/tokens';
1955
- };
1956
- export type CreateTokenErrors = {
1957
- /**
1958
- * Not authenticated
1959
- */
1960
- 401: unknown;
2723
+ url: '/billing/payment-method';
1961
2724
  };
1962
- export type CreateTokenResponses = {
2725
+ export type GetPaymentMethodSecretResponses = {
1963
2726
  /**
1964
- * Successfully created. Returns created token details with unmasked/raw secret.
2727
+ * 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.
2728
+ *
1965
2729
  */
1966
- 200: Token;
1967
- };
1968
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1969
- export type DeleteTokenData = {
1970
- body?: never;
1971
- path: {
2730
+ 200: {
1972
2731
  /**
1973
- * Generated unique identifier of the access token.
2732
+ * The client secret.
1974
2733
  */
1975
- token_id: string;
2734
+ id?: string;
1976
2735
  };
1977
- query?: never;
1978
- url: '/tokens/{token_id}';
1979
- };
1980
- export type DeleteTokenResponses = {
1981
- /**
1982
- * Successfully deleted.
1983
- */
1984
- 200: unknown;
1985
2736
  };
1986
- export type GetTokenData = {
2737
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2738
+ export type ListPaymentMethodsData = {
1987
2739
  body?: never;
1988
- path: {
1989
- /**
1990
- * Generated unique identifier of the access token.
1991
- */
1992
- token_id: string;
1993
- };
2740
+ path?: never;
1994
2741
  query?: never;
1995
- url: '/tokens/{token_id}';
2742
+ url: '/billing/payment-methods';
1996
2743
  };
1997
- export type GetTokenErrors = {
2744
+ export type ListPaymentMethodsErrors = {
1998
2745
  /**
1999
2746
  * Not authenticated
2000
2747
  */
2001
2748
  401: unknown;
2002
2749
  };
2003
- export type GetTokenResponses = {
2750
+ export type ListPaymentMethodsResponses = {
2004
2751
  /**
2005
- * Returns access token details with masked secret.
2752
+ * An array of payment methods.
2006
2753
  */
2007
- 200: Token;
2754
+ 200: Array<PaymentMethod>;
2008
2755
  };
2009
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
2010
- export type UpdateTokenData = {
2011
- body: TokenUpdateInput;
2756
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
2757
+ export type SetDefaultPaymentMethodData = {
2758
+ body?: never;
2012
2759
  path: {
2013
2760
  /**
2014
- * Generated unique identifier of the access token.
2761
+ * Stripe payment method identifier.
2015
2762
  */
2016
- token_id: string;
2763
+ paymentMethodId: string;
2017
2764
  };
2018
2765
  query?: never;
2019
- url: '/tokens/{token_id}';
2766
+ url: '/billing/payment-methods/{paymentMethodId}/default';
2020
2767
  };
2021
- export type UpdateTokenErrors = {
2768
+ export type SetDefaultPaymentMethodErrors = {
2769
+ /**
2770
+ * The bank transfer payment method cannot be set as the default.
2771
+ */
2772
+ 400: unknown;
2022
2773
  /**
2023
2774
  * Not authenticated
2024
2775
  */
2025
2776
  401: unknown;
2777
+ /**
2778
+ * Payment method not found.
2779
+ */
2780
+ 404: unknown;
2026
2781
  };
2027
- export type UpdateTokenResponses = {
2782
+ export type SetDefaultPaymentMethodResponses = {
2028
2783
  /**
2029
- * Successfully updated. Returns updated token details with masked secret.
2784
+ * Default payment method updated.
2030
2785
  */
2031
- 200: Token;
2786
+ 204: void;
2032
2787
  };
2033
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
2034
- export type RegenerateTokenData = {
2788
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
2789
+ export type DeletePaymentMethodData = {
2035
2790
  body?: never;
2036
2791
  path: {
2037
2792
  /**
2038
- * Generated unique identifier of the access token.
2793
+ * Stripe payment method identifier.
2039
2794
  */
2040
- token_id: string;
2795
+ paymentMethodId: string;
2041
2796
  };
2042
2797
  query?: never;
2043
- url: '/tokens/{token_id}/secret';
2798
+ url: '/billing/payment-methods/{paymentMethodId}';
2044
2799
  };
2045
- export type RegenerateTokenErrors = {
2800
+ export type DeletePaymentMethodErrors = {
2801
+ /**
2802
+ * The bank transfer payment method cannot be removed.
2803
+ */
2804
+ 400: unknown;
2046
2805
  /**
2047
2806
  * Not authenticated
2048
2807
  */
2049
2808
  401: unknown;
2050
- };
2051
- export type RegenerateTokenResponses = {
2052
2809
  /**
2053
- * Successfully updated. Returns updated token details with unmasked / raw secret.
2810
+ * Payment method not found.
2054
2811
  */
2055
- 200: Token;
2056
- };
2057
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
2058
- export type ListUserOrganizationsData = {
2059
- body?: never;
2060
- path: {
2061
- /**
2062
- * User email address.
2063
- */
2064
- email: string;
2065
- };
2066
- query?: never;
2067
- url: '/users/organizations/{email}';
2812
+ 404: unknown;
2813
+ /**
2814
+ * Cannot delete the only remaining payment method.
2815
+ */
2816
+ 409: unknown;
2068
2817
  };
2069
- export type ListUserOrganizationsResponses = {
2818
+ export type DeletePaymentMethodResponses = {
2070
2819
  /**
2071
- * An array of organizations the user belongs to.
2820
+ * Payment method deleted.
2072
2821
  */
2073
- 200: Array<{
2074
- /**
2075
- * Unique identifier of the organization. UUID v4 string in canonical form
2076
- */
2077
- realm?: string;
2078
- /**
2079
- * Human-readable name of the organization
2080
- */
2081
- displayName?: string;
2082
- }>;
2822
+ 204: void;
2083
2823
  };
2084
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
2085
- export type ListUsersData = {
2824
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
2825
+ export type ListInvoicesData = {
2086
2826
  body?: never;
2087
2827
  path?: never;
2088
2828
  query?: never;
2089
- url: '/users';
2829
+ url: '/billing/invoices';
2090
2830
  };
2091
- export type ListUsersErrors = {
2831
+ export type ListInvoicesErrors = {
2092
2832
  /**
2093
2833
  * Not authenticated
2094
2834
  */
2095
2835
  401: unknown;
2096
2836
  };
2097
- export type ListUsersResponses = {
2837
+ export type ListInvoicesResponses = {
2098
2838
  /**
2099
- * An array of users
2839
+ * An array of usage records.
2100
2840
  */
2101
- 200: Array<User>;
2841
+ 200: Array<Invoice>;
2102
2842
  };
2103
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
2104
- export type CreateUserData = {
2105
- body: UserCreateInput;
2843
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
2844
+ export type GetContactData = {
2845
+ body?: never;
2106
2846
  path?: never;
2107
2847
  query?: never;
2108
- url: '/users';
2848
+ url: '/billing/contact';
2109
2849
  };
2110
- export type CreateUserResponses = {
2850
+ export type GetContactResponses = {
2111
2851
  /**
2112
- * Successfully created. Returns created user details.
2852
+ * Returns a single object containing organization contact and billing address details.
2113
2853
  */
2114
- 200: User;
2854
+ 200: BillingContact;
2115
2855
  };
2116
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
2117
- export type DeleteUserData = {
2118
- body?: never;
2119
- path: {
2120
- /**
2121
- * Unique user identifier. UUID v4 string in canonical form
2122
- */
2123
- user_id: string;
2124
- };
2856
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
2857
+ export type UpdateContactData = {
2858
+ body: BillingContact;
2859
+ path?: never;
2125
2860
  query?: never;
2126
- url: '/users/{user_id}';
2861
+ url: '/billing/contact';
2127
2862
  };
2128
- export type DeleteUserErrors = {
2863
+ export type UpdateContactResponses = {
2129
2864
  /**
2130
- * Deleting own user is not allowed. Delete your organization instead.
2865
+ * Successfully updated. Returns updated organization details.
2131
2866
  */
2132
- 400: unknown;
2867
+ 200: BillingContact;
2868
+ };
2869
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
2870
+ export type GetCreditsData = {
2871
+ body?: never;
2872
+ path?: never;
2873
+ query?: never;
2874
+ url: '/billing/credits';
2875
+ };
2876
+ export type GetCreditsErrors = {
2133
2877
  /**
2134
2878
  * Not authenticated
2135
2879
  */
2136
2880
  401: unknown;
2137
2881
  };
2138
- export type DeleteUserResponses = {
2882
+ export type GetCreditsResponses = {
2139
2883
  /**
2140
- * User profile information
2884
+ * An array of the applied promotional credits records.
2141
2885
  */
2142
- 200: User;
2886
+ 200: Array<BillingCredits>;
2143
2887
  };
2144
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
2145
- export type GetUserData = {
2146
- body?: never;
2147
- path: {
2888
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
2889
+ export type RedeemCreditsData = {
2890
+ body: {
2148
2891
  /**
2149
- * Unique user identifier. UUID v4 string in canonical form
2892
+ * Promotional code to redeem
2150
2893
  */
2151
- user_id: string;
2894
+ code?: string;
2152
2895
  };
2896
+ path?: never;
2153
2897
  query?: never;
2154
- url: '/users/{user_id}';
2898
+ url: '/billing/credits';
2155
2899
  };
2156
- export type GetUserErrors = {
2900
+ export type RedeemCreditsErrors = {
2157
2901
  /**
2158
2902
  * Not authenticated
2159
2903
  */
2160
2904
  401: unknown;
2161
2905
  };
2162
- export type GetUserResponses = {
2163
- /**
2164
- * User profile information
2165
- */
2166
- 200: User;
2167
- };
2168
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
2169
- export type UpdateUserData = {
2170
- body: UserUpdateInput;
2171
- path: {
2172
- /**
2173
- * Unique user identifier. UUID v4 string in canonical form
2174
- */
2175
- user_id: string;
2176
- };
2177
- query?: never;
2178
- url: '/users/{user_id}';
2179
- };
2180
- export type UpdateUserResponses = {
2906
+ export type RedeemCreditsResponses = {
2181
2907
  /**
2182
- * Successfully created. Returns created user details.
2908
+ * Successfully created a new organization.
2183
2909
  */
2184
- 200: User;
2910
+ 200: unknown;
2185
2911
  };
2186
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
2187
2912
  //# sourceMappingURL=types.gen.d.ts.map