@meshery/schemas 1.3.31 → 1.3.33

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.
@@ -84,6 +84,66 @@ export interface paths {
84
84
  patch?: never;
85
85
  trace?: never;
86
86
  };
87
+ "/api/system/kubernetes": {
88
+ parameters: {
89
+ query?: never;
90
+ header?: never;
91
+ path?: never;
92
+ cookie?: never;
93
+ };
94
+ get?: never;
95
+ put?: never;
96
+ /**
97
+ * Import a kubeconfig
98
+ * @description Uploads a kubeconfig and registers each discovered context as a Kubernetes connection. Unreachable contexts are still registered as discovered connections; reachability only gates the transition to connected. The optional `contexts` and `selectedContexts` form fields scope and configure the import.
99
+ */
100
+ post: operations["addKubernetesConfig"];
101
+ delete?: never;
102
+ options?: never;
103
+ head?: never;
104
+ patch?: never;
105
+ trace?: never;
106
+ };
107
+ "/api/system/kubernetes/contexts": {
108
+ parameters: {
109
+ query?: never;
110
+ header?: never;
111
+ path?: never;
112
+ cookie?: never;
113
+ };
114
+ get?: never;
115
+ put?: never;
116
+ /**
117
+ * Discover kubeconfig contexts
118
+ * @description Parses an uploaded kubeconfig and returns its contexts - including unreachable ones, flagged via `reachable` - without persisting any connection. Lets a client present the discovered contexts for selection before importing them.
119
+ */
120
+ post: operations["discoverKubernetesContexts"];
121
+ delete?: never;
122
+ options?: never;
123
+ head?: never;
124
+ patch?: never;
125
+ trace?: never;
126
+ };
127
+ "/api/system/kubernetes/ping": {
128
+ parameters: {
129
+ query?: never;
130
+ header?: never;
131
+ path?: never;
132
+ cookie?: never;
133
+ };
134
+ /**
135
+ * Ping a Kubernetes connection
136
+ * @description Verifies connectivity to the Kubernetes cluster behind a connection by fetching the API server version.
137
+ */
138
+ get: operations["pingKubernetes"];
139
+ put?: never;
140
+ post?: never;
141
+ delete?: never;
142
+ options?: never;
143
+ head?: never;
144
+ patch?: never;
145
+ trace?: never;
146
+ };
87
147
  "/api/system/sync": {
88
148
  parameters: {
89
149
  query?: never;
@@ -237,11 +297,16 @@ export interface components {
237
297
  /** @description Human-readable status message. */
238
298
  message: string;
239
299
  };
300
+ /**
301
+ * @description Current status of a single Meshery controller (operator, MeshSync, or broker). Mirrors the MesheryControllerStatus GraphQL enum (server/internal/graphql/schema/schema.graphql) during the ongoing migration of controller-status consumers from GraphQL to this REST API; the literal values (including the published "UNKOWN" spelling) are load-bearing and must not be changed independently of that enum.
302
+ * @enum {string}
303
+ */
304
+ ControllerStatusValue: "DEPLOYED" | "NOTDEPLOYED" | "DEPLOYING" | "UNKOWN" | "UNDEPLOYED" | "ENABLED" | "RUNNING" | "CONNECTED";
240
305
  /** @description Status of a single Meshery controller (operator, MeshSync, or broker) for a kubernetes connection. Element type of the controller-status SSE stream and the operator status response. */
241
306
  ControllerStatus: {
242
307
  /**
243
308
  * Format: uuid
244
- * @description The kubernetes connection ID this status belongs to.
309
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
245
310
  */
246
311
  connectionId: string;
247
312
  /**
@@ -249,8 +314,11 @@ export interface components {
249
314
  * @enum {string}
250
315
  */
251
316
  controller: "OPERATOR" | "MESHSYNC" | "BROKER";
252
- /** @description Current controller status (e.g. DEPLOYED, NOTDEPLOYED, RUNNING, CONNECTED, UNKNOWN). */
253
- status: string;
317
+ /**
318
+ * @description Current controller status.
319
+ * @enum {string}
320
+ */
321
+ status: "DEPLOYED" | "NOTDEPLOYED" | "DEPLOYING" | "UNKOWN" | "UNDEPLOYED" | "ENABLED" | "RUNNING" | "CONNECTED";
254
322
  /** @description Deployed controller version, when known. */
255
323
  version: string;
256
324
  };
@@ -264,7 +332,7 @@ export interface components {
264
332
  status: string;
265
333
  /**
266
334
  * Format: uuid
267
- * @description The kubernetes connection ID this status belongs to.
335
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
268
336
  */
269
337
  connectionId: string;
270
338
  };
@@ -295,7 +363,7 @@ export interface components {
295
363
  ConnectionDiagnostics: {
296
364
  /**
297
365
  * Format: uuid
298
- * @description The kubernetes connection ID these diagnostics belong to.
366
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
299
367
  */
300
368
  connectionId: string;
301
369
  /** @description True when no warning/error diagnostics were detected (informational diagnostics do not affect health). */
@@ -386,7 +454,7 @@ export interface components {
386
454
  server?: string;
387
455
  /**
388
456
  * Format: uuid
389
- * @description Kubernetes server ID associated with this context.
457
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
390
458
  */
391
459
  clusterId?: string;
392
460
  /**
@@ -414,7 +482,7 @@ export interface components {
414
482
  server?: string;
415
483
  /**
416
484
  * Format: uuid
417
- * @description Kubernetes server ID associated with this context.
485
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
418
486
  */
419
487
  clusterId?: string;
420
488
  /**
@@ -431,6 +499,250 @@ export interface components {
431
499
  } & {
432
500
  [key: string]: unknown;
433
501
  };
502
+ /** @description Multipart form payload for importing a kubeconfig. `contexts` and `selectedContexts` are JSON-encoded strings because they travel as multipart form fields alongside the file. */
503
+ AddKubernetesConfigPayload: {
504
+ /**
505
+ * Format: binary
506
+ * @description Kubeconfig file contents.
507
+ */
508
+ k8sfile: string;
509
+ /** @description JSON-encoded object mapping a discovered context ID to per-context import options, e.g. `{"<contextId>": {"meshsyncDeploymentMode": "operator", "name": "my-cluster"}}`. `meshsyncDeploymentMode` selects how MeshSync runs for the resulting connection; `name` overrides the connection name. */
510
+ contexts?: string;
511
+ /** @description JSON-encoded array of discovered context IDs to import. When absent, every context discovered in the kubeconfig is imported. */
512
+ selectedContexts?: string;
513
+ };
514
+ /** @description Multipart form payload for kubeconfig context discovery. */
515
+ DiscoverKubernetesContextsPayload: {
516
+ /**
517
+ * Format: binary
518
+ * @description Kubeconfig file contents.
519
+ */
520
+ k8sfile: string;
521
+ };
522
+ /** @description Discovered kubeconfig contexts bucketed by import outcome. Every bucket is always present (empty when no context landed in it). */
523
+ AddKubernetesConfigResponse: {
524
+ /** @description Contexts newly registered as discovered connections. */
525
+ registeredContexts: {
526
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
527
+ id?: string;
528
+ /** @description Human-readable name of the Kubernetes context. */
529
+ name?: string;
530
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
531
+ auth?: Record<string, never>;
532
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
533
+ cluster?: Record<string, never>;
534
+ /** @description API server URL of the Kubernetes cluster. */
535
+ server?: string;
536
+ /**
537
+ * Format: uuid
538
+ * @description ID of the user who owns the underlying connection.
539
+ */
540
+ owner?: string;
541
+ /**
542
+ * Format: uuid
543
+ * @description ID of the user who registered the context.
544
+ */
545
+ createdBy?: string;
546
+ /**
547
+ * Format: uuid
548
+ * @description ID of the Meshery instance the context is registered with.
549
+ */
550
+ mesheryInstanceId?: string;
551
+ /**
552
+ * Format: uuid
553
+ * @description ID of the Kubernetes server associated with the context.
554
+ */
555
+ kubernetesServerId?: string;
556
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
557
+ deploymentType?: string;
558
+ /** @description Kubernetes server version of the cluster. */
559
+ version?: string;
560
+ /**
561
+ * Format: date-time
562
+ * @description Timestamp when the underlying connection was created.
563
+ */
564
+ createdAt?: string;
565
+ /**
566
+ * Format: date-time
567
+ * @description Timestamp when the underlying connection was last updated.
568
+ */
569
+ updatedAt?: string;
570
+ /**
571
+ * Format: uuid
572
+ * @description ID of the connection this context was projected from.
573
+ */
574
+ connectionId?: string;
575
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
576
+ reachable?: boolean;
577
+ }[];
578
+ /** @description Contexts whose connection already exists in (or transitioned to) the connected state. */
579
+ connectedContexts: {
580
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
581
+ id?: string;
582
+ /** @description Human-readable name of the Kubernetes context. */
583
+ name?: string;
584
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
585
+ auth?: Record<string, never>;
586
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
587
+ cluster?: Record<string, never>;
588
+ /** @description API server URL of the Kubernetes cluster. */
589
+ server?: string;
590
+ /**
591
+ * Format: uuid
592
+ * @description ID of the user who owns the underlying connection.
593
+ */
594
+ owner?: string;
595
+ /**
596
+ * Format: uuid
597
+ * @description ID of the user who registered the context.
598
+ */
599
+ createdBy?: string;
600
+ /**
601
+ * Format: uuid
602
+ * @description ID of the Meshery instance the context is registered with.
603
+ */
604
+ mesheryInstanceId?: string;
605
+ /**
606
+ * Format: uuid
607
+ * @description ID of the Kubernetes server associated with the context.
608
+ */
609
+ kubernetesServerId?: string;
610
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
611
+ deploymentType?: string;
612
+ /** @description Kubernetes server version of the cluster. */
613
+ version?: string;
614
+ /**
615
+ * Format: date-time
616
+ * @description Timestamp when the underlying connection was created.
617
+ */
618
+ createdAt?: string;
619
+ /**
620
+ * Format: date-time
621
+ * @description Timestamp when the underlying connection was last updated.
622
+ */
623
+ updatedAt?: string;
624
+ /**
625
+ * Format: uuid
626
+ * @description ID of the connection this context was projected from.
627
+ */
628
+ connectionId?: string;
629
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
630
+ reachable?: boolean;
631
+ }[];
632
+ /** @description Contexts whose connection is in the ignored state. */
633
+ ignoredContexts: {
634
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
635
+ id?: string;
636
+ /** @description Human-readable name of the Kubernetes context. */
637
+ name?: string;
638
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
639
+ auth?: Record<string, never>;
640
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
641
+ cluster?: Record<string, never>;
642
+ /** @description API server URL of the Kubernetes cluster. */
643
+ server?: string;
644
+ /**
645
+ * Format: uuid
646
+ * @description ID of the user who owns the underlying connection.
647
+ */
648
+ owner?: string;
649
+ /**
650
+ * Format: uuid
651
+ * @description ID of the user who registered the context.
652
+ */
653
+ createdBy?: string;
654
+ /**
655
+ * Format: uuid
656
+ * @description ID of the Meshery instance the context is registered with.
657
+ */
658
+ mesheryInstanceId?: string;
659
+ /**
660
+ * Format: uuid
661
+ * @description ID of the Kubernetes server associated with the context.
662
+ */
663
+ kubernetesServerId?: string;
664
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
665
+ deploymentType?: string;
666
+ /** @description Kubernetes server version of the cluster. */
667
+ version?: string;
668
+ /**
669
+ * Format: date-time
670
+ * @description Timestamp when the underlying connection was created.
671
+ */
672
+ createdAt?: string;
673
+ /**
674
+ * Format: date-time
675
+ * @description Timestamp when the underlying connection was last updated.
676
+ */
677
+ updatedAt?: string;
678
+ /**
679
+ * Format: uuid
680
+ * @description ID of the connection this context was projected from.
681
+ */
682
+ connectionId?: string;
683
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
684
+ reachable?: boolean;
685
+ }[];
686
+ /** @description Contexts that could not be saved as connections. The failure detail is recorded in the emitted event's metadata, not on the context object. */
687
+ erroredContexts: {
688
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
689
+ id?: string;
690
+ /** @description Human-readable name of the Kubernetes context. */
691
+ name?: string;
692
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
693
+ auth?: Record<string, never>;
694
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
695
+ cluster?: Record<string, never>;
696
+ /** @description API server URL of the Kubernetes cluster. */
697
+ server?: string;
698
+ /**
699
+ * Format: uuid
700
+ * @description ID of the user who owns the underlying connection.
701
+ */
702
+ owner?: string;
703
+ /**
704
+ * Format: uuid
705
+ * @description ID of the user who registered the context.
706
+ */
707
+ createdBy?: string;
708
+ /**
709
+ * Format: uuid
710
+ * @description ID of the Meshery instance the context is registered with.
711
+ */
712
+ mesheryInstanceId?: string;
713
+ /**
714
+ * Format: uuid
715
+ * @description ID of the Kubernetes server associated with the context.
716
+ */
717
+ kubernetesServerId?: string;
718
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
719
+ deploymentType?: string;
720
+ /** @description Kubernetes server version of the cluster. */
721
+ version?: string;
722
+ /**
723
+ * Format: date-time
724
+ * @description Timestamp when the underlying connection was created.
725
+ */
726
+ createdAt?: string;
727
+ /**
728
+ * Format: date-time
729
+ * @description Timestamp when the underlying connection was last updated.
730
+ */
731
+ updatedAt?: string;
732
+ /**
733
+ * Format: uuid
734
+ * @description ID of the connection this context was projected from.
735
+ */
736
+ connectionId?: string;
737
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
738
+ reachable?: boolean;
739
+ }[];
740
+ };
741
+ /** @description Result of pinging a Kubernetes connection's API server. */
742
+ KubernetesPingResponse: {
743
+ /** @description Version string reported by the cluster's API server. The wire field is `server_version` - this endpoint's published wire casing predates the camelCase convention and is preserved within this API version. */
744
+ server_version: string;
745
+ };
434
746
  };
435
747
  responses: {
436
748
  /** @description Expired JWT token used or insufficient privilege */
@@ -665,6 +977,441 @@ export interface operations {
665
977
  };
666
978
  };
667
979
  };
980
+ addKubernetesConfig: {
981
+ parameters: {
982
+ query?: never;
983
+ header?: never;
984
+ path?: never;
985
+ cookie?: never;
986
+ };
987
+ requestBody: {
988
+ content: {
989
+ "multipart/form-data": {
990
+ /**
991
+ * Format: binary
992
+ * @description Kubeconfig file contents.
993
+ */
994
+ k8sfile: string;
995
+ /** @description JSON-encoded object mapping a discovered context ID to per-context import options, e.g. `{"<contextId>": {"meshsyncDeploymentMode": "operator", "name": "my-cluster"}}`. `meshsyncDeploymentMode` selects how MeshSync runs for the resulting connection; `name` overrides the connection name. */
996
+ contexts?: string;
997
+ /** @description JSON-encoded array of discovered context IDs to import. When absent, every context discovered in the kubeconfig is imported. */
998
+ selectedContexts?: string;
999
+ };
1000
+ };
1001
+ };
1002
+ responses: {
1003
+ /** @description Discovered contexts bucketed by import outcome. */
1004
+ 200: {
1005
+ headers: {
1006
+ [name: string]: unknown;
1007
+ };
1008
+ content: {
1009
+ "application/json": {
1010
+ /** @description Contexts newly registered as discovered connections. */
1011
+ registeredContexts: {
1012
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
1013
+ id?: string;
1014
+ /** @description Human-readable name of the Kubernetes context. */
1015
+ name?: string;
1016
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
1017
+ auth?: Record<string, never>;
1018
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
1019
+ cluster?: Record<string, never>;
1020
+ /** @description API server URL of the Kubernetes cluster. */
1021
+ server?: string;
1022
+ /**
1023
+ * Format: uuid
1024
+ * @description ID of the user who owns the underlying connection.
1025
+ */
1026
+ owner?: string;
1027
+ /**
1028
+ * Format: uuid
1029
+ * @description ID of the user who registered the context.
1030
+ */
1031
+ createdBy?: string;
1032
+ /**
1033
+ * Format: uuid
1034
+ * @description ID of the Meshery instance the context is registered with.
1035
+ */
1036
+ mesheryInstanceId?: string;
1037
+ /**
1038
+ * Format: uuid
1039
+ * @description ID of the Kubernetes server associated with the context.
1040
+ */
1041
+ kubernetesServerId?: string;
1042
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
1043
+ deploymentType?: string;
1044
+ /** @description Kubernetes server version of the cluster. */
1045
+ version?: string;
1046
+ /**
1047
+ * Format: date-time
1048
+ * @description Timestamp when the underlying connection was created.
1049
+ */
1050
+ createdAt?: string;
1051
+ /**
1052
+ * Format: date-time
1053
+ * @description Timestamp when the underlying connection was last updated.
1054
+ */
1055
+ updatedAt?: string;
1056
+ /**
1057
+ * Format: uuid
1058
+ * @description ID of the connection this context was projected from.
1059
+ */
1060
+ connectionId?: string;
1061
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
1062
+ reachable?: boolean;
1063
+ }[];
1064
+ /** @description Contexts whose connection already exists in (or transitioned to) the connected state. */
1065
+ connectedContexts: {
1066
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
1067
+ id?: string;
1068
+ /** @description Human-readable name of the Kubernetes context. */
1069
+ name?: string;
1070
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
1071
+ auth?: Record<string, never>;
1072
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
1073
+ cluster?: Record<string, never>;
1074
+ /** @description API server URL of the Kubernetes cluster. */
1075
+ server?: string;
1076
+ /**
1077
+ * Format: uuid
1078
+ * @description ID of the user who owns the underlying connection.
1079
+ */
1080
+ owner?: string;
1081
+ /**
1082
+ * Format: uuid
1083
+ * @description ID of the user who registered the context.
1084
+ */
1085
+ createdBy?: string;
1086
+ /**
1087
+ * Format: uuid
1088
+ * @description ID of the Meshery instance the context is registered with.
1089
+ */
1090
+ mesheryInstanceId?: string;
1091
+ /**
1092
+ * Format: uuid
1093
+ * @description ID of the Kubernetes server associated with the context.
1094
+ */
1095
+ kubernetesServerId?: string;
1096
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
1097
+ deploymentType?: string;
1098
+ /** @description Kubernetes server version of the cluster. */
1099
+ version?: string;
1100
+ /**
1101
+ * Format: date-time
1102
+ * @description Timestamp when the underlying connection was created.
1103
+ */
1104
+ createdAt?: string;
1105
+ /**
1106
+ * Format: date-time
1107
+ * @description Timestamp when the underlying connection was last updated.
1108
+ */
1109
+ updatedAt?: string;
1110
+ /**
1111
+ * Format: uuid
1112
+ * @description ID of the connection this context was projected from.
1113
+ */
1114
+ connectionId?: string;
1115
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
1116
+ reachable?: boolean;
1117
+ }[];
1118
+ /** @description Contexts whose connection is in the ignored state. */
1119
+ ignoredContexts: {
1120
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
1121
+ id?: string;
1122
+ /** @description Human-readable name of the Kubernetes context. */
1123
+ name?: string;
1124
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
1125
+ auth?: Record<string, never>;
1126
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
1127
+ cluster?: Record<string, never>;
1128
+ /** @description API server URL of the Kubernetes cluster. */
1129
+ server?: string;
1130
+ /**
1131
+ * Format: uuid
1132
+ * @description ID of the user who owns the underlying connection.
1133
+ */
1134
+ owner?: string;
1135
+ /**
1136
+ * Format: uuid
1137
+ * @description ID of the user who registered the context.
1138
+ */
1139
+ createdBy?: string;
1140
+ /**
1141
+ * Format: uuid
1142
+ * @description ID of the Meshery instance the context is registered with.
1143
+ */
1144
+ mesheryInstanceId?: string;
1145
+ /**
1146
+ * Format: uuid
1147
+ * @description ID of the Kubernetes server associated with the context.
1148
+ */
1149
+ kubernetesServerId?: string;
1150
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
1151
+ deploymentType?: string;
1152
+ /** @description Kubernetes server version of the cluster. */
1153
+ version?: string;
1154
+ /**
1155
+ * Format: date-time
1156
+ * @description Timestamp when the underlying connection was created.
1157
+ */
1158
+ createdAt?: string;
1159
+ /**
1160
+ * Format: date-time
1161
+ * @description Timestamp when the underlying connection was last updated.
1162
+ */
1163
+ updatedAt?: string;
1164
+ /**
1165
+ * Format: uuid
1166
+ * @description ID of the connection this context was projected from.
1167
+ */
1168
+ connectionId?: string;
1169
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
1170
+ reachable?: boolean;
1171
+ }[];
1172
+ /** @description Contexts that could not be saved as connections. The failure detail is recorded in the emitted event's metadata, not on the context object. */
1173
+ erroredContexts: {
1174
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
1175
+ id?: string;
1176
+ /** @description Human-readable name of the Kubernetes context. */
1177
+ name?: string;
1178
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
1179
+ auth?: Record<string, never>;
1180
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
1181
+ cluster?: Record<string, never>;
1182
+ /** @description API server URL of the Kubernetes cluster. */
1183
+ server?: string;
1184
+ /**
1185
+ * Format: uuid
1186
+ * @description ID of the user who owns the underlying connection.
1187
+ */
1188
+ owner?: string;
1189
+ /**
1190
+ * Format: uuid
1191
+ * @description ID of the user who registered the context.
1192
+ */
1193
+ createdBy?: string;
1194
+ /**
1195
+ * Format: uuid
1196
+ * @description ID of the Meshery instance the context is registered with.
1197
+ */
1198
+ mesheryInstanceId?: string;
1199
+ /**
1200
+ * Format: uuid
1201
+ * @description ID of the Kubernetes server associated with the context.
1202
+ */
1203
+ kubernetesServerId?: string;
1204
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
1205
+ deploymentType?: string;
1206
+ /** @description Kubernetes server version of the cluster. */
1207
+ version?: string;
1208
+ /**
1209
+ * Format: date-time
1210
+ * @description Timestamp when the underlying connection was created.
1211
+ */
1212
+ createdAt?: string;
1213
+ /**
1214
+ * Format: date-time
1215
+ * @description Timestamp when the underlying connection was last updated.
1216
+ */
1217
+ updatedAt?: string;
1218
+ /**
1219
+ * Format: uuid
1220
+ * @description ID of the connection this context was projected from.
1221
+ */
1222
+ connectionId?: string;
1223
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
1224
+ reachable?: boolean;
1225
+ }[];
1226
+ };
1227
+ };
1228
+ };
1229
+ /** @description Missing or unparsable kubeconfig, or malformed `contexts` / `selectedContexts` JSON. */
1230
+ 400: {
1231
+ headers: {
1232
+ [name: string]: unknown;
1233
+ };
1234
+ content?: never;
1235
+ };
1236
+ /** @description Expired JWT token used or insufficient privilege */
1237
+ 401: {
1238
+ headers: {
1239
+ [name: string]: unknown;
1240
+ };
1241
+ content: {
1242
+ "text/plain": string;
1243
+ };
1244
+ };
1245
+ /** @description Failed to retrieve the user token from the request context. */
1246
+ 500: {
1247
+ headers: {
1248
+ [name: string]: unknown;
1249
+ };
1250
+ content?: never;
1251
+ };
1252
+ };
1253
+ };
1254
+ discoverKubernetesContexts: {
1255
+ parameters: {
1256
+ query?: never;
1257
+ header?: never;
1258
+ path?: never;
1259
+ cookie?: never;
1260
+ };
1261
+ requestBody: {
1262
+ content: {
1263
+ "multipart/form-data": {
1264
+ /**
1265
+ * Format: binary
1266
+ * @description Kubeconfig file contents.
1267
+ */
1268
+ k8sfile: string;
1269
+ };
1270
+ };
1271
+ };
1272
+ responses: {
1273
+ /** @description Contexts discovered in the uploaded kubeconfig. */
1274
+ 200: {
1275
+ headers: {
1276
+ [name: string]: unknown;
1277
+ };
1278
+ content: {
1279
+ "application/json": {
1280
+ /** @description Stable identifier of the Kubernetes context, assigned when the context is registered. Not a UUID; carried in connection metadata. */
1281
+ id?: string;
1282
+ /** @description Human-readable name of the Kubernetes context. */
1283
+ name?: string;
1284
+ /** @description Authentication material for the context (token or kubeconfig reference), sourced from the connection's credential secret. */
1285
+ auth?: Record<string, never>;
1286
+ /** @description Cluster definition for the context (certificate authority and server details), sourced from the connection's credential secret. */
1287
+ cluster?: Record<string, never>;
1288
+ /** @description API server URL of the Kubernetes cluster. */
1289
+ server?: string;
1290
+ /**
1291
+ * Format: uuid
1292
+ * @description ID of the user who owns the underlying connection.
1293
+ */
1294
+ owner?: string;
1295
+ /**
1296
+ * Format: uuid
1297
+ * @description ID of the user who registered the context.
1298
+ */
1299
+ createdBy?: string;
1300
+ /**
1301
+ * Format: uuid
1302
+ * @description ID of the Meshery instance the context is registered with.
1303
+ */
1304
+ mesheryInstanceId?: string;
1305
+ /**
1306
+ * Format: uuid
1307
+ * @description ID of the Kubernetes server associated with the context.
1308
+ */
1309
+ kubernetesServerId?: string;
1310
+ /** @description How Meshery is deployed relative to the cluster (e.g. in_cluster, out_of_cluster). */
1311
+ deploymentType?: string;
1312
+ /** @description Kubernetes server version of the cluster. */
1313
+ version?: string;
1314
+ /**
1315
+ * Format: date-time
1316
+ * @description Timestamp when the underlying connection was created.
1317
+ */
1318
+ createdAt?: string;
1319
+ /**
1320
+ * Format: date-time
1321
+ * @description Timestamp when the underlying connection was last updated.
1322
+ */
1323
+ updatedAt?: string;
1324
+ /**
1325
+ * Format: uuid
1326
+ * @description ID of the connection this context was projected from.
1327
+ */
1328
+ connectionId?: string;
1329
+ /** @description Whether this context's API server answered the probe run while its kubeconfig was processed. Discovery and import surface unreachable contexts too, so they can still be registered; reachability only gates the connected transition. */
1330
+ reachable?: boolean;
1331
+ }[];
1332
+ };
1333
+ };
1334
+ /** @description Missing or unparsable kubeconfig. */
1335
+ 400: {
1336
+ headers: {
1337
+ [name: string]: unknown;
1338
+ };
1339
+ content?: never;
1340
+ };
1341
+ /** @description Expired JWT token used or insufficient privilege */
1342
+ 401: {
1343
+ headers: {
1344
+ [name: string]: unknown;
1345
+ };
1346
+ content: {
1347
+ "text/plain": string;
1348
+ };
1349
+ };
1350
+ /** @description Failed to retrieve the provider token for the request. */
1351
+ 500: {
1352
+ headers: {
1353
+ [name: string]: unknown;
1354
+ };
1355
+ content?: never;
1356
+ };
1357
+ };
1358
+ };
1359
+ pingKubernetes: {
1360
+ parameters: {
1361
+ query: {
1362
+ /** @description ID of the Kubernetes connection whose cluster to ping. */
1363
+ connectionId: string;
1364
+ };
1365
+ header?: never;
1366
+ path?: never;
1367
+ cookie?: never;
1368
+ };
1369
+ requestBody?: never;
1370
+ responses: {
1371
+ /** @description Cluster is reachable. */
1372
+ 200: {
1373
+ headers: {
1374
+ [name: string]: unknown;
1375
+ };
1376
+ content: {
1377
+ "application/json": {
1378
+ /** @description Version string reported by the cluster's API server. The wire field is `server_version` - this endpoint's published wire casing predates the camelCase convention and is preserved within this API version. */
1379
+ server_version: string;
1380
+ };
1381
+ };
1382
+ };
1383
+ /** @description Missing `connectionId` query parameter, or the stored kubeconfig is invalid. */
1384
+ 400: {
1385
+ headers: {
1386
+ [name: string]: unknown;
1387
+ };
1388
+ content?: never;
1389
+ };
1390
+ /** @description Expired JWT token used or insufficient privilege */
1391
+ 401: {
1392
+ headers: {
1393
+ [name: string]: unknown;
1394
+ };
1395
+ content: {
1396
+ "text/plain": string;
1397
+ };
1398
+ };
1399
+ /** @description No Kubernetes context found for the given connection ID. */
1400
+ 404: {
1401
+ headers: {
1402
+ [name: string]: unknown;
1403
+ };
1404
+ content?: never;
1405
+ };
1406
+ /** @description Failed to reach the cluster or fetch its server version. */
1407
+ 500: {
1408
+ headers: {
1409
+ [name: string]: unknown;
1410
+ };
1411
+ content?: never;
1412
+ };
1413
+ };
1414
+ };
668
1415
  getSystemSync: {
669
1416
  parameters: {
670
1417
  query?: never;
@@ -693,7 +1440,7 @@ export interface operations {
693
1440
  server?: string;
694
1441
  /**
695
1442
  * Format: uuid
696
- * @description Kubernetes server ID associated with this context.
1443
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
697
1444
  */
698
1445
  clusterId?: string;
699
1446
  /**
@@ -751,7 +1498,7 @@ export interface operations {
751
1498
  "application/json": {
752
1499
  /**
753
1500
  * Format: uuid
754
- * @description The kubernetes connection ID this status belongs to.
1501
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
755
1502
  */
756
1503
  connectionId: string;
757
1504
  /**
@@ -759,8 +1506,11 @@ export interface operations {
759
1506
  * @enum {string}
760
1507
  */
761
1508
  controller: "OPERATOR" | "MESHSYNC" | "BROKER";
762
- /** @description Current controller status (e.g. DEPLOYED, NOTDEPLOYED, RUNNING, CONNECTED, UNKNOWN). */
763
- status: string;
1509
+ /**
1510
+ * @description Current controller status.
1511
+ * @enum {string}
1512
+ */
1513
+ status: "DEPLOYED" | "NOTDEPLOYED" | "DEPLOYING" | "UNKOWN" | "UNDEPLOYED" | "ENABLED" | "RUNNING" | "CONNECTED";
764
1514
  /** @description Deployed controller version, when known. */
765
1515
  version: string;
766
1516
  };
@@ -811,7 +1561,7 @@ export interface operations {
811
1561
  status: string;
812
1562
  /**
813
1563
  * Format: uuid
814
- * @description The kubernetes connection ID this status belongs to.
1564
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
815
1565
  */
816
1566
  connectionId: string;
817
1567
  };
@@ -862,7 +1612,7 @@ export interface operations {
862
1612
  status: string;
863
1613
  /**
864
1614
  * Format: uuid
865
- * @description The kubernetes connection ID this status belongs to.
1615
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
866
1616
  */
867
1617
  connectionId: string;
868
1618
  };
@@ -907,7 +1657,7 @@ export interface operations {
907
1657
  "application/json": {
908
1658
  /**
909
1659
  * Format: uuid
910
- * @description The kubernetes connection ID these diagnostics belong to.
1660
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
911
1661
  */
912
1662
  connectionId: string;
913
1663
  /** @description True when no warning/error diagnostics were detected (informational diagnostics do not affect health). */