[ISSUE #73] Add remoting service (#74)

* add remoting service and move models into common module

* chore: fix mistakes and several rename

* [ISSUE #45] Implement methods from storage-plugin.admin(rocketmq) (#66)

* modify RocketmqTopicCore, using SDKManager

* fix style

* delete some variable in RocketmqProperties and TopicProperties & remote additional endPoint name

* remove junit dependency back to console module

* remove unnecessary brackets & revert em-dashboard-pom.xml & move RocketmqProperties to core.dto

* add todo

* move todo to common sdk dependencies & fix style

* add test and junit dependencies in core pom.xml

* revert the indentation in pom.xml & move test related dependencies to bottom in core-pom.xml

* revert indentation in pom.xml

* revert indentation in pom.xml

* remove unnecessary params

* remove params

* remove empty line

* chore: fix typos

---------

Co-authored-by: scwlkq <89067331+scwlkq@users.noreply.github.com>
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/ApiPrefix.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/ApiPrefix.java
similarity index 94%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/ApiPrefix.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/ApiPrefix.java
index e2107cb..14c3e05 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/ApiPrefix.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/ApiPrefix.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.constant;
+package org.apache.eventmesh.dashboard.common.constant;
 
 public class ApiPrefix {
     public static final String API_PREFIX = "/eventmesh-dashboard/";
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/health/HealthCheckTypeConstant.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthCheckTypeConstant.java
similarity index 95%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/health/HealthCheckTypeConstant.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthCheckTypeConstant.java
index 6765bab..ff9c602 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/health/HealthCheckTypeConstant.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthCheckTypeConstant.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.constant.health;
+package org.apache.eventmesh.dashboard.common.constant.health;
 
 public class HealthCheckTypeConstant {
 
@@ -35,5 +35,5 @@
     public static final String HEALTH_CHECK_SUBTYPE_ROCKETMQ_TOPIC = "rocketmq4-topic";
 
     public static final String HEALTH_CHECK_SUBTYPE_NACOS_CONFIG = "nacos-config";
-    public static final String HEALTH_CHECK_SUBTYPE_NACOS_REGISTER = "nacos-register";
+    public static final String HEALTH_CHECK_SUBTYPE_NACOS_REGISTRY = "nacos-registry";
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/health/HealthConstant.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthConstant.java
similarity index 97%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/health/HealthConstant.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthConstant.java
index e243b30..bc3818b 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/constant/health/HealthConstant.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/constant/health/HealthConstant.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.constant.health;
+package org.apache.eventmesh.dashboard.common.constant.health;
 
 public class HealthConstant {
     public static final String NEW_LINE_ENDING = "\n";
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/KubernetesPodStatus.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/KubernetesPodStatus.java
similarity index 95%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/KubernetesPodStatus.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/KubernetesPodStatus.java
index 4650316..1e6d8a0 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/KubernetesPodStatus.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/KubernetesPodStatus.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.enums;
 
 import lombok.AllArgsConstructor;
 import lombok.Getter;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/RecordStatus.java
similarity index 91%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/RecordStatus.java
index 271e3f2..5ed81c7 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/RecordStatus.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.enums;
 
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
 @Getter
 @AllArgsConstructor
-public enum StatusEnum {
+public enum RecordStatus {
     INACTIVE(0, "Inactive"),
     ACTIVE(1, "Active");
 
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/StoreType.java
similarity index 77%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/StoreType.java
index 271e3f2..d5146b1 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/StoreType.java
@@ -15,17 +15,23 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.enums;
 
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
-@Getter
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+public enum StoreType {
 
+    STANDALONE(0, "Standalone"),
+    ROCKETMQ(1, "RocketMQ"),
+    KAFKA(2, "Kafka"),
+    PULSAR(3, "Pulsar"),
+    RABBITMQ(4, "RabbitMQ"),
+    REDIS(5, "Redis");
+
+    @Getter
     private final Integer number;
+    @Getter
     private final String name;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/health/HealthCheckStatus.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckStatus.java
similarity index 94%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/health/HealthCheckStatus.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckStatus.java
index fd5bc12..17856f8 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/health/HealthCheckStatus.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckStatus.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums.health;
+package org.apache.eventmesh.dashboard.common.enums.health;
 
 import lombok.AllArgsConstructor;
 import lombok.Getter;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/health/HealthCheckType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckType.java
similarity index 64%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/health/HealthCheckType.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckType.java
index abd918f..54c061e 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/health/HealthCheckType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/enums/health/HealthCheckType.java
@@ -15,28 +15,24 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums.health;
+package org.apache.eventmesh.dashboard.common.enums.health;
 
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_CLUSTER;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_RUNTIME;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_TOPIC;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_UNKNOWN;
+import org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant;
 
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
 @AllArgsConstructor
 public enum HealthCheckType {
-    UNKNOWN(0, HEALTH_CHECK_TYPE_UNKNOWN),
+    UNKNOWN(0, HealthCheckTypeConstant.HEALTH_CHECK_TYPE_UNKNOWN),
 
-    CLUSTER(1, HEALTH_CHECK_TYPE_CLUSTER),
+    CLUSTER(1, HealthCheckTypeConstant.HEALTH_CHECK_TYPE_CLUSTER),
 
-    RUNTIME(2, HEALTH_CHECK_TYPE_RUNTIME),
+    RUNTIME(2, HealthCheckTypeConstant.HEALTH_CHECK_TYPE_RUNTIME),
 
-    TOPIC(3, HEALTH_CHECK_TYPE_TOPIC),
+    TOPIC(3, HealthCheckTypeConstant.HEALTH_CHECK_TYPE_TOPIC),
 
-    STORAGE(4, HEALTH_CHECK_TYPE_STORAGE);
+    STORAGE(4, HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE);
 
     @Getter
     private final Integer number;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/AclMetadata.java
similarity index 67%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/AclMetadata.java
index 271e3f2..8025b58 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/AclMetadata.java
@@ -15,17 +15,19 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+@Data
+public class AclMetadata extends MetadataConfig {
 
-    private final Integer number;
-    private final String name;
+    private Long clusterId;
+    private String principal;
+    private Integer operation;
+    private String permissionType;
+    private String host;
+    private String resourceType;
+    private String resourceName;
+    private Integer patternType;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClientMetadata.java
similarity index 62%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClientMetadata.java
index 271e3f2..9b2d119 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClientMetadata.java
@@ -15,17 +15,33 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+@Data
+public class ClientMetadata extends MetadataConfig {
 
-    private final Integer number;
-    private final String name;
+    private String name;
+
+    private String platform;
+
+    /**
+     * programing language of client
+     */
+    private String language;
+
+    /**
+     * process id
+     */
+    private Long pid;
+
+    private String host;
+
+    private Integer port;
+
+    /**
+     * protocol used to connect to runtime.
+     */
+    private String protocol;
 }
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClusterMetadata.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClusterMetadata.java
new file mode 100644
index 0000000..432f9fe
--- /dev/null
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ClusterMetadata.java
@@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.common.model.metadata;
+
+import org.apache.eventmesh.dashboard.common.enums.StoreType;
+
+import lombok.Data;
+
+@Data
+public class ClusterMetadata extends MetadataConfig {
+
+    private String clusterName;
+
+    private String registryAddress;
+
+    private String bootstrapServers;
+
+    private String eventmeshVersion;
+
+    private String clientProperties;
+
+    private String jmxProperties;
+
+    private String regProperties;
+
+    private Integer authType;
+
+    private Integer runState;
+
+    private Integer status;
+
+    private StoreType storeType;
+
+    private String description;
+}
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConfigMetadata.java
similarity index 67%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConfigMetadata.java
index 271e3f2..11397f6 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConfigMetadata.java
@@ -15,17 +15,24 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+/**
+ * Config metadata is a piece of config with key and value
+ */
+@Data
+public class ConfigMetadata extends MetadataConfig {
 
-    private final Integer number;
-    private final String name;
+    /**
+     * property key
+     */
+    private String configKey;
+
+    private String configValue;
+
+    private Integer instanceType;
+
+    private Long instanceId;
 }
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConnectionMetadata.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConnectionMetadata.java
new file mode 100644
index 0000000..7543f0b
--- /dev/null
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConnectionMetadata.java
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.common.model.metadata;
+
+import lombok.Data;
+
+/**
+ * when insert data to db from meta service, connection metadata operation should be called after cluster and client in order to fetch information
+ * from them.
+ */
+@Data
+public class ConnectionMetadata extends MetadataConfig {
+
+
+    /**
+     * The type of source. Possible values are "connector" or "client".
+     */
+    private String sourceType;
+
+    /**
+     * The id of the source.<p> It can be connectorId or clientId according to the sourceType.
+     */
+    private Long sourceId;
+
+    private String sourceHost;
+
+    private Integer sourcePort;
+
+    private String sourceName;
+
+    /**
+     * The type of sink. Possible values are "connector" or "client".
+     */
+    private String sinkType;
+
+    private String sinkHost;
+
+    private Integer sinkPort;
+
+    private String sinkName;
+
+    /**
+     * The id of the sink.<p> It can be connectorId or clientId according to the sinkType.
+     */
+    private Long sinkId;
+
+    private Long runtimeId;
+
+    private String topic;
+
+    private Long groupId;
+
+    private String description;
+}
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConnectorMetadata.java
similarity index 66%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConnectorMetadata.java
index 271e3f2..d329ef5 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ConnectorMetadata.java
@@ -15,17 +15,25 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import org.apache.eventmesh.dashboard.common.enums.KubernetesPodStatus;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
 
-    private final Integer number;
-    private final String name;
+public class ConnectorMetadata extends MetadataConfig {
+
+    private String name;
+
+    private String className;
+
+    private String type;
+
+    private String host;
+
+    private Integer port;
+
+    /**
+     * @see KubernetesPodStatus
+     */
+    private Integer podState;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/GroupMetadata.java
similarity index 73%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/GroupMetadata.java
index 271e3f2..e3df7cf 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/GroupMetadata.java
@@ -15,17 +15,20 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+@Data
+public class GroupMetadata extends MetadataConfig {
 
-    private final Integer number;
-    private final String name;
+    private String name;
+
+    private Integer memberCount;
+
+    private String members;
+
+    private Integer type;
+
+    private String state;
 }
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/MetadataConfig.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/MetadataConfig.java
new file mode 100644
index 0000000..880be5f
--- /dev/null
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/MetadataConfig.java
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.common.model.metadata;
+
+import lombok.Data;
+
+/**
+ * This class is used to represent a piece of metadata, which can be used in create, update or delete operations to metadata service(eventmesh meta
+ * center, eventmesh runtime cluster)<p> follow method should be called in init block which is used to indicate the type of metadata:
+ * {@code this.setServiceTypeEnums(MetadataServiceTypeEnums.RUNTIME);}
+ */
+@Data
+public class MetadataConfig {
+
+    //eventmesh registry url
+    private String registryAddress;
+    //cluster id in database
+    private Long clusterId;
+}
diff --git a/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RegistryMetadata.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RegistryMetadata.java
new file mode 100644
index 0000000..56ea68a
--- /dev/null
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RegistryMetadata.java
@@ -0,0 +1,52 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.common.model.metadata;
+
+import org.apache.eventmesh.dashboard.common.enums.RecordStatus;
+
+import lombok.Data;
+
+@Data
+public class RegistryMetadata extends MetadataConfig {
+
+
+    private String clusterName;
+
+    private String name;
+
+    private String type;
+
+    private String version;
+
+    private String host;
+
+    private Integer port;
+
+    private String role;
+
+    private String username;
+
+    private String params;
+
+    /**
+     * 0: not active, 1: active
+     *
+     * @see RecordStatus
+     */
+    private Integer status;
+}
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RuntimeMetadata.java
similarity index 67%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RuntimeMetadata.java
index 271e3f2..5bdab8f 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/RuntimeMetadata.java
@@ -15,17 +15,26 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+@Data
+public class RuntimeMetadata extends MetadataConfig {
 
-    private final Integer number;
-    private final String name;
+    private String host;
+
+    private Integer port;
+
+    private Integer jmxPort;
+
+    private String rack;
+
+    private String endpointMap;
+
+    private Long storageClusterId;
+
+    private Long startTimeStamp;
+
+    private String clusterName;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ServiceUserMetadata.java
similarity index 65%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ServiceUserMetadata.java
index 271e3f2..1ea76c9 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/ServiceUserMetadata.java
@@ -15,17 +15,20 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import org.apache.eventmesh.dashboard.common.enums.StoreType;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+import lombok.Data;
 
-    private final Integer number;
-    private final String name;
+/**
+ * Service users are users that are used by components like mysql, kafka, etc.
+ */
+@Data
+public class ServiceUserMetadata {
+
+    private String userName;
+    //service users are only store users by now
+    private StoreType serviceType;
+    private String password;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/TopicMetadata.java
similarity index 60%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/TopicMetadata.java
index 271e3f2..829ed22 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/metadata/TopicMetadata.java
@@ -15,17 +15,31 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.metadata;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import org.apache.eventmesh.dashboard.common.enums.StoreType;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+import lombok.Data;
 
-    private final Integer number;
-    private final String name;
+@Data
+public class TopicMetadata extends MetadataConfig {
+
+    private StoreType storeType;
+
+    private String storeAddress;
+
+    //rocketmq -> broker url
+    private String connectionUrl;
+
+    private String topicName;
+
+    private Long runtimeId;
+
+    private Long storageId;
+
+    private Long retentionMs;
+
+    private Integer type;
+
+    private String description;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclRequest.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclRequest.java
index b4721cc..2c2ae35 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclRequest.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class CreateAclRequest {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclResponse.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclResponse.java
index b4721cc..8e2b3a4 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclResponse.java
@@ -15,14 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class CreateAclResponse {
 
+    Boolean success;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclResult.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclResult.java
index b4721cc..4e3d6c2 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/CreateAclResult.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class CreateAclResult {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclRequest.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclRequest.java
index b4721cc..97211b1 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclRequest.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class DeleteAclRequest {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclResponse.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclResponse.java
index b4721cc..f79d7f3 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclResponse.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class DeleteAclResponse {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclResult.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclResult.java
index b4721cc..db1dbfd 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/DeleteAclResult.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class DeleteAclResult {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsRequest.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsRequest.java
index b4721cc..6454a2a 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsRequest.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetAclsRequest {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsResponse.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsResponse.java
index b4721cc..95688e2 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsResponse.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetAclsResponse {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsResult.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsResult.java
index b4721cc..68f4161 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/acl/GetAclsResult.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.acl;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetAclsResult {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientRequest.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientRequest.java
index b4721cc..2369a24 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientRequest.java
@@ -15,14 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.client;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetClientRequest {
 
+    String registryAddress;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientResponse.java
similarity index 76%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientResponse.java
index b4721cc..f19f9e5 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientResponse.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.client;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
 
+import org.apache.eventmesh.dashboard.common.model.metadata.ClientMetadata;
+
+import java.util.List;
+
+public class GetClientResponse {
+
+    List<ClientMetadata> clientList;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientResult.java
similarity index 78%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientResult.java
index b4721cc..340d33a 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/client/GetClientResult.java
@@ -15,14 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.client;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+public class GetClientResult {
+
+    CompletableFuture<GetClientResponse> getClientResponseFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigRequest.java
similarity index 70%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigRequest.java
index 271e3f2..b5be52c 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigRequest.java
@@ -15,17 +15,23 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.config;
+
+import java.util.List;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
 
-    private final Integer number;
-    private final String name;
+public class GetConfigRequest {
+
+    private List<String> registryAddressList;
+
+    private List<String> runtimeAddressList;
+
+    private List<String> nameServerAddressList;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigResponse.java
similarity index 69%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigResponse.java
index 271e3f2..c96809a 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigResponse.java
@@ -15,17 +15,23 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.config;
+
+
+import org.apache.eventmesh.dashboard.common.model.metadata.ConfigMetadata;
+
+import java.util.List;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
 
-    private final Integer number;
-    private final String name;
+public class GetConfigResponse {
+
+    private List<ConfigMetadata> configMetadataList;
+    private Boolean success;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigResult.java
similarity index 74%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigResult.java
index 271e3f2..3954e7f 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/config/GetConfigResult.java
@@ -15,17 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.config;
+
+import java.util.concurrent.CompletableFuture;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
 
-    private final Integer number;
-    private final String name;
+public class GetConfigResult {
+    CompletableFuture<GetConfigResponse> getConfigResponseFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorRequest.java
similarity index 76%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorRequest.java
index b4721cc..7117dd9 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorRequest.java
@@ -15,14 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import org.apache.eventmesh.dashboard.common.model.metadata.ConnectorMetadata;
 
+public class CreateConnectorRequest {
+
+    private ConnectorMetadata connectorMetadata;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorResponse.java
similarity index 76%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorResponse.java
index b4721cc..4e149df 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorResponse.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
 
+import org.apache.eventmesh.dashboard.common.model.metadata.ConnectorMetadata;
+
+public class CreateConnectorResponse {
+
+    private ConnectorMetadata connectorMetadata;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorResult.java
similarity index 75%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorResult.java
index b4721cc..e674650 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/CreateConnectorResult.java
@@ -15,14 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+public class CreateConnectorResult {
+
+    private CompletableFuture<CreateConnectorResponse> createConnectorResponseCompletableFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorRequest.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorRequest.java
index b4721cc..a386d7c 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorRequest.java
@@ -15,14 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetConnectorRequest {
 
+    private String registryAddress;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorResponse.java
similarity index 74%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorResponse.java
index b4721cc..4de89a6 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorResponse.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
 
+import org.apache.eventmesh.dashboard.common.model.metadata.ConnectorMetadata;
+
+import java.util.List;
+
+public class GetConnectorResponse {
+
+    private List<ConnectorMetadata> connectorList;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorResult.java
similarity index 76%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorResult.java
index b4721cc..e21d239 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/connector/GetConnectorResult.java
@@ -15,14 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+public class GetConnectorResult {
+
+    private CompletableFuture<GetConnectorResponse> getConnectorResponseCompletableFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupResult.java
similarity index 77%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupResult.java
index b4721cc..75552cd 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupResult.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.group;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+import lombok.Data;
+
+@Data
+public class GetGroupResult {
+
+    private CompletableFuture<GetGroupsResponse> future;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsRequest.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsRequest.java
index b4721cc..6586fe7 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsRequest.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.group;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
-
+public class GetGroupsRequest {
+    //TODO where to get groups?
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsResponse.java
similarity index 76%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsResponse.java
index b4721cc..6096810 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/group/GetGroupsResponse.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.group;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import org.apache.eventmesh.dashboard.common.model.metadata.GroupMetadata;
 
+import java.util.List;
+
+public class GetGroupsResponse {
+    private List<GroupMetadata> groupList;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetRequest.java
similarity index 79%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetRequest.java
index b4721cc..0f938ff 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetRequest.java
@@ -15,14 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.offset;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
 
+import lombok.Data;
+
+@Data
+public class GetOffsetRequest {
+
+    private String bootstrapServers;
+
+    private String groupName;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetResponse.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetResponse.java
index b4721cc..3358b89 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetResponse.java
@@ -15,14 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.offset;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetOffsetResponse {
 
+    private Long offset;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetResult.java
similarity index 77%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetResult.java
index b4721cc..2b0a449 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/GetOffsetResult.java
@@ -15,14 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.offset;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+public class GetOffsetResult {
+
+    CompletableFuture<GetOffsetResponse> getOffsetResponseCompletableFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetRequest.java
similarity index 63%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetRequest.java
index 271e3f2..cf77017 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetRequest.java
@@ -15,17 +15,32 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.offset;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+import lombok.Data;
 
-    private final Integer number;
-    private final String name;
+@Data
+public class ResetOffsetRequest {
+
+    Long timestamp;
+
+    Long offset;
+
+    private String topic;
+
+    private String bootStrapServers;
+
+    private Integer partitionId;
+
+    ResetOffsetMode resetOffsetMode;
+
+    private String groupName;
+
+    public enum ResetOffsetMode {
+        EARLIEST,
+        LATEST,
+        TIMESTAMP,
+        OFFSET
+    }
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetResponse.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetResponse.java
index b4721cc..ed1417b 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetResponse.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.offset;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import lombok.Data;
 
+@Data
+public class ResetOffsetResponse {
+
+    private Long offset;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetResult.java
similarity index 74%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetResult.java
index b4721cc..3c1fb22 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/offset/ResetOffsetResult.java
@@ -15,14 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.offset;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+import lombok.Data;
+
+@Data
+public class ResetOffsetResult {
+    private Boolean success;
+
+    private CompletableFuture<ResetOffsetResponse> future;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeRequest.java
similarity index 82%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeRequest.java
index b4721cc..4fb5c7d 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeRequest.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.runtime;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import lombok.Data;
 
+@Data
+public class GetRuntimeRequest {
+
+    private String registryAddress;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResponse.java
similarity index 73%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResponse.java
index 271e3f2..27917ba 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResponse.java
@@ -15,17 +15,16 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.runtime;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import org.apache.eventmesh.dashboard.common.model.metadata.RuntimeMetadata;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+import java.util.List;
 
-    private final Integer number;
-    private final String name;
+import lombok.Data;
+
+@Data
+public class GetRuntimeResponse {
+
+    private List<RuntimeMetadata> runtimeMetadata;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResult.java
similarity index 76%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResult.java
index b4721cc..3fae063 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/runtime/GetRuntimeResult.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.runtime;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+import lombok.Data;
+
+@Data
+public class GetRuntimeResult {
+
+    private CompletableFuture<GetRuntimeResponse> future;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionRequest.java
similarity index 80%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionRequest.java
index b4721cc..c5271ff 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionRequest.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.subscription;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetSubscriptionRequest {
 
+    Integer page;
+    Integer size;
+    String dataId;
+    String group;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResponse.java
similarity index 74%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResponse.java
index b4721cc..2c0a066 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResponse.java
@@ -15,14 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.subscription;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class GetSubscriptionResponse {
+    // client name
+    private String clientName;
 
+    // group name
+    private String group;
+
+    // config content
+    private String subscription;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResult.java
similarity index 77%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResult.java
index b4721cc..f5a2215 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/subscription/GetSubscriptionResult.java
@@ -15,14 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.subscription;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+public class GetSubscriptionResult {
+
+    CompletableFuture<GetSubscriptionResponse> responseFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicRequest.java
similarity index 74%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicRequest.java
index 271e3f2..6eefe44 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicRequest.java
@@ -15,17 +15,19 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
+
+
+import org.apache.eventmesh.dashboard.common.model.metadata.TopicMetadata;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+public class CreateTopicRequest {
 
-    private final Integer number;
-    private final String name;
+    TopicMetadata topicMetadata;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicResponse.java
similarity index 78%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicResponse.java
index 271e3f2..a66e4b9 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicResponse.java
@@ -15,17 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
-
-    private final Integer number;
-    private final String name;
+public class CreateTopicResponse {
+    private String result;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicResult.java
similarity index 73%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicResult.java
index 271e3f2..4313b28 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/CreateTopicResult.java
@@ -15,17 +15,17 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
+
+import java.util.concurrent.CompletableFuture;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
-
-    private final Integer number;
-    private final String name;
+public class CreateTopicResult {
+    CompletableFuture<CreateTopicResponse> createTopicResponseFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicRequest.java
similarity index 74%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicRequest.java
index 271e3f2..5b429df 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicRequest.java
@@ -15,17 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
+
+
+import org.apache.eventmesh.dashboard.common.model.metadata.TopicMetadata;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
-
-    private final Integer number;
-    private final String name;
+public class DeleteTopicRequest {
+    TopicMetadata topicMetadata;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicResponse.java
similarity index 78%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicResponse.java
index 271e3f2..95d8256 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicResponse.java
@@ -15,17 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
-
-    private final Integer number;
-    private final String name;
+public class DeleteTopicResponse {
+    private String result;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicResult.java
similarity index 73%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicResult.java
index 271e3f2..b924122 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/DeleteTopicResult.java
@@ -15,17 +15,19 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
+
+import java.util.concurrent.CompletableFuture;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
 
-    private final Integer number;
-    private final String name;
+public class DeleteTopicResult {
+
+    private CompletableFuture<DeleteTopicResponse> deleteTopicResponseFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsRequest.java
similarity index 77%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsRequest.java
index 271e3f2..94e141c 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsRequest.java
@@ -15,17 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+public class GetTopicsRequest {
 
-    private final Integer number;
-    private final String name;
+    private String runtimeHost;
+
+    private Integer runtimePort;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsResponse.java
similarity index 72%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsResponse.java
index 271e3f2..5ed2126 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsResponse.java
@@ -15,17 +15,21 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
+
+
+
+import org.apache.eventmesh.dashboard.common.model.metadata.TopicMetadata;
+
+import java.util.List;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
-
-    private final Integer number;
-    private final String name;
+public class GetTopicsResponse {
+    List<TopicMetadata> topicMetadataList;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsResult.java
similarity index 74%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsResult.java
index 271e3f2..effca2d 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/topic/GetTopicsResult.java
@@ -15,17 +15,17 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.topic;
+
+import java.util.concurrent.CompletableFuture;
 
 import lombok.AllArgsConstructor;
-import lombok.Getter;
+import lombok.Data;
+import lombok.NoArgsConstructor;
 
-@Getter
+@Data
+@NoArgsConstructor
 @AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
-
-    private final Integer number;
-    private final String name;
+public class GetTopicsResult {
+    CompletableFuture<GetTopicsResponse> getTopicsResponseFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserRequest.java
similarity index 76%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserRequest.java
index b4721cc..24b4adc 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserRequest.java
@@ -15,14 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import org.apache.eventmesh.dashboard.common.model.metadata.ServiceUserMetadata;
 
+public class CreateUserRequest {
+
+    private ServiceUserMetadata serviceUserMetadata;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserResponse.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserResponse.java
index b4721cc..7d9a79b 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserResponse.java
@@ -15,14 +15,9 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class CreateUserResponse {
 
+    Boolean success;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserResult.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserResult.java
index b4721cc..3e187f2 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/CreateUserResult.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class CreateUserResult {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleteUserResponse.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleteUserResponse.java
index b4721cc..f047e2f 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleteUserResponse.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
-
+public class DeleteUserResponse {
+    Boolean success;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleteUserResult.java
similarity index 83%
rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
rename to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleteUserResult.java
index b4721cc..d6241c2 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleteUserResult.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class DeleteUserResult {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleterUserRequest.java
similarity index 83%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleterUserRequest.java
index b4721cc..30541d7 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/DeleterUserRequest.java
@@ -15,14 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+public class DeleterUserRequest {
 
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserRequest.java
similarity index 77%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserRequest.java
index b4721cc..420c746 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserRequest.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import org.apache.eventmesh.dashboard.common.enums.StoreType;
 
+public class GetUserRequest {
+    private StoreType serviceType;
+
+    private String serviceAddress;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserResponse.java
similarity index 73%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserResponse.java
index 271e3f2..d225706 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserResponse.java
@@ -15,17 +15,17 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+import org.apache.eventmesh.dashboard.common.model.metadata.ServiceUserMetadata;
 
-    private final Integer number;
-    private final String name;
+import java.util.List;
+
+import lombok.Data;
+
+@Data
+public class GetUserResponse {
+
+    private List<ServiceUserMetadata> serviceUserMetadata;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserResult.java
similarity index 75%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserResult.java
index b4721cc..8014118 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-common/src/main/java/org/apache/eventmesh/dashboard/common/model/remoting/user/GetUserResult.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.common.model.remoting.user;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+import java.util.concurrent.CompletableFuture;
 
+import lombok.Data;
+
+@Data
+public class GetUserResult {
+
+    private CompletableFuture<GetUserResponse> getUserResponseCompletableFuture;
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/client/ClientEntity.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/client/ClientEntity.java
index 4da4dad..e6cec83 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/client/ClientEntity.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/client/ClientEntity.java
@@ -17,8 +17,8 @@
 
 package org.apache.eventmesh.dashboard.console.entity.client;
 
+import org.apache.eventmesh.dashboard.common.enums.RecordStatus;
 import org.apache.eventmesh.dashboard.console.entity.base.BaseEntity;
-import org.apache.eventmesh.dashboard.console.enums.StatusEnum;
 
 import java.sql.Timestamp;
 
@@ -69,7 +69,7 @@
 
     /**
      * 0: not active, 1: active
-     * @see StatusEnum
+     * @see RecordStatus
      */
     @Schema(name = "status", defaultValue = "0", allowableValues = {"0", "1"}, description = "0:not active, 1:active")
     private Integer status;
@@ -88,7 +88,7 @@
      */
     private Timestamp endTime;
 
-    public void setStatusEntity(StatusEnum status) {
+    public void setStatusEntity(RecordStatus status) {
         this.status = status.getNumber();
     }
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connection/ConnectionEntity.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connection/ConnectionEntity.java
index 626e793..8283cbb 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connection/ConnectionEntity.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connection/ConnectionEntity.java
@@ -17,8 +17,8 @@
 
 package org.apache.eventmesh.dashboard.console.entity.connection;
 
+import org.apache.eventmesh.dashboard.common.enums.RecordStatus;
 import org.apache.eventmesh.dashboard.console.entity.base.BaseEntity;
-import org.apache.eventmesh.dashboard.console.enums.StatusEnum;
 
 import java.sql.Timestamp;
 import java.util.Objects;
@@ -53,8 +53,7 @@
     private String sourceType;
 
     /**
-     * The id of the source.<br>
-     * It can be connectorId or clientId according to the sourceType.
+     * The id of the source.<br> It can be connectorId or clientId according to the sourceType.
      */
     @Schema(name = "sourceId", description = "connectorId or clientId")
     private Long sourceId;
@@ -66,8 +65,7 @@
     private String sinkType;
 
     /**
-     * The id of the sink.<br>
-     * It can be connectorId or clientId according to the sinkType.
+     * The id of the sink.<br> It can be connectorId or clientId according to the sinkType.
      */
     @Schema(name = "sinkId", description = "connectorId or clientId")
     private Long sinkId;
@@ -85,8 +83,8 @@
 
     private String description;
 
-    public void setStatusEnum(StatusEnum statusEnum) {
-        this.status = statusEnum.getNumber();
+    public void setDataStatus(RecordStatus dataStatus) {
+        this.status = dataStatus.getNumber();
     }
 
     @Override
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connector/ConnectorEntity.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connector/ConnectorEntity.java
index 66db0f9..7a5f6f2 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connector/ConnectorEntity.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/connector/ConnectorEntity.java
@@ -17,9 +17,9 @@
 
 package org.apache.eventmesh.dashboard.console.entity.connector;
 
+import org.apache.eventmesh.dashboard.common.enums.KubernetesPodStatus;
+import org.apache.eventmesh.dashboard.common.enums.RecordStatus;
 import org.apache.eventmesh.dashboard.console.entity.base.BaseEntity;
-import org.apache.eventmesh.dashboard.console.enums.KubernetesPodStatus;
-import org.apache.eventmesh.dashboard.console.enums.StatusEnum;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
@@ -45,7 +45,7 @@
     /**
      * 0: not active, 1: active
      *
-     * @see StatusEnum
+     * @see RecordStatus
      */
     @Schema(name = "status", defaultValue = "0", allowableValues = {"0", "1"}, description = "0:inactive, 1:active")
     private Integer status;
@@ -63,11 +63,11 @@
      */
     private String configIds;
 
-    public void setStatusEnum(StatusEnum statusEnum) {
-        this.status = statusEnum.getNumber();
+    public void setDataStatus(RecordStatus dataStatus) {
+        this.status = dataStatus.getNumber();
     }
 
-    public void setKubernetesPodStatusEnum(KubernetesPodStatus kubernetesPodStatusEnum) {
-        this.podState = kubernetesPodStatusEnum.getNumber();
+    public void setKubernetesPodDataStatus(KubernetesPodStatus kubernetesPodDataStatus) {
+        this.podState = kubernetesPodDataStatus.getNumber();
     }
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/meta/MetaEntity.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/meta/MetaEntity.java
index a6871eb..fb00442 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/meta/MetaEntity.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/entity/meta/MetaEntity.java
@@ -17,8 +17,8 @@
 
 package org.apache.eventmesh.dashboard.console.entity.meta;
 
+import org.apache.eventmesh.dashboard.common.enums.RecordStatus;
 import org.apache.eventmesh.dashboard.console.entity.base.BaseEntity;
-import org.apache.eventmesh.dashboard.console.enums.StatusEnum;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
@@ -54,12 +54,12 @@
     /**
      * 0: not active, 1: active
      *
-     * @see StatusEnum
+     * @see RecordStatus
      */
     @Schema(name = "status", defaultValue = "0", allowableValues = {"0", "1"}, description = "0:inactive, 1:active")
     private Integer status;
 
-    public void setStatusEnum(StatusEnum statusEnum) {
-        this.status = statusEnum.getNumber();
+    public void setDataStatus(RecordStatus dataStatus) {
+        this.status = dataStatus.getNumber();
     }
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/CheckResultCache.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/CheckResultCache.java
index 4da837f..e2d62f7 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/CheckResultCache.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/CheckResultCache.java
@@ -17,8 +17,8 @@
 
 package org.apache.eventmesh.dashboard.console.function.health;
 
-import org.apache.eventmesh.dashboard.console.constant.health.HealthConstant;
-import org.apache.eventmesh.dashboard.console.enums.health.HealthCheckStatus;
+import org.apache.eventmesh.dashboard.common.constant.health.HealthConstant;
+import org.apache.eventmesh.dashboard.common.enums.health.HealthCheckStatus;
 import org.apache.eventmesh.dashboard.console.function.health.check.config.HealthCheckObjectConfig;
 
 import java.time.LocalDateTime;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutor.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutor.java
index 5cb0e02..46cecbc 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutor.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutor.java
@@ -17,9 +17,9 @@
 
 package org.apache.eventmesh.dashboard.console.function.health;
 
+import org.apache.eventmesh.dashboard.common.enums.health.HealthCheckStatus;
+import org.apache.eventmesh.dashboard.common.enums.health.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.entity.health.HealthCheckResultEntity;
-import org.apache.eventmesh.dashboard.console.enums.health.HealthCheckStatus;
-import org.apache.eventmesh.dashboard.console.enums.health.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.CheckResultCache.CheckResult;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
 import org.apache.eventmesh.dashboard.console.function.health.check.AbstractHealthCheckService;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosConfigCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosConfigCheck.java
index db82e1f..1a2b0b1 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosConfigCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosConfigCheck.java
@@ -17,11 +17,11 @@
 
 package org.apache.eventmesh.dashboard.console.function.health.check.impl.meta;
 
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_NACOS_CONFIG;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_META;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthConstant.NACOS_CHECK_CONTENT;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthConstant.NACOS_CHECK_DATA_ID;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthConstant.NACOS_CHECK_GROUP;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_NACOS_CONFIG;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_META;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthConstant.NACOS_CHECK_CONTENT;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthConstant.NACOS_CHECK_DATA_ID;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthConstant.NACOS_CHECK_GROUP;
 
 import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosRegisterCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosRegisterCheck.java
index 90ec2ea..5d53b6f 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosRegisterCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/meta/NacosRegisterCheck.java
@@ -17,10 +17,10 @@
 
 package org.apache.eventmesh.dashboard.console.function.health.check.impl.meta;
 
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_NACOS_REGISTER;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_META;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthConstant.NACOS_CHECK_SERVICE_CLUSTER_NAME;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthConstant.NACOS_CHECK_SERVICE_NAME;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_NACOS_REGISTRY;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_META;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthConstant.NACOS_CHECK_SERVICE_CLUSTER_NAME;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthConstant.NACOS_CHECK_SERVICE_NAME;
 
 import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
@@ -39,7 +39,7 @@
 
 
 @Slf4j
-@HealthCheckType(type = HEALTH_CHECK_TYPE_META, subType = HEALTH_CHECK_SUBTYPE_NACOS_REGISTER)
+@HealthCheckType(type = HEALTH_CHECK_TYPE_META, subType = HEALTH_CHECK_SUBTYPE_NACOS_REGISTRY)
 public class NacosRegisterCheck extends AbstractHealthCheckService {
 
     private NamingService namingService;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/RedisCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/RedisCheck.java
index 71488ac..5be24f2 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/RedisCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/RedisCheck.java
@@ -17,7 +17,7 @@
 
 package org.apache.eventmesh.dashboard.console.function.health.check.impl.storage;
 
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE;
 
 import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java
index 5fb92cf..7f8e56c 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4BrokerCheck.java
@@ -17,9 +17,8 @@
 
 package org.apache.eventmesh.dashboard.console.function.health.check.impl.storage.rocketmq4;
 
-
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_ROCKETMQ_BROKER;
-import static org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_SUBTYPE_ROCKETMQ_BROKER;
+import static org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant.HEALTH_CHECK_TYPE_STORAGE;
 
 import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java
index 08df28b..e855ba1 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4NameServerCheck.java
@@ -17,7 +17,7 @@
 
 package org.apache.eventmesh.dashboard.console.function.health.check.impl.storage.rocketmq4;
 
-import org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant;
+import org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant;
 import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
 import org.apache.eventmesh.dashboard.console.function.health.check.AbstractHealthCheckService;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java
index 7554762..739ac44 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/storage/rocketmq4/Rocketmq4TopicCheck.java
@@ -19,8 +19,8 @@
 
 import static org.apache.rocketmq.client.producer.SendStatus.SEND_OK;
 
-import org.apache.eventmesh.dashboard.console.constant.health.HealthCheckTypeConstant;
-import org.apache.eventmesh.dashboard.console.constant.health.HealthConstant;
+import org.apache.eventmesh.dashboard.common.constant.health.HealthCheckTypeConstant;
+import org.apache.eventmesh.dashboard.common.constant.health.HealthConstant;
 import org.apache.eventmesh.dashboard.console.function.health.annotation.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
 import org.apache.eventmesh.dashboard.console.function.health.check.AbstractHealthCheckService;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/spring/support/FunctionManager.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/spring/support/FunctionManager.java
index a0a6130..41eb197 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/spring/support/FunctionManager.java
+++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/spring/support/FunctionManager.java
@@ -43,6 +43,6 @@
         healthService = new HealthService();
         CheckResultCache checkResultCache = new CheckResultCache();
         healthService.createExecutor(healthDataService, checkResultCache);
-        healthService.startScheduledExecution(5, 5);
+        healthService.startScheduledExecution(120, 60);
     }
 }
diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutorTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutorTest.java
index 9ce9abd..3d3d4fa 100644
--- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutorTest.java
+++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/health/HealthExecutorTest.java
@@ -22,10 +22,10 @@
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.mockito.ArgumentMatchers.any;
 
+import org.apache.eventmesh.dashboard.common.enums.health.HealthCheckStatus;
+import org.apache.eventmesh.dashboard.common.enums.health.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.EventMeshDashboardApplication;
 import org.apache.eventmesh.dashboard.console.entity.health.HealthCheckResultEntity;
-import org.apache.eventmesh.dashboard.console.enums.health.HealthCheckStatus;
-import org.apache.eventmesh.dashboard.console.enums.health.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.callback.HealthCheckCallback;
 import org.apache.eventmesh.dashboard.console.function.health.check.AbstractHealthCheckService;
 import org.apache.eventmesh.dashboard.console.function.health.check.config.HealthCheckObjectConfig;
diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/integration/health/HealthServiceIntegrateTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/integration/health/HealthServiceIntegrateTest.java
index 2a780f4..ebc1a67 100644
--- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/integration/health/HealthServiceIntegrateTest.java
+++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/integration/health/HealthServiceIntegrateTest.java
@@ -17,8 +17,8 @@
 
 package org.apache.eventmesh.dashboard.console.integration.health;
 
+import org.apache.eventmesh.dashboard.common.enums.health.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.entity.health.HealthCheckResultEntity;
-import org.apache.eventmesh.dashboard.console.enums.health.HealthCheckType;
 import org.apache.eventmesh.dashboard.console.function.health.CheckResultCache;
 import org.apache.eventmesh.dashboard.console.function.health.HealthService;
 import org.apache.eventmesh.dashboard.console.function.health.check.config.HealthCheckObjectConfig;
diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/mapper/client/ClientMapperTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/mapper/client/ClientMapperTest.java
index 8388de6..2905480 100644
--- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/mapper/client/ClientMapperTest.java
+++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/mapper/client/ClientMapperTest.java
@@ -17,9 +17,9 @@
 
 package org.apache.eventmesh.dashboard.console.mapper.client;
 
+import org.apache.eventmesh.dashboard.common.enums.RecordStatus;
 import org.apache.eventmesh.dashboard.console.EventMeshDashboardApplication;
 import org.apache.eventmesh.dashboard.console.entity.client.ClientEntity;
-import org.apache.eventmesh.dashboard.console.enums.StatusEnum;
 
 import java.util.List;
 
@@ -70,7 +70,7 @@
         clientEntity.setDescription("");
         clientEntity.setPid(1L);
         clientEntity.setPort(8080);
-        clientEntity.setStatusEntity(StatusEnum.ACTIVE);
+        clientEntity.setStatusEntity(RecordStatus.ACTIVE);
         clientEntity.setConfigIds("");
         clientEntity.setLanguage("rust");
         clientEntity.setPlatform("");
diff --git a/eventmesh-dashboard-core/src/test/java/org/apache/eventmesh/dashboard/core/function/SDK/SDKManagerTest.java b/eventmesh-dashboard-core/src/test/java/org/apache/eventmesh/dashboard/core/function/SDK/SDKManagerTest.java
index d243fa7..7d9008f 100644
--- a/eventmesh-dashboard-core/src/test/java/org/apache/eventmesh/dashboard/core/function/SDK/SDKManagerTest.java
+++ b/eventmesh-dashboard-core/src/test/java/org/apache/eventmesh/dashboard/core/function/SDK/SDKManagerTest.java
@@ -19,8 +19,6 @@
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 
-import static org.junit.jupiter.api.Assertions.assertNotNull;
-
 import org.apache.eventmesh.dashboard.core.function.SDK.config.CreateRedisConfig;
 
 import org.junit.jupiter.api.BeforeEach;
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/operation/connector/ConnectorOptService.java
similarity index 82%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/operation/connector/ConnectorOptService.java
index b4721cc..b2c451f 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/operation/connector/ConnectorOptService.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.service.operation.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+/**
+ * k8s operation service
+ */
+public interface ConnectorOptService {
 
+    void createConnector();
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/operation/connector/RuntimeOptService.java
similarity index 82%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
copy to eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/operation/connector/RuntimeOptService.java
index b4721cc..6b8d5ec 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StoreType.java
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/operation/connector/RuntimeOptService.java
@@ -15,14 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.service.operation.connector;
 
-public enum StoreType {
-    ROCKETMQ,
-    KAFKA,
-    STANDALONE,
-    PULSAR,
-    RABBITMQ,
-    REDIS,
+/**
+ * k8s operation service
+ */
+public interface RuntimeOptService {
 
+    void createRuntime();
 }
diff --git a/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/AclRemotingService.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/AclRemotingService.java
new file mode 100644
index 0000000..3f99986
--- /dev/null
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/AclRemotingService.java
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.service.remoting;
+
+import org.apache.eventmesh.dashboard.common.model.remoting.acl.CreateAclRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.acl.CreateAclResult;
+import org.apache.eventmesh.dashboard.common.model.remoting.acl.DeleteAclRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.acl.DeleteAclResult;
+import org.apache.eventmesh.dashboard.common.model.remoting.acl.GetAclsRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.acl.GetAclsResult;
+
+/**
+ * A remoting service for ACL operations.
+ */
+public interface AclRemotingService {
+
+    CreateAclResult createAcl(CreateAclRequest createAclRequest);
+
+    DeleteAclResult deleteAcl(DeleteAclRequest deleteAclRequest);
+
+    GetAclsResult getAllAcls(GetAclsRequest getAclsRequest);
+}
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ClientRemotingService.java
similarity index 70%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ClientRemotingService.java
index 271e3f2..df1128f 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ClientRemotingService.java
@@ -15,17 +15,17 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.service.remoting;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+import org.apache.eventmesh.dashboard.common.model.metadata.ClientMetadata;
 
-    private final Integer number;
-    private final String name;
+import java.util.List;
+
+/**
+ * A remoting service for client operations.
+    Not implemented in eventmesh by now
+ */
+public interface ClientRemotingService {
+    List<ClientMetadata> getClientList();
 }
diff --git a/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ConfigRemotingService.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ConfigRemotingService.java
new file mode 100644
index 0000000..7c7a9d1
--- /dev/null
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ConfigRemotingService.java
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.service.remoting;
+
+import org.apache.eventmesh.dashboard.common.model.remoting.config.GetConfigRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.config.GetConfigResult;
+
+/**
+ * A remoting service for config operations. Getting configs from different sources
+ */
+public interface ConfigRemotingService {
+
+    public GetConfigResult getConfigsFromRegistry(GetConfigRequest getConfigRequest);
+
+    public GetConfigResult getConfigsFromRuntime(GetConfigRequest getConfigRequest);
+
+    public GetConfigResult getConfigsFromKafka(GetConfigRequest getConfigRequest);
+
+    public GetConfigResult getConfigsFromRocketMQ(GetConfigRequest getConfigRequest);
+}
diff --git a/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ConnectorRemotingService.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ConnectorRemotingService.java
new file mode 100644
index 0000000..40b020c
--- /dev/null
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/ConnectorRemotingService.java
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.service.remoting;
+
+import org.apache.eventmesh.dashboard.common.model.remoting.connector.CreateConnectorRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.connector.CreateConnectorResult;
+import org.apache.eventmesh.dashboard.common.model.remoting.connector.GetConnectorRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.connector.GetConnectorResult;
+
+/**
+ * A remoting service for connector operations. Get connector info from Registry.
+ */
+public interface ConnectorRemotingService {
+
+    public GetConnectorResult getConnectors(GetConnectorRequest getConnectorRequest);
+
+    public CreateConnectorResult createConnector(CreateConnectorRequest createConnectorRequest);
+}
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/GroupRemotingService.java
similarity index 68%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/GroupRemotingService.java
index 271e3f2..2540746 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/GroupRemotingService.java
@@ -15,17 +15,15 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.service.remoting;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import org.apache.eventmesh.dashboard.common.model.remoting.group.GetGroupResult;
+import org.apache.eventmesh.dashboard.common.model.remoting.group.GetGroupsRequest;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+/**
+ * Group Remoting Service
+ */
+public interface GroupRemotingService {
 
-    private final Integer number;
-    private final String name;
+    GetGroupResult getAllGroups(GetGroupsRequest getGroupsRequest);
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/OffsetRemotingService.java
similarity index 63%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/OffsetRemotingService.java
index 271e3f2..67a771d 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/OffsetRemotingService.java
@@ -15,17 +15,17 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.service.remoting;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import org.apache.eventmesh.dashboard.common.model.remoting.offset.GetOffsetRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.offset.GetOffsetResult;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+/**
+ * interface to operate storage offset
+ */
+public interface OffsetRemotingService {
 
-    private final Integer number;
-    private final String name;
+    GetOffsetResult getOffset(GetOffsetRequest getOffsetRequest);
+
+    GetOffsetResult resetOffset(GetOffsetRequest getOffsetRequest);
 }
diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/SubscriptionRemotingService.java
similarity index 62%
copy from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
copy to eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/SubscriptionRemotingService.java
index 271e3f2..887c1f8 100644
--- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/enums/StatusEnum.java
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/SubscriptionRemotingService.java
@@ -15,17 +15,16 @@
  * limitations under the License.
  */
 
-package org.apache.eventmesh.dashboard.console.enums;
+package org.apache.eventmesh.dashboard.service.remoting;
 
-import lombok.AllArgsConstructor;
-import lombok.Getter;
+import org.apache.eventmesh.dashboard.common.model.remoting.subscription.GetSubscriptionRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.subscription.GetSubscriptionResult;
 
-@Getter
-@AllArgsConstructor
-public enum StatusEnum {
-    INACTIVE(0, "Inactive"),
-    ACTIVE(1, "Active");
+/**
+ * remoting service to get a subscription relationship between a topic and a consumer/producer
+ */
+public interface SubscriptionRemotingService {
 
-    private final Integer number;
-    private final String name;
+    GetSubscriptionResult getSubscription(GetSubscriptionRequest request);
+
 }
diff --git a/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/TopicRemotingService.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/TopicRemotingService.java
new file mode 100644
index 0000000..00b255c
--- /dev/null
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/TopicRemotingService.java
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.service.remoting;
+
+import org.apache.eventmesh.dashboard.common.model.remoting.topic.CreateTopicRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.topic.CreateTopicResult;
+import org.apache.eventmesh.dashboard.common.model.remoting.topic.DeleteTopicRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.topic.DeleteTopicResult;
+import org.apache.eventmesh.dashboard.common.model.remoting.topic.GetTopicsRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.topic.GetTopicsResult;
+
+/**
+ * implement this interface to operate the eventmesh cluster
+ */
+public interface TopicRemotingService {
+
+    CreateTopicResult createTopic(CreateTopicRequest createTopicRequest);
+
+    DeleteTopicResult deleteTopic(DeleteTopicRequest deleteTopicRequest);
+
+    GetTopicsResult getAllTopics(GetTopicsRequest getTopicsRequest);
+
+}
diff --git a/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/UserRemotingService.java b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/UserRemotingService.java
new file mode 100644
index 0000000..69ec414
--- /dev/null
+++ b/eventmesh-dashboard-service/src/main/java/org/apache/eventmesh/dashboard/service/remoting/UserRemotingService.java
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.eventmesh.dashboard.service.remoting;
+
+import org.apache.eventmesh.dashboard.common.model.remoting.user.CreateUserRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.user.DeleterUserRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.user.GetUserRequest;
+import org.apache.eventmesh.dashboard.common.model.remoting.user.GetUserResult;
+
+/**
+ * Remoting Service to manage service users. For example, create a mysql user or get kafka users.
+ */
+public interface UserRemotingService {
+
+    CreateUserRequest createServiceUser(CreateUserRequest request);
+
+    DeleterUserRequest deleteServiceUser(DeleterUserRequest request);
+
+    GetUserResult getServiceUser(GetUserRequest request);
+}