Apache Dubbo Admin API
The Dubbo Admin REST API provides service governance operations for managing services, instances, traffic rules, load balancing, route policies, and dynamic configuration in a Dubbo microservices cluster.
The Dubbo Admin REST API provides service governance operations for managing services, instances, traffic rules, load balancing, route policies, and dynamic configuration in a Dubbo microservices cluster.
{
"swagger": "2.0",
"info": {
"description": "This is a dubbo-admin swagger ui server.",
"title": "Dubbo-Admin API",
"contact": {},
"license": {
"name": "Apache 2.0",
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
},
"version": "1.0"
},
"host": "127.0.0.1:38080",
"basePath": "/",
"paths": {
"/api/{env}/applications": {
"get": {
"description": "Get all applications",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Services"
],
"summary": "Apache Dubbo Get All Applications",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/consumers": {
"get": {
"description": "Get all consumers",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Services"
],
"summary": "Apache Dubbo Get All Consumers",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/metrics/cluster": {
"get": {
"description": "show cluster overview",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"metrics"
],
"summary": "Apache Dubbo 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": "Apache Dubbo 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": "Apache Dubbo 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",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"MockRules"
],
"summary": "Apache Dubbo Create or Update MockRule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"description": "MockRule",
"name": "mockRule",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.MockRule"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"type": "boolean"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"delete": {
"description": "Delete MockRule by id",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"MockRules"
],
"summary": "Apache Dubbo Delete MockRule by Id",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"description": "MockRule",
"name": "mockRule",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.MockRule"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/mock/rule/list": {
"get": {
"description": "Get MockRules by page",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"MockRules"
],
"summary": "Apache Dubbo Get MockRules by Page",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "filter condition",
"name": "filter",
"in": "query"
},
{
"type": "integer",
"description": "page offset",
"name": "offset",
"in": "query"
},
{
"type": "integer",
"description": "page limit",
"name": "limit",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/model.ListMockRulesByPage"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/override": {
"get": {
"description": "Search override rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"OverrideRule"
],
"summary": "Apache Dubbo Search Override Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "application and service must not left empty at the same time",
"name": "application",
"in": "query"
},
{
"type": "string",
"description": "application and service must not left empty at the same time",
"name": "service",
"in": "query"
},
{
"type": "string",
"description": "version of dubbo service",
"name": "serviceVersion",
"in": "query"
},
{
"type": "string",
"description": "group of dubbo service",
"name": "serviceGroup",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/model.DynamicConfig"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"post": {
"description": "Create a new override rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"OverrideRule"
],
"summary": "Apache Dubbo Create a New Override Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"description": "Override Rule Input",
"name": "dynamicConfig",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.DynamicConfig"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"type": "boolean"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/override/disable/{id}": {
"put": {
"description": "Disable the specified rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"OverrideRule"
],
"summary": "Apache Dubbo Disable the Specified Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "rule id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/override/enable/{id}": {
"put": {
"description": "Enable the specified rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"OverrideRule"
],
"summary": "Apache Dubbo Enable the Specified Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "rule id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/override/{id}": {
"get": {
"description": "Show the detail of one specified rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"OverrideRule"
],
"summary": "Apache Dubbo Show the Detail of One Specified Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "rule id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/model.DynamicConfig"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"post": {
"description": "Update override rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"OverrideRule"
],
"summary": "Apache Dubbo Update Override Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "Override Rule Id",
"name": "id",
"in": "path",
"required": true
},
{
"description": "Override Rule Input",
"name": "dynamicConfig",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.DynamicConfig"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"delete": {
"description": "Delete the specified rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"OverrideRule"
],
"summary": "Apache Dubbo Delete the Specified Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "rule id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/condition": {
"get": {
"description": "Search condition rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ConditionRule"
],
"summary": "Apache Dubbo Search Condition Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "application and service must not left empty at the same time",
"name": "application",
"in": "query"
},
{
"type": "string",
"description": "application and service must not left empty at the same time",
"name": "service",
"in": "query"
},
{
"type": "string",
"description": "version of dubbo service",
"name": "serviceVersion",
"in": "query"
},
{
"type": "string",
"description": "group of dubbo service",
"name": "serviceGroup",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/model.ConditionRouteDto"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"post": {
"description": "Create a new condition rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ConditionRule"
],
"summary": "Apache Dubbo Create a New Condition Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"description": "Condition Rule Input",
"name": "routeDto",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.ConditionRouteDto"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/condition/disable/{id}": {
"put": {
"description": "Disable the specified condition rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ConditionRule"
],
"summary": "Apache Dubbo Disable the Specified Condition Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "Condition Rule Id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/condition/enable/{id}": {
"put": {
"description": "Enable the specified condition rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ConditionRule"
],
"summary": "Apache Dubbo Enable the Specified Condition Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "Condition Rule Id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/condition/{id}": {
"get": {
"description": "Show the detail of one specified condition rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ConditionRule"
],
"summary": "Apache Dubbo Show the Detail of One Specified Condition Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "Condition Rule Id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/model.ConditionRouteDto"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"post": {
"description": "Update condition rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ConditionRule"
],
"summary": "Apache Dubbo Update Condition Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "Condition Rule Id",
"name": "id",
"in": "path",
"required": true
},
{
"description": "Condition Rule Input",
"name": "routeDto",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.ConditionRouteDto"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"delete": {
"description": "Delete the specified condition rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ConditionRule"
],
"summary": "Apache Dubbo Delete the Specified Condition Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "Condition Rule Id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/tag": {
"get": {
"description": "Search rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"TagRule"
],
"summary": "Apache Dubbo Search Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "application and service must not left empty at the same time",
"name": "application",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/model.TagRouteDto"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
},
"post": {
"description": "Create a new tag rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"TagRule"
],
"summary": "Apache Dubbo Create a New Tag Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"description": "rule input",
"name": "tagRoute",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.TagRouteDto"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/tag/disable/{id}": {
"put": {
"description": "Disable the specified rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"TagRule"
],
"summary": "Apache Dubbo Disable the Specified Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "rule id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/tag/enable/{id}": {
"put": {
"description": "Enable the specified rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"TagRule"
],
"summary": "Apache Dubbo Enable the Specified Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "rule id",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "boolean"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/model.HTTPError"
}
}
}
}
},
"/api/{env}/rules/route/tag/{id}": {
"get": {
"description": "Show the detail of one specified rule",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"TagRule"
],
"summary": "Apache Dubbo Show the Detail of One Specified Rule",
"parameters": [
{
"type": "string",
"default": "dev",
"description": "environment",
"name": "env",
"in": "path"
},
{
"type": "string",
"description": "rule id",
"name": "id",
"in": "path",
"required": true
}
# --- truncated at 32 KB (90 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/apache-dubbo/refs/heads/main/openapi/apache-dubbo-admin-openapi-original.json