@cloudfleet/sdk 0.0.1-a104fac → 0.0.1-a10877b
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.
- package/README.md +26 -2
- package/dist/@tanstack/react-query.gen.d.ts +512 -534
- package/dist/@tanstack/react-query.gen.d.ts.map +1 -1
- package/dist/@tanstack/react-query.gen.js +486 -332
- package/dist/@tanstack/react-query.gen.js.map +1 -1
- package/dist/client/client.gen.d.ts.map +1 -1
- package/dist/client/client.gen.js +1 -4
- package/dist/client/client.gen.js.map +1 -1
- package/dist/client/types.gen.d.ts +1 -1
- package/dist/client/types.gen.d.ts.map +1 -1
- package/dist/client/utils.gen.d.ts +2 -2
- package/dist/client/utils.gen.d.ts.map +1 -1
- package/dist/client/utils.gen.js +3 -3
- package/dist/client/utils.gen.js.map +1 -1
- package/dist/core/params.gen.js +4 -4
- package/dist/core/params.gen.js.map +1 -1
- package/dist/schemas.gen.d.ts +1041 -133
- package/dist/schemas.gen.d.ts.map +1 -1
- package/dist/schemas.gen.js +1995 -192
- package/dist/schemas.gen.js.map +1 -1
- package/dist/sdk.gen.d.ts +256 -196
- package/dist/sdk.gen.d.ts.map +1 -1
- package/dist/sdk.gen.js +367 -274
- package/dist/sdk.gen.js.map +1 -1
- package/dist/types.gen.d.ts +1515 -731
- package/dist/types.gen.d.ts.map +1 -1
- package/dist/zod.gen.d.ts +3373 -1141
- package/dist/zod.gen.d.ts.map +1 -1
- package/dist/zod.gen.js +1303 -294
- package/dist/zod.gen.js.map +1 -1
- package/package.json +10 -13
package/dist/schemas.gen.js
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
export const BillingContactSchema = {
|
|
3
3
|
type: 'object',
|
|
4
4
|
properties: {
|
|
5
|
+
type: {
|
|
6
|
+
type: 'string',
|
|
7
|
+
description: 'Type of the organization. `business` for legal entities, `personal` for individuals.',
|
|
8
|
+
example: 'business',
|
|
9
|
+
enum: [
|
|
10
|
+
'business',
|
|
11
|
+
'personal'
|
|
12
|
+
]
|
|
13
|
+
},
|
|
5
14
|
company: {
|
|
6
15
|
type: 'string',
|
|
7
16
|
maxLength: 120,
|
|
@@ -207,6 +216,7 @@ export const BillingContactSchema = {
|
|
|
207
216
|
}
|
|
208
217
|
},
|
|
209
218
|
required: [
|
|
219
|
+
'type',
|
|
210
220
|
'email',
|
|
211
221
|
'individual_name'
|
|
212
222
|
],
|
|
@@ -358,24 +368,8 @@ export const ChartSchema = {
|
|
|
358
368
|
},
|
|
359
369
|
status: {
|
|
360
370
|
type: 'string',
|
|
361
|
-
description: 'Status of the chart deployment.',
|
|
362
|
-
example: '
|
|
363
|
-
enum: [
|
|
364
|
-
'InstallSucceeded',
|
|
365
|
-
'InstallFailed',
|
|
366
|
-
'UpgradeSucceeded',
|
|
367
|
-
'UpgradeFailed',
|
|
368
|
-
'TestSucceeded',
|
|
369
|
-
'TestFailed',
|
|
370
|
-
'RollbackSucceeded',
|
|
371
|
-
'RollbackFailed',
|
|
372
|
-
'UninstallSucceeded',
|
|
373
|
-
'UninstallFailed',
|
|
374
|
-
'ArtifactFailed',
|
|
375
|
-
'DependencyNotReady',
|
|
376
|
-
'Progressing',
|
|
377
|
-
'SourceNotReady'
|
|
378
|
-
]
|
|
371
|
+
description: 'Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).',
|
|
372
|
+
example: 'InstallSucceeded'
|
|
379
373
|
},
|
|
380
374
|
version_current: {
|
|
381
375
|
type: 'string',
|
|
@@ -446,22 +440,12 @@ export const ClusterCreateInputSchema = {
|
|
|
446
440
|
tier: {
|
|
447
441
|
type: 'string',
|
|
448
442
|
description: 'Tier of the cluster.',
|
|
443
|
+
default: 'basic',
|
|
449
444
|
example: 'pro',
|
|
450
445
|
enum: [
|
|
451
446
|
'basic',
|
|
452
|
-
'pro'
|
|
453
|
-
|
|
454
|
-
},
|
|
455
|
-
region: {
|
|
456
|
-
type: 'string',
|
|
457
|
-
description: '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.',
|
|
458
|
-
default: 'staging-1a',
|
|
459
|
-
example: 'northamerica-central-1a',
|
|
460
|
-
enum: [
|
|
461
|
-
'staging-1a',
|
|
462
|
-
'northamerica-central-1',
|
|
463
|
-
'europe-central-1a',
|
|
464
|
-
'northamerica-central-1a'
|
|
447
|
+
'pro',
|
|
448
|
+
'enterprise'
|
|
465
449
|
]
|
|
466
450
|
},
|
|
467
451
|
version_channel: {
|
|
@@ -469,20 +453,105 @@ export const ClusterCreateInputSchema = {
|
|
|
469
453
|
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-]+)*))?$',
|
|
470
454
|
description: 'Version of the kubernetes cluster.',
|
|
471
455
|
default: '1.x.x-cfke.x',
|
|
472
|
-
example: '1.x.x-cfke.x'
|
|
456
|
+
example: '1.x.x-cfke.x'
|
|
457
|
+
},
|
|
458
|
+
release_channel: {
|
|
459
|
+
type: 'string',
|
|
460
|
+
description: 'Release channel for the cluster\'s control plane.',
|
|
461
|
+
default: 'rapid',
|
|
462
|
+
example: 'rapid',
|
|
473
463
|
enum: [
|
|
474
|
-
'
|
|
475
|
-
'
|
|
476
|
-
'
|
|
477
|
-
'1.33.x-cfke.x'
|
|
464
|
+
'rapid',
|
|
465
|
+
'stable',
|
|
466
|
+
'extended'
|
|
478
467
|
]
|
|
468
|
+
},
|
|
469
|
+
features: {
|
|
470
|
+
type: 'object',
|
|
471
|
+
properties: {
|
|
472
|
+
gpu_sharing_strategy: {
|
|
473
|
+
type: 'string',
|
|
474
|
+
description: 'GPU sharing strategy.',
|
|
475
|
+
default: 'none',
|
|
476
|
+
example: 'none',
|
|
477
|
+
enum: [
|
|
478
|
+
'none',
|
|
479
|
+
'mps',
|
|
480
|
+
'time_slicing'
|
|
481
|
+
]
|
|
482
|
+
},
|
|
483
|
+
gpu_max_shared_clients_per_gpu: {
|
|
484
|
+
type: 'integer',
|
|
485
|
+
minimum: 2,
|
|
486
|
+
maximum: 48,
|
|
487
|
+
description: 'Maximum number of pods that may share a single GPU.',
|
|
488
|
+
default: 4,
|
|
489
|
+
example: 10
|
|
490
|
+
},
|
|
491
|
+
cilium_socket_lb_host_namespace_only: {
|
|
492
|
+
type: 'boolean',
|
|
493
|
+
description: 'Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.',
|
|
494
|
+
example: false
|
|
495
|
+
}
|
|
496
|
+
},
|
|
497
|
+
additionalProperties: false,
|
|
498
|
+
description: 'Cluster feature toggles.',
|
|
499
|
+
default: {
|
|
500
|
+
gpu_sharing_strategy: 'none',
|
|
501
|
+
gpu_max_shared_clients_per_gpu: 4,
|
|
502
|
+
cilium_socket_lb_host_namespace_only: false
|
|
503
|
+
}
|
|
504
|
+
},
|
|
505
|
+
region: {
|
|
506
|
+
type: 'string',
|
|
507
|
+
description: 'Cloudfleet control plane region. This field can not be updated after creation.',
|
|
508
|
+
example: 'europe-central-1a'
|
|
509
|
+
},
|
|
510
|
+
networking: {
|
|
511
|
+
type: 'object',
|
|
512
|
+
properties: {
|
|
513
|
+
pod_cidr: {
|
|
514
|
+
type: 'string',
|
|
515
|
+
description: 'CIDR block for pod IPs.',
|
|
516
|
+
default: '10.244.0.0/16'
|
|
517
|
+
},
|
|
518
|
+
service_cidr: {
|
|
519
|
+
type: 'string',
|
|
520
|
+
description: 'CIDR block for service IPs.',
|
|
521
|
+
default: '10.96.0.0/12'
|
|
522
|
+
},
|
|
523
|
+
dual_stack: {
|
|
524
|
+
type: 'boolean',
|
|
525
|
+
description: 'Enable IPv4+IPv6 dual-stack networking.'
|
|
526
|
+
},
|
|
527
|
+
pod_cidr_v6: {
|
|
528
|
+
type: 'string',
|
|
529
|
+
description: 'IPv6 pod CIDR. Requires dual_stack.',
|
|
530
|
+
default: '2001:db8:1:2::/48'
|
|
531
|
+
},
|
|
532
|
+
service_cidr_v6: {
|
|
533
|
+
type: 'string',
|
|
534
|
+
description: 'IPv6 service CIDR. Requires dual_stack.',
|
|
535
|
+
default: '2001:db8:1:1::/112'
|
|
536
|
+
}
|
|
537
|
+
},
|
|
538
|
+
additionalProperties: false,
|
|
539
|
+
description: 'Cluster networking configuration. Immutable after creation.',
|
|
540
|
+
default: {
|
|
541
|
+
pod_cidr: '10.244.0.0/16',
|
|
542
|
+
service_cidr: '10.96.0.0/12',
|
|
543
|
+
dual_stack: false,
|
|
544
|
+
pod_cidr_v6: '2001:db8:1:2::/48',
|
|
545
|
+
service_cidr_v6: '2001:db8:1:1::/112'
|
|
546
|
+
}
|
|
479
547
|
}
|
|
480
548
|
},
|
|
481
549
|
required: [
|
|
482
550
|
'name',
|
|
483
|
-
'
|
|
551
|
+
'region'
|
|
484
552
|
],
|
|
485
|
-
additionalProperties: false
|
|
553
|
+
additionalProperties: false,
|
|
554
|
+
description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
486
555
|
};
|
|
487
556
|
export const ClusterJoinInformationSchema = {
|
|
488
557
|
type: 'object',
|
|
@@ -503,11 +572,21 @@ export const ClusterJoinInformationSchema = {
|
|
|
503
572
|
description: 'Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.',
|
|
504
573
|
example: '10.96.0.10'
|
|
505
574
|
},
|
|
575
|
+
pod_cidr: {
|
|
576
|
+
type: 'string',
|
|
577
|
+
description: 'Pod CIDR for the cluster. Used to configure iptables rules on nodes to prevent Tailscale routing loops.',
|
|
578
|
+
example: '10.244.0.0/16'
|
|
579
|
+
},
|
|
506
580
|
auth_key: {
|
|
507
581
|
type: 'string',
|
|
508
582
|
description: 'Authentication key for the cluster.',
|
|
509
583
|
example: 'tskey-auth-kBV8wr1dk911CNTRL-...'
|
|
510
584
|
},
|
|
585
|
+
login_server: {
|
|
586
|
+
type: 'string',
|
|
587
|
+
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.',
|
|
588
|
+
example: 'https://415026b6-f00f-44f8-968d-fc6ef4d0fc6d.fabric.europe-central-1a.cfke.io'
|
|
589
|
+
},
|
|
511
590
|
bootstrap_token: {
|
|
512
591
|
type: 'string',
|
|
513
592
|
description: 'Bootstrap token for the cluster.',
|
|
@@ -578,7 +657,9 @@ export const ClusterJoinInformationSchema = {
|
|
|
578
657
|
'certificate_authority',
|
|
579
658
|
'endpoint',
|
|
580
659
|
'cluster_dns',
|
|
660
|
+
'pod_cidr',
|
|
581
661
|
'auth_key',
|
|
662
|
+
'login_server',
|
|
582
663
|
'bootstrap_token',
|
|
583
664
|
'versions',
|
|
584
665
|
'third_party_api_access_config'
|
|
@@ -599,24 +680,123 @@ export const ClusterSchema = {
|
|
|
599
680
|
tier: {
|
|
600
681
|
type: 'string',
|
|
601
682
|
description: 'Tier of the cluster.',
|
|
683
|
+
default: 'basic',
|
|
602
684
|
example: 'pro',
|
|
603
685
|
enum: [
|
|
604
686
|
'basic',
|
|
605
|
-
'pro'
|
|
687
|
+
'pro',
|
|
688
|
+
'enterprise'
|
|
606
689
|
]
|
|
607
690
|
},
|
|
608
|
-
|
|
691
|
+
version_channel: {
|
|
609
692
|
type: 'string',
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
693
|
+
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-]+)*))?$',
|
|
694
|
+
description: 'Version of the kubernetes cluster.',
|
|
695
|
+
default: '1.x.x-cfke.x',
|
|
696
|
+
example: '1.x.x-cfke.x'
|
|
697
|
+
},
|
|
698
|
+
release_channel: {
|
|
699
|
+
type: 'string',
|
|
700
|
+
description: 'Release channel for the cluster\'s control plane.',
|
|
701
|
+
default: 'rapid',
|
|
702
|
+
example: 'rapid',
|
|
613
703
|
enum: [
|
|
614
|
-
'
|
|
615
|
-
'
|
|
616
|
-
'
|
|
617
|
-
'northamerica-central-1a'
|
|
704
|
+
'rapid',
|
|
705
|
+
'stable',
|
|
706
|
+
'extended'
|
|
618
707
|
]
|
|
619
708
|
},
|
|
709
|
+
features: {
|
|
710
|
+
type: 'object',
|
|
711
|
+
properties: {
|
|
712
|
+
gpu_sharing_strategy: {
|
|
713
|
+
type: 'string',
|
|
714
|
+
description: 'GPU sharing strategy.',
|
|
715
|
+
default: 'none',
|
|
716
|
+
example: 'none',
|
|
717
|
+
enum: [
|
|
718
|
+
'none',
|
|
719
|
+
'mps',
|
|
720
|
+
'time_slicing'
|
|
721
|
+
]
|
|
722
|
+
},
|
|
723
|
+
gpu_max_shared_clients_per_gpu: {
|
|
724
|
+
type: 'integer',
|
|
725
|
+
minimum: 2,
|
|
726
|
+
maximum: 48,
|
|
727
|
+
description: 'Maximum number of pods that may share a single GPU.',
|
|
728
|
+
default: 4,
|
|
729
|
+
example: 10
|
|
730
|
+
},
|
|
731
|
+
cilium_socket_lb_host_namespace_only: {
|
|
732
|
+
type: 'boolean',
|
|
733
|
+
description: 'Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.',
|
|
734
|
+
example: false
|
|
735
|
+
}
|
|
736
|
+
},
|
|
737
|
+
required: [
|
|
738
|
+
'gpu_sharing_strategy',
|
|
739
|
+
'gpu_max_shared_clients_per_gpu',
|
|
740
|
+
'cilium_socket_lb_host_namespace_only'
|
|
741
|
+
],
|
|
742
|
+
additionalProperties: false,
|
|
743
|
+
description: 'Cluster feature toggles.',
|
|
744
|
+
default: {
|
|
745
|
+
gpu_sharing_strategy: 'none',
|
|
746
|
+
gpu_max_shared_clients_per_gpu: 4,
|
|
747
|
+
cilium_socket_lb_host_namespace_only: false
|
|
748
|
+
}
|
|
749
|
+
},
|
|
750
|
+
region: {
|
|
751
|
+
type: 'string',
|
|
752
|
+
description: 'Cloudfleet control plane region. This field can not be updated after creation.',
|
|
753
|
+
example: 'europe-central-1a'
|
|
754
|
+
},
|
|
755
|
+
networking: {
|
|
756
|
+
type: 'object',
|
|
757
|
+
properties: {
|
|
758
|
+
pod_cidr: {
|
|
759
|
+
type: 'string',
|
|
760
|
+
description: 'CIDR block for pod IPs.',
|
|
761
|
+
default: '10.244.0.0/16'
|
|
762
|
+
},
|
|
763
|
+
service_cidr: {
|
|
764
|
+
type: 'string',
|
|
765
|
+
description: 'CIDR block for service IPs.',
|
|
766
|
+
default: '10.96.0.0/12'
|
|
767
|
+
},
|
|
768
|
+
dual_stack: {
|
|
769
|
+
type: 'boolean',
|
|
770
|
+
description: 'Enable IPv4+IPv6 dual-stack networking.'
|
|
771
|
+
},
|
|
772
|
+
pod_cidr_v6: {
|
|
773
|
+
type: 'string',
|
|
774
|
+
description: 'IPv6 pod CIDR. Requires dual_stack.',
|
|
775
|
+
default: '2001:db8:1:2::/48'
|
|
776
|
+
},
|
|
777
|
+
service_cidr_v6: {
|
|
778
|
+
type: 'string',
|
|
779
|
+
description: 'IPv6 service CIDR. Requires dual_stack.',
|
|
780
|
+
default: '2001:db8:1:1::/112'
|
|
781
|
+
}
|
|
782
|
+
},
|
|
783
|
+
required: [
|
|
784
|
+
'pod_cidr',
|
|
785
|
+
'service_cidr',
|
|
786
|
+
'dual_stack',
|
|
787
|
+
'pod_cidr_v6',
|
|
788
|
+
'service_cidr_v6'
|
|
789
|
+
],
|
|
790
|
+
additionalProperties: false,
|
|
791
|
+
description: 'Cluster networking configuration. Immutable after creation.',
|
|
792
|
+
default: {
|
|
793
|
+
pod_cidr: '10.244.0.0/16',
|
|
794
|
+
service_cidr: '10.96.0.0/12',
|
|
795
|
+
dual_stack: false,
|
|
796
|
+
pod_cidr_v6: '2001:db8:1:2::/48',
|
|
797
|
+
service_cidr_v6: '2001:db8:1:1::/112'
|
|
798
|
+
}
|
|
799
|
+
},
|
|
620
800
|
id: {
|
|
621
801
|
type: 'string',
|
|
622
802
|
format: 'uuid',
|
|
@@ -625,16 +805,13 @@ export const ClusterSchema = {
|
|
|
625
805
|
},
|
|
626
806
|
status: {
|
|
627
807
|
type: 'string',
|
|
628
|
-
description: 'Status of the cluster.
|
|
629
|
-
example: '
|
|
808
|
+
description: 'Status of the cluster.',
|
|
809
|
+
example: 'deployed',
|
|
630
810
|
enum: [
|
|
631
|
-
'active',
|
|
632
|
-
'disabled',
|
|
633
|
-
'deleted',
|
|
634
811
|
'creating',
|
|
635
812
|
'deployed',
|
|
636
|
-
'
|
|
637
|
-
'
|
|
813
|
+
'updating',
|
|
814
|
+
'disabled'
|
|
638
815
|
]
|
|
639
816
|
},
|
|
640
817
|
endpoint: {
|
|
@@ -642,8 +819,24 @@ export const ClusterSchema = {
|
|
|
642
819
|
{
|
|
643
820
|
type: 'string',
|
|
644
821
|
format: 'uri',
|
|
645
|
-
description: 'URL of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster.',
|
|
646
|
-
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.
|
|
822
|
+
description: 'URL signed by a public CA of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster.',
|
|
823
|
+
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.io'
|
|
824
|
+
},
|
|
825
|
+
{
|
|
826
|
+
type: 'string',
|
|
827
|
+
enum: [
|
|
828
|
+
''
|
|
829
|
+
]
|
|
830
|
+
}
|
|
831
|
+
]
|
|
832
|
+
},
|
|
833
|
+
endpoint_public: {
|
|
834
|
+
anyOf: [
|
|
835
|
+
{
|
|
836
|
+
type: 'string',
|
|
837
|
+
format: 'uri',
|
|
838
|
+
description: 'Deprecated alias of `endpoint`; retained for backward compatibility.',
|
|
839
|
+
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.io'
|
|
647
840
|
},
|
|
648
841
|
{
|
|
649
842
|
type: 'string',
|
|
@@ -677,21 +870,22 @@ export const ClusterSchema = {
|
|
|
677
870
|
type: 'boolean',
|
|
678
871
|
description: 'Indicates if the cluster is ready to be used.',
|
|
679
872
|
example: true
|
|
680
|
-
},
|
|
681
|
-
version_channel: {
|
|
682
|
-
type: 'string',
|
|
683
|
-
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-]+)*))?$',
|
|
684
|
-
description: 'Version of the kubernetes cluster.',
|
|
685
|
-
example: '1.x.x-cfke.x'
|
|
686
873
|
}
|
|
687
874
|
},
|
|
688
875
|
required: [
|
|
689
876
|
'name',
|
|
690
877
|
'tier',
|
|
878
|
+
'version_channel',
|
|
879
|
+
'release_channel',
|
|
880
|
+
'features',
|
|
881
|
+
'region',
|
|
882
|
+
'networking',
|
|
691
883
|
'id',
|
|
692
|
-
'status'
|
|
884
|
+
'status',
|
|
885
|
+
'ready'
|
|
693
886
|
],
|
|
694
|
-
additionalProperties: false
|
|
887
|
+
additionalProperties: false,
|
|
888
|
+
description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
695
889
|
};
|
|
696
890
|
export const ClusterUpdateInputSchema = {
|
|
697
891
|
type: 'object',
|
|
@@ -707,23 +901,74 @@ export const ClusterUpdateInputSchema = {
|
|
|
707
901
|
tier: {
|
|
708
902
|
type: 'string',
|
|
709
903
|
description: 'Tier of the cluster.',
|
|
904
|
+
default: 'basic',
|
|
710
905
|
example: 'pro',
|
|
711
906
|
enum: [
|
|
712
907
|
'basic',
|
|
713
|
-
'pro'
|
|
908
|
+
'pro',
|
|
909
|
+
'enterprise'
|
|
714
910
|
]
|
|
715
911
|
},
|
|
716
912
|
version_channel: {
|
|
717
913
|
type: 'string',
|
|
718
914
|
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-]+)*))?$',
|
|
719
915
|
description: 'Version of the kubernetes cluster.',
|
|
916
|
+
default: '1.x.x-cfke.x',
|
|
720
917
|
example: '1.x.x-cfke.x'
|
|
918
|
+
},
|
|
919
|
+
release_channel: {
|
|
920
|
+
type: 'string',
|
|
921
|
+
description: 'Release channel for the cluster\'s control plane.',
|
|
922
|
+
default: 'rapid',
|
|
923
|
+
example: 'rapid',
|
|
924
|
+
enum: [
|
|
925
|
+
'rapid',
|
|
926
|
+
'stable',
|
|
927
|
+
'extended'
|
|
928
|
+
]
|
|
929
|
+
},
|
|
930
|
+
features: {
|
|
931
|
+
type: 'object',
|
|
932
|
+
properties: {
|
|
933
|
+
gpu_sharing_strategy: {
|
|
934
|
+
type: 'string',
|
|
935
|
+
description: 'GPU sharing strategy.',
|
|
936
|
+
default: 'none',
|
|
937
|
+
example: 'none',
|
|
938
|
+
enum: [
|
|
939
|
+
'none',
|
|
940
|
+
'mps',
|
|
941
|
+
'time_slicing'
|
|
942
|
+
]
|
|
943
|
+
},
|
|
944
|
+
gpu_max_shared_clients_per_gpu: {
|
|
945
|
+
type: 'integer',
|
|
946
|
+
minimum: 2,
|
|
947
|
+
maximum: 48,
|
|
948
|
+
description: 'Maximum number of pods that may share a single GPU.',
|
|
949
|
+
default: 4,
|
|
950
|
+
example: 10
|
|
951
|
+
},
|
|
952
|
+
cilium_socket_lb_host_namespace_only: {
|
|
953
|
+
type: 'boolean',
|
|
954
|
+
description: 'Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.',
|
|
955
|
+
example: false
|
|
956
|
+
}
|
|
957
|
+
},
|
|
958
|
+
additionalProperties: false,
|
|
959
|
+
description: 'Cluster feature toggles.',
|
|
960
|
+
default: {
|
|
961
|
+
gpu_sharing_strategy: 'none',
|
|
962
|
+
gpu_max_shared_clients_per_gpu: 4,
|
|
963
|
+
cilium_socket_lb_host_namespace_only: false
|
|
964
|
+
}
|
|
721
965
|
}
|
|
722
966
|
},
|
|
723
967
|
required: [
|
|
724
|
-
'
|
|
968
|
+
'name'
|
|
725
969
|
],
|
|
726
|
-
additionalProperties: false
|
|
970
|
+
additionalProperties: false,
|
|
971
|
+
description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
727
972
|
};
|
|
728
973
|
export const FleetCreateInputSchema = {
|
|
729
974
|
type: 'object',
|
|
@@ -732,15 +977,12 @@ export const FleetCreateInputSchema = {
|
|
|
732
977
|
type: 'object',
|
|
733
978
|
properties: {
|
|
734
979
|
cpu: {
|
|
735
|
-
type: '
|
|
736
|
-
format: 'float',
|
|
980
|
+
type: 'integer',
|
|
737
981
|
minimum: 0,
|
|
738
|
-
|
|
982
|
+
maximum: 100000,
|
|
983
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
739
984
|
}
|
|
740
985
|
},
|
|
741
|
-
required: [
|
|
742
|
-
'cpu'
|
|
743
|
-
],
|
|
744
986
|
additionalProperties: false,
|
|
745
987
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
746
988
|
},
|
|
@@ -748,16 +990,17 @@ export const FleetCreateInputSchema = {
|
|
|
748
990
|
type: 'object',
|
|
749
991
|
properties: {
|
|
750
992
|
enabled: {
|
|
751
|
-
type: 'boolean'
|
|
752
|
-
default: true
|
|
993
|
+
type: 'boolean'
|
|
753
994
|
},
|
|
754
995
|
project: {
|
|
755
996
|
type: 'string',
|
|
756
|
-
|
|
997
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
998
|
+
description: '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.',
|
|
999
|
+
example: 'my-cloudfleet-project'
|
|
757
1000
|
}
|
|
758
1001
|
},
|
|
759
1002
|
required: [
|
|
760
|
-
'
|
|
1003
|
+
'enabled'
|
|
761
1004
|
],
|
|
762
1005
|
additionalProperties: false
|
|
763
1006
|
},
|
|
@@ -765,16 +1008,18 @@ export const FleetCreateInputSchema = {
|
|
|
765
1008
|
type: 'object',
|
|
766
1009
|
properties: {
|
|
767
1010
|
enabled: {
|
|
768
|
-
type: 'boolean'
|
|
769
|
-
default: true
|
|
1011
|
+
type: 'boolean'
|
|
770
1012
|
},
|
|
771
1013
|
apiKey: {
|
|
772
1014
|
type: 'string',
|
|
773
|
-
|
|
1015
|
+
maxLength: 64,
|
|
1016
|
+
minLength: 64,
|
|
1017
|
+
pattern: '^([A-Za-z0-9]{64}|\\*{64})$',
|
|
1018
|
+
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.'
|
|
774
1019
|
}
|
|
775
1020
|
},
|
|
776
1021
|
required: [
|
|
777
|
-
'
|
|
1022
|
+
'enabled'
|
|
778
1023
|
],
|
|
779
1024
|
additionalProperties: false
|
|
780
1025
|
},
|
|
@@ -782,19 +1027,321 @@ export const FleetCreateInputSchema = {
|
|
|
782
1027
|
type: 'object',
|
|
783
1028
|
properties: {
|
|
784
1029
|
enabled: {
|
|
785
|
-
type: 'boolean'
|
|
786
|
-
default: true
|
|
1030
|
+
type: 'boolean'
|
|
787
1031
|
},
|
|
788
1032
|
controllerRoleArn: {
|
|
789
1033
|
type: 'string',
|
|
790
|
-
|
|
1034
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1035
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1036
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
791
1037
|
}
|
|
792
1038
|
},
|
|
793
1039
|
required: [
|
|
794
|
-
'
|
|
1040
|
+
'enabled'
|
|
795
1041
|
],
|
|
796
1042
|
additionalProperties: false
|
|
797
1043
|
},
|
|
1044
|
+
constraints: {
|
|
1045
|
+
type: 'object',
|
|
1046
|
+
properties: {
|
|
1047
|
+
'karpenter.sh/capacity-type': {
|
|
1048
|
+
type: 'array',
|
|
1049
|
+
items: {
|
|
1050
|
+
type: 'string',
|
|
1051
|
+
enum: [
|
|
1052
|
+
'on-demand',
|
|
1053
|
+
'spot'
|
|
1054
|
+
]
|
|
1055
|
+
},
|
|
1056
|
+
minItems: 1,
|
|
1057
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
1058
|
+
default: [
|
|
1059
|
+
'on-demand',
|
|
1060
|
+
'spot'
|
|
1061
|
+
]
|
|
1062
|
+
},
|
|
1063
|
+
'kubernetes.io/arch': {
|
|
1064
|
+
type: 'array',
|
|
1065
|
+
items: {
|
|
1066
|
+
type: 'string',
|
|
1067
|
+
enum: [
|
|
1068
|
+
'amd64',
|
|
1069
|
+
'arm64'
|
|
1070
|
+
]
|
|
1071
|
+
},
|
|
1072
|
+
minItems: 1,
|
|
1073
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
1074
|
+
default: [
|
|
1075
|
+
'amd64'
|
|
1076
|
+
]
|
|
1077
|
+
},
|
|
1078
|
+
'cfke.io/instance-family': {
|
|
1079
|
+
type: 'array',
|
|
1080
|
+
items: {
|
|
1081
|
+
type: 'string',
|
|
1082
|
+
enum: [
|
|
1083
|
+
'a1',
|
|
1084
|
+
'a2',
|
|
1085
|
+
'a3',
|
|
1086
|
+
'a4',
|
|
1087
|
+
'c1',
|
|
1088
|
+
'c2',
|
|
1089
|
+
'c2d',
|
|
1090
|
+
'c3',
|
|
1091
|
+
'c3d',
|
|
1092
|
+
'c4',
|
|
1093
|
+
'c4a',
|
|
1094
|
+
'c4d',
|
|
1095
|
+
'c5',
|
|
1096
|
+
'c5a',
|
|
1097
|
+
'c5ad',
|
|
1098
|
+
'c5d',
|
|
1099
|
+
'c5n',
|
|
1100
|
+
'c6a',
|
|
1101
|
+
'c6g',
|
|
1102
|
+
'c6gd',
|
|
1103
|
+
'c6gn',
|
|
1104
|
+
'c6i',
|
|
1105
|
+
'c6id',
|
|
1106
|
+
'c6in',
|
|
1107
|
+
'c7a',
|
|
1108
|
+
'c7g',
|
|
1109
|
+
'c7gd',
|
|
1110
|
+
'c7gn',
|
|
1111
|
+
'c7i',
|
|
1112
|
+
'c7i-flex',
|
|
1113
|
+
'c8g',
|
|
1114
|
+
'c8gd',
|
|
1115
|
+
'cax',
|
|
1116
|
+
'ccx',
|
|
1117
|
+
'cpx',
|
|
1118
|
+
'cx',
|
|
1119
|
+
'd2',
|
|
1120
|
+
'd3',
|
|
1121
|
+
'd3en',
|
|
1122
|
+
'dl1',
|
|
1123
|
+
'dl2q',
|
|
1124
|
+
'e2',
|
|
1125
|
+
'f1',
|
|
1126
|
+
'f2',
|
|
1127
|
+
'g1',
|
|
1128
|
+
'g2',
|
|
1129
|
+
'g4ad',
|
|
1130
|
+
'g4dn',
|
|
1131
|
+
'g5',
|
|
1132
|
+
'g5g',
|
|
1133
|
+
'g6',
|
|
1134
|
+
'g6e',
|
|
1135
|
+
'gr6',
|
|
1136
|
+
'h1',
|
|
1137
|
+
'h3',
|
|
1138
|
+
'hpc6a',
|
|
1139
|
+
'hpc6id',
|
|
1140
|
+
'hpc7a',
|
|
1141
|
+
'hpc7g',
|
|
1142
|
+
'i2',
|
|
1143
|
+
'i3',
|
|
1144
|
+
'i3en',
|
|
1145
|
+
'i4g',
|
|
1146
|
+
'i4i',
|
|
1147
|
+
'i7i',
|
|
1148
|
+
'i7ie',
|
|
1149
|
+
'i8g',
|
|
1150
|
+
'im4gn',
|
|
1151
|
+
'inf1',
|
|
1152
|
+
'inf2',
|
|
1153
|
+
'is4gen',
|
|
1154
|
+
'm1',
|
|
1155
|
+
'm2',
|
|
1156
|
+
'm3',
|
|
1157
|
+
'm4',
|
|
1158
|
+
'm5',
|
|
1159
|
+
'm5a',
|
|
1160
|
+
'm5ad',
|
|
1161
|
+
'm5d',
|
|
1162
|
+
'm5dn',
|
|
1163
|
+
'm5n',
|
|
1164
|
+
'm5zn',
|
|
1165
|
+
'm6a',
|
|
1166
|
+
'm6g',
|
|
1167
|
+
'm6gd',
|
|
1168
|
+
'm6i',
|
|
1169
|
+
'm6id',
|
|
1170
|
+
'm6idn',
|
|
1171
|
+
'm6in',
|
|
1172
|
+
'm7a',
|
|
1173
|
+
'm7g',
|
|
1174
|
+
'm7gd',
|
|
1175
|
+
'm7i',
|
|
1176
|
+
'm7i-flex',
|
|
1177
|
+
'm8g',
|
|
1178
|
+
'm8gd',
|
|
1179
|
+
'n1',
|
|
1180
|
+
'n2',
|
|
1181
|
+
'n2d',
|
|
1182
|
+
'n4',
|
|
1183
|
+
'p3',
|
|
1184
|
+
'p3dn',
|
|
1185
|
+
'p4d',
|
|
1186
|
+
'p4de',
|
|
1187
|
+
'p5',
|
|
1188
|
+
'p5e',
|
|
1189
|
+
'p5en',
|
|
1190
|
+
'p6-b200',
|
|
1191
|
+
'r3',
|
|
1192
|
+
'r4',
|
|
1193
|
+
'r5',
|
|
1194
|
+
'r5a',
|
|
1195
|
+
'r5ad',
|
|
1196
|
+
'r5b',
|
|
1197
|
+
'r5d',
|
|
1198
|
+
'r5dn',
|
|
1199
|
+
'r5n',
|
|
1200
|
+
'r6a',
|
|
1201
|
+
'r6g',
|
|
1202
|
+
'r6gd',
|
|
1203
|
+
'r6i',
|
|
1204
|
+
'r6id',
|
|
1205
|
+
'r6idn',
|
|
1206
|
+
'r6in',
|
|
1207
|
+
'r7a',
|
|
1208
|
+
'r7g',
|
|
1209
|
+
'r7gd',
|
|
1210
|
+
'r7i',
|
|
1211
|
+
'r7iz',
|
|
1212
|
+
'r8g',
|
|
1213
|
+
'r8gd',
|
|
1214
|
+
't2',
|
|
1215
|
+
't2a',
|
|
1216
|
+
't2d',
|
|
1217
|
+
't3',
|
|
1218
|
+
't3a',
|
|
1219
|
+
't4g',
|
|
1220
|
+
'trn1',
|
|
1221
|
+
'trn1n',
|
|
1222
|
+
'u-3tb1',
|
|
1223
|
+
'u-6tb1',
|
|
1224
|
+
'u7i-12tb',
|
|
1225
|
+
'u7i-6tb',
|
|
1226
|
+
'u7i-8tb',
|
|
1227
|
+
'u7in-16tb',
|
|
1228
|
+
'u7in-24tb',
|
|
1229
|
+
'u7in-32tb',
|
|
1230
|
+
'vt1',
|
|
1231
|
+
'x1',
|
|
1232
|
+
'x1e',
|
|
1233
|
+
'x2gd',
|
|
1234
|
+
'x2idn',
|
|
1235
|
+
'x2iedn',
|
|
1236
|
+
'x2iezn',
|
|
1237
|
+
'x4',
|
|
1238
|
+
'x8g',
|
|
1239
|
+
'z1d',
|
|
1240
|
+
'z3'
|
|
1241
|
+
]
|
|
1242
|
+
},
|
|
1243
|
+
description: 'Allowed values for `cfke.io/instance-family`.',
|
|
1244
|
+
default: []
|
|
1245
|
+
},
|
|
1246
|
+
'topology.kubernetes.io/region': {
|
|
1247
|
+
type: 'array',
|
|
1248
|
+
items: {
|
|
1249
|
+
type: 'string',
|
|
1250
|
+
enum: [
|
|
1251
|
+
'africa-south1',
|
|
1252
|
+
'ap-northeast-1',
|
|
1253
|
+
'ap-northeast-2',
|
|
1254
|
+
'ap-northeast-3',
|
|
1255
|
+
'ap-south-1',
|
|
1256
|
+
'ap-southeast-1',
|
|
1257
|
+
'ap-southeast-2',
|
|
1258
|
+
'ash',
|
|
1259
|
+
'asia-east1',
|
|
1260
|
+
'asia-east2',
|
|
1261
|
+
'asia-northeast1',
|
|
1262
|
+
'asia-northeast2',
|
|
1263
|
+
'asia-northeast3',
|
|
1264
|
+
'asia-south1',
|
|
1265
|
+
'asia-south2',
|
|
1266
|
+
'asia-southeast1',
|
|
1267
|
+
'asia-southeast2',
|
|
1268
|
+
'australia-southeast1',
|
|
1269
|
+
'australia-southeast2',
|
|
1270
|
+
'ca-central-1',
|
|
1271
|
+
'eu-central-1',
|
|
1272
|
+
'eu-central-2',
|
|
1273
|
+
'eu-north-1',
|
|
1274
|
+
'eu-west-1',
|
|
1275
|
+
'eu-west-2',
|
|
1276
|
+
'eu-west-3',
|
|
1277
|
+
'europe-central2',
|
|
1278
|
+
'europe-north1',
|
|
1279
|
+
'europe-southwest1',
|
|
1280
|
+
'europe-west1',
|
|
1281
|
+
'europe-west10',
|
|
1282
|
+
'europe-west12',
|
|
1283
|
+
'europe-west2',
|
|
1284
|
+
'europe-west3',
|
|
1285
|
+
'europe-west4',
|
|
1286
|
+
'europe-west6',
|
|
1287
|
+
'europe-west8',
|
|
1288
|
+
'europe-west9',
|
|
1289
|
+
'fsn1',
|
|
1290
|
+
'hel1',
|
|
1291
|
+
'hil',
|
|
1292
|
+
'me-central1',
|
|
1293
|
+
'me-central2',
|
|
1294
|
+
'me-west1',
|
|
1295
|
+
'nbg1',
|
|
1296
|
+
'northamerica-northeast1',
|
|
1297
|
+
'northamerica-northeast2',
|
|
1298
|
+
'sa-east-1',
|
|
1299
|
+
'sin',
|
|
1300
|
+
'southamerica-east1',
|
|
1301
|
+
'southamerica-west1',
|
|
1302
|
+
'us-central1',
|
|
1303
|
+
'us-east-1',
|
|
1304
|
+
'us-east-2',
|
|
1305
|
+
'us-east1',
|
|
1306
|
+
'us-east4',
|
|
1307
|
+
'us-east5',
|
|
1308
|
+
'us-south1',
|
|
1309
|
+
'us-west-1',
|
|
1310
|
+
'us-west-2',
|
|
1311
|
+
'us-west1',
|
|
1312
|
+
'us-west2',
|
|
1313
|
+
'us-west3',
|
|
1314
|
+
'us-west4'
|
|
1315
|
+
]
|
|
1316
|
+
},
|
|
1317
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.',
|
|
1318
|
+
default: []
|
|
1319
|
+
}
|
|
1320
|
+
},
|
|
1321
|
+
additionalProperties: false,
|
|
1322
|
+
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.',
|
|
1323
|
+
default: {
|
|
1324
|
+
'karpenter.sh/capacity-type': [
|
|
1325
|
+
'on-demand',
|
|
1326
|
+
'spot'
|
|
1327
|
+
],
|
|
1328
|
+
'kubernetes.io/arch': [
|
|
1329
|
+
'amd64'
|
|
1330
|
+
],
|
|
1331
|
+
'cfke.io/instance-family': [],
|
|
1332
|
+
'topology.kubernetes.io/region': []
|
|
1333
|
+
}
|
|
1334
|
+
},
|
|
1335
|
+
scalingProfile: {
|
|
1336
|
+
type: 'string',
|
|
1337
|
+
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`).',
|
|
1338
|
+
default: 'conservative',
|
|
1339
|
+
example: 'conservative',
|
|
1340
|
+
enum: [
|
|
1341
|
+
'aggressive',
|
|
1342
|
+
'conservative'
|
|
1343
|
+
]
|
|
1344
|
+
},
|
|
798
1345
|
id: {
|
|
799
1346
|
type: 'string',
|
|
800
1347
|
maxLength: 63,
|
|
@@ -807,7 +1354,8 @@ export const FleetCreateInputSchema = {
|
|
|
807
1354
|
required: [
|
|
808
1355
|
'id'
|
|
809
1356
|
],
|
|
810
|
-
additionalProperties: false
|
|
1357
|
+
additionalProperties: false,
|
|
1358
|
+
description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
811
1359
|
};
|
|
812
1360
|
export const FleetSchema = {
|
|
813
1361
|
type: 'object',
|
|
@@ -816,15 +1364,12 @@ export const FleetSchema = {
|
|
|
816
1364
|
type: 'object',
|
|
817
1365
|
properties: {
|
|
818
1366
|
cpu: {
|
|
819
|
-
type: '
|
|
820
|
-
format: 'float',
|
|
1367
|
+
type: 'integer',
|
|
821
1368
|
minimum: 0,
|
|
822
|
-
|
|
1369
|
+
maximum: 100000,
|
|
1370
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
823
1371
|
}
|
|
824
1372
|
},
|
|
825
|
-
required: [
|
|
826
|
-
'cpu'
|
|
827
|
-
],
|
|
828
1373
|
additionalProperties: false,
|
|
829
1374
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
830
1375
|
},
|
|
@@ -832,16 +1377,17 @@ export const FleetSchema = {
|
|
|
832
1377
|
type: 'object',
|
|
833
1378
|
properties: {
|
|
834
1379
|
enabled: {
|
|
835
|
-
type: 'boolean'
|
|
836
|
-
default: true
|
|
1380
|
+
type: 'boolean'
|
|
837
1381
|
},
|
|
838
1382
|
project: {
|
|
839
1383
|
type: 'string',
|
|
840
|
-
|
|
1384
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1385
|
+
description: '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.',
|
|
1386
|
+
example: 'my-cloudfleet-project'
|
|
841
1387
|
}
|
|
842
1388
|
},
|
|
843
1389
|
required: [
|
|
844
|
-
'
|
|
1390
|
+
'enabled'
|
|
845
1391
|
],
|
|
846
1392
|
additionalProperties: false
|
|
847
1393
|
},
|
|
@@ -849,16 +1395,16 @@ export const FleetSchema = {
|
|
|
849
1395
|
type: 'object',
|
|
850
1396
|
properties: {
|
|
851
1397
|
enabled: {
|
|
852
|
-
type: 'boolean'
|
|
853
|
-
default: true
|
|
1398
|
+
type: 'boolean'
|
|
854
1399
|
},
|
|
855
1400
|
apiKey: {
|
|
856
1401
|
type: 'string',
|
|
857
|
-
|
|
1402
|
+
pattern: '^\\*{64}$',
|
|
1403
|
+
description: 'Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.'
|
|
858
1404
|
}
|
|
859
1405
|
},
|
|
860
1406
|
required: [
|
|
861
|
-
'
|
|
1407
|
+
'enabled'
|
|
862
1408
|
],
|
|
863
1409
|
additionalProperties: false
|
|
864
1410
|
},
|
|
@@ -866,19 +1412,325 @@ export const FleetSchema = {
|
|
|
866
1412
|
type: 'object',
|
|
867
1413
|
properties: {
|
|
868
1414
|
enabled: {
|
|
869
|
-
type: 'boolean'
|
|
870
|
-
default: true
|
|
1415
|
+
type: 'boolean'
|
|
871
1416
|
},
|
|
872
1417
|
controllerRoleArn: {
|
|
873
1418
|
type: 'string',
|
|
874
|
-
|
|
1419
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1420
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1421
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
875
1422
|
}
|
|
876
1423
|
},
|
|
877
1424
|
required: [
|
|
878
|
-
'
|
|
1425
|
+
'enabled'
|
|
879
1426
|
],
|
|
880
1427
|
additionalProperties: false
|
|
881
1428
|
},
|
|
1429
|
+
constraints: {
|
|
1430
|
+
type: 'object',
|
|
1431
|
+
properties: {
|
|
1432
|
+
'karpenter.sh/capacity-type': {
|
|
1433
|
+
type: 'array',
|
|
1434
|
+
items: {
|
|
1435
|
+
type: 'string',
|
|
1436
|
+
enum: [
|
|
1437
|
+
'on-demand',
|
|
1438
|
+
'spot'
|
|
1439
|
+
]
|
|
1440
|
+
},
|
|
1441
|
+
minItems: 1,
|
|
1442
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
1443
|
+
default: [
|
|
1444
|
+
'on-demand',
|
|
1445
|
+
'spot'
|
|
1446
|
+
]
|
|
1447
|
+
},
|
|
1448
|
+
'kubernetes.io/arch': {
|
|
1449
|
+
type: 'array',
|
|
1450
|
+
items: {
|
|
1451
|
+
type: 'string',
|
|
1452
|
+
enum: [
|
|
1453
|
+
'amd64',
|
|
1454
|
+
'arm64'
|
|
1455
|
+
]
|
|
1456
|
+
},
|
|
1457
|
+
minItems: 1,
|
|
1458
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
1459
|
+
default: [
|
|
1460
|
+
'amd64'
|
|
1461
|
+
]
|
|
1462
|
+
},
|
|
1463
|
+
'cfke.io/instance-family': {
|
|
1464
|
+
type: 'array',
|
|
1465
|
+
items: {
|
|
1466
|
+
type: 'string',
|
|
1467
|
+
enum: [
|
|
1468
|
+
'a1',
|
|
1469
|
+
'a2',
|
|
1470
|
+
'a3',
|
|
1471
|
+
'a4',
|
|
1472
|
+
'c1',
|
|
1473
|
+
'c2',
|
|
1474
|
+
'c2d',
|
|
1475
|
+
'c3',
|
|
1476
|
+
'c3d',
|
|
1477
|
+
'c4',
|
|
1478
|
+
'c4a',
|
|
1479
|
+
'c4d',
|
|
1480
|
+
'c5',
|
|
1481
|
+
'c5a',
|
|
1482
|
+
'c5ad',
|
|
1483
|
+
'c5d',
|
|
1484
|
+
'c5n',
|
|
1485
|
+
'c6a',
|
|
1486
|
+
'c6g',
|
|
1487
|
+
'c6gd',
|
|
1488
|
+
'c6gn',
|
|
1489
|
+
'c6i',
|
|
1490
|
+
'c6id',
|
|
1491
|
+
'c6in',
|
|
1492
|
+
'c7a',
|
|
1493
|
+
'c7g',
|
|
1494
|
+
'c7gd',
|
|
1495
|
+
'c7gn',
|
|
1496
|
+
'c7i',
|
|
1497
|
+
'c7i-flex',
|
|
1498
|
+
'c8g',
|
|
1499
|
+
'c8gd',
|
|
1500
|
+
'cax',
|
|
1501
|
+
'ccx',
|
|
1502
|
+
'cpx',
|
|
1503
|
+
'cx',
|
|
1504
|
+
'd2',
|
|
1505
|
+
'd3',
|
|
1506
|
+
'd3en',
|
|
1507
|
+
'dl1',
|
|
1508
|
+
'dl2q',
|
|
1509
|
+
'e2',
|
|
1510
|
+
'f1',
|
|
1511
|
+
'f2',
|
|
1512
|
+
'g1',
|
|
1513
|
+
'g2',
|
|
1514
|
+
'g4ad',
|
|
1515
|
+
'g4dn',
|
|
1516
|
+
'g5',
|
|
1517
|
+
'g5g',
|
|
1518
|
+
'g6',
|
|
1519
|
+
'g6e',
|
|
1520
|
+
'gr6',
|
|
1521
|
+
'h1',
|
|
1522
|
+
'h3',
|
|
1523
|
+
'hpc6a',
|
|
1524
|
+
'hpc6id',
|
|
1525
|
+
'hpc7a',
|
|
1526
|
+
'hpc7g',
|
|
1527
|
+
'i2',
|
|
1528
|
+
'i3',
|
|
1529
|
+
'i3en',
|
|
1530
|
+
'i4g',
|
|
1531
|
+
'i4i',
|
|
1532
|
+
'i7i',
|
|
1533
|
+
'i7ie',
|
|
1534
|
+
'i8g',
|
|
1535
|
+
'im4gn',
|
|
1536
|
+
'inf1',
|
|
1537
|
+
'inf2',
|
|
1538
|
+
'is4gen',
|
|
1539
|
+
'm1',
|
|
1540
|
+
'm2',
|
|
1541
|
+
'm3',
|
|
1542
|
+
'm4',
|
|
1543
|
+
'm5',
|
|
1544
|
+
'm5a',
|
|
1545
|
+
'm5ad',
|
|
1546
|
+
'm5d',
|
|
1547
|
+
'm5dn',
|
|
1548
|
+
'm5n',
|
|
1549
|
+
'm5zn',
|
|
1550
|
+
'm6a',
|
|
1551
|
+
'm6g',
|
|
1552
|
+
'm6gd',
|
|
1553
|
+
'm6i',
|
|
1554
|
+
'm6id',
|
|
1555
|
+
'm6idn',
|
|
1556
|
+
'm6in',
|
|
1557
|
+
'm7a',
|
|
1558
|
+
'm7g',
|
|
1559
|
+
'm7gd',
|
|
1560
|
+
'm7i',
|
|
1561
|
+
'm7i-flex',
|
|
1562
|
+
'm8g',
|
|
1563
|
+
'm8gd',
|
|
1564
|
+
'n1',
|
|
1565
|
+
'n2',
|
|
1566
|
+
'n2d',
|
|
1567
|
+
'n4',
|
|
1568
|
+
'p3',
|
|
1569
|
+
'p3dn',
|
|
1570
|
+
'p4d',
|
|
1571
|
+
'p4de',
|
|
1572
|
+
'p5',
|
|
1573
|
+
'p5e',
|
|
1574
|
+
'p5en',
|
|
1575
|
+
'p6-b200',
|
|
1576
|
+
'r3',
|
|
1577
|
+
'r4',
|
|
1578
|
+
'r5',
|
|
1579
|
+
'r5a',
|
|
1580
|
+
'r5ad',
|
|
1581
|
+
'r5b',
|
|
1582
|
+
'r5d',
|
|
1583
|
+
'r5dn',
|
|
1584
|
+
'r5n',
|
|
1585
|
+
'r6a',
|
|
1586
|
+
'r6g',
|
|
1587
|
+
'r6gd',
|
|
1588
|
+
'r6i',
|
|
1589
|
+
'r6id',
|
|
1590
|
+
'r6idn',
|
|
1591
|
+
'r6in',
|
|
1592
|
+
'r7a',
|
|
1593
|
+
'r7g',
|
|
1594
|
+
'r7gd',
|
|
1595
|
+
'r7i',
|
|
1596
|
+
'r7iz',
|
|
1597
|
+
'r8g',
|
|
1598
|
+
'r8gd',
|
|
1599
|
+
't2',
|
|
1600
|
+
't2a',
|
|
1601
|
+
't2d',
|
|
1602
|
+
't3',
|
|
1603
|
+
't3a',
|
|
1604
|
+
't4g',
|
|
1605
|
+
'trn1',
|
|
1606
|
+
'trn1n',
|
|
1607
|
+
'u-3tb1',
|
|
1608
|
+
'u-6tb1',
|
|
1609
|
+
'u7i-12tb',
|
|
1610
|
+
'u7i-6tb',
|
|
1611
|
+
'u7i-8tb',
|
|
1612
|
+
'u7in-16tb',
|
|
1613
|
+
'u7in-24tb',
|
|
1614
|
+
'u7in-32tb',
|
|
1615
|
+
'vt1',
|
|
1616
|
+
'x1',
|
|
1617
|
+
'x1e',
|
|
1618
|
+
'x2gd',
|
|
1619
|
+
'x2idn',
|
|
1620
|
+
'x2iedn',
|
|
1621
|
+
'x2iezn',
|
|
1622
|
+
'x4',
|
|
1623
|
+
'x8g',
|
|
1624
|
+
'z1d',
|
|
1625
|
+
'z3'
|
|
1626
|
+
]
|
|
1627
|
+
},
|
|
1628
|
+
description: 'Allowed values for `cfke.io/instance-family`.',
|
|
1629
|
+
default: []
|
|
1630
|
+
},
|
|
1631
|
+
'topology.kubernetes.io/region': {
|
|
1632
|
+
type: 'array',
|
|
1633
|
+
items: {
|
|
1634
|
+
type: 'string',
|
|
1635
|
+
enum: [
|
|
1636
|
+
'africa-south1',
|
|
1637
|
+
'ap-northeast-1',
|
|
1638
|
+
'ap-northeast-2',
|
|
1639
|
+
'ap-northeast-3',
|
|
1640
|
+
'ap-south-1',
|
|
1641
|
+
'ap-southeast-1',
|
|
1642
|
+
'ap-southeast-2',
|
|
1643
|
+
'ash',
|
|
1644
|
+
'asia-east1',
|
|
1645
|
+
'asia-east2',
|
|
1646
|
+
'asia-northeast1',
|
|
1647
|
+
'asia-northeast2',
|
|
1648
|
+
'asia-northeast3',
|
|
1649
|
+
'asia-south1',
|
|
1650
|
+
'asia-south2',
|
|
1651
|
+
'asia-southeast1',
|
|
1652
|
+
'asia-southeast2',
|
|
1653
|
+
'australia-southeast1',
|
|
1654
|
+
'australia-southeast2',
|
|
1655
|
+
'ca-central-1',
|
|
1656
|
+
'eu-central-1',
|
|
1657
|
+
'eu-central-2',
|
|
1658
|
+
'eu-north-1',
|
|
1659
|
+
'eu-west-1',
|
|
1660
|
+
'eu-west-2',
|
|
1661
|
+
'eu-west-3',
|
|
1662
|
+
'europe-central2',
|
|
1663
|
+
'europe-north1',
|
|
1664
|
+
'europe-southwest1',
|
|
1665
|
+
'europe-west1',
|
|
1666
|
+
'europe-west10',
|
|
1667
|
+
'europe-west12',
|
|
1668
|
+
'europe-west2',
|
|
1669
|
+
'europe-west3',
|
|
1670
|
+
'europe-west4',
|
|
1671
|
+
'europe-west6',
|
|
1672
|
+
'europe-west8',
|
|
1673
|
+
'europe-west9',
|
|
1674
|
+
'fsn1',
|
|
1675
|
+
'hel1',
|
|
1676
|
+
'hil',
|
|
1677
|
+
'me-central1',
|
|
1678
|
+
'me-central2',
|
|
1679
|
+
'me-west1',
|
|
1680
|
+
'nbg1',
|
|
1681
|
+
'northamerica-northeast1',
|
|
1682
|
+
'northamerica-northeast2',
|
|
1683
|
+
'sa-east-1',
|
|
1684
|
+
'sin',
|
|
1685
|
+
'southamerica-east1',
|
|
1686
|
+
'southamerica-west1',
|
|
1687
|
+
'us-central1',
|
|
1688
|
+
'us-east-1',
|
|
1689
|
+
'us-east-2',
|
|
1690
|
+
'us-east1',
|
|
1691
|
+
'us-east4',
|
|
1692
|
+
'us-east5',
|
|
1693
|
+
'us-south1',
|
|
1694
|
+
'us-west-1',
|
|
1695
|
+
'us-west-2',
|
|
1696
|
+
'us-west1',
|
|
1697
|
+
'us-west2',
|
|
1698
|
+
'us-west3',
|
|
1699
|
+
'us-west4'
|
|
1700
|
+
]
|
|
1701
|
+
},
|
|
1702
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.',
|
|
1703
|
+
default: []
|
|
1704
|
+
}
|
|
1705
|
+
},
|
|
1706
|
+
required: [
|
|
1707
|
+
'karpenter.sh/capacity-type',
|
|
1708
|
+
'kubernetes.io/arch'
|
|
1709
|
+
],
|
|
1710
|
+
additionalProperties: false,
|
|
1711
|
+
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.',
|
|
1712
|
+
default: {
|
|
1713
|
+
'karpenter.sh/capacity-type': [
|
|
1714
|
+
'on-demand',
|
|
1715
|
+
'spot'
|
|
1716
|
+
],
|
|
1717
|
+
'kubernetes.io/arch': [
|
|
1718
|
+
'amd64'
|
|
1719
|
+
],
|
|
1720
|
+
'cfke.io/instance-family': [],
|
|
1721
|
+
'topology.kubernetes.io/region': []
|
|
1722
|
+
}
|
|
1723
|
+
},
|
|
1724
|
+
scalingProfile: {
|
|
1725
|
+
type: 'string',
|
|
1726
|
+
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`).',
|
|
1727
|
+
default: 'conservative',
|
|
1728
|
+
example: 'conservative',
|
|
1729
|
+
enum: [
|
|
1730
|
+
'aggressive',
|
|
1731
|
+
'conservative'
|
|
1732
|
+
]
|
|
1733
|
+
},
|
|
882
1734
|
id: {
|
|
883
1735
|
type: 'string',
|
|
884
1736
|
maxLength: 63,
|
|
@@ -886,12 +1738,38 @@ export const FleetSchema = {
|
|
|
886
1738
|
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
887
1739
|
description: 'Unique identifier of the kubernetes fleet.',
|
|
888
1740
|
example: 'new-clouds-fleet'
|
|
1741
|
+
},
|
|
1742
|
+
ready: {
|
|
1743
|
+
type: 'boolean',
|
|
1744
|
+
description: 'Indicates whether the fleet configuration is healthy.',
|
|
1745
|
+
example: true
|
|
1746
|
+
},
|
|
1747
|
+
status_message: {
|
|
1748
|
+
type: 'string',
|
|
1749
|
+
description: 'Human-readable reason the fleet is not ready. Present only when `ready` is false.',
|
|
1750
|
+
example: 'Invalid provider permissions.'
|
|
1751
|
+
},
|
|
1752
|
+
created_at: {
|
|
1753
|
+
type: 'string',
|
|
1754
|
+
description: 'Creation date and time of the fleet.',
|
|
1755
|
+
example: '2024-09-12T09:11:27Z'
|
|
1756
|
+
},
|
|
1757
|
+
updated_at: {
|
|
1758
|
+
type: 'string',
|
|
1759
|
+
description: 'Date and time the fleet was last updated.',
|
|
1760
|
+
example: '2024-09-12T09:11:27Z'
|
|
889
1761
|
}
|
|
890
1762
|
},
|
|
891
1763
|
required: [
|
|
892
|
-
'
|
|
1764
|
+
'constraints',
|
|
1765
|
+
'scalingProfile',
|
|
1766
|
+
'id',
|
|
1767
|
+
'ready',
|
|
1768
|
+
'created_at',
|
|
1769
|
+
'updated_at'
|
|
893
1770
|
],
|
|
894
|
-
additionalProperties: false
|
|
1771
|
+
additionalProperties: false,
|
|
1772
|
+
description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
895
1773
|
};
|
|
896
1774
|
export const FleetUpdateInputSchema = {
|
|
897
1775
|
type: 'object',
|
|
@@ -900,15 +1778,12 @@ export const FleetUpdateInputSchema = {
|
|
|
900
1778
|
type: 'object',
|
|
901
1779
|
properties: {
|
|
902
1780
|
cpu: {
|
|
903
|
-
type: '
|
|
904
|
-
format: 'float',
|
|
1781
|
+
type: 'integer',
|
|
905
1782
|
minimum: 0,
|
|
906
|
-
|
|
1783
|
+
maximum: 100000,
|
|
1784
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
907
1785
|
}
|
|
908
1786
|
},
|
|
909
|
-
required: [
|
|
910
|
-
'cpu'
|
|
911
|
-
],
|
|
912
1787
|
additionalProperties: false,
|
|
913
1788
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
914
1789
|
},
|
|
@@ -916,16 +1791,17 @@ export const FleetUpdateInputSchema = {
|
|
|
916
1791
|
type: 'object',
|
|
917
1792
|
properties: {
|
|
918
1793
|
enabled: {
|
|
919
|
-
type: 'boolean'
|
|
920
|
-
default: true
|
|
1794
|
+
type: 'boolean'
|
|
921
1795
|
},
|
|
922
1796
|
project: {
|
|
923
1797
|
type: 'string',
|
|
924
|
-
|
|
1798
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1799
|
+
description: '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.',
|
|
1800
|
+
example: 'my-cloudfleet-project'
|
|
925
1801
|
}
|
|
926
1802
|
},
|
|
927
1803
|
required: [
|
|
928
|
-
'
|
|
1804
|
+
'enabled'
|
|
929
1805
|
],
|
|
930
1806
|
additionalProperties: false
|
|
931
1807
|
},
|
|
@@ -933,16 +1809,18 @@ export const FleetUpdateInputSchema = {
|
|
|
933
1809
|
type: 'object',
|
|
934
1810
|
properties: {
|
|
935
1811
|
enabled: {
|
|
936
|
-
type: 'boolean'
|
|
937
|
-
default: true
|
|
1812
|
+
type: 'boolean'
|
|
938
1813
|
},
|
|
939
1814
|
apiKey: {
|
|
940
1815
|
type: 'string',
|
|
941
|
-
|
|
1816
|
+
maxLength: 64,
|
|
1817
|
+
minLength: 64,
|
|
1818
|
+
pattern: '^([A-Za-z0-9]{64}|\\*{64})$',
|
|
1819
|
+
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.'
|
|
942
1820
|
}
|
|
943
1821
|
},
|
|
944
1822
|
required: [
|
|
945
|
-
'
|
|
1823
|
+
'enabled'
|
|
946
1824
|
],
|
|
947
1825
|
additionalProperties: false
|
|
948
1826
|
},
|
|
@@ -950,20 +1828,348 @@ export const FleetUpdateInputSchema = {
|
|
|
950
1828
|
type: 'object',
|
|
951
1829
|
properties: {
|
|
952
1830
|
enabled: {
|
|
953
|
-
type: 'boolean'
|
|
954
|
-
default: true
|
|
1831
|
+
type: 'boolean'
|
|
955
1832
|
},
|
|
956
1833
|
controllerRoleArn: {
|
|
957
1834
|
type: 'string',
|
|
958
|
-
|
|
1835
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1836
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1837
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
959
1838
|
}
|
|
960
1839
|
},
|
|
961
1840
|
required: [
|
|
962
|
-
'
|
|
1841
|
+
'enabled'
|
|
963
1842
|
],
|
|
964
1843
|
additionalProperties: false
|
|
1844
|
+
},
|
|
1845
|
+
constraints: {
|
|
1846
|
+
type: 'object',
|
|
1847
|
+
properties: {
|
|
1848
|
+
'karpenter.sh/capacity-type': {
|
|
1849
|
+
type: 'array',
|
|
1850
|
+
items: {
|
|
1851
|
+
type: 'string',
|
|
1852
|
+
enum: [
|
|
1853
|
+
'on-demand',
|
|
1854
|
+
'spot'
|
|
1855
|
+
]
|
|
1856
|
+
},
|
|
1857
|
+
minItems: 1,
|
|
1858
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
1859
|
+
default: [
|
|
1860
|
+
'on-demand',
|
|
1861
|
+
'spot'
|
|
1862
|
+
]
|
|
1863
|
+
},
|
|
1864
|
+
'kubernetes.io/arch': {
|
|
1865
|
+
type: 'array',
|
|
1866
|
+
items: {
|
|
1867
|
+
type: 'string',
|
|
1868
|
+
enum: [
|
|
1869
|
+
'amd64',
|
|
1870
|
+
'arm64'
|
|
1871
|
+
]
|
|
1872
|
+
},
|
|
1873
|
+
minItems: 1,
|
|
1874
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
1875
|
+
default: [
|
|
1876
|
+
'amd64'
|
|
1877
|
+
]
|
|
1878
|
+
},
|
|
1879
|
+
'cfke.io/instance-family': {
|
|
1880
|
+
type: 'array',
|
|
1881
|
+
items: {
|
|
1882
|
+
type: 'string',
|
|
1883
|
+
enum: [
|
|
1884
|
+
'a1',
|
|
1885
|
+
'a2',
|
|
1886
|
+
'a3',
|
|
1887
|
+
'a4',
|
|
1888
|
+
'c1',
|
|
1889
|
+
'c2',
|
|
1890
|
+
'c2d',
|
|
1891
|
+
'c3',
|
|
1892
|
+
'c3d',
|
|
1893
|
+
'c4',
|
|
1894
|
+
'c4a',
|
|
1895
|
+
'c4d',
|
|
1896
|
+
'c5',
|
|
1897
|
+
'c5a',
|
|
1898
|
+
'c5ad',
|
|
1899
|
+
'c5d',
|
|
1900
|
+
'c5n',
|
|
1901
|
+
'c6a',
|
|
1902
|
+
'c6g',
|
|
1903
|
+
'c6gd',
|
|
1904
|
+
'c6gn',
|
|
1905
|
+
'c6i',
|
|
1906
|
+
'c6id',
|
|
1907
|
+
'c6in',
|
|
1908
|
+
'c7a',
|
|
1909
|
+
'c7g',
|
|
1910
|
+
'c7gd',
|
|
1911
|
+
'c7gn',
|
|
1912
|
+
'c7i',
|
|
1913
|
+
'c7i-flex',
|
|
1914
|
+
'c8g',
|
|
1915
|
+
'c8gd',
|
|
1916
|
+
'cax',
|
|
1917
|
+
'ccx',
|
|
1918
|
+
'cpx',
|
|
1919
|
+
'cx',
|
|
1920
|
+
'd2',
|
|
1921
|
+
'd3',
|
|
1922
|
+
'd3en',
|
|
1923
|
+
'dl1',
|
|
1924
|
+
'dl2q',
|
|
1925
|
+
'e2',
|
|
1926
|
+
'f1',
|
|
1927
|
+
'f2',
|
|
1928
|
+
'g1',
|
|
1929
|
+
'g2',
|
|
1930
|
+
'g4ad',
|
|
1931
|
+
'g4dn',
|
|
1932
|
+
'g5',
|
|
1933
|
+
'g5g',
|
|
1934
|
+
'g6',
|
|
1935
|
+
'g6e',
|
|
1936
|
+
'gr6',
|
|
1937
|
+
'h1',
|
|
1938
|
+
'h3',
|
|
1939
|
+
'hpc6a',
|
|
1940
|
+
'hpc6id',
|
|
1941
|
+
'hpc7a',
|
|
1942
|
+
'hpc7g',
|
|
1943
|
+
'i2',
|
|
1944
|
+
'i3',
|
|
1945
|
+
'i3en',
|
|
1946
|
+
'i4g',
|
|
1947
|
+
'i4i',
|
|
1948
|
+
'i7i',
|
|
1949
|
+
'i7ie',
|
|
1950
|
+
'i8g',
|
|
1951
|
+
'im4gn',
|
|
1952
|
+
'inf1',
|
|
1953
|
+
'inf2',
|
|
1954
|
+
'is4gen',
|
|
1955
|
+
'm1',
|
|
1956
|
+
'm2',
|
|
1957
|
+
'm3',
|
|
1958
|
+
'm4',
|
|
1959
|
+
'm5',
|
|
1960
|
+
'm5a',
|
|
1961
|
+
'm5ad',
|
|
1962
|
+
'm5d',
|
|
1963
|
+
'm5dn',
|
|
1964
|
+
'm5n',
|
|
1965
|
+
'm5zn',
|
|
1966
|
+
'm6a',
|
|
1967
|
+
'm6g',
|
|
1968
|
+
'm6gd',
|
|
1969
|
+
'm6i',
|
|
1970
|
+
'm6id',
|
|
1971
|
+
'm6idn',
|
|
1972
|
+
'm6in',
|
|
1973
|
+
'm7a',
|
|
1974
|
+
'm7g',
|
|
1975
|
+
'm7gd',
|
|
1976
|
+
'm7i',
|
|
1977
|
+
'm7i-flex',
|
|
1978
|
+
'm8g',
|
|
1979
|
+
'm8gd',
|
|
1980
|
+
'n1',
|
|
1981
|
+
'n2',
|
|
1982
|
+
'n2d',
|
|
1983
|
+
'n4',
|
|
1984
|
+
'p3',
|
|
1985
|
+
'p3dn',
|
|
1986
|
+
'p4d',
|
|
1987
|
+
'p4de',
|
|
1988
|
+
'p5',
|
|
1989
|
+
'p5e',
|
|
1990
|
+
'p5en',
|
|
1991
|
+
'p6-b200',
|
|
1992
|
+
'r3',
|
|
1993
|
+
'r4',
|
|
1994
|
+
'r5',
|
|
1995
|
+
'r5a',
|
|
1996
|
+
'r5ad',
|
|
1997
|
+
'r5b',
|
|
1998
|
+
'r5d',
|
|
1999
|
+
'r5dn',
|
|
2000
|
+
'r5n',
|
|
2001
|
+
'r6a',
|
|
2002
|
+
'r6g',
|
|
2003
|
+
'r6gd',
|
|
2004
|
+
'r6i',
|
|
2005
|
+
'r6id',
|
|
2006
|
+
'r6idn',
|
|
2007
|
+
'r6in',
|
|
2008
|
+
'r7a',
|
|
2009
|
+
'r7g',
|
|
2010
|
+
'r7gd',
|
|
2011
|
+
'r7i',
|
|
2012
|
+
'r7iz',
|
|
2013
|
+
'r8g',
|
|
2014
|
+
'r8gd',
|
|
2015
|
+
't2',
|
|
2016
|
+
't2a',
|
|
2017
|
+
't2d',
|
|
2018
|
+
't3',
|
|
2019
|
+
't3a',
|
|
2020
|
+
't4g',
|
|
2021
|
+
'trn1',
|
|
2022
|
+
'trn1n',
|
|
2023
|
+
'u-3tb1',
|
|
2024
|
+
'u-6tb1',
|
|
2025
|
+
'u7i-12tb',
|
|
2026
|
+
'u7i-6tb',
|
|
2027
|
+
'u7i-8tb',
|
|
2028
|
+
'u7in-16tb',
|
|
2029
|
+
'u7in-24tb',
|
|
2030
|
+
'u7in-32tb',
|
|
2031
|
+
'vt1',
|
|
2032
|
+
'x1',
|
|
2033
|
+
'x1e',
|
|
2034
|
+
'x2gd',
|
|
2035
|
+
'x2idn',
|
|
2036
|
+
'x2iedn',
|
|
2037
|
+
'x2iezn',
|
|
2038
|
+
'x4',
|
|
2039
|
+
'x8g',
|
|
2040
|
+
'z1d',
|
|
2041
|
+
'z3'
|
|
2042
|
+
]
|
|
2043
|
+
},
|
|
2044
|
+
description: 'Allowed values for `cfke.io/instance-family`.',
|
|
2045
|
+
default: []
|
|
2046
|
+
},
|
|
2047
|
+
'topology.kubernetes.io/region': {
|
|
2048
|
+
type: 'array',
|
|
2049
|
+
items: {
|
|
2050
|
+
type: 'string',
|
|
2051
|
+
enum: [
|
|
2052
|
+
'africa-south1',
|
|
2053
|
+
'ap-northeast-1',
|
|
2054
|
+
'ap-northeast-2',
|
|
2055
|
+
'ap-northeast-3',
|
|
2056
|
+
'ap-south-1',
|
|
2057
|
+
'ap-southeast-1',
|
|
2058
|
+
'ap-southeast-2',
|
|
2059
|
+
'ash',
|
|
2060
|
+
'asia-east1',
|
|
2061
|
+
'asia-east2',
|
|
2062
|
+
'asia-northeast1',
|
|
2063
|
+
'asia-northeast2',
|
|
2064
|
+
'asia-northeast3',
|
|
2065
|
+
'asia-south1',
|
|
2066
|
+
'asia-south2',
|
|
2067
|
+
'asia-southeast1',
|
|
2068
|
+
'asia-southeast2',
|
|
2069
|
+
'australia-southeast1',
|
|
2070
|
+
'australia-southeast2',
|
|
2071
|
+
'ca-central-1',
|
|
2072
|
+
'eu-central-1',
|
|
2073
|
+
'eu-central-2',
|
|
2074
|
+
'eu-north-1',
|
|
2075
|
+
'eu-west-1',
|
|
2076
|
+
'eu-west-2',
|
|
2077
|
+
'eu-west-3',
|
|
2078
|
+
'europe-central2',
|
|
2079
|
+
'europe-north1',
|
|
2080
|
+
'europe-southwest1',
|
|
2081
|
+
'europe-west1',
|
|
2082
|
+
'europe-west10',
|
|
2083
|
+
'europe-west12',
|
|
2084
|
+
'europe-west2',
|
|
2085
|
+
'europe-west3',
|
|
2086
|
+
'europe-west4',
|
|
2087
|
+
'europe-west6',
|
|
2088
|
+
'europe-west8',
|
|
2089
|
+
'europe-west9',
|
|
2090
|
+
'fsn1',
|
|
2091
|
+
'hel1',
|
|
2092
|
+
'hil',
|
|
2093
|
+
'me-central1',
|
|
2094
|
+
'me-central2',
|
|
2095
|
+
'me-west1',
|
|
2096
|
+
'nbg1',
|
|
2097
|
+
'northamerica-northeast1',
|
|
2098
|
+
'northamerica-northeast2',
|
|
2099
|
+
'sa-east-1',
|
|
2100
|
+
'sin',
|
|
2101
|
+
'southamerica-east1',
|
|
2102
|
+
'southamerica-west1',
|
|
2103
|
+
'us-central1',
|
|
2104
|
+
'us-east-1',
|
|
2105
|
+
'us-east-2',
|
|
2106
|
+
'us-east1',
|
|
2107
|
+
'us-east4',
|
|
2108
|
+
'us-east5',
|
|
2109
|
+
'us-south1',
|
|
2110
|
+
'us-west-1',
|
|
2111
|
+
'us-west-2',
|
|
2112
|
+
'us-west1',
|
|
2113
|
+
'us-west2',
|
|
2114
|
+
'us-west3',
|
|
2115
|
+
'us-west4'
|
|
2116
|
+
]
|
|
2117
|
+
},
|
|
2118
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.',
|
|
2119
|
+
default: []
|
|
2120
|
+
}
|
|
2121
|
+
},
|
|
2122
|
+
additionalProperties: false,
|
|
2123
|
+
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.',
|
|
2124
|
+
default: {
|
|
2125
|
+
'karpenter.sh/capacity-type': [
|
|
2126
|
+
'on-demand',
|
|
2127
|
+
'spot'
|
|
2128
|
+
],
|
|
2129
|
+
'kubernetes.io/arch': [
|
|
2130
|
+
'amd64'
|
|
2131
|
+
],
|
|
2132
|
+
'cfke.io/instance-family': [],
|
|
2133
|
+
'topology.kubernetes.io/region': []
|
|
2134
|
+
}
|
|
2135
|
+
},
|
|
2136
|
+
scalingProfile: {
|
|
2137
|
+
type: 'string',
|
|
2138
|
+
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`).',
|
|
2139
|
+
default: 'conservative',
|
|
2140
|
+
example: 'conservative',
|
|
2141
|
+
enum: [
|
|
2142
|
+
'aggressive',
|
|
2143
|
+
'conservative'
|
|
2144
|
+
]
|
|
965
2145
|
}
|
|
966
2146
|
},
|
|
2147
|
+
additionalProperties: false,
|
|
2148
|
+
description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
2149
|
+
};
|
|
2150
|
+
export const InviteCreateInputSchema = {
|
|
2151
|
+
type: 'object',
|
|
2152
|
+
properties: {
|
|
2153
|
+
email: {
|
|
2154
|
+
type: 'string',
|
|
2155
|
+
format: 'email',
|
|
2156
|
+
description: 'Email address of the user to invite.',
|
|
2157
|
+
example: 'email@example.com'
|
|
2158
|
+
},
|
|
2159
|
+
role: {
|
|
2160
|
+
type: 'string',
|
|
2161
|
+
description: 'Role the invited user will be assigned on redemption. Can be \'Administrator\' or \'User\'.',
|
|
2162
|
+
default: 'User',
|
|
2163
|
+
example: 'User',
|
|
2164
|
+
enum: [
|
|
2165
|
+
'Administrator',
|
|
2166
|
+
'User'
|
|
2167
|
+
]
|
|
2168
|
+
}
|
|
2169
|
+
},
|
|
2170
|
+
required: [
|
|
2171
|
+
'email'
|
|
2172
|
+
],
|
|
967
2173
|
additionalProperties: false
|
|
968
2174
|
};
|
|
969
2175
|
export const InviteSchema = {
|
|
@@ -996,6 +2202,16 @@ export const InviteSchema = {
|
|
|
996
2202
|
type: 'string',
|
|
997
2203
|
description: 'Generated unique invite code.',
|
|
998
2204
|
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
2205
|
+
},
|
|
2206
|
+
role: {
|
|
2207
|
+
type: 'string',
|
|
2208
|
+
description: 'Role the invited user will be assigned on redemption. Can be \'Administrator\' or \'User\'.',
|
|
2209
|
+
default: 'User',
|
|
2210
|
+
example: 'User',
|
|
2211
|
+
enum: [
|
|
2212
|
+
'Administrator',
|
|
2213
|
+
'User'
|
|
2214
|
+
]
|
|
999
2215
|
}
|
|
1000
2216
|
},
|
|
1001
2217
|
required: [
|
|
@@ -1003,6 +2219,170 @@ export const InviteSchema = {
|
|
|
1003
2219
|
],
|
|
1004
2220
|
additionalProperties: false
|
|
1005
2221
|
};
|
|
2222
|
+
export const InvoicePaymentAttemptSchema = {
|
|
2223
|
+
type: 'object',
|
|
2224
|
+
properties: {
|
|
2225
|
+
invoice_id: {
|
|
2226
|
+
type: 'string',
|
|
2227
|
+
description: 'Identifier of the invoice.',
|
|
2228
|
+
example: 'in_1234567890xCrwxghOTj1234'
|
|
2229
|
+
},
|
|
2230
|
+
number: {
|
|
2231
|
+
type: 'string',
|
|
2232
|
+
nullable: true,
|
|
2233
|
+
description: 'Invoice number. Null if the invoice has no number.',
|
|
2234
|
+
example: 'CF-0042'
|
|
2235
|
+
},
|
|
2236
|
+
amount: {
|
|
2237
|
+
type: 'number',
|
|
2238
|
+
format: 'float',
|
|
2239
|
+
description: 'Amount outstanding when the charge was attempted, in the smallest currency unit.',
|
|
2240
|
+
example: 4200
|
|
2241
|
+
},
|
|
2242
|
+
currency: {
|
|
2243
|
+
type: 'string',
|
|
2244
|
+
description: 'Currency of the invoice.',
|
|
2245
|
+
example: 'eur'
|
|
2246
|
+
},
|
|
2247
|
+
status: {
|
|
2248
|
+
type: 'string',
|
|
2249
|
+
description: 'Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).',
|
|
2250
|
+
example: 'paid',
|
|
2251
|
+
enum: [
|
|
2252
|
+
'paid',
|
|
2253
|
+
'processing',
|
|
2254
|
+
'requires_action',
|
|
2255
|
+
'failed'
|
|
2256
|
+
]
|
|
2257
|
+
},
|
|
2258
|
+
client_secret: {
|
|
2259
|
+
type: 'string',
|
|
2260
|
+
nullable: true,
|
|
2261
|
+
description: 'Client secret used to complete customer authentication. Set only when `status` is `requires_action`.',
|
|
2262
|
+
example: 'pi_3MtwBwLkdIwHu7ix28a3tqPa_secret_YrKJUKribcBjcG8HVhfZluoGH'
|
|
2263
|
+
},
|
|
2264
|
+
failure_code: {
|
|
2265
|
+
type: 'string',
|
|
2266
|
+
nullable: true,
|
|
2267
|
+
description: 'Decline code. Set only when `status` is `failed`.',
|
|
2268
|
+
example: 'insufficient_funds'
|
|
2269
|
+
},
|
|
2270
|
+
failure_message: {
|
|
2271
|
+
type: 'string',
|
|
2272
|
+
nullable: true,
|
|
2273
|
+
description: 'Explanation of the decline, suitable for display. Set only when `status` is `failed`.',
|
|
2274
|
+
example: 'Your card has insufficient funds.'
|
|
2275
|
+
}
|
|
2276
|
+
},
|
|
2277
|
+
required: [
|
|
2278
|
+
'invoice_id',
|
|
2279
|
+
'number',
|
|
2280
|
+
'amount',
|
|
2281
|
+
'currency',
|
|
2282
|
+
'status',
|
|
2283
|
+
'client_secret',
|
|
2284
|
+
'failure_code',
|
|
2285
|
+
'failure_message'
|
|
2286
|
+
],
|
|
2287
|
+
additionalProperties: false
|
|
2288
|
+
};
|
|
2289
|
+
export const InvoicePaymentResultSchema = {
|
|
2290
|
+
type: 'object',
|
|
2291
|
+
properties: {
|
|
2292
|
+
code: {
|
|
2293
|
+
type: 'string',
|
|
2294
|
+
description: 'Overall outcome: `paid` (nothing outstanding), `processing` (all accepted, not yet settled), `action_required` (one or more await customer authentication), `partially_paid`, `failed`, `nothing_due`, or `bank_transfer_due` (the organization pays by bank transfer; nothing was charged).',
|
|
2295
|
+
example: 'partially_paid',
|
|
2296
|
+
enum: [
|
|
2297
|
+
'paid',
|
|
2298
|
+
'processing',
|
|
2299
|
+
'action_required',
|
|
2300
|
+
'partially_paid',
|
|
2301
|
+
'failed',
|
|
2302
|
+
'nothing_due',
|
|
2303
|
+
'bank_transfer_due'
|
|
2304
|
+
]
|
|
2305
|
+
},
|
|
2306
|
+
message: {
|
|
2307
|
+
type: 'string',
|
|
2308
|
+
description: 'Summary of the outcome, suitable for display.',
|
|
2309
|
+
example: '1 of 2 open invoices was paid. Invoice CF-0043 was declined: Your card has insufficient funds.'
|
|
2310
|
+
},
|
|
2311
|
+
results: {
|
|
2312
|
+
type: 'array',
|
|
2313
|
+
items: {
|
|
2314
|
+
type: 'object',
|
|
2315
|
+
properties: {
|
|
2316
|
+
invoice_id: {
|
|
2317
|
+
type: 'string',
|
|
2318
|
+
description: 'Identifier of the invoice.',
|
|
2319
|
+
example: 'in_1234567890xCrwxghOTj1234'
|
|
2320
|
+
},
|
|
2321
|
+
number: {
|
|
2322
|
+
type: 'string',
|
|
2323
|
+
description: 'Invoice number. Null if the invoice has no number.',
|
|
2324
|
+
example: 'CF-0042'
|
|
2325
|
+
},
|
|
2326
|
+
amount: {
|
|
2327
|
+
type: 'number',
|
|
2328
|
+
format: 'float',
|
|
2329
|
+
description: 'Amount outstanding when the charge was attempted, in the smallest currency unit.',
|
|
2330
|
+
example: 4200
|
|
2331
|
+
},
|
|
2332
|
+
currency: {
|
|
2333
|
+
type: 'string',
|
|
2334
|
+
description: 'Currency of the invoice.',
|
|
2335
|
+
example: 'eur'
|
|
2336
|
+
},
|
|
2337
|
+
status: {
|
|
2338
|
+
type: 'string',
|
|
2339
|
+
description: 'Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).',
|
|
2340
|
+
example: 'paid',
|
|
2341
|
+
enum: [
|
|
2342
|
+
'paid',
|
|
2343
|
+
'processing',
|
|
2344
|
+
'requires_action',
|
|
2345
|
+
'failed'
|
|
2346
|
+
]
|
|
2347
|
+
},
|
|
2348
|
+
client_secret: {
|
|
2349
|
+
type: 'string',
|
|
2350
|
+
description: 'Client secret used to complete customer authentication. Set only when `status` is `requires_action`.',
|
|
2351
|
+
example: 'pi_3MtwBwLkdIwHu7ix28a3tqPa_secret_YrKJUKribcBjcG8HVhfZluoGH'
|
|
2352
|
+
},
|
|
2353
|
+
failure_code: {
|
|
2354
|
+
type: 'string',
|
|
2355
|
+
description: 'Decline code. Set only when `status` is `failed`.',
|
|
2356
|
+
example: 'insufficient_funds'
|
|
2357
|
+
},
|
|
2358
|
+
failure_message: {
|
|
2359
|
+
type: 'string',
|
|
2360
|
+
description: 'Explanation of the decline, suitable for display. Set only when `status` is `failed`.',
|
|
2361
|
+
example: 'Your card has insufficient funds.'
|
|
2362
|
+
}
|
|
2363
|
+
},
|
|
2364
|
+
required: [
|
|
2365
|
+
'invoice_id',
|
|
2366
|
+
'number',
|
|
2367
|
+
'amount',
|
|
2368
|
+
'currency',
|
|
2369
|
+
'status',
|
|
2370
|
+
'client_secret',
|
|
2371
|
+
'failure_code',
|
|
2372
|
+
'failure_message'
|
|
2373
|
+
],
|
|
2374
|
+
additionalProperties: false
|
|
2375
|
+
},
|
|
2376
|
+
description: 'One entry per invoice charged, oldest first.'
|
|
2377
|
+
}
|
|
2378
|
+
},
|
|
2379
|
+
required: [
|
|
2380
|
+
'code',
|
|
2381
|
+
'message',
|
|
2382
|
+
'results'
|
|
2383
|
+
],
|
|
2384
|
+
additionalProperties: false
|
|
2385
|
+
};
|
|
1006
2386
|
export const InvoiceSchema = {
|
|
1007
2387
|
type: 'object',
|
|
1008
2388
|
properties: {
|
|
@@ -1216,6 +2596,15 @@ export const MarketplaceListingSchema = {
|
|
|
1216
2596
|
export const OrganizationCreateInputSchema = {
|
|
1217
2597
|
type: 'object',
|
|
1218
2598
|
properties: {
|
|
2599
|
+
type: {
|
|
2600
|
+
type: 'string',
|
|
2601
|
+
description: 'Type of the organization. `business` for legal entities, `personal` for individuals.',
|
|
2602
|
+
example: 'business',
|
|
2603
|
+
enum: [
|
|
2604
|
+
'business',
|
|
2605
|
+
'personal'
|
|
2606
|
+
]
|
|
2607
|
+
},
|
|
1219
2608
|
email: {
|
|
1220
2609
|
type: 'string',
|
|
1221
2610
|
format: 'email',
|
|
@@ -1224,11 +2613,13 @@ export const OrganizationCreateInputSchema = {
|
|
|
1224
2613
|
},
|
|
1225
2614
|
first_name: {
|
|
1226
2615
|
type: 'string',
|
|
2616
|
+
minLength: 1,
|
|
1227
2617
|
description: 'First name of the billing contact person.',
|
|
1228
2618
|
example: 'John'
|
|
1229
2619
|
},
|
|
1230
2620
|
last_name: {
|
|
1231
2621
|
type: 'string',
|
|
2622
|
+
minLength: 1,
|
|
1232
2623
|
description: 'Last name of the billing contact person.',
|
|
1233
2624
|
example: 'Doe'
|
|
1234
2625
|
},
|
|
@@ -1242,16 +2633,31 @@ export const OrganizationCreateInputSchema = {
|
|
|
1242
2633
|
},
|
|
1243
2634
|
password: {
|
|
1244
2635
|
type: 'string',
|
|
1245
|
-
minLength: 8,
|
|
1246
|
-
description: 'Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
|
|
2636
|
+
minLength: 8,
|
|
2637
|
+
description: 'Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
|
|
2638
|
+
}
|
|
2639
|
+
},
|
|
2640
|
+
required: [
|
|
2641
|
+
'type',
|
|
2642
|
+
'email',
|
|
2643
|
+
'first_name',
|
|
2644
|
+
'last_name',
|
|
2645
|
+
'company_name',
|
|
2646
|
+
'password'
|
|
2647
|
+
],
|
|
2648
|
+
additionalProperties: false
|
|
2649
|
+
};
|
|
2650
|
+
export const OrganizationCreateOutputSchema = {
|
|
2651
|
+
type: 'object',
|
|
2652
|
+
properties: {
|
|
2653
|
+
id: {
|
|
2654
|
+
type: 'string',
|
|
2655
|
+
description: 'Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.',
|
|
2656
|
+
example: 'organization-id'
|
|
1247
2657
|
}
|
|
1248
2658
|
},
|
|
1249
2659
|
required: [
|
|
1250
|
-
'
|
|
1251
|
-
'first_name',
|
|
1252
|
-
'last_name',
|
|
1253
|
-
'company_name',
|
|
1254
|
-
'password'
|
|
2660
|
+
'id'
|
|
1255
2661
|
],
|
|
1256
2662
|
additionalProperties: false
|
|
1257
2663
|
};
|
|
@@ -1271,6 +2677,15 @@ export const OrganizationSchema = {
|
|
|
1271
2677
|
description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
|
|
1272
2678
|
example: 'ACME Corp.'
|
|
1273
2679
|
},
|
|
2680
|
+
type: {
|
|
2681
|
+
type: 'string',
|
|
2682
|
+
description: 'Type of the organization. `business` for legal entities, `personal` for individuals.',
|
|
2683
|
+
example: 'business',
|
|
2684
|
+
enum: [
|
|
2685
|
+
'business',
|
|
2686
|
+
'personal'
|
|
2687
|
+
]
|
|
2688
|
+
},
|
|
1274
2689
|
date_created: {
|
|
1275
2690
|
type: 'string',
|
|
1276
2691
|
format: 'date-time',
|
|
@@ -1302,6 +2717,17 @@ export const OrganizationSchema = {
|
|
|
1302
2717
|
description: 'Available number of Pro clusters that can be created.',
|
|
1303
2718
|
example: 999
|
|
1304
2719
|
},
|
|
2720
|
+
enterprise_clusters_max: {
|
|
2721
|
+
type: 'integer',
|
|
2722
|
+
minimum: 0,
|
|
2723
|
+
description: 'Maximum number of Enterprise clusters that can be created.',
|
|
2724
|
+
example: 999
|
|
2725
|
+
},
|
|
2726
|
+
enterprise_clusters_available: {
|
|
2727
|
+
type: 'integer',
|
|
2728
|
+
description: 'Available number of Enterprise clusters that can be created.',
|
|
2729
|
+
example: 999
|
|
2730
|
+
},
|
|
1305
2731
|
fleets_max: {
|
|
1306
2732
|
type: 'integer',
|
|
1307
2733
|
minimum: 0,
|
|
@@ -1321,7 +2747,7 @@ export const OrganizationSchema = {
|
|
|
1321
2747
|
type: 'array',
|
|
1322
2748
|
items: {
|
|
1323
2749
|
type: 'string',
|
|
1324
|
-
example: 'northamerica-central-
|
|
2750
|
+
example: 'northamerica-central-1a'
|
|
1325
2751
|
},
|
|
1326
2752
|
minItems: 1,
|
|
1327
2753
|
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
@@ -1363,6 +2789,8 @@ export const OrganizationSchema = {
|
|
|
1363
2789
|
'basic_clusters_available',
|
|
1364
2790
|
'pro_clusters_max',
|
|
1365
2791
|
'pro_clusters_available',
|
|
2792
|
+
'enterprise_clusters_max',
|
|
2793
|
+
'enterprise_clusters_available',
|
|
1366
2794
|
'fleets_max',
|
|
1367
2795
|
'cluster_tiers',
|
|
1368
2796
|
'regions',
|
|
@@ -1380,13 +2808,25 @@ export const OrganizationSchema = {
|
|
|
1380
2808
|
'closed',
|
|
1381
2809
|
'suspended'
|
|
1382
2810
|
]
|
|
2811
|
+
},
|
|
2812
|
+
verification: {
|
|
2813
|
+
type: 'string',
|
|
2814
|
+
description: '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.',
|
|
2815
|
+
example: 'verified',
|
|
2816
|
+
enum: [
|
|
2817
|
+
'none',
|
|
2818
|
+
'submitted',
|
|
2819
|
+
'verified'
|
|
2820
|
+
]
|
|
1383
2821
|
}
|
|
1384
2822
|
},
|
|
1385
2823
|
required: [
|
|
1386
2824
|
'id',
|
|
2825
|
+
'type',
|
|
1387
2826
|
'date_created',
|
|
1388
2827
|
'quota',
|
|
1389
|
-
'status'
|
|
2828
|
+
'status',
|
|
2829
|
+
'verification'
|
|
1390
2830
|
],
|
|
1391
2831
|
additionalProperties: false
|
|
1392
2832
|
};
|
|
@@ -1395,28 +2835,23 @@ export const PaymentMethodSchema = {
|
|
|
1395
2835
|
properties: {
|
|
1396
2836
|
id: {
|
|
1397
2837
|
type: 'string',
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
1401
|
-
},
|
|
1402
|
-
setup: {
|
|
1403
|
-
type: 'boolean',
|
|
1404
|
-
description: 'Whether organization payment method was set up and ready to use for payments.',
|
|
1405
|
-
example: true
|
|
2838
|
+
description: '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.',
|
|
2839
|
+
example: 'pm_1MtwBwLkdIwHu7ix28a3tqPa'
|
|
1406
2840
|
},
|
|
1407
2841
|
type: {
|
|
1408
2842
|
type: 'string',
|
|
1409
|
-
|
|
1410
|
-
description: 'Payment method type type. Only `card` payments supported at the moment.',
|
|
2843
|
+
description: 'Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.',
|
|
1411
2844
|
example: 'card',
|
|
1412
2845
|
enum: [
|
|
1413
|
-
'card'
|
|
2846
|
+
'card',
|
|
2847
|
+
'sepa_debit',
|
|
2848
|
+
'bank_transfer'
|
|
1414
2849
|
]
|
|
1415
2850
|
},
|
|
1416
2851
|
last4: {
|
|
1417
2852
|
type: 'string',
|
|
1418
2853
|
nullable: true,
|
|
1419
|
-
description: 'Last 4 digits of the payment card number.',
|
|
2854
|
+
description: '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.',
|
|
1420
2855
|
example: '4242'
|
|
1421
2856
|
},
|
|
1422
2857
|
exp_month: {
|
|
@@ -1424,42 +2859,56 @@ export const PaymentMethodSchema = {
|
|
|
1424
2859
|
minimum: 1,
|
|
1425
2860
|
maximum: 12,
|
|
1426
2861
|
nullable: true,
|
|
1427
|
-
description: 'Two-digit number representing the card\'s expiration month.',
|
|
1428
|
-
example:
|
|
2862
|
+
description: 'Two-digit number representing the card\'s expiration month. Null for SEPA Direct Debit and bank transfer.',
|
|
2863
|
+
example: 12
|
|
1429
2864
|
},
|
|
1430
2865
|
exp_year: {
|
|
1431
2866
|
type: 'integer',
|
|
1432
|
-
minimum: 2024,
|
|
1433
2867
|
nullable: true,
|
|
1434
|
-
description: 'Four-digit number representing the card\'s expiration year.',
|
|
1435
|
-
example:
|
|
2868
|
+
description: '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.',
|
|
2869
|
+
example: 2028
|
|
1436
2870
|
},
|
|
1437
2871
|
brand: {
|
|
1438
2872
|
type: 'string',
|
|
1439
2873
|
nullable: true,
|
|
1440
|
-
description: 'Payment card brand
|
|
1441
|
-
example: 'visa'
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
2874
|
+
description: 'Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.',
|
|
2875
|
+
example: 'visa'
|
|
2876
|
+
},
|
|
2877
|
+
iban: {
|
|
2878
|
+
type: 'string',
|
|
2879
|
+
nullable: true,
|
|
2880
|
+
description: '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.',
|
|
2881
|
+
example: 'DE11243015658023127510'
|
|
2882
|
+
},
|
|
2883
|
+
bic: {
|
|
2884
|
+
type: 'string',
|
|
2885
|
+
nullable: true,
|
|
2886
|
+
description: 'BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.',
|
|
2887
|
+
example: 'SOGEDEFFXXX'
|
|
2888
|
+
},
|
|
2889
|
+
account_holder_name: {
|
|
2890
|
+
type: 'string',
|
|
2891
|
+
nullable: true,
|
|
2892
|
+
description: 'Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.',
|
|
2893
|
+
example: 'Cloudfleet GmbH'
|
|
2894
|
+
},
|
|
2895
|
+
is_default: {
|
|
2896
|
+
type: 'boolean',
|
|
2897
|
+
description: '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).',
|
|
2898
|
+
example: true
|
|
1453
2899
|
}
|
|
1454
2900
|
},
|
|
1455
2901
|
required: [
|
|
1456
2902
|
'id',
|
|
1457
|
-
'setup',
|
|
1458
2903
|
'type',
|
|
1459
2904
|
'last4',
|
|
1460
2905
|
'exp_month',
|
|
1461
2906
|
'exp_year',
|
|
1462
|
-
'brand'
|
|
2907
|
+
'brand',
|
|
2908
|
+
'iban',
|
|
2909
|
+
'bic',
|
|
2910
|
+
'account_holder_name',
|
|
2911
|
+
'is_default'
|
|
1463
2912
|
],
|
|
1464
2913
|
additionalProperties: false
|
|
1465
2914
|
};
|
|
@@ -1488,6 +2937,17 @@ export const PlatformQuotaSchema = {
|
|
|
1488
2937
|
description: 'Available number of Pro clusters that can be created.',
|
|
1489
2938
|
example: 999
|
|
1490
2939
|
},
|
|
2940
|
+
enterprise_clusters_max: {
|
|
2941
|
+
type: 'integer',
|
|
2942
|
+
minimum: 0,
|
|
2943
|
+
description: 'Maximum number of Enterprise clusters that can be created.',
|
|
2944
|
+
example: 999
|
|
2945
|
+
},
|
|
2946
|
+
enterprise_clusters_available: {
|
|
2947
|
+
type: 'integer',
|
|
2948
|
+
description: 'Available number of Enterprise clusters that can be created.',
|
|
2949
|
+
example: 999
|
|
2950
|
+
},
|
|
1491
2951
|
fleets_max: {
|
|
1492
2952
|
type: 'integer',
|
|
1493
2953
|
minimum: 0,
|
|
@@ -1507,7 +2967,7 @@ export const PlatformQuotaSchema = {
|
|
|
1507
2967
|
type: 'array',
|
|
1508
2968
|
items: {
|
|
1509
2969
|
type: 'string',
|
|
1510
|
-
example: 'northamerica-central-
|
|
2970
|
+
example: 'northamerica-central-1a'
|
|
1511
2971
|
},
|
|
1512
2972
|
minItems: 1,
|
|
1513
2973
|
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
@@ -1549,6 +3009,8 @@ export const PlatformQuotaSchema = {
|
|
|
1549
3009
|
'basic_clusters_available',
|
|
1550
3010
|
'pro_clusters_max',
|
|
1551
3011
|
'pro_clusters_available',
|
|
3012
|
+
'enterprise_clusters_max',
|
|
3013
|
+
'enterprise_clusters_available',
|
|
1552
3014
|
'fleets_max',
|
|
1553
3015
|
'cluster_tiers',
|
|
1554
3016
|
'regions',
|
|
@@ -1822,6 +3284,329 @@ export const RegistryTagSchema = {
|
|
|
1822
3284
|
],
|
|
1823
3285
|
additionalProperties: false
|
|
1824
3286
|
};
|
|
3287
|
+
export const TicketAttachmentSchema = {
|
|
3288
|
+
type: 'object',
|
|
3289
|
+
properties: {
|
|
3290
|
+
id: {
|
|
3291
|
+
type: 'string',
|
|
3292
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3293
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
3294
|
+
},
|
|
3295
|
+
filename: {
|
|
3296
|
+
type: 'string',
|
|
3297
|
+
description: 'Original filename as uploaded.',
|
|
3298
|
+
example: 'debug.log'
|
|
3299
|
+
},
|
|
3300
|
+
content_type: {
|
|
3301
|
+
type: 'string',
|
|
3302
|
+
description: 'MIME content type of the attachment.',
|
|
3303
|
+
example: 'text/plain'
|
|
3304
|
+
},
|
|
3305
|
+
size: {
|
|
3306
|
+
type: 'integer',
|
|
3307
|
+
description: 'Size of the attachment in bytes.',
|
|
3308
|
+
example: 12345
|
|
3309
|
+
}
|
|
3310
|
+
},
|
|
3311
|
+
required: [
|
|
3312
|
+
'id',
|
|
3313
|
+
'filename',
|
|
3314
|
+
'content_type',
|
|
3315
|
+
'size'
|
|
3316
|
+
],
|
|
3317
|
+
additionalProperties: false
|
|
3318
|
+
};
|
|
3319
|
+
export const TicketCreateInputSchema = {
|
|
3320
|
+
type: 'object',
|
|
3321
|
+
properties: {
|
|
3322
|
+
category: {
|
|
3323
|
+
type: 'string',
|
|
3324
|
+
description: 'Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.',
|
|
3325
|
+
example: 'technical',
|
|
3326
|
+
enum: [
|
|
3327
|
+
'billing',
|
|
3328
|
+
'technical',
|
|
3329
|
+
'general'
|
|
3330
|
+
]
|
|
3331
|
+
},
|
|
3332
|
+
body: {
|
|
3333
|
+
type: 'string',
|
|
3334
|
+
maxLength: 50000,
|
|
3335
|
+
minLength: 1,
|
|
3336
|
+
pattern: '\\S',
|
|
3337
|
+
description: 'Initial message body in markdown. There is no separate subject — the first message body is the description.',
|
|
3338
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
3339
|
+
},
|
|
3340
|
+
properties: {
|
|
3341
|
+
type: 'object',
|
|
3342
|
+
additionalProperties: true,
|
|
3343
|
+
description: 'Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).',
|
|
3344
|
+
example: {
|
|
3345
|
+
subcategory: 'cluster-question',
|
|
3346
|
+
cluster_id: '60c72b2f9f1b2c001f8e4d3a'
|
|
3347
|
+
}
|
|
3348
|
+
}
|
|
3349
|
+
},
|
|
3350
|
+
required: [
|
|
3351
|
+
'category',
|
|
3352
|
+
'body'
|
|
3353
|
+
],
|
|
3354
|
+
additionalProperties: false
|
|
3355
|
+
};
|
|
3356
|
+
export const TicketMessageInputSchema = {
|
|
3357
|
+
type: 'object',
|
|
3358
|
+
properties: {
|
|
3359
|
+
body: {
|
|
3360
|
+
type: 'string',
|
|
3361
|
+
maxLength: 50000,
|
|
3362
|
+
minLength: 1,
|
|
3363
|
+
pattern: '\\S',
|
|
3364
|
+
description: 'Reply body in markdown.',
|
|
3365
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3366
|
+
}
|
|
3367
|
+
},
|
|
3368
|
+
required: [
|
|
3369
|
+
'body'
|
|
3370
|
+
],
|
|
3371
|
+
additionalProperties: false
|
|
3372
|
+
};
|
|
3373
|
+
export const TicketMessageSchema = {
|
|
3374
|
+
type: 'object',
|
|
3375
|
+
properties: {
|
|
3376
|
+
id: {
|
|
3377
|
+
type: 'string',
|
|
3378
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
3379
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
3380
|
+
},
|
|
3381
|
+
type: {
|
|
3382
|
+
type: 'string',
|
|
3383
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
3384
|
+
example: 'customer_reply',
|
|
3385
|
+
enum: [
|
|
3386
|
+
'customer_reply',
|
|
3387
|
+
'agent_reply'
|
|
3388
|
+
]
|
|
3389
|
+
},
|
|
3390
|
+
body: {
|
|
3391
|
+
type: 'string',
|
|
3392
|
+
description: 'Message body in markdown.',
|
|
3393
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3394
|
+
},
|
|
3395
|
+
author_first_name: {
|
|
3396
|
+
type: 'string',
|
|
3397
|
+
nullable: true,
|
|
3398
|
+
description: 'First name of the author. Null when not provided.',
|
|
3399
|
+
example: 'Jane'
|
|
3400
|
+
},
|
|
3401
|
+
author_last_name: {
|
|
3402
|
+
type: 'string',
|
|
3403
|
+
nullable: true,
|
|
3404
|
+
description: 'Last name of the author. Null when not provided.',
|
|
3405
|
+
example: 'Doe'
|
|
3406
|
+
},
|
|
3407
|
+
attachments: {
|
|
3408
|
+
type: 'array',
|
|
3409
|
+
items: {
|
|
3410
|
+
type: 'object',
|
|
3411
|
+
properties: {
|
|
3412
|
+
id: {
|
|
3413
|
+
type: 'string',
|
|
3414
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3415
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
3416
|
+
},
|
|
3417
|
+
filename: {
|
|
3418
|
+
type: 'string',
|
|
3419
|
+
description: 'Original filename as uploaded.',
|
|
3420
|
+
example: 'debug.log'
|
|
3421
|
+
},
|
|
3422
|
+
content_type: {
|
|
3423
|
+
type: 'string',
|
|
3424
|
+
description: 'MIME content type of the attachment.',
|
|
3425
|
+
example: 'text/plain'
|
|
3426
|
+
},
|
|
3427
|
+
size: {
|
|
3428
|
+
type: 'integer',
|
|
3429
|
+
description: 'Size of the attachment in bytes.',
|
|
3430
|
+
example: 12345
|
|
3431
|
+
}
|
|
3432
|
+
},
|
|
3433
|
+
required: [
|
|
3434
|
+
'id',
|
|
3435
|
+
'filename',
|
|
3436
|
+
'content_type',
|
|
3437
|
+
'size'
|
|
3438
|
+
],
|
|
3439
|
+
additionalProperties: false
|
|
3440
|
+
},
|
|
3441
|
+
description: 'Attachments associated with this message.',
|
|
3442
|
+
example: []
|
|
3443
|
+
},
|
|
3444
|
+
date_created: {
|
|
3445
|
+
type: 'string',
|
|
3446
|
+
format: 'date-time',
|
|
3447
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3448
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3449
|
+
}
|
|
3450
|
+
},
|
|
3451
|
+
required: [
|
|
3452
|
+
'id',
|
|
3453
|
+
'type',
|
|
3454
|
+
'body',
|
|
3455
|
+
'date_created'
|
|
3456
|
+
],
|
|
3457
|
+
additionalProperties: false
|
|
3458
|
+
};
|
|
3459
|
+
export const TicketSchema = {
|
|
3460
|
+
type: 'object',
|
|
3461
|
+
properties: {
|
|
3462
|
+
id: {
|
|
3463
|
+
type: 'string',
|
|
3464
|
+
description: 'Unique identifier of the ticket (Mongo ObjectId).',
|
|
3465
|
+
example: '60c72b2f9f1b2c001f8e4d3a'
|
|
3466
|
+
},
|
|
3467
|
+
status: {
|
|
3468
|
+
type: 'string',
|
|
3469
|
+
description: 'Current state of the ticket.',
|
|
3470
|
+
example: 'waiting_on_us',
|
|
3471
|
+
enum: [
|
|
3472
|
+
'waiting_on_us',
|
|
3473
|
+
'waiting_on_user',
|
|
3474
|
+
'closed'
|
|
3475
|
+
]
|
|
3476
|
+
},
|
|
3477
|
+
category: {
|
|
3478
|
+
type: 'string',
|
|
3479
|
+
description: 'Ticket category.',
|
|
3480
|
+
example: 'technical',
|
|
3481
|
+
enum: [
|
|
3482
|
+
'billing',
|
|
3483
|
+
'technical',
|
|
3484
|
+
'general'
|
|
3485
|
+
]
|
|
3486
|
+
},
|
|
3487
|
+
summary: {
|
|
3488
|
+
type: 'string',
|
|
3489
|
+
description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
|
|
3490
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
3491
|
+
},
|
|
3492
|
+
closed_at: {
|
|
3493
|
+
type: 'string',
|
|
3494
|
+
format: 'date-time',
|
|
3495
|
+
nullable: true,
|
|
3496
|
+
description: 'Closure timestamp. Null while the ticket is open.',
|
|
3497
|
+
example: '2026-05-18T16:08:14.338Z'
|
|
3498
|
+
},
|
|
3499
|
+
date_created: {
|
|
3500
|
+
type: 'string',
|
|
3501
|
+
format: 'date-time',
|
|
3502
|
+
description: 'Creation date of the ticket. ISO 8601 UTC.',
|
|
3503
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3504
|
+
},
|
|
3505
|
+
date_updated: {
|
|
3506
|
+
type: 'string',
|
|
3507
|
+
format: 'date-time',
|
|
3508
|
+
description: 'Last update date of the ticket. ISO 8601 UTC.',
|
|
3509
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3510
|
+
},
|
|
3511
|
+
messages: {
|
|
3512
|
+
type: 'array',
|
|
3513
|
+
items: {
|
|
3514
|
+
type: 'object',
|
|
3515
|
+
properties: {
|
|
3516
|
+
id: {
|
|
3517
|
+
type: 'string',
|
|
3518
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
3519
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
3520
|
+
},
|
|
3521
|
+
type: {
|
|
3522
|
+
type: 'string',
|
|
3523
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
3524
|
+
example: 'customer_reply',
|
|
3525
|
+
enum: [
|
|
3526
|
+
'customer_reply',
|
|
3527
|
+
'agent_reply'
|
|
3528
|
+
]
|
|
3529
|
+
},
|
|
3530
|
+
body: {
|
|
3531
|
+
type: 'string',
|
|
3532
|
+
description: 'Message body in markdown.',
|
|
3533
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3534
|
+
},
|
|
3535
|
+
author_first_name: {
|
|
3536
|
+
type: 'string',
|
|
3537
|
+
description: 'First name of the author. Null when not provided.',
|
|
3538
|
+
example: 'Jane'
|
|
3539
|
+
},
|
|
3540
|
+
author_last_name: {
|
|
3541
|
+
type: 'string',
|
|
3542
|
+
description: 'Last name of the author. Null when not provided.',
|
|
3543
|
+
example: 'Doe'
|
|
3544
|
+
},
|
|
3545
|
+
attachments: {
|
|
3546
|
+
type: 'array',
|
|
3547
|
+
items: {
|
|
3548
|
+
type: 'object',
|
|
3549
|
+
properties: {
|
|
3550
|
+
id: {
|
|
3551
|
+
type: 'string',
|
|
3552
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3553
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
3554
|
+
},
|
|
3555
|
+
filename: {
|
|
3556
|
+
type: 'string',
|
|
3557
|
+
description: 'Original filename as uploaded.',
|
|
3558
|
+
example: 'debug.log'
|
|
3559
|
+
},
|
|
3560
|
+
content_type: {
|
|
3561
|
+
type: 'string',
|
|
3562
|
+
description: 'MIME content type of the attachment.',
|
|
3563
|
+
example: 'text/plain'
|
|
3564
|
+
},
|
|
3565
|
+
size: {
|
|
3566
|
+
type: 'integer',
|
|
3567
|
+
description: 'Size of the attachment in bytes.',
|
|
3568
|
+
example: 12345
|
|
3569
|
+
}
|
|
3570
|
+
},
|
|
3571
|
+
required: [
|
|
3572
|
+
'id',
|
|
3573
|
+
'filename',
|
|
3574
|
+
'content_type',
|
|
3575
|
+
'size'
|
|
3576
|
+
],
|
|
3577
|
+
additionalProperties: false
|
|
3578
|
+
},
|
|
3579
|
+
description: 'Attachments associated with this message.',
|
|
3580
|
+
example: []
|
|
3581
|
+
},
|
|
3582
|
+
date_created: {
|
|
3583
|
+
type: 'string',
|
|
3584
|
+
format: 'date-time',
|
|
3585
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3586
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3587
|
+
}
|
|
3588
|
+
},
|
|
3589
|
+
required: [
|
|
3590
|
+
'id',
|
|
3591
|
+
'type',
|
|
3592
|
+
'body',
|
|
3593
|
+
'date_created'
|
|
3594
|
+
],
|
|
3595
|
+
additionalProperties: false
|
|
3596
|
+
},
|
|
3597
|
+
description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
|
|
3598
|
+
}
|
|
3599
|
+
},
|
|
3600
|
+
required: [
|
|
3601
|
+
'id',
|
|
3602
|
+
'status',
|
|
3603
|
+
'category',
|
|
3604
|
+
'summary',
|
|
3605
|
+
'date_created',
|
|
3606
|
+
'date_updated'
|
|
3607
|
+
],
|
|
3608
|
+
additionalProperties: false
|
|
3609
|
+
};
|
|
1825
3610
|
export const TokenCreateInputSchema = {
|
|
1826
3611
|
type: 'object',
|
|
1827
3612
|
properties: {
|
|
@@ -1932,12 +3717,21 @@ export const UsageFacetsSchema = {
|
|
|
1932
3717
|
product: {
|
|
1933
3718
|
type: 'array',
|
|
1934
3719
|
items: {
|
|
1935
|
-
type: 'string'
|
|
3720
|
+
type: 'string',
|
|
3721
|
+
enum: [
|
|
3722
|
+
'cfke_controlplane_basic',
|
|
3723
|
+
'cfke_controlplane_pro',
|
|
3724
|
+
'cfke_controlplane_enterprise',
|
|
3725
|
+
'cfke_connected_nodes_basic',
|
|
3726
|
+
'cfke_connected_nodes_pro',
|
|
3727
|
+
'cfke_connected_nodes_enterprise',
|
|
3728
|
+
'cfcr_storage'
|
|
3729
|
+
]
|
|
1936
3730
|
},
|
|
1937
3731
|
description: 'List of unique products',
|
|
1938
3732
|
example: [
|
|
1939
|
-
'
|
|
1940
|
-
'
|
|
3733
|
+
'cfke_controlplane_pro',
|
|
3734
|
+
'cfke_connected_nodes_pro'
|
|
1941
3735
|
]
|
|
1942
3736
|
}
|
|
1943
3737
|
},
|
|
@@ -1964,7 +3758,16 @@ export const UsageResponseSchema = {
|
|
|
1964
3758
|
product: {
|
|
1965
3759
|
type: 'string',
|
|
1966
3760
|
description: 'The product the usage is associated with',
|
|
1967
|
-
example: '
|
|
3761
|
+
example: 'cfke_controlplane_pro',
|
|
3762
|
+
enum: [
|
|
3763
|
+
'cfke_controlplane_basic',
|
|
3764
|
+
'cfke_controlplane_pro',
|
|
3765
|
+
'cfke_controlplane_enterprise',
|
|
3766
|
+
'cfke_connected_nodes_basic',
|
|
3767
|
+
'cfke_connected_nodes_pro',
|
|
3768
|
+
'cfke_connected_nodes_enterprise',
|
|
3769
|
+
'cfcr_storage'
|
|
3770
|
+
]
|
|
1968
3771
|
},
|
|
1969
3772
|
value: {
|
|
1970
3773
|
type: 'number',
|
|
@@ -2012,12 +3815,21 @@ export const UsageResponseSchema = {
|
|
|
2012
3815
|
product: {
|
|
2013
3816
|
type: 'array',
|
|
2014
3817
|
items: {
|
|
2015
|
-
type: 'string'
|
|
3818
|
+
type: 'string',
|
|
3819
|
+
enum: [
|
|
3820
|
+
'cfke_controlplane_basic',
|
|
3821
|
+
'cfke_controlplane_pro',
|
|
3822
|
+
'cfke_controlplane_enterprise',
|
|
3823
|
+
'cfke_connected_nodes_basic',
|
|
3824
|
+
'cfke_connected_nodes_pro',
|
|
3825
|
+
'cfke_connected_nodes_enterprise',
|
|
3826
|
+
'cfcr_storage'
|
|
3827
|
+
]
|
|
2016
3828
|
},
|
|
2017
3829
|
description: 'List of unique products',
|
|
2018
3830
|
example: [
|
|
2019
|
-
'
|
|
2020
|
-
'
|
|
3831
|
+
'cfke_controlplane_pro',
|
|
3832
|
+
'cfke_connected_nodes_pro'
|
|
2021
3833
|
]
|
|
2022
3834
|
}
|
|
2023
3835
|
},
|
|
@@ -2047,7 +3859,16 @@ export const UsageSchema = {
|
|
|
2047
3859
|
product: {
|
|
2048
3860
|
type: 'string',
|
|
2049
3861
|
description: 'The product the usage is associated with',
|
|
2050
|
-
example: '
|
|
3862
|
+
example: 'cfke_controlplane_pro',
|
|
3863
|
+
enum: [
|
|
3864
|
+
'cfke_controlplane_basic',
|
|
3865
|
+
'cfke_controlplane_pro',
|
|
3866
|
+
'cfke_controlplane_enterprise',
|
|
3867
|
+
'cfke_connected_nodes_basic',
|
|
3868
|
+
'cfke_connected_nodes_pro',
|
|
3869
|
+
'cfke_connected_nodes_enterprise',
|
|
3870
|
+
'cfcr_storage'
|
|
3871
|
+
]
|
|
2051
3872
|
},
|
|
2052
3873
|
value: {
|
|
2053
3874
|
type: 'number',
|
|
@@ -2110,24 +3931,6 @@ export const UserCreateInputSchema = {
|
|
|
2110
3931
|
type: 'string',
|
|
2111
3932
|
minLength: 8,
|
|
2112
3933
|
description: 'User password. Must be at least 8 characters long.'
|
|
2113
|
-
},
|
|
2114
|
-
status: {
|
|
2115
|
-
type: 'string',
|
|
2116
|
-
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
2117
|
-
example: 'active',
|
|
2118
|
-
enum: [
|
|
2119
|
-
'active',
|
|
2120
|
-
'inactive'
|
|
2121
|
-
]
|
|
2122
|
-
},
|
|
2123
|
-
role: {
|
|
2124
|
-
type: 'string',
|
|
2125
|
-
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
2126
|
-
example: 'User',
|
|
2127
|
-
enum: [
|
|
2128
|
-
'Administrator',
|
|
2129
|
-
'User'
|
|
2130
|
-
]
|
|
2131
3934
|
}
|
|
2132
3935
|
},
|
|
2133
3936
|
required: [
|