diff --git a/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Forms/MxGatewayEndpointEditor.razor b/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Forms/MxGatewayEndpointEditor.razor
new file mode 100644
index 00000000..0eac1ce6
--- /dev/null
+++ b/src/ZB.MOM.WW.ScadaBridge.CentralUI/Components/Forms/MxGatewayEndpointEditor.razor
@@ -0,0 +1,89 @@
+@namespace ZB.MOM.WW.ScadaBridge.CentralUI.Components.Forms
+@using ZB.MOM.WW.ScadaBridge.Commons.Types.DataConnections
+@using ZB.MOM.WW.ScadaBridge.Commons.Types.Flattening
+
+
+
@Title
+
+
+
+
+
+
Transport security
+
+
+ @if (Config.UseTls)
+ {
+
+
+
+
+
+
+
+
+ }
+
+
+
+@code {
+ [Parameter, EditorRequired] public MxGatewayEndpointConfig Config { get; set; } = default!;
+ [Parameter] public string Title { get; set; } = "Endpoint";
+ [Parameter] public string IdPrefix { get; set; } = "mxgateway-endpoint";
+ [Parameter] public ValidationResult? Errors { get; set; }
+
+ private RenderFragment? RenderFieldError(string field)
+ {
+ var match = Errors?.Errors.FirstOrDefault(e =>
+ e.EntityName != null
+ && (e.EntityName == field || e.EntityName.EndsWith("." + field)));
+ return match is null
+ ? null
+ : @