@cloudfleet/sdk 0.0.1-84adc67 → 0.0.1-8783e31

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,4 +1,53 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
+ export const BasicPriceConsentInputSchema = {
3
+ type: 'object',
4
+ properties: {
5
+ decision: {
6
+ type: 'string',
7
+ description: '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`.',
8
+ example: 'accepted',
9
+ enum: [
10
+ 'accepted',
11
+ 'rejected'
12
+ ]
13
+ }
14
+ },
15
+ required: [
16
+ 'decision'
17
+ ],
18
+ additionalProperties: false
19
+ };
20
+ export const BasicPriceConsentSchema = {
21
+ type: 'object',
22
+ properties: {
23
+ status: {
24
+ type: 'string',
25
+ description: '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.',
26
+ example: 'pending',
27
+ enum: [
28
+ 'not_applicable',
29
+ 'pending',
30
+ 'accepted',
31
+ 'rejected'
32
+ ]
33
+ },
34
+ decided_at: {
35
+ type: 'string',
36
+ format: 'date-time',
37
+ description: 'When the current decision was recorded. Absent while `not_applicable` or `pending`.',
38
+ example: '2026-09-05T10:12:00.000Z'
39
+ },
40
+ decided_by: {
41
+ type: 'string',
42
+ description: 'User id of the administrator who recorded the current decision. Absent while `not_applicable` or `pending`.',
43
+ example: '2b7a5c9e-1f4d-4a1b-9c3e-8d2f6a0b1c2d'
44
+ }
45
+ },
46
+ required: [
47
+ 'status'
48
+ ],
49
+ additionalProperties: false
50
+ };
2
51
  export const BillingContactSchema = {
3
52
  type: 'object',
4
53
  properties: {
@@ -440,17 +489,14 @@ export const ClusterCreateInputSchema = {
440
489
  tier: {
441
490
  type: 'string',
442
491
  description: 'Tier of the cluster.',
492
+ default: 'basic',
443
493
  example: 'pro',
444
494
  enum: [
445
495
  'basic',
446
- 'pro'
496
+ 'pro',
497
+ 'enterprise'
447
498
  ]
448
499
  },
449
- region: {
450
- type: 'string',
451
- description: 'Cloudfleet control plane region. This field can not be updated after creation.',
452
- example: 'europe-central-1a'
453
- },
454
500
  version_channel: {
455
501
  type: 'string',
456
502
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
@@ -475,6 +521,7 @@ export const ClusterCreateInputSchema = {
475
521
  gpu_sharing_strategy: {
476
522
  type: 'string',
477
523
  description: 'GPU sharing strategy.',
524
+ default: 'none',
478
525
  example: 'none',
479
526
  enum: [
480
527
  'none',
@@ -484,9 +531,10 @@ export const ClusterCreateInputSchema = {
484
531
  },
485
532
  gpu_max_shared_clients_per_gpu: {
486
533
  type: 'integer',
487
- minimum: 1,
534
+ minimum: 2,
488
535
  maximum: 48,
489
536
  description: 'Maximum number of pods that may share a single GPU.',
537
+ default: 4,
490
538
  example: 10
491
539
  },
492
540
  cilium_socket_lb_host_namespace_only: {
@@ -495,62 +543,64 @@ export const ClusterCreateInputSchema = {
495
543
  example: false
496
544
  }
497
545
  },
498
- required: [
499
- 'gpu_sharing_strategy',
500
- 'gpu_max_shared_clients_per_gpu'
501
- ],
502
546
  additionalProperties: false,
503
547
  description: 'Cluster feature toggles.',
504
548
  default: {
505
549
  gpu_sharing_strategy: 'none',
506
- gpu_max_shared_clients_per_gpu: 10,
550
+ gpu_max_shared_clients_per_gpu: 4,
507
551
  cilium_socket_lb_host_namespace_only: false
508
552
  }
509
553
  },
554
+ region: {
555
+ type: 'string',
556
+ description: 'Cloudfleet control plane region. This field can not be updated after creation.',
557
+ example: 'europe-central-1a'
558
+ },
510
559
  networking: {
511
560
  type: 'object',
512
561
  properties: {
513
562
  pod_cidr: {
514
563
  type: 'string',
515
564
  description: 'CIDR block for pod IPs.',
516
- example: '10.244.0.0/16'
565
+ default: '10.244.0.0/16'
517
566
  },
518
567
  service_cidr: {
519
568
  type: 'string',
520
569
  description: 'CIDR block for service IPs.',
521
- example: '10.96.0.0/12'
522
- },
523
- cluster_dns: {
524
- type: 'string',
525
- description: 'CoreDNS service IP.',
526
- example: '10.96.0.10'
570
+ default: '10.96.0.0/12'
527
571
  },
528
572
  dual_stack: {
529
573
  type: 'boolean',
530
- description: 'Enable IPv4+IPv6 dual-stack networking.',
531
- example: false
574
+ description: 'Enable IPv4+IPv6 dual-stack networking.'
532
575
  },
533
576
  pod_cidr_v6: {
534
577
  type: 'string',
535
578
  description: 'IPv6 pod CIDR. Requires dual_stack.',
536
- example: 'fd00:10:244::/56'
579
+ default: '2001:db8:1:2::/48'
537
580
  },
538
581
  service_cidr_v6: {
539
582
  type: 'string',
540
583
  description: 'IPv6 service CIDR. Requires dual_stack.',
541
- example: 'fd00:10:96::/112'
584
+ default: '2001:db8:1:1::/112'
542
585
  }
543
586
  },
544
587
  additionalProperties: false,
545
- description: 'Cluster networking configuration. Immutable after creation.'
588
+ description: 'Cluster networking configuration. Immutable after creation.',
589
+ default: {
590
+ pod_cidr: '10.244.0.0/16',
591
+ service_cidr: '10.96.0.0/12',
592
+ dual_stack: false,
593
+ pod_cidr_v6: '2001:db8:1:2::/48',
594
+ service_cidr_v6: '2001:db8:1:1::/112'
595
+ }
546
596
  }
547
597
  },
548
598
  required: [
549
599
  'name',
550
- 'tier',
551
600
  'region'
552
601
  ],
553
- additionalProperties: false
602
+ additionalProperties: false,
603
+ description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
554
604
  };
555
605
  export const ClusterJoinInformationSchema = {
556
606
  type: 'object',
@@ -581,6 +631,11 @@ export const ClusterJoinInformationSchema = {
581
631
  description: 'Authentication key for the cluster.',
582
632
  example: 'tskey-auth-kBV8wr1dk911CNTRL-...'
583
633
  },
634
+ login_server: {
635
+ type: 'string',
636
+ description: 'Coordination server the node registers against. Empty on data plane v1 clusters, where the node advertises its own tag instead. A non-empty value requires a client that declares the dataplane-v2 capability.',
637
+ example: 'https://415026b6-f00f-44f8-968d-fc6ef4d0fc6d.fabric.europe-central-1a.cfke.io'
638
+ },
584
639
  bootstrap_token: {
585
640
  type: 'string',
586
641
  description: 'Bootstrap token for the cluster.',
@@ -653,6 +708,7 @@ export const ClusterJoinInformationSchema = {
653
708
  'cluster_dns',
654
709
  'pod_cidr',
655
710
  'auth_key',
711
+ 'login_server',
656
712
  'bootstrap_token',
657
713
  'versions',
658
714
  'third_party_api_access_config'
@@ -673,57 +729,25 @@ export const ClusterSchema = {
673
729
  tier: {
674
730
  type: 'string',
675
731
  description: 'Tier of the cluster.',
732
+ default: 'basic',
676
733
  example: 'pro',
677
734
  enum: [
678
735
  'basic',
679
- 'pro'
736
+ 'pro',
737
+ 'enterprise'
680
738
  ]
681
739
  },
682
- region: {
740
+ version_channel: {
683
741
  type: 'string',
684
- description: 'Cloudfleet control plane region. This field can not be updated after creation.',
685
- example: 'europe-central-1a'
686
- },
687
- networking: {
688
- type: 'object',
689
- properties: {
690
- pod_cidr: {
691
- type: 'string',
692
- description: 'CIDR block for pod IPs.',
693
- example: '10.244.0.0/16'
694
- },
695
- service_cidr: {
696
- type: 'string',
697
- description: 'CIDR block for service IPs.',
698
- example: '10.96.0.0/12'
699
- },
700
- cluster_dns: {
701
- type: 'string',
702
- description: 'CoreDNS service IP.',
703
- example: '10.96.0.10'
704
- },
705
- dual_stack: {
706
- type: 'boolean',
707
- description: 'Enable IPv4+IPv6 dual-stack networking.',
708
- example: false
709
- },
710
- pod_cidr_v6: {
711
- type: 'string',
712
- description: 'IPv6 pod CIDR. Requires dual_stack.',
713
- example: 'fd00:10:244::/56'
714
- },
715
- service_cidr_v6: {
716
- type: 'string',
717
- description: 'IPv6 service CIDR. Requires dual_stack.',
718
- example: 'fd00:10:96::/112'
719
- }
720
- },
721
- additionalProperties: false,
722
- description: 'Cluster networking configuration. Immutable after creation.'
742
+ pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
743
+ description: 'Version of the kubernetes cluster.',
744
+ default: '1.x.x-cfke.x',
745
+ example: '1.x.x-cfke.x'
723
746
  },
724
747
  release_channel: {
725
748
  type: 'string',
726
749
  description: 'Release channel for the cluster\'s control plane.',
750
+ default: 'rapid',
727
751
  example: 'rapid',
728
752
  enum: [
729
753
  'rapid',
@@ -737,6 +761,7 @@ export const ClusterSchema = {
737
761
  gpu_sharing_strategy: {
738
762
  type: 'string',
739
763
  description: 'GPU sharing strategy.',
764
+ default: 'none',
740
765
  example: 'none',
741
766
  enum: [
742
767
  'none',
@@ -746,9 +771,10 @@ export const ClusterSchema = {
746
771
  },
747
772
  gpu_max_shared_clients_per_gpu: {
748
773
  type: 'integer',
749
- minimum: 1,
774
+ minimum: 2,
750
775
  maximum: 48,
751
776
  description: 'Maximum number of pods that may share a single GPU.',
777
+ default: 4,
752
778
  example: 10
753
779
  },
754
780
  cilium_socket_lb_host_namespace_only: {
@@ -759,10 +785,66 @@ export const ClusterSchema = {
759
785
  },
760
786
  required: [
761
787
  'gpu_sharing_strategy',
762
- 'gpu_max_shared_clients_per_gpu'
788
+ 'gpu_max_shared_clients_per_gpu',
789
+ 'cilium_socket_lb_host_namespace_only'
790
+ ],
791
+ additionalProperties: false,
792
+ description: 'Cluster feature toggles.',
793
+ default: {
794
+ gpu_sharing_strategy: 'none',
795
+ gpu_max_shared_clients_per_gpu: 4,
796
+ cilium_socket_lb_host_namespace_only: false
797
+ }
798
+ },
799
+ region: {
800
+ type: 'string',
801
+ description: 'Cloudfleet control plane region. This field can not be updated after creation.',
802
+ example: 'europe-central-1a'
803
+ },
804
+ networking: {
805
+ type: 'object',
806
+ properties: {
807
+ pod_cidr: {
808
+ type: 'string',
809
+ description: 'CIDR block for pod IPs.',
810
+ default: '10.244.0.0/16'
811
+ },
812
+ service_cidr: {
813
+ type: 'string',
814
+ description: 'CIDR block for service IPs.',
815
+ default: '10.96.0.0/12'
816
+ },
817
+ dual_stack: {
818
+ type: 'boolean',
819
+ description: 'Enable IPv4+IPv6 dual-stack networking.'
820
+ },
821
+ pod_cidr_v6: {
822
+ type: 'string',
823
+ description: 'IPv6 pod CIDR. Requires dual_stack.',
824
+ default: '2001:db8:1:2::/48'
825
+ },
826
+ service_cidr_v6: {
827
+ type: 'string',
828
+ description: 'IPv6 service CIDR. Requires dual_stack.',
829
+ default: '2001:db8:1:1::/112'
830
+ }
831
+ },
832
+ required: [
833
+ 'pod_cidr',
834
+ 'service_cidr',
835
+ 'dual_stack',
836
+ 'pod_cidr_v6',
837
+ 'service_cidr_v6'
763
838
  ],
764
839
  additionalProperties: false,
765
- description: 'Cluster feature toggles.'
840
+ description: 'Cluster networking configuration. Immutable after creation.',
841
+ default: {
842
+ pod_cidr: '10.244.0.0/16',
843
+ service_cidr: '10.96.0.0/12',
844
+ dual_stack: false,
845
+ pod_cidr_v6: '2001:db8:1:2::/48',
846
+ service_cidr_v6: '2001:db8:1:1::/112'
847
+ }
766
848
  },
767
849
  id: {
768
850
  type: 'string',
@@ -837,22 +919,22 @@ export const ClusterSchema = {
837
919
  type: 'boolean',
838
920
  description: 'Indicates if the cluster is ready to be used.',
839
921
  example: true
840
- },
841
- version_channel: {
842
- type: 'string',
843
- pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
844
- description: 'Version of the kubernetes cluster.',
845
- example: '1.x.x-cfke.x'
846
922
  }
847
923
  },
848
924
  required: [
849
925
  'name',
850
926
  'tier',
927
+ 'version_channel',
928
+ 'release_channel',
929
+ 'features',
851
930
  'region',
931
+ 'networking',
852
932
  'id',
853
- 'status'
933
+ 'status',
934
+ 'ready'
854
935
  ],
855
- additionalProperties: false
936
+ additionalProperties: false,
937
+ description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
856
938
  };
857
939
  export const ClusterUpdateInputSchema = {
858
940
  type: 'object',
@@ -868,21 +950,25 @@ export const ClusterUpdateInputSchema = {
868
950
  tier: {
869
951
  type: 'string',
870
952
  description: 'Tier of the cluster.',
953
+ default: 'basic',
871
954
  example: 'pro',
872
955
  enum: [
873
956
  'basic',
874
- 'pro'
957
+ 'pro',
958
+ 'enterprise'
875
959
  ]
876
960
  },
877
961
  version_channel: {
878
962
  type: 'string',
879
963
  pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
880
964
  description: 'Version of the kubernetes cluster.',
965
+ default: '1.x.x-cfke.x',
881
966
  example: '1.x.x-cfke.x'
882
967
  },
883
968
  release_channel: {
884
969
  type: 'string',
885
970
  description: 'Release channel for the cluster\'s control plane.',
971
+ default: 'rapid',
886
972
  example: 'rapid',
887
973
  enum: [
888
974
  'rapid',
@@ -896,6 +982,7 @@ export const ClusterUpdateInputSchema = {
896
982
  gpu_sharing_strategy: {
897
983
  type: 'string',
898
984
  description: 'GPU sharing strategy.',
985
+ default: 'none',
899
986
  example: 'none',
900
987
  enum: [
901
988
  'none',
@@ -905,9 +992,10 @@ export const ClusterUpdateInputSchema = {
905
992
  },
906
993
  gpu_max_shared_clients_per_gpu: {
907
994
  type: 'integer',
908
- minimum: 1,
995
+ minimum: 2,
909
996
  maximum: 48,
910
997
  description: 'Maximum number of pods that may share a single GPU.',
998
+ default: 4,
911
999
  example: 10
912
1000
  },
913
1001
  cilium_socket_lb_host_namespace_only: {
@@ -916,18 +1004,20 @@ export const ClusterUpdateInputSchema = {
916
1004
  example: false
917
1005
  }
918
1006
  },
919
- required: [
920
- 'gpu_sharing_strategy',
921
- 'gpu_max_shared_clients_per_gpu'
922
- ],
923
1007
  additionalProperties: false,
924
- description: 'Cluster feature toggles.'
1008
+ description: 'Cluster feature toggles.',
1009
+ default: {
1010
+ gpu_sharing_strategy: 'none',
1011
+ gpu_max_shared_clients_per_gpu: 4,
1012
+ cilium_socket_lb_host_namespace_only: false
1013
+ }
925
1014
  }
926
1015
  },
927
1016
  required: [
928
- 'tier'
1017
+ 'name'
929
1018
  ],
930
- additionalProperties: false
1019
+ additionalProperties: false,
1020
+ description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
931
1021
  };
932
1022
  export const FleetCreateInputSchema = {
933
1023
  type: 'object',
@@ -973,8 +1063,8 @@ export const FleetCreateInputSchema = {
973
1063
  type: 'string',
974
1064
  maxLength: 64,
975
1065
  minLength: 64,
976
- pattern: '^[A-Za-z0-9]+$',
977
- description: 'Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.'
1066
+ pattern: '^([A-Za-z0-9]{64}|\\*{64})$',
1067
+ description: '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.'
978
1068
  }
979
1069
  },
980
1070
  required: [
@@ -1199,7 +1289,8 @@ export const FleetCreateInputSchema = {
1199
1289
  'z3'
1200
1290
  ]
1201
1291
  },
1202
- description: 'Allowed values for `cfke.io/instance-family`.'
1292
+ description: 'Allowed values for `cfke.io/instance-family`.',
1293
+ default: []
1203
1294
  },
1204
1295
  'topology.kubernetes.io/region': {
1205
1296
  type: 'array',
@@ -1272,15 +1363,27 @@ export const FleetCreateInputSchema = {
1272
1363
  'us-west4'
1273
1364
  ]
1274
1365
  },
1275
- description: 'Allowed values for `topology.kubernetes.io/region`.'
1366
+ description: 'Allowed values for `topology.kubernetes.io/region`.',
1367
+ default: []
1276
1368
  }
1277
1369
  },
1278
1370
  additionalProperties: false,
1279
- description: '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. Omit a field to place no restriction on that key.'
1371
+ description: '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.',
1372
+ default: {
1373
+ 'karpenter.sh/capacity-type': [
1374
+ 'on-demand',
1375
+ 'spot'
1376
+ ],
1377
+ 'kubernetes.io/arch': [
1378
+ 'amd64'
1379
+ ],
1380
+ 'cfke.io/instance-family': [],
1381
+ 'topology.kubernetes.io/region': []
1382
+ }
1280
1383
  },
1281
1384
  scalingProfile: {
1282
1385
  type: 'string',
1283
- description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
1386
+ description: '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`).',
1284
1387
  default: 'conservative',
1285
1388
  example: 'conservative',
1286
1389
  enum: [
@@ -1300,7 +1403,8 @@ export const FleetCreateInputSchema = {
1300
1403
  required: [
1301
1404
  'id'
1302
1405
  ],
1303
- additionalProperties: false
1406
+ additionalProperties: false,
1407
+ description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
1304
1408
  };
1305
1409
  export const FleetSchema = {
1306
1410
  type: 'object',
@@ -1570,7 +1674,8 @@ export const FleetSchema = {
1570
1674
  'z3'
1571
1675
  ]
1572
1676
  },
1573
- description: 'Allowed values for `cfke.io/instance-family`.'
1677
+ description: 'Allowed values for `cfke.io/instance-family`.',
1678
+ default: []
1574
1679
  },
1575
1680
  'topology.kubernetes.io/region': {
1576
1681
  type: 'array',
@@ -1643,15 +1748,31 @@ export const FleetSchema = {
1643
1748
  'us-west4'
1644
1749
  ]
1645
1750
  },
1646
- description: 'Allowed values for `topology.kubernetes.io/region`.'
1751
+ description: 'Allowed values for `topology.kubernetes.io/region`.',
1752
+ default: []
1647
1753
  }
1648
1754
  },
1755
+ required: [
1756
+ 'karpenter.sh/capacity-type',
1757
+ 'kubernetes.io/arch'
1758
+ ],
1649
1759
  additionalProperties: false,
1650
- description: '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. Omit a field to place no restriction on that key.'
1760
+ description: '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.',
1761
+ default: {
1762
+ 'karpenter.sh/capacity-type': [
1763
+ 'on-demand',
1764
+ 'spot'
1765
+ ],
1766
+ 'kubernetes.io/arch': [
1767
+ 'amd64'
1768
+ ],
1769
+ 'cfke.io/instance-family': [],
1770
+ 'topology.kubernetes.io/region': []
1771
+ }
1651
1772
  },
1652
1773
  scalingProfile: {
1653
1774
  type: 'string',
1654
- description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
1775
+ description: '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`).',
1655
1776
  default: 'conservative',
1656
1777
  example: 'conservative',
1657
1778
  enum: [
@@ -1689,13 +1810,15 @@ export const FleetSchema = {
1689
1810
  }
1690
1811
  },
1691
1812
  required: [
1813
+ 'constraints',
1692
1814
  'scalingProfile',
1693
1815
  'id',
1694
1816
  'ready',
1695
1817
  'created_at',
1696
1818
  'updated_at'
1697
1819
  ],
1698
- additionalProperties: false
1820
+ additionalProperties: false,
1821
+ description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
1699
1822
  };
1700
1823
  export const FleetUpdateInputSchema = {
1701
1824
  type: 'object',
@@ -1741,8 +1864,8 @@ export const FleetUpdateInputSchema = {
1741
1864
  type: 'string',
1742
1865
  maxLength: 64,
1743
1866
  minLength: 64,
1744
- pattern: '^[A-Za-z0-9]+$',
1745
- description: 'Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.'
1867
+ pattern: '^([A-Za-z0-9]{64}|\\*{64})$',
1868
+ description: '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.'
1746
1869
  }
1747
1870
  },
1748
1871
  required: [
@@ -1781,7 +1904,11 @@ export const FleetUpdateInputSchema = {
1781
1904
  ]
1782
1905
  },
1783
1906
  minItems: 1,
1784
- description: 'Allowed values for `karpenter.sh/capacity-type`.'
1907
+ description: 'Allowed values for `karpenter.sh/capacity-type`.',
1908
+ default: [
1909
+ 'on-demand',
1910
+ 'spot'
1911
+ ]
1785
1912
  },
1786
1913
  'kubernetes.io/arch': {
1787
1914
  type: 'array',
@@ -1793,7 +1920,10 @@ export const FleetUpdateInputSchema = {
1793
1920
  ]
1794
1921
  },
1795
1922
  minItems: 1,
1796
- description: 'Allowed values for `kubernetes.io/arch`.'
1923
+ description: 'Allowed values for `kubernetes.io/arch`.',
1924
+ default: [
1925
+ 'amd64'
1926
+ ]
1797
1927
  },
1798
1928
  'cfke.io/instance-family': {
1799
1929
  type: 'array',
@@ -1960,7 +2090,8 @@ export const FleetUpdateInputSchema = {
1960
2090
  'z3'
1961
2091
  ]
1962
2092
  },
1963
- description: 'Allowed values for `cfke.io/instance-family`.'
2093
+ description: 'Allowed values for `cfke.io/instance-family`.',
2094
+ default: []
1964
2095
  },
1965
2096
  'topology.kubernetes.io/region': {
1966
2097
  type: 'array',
@@ -2033,15 +2164,28 @@ export const FleetUpdateInputSchema = {
2033
2164
  'us-west4'
2034
2165
  ]
2035
2166
  },
2036
- description: 'Allowed values for `topology.kubernetes.io/region`.'
2167
+ description: 'Allowed values for `topology.kubernetes.io/region`.',
2168
+ default: []
2037
2169
  }
2038
2170
  },
2039
2171
  additionalProperties: false,
2040
- description: '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. Omit a field to place no restriction on that key.'
2172
+ description: '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.',
2173
+ default: {
2174
+ 'karpenter.sh/capacity-type': [
2175
+ 'on-demand',
2176
+ 'spot'
2177
+ ],
2178
+ 'kubernetes.io/arch': [
2179
+ 'amd64'
2180
+ ],
2181
+ 'cfke.io/instance-family': [],
2182
+ 'topology.kubernetes.io/region': []
2183
+ }
2041
2184
  },
2042
2185
  scalingProfile: {
2043
2186
  type: 'string',
2044
- description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
2187
+ description: '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`).',
2188
+ default: 'conservative',
2045
2189
  example: 'conservative',
2046
2190
  enum: [
2047
2191
  'aggressive',
@@ -2049,10 +2193,8 @@ export const FleetUpdateInputSchema = {
2049
2193
  ]
2050
2194
  }
2051
2195
  },
2052
- required: [
2053
- 'scalingProfile'
2054
- ],
2055
- additionalProperties: false
2196
+ additionalProperties: false,
2197
+ description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
2056
2198
  };
2057
2199
  export const InviteCreateInputSchema = {
2058
2200
  type: 'object',
@@ -2460,6 +2602,17 @@ export const OrganizationSchema = {
2460
2602
  description: 'Available number of Pro clusters that can be created.',
2461
2603
  example: 999
2462
2604
  },
2605
+ enterprise_clusters_max: {
2606
+ type: 'integer',
2607
+ minimum: 0,
2608
+ description: 'Maximum number of Enterprise clusters that can be created.',
2609
+ example: 999
2610
+ },
2611
+ enterprise_clusters_available: {
2612
+ type: 'integer',
2613
+ description: 'Available number of Enterprise clusters that can be created.',
2614
+ example: 999
2615
+ },
2463
2616
  fleets_max: {
2464
2617
  type: 'integer',
2465
2618
  minimum: 0,
@@ -2521,6 +2674,8 @@ export const OrganizationSchema = {
2521
2674
  'basic_clusters_available',
2522
2675
  'pro_clusters_max',
2523
2676
  'pro_clusters_available',
2677
+ 'enterprise_clusters_max',
2678
+ 'enterprise_clusters_available',
2524
2679
  'fleets_max',
2525
2680
  'cluster_tiers',
2526
2681
  'regions',
@@ -2667,6 +2822,17 @@ export const PlatformQuotaSchema = {
2667
2822
  description: 'Available number of Pro clusters that can be created.',
2668
2823
  example: 999
2669
2824
  },
2825
+ enterprise_clusters_max: {
2826
+ type: 'integer',
2827
+ minimum: 0,
2828
+ description: 'Maximum number of Enterprise clusters that can be created.',
2829
+ example: 999
2830
+ },
2831
+ enterprise_clusters_available: {
2832
+ type: 'integer',
2833
+ description: 'Available number of Enterprise clusters that can be created.',
2834
+ example: 999
2835
+ },
2670
2836
  fleets_max: {
2671
2837
  type: 'integer',
2672
2838
  minimum: 0,
@@ -2728,6 +2894,8 @@ export const PlatformQuotaSchema = {
2728
2894
  'basic_clusters_available',
2729
2895
  'pro_clusters_max',
2730
2896
  'pro_clusters_available',
2897
+ 'enterprise_clusters_max',
2898
+ 'enterprise_clusters_available',
2731
2899
  'fleets_max',
2732
2900
  'cluster_tiers',
2733
2901
  'regions',
@@ -3070,172 +3238,6 @@ export const TicketCreateInputSchema = {
3070
3238
  ],
3071
3239
  additionalProperties: false
3072
3240
  };
3073
- export const TicketListResponseSchema = {
3074
- type: 'object',
3075
- properties: {
3076
- items: {
3077
- type: 'array',
3078
- items: {
3079
- type: 'object',
3080
- properties: {
3081
- id: {
3082
- type: 'string',
3083
- description: 'Unique identifier of the ticket (Mongo ObjectId).',
3084
- example: '60c72b2f9f1b2c001f8e4d3a'
3085
- },
3086
- status: {
3087
- type: 'string',
3088
- description: 'Current state of the ticket.',
3089
- example: 'waiting_on_us',
3090
- enum: [
3091
- 'waiting_on_us',
3092
- 'waiting_on_user',
3093
- 'closed'
3094
- ]
3095
- },
3096
- category: {
3097
- type: 'string',
3098
- description: 'Ticket category.',
3099
- example: 'technical',
3100
- enum: [
3101
- 'billing',
3102
- 'technical',
3103
- 'general'
3104
- ]
3105
- },
3106
- summary: {
3107
- type: 'string',
3108
- description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
3109
- example: 'My cluster cannot reach the registry. Logs attached.'
3110
- },
3111
- closed_at: {
3112
- type: 'string',
3113
- format: 'date-time',
3114
- nullable: true,
3115
- description: 'Closure timestamp. Null while the ticket is open.',
3116
- example: '2026-05-18T16:08:14.338Z'
3117
- },
3118
- date_created: {
3119
- type: 'string',
3120
- format: 'date-time',
3121
- description: 'Creation date of the ticket. ISO 8601 UTC.',
3122
- example: '2026-05-11T16:08:14.338Z'
3123
- },
3124
- date_updated: {
3125
- type: 'string',
3126
- format: 'date-time',
3127
- description: 'Last update date of the ticket. ISO 8601 UTC.',
3128
- example: '2026-05-11T16:08:14.338Z'
3129
- },
3130
- messages: {
3131
- type: 'array',
3132
- items: {
3133
- type: 'object',
3134
- properties: {
3135
- id: {
3136
- type: 'string',
3137
- description: 'Unique identifier of the message (Mongo ObjectId).',
3138
- example: '60c72b2f9f1b2c001f8e4d3b'
3139
- },
3140
- type: {
3141
- type: 'string',
3142
- description: 'Message type. Internal notes are filtered out of customer-facing responses.',
3143
- example: 'customer_reply',
3144
- enum: [
3145
- 'customer_reply',
3146
- 'agent_reply'
3147
- ]
3148
- },
3149
- body: {
3150
- type: 'string',
3151
- description: 'Message body in markdown.',
3152
- example: 'Thanks — that resolved it on my side.'
3153
- },
3154
- author_first_name: {
3155
- type: 'string',
3156
- nullable: true,
3157
- description: 'First name of the author. Null when not provided.',
3158
- example: 'Jane'
3159
- },
3160
- author_last_name: {
3161
- type: 'string',
3162
- nullable: true,
3163
- description: 'Last name of the author. Null when not provided.',
3164
- example: 'Doe'
3165
- },
3166
- attachments: {
3167
- type: 'array',
3168
- items: {
3169
- type: 'object',
3170
- properties: {
3171
- id: {
3172
- type: 'string',
3173
- description: 'Unique identifier of the attachment (Mongo ObjectId).',
3174
- example: '60c72b2f9f1b2c001f8e4d3c'
3175
- },
3176
- filename: {
3177
- type: 'string',
3178
- description: 'Original filename as uploaded.',
3179
- example: 'debug.log'
3180
- },
3181
- content_type: {
3182
- type: 'string',
3183
- description: 'MIME content type of the attachment.',
3184
- example: 'text/plain'
3185
- },
3186
- size: {
3187
- type: 'integer',
3188
- description: 'Size of the attachment in bytes.',
3189
- example: 12345
3190
- }
3191
- },
3192
- required: [
3193
- 'id',
3194
- 'filename',
3195
- 'content_type',
3196
- 'size'
3197
- ],
3198
- additionalProperties: false
3199
- },
3200
- description: 'Attachments associated with this message.',
3201
- example: []
3202
- },
3203
- date_created: {
3204
- type: 'string',
3205
- format: 'date-time',
3206
- description: 'Creation date of the message. ISO 8601 UTC.',
3207
- example: '2026-05-11T16:08:14.338Z'
3208
- }
3209
- },
3210
- required: [
3211
- 'id',
3212
- 'type',
3213
- 'body',
3214
- 'date_created'
3215
- ],
3216
- additionalProperties: false
3217
- },
3218
- description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
3219
- }
3220
- },
3221
- required: [
3222
- 'id',
3223
- 'status',
3224
- 'category',
3225
- 'summary',
3226
- 'date_created',
3227
- 'date_updated'
3228
- ],
3229
- additionalProperties: false
3230
- },
3231
- description: 'Tickets for the organization, ordered newest first. Messages are omitted from list responses.'
3232
- }
3233
- },
3234
- required: [
3235
- 'items'
3236
- ],
3237
- additionalProperties: false
3238
- };
3239
3241
  export const TicketMessageInputSchema = {
3240
3242
  type: 'object',
3241
3243
  properties: {
@@ -3277,11 +3279,13 @@ export const TicketMessageSchema = {
3277
3279
  },
3278
3280
  author_first_name: {
3279
3281
  type: 'string',
3282
+ nullable: true,
3280
3283
  description: 'First name of the author. Null when not provided.',
3281
3284
  example: 'Jane'
3282
3285
  },
3283
3286
  author_last_name: {
3284
3287
  type: 'string',
3288
+ nullable: true,
3285
3289
  description: 'Last name of the author. Null when not provided.',
3286
3290
  example: 'Doe'
3287
3291
  },
@@ -3373,6 +3377,7 @@ export const TicketSchema = {
3373
3377
  closed_at: {
3374
3378
  type: 'string',
3375
3379
  format: 'date-time',
3380
+ nullable: true,
3376
3381
  description: 'Closure timestamp. Null while the ticket is open.',
3377
3382
  example: '2026-05-18T16:08:14.338Z'
3378
3383
  },
@@ -3597,12 +3602,21 @@ export const UsageFacetsSchema = {
3597
3602
  product: {
3598
3603
  type: 'array',
3599
3604
  items: {
3600
- type: 'string'
3605
+ type: 'string',
3606
+ enum: [
3607
+ 'cfke_controlplane_basic',
3608
+ 'cfke_controlplane_pro',
3609
+ 'cfke_controlplane_enterprise',
3610
+ 'cfke_connected_nodes_basic',
3611
+ 'cfke_connected_nodes_pro',
3612
+ 'cfke_connected_nodes_enterprise',
3613
+ 'cfcr_storage'
3614
+ ]
3601
3615
  },
3602
3616
  description: 'List of unique products',
3603
3617
  example: [
3604
- 'cfke_controlplane',
3605
- 'cfke_connected_nodes'
3618
+ 'cfke_controlplane_pro',
3619
+ 'cfke_connected_nodes_pro'
3606
3620
  ]
3607
3621
  }
3608
3622
  },
@@ -3629,7 +3643,16 @@ export const UsageResponseSchema = {
3629
3643
  product: {
3630
3644
  type: 'string',
3631
3645
  description: 'The product the usage is associated with',
3632
- example: 'cfke_controlplane'
3646
+ example: 'cfke_controlplane_pro',
3647
+ enum: [
3648
+ 'cfke_controlplane_basic',
3649
+ 'cfke_controlplane_pro',
3650
+ 'cfke_controlplane_enterprise',
3651
+ 'cfke_connected_nodes_basic',
3652
+ 'cfke_connected_nodes_pro',
3653
+ 'cfke_connected_nodes_enterprise',
3654
+ 'cfcr_storage'
3655
+ ]
3633
3656
  },
3634
3657
  value: {
3635
3658
  type: 'number',
@@ -3677,12 +3700,21 @@ export const UsageResponseSchema = {
3677
3700
  product: {
3678
3701
  type: 'array',
3679
3702
  items: {
3680
- type: 'string'
3703
+ type: 'string',
3704
+ enum: [
3705
+ 'cfke_controlplane_basic',
3706
+ 'cfke_controlplane_pro',
3707
+ 'cfke_controlplane_enterprise',
3708
+ 'cfke_connected_nodes_basic',
3709
+ 'cfke_connected_nodes_pro',
3710
+ 'cfke_connected_nodes_enterprise',
3711
+ 'cfcr_storage'
3712
+ ]
3681
3713
  },
3682
3714
  description: 'List of unique products',
3683
3715
  example: [
3684
- 'cfke_controlplane',
3685
- 'cfke_connected_nodes'
3716
+ 'cfke_controlplane_pro',
3717
+ 'cfke_connected_nodes_pro'
3686
3718
  ]
3687
3719
  }
3688
3720
  },
@@ -3712,7 +3744,16 @@ export const UsageSchema = {
3712
3744
  product: {
3713
3745
  type: 'string',
3714
3746
  description: 'The product the usage is associated with',
3715
- example: 'cfke_controlplane'
3747
+ example: 'cfke_controlplane_pro',
3748
+ enum: [
3749
+ 'cfke_controlplane_basic',
3750
+ 'cfke_controlplane_pro',
3751
+ 'cfke_controlplane_enterprise',
3752
+ 'cfke_connected_nodes_basic',
3753
+ 'cfke_connected_nodes_pro',
3754
+ 'cfke_connected_nodes_enterprise',
3755
+ 'cfcr_storage'
3756
+ ]
3716
3757
  },
3717
3758
  value: {
3718
3759
  type: 'number',