diff --git a/Makefile b/Makefile
index c0f6157..5d86b21 100644
--- a/Makefile
+++ b/Makefile
@@ -100,8 +100,8 @@
 generate: controller-gen ## Generate code containing DeepCopy, DeepCopyInto, and DeepCopyObject method implementations.
 	#$(CONTROLLER_GEN) object:headerFile="./hack/boilerplate.go.txt"  crd:allowDangerousTypes=true paths="./..."
 
-.PHONY: dubbo-admin-swagger
-dubbo-admin-swagger: swagger-install ## Generate dubbo-admin swagger docs.
+.PHONY: swagger
+swagger: swagger-install ## Generate dubbo-admin swagger docs.
 	$(SWAGGER) init --parseDependency -d cmd/admin,pkg/admin -o hack/swagger
 	@rm -f hack/swagger/docs.go hack/swagger/swagger.yaml
 
diff --git a/README.md b/README.md
index e58c3e7..c9c2737 100644
--- a/README.md
+++ b/README.md
@@ -73,7 +73,7 @@
 
 ### Swagger API
 ```shell
-make  dubbo-admin-swagger  #Generate dubbo-admin swagger docs in hack/swagger
+make swagger  #Generate dubbo-admin swagger docs in hack/swagger
 ```
 
 ### 打包
diff --git a/hack/swagger/swagger.json b/hack/swagger/swagger.json
index a8b52ea..51b5000 100644
--- a/hack/swagger/swagger.json
+++ b/hack/swagger/swagger.json
@@ -95,6 +95,93 @@
                 }
             }
         },
+        "/api/{env}/metrics/cluster": {
+            "get": {
+                "description": "show cluster overview",
+                "consumes": [
+                    "application/json"
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "metrics"
+                ],
+                "summary": "show cluster overview",
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "$ref": "#/definitions/model.ClusterMetricsRes"
+                        }
+                    },
+                    "500": {
+                        "description": "Internal Server Error",
+                        "schema": {
+                            "$ref": "#/definitions/model.HTTPError"
+                        }
+                    }
+                }
+            }
+        },
+        "/api/{env}/metrics/flow": {
+            "get": {
+                "description": "show Prometheus collected metrics",
+                "consumes": [
+                    "application/json"
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "metrics"
+                ],
+                "summary": "show Prometheus collected metrics",
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "$ref": "#/definitions/model.FlowMetricsRes"
+                        }
+                    },
+                    "500": {
+                        "description": "Internal Server Error",
+                        "schema": {
+                            "$ref": "#/definitions/model.HTTPError"
+                        }
+                    }
+                }
+            }
+        },
+        "/api/{env}/metrics/metadata": {
+            "get": {
+                "description": "show metadata of the cluster, like dubbo versions, protocols, etc.",
+                "consumes": [
+                    "application/json"
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "metrics"
+                ],
+                "summary": "show metadata of the cluster, like dubbo versions, protocols, etc.",
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "$ref": "#/definitions/model.Metadata"
+                        }
+                    },
+                    "500": {
+                        "description": "Internal Server Error",
+                        "schema": {
+                            "$ref": "#/definitions/model.HTTPError"
+                        }
+                    }
+                }
+            }
+        },
         "/api/{env}/mock/rule": {
             "post": {
                 "description": "Create or update MockRule",
@@ -1488,13 +1575,11 @@
                 "summary": "get rule list",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "accesslog",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Accesslog"
-                        }
+                        "type": "string",
+                        "description": "application name",
+                        "name": "application",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -1617,13 +1702,11 @@
                 "summary": "delete rule",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "accesslog",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Accesslog"
-                        }
+                        "type": "string",
+                        "description": "application name",
+                        "name": "application",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -1633,12 +1716,6 @@
                             "type": "bool"
                         }
                     },
-                    "400": {
-                        "description": "Bad Request",
-                        "schema": {
-                            "$ref": "#/definitions/model.HTTPError"
-                        }
-                    },
                     "500": {
                         "description": "Internal Server Error",
                         "schema": {
@@ -1663,13 +1740,25 @@
                 "summary": "get rule list",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "argument",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Argument"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -1792,13 +1881,25 @@
                 "summary": "delete rule",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "argument",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Argument"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -1808,12 +1909,6 @@
                             "type": "bool"
                         }
                     },
-                    "400": {
-                        "description": "Bad Request",
-                        "schema": {
-                            "$ref": "#/definitions/model.HTTPError"
-                        }
-                    },
                     "500": {
                         "description": "Internal Server Error",
                         "schema": {
@@ -1838,13 +1933,11 @@
                 "summary": "get rule list",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "gray",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Gray"
-                        }
+                        "type": "string",
+                        "description": "application name",
+                        "name": "application",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -1967,13 +2060,11 @@
                 "summary": "delete rule",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "gray",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Gray"
-                        }
+                        "type": "string",
+                        "description": "application name",
+                        "name": "application",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -1983,12 +2074,6 @@
                             "type": "bool"
                         }
                     },
-                    "400": {
-                        "description": "Bad Request",
-                        "schema": {
-                            "$ref": "#/definitions/model.HTTPError"
-                        }
-                    },
                     "500": {
                         "description": "Internal Server Error",
                         "schema": {
@@ -2013,13 +2098,25 @@
                 "summary": "get rule list",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "mock",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Mock"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2142,13 +2239,25 @@
                 "summary": "delete rule",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "mock",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Mock"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2188,13 +2297,25 @@
                 "summary": "get rule list",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "region",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Region"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2317,13 +2438,25 @@
                 "summary": "delete rule",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "region",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Region"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2363,13 +2496,25 @@
                 "summary": "get rule list",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "retry",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Retry"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2382,12 +2527,6 @@
                             }
                         }
                     },
-                    "400": {
-                        "description": "Bad Request",
-                        "schema": {
-                            "$ref": "#/definitions/model.HTTPError"
-                        }
-                    },
                     "500": {
                         "description": "Internal Server Error",
                         "schema": {
@@ -2498,13 +2637,25 @@
                 "summary": "delete rule",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "retry",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Retry"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2514,12 +2665,6 @@
                             "type": "bool"
                         }
                     },
-                    "400": {
-                        "description": "Bad Request",
-                        "schema": {
-                            "$ref": "#/definitions/model.HTTPError"
-                        }
-                    },
                     "500": {
                         "description": "Internal Server Error",
                         "schema": {
@@ -2544,13 +2689,25 @@
                 "summary": "get timeout rule list",
                 "parameters": [
                     {
-                        "description": "timeout rule",
-                        "name": "timeout",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Timeout"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2673,13 +2830,25 @@
                 "summary": "delete a new timeout rule",
                 "parameters": [
                     {
-                        "description": "timeout rule",
-                        "name": "timeout",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Timeout"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2689,12 +2858,6 @@
                             "type": "boolean"
                         }
                     },
-                    "400": {
-                        "description": "Bad Request",
-                        "schema": {
-                            "$ref": "#/definitions/model.HTTPError"
-                        }
-                    },
                     "500": {
                         "description": "Internal Server Error",
                         "schema": {
@@ -2719,13 +2882,25 @@
                 "summary": "get rule list",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "weight",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Weight"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2848,13 +3023,25 @@
                 "summary": "delete rule",
                 "parameters": [
                     {
-                        "description": "rule",
-                        "name": "weight",
-                        "in": "body",
-                        "required": true,
-                        "schema": {
-                            "$ref": "#/definitions/model.Weight"
-                        }
+                        "type": "string",
+                        "description": "service name",
+                        "name": "service",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service version",
+                        "name": "version",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "service group",
+                        "name": "group",
+                        "in": "query",
+                        "required": true
                     }
                 ],
                 "responses": {
@@ -2864,12 +3051,6 @@
                             "type": "bool"
                         }
                     },
-                    "400": {
-                        "description": "Bad Request",
-                        "schema": {
-                            "$ref": "#/definitions/model.HTTPError"
-                        }
-                    },
                     "500": {
                         "description": "Internal Server Error",
                         "schema": {
@@ -2878,6 +3059,29 @@
                     }
                 }
             }
+        },
+        "/api/{env}/version": {
+            "get": {
+                "description": "show basic information of the Admin process",
+                "consumes": [
+                    "application/json"
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "metrics"
+                ],
+                "summary": "show basic information of the Admin process",
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "$ref": "#/definitions/version.Version"
+                        }
+                    }
+                }
+            }
         }
     },
     "definitions": {
@@ -2931,6 +3135,17 @@
                 }
             }
         },
+        "model.ClusterMetricsRes": {
+            "type": "object",
+            "properties": {
+                "data": {
+                    "type": "object",
+                    "additionalProperties": {
+                        "type": "integer"
+                    }
+                }
+            }
+        },
         "model.ConditionMatch": {
             "type": "object",
             "properties": {
@@ -3097,6 +3312,17 @@
                 }
             }
         },
+        "model.FlowMetricsRes": {
+            "type": "object",
+            "properties": {
+                "data": {
+                    "type": "object",
+                    "additionalProperties": {
+                        "type": "number"
+                    }
+                }
+            }
+        },
         "model.Gray": {
             "type": "object",
             "required": [
@@ -3181,6 +3407,34 @@
                 }
             }
         },
+        "model.Metadata": {
+            "type": "object",
+            "properties": {
+                "configCenter": {
+                    "type": "string"
+                },
+                "metadataCenter": {
+                    "type": "string"
+                },
+                "protocols": {
+                    "type": "array",
+                    "items": {}
+                },
+                "registry": {
+                    "type": "string"
+                },
+                "rules": {
+                    "type": "array",
+                    "items": {
+                        "type": "string"
+                    }
+                },
+                "versions": {
+                    "type": "array",
+                    "items": {}
+                }
+            }
+        },
         "model.Mock": {
             "type": "object",
             "required": [
@@ -3590,11 +3844,6 @@
                 1000000,
                 1000000000,
                 60000000000,
-                1,
-                1000,
-                1000000,
-                1000000000,
-                60000000000,
                 3600000000000,
                 1,
                 1000,
@@ -3609,11 +3858,6 @@
                 "Millisecond",
                 "Second",
                 "Minute",
-                "Nanosecond",
-                "Microsecond",
-                "Millisecond",
-                "Second",
-                "Minute",
                 "Hour",
                 "Nanosecond",
                 "Microsecond",
@@ -3622,6 +3866,32 @@
                 "Minute",
                 "Hour"
             ]
+        },
+        "version.Version": {
+            "type": "object",
+            "properties": {
+                "buildDate": {
+                    "type": "string"
+                },
+                "compiler": {
+                    "type": "string"
+                },
+                "gitCommit": {
+                    "type": "string"
+                },
+                "gitTreeState": {
+                    "type": "string"
+                },
+                "gitVersion": {
+                    "type": "string"
+                },
+                "goVersion": {
+                    "type": "string"
+                },
+                "platform": {
+                    "type": "string"
+                }
+            }
         }
     }
 }
\ No newline at end of file
diff --git a/pkg/admin/handlers/traffic/accesslog.go b/pkg/admin/handlers/traffic/accesslog.go
index 3fc7e48..56682da 100644
--- a/pkg/admin/handlers/traffic/accesslog.go
+++ b/pkg/admin/handlers/traffic/accesslog.go
@@ -68,15 +68,21 @@
 // @Tags         TrafficAccesslog
 // @Accept       json
 // @Produce      json
-// @Param        accesslog  body  model.Accesslog      true   "rule"
+// @Param        application  query  string  true   "application name"
 // @Success      200  {bool}    true
-// @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/accesslog [delete]
 func DeleteAccesslog(c *gin.Context) {
-	doAccesslogUpdate(c, func(a *model.Accesslog) error {
-		return accesslogSvc.Delete(a)
-	})
+	a := &model.Accesslog{
+		Application: c.Query("application"),
+	}
+
+	err := accesslogSvc.Delete(a)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchAccesslog   get rule list
@@ -85,7 +91,7 @@
 // @Tags         TrafficAccesslog
 // @Accept       json
 // @Produce      json
-// @Param        accesslog  body  model.Accesslog      true   "rule"
+// @Param        application  query  string  true   "application name"
 // @Success      200  {object}  []model.Accesslog
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/accesslog [get]
diff --git a/pkg/admin/handlers/traffic/argument.go b/pkg/admin/handlers/traffic/argument.go
index c643b86..ada5194 100644
--- a/pkg/admin/handlers/traffic/argument.go
+++ b/pkg/admin/handlers/traffic/argument.go
@@ -68,15 +68,25 @@
 // @Tags         TrafficArgument
 // @Accept       json
 // @Produce      json
-// @Param        argument  body  model.Argument      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {bool}    true
-// @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/argument [delete]
 func DeleteArgument(c *gin.Context) {
-	doArgumentUpdate(c, func(a *model.Argument) error {
-		return argumentSvc.Delete(a)
-	})
+	a := &model.Argument{
+		Service: c.Query("service"),
+		Group:   c.Query("group"),
+		Version: c.Query("version"),
+	}
+
+	err := argumentSvc.Delete(a)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchArgument   get rule list
@@ -85,7 +95,9 @@
 // @Tags         TrafficArgument
 // @Accept       json
 // @Produce      json
-// @Param        argument  body  model.Argument      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {object}  []model.Argument
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/argument [get]
diff --git a/pkg/admin/handlers/traffic/gray.go b/pkg/admin/handlers/traffic/gray.go
index dc7150b..c0c4a17 100644
--- a/pkg/admin/handlers/traffic/gray.go
+++ b/pkg/admin/handlers/traffic/gray.go
@@ -68,15 +68,21 @@
 // @Tags         TrafficGray
 // @Accept       json
 // @Produce      json
-// @Param        gray  body  model.Gray      true   "rule"
+// @Param        application  query  string  true   "application name"
 // @Success      200  {bool}    true
-// @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/gray [delete]
 func DeleteGray(c *gin.Context) {
-	doGrayUpdate(c, func(g *model.Gray) error {
-		return graySVC.Delete(g)
-	})
+	g := &model.Gray{
+		Application: c.Query("application"),
+	}
+
+	err := graySVC.Delete(g)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchGray   get rule list
@@ -85,7 +91,7 @@
 // @Tags         TrafficGray
 // @Accept       json
 // @Produce      json
-// @Param        gray  body  model.Gray      true   "rule"
+// @Param        application  query  string  true   "application name"
 // @Success      200  {object}  []model.Gray
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/gray [get]
diff --git a/pkg/admin/handlers/traffic/mock.go b/pkg/admin/handlers/traffic/mock.go
index bf80a78..b452fb7 100644
--- a/pkg/admin/handlers/traffic/mock.go
+++ b/pkg/admin/handlers/traffic/mock.go
@@ -68,15 +68,26 @@
 // @Tags         TrafficMock
 // @Accept       json
 // @Produce      json
-// @Param        mock  body  model.Mock      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {bool}    true
 // @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/mock [delete]
 func DeleteMock(c *gin.Context) {
-	doMockUpdate(c, func(m *model.Mock) error {
-		return mockSvc.Delete(m)
-	})
+	m := &model.Mock{
+		Service: c.Query("service"),
+		Group:   c.Query("group"),
+		Version: c.Query("version"),
+	}
+
+	err := mockSvc.Delete(m)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchMock   get rule list
@@ -85,7 +96,9 @@
 // @Tags         TrafficMock
 // @Accept       json
 // @Produce      json
-// @Param        mock  body  model.Mock      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {object}  []model.Mock
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/mock [get]
diff --git a/pkg/admin/handlers/traffic/region.go b/pkg/admin/handlers/traffic/region.go
index 616b252..e07504d 100644
--- a/pkg/admin/handlers/traffic/region.go
+++ b/pkg/admin/handlers/traffic/region.go
@@ -68,15 +68,26 @@
 // @Tags         TrafficRegion
 // @Accept       json
 // @Produce      json
-// @Param        region  body  model.Region      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {bool}    true
 // @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/region [delete]
 func DeleteRegion(c *gin.Context) {
-	doRegionUpdate(c, func(r *model.Region) error {
-		return regionSVC.Delete(r)
-	})
+	r := &model.Region{
+		Service: c.Query("service"),
+		Group:   c.Query("group"),
+		Version: c.Query("version"),
+	}
+
+	err := regionSVC.Delete(r)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchRegion   get rule list
@@ -85,7 +96,9 @@
 // @Tags         TrafficRegion
 // @Accept       json
 // @Produce      json
-// @Param        region  body  model.Region      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {object}  []model.Region
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/region [get]
diff --git a/pkg/admin/handlers/traffic/retry.go b/pkg/admin/handlers/traffic/retry.go
index 0c7c158..71cbba3 100644
--- a/pkg/admin/handlers/traffic/retry.go
+++ b/pkg/admin/handlers/traffic/retry.go
@@ -68,15 +68,25 @@
 // @Tags         TrafficRetry
 // @Accept       json
 // @Produce      json
-// @Param        retry  body  model.Retry      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {bool}    true
-// @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/retry [delete]
 func DeleteRetry(c *gin.Context) {
-	doRetryUpdate(c, func(r *model.Retry) error {
-		return retrySvc.Delete(r)
-	})
+	r := &model.Retry{
+		Service: c.Query("service"),
+		Group:   c.Query("group"),
+		Version: c.Query("version"),
+	}
+
+	err := retrySvc.Delete(r)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchRetry   get rule list
@@ -85,9 +95,10 @@
 // @Tags         TrafficRetry
 // @Accept       json
 // @Produce      json
-// @Param        retry  body  model.Retry      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {object}  []model.Retry
-// @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/retry [get]
 func SearchRetry(c *gin.Context) {
@@ -96,11 +107,6 @@
 		Group:   c.Query("group"),
 		Version: c.Query("version"),
 	}
-	if err := c.ShouldBindJSON(&r); err != nil {
-		logger.Errorf("Error parsing rule input when trying to create override rule, err msg is %s.", err.Error())
-		c.JSON(http.StatusBadRequest, model.HTTPError{Error: err.Error()})
-		return
-	}
 
 	result, err := retrySvc.Search(r)
 	if err != nil {
diff --git a/pkg/admin/handlers/traffic/timeout.go b/pkg/admin/handlers/traffic/timeout.go
index 9b8ec23..48adc85 100644
--- a/pkg/admin/handlers/traffic/timeout.go
+++ b/pkg/admin/handlers/traffic/timeout.go
@@ -68,15 +68,25 @@
 // @Tags         TrafficTimeout
 // @Accept       json
 // @Produce      json
-// @Param        timeout  body  model.Timeout      true   "timeout rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {boolean} true
-// @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/timeout [delete]
 func DeleteTimeout(c *gin.Context) {
-	doTimeoutUpdate(c, func(t *model.Timeout) error {
-		return timeoutSvc.Delete(t)
-	})
+	t := &model.Timeout{
+		Service: c.Query("service"),
+		Group:   c.Query("group"),
+		Version: c.Query("version"),
+	}
+
+	err := timeoutSvc.Delete(t)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchTimeout get timeout rule list
@@ -85,7 +95,9 @@
 // @Tags         TrafficTimeout
 // @Accept       json
 // @Produce      json
-// @Param        timeout  body  model.Timeout      true   "timeout rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {object}  []model.Timeout
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/timeout [get]
diff --git a/pkg/admin/handlers/traffic/weight.go b/pkg/admin/handlers/traffic/weight.go
index 4afae5b..ad12b36 100644
--- a/pkg/admin/handlers/traffic/weight.go
+++ b/pkg/admin/handlers/traffic/weight.go
@@ -68,15 +68,25 @@
 // @Tags         TrafficWeight
 // @Accept       json
 // @Produce      json
-// @Param        weight  body  model.Weight      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {bool}    true
-// @Failure      400  {object}  model.HTTPError
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/weight [delete]
 func DeleteWeight(c *gin.Context) {
-	doWeightUpdate(c, func(p *model.Percentage) error {
-		return weightSvc.Delete(p)
-	})
+	p := &model.Percentage{
+		Service: c.Query("service"),
+		Group:   c.Query("group"),
+		Version: c.Query("version"),
+	}
+
+	err := weightSvc.Delete(p)
+	if err != nil {
+		c.JSON(http.StatusInternalServerError, model.HTTPError{Error: err.Error()})
+	}
+
+	c.JSON(http.StatusOK, true)
 }
 
 // SearchWeight get rule list
@@ -85,7 +95,9 @@
 // @Tags         TrafficWeight
 // @Accept       json
 // @Produce      json
-// @Param        weight  body  model.Weight      true   "rule"
+// @Param        service  query  string  true   "service name"
+// @Param        version  query  string  true   "service version"
+// @Param        group    query  string  true   "service group"
 // @Success      200  {object}  []model.Weight
 // @Failure      500  {object}  model.HTTPError
 // @Router       /api/{env}/traffic/weight [get]
