Apollo OpenAPI (0.3.8)

Download OpenAPI specification:

Apollo配置中心OpenAPI接口文档

认证方式

所有 API 接口都需要通过 Authorization header 进行身份验证。

获取 Token 的方式:

  1. Portal 管理界面获取:登录 Portal → 管理员工具 → 开放平台授权管理 → 创建第三方应用,获取 Token。
  2. Token 格式Authorization: token_value
  3. Token 权限:按应用/环境/命名空间授予,建议不同用途分别创建。

使用示例

curl -X GET "http://localhost:8070/openapi/v1/apps" \
-H "Authorization: your_token_here"

App Management

应用管理相关接口,包括应用的创建、查询、更新、删除等操作

创建应用 (original openapi)

POST /openapi/v1/apps

Authorizations:
ApiKeyAuth
Request Body schema: application/json
required
assignAppRoleToSelf
boolean

是否将应用角色分配给当前用户。当设置为true时,当前token用户将获得该应用的完全操作权限

admins
Array of strings unique

应用管理员用户名列表。应用负责人默认具有项目管理员权限。管理员可以创建命名空间、集群并分配用户权限

object (OpenAppDTO)

Apollo应用信息数据传输对象,包含应用的基本信息和元数据

Responses

Request samples

Content type
application/json
{
  • "assignAppRoleToSelf": true,
  • "admins": [
    ],
  • "app": {
    }
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

查找应用 (original openapi)

POST /openapi/v1/apps

Authorizations:
ApiKeyAuth
query Parameters
appIds
string
Example: appIds=123

查找应用

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

获取当前Consumer授权的应用列表 (original openapi)

GET /openapi/v1/apps/authorized

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

获取应用的环境集群信息 (original openapi)

GET /openapi/v1/apps/{appId}/envclusters

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

获取单个应用信息(new added)

GET /openapi/v1/apps/{appId}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "dev-user",
  • "dataChangeCreatedByDisplayName": "Apollo Admin",
  • "dataChangeLastModifiedByDisplayName": "Dev User",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-20T15:45:00.000Z",
  • "name": "Sample Application",
  • "appId": "sample-app",
  • "orgId": "default",
  • "orgName": "Default Organization",
  • "ownerName": "Apollo Admin",
  • "ownerEmail": "admin@apollo.com"
}

更新应用(new added)

PUT /openapi/v1/apps/{appId}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
dataChangeCreatedBy
string

数据创建者用户名,记录是谁创建了这个应用

dataChangeCreatedByDisplayName
string

数据创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

数据最后修改者用户名,记录最后一次修改应用信息的用户

dataChangeLastModifiedByDisplayName
string

数据最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

数据创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

数据最后修改时间,ISO 8601格式的时间戳

name
string

应用名称,用于显示的友好名称

appId
string

应用唯一标识符,全局唯一的应用ID

orgId
string

组织ID,应用所属组织的唯一标识

orgName
string

组织名称,应用所属组织的显示名称

ownerName
string

应用负责人姓名,应用的主要负责人

ownerEmail
string

应用负责人邮箱地址,用于接收应用相关通知

ownerDisplayName
string

Responses

Request samples

Content type
application/json
{
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z",
  • "name": "string",
  • "appId": "string",
  • "orgId": "string",
  • "orgName": "string",
  • "ownerName": "string",
  • "ownerEmail": "string",
  • "ownerDisplayName": "string"
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

删除应用(new added)

DELETE /openapi/v1/apps/{appId}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

query Parameters
operator
string

操作人用户名

Responses

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

获取当前Consumer/User的应用列表(分页)(new added)

GET /openapi/v1/apps/by-self

Authorizations:
ApiKeyAuth
query Parameters
page
required
integer >= 0

页数

size
required
integer >= 0

页大小

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

获取应用环境集群详情(new added)

/openapi/v1/apps/{appId}/env-cluster-info

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

在指定环境创建应用(new added)

POST /openapi/v1/apps/envs/{env}

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识,例如 DEV、FAT、UAT、PROD

query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
dataChangeCreatedBy
string

数据创建者用户名,记录是谁创建了这个应用

dataChangeCreatedByDisplayName
string

数据创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

数据最后修改者用户名,记录最后一次修改应用信息的用户

dataChangeLastModifiedByDisplayName
string

数据最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

数据创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

数据最后修改时间,ISO 8601格式的时间戳

name
string

应用名称,用于显示的友好名称

appId
string

应用唯一标识符,全局唯一的应用ID

orgId
string

组织ID,应用所属组织的唯一标识

orgName
string

组织名称,应用所属组织的显示名称

ownerName
string

应用负责人姓名,应用的主要负责人

ownerEmail
string

应用负责人邮箱地址,用于接收应用相关通知

ownerDisplayName
string

Responses

Request samples

Content type
application/json
{
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z",
  • "name": "string",
  • "appId": "string",
  • "orgId": "string",
  • "orgName": "string",
  • "ownerName": "string",
  • "ownerEmail": "string",
  • "ownerDisplayName": "string"
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

查找缺失的环境(new added)

GET /openapi/v1/apps/{appId}/miss-envs

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Item Management

配置项管理相关接口,包括配置的增删改查、批量操作、同步等功能

获取单个配置项 (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items/{key}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

key
required
string

配置项键名

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "dev-user",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-20T14:25:00.000Z",
  • "key": "server.port",
  • "type": 0,
  • "value": "8080",
  • "comment": "服务器端口配置"
}

更新配置项 (original openapi)

PUT /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items/{key}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

key
required
string
query Parameters
createIfNotExists
required
boolean
Default: false
Example: createIfNotExists=false
operator
string

操作人用户名

Request Body schema: application/json
required
key
string

配置项的键名,在同一命名空间内唯一标识一个配置项

value
string

配置项的值,可以是字符串、数字、JSON等格式

type
integer

配置项类型

comment
string

配置项的注释说明,用于描述配置项的用途和含义

lineNum
integer <int32>

配置项在命名空间中的行号,用于保持和旧版 Portal 配置项列表一致的默认展示顺序

object (OpenItemExtendDTO)

Apollo配置项扩展信息,包含状态、类型、归属及变更对比信息

dataChangeCreatedBy
string

配置项创建者用户名,记录是谁创建了这个配置项

dataChangeCreatedByDisplayName
string

配置项创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

配置项最后修改者用户名,记录最后一次修改配置的用户

dataChangeLastModifiedByDisplayName
string

配置项最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

配置项创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

配置项最后修改时间,ISO 8601格式的时间戳

Responses

Request samples

Content type
application/json
{
  • "key": "string",
  • "value": "string",
  • "type": 0,
  • "comment": "string",
  • "lineNum": 0,
  • "extendInfo": {
    },
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z"
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

删除配置项 (original openapi)

DELETE /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items/{key}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

key
required
string

配置项键名

query Parameters
operator
string

操作人用户名

Responses

获取命名空间下的配置项列表 (original openapi)

获取指定命名空间的配置项列表,支持分页

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

query Parameters
page
required
integer >= 0

页码,从0开始

size
required
integer >= 0
Example: size=50

每页数量

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "size": 50,
  • "total": 3,
  • "content": [
    ]
}

创建新的配置项 (original openapi)

POST /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
key
string

配置项的键名,在同一命名空间内唯一标识一个配置项

value
string

配置项的值,可以是字符串、数字、JSON等格式

type
integer

配置项类型

comment
string

配置项的注释说明,用于描述配置项的用途和含义

lineNum
integer <int32>

配置项在命名空间中的行号,用于保持和旧版 Portal 配置项列表一致的默认展示顺序

object (OpenItemExtendDTO)

Apollo配置项扩展信息,包含状态、类型、归属及变更对比信息

dataChangeCreatedBy
string

配置项创建者用户名,记录是谁创建了这个配置项

dataChangeCreatedByDisplayName
string

配置项创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

配置项最后修改者用户名,记录最后一次修改配置的用户

dataChangeLastModifiedByDisplayName
string

配置项最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

配置项创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

配置项最后修改时间,ISO 8601格式的时间戳

Responses

Request samples

Content type
application/json
{
  • "key": "string",
  • "value": "string",
  • "type": 0,
  • "comment": "string",
  • "lineNum": 0,
  • "extendInfo": {
    },
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z"
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "apollo",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-15T10:30:00.000Z",
  • "key": "server.port",
  • "type": 0,
  • "value": "8080",
  • "comment": "服务器端口配置"
}

通过文本批量修改配置项 (new added)

PUT /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items:

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
appId
string

应用唯一标识

env
string

环境标识

clusterName
string

集群名称

namespaceName
string

命名空间名称

namespaceId
integer <int64>

命名空间ID

format
string

命名空间格式类型(properties/xml/json/yml等)

configText
string

配置内容的原始文本

operator
string

操作者用户名

Responses

Request samples

Content type
application/json
{
  • "appId": "string",
  • "env": "string",
  • "clusterName": "string",
  • "namespaceName": "string",
  • "namespaceId": 0,
  • "format": "string",
  • "configText": "string",
  • "operator": "string"
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

通过查询参数获取配置项(支持编码的key) (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/encodedItems/{key}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

key
required
string

配置项键名(需要URL编码)

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "dev-user",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-20T14:25:00.000Z",
  • "key": "spring.datasource.url",
  • "type": 0,
  • "value": "jdbc:mysql://localhost:3306/apollo?useUnicode=true&characterEncoding=utf8",
  • "comment": "数据库连接地址,包含特殊字符"
}

通过编码的key更新配置项 (original openapi)

PUT /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/encodedItems/{key}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

key
required
string

配置项键名(需要URL编码)

query Parameters
createIfNotExists
required
boolean
Default: false
Example: createIfNotExists=false

若不存在则创建(true/false)

operator
string

操作人用户名

Request Body schema: application/json
required
key
string

配置项的键名,在同一命名空间内唯一标识一个配置项

value
string

配置项的值,可以是字符串、数字、JSON等格式

type
integer

配置项类型

comment
string

配置项的注释说明,用于描述配置项的用途和含义

lineNum
integer <int32>

配置项在命名空间中的行号,用于保持和旧版 Portal 配置项列表一致的默认展示顺序

object (OpenItemExtendDTO)

Apollo配置项扩展信息,包含状态、类型、归属及变更对比信息

dataChangeCreatedBy
string

配置项创建者用户名,记录是谁创建了这个配置项

dataChangeCreatedByDisplayName
string

配置项创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

配置项最后修改者用户名,记录最后一次修改配置的用户

dataChangeLastModifiedByDisplayName
string

配置项最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

配置项创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

配置项最后修改时间,ISO 8601格式的时间戳

Responses

Request samples

Content type
application/json
{
  • "key": "string",
  • "value": "string",
  • "type": 0,
  • "comment": "string",
  • "lineNum": 0,
  • "extendInfo": {
    },
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z"
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

通过编码的key删除配置项 (original openapi)

DELETE /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/encodedItems/{key}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
key
required
string
query Parameters
operator
required
string

Responses

获取分支下的配置项 (new added)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/branches/{branchName}/items:

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

branchName
required
string

分支名称

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

对比命名空间配置差异 (new added)

POST /apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items/diff

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

Request Body schema: application/json
required
Array of objects (OpenNamespaceIdentifier)

目标命名空间标识列表

Array of objects (OpenItemDTO)

需要修改的配置项列表

Responses

Request samples

Content type
application/json
{
  • "syncToNamespaces": [
    ],
  • "syncItems": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

同步配置项到多个命名空间 (new added)

POST /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items/synchronize:

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string
namespaceName
required
string
query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
Array of objects (OpenNamespaceIdentifier)

目标命名空间标识列表

Array of objects (OpenItemDTO)

需要修改的配置项列表

Responses

Request samples

Content type
application/json
{
  • "syncToNamespaces": [
    ],
  • "syncItems": [
    ]
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

验证配置文本语法 (new added)

POST /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items/validation

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
Request Body schema: application/json
required
appId
string

应用唯一标识

env
string

环境标识

clusterName
string

集群名称

namespaceName
string

命名空间名称

namespaceId
integer <int64>

命名空间ID

format
string

命名空间格式类型(properties/xml/json/yml等)

configText
string

配置内容的原始文本

operator
string

操作者用户名

Responses

Request samples

Content type
application/json
{
  • "appId": "string",
  • "env": "string",
  • "clusterName": "string",
  • "namespaceName": "string",
  • "namespaceId": 0,
  • "format": "string",
  • "configText": "string",
  • "operator": "string"
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

撤销配置项更改 (new added)

POST /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/items/revocation

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
query Parameters
operator
string

操作人用户名

Responses

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

Release Management

发布管理相关接口,包括配置发布、发布历史、灰度发布等功能

创建发布 (original openapi)

创建发布

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

app标识

env
required
string

环境标识

clusterName
required
string
namespaceName
required
string

命名空间名称

query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
releaseTitle
string

发布标题,用于标识这次发布的名称或版本号

releaseComment
string

发布备注,详细描述本次发布的变更内容和目的

releasedBy
string

发布操作者用户名,记录是谁执行了这次发布操作

isEmergencyPublish
boolean

是否为紧急发布,紧急发布可能会跳过某些审核流程

Responses

Request samples

Content type
application/json
{
  • "releaseTitle": "string",
  • "releaseComment": "string",
  • "releasedBy": "string",
  • "isEmergencyPublish": true
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "apollo",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-15T10:30:00.000Z",
  • "id": 12345,
  • "appId": "sample-app",
  • "clusterName": "default",
  • "namespaceName": "application",
  • "name": "Release v1.0.0",
  • "configurations": {
    },
  • "comment": "首次发布,包含基础配置"
}

获取最新活跃发布 (original openapi)

查询命名空间最新活跃发布

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "apollo",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-15T10:30:00.000Z",
  • "id": 12345,
  • "appId": "sample-app",
  • "clusterName": "default",
  • "namespaceName": "application",
  • "name": "Release v1.2.0",
  • "configurations": {
    },
  • "comment": "最新生产发布版本,包含性能优化"
}

创建灰度发布 (original openapi)

创建灰度发布

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

app标识

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

branchName
required
string

分支名称

query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
releaseTitle
string

发布标题,用于标识这次发布的名称或版本号

releaseComment
string

发布备注,详细描述本次发布的变更内容和目的

releasedBy
string

发布操作者用户名,记录是谁执行了这次发布操作

isEmergencyPublish
boolean

是否为紧急发布,紧急发布可能会跳过某些审核流程

Responses

Request samples

Content type
application/json
{
  • "releaseTitle": "string",
  • "releaseComment": "string",
  • "releasedBy": "string",
  • "isEmergencyPublish": true
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "id": 0,
  • "appId": "",
  • "clusterName": "",
  • "namespaceName": "",
  • "name": "",
  • "configurations": {
    },
  • "comment": ""
}

创建灰度删除发布 (original openapi)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
branchName
required
string
query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
releaseTitle
string

发布标题,用于标识这次灰度删除发布的名称或版本号

releaseComment
string

发布备注,详细描述本次灰度删除发布的目的和删除的配置项

releasedBy
string

发布操作者用户名,记录是谁执行了这次灰度删除发布操作

isEmergencyPublish
boolean

是否为紧急发布,紧急发布可能会跳过某些审核流程

grayDelKeys
Array of strings

需要在灰度发布中删除的配置项键名列表

Responses

Request samples

Content type
application/json
{
  • "releaseTitle": "string",
  • "releaseComment": "string",
  • "releasedBy": "string",
  • "isEmergencyPublish": true,
  • "grayDelKeys": [
    ]
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "id": 0,
  • "appId": "",
  • "clusterName": "",
  • "namespaceName": "",
  • "name": "",
  • "configurations": {
    },
  • "comment": ""
}

回滚发布 (original openapi)

回滚到指定的发布版本

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

releaseId
required
integer <int64>

发布ID

query Parameters
operator
string

操作人用户名

toReleaseId
integer <int64>

要回滚到的目标发布ID;不传时回滚到上一版本

Responses

获取发布详情 (new added)

GET /openapi/v1/envs/{env}/releases/{releaseId}

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

releaseId
required
integer <int64>

发布ID

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "id": 0,
  • "appId": "",
  • "clusterName": "",
  • "namespaceName": "",
  • "name": "",
  • "configurations": {
    },
  • "comment": ""
}

获取活跃发布(分页) (new added)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/releases/active

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

query Parameters
page
required
integer

页码,从0开始

size
required
integer
Example: size=5

每页数量

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Compare two releases

Get the configuration differences between two releases.

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

Environment

query Parameters
baseReleaseId
required
integer <int64>

The base release ID

toCompareReleaseId
required
integer <int64>

The release ID to compare against

Responses

Response samples

Content type
application/json
{
  • "changes": [
    ]
}

Cluster Management

集群管理相关接口,包括集群的创建、查询、删除等操作

获取指定集群信息 (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
clusterName
required
string
env
required
string

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "ops-user",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-18T09:15:00.000Z",
  • "name": "production",
  • "appId": "sample-app"
}

删除集群 (new added)

DELETE /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}

Authorizations:
ApiKeyAuth
path Parameters
env
required
string
appId
required
string
clusterName
required
string
query Parameters
operator
string

操作人用户名,openapi外部调用时需传入

Responses

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

创建集群 (original openapi)

POST /openapi/v1/envs/{env}/apps/{appId}/clusters

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string
Request Body schema: application/json
required
dataChangeCreatedBy
string

集群创建者用户名,记录是谁创建了这个集群

dataChangeCreatedByDisplayName
string

集群创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

集群最后修改者用户名,记录最后一次修改集群信息的用户

dataChangeLastModifiedByDisplayName
string

集群最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

集群创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

集群最后修改时间,ISO 8601格式的时间戳

name
string

集群名称,在同一应用和环境下唯一标识一个集群

appId
string

所属应用的唯一标识符

id
integer <int64>

集群的唯一标识符

parentClusterId
integer <int64>

父集群的ID

comment
string

集群的备注说明

Responses

Request samples

Content type
application/json
{
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z",
  • "name": "string",
  • "appId": "string",
  • "id": 0,
  • "parentClusterId": 0,
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "apollo",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-15T10:30:00.000Z",
  • "name": "test-cluster",
  • "appId": "sample-app"
}

Namespace Management

命名空间管理相关接口,包括命名空间的创建、查询、配置等操作

创建Namespace (new added)

POST /openapi/v1/apps/{appId}/namespaces

Authorizations:
ApiKeyAuth
query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
Array
appId
string

所属应用的唯一标识符

env
string

所在那个环境创建

clusterName
string

所属集群的名称

appNamespaceName
string

根据已创建的appnamespace来实例化namespace

Responses

Request samples

Content type
application/json
[
  • {
    }
]

获取指定集群下的所有Namespace (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
query Parameters
fillItemDetail
required
boolean
Default: true
Example: fillItemDetail=true
extendInfo
boolean
Default: false

Responses

Response samples

Content type
application/json
[
  • {
    }
]

获取指定的Namespace (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
query Parameters
fillItemDetail
required
boolean
Default: true
Example: fillItemDetail=true
extendInfo
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "appId": "",
  • "clusterName": "",
  • "namespaceName": "",
  • "comment": "",
  • "format": "",
  • "isPublic": false,
  • "items": [
    ]
}

查询关联Namespace对应的公共Namespace详情 (new added)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/associated-public-namespace

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

appId
required
string

应用ID

clusterName
required
string

集群名称

namespaceName
required
string

关联Namespace名称

query Parameters
extendInfo
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "apollo",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-20T11:00:00.000Z",
  • "appId": "public-owner-app",
  • "clusterName": "default",
  • "namespaceName": "public.namespace",
  • "comment": "公共 namespace 示例",
  • "format": "properties",
  • "isPublic": true,
  • "parentAppId": "public-owner-app",
  • "isConfigHidden": false,
  • "itemModifiedCnt": 0,
  • "items": [
    ]
}

获取应用下所有Namespace的发布状态 (new added)

GET /openapi/v1/apps/{appId}/namespaces/releases/status

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

Responses

Response samples

Content type
application/json
{
  • "projectA": {
    },
  • "projectB": {
    }
}

查询namespace使用情况(new added)

GET /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/namespaces/{namespaceName}/usage

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

Responses

Response samples

Content type
application/json
[
  • {
    }
]

查找缺失的Namespace (new added)

GET /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/missing-namespaces

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

Responses

Response samples

Content type
application/json
[
  • ""
]

创建缺失的Namespace (new added)

POST /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/missing-namespaces

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

query Parameters
operator
string

操作人用户名

Responses

删除指定的Namespace (new added)

DELETE /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/namespaces/{namespaceName}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

query Parameters
operator
string

操作人用户名

Responses

AppNamespace Management

AppNamespace管理相关接口,包括创建、查询、删除等操作

查询appnamespace使用情况(new added)

GET /openapi/v1/apps/{appId}/appnamespaces/{namespaceName}/usage

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

namespaceName
required
string

命名空间名称

Responses

Response samples

Content type
application/json
[
  • {
    }
]

创建AppNamespace (original openapi)

POST /openapi/v1/apps/{appId}/appnamespaces

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
dataChangeCreatedBy
string

命名空间创建者用户名,记录是谁创建了这个应用命名空间

dataChangeCreatedByDisplayName
string

命名空间创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

命名空间最后修改者用户名,记录最后一次修改命名空间信息的用户

dataChangeLastModifiedByDisplayName
string

命名空间最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

命名空间创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

命名空间最后修改时间,ISO 8601格式的时间戳

name
string

命名空间名称,在同一应用内唯一标识一个命名空间

appId
string

所属应用的唯一标识符

format
string

命名空间格式类型,如properties、xml、json、yml等

isPublic
boolean

是否为公共命名空间,公共命名空间可以被其他应用关联使用

appendNamespacePrefix
boolean
Default: true

对于公共命名空间,是否在命名空间名称前添加前缀

comment
string

命名空间备注说明,描述命名空间的用途和包含的配置类型

Responses

Request samples

Content type
application/json
{
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z",
  • "name": "string",
  • "appId": "string",
  • "format": "string",
  • "isPublic": true,
  • "appendNamespacePrefix": true,
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "apollo",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-15T10:30:00.000Z",
  • "name": "database",
  • "appId": "sample-app",
  • "format": "properties",
  • "isPublic": false,
  • "appendNamespacePrefix": true,
  • "comment": "数据库相关配置命名空间"
}

获取指定应用的AppNamespace (new added)

GET /openapi/v1/apps/{appId}/appnamespaces

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

获取所有公共AppNamespace (new added)

GET /openapi/v1/appnamespaces/public

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

获取指定的AppNamespace (new added)

GET /openapi/v1/apps/{appId}/appnamespaces/{namespaceName}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

namespaceName
required
string

命名空间名称

query Parameters
extendInfo
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "name": "",
  • "appId": "",
  • "format": "",
  • "isPublic": false,
  • "appendNamespacePrefix": false,
  • "comment": ""
}

删除AppNamespace (new added)

DELETE /openapi/v1/apps/{appId}/appnamespaces/{namespaceName}

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

namespaceName
required
string

命名空间名称

query Parameters
operator
string

操作人用户名

Responses

获取公共AppNamespace的所有实例 (new added)

GET /openapi/v1/envs/{env}/appnamespaces/{publicNamespaceName}/instances

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

publicNamespaceName
required
string

公共命名空间名称

query Parameters
page
required
integer

页码,从0开始

size
required
integer
Example: size=10

每页数量

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Namespace Lock Management

命名空间锁管理相关接口

获取Namespace的锁状态 (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/lock

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string

Responses

Response samples

Content type
application/json
{
  • "namespaceName": "",
  • "isLocked": false,
  • "lockedBy": ""
}

Namespace Branch Management

命名空间分支管理相关接口,包括分支创建、合并、灰度发布等功能

合并分支 (original openapi)

合并灰度分支并可选择删除分支

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

branchName
required
string

分支名称

query Parameters
deleteBranch
required
boolean
Example: deleteBranch=true

合并后是否删除分支(true/false)

Request Body schema: application/json
required
releaseTitle
string

发布标题,用于标识这次发布的名称或版本号

releaseComment
string

发布备注,详细描述本次发布的变更内容和目的

releasedBy
string

发布操作者用户名,记录是谁执行了这次发布操作

isEmergencyPublish
boolean

是否为紧急发布,紧急发布可能会跳过某些审核流程

Responses

Request samples

Content type
application/json
{
  • "releaseTitle": "string",
  • "releaseComment": "string",
  • "releasedBy": "string",
  • "isEmergencyPublish": true
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "apollo",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-15T10:30:00.000Z",
  • "id": 12346,
  • "appId": "sample-app",
  • "clusterName": "default",
  • "namespaceName": "application",
  • "name": "Merge from branch feature-123",
  • "configurations": {
    },
  • "comment": "合并功能分支到主分支,包含新功能配置"
}

获取命名空间分支信息 (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/branches

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

query Parameters
extendInfo
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "apollo",
  • "dataChangeLastModifiedBy": "dev-user",
  • "dataChangeCreatedTime": "2024-01-15T10:30:00.000Z",
  • "dataChangeLastModifiedTime": "2024-01-20T14:25:00.000Z",
  • "appId": "sample-app",
  • "clusterName": "default",
  • "namespaceName": "application",
  • "comment": "功能分支,用于测试新特性",
  • "format": "properties",
  • "isPublic": false,
  • "items": [
    ]
}

创建命名空间分支 (original openapi)

POST /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/branches

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

app标识

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

query Parameters
operator
string

操作人用户名

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "appId": "",
  • "clusterName": "",
  • "namespaceName": "",
  • "comment": "",
  • "format": "",
  • "isPublic": false,
  • "items": [
    ]
}

删除命名空间分支 (original openapi)

DELETE /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/branches/{branchName}

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

appId
required
string

应用ID

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

branchName
required
string

分支名称

query Parameters
operator
string

操作人用户名

Responses

合并分支到主分支 (new added)

POST /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/branches/{branchName}

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

appId
required
string

应用ID

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

branchName
required
string

分支名称

query Parameters
deleteBranch
required
boolean
Example: deleteBranch=true

合并后是否删除分支(true/false)

operator
string

操作人用户名

Request Body schema: application/json
required
releaseTitle
string

发布标题,用于标识这次发布的名称或版本号

releaseComment
string

发布备注,详细描述本次发布的变更内容和目的

releasedBy
string

发布操作者用户名,记录是谁执行了这次发布操作

isEmergencyPublish
boolean

是否为紧急发布,紧急发布可能会跳过某些审核流程

Responses

Request samples

Content type
application/json
{
  • "releaseTitle": "string",
  • "releaseComment": "string",
  • "releasedBy": "string",
  • "isEmergencyPublish": true
}

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "id": 0,
  • "appId": "",
  • "clusterName": "",
  • "namespaceName": "",
  • "name": "",
  • "configurations": {
    },
  • "comment": ""
}

获取分支灰度发布规则 (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/branches/{branchName}/rules

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

app标识

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

branchName
required
string

分支名称

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "appId": "",
  • "clusterName": "",
  • "namespaceName": "",
  • "branchName": "",
  • "ruleItems": [
    ]
}

更新分支灰度发布规则 (original openapi)

PUT /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/branches/{branchName}/rules

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

应用ID

env
required
string

环境标识

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

branchName
required
string

分支名称

query Parameters
operator
string

操作人用户名

Request Body schema: application/json
required
dataChangeCreatedBy
string

灰度规则创建者用户名,记录是谁创建了这个灰度发布规则

dataChangeCreatedByDisplayName
string

灰度规则创建者显示名称,用于展示创建者的友好名称

dataChangeLastModifiedBy
string

灰度规则最后修改者用户名,记录最后一次修改规则的用户

dataChangeLastModifiedByDisplayName
string

灰度规则最后修改者显示名称,用于展示最后修改者的友好名称

dataChangeCreatedTime
string

灰度规则创建时间,ISO 8601格式的时间戳

dataChangeLastModifiedTime
string

灰度规则最后修改时间,ISO 8601格式的时间戳

appId
string

所属应用的唯一标识符

clusterName
string

所属集群的名称

namespaceName
string

所属命名空间的名称

branchName
string

灰度分支名称,标识灰度发布的分支

Array of objects (OpenGrayReleaseRuleItemDTO) unique

灰度发布规则项列表,包含具体的灰度规则条件

Responses

Request samples

Content type
application/json
{
  • "dataChangeCreatedBy": "string",
  • "dataChangeCreatedByDisplayName": "string",
  • "dataChangeLastModifiedBy": "string",
  • "dataChangeLastModifiedByDisplayName": "string",
  • "dataChangeCreatedTime": "2025-09-29T12:34:56Z",
  • "dataChangeLastModifiedTime": "2025-09-29T12:34:56Z",
  • "appId": "string",
  • "clusterName": "string",
  • "namespaceName": "string",
  • "branchName": "string",
  • "ruleItems": [
    ]
}

Instance Management

实例管理相关接口,包括实例查询、配置生效状态等功能

获取命名空间下的实例数量 (original openapi)

GET /openapi/v1/envs/{env}/apps/{appId}/clusters/{clusterName}/namespaces/{namespaceName}/instances

Authorizations:
ApiKeyAuth
path Parameters
env
required
string
appId
required
string

应用ID

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

Responses

Response samples

Content type
application/json
0
0

根据发布版本查询实例(支持分页) (new added)

GET /openapi/v1/envs/{env}/instances/by-release

Authorizations:
ApiKeyAuth
path Parameters
env
required
string
query Parameters
releaseId
required
integer <int64>
page
required
integer
size
required
integer
Example: size=20

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "size": 0,
  • "total": 0,
  • "instances": [
    ]
}

根据namespaceName查询实例(new added)

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

query Parameters
appId
required
string

应用ID

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

instanceAppId
string

Instance表中的AppID

page
required
integer >= 0
Default: 0

页数

size
required
integer >= 0
Default: 0

页大小

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "size": 0,
  • "total": 0,
  • "instances": [
    ]
}

查询不在指定发布版本中的实例 (new added)

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

环境标识

query Parameters
appId
required
string

应用ID

clusterName
required
string

集群名称

namespaceName
required
string

命名空间名称

releaseIds
required
string

排除的发布ID列表,用逗号分隔

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Organization Management

组织管理相关接口,包括组织信息查询等功能

获取所有组织信息 (original openapi)

GET /openapi/v1/organizations

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Environment Management

环境管理相关接口,包括环境查询等功能

获取所有环境

GET /openapi/v1/envs

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
[
  • "DEV",
  • "FAT",
  • "UAT",
  • "PRO"
]

AccessKey Management

AccessKey管理相关接口,包括AccessKey的创建、查询、删除、启用、禁用等操作

创建AccessKey

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
query Parameters
operator
string

操作人用户名

Responses

Response samples

Content type
application/json
{
  • "dataChangeCreatedBy": "",
  • "dataChangeLastModifiedBy": "",
  • "dataChangeCreatedByDisplayName": "",
  • "dataChangeLastModifiedByDisplayName": "",
  • "dataChangeCreatedTime": "",
  • "dataChangeLastModifiedTime": "",
  • "id": 0,
  • "secret": "",
  • "appId": "",
  • "mode": 0,
  • "enabled": false
}

查找AccessKey

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

删除AccessKey

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
accessKeyId
required
integer <int64>
query Parameters
operator
string

操作人用户名

Responses

启用AccessKey

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
accessKeyId
required
integer <int64>
query Parameters
mode
integer
Default: 0
operator
string

操作人用户名

Responses

禁用AccessKey

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
accessKeyId
required
integer <int64>
query Parameters
operator
string

操作人用户名

Responses

Permission Management

权限管理相关接口,包括权限查询等功能

初始化应用权限 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
namespaceName
required
string
query Parameters
operator
string

操作人用户名

Responses

初始化集群Namespace权限 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
query Parameters
operator
string

操作人用户名

Responses

校验应用权限 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
permissionType
required
string
query Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "hasPermission": false
}

校验Namespace权限 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
namespaceName
required
string
permissionType
required
string
query Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "hasPermission": false
}

校验环境Namespace权限 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
namespaceName
required
string
permissionType
required
string
query Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "hasPermission": false
}

校验集群Namespace权限 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
permissionType
required
string
query Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "hasPermission": false
}

校验Root权限 (new added)

Authorizations:
ApiKeyAuth
query Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "hasPermission": false
}

获取环境Namespace用户 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
namespaceName
required
string

Responses

Response samples

Content type
application/json
{
  • "appId": "",
  • "namespaceName": "",
  • "modifyRoleUsers": [
    ],
  • "releaseRoleUsers": [
    ],
  • "env": ""
}

分配环境Namespace角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
namespaceName
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role assigned to

Responses

移除环境Namespace角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
namespaceName
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role removed from

Responses

获取集群Namespace用户 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string

Responses

Response samples

Content type
application/json
{
  • "appId": "",
  • "env": "",
  • "cluster": "",
  • "modifyRoleUsers": [
    ],
  • "releaseRoleUsers": [
    ]
}

分配集群Namespace角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role assigned to

Responses

移除集群Namespace角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role removed from

Responses

获取Namespace用户 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
namespaceName
required
string

Responses

Response samples

Content type
application/json
{
  • "appId": "",
  • "namespaceName": "",
  • "modifyRoleUsers": [
    ],
  • "releaseRoleUsers": [
    ]
}

分配Namespace角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
namespaceName
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role assigned to

Responses

移除Namespace角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
namespaceName
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role removed from

Responses

获取应用角色用户 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string

Responses

Response samples

Content type
application/json
{
  • "appId": "",
  • "masterUsers": [
    ]
}

分配应用角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role removed from

Request Body schema: application/json
string

Responses

Request samples

Content type
application/json
"string"

移除应用角色 (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
roleType
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role removed from

Responses

分配建应用角色 (new added)

Authorizations:
ApiKeyAuth
query Parameters
operator
string

操作人用户名

Request Body schema: application/json
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

移除建应用角色 (new added)

Authorizations:
ApiKeyAuth
query Parameters
operator
string

操作人用户名

userId
required
string

Responses

校验建应用权限 (new added)

Authorizations:
ApiKeyAuth
query Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "members": {
    }
}

获取建应用用户 (new added)

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
[
  • ""
]

分配AppMaster (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role assign to

Responses

移除AppMaster (new added)

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
query Parameters
operator
string

操作人用户名

userId
required
string

the user which role removed from

Responses

校验AppMaster开关 (new added)

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "members": {
    }
}

User Management

用户管理相关接口,支持Portal用户登录态和具备用户管理权限的Consumer Token调用

获取当前Portal用户(new added)

GET /openapi/v1/user

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "userId": "string",
  • "name": "string",
  • "email": "string",
  • "enabled": 0
}

搜索用户(new added)

GET /openapi/v1/users,支持Portal用户登录态或具备ManageUsers权限的Consumer Token访问

Authorizations:
ApiKeyAuth
query Parameters
keyword
required
string

用户名、显示名或邮箱关键字

includeInactiveUsers
boolean
Default: false

是否包含禁用用户

offset
integer >= 0
Default: 0

偏移量

limit
integer >= 1
Default: 10

返回数量

Responses

Response samples

Content type
application/json
[
  • {
    }
]

创建或更新用户(new added)

POST /openapi/v1/users,Portal用户登录态使用当前登录用户作为operator;Consumer Token访问时需要具备ManageUsers权限并传入有效operator

Authorizations:
ApiKeyAuth
query Parameters
isCreate
boolean
Default: false

true 表示创建用户,false 表示更新用户

operator
string

操作人用户名,Consumer Token访问时必填且必须是已存在用户;Portal用户登录态会忽略该参数

Request Body schema: application/json
required
username
string

用户名

userDisplayName
string

用户显示名

password
string

用户密码

email
string

用户邮箱

enabled
integer

是否启用,1 表示启用,0 表示禁用

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "userDisplayName": "string",
  • "password": "string",
  • "email": "string",
  • "enabled": 0
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

获取指定用户(new added)

GET /openapi/v1/users/{userId},支持Portal用户登录态或具备ManageUsers权限的Consumer Token访问

Authorizations:
ApiKeyAuth
path Parameters
userId
required
string

用户ID

Responses

Response samples

Content type
application/json
{
  • "userId": "string",
  • "name": "string",
  • "email": "string",
  • "enabled": 0
}

修改用户启用状态(new added)

PUT /openapi/v1/users/enabled,Portal用户登录态使用当前登录用户作为operator;Consumer Token访问时需要具备ManageUsers权限并传入有效operator

Authorizations:
ApiKeyAuth
query Parameters
operator
string

操作人用户名,Consumer Token访问时必填且必须是已存在用户;Portal用户登录态会忽略该参数

Request Body schema: application/json
required
username
string

用户名

userDisplayName
string

用户显示名

password
string

用户密码

email
string

用户邮箱

enabled
integer

是否启用,1 表示启用,0 表示禁用

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "userDisplayName": "string",
  • "password": "string",
  • "email": "string",
  • "enabled": 0
}

Response samples

Content type
application/json
{
  • "status": 404,
  • "message": "Resource not found",
  • "timestamp": "2025-09-29T12:34:56Z",
  • "exception": "NotFoundException"
}

Portal Management

Portal UI 登录态管理接口,主要供当前版本 Portal 前端调用

获取审计配置(new added)

GET /openapi/v1/apollo/audit/properties

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{ }

查询审计日志(new added)

GET /openapi/v1/apollo/audit/logs

Authorizations:
ApiKeyAuth
query Parameters
page
integer
Default: 0
size
integer
Default: 10

Responses

Response samples

Content type
application/json
[
  • { }
]

按操作名查询审计日志(new added)

GET /openapi/v1/apollo/audit/logs/opName

Authorizations:
ApiKeyAuth
query Parameters
opName
required
string
page
integer
Default: 0
size
integer
Default: 10
startDate
string
endDate
string

Responses

Response samples

Content type
application/json
[
  • { }
]

查询审计链路详情(new added)

GET /openapi/v1/apollo/audit/trace

Authorizations:
ApiKeyAuth
query Parameters
traceId
required
string

Responses

Response samples

Content type
application/json
[
  • { }
]

查询审计数据影响(new added)

GET /openapi/v1/apollo/audit/logs/dataInfluences/field

Authorizations:
ApiKeyAuth
query Parameters
entityName
required
string
entityId
required
string
fieldName
required
string
page
integer
Default: 0
size
integer
Default: 10

Responses

Response samples

Content type
application/json
[
  • { }
]

搜索审计日志(new added)

GET /openapi/v1/apollo/audit/logs/by-name-or-type-or-operator

Authorizations:
ApiKeyAuth
query Parameters
query
required
string
page
integer
Default: 0
size
integer
Default: 10

Responses

Response samples

Content type
application/json
[
  • { }
]

查询命名空间提交记录(new added)

GET /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/namespaces/{namespaceName}/commits

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
query Parameters
key
string
page
integer
Default: 0
size
integer
Default: 10

Responses

Response samples

Content type
application/json
[
  • { }
]

获取Portal页面配置(new added)

GET /openapi/v1/page-settings

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{ }

创建开放平台消费者(new added)

POST /openapi/v1/consumers

Authorizations:
ApiKeyAuth
query Parameters
expires
string

yyyyMMddHHmmss

Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{ }

查询开放平台消费者列表(new added)

GET /openapi/v1/consumers

Authorizations:
ApiKeyAuth
query Parameters
page
integer
Default: 0
size
integer
Default: 10

Responses

Response samples

Content type
application/json
[
  • { }
]

按应用ID查询消费者Token(new added)

GET /openapi/v1/consumer-tokens/by-appId

Authorizations:
ApiKeyAuth
query Parameters
appId
required
string

Responses

Response samples

Content type
application/json
{ }

给消费者授权(new added)

POST /openapi/v1/consumers/{token}/assign-role

Authorizations:
ApiKeyAuth
path Parameters
token
required
string
query Parameters
type
required
string
envs
string
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
[
  • { }
]

按应用ID删除消费者(new added)

DELETE /openapi/v1/consumers/by-appId

Authorizations:
ApiKeyAuth
query Parameters
appId
required
string

Responses

导入配置兼容入口(new added)

POST /openapi/v1/import

Authorizations:
ApiKeyAuth
query Parameters
envs
required
string
conflictAction
string
Default: "ignore"
Request Body schema: multipart/form-data
required
file
string <binary>

Responses

查询收藏(new added)

GET /openapi/v1/favorites

Authorizations:
ApiKeyAuth
query Parameters
userId
string
appId
string
page
integer
Default: 0
size
integer
Default: 10

Responses

Response samples

Content type
application/json
[
  • { }
]

添加收藏(new added)

POST /openapi/v1/favorites

Authorizations:
ApiKeyAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{ }

删除收藏(new added)

DELETE /openapi/v1/favorites/{favoriteId}

Authorizations:
ApiKeyAuth
path Parameters
favoriteId
required
integer <int64>

Responses

收藏置顶(new added)

PUT /openapi/v1/favorites/{favoriteId}

Authorizations:
ApiKeyAuth
path Parameters
favoriteId
required
integer <int64>

Responses

按Key或Value全局搜索配置(new added)

GET /openapi/v1/global-search/item-info/by-key-or-value

Authorizations:
ApiKeyAuth
query Parameters
key
string
Default: ""
value
string
Default: ""

Responses

Response samples

Content type
application/json
{ }

查询命名空间发布历史(new added)

GET /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/namespaces/{namespaceName}/releases/histories

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
query Parameters
page
integer
Default: 0
size
integer
Default: 10

Responses

Response samples

Content type
application/json
[
  • { }
]

创建或更新Portal DB配置(new added)

POST /openapi/v1/server/portal-db/config

Authorizations:
ApiKeyAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{ }

删除Portal DB配置(new added)

DELETE /openapi/v1/server/portal-db/config

Authorizations:
ApiKeyAuth
query Parameters
key
required
string

Responses

创建或更新Config DB配置(new added)

POST /openapi/v1/server/envs/{env}/config-db/config

Authorizations:
ApiKeyAuth
path Parameters
env
required
string
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{ }

删除Config DB配置(new added)

DELETE /openapi/v1/server/envs/{env}/config-db/config

Authorizations:
ApiKeyAuth
path Parameters
env
required
string
query Parameters
key
required
string
cluster
required
string

Responses

查询全部Portal DB配置(new added)

GET /openapi/v1/server/portal-db/config/find-all-config

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
[
  • { }
]

查询指定环境全部Config DB配置(new added)

GET /openapi/v1/server/envs/{env}/config-db/config/find-all-config

Authorizations:
ApiKeyAuth
path Parameters
env
required
string

Responses

Response samples

Content type
application/json
[
  • { }
]

获取系统信息(new added)

GET /openapi/v1/system-info

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
{ }

检查系统实例健康状态(new added)

GET /openapi/v1/system-info/health

Authorizations:
ApiKeyAuth
query Parameters
instanceId
required
string

Responses

Response samples

Content type
application/json
{ }

导出所有配置(new added)

GET /openapi/v1/configs/export

Authorizations:
ApiKeyAuth
query Parameters
envs
required
string

Responses

导入所有配置(new added)

POST /openapi/v1/configs/import

Authorizations:
ApiKeyAuth
query Parameters
envs
required
string
conflictAction
string
Default: "ignore"
Request Body schema: multipart/form-data
required
file
string <binary>

Responses

检查应用配置导出权限(new added)

HEAD /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/export

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string

Responses

导出应用配置(new added)

GET /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/export

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string

Responses

导入应用配置(new added)

POST /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/import

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
query Parameters
conflictAction
string
Default: "ignore"
Request Body schema: multipart/form-data
required
file
string <binary>

Responses

导出命名空间配置项(new added)

GET /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/namespaces/{namespaceName}/items/export

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string

Responses

按应用ID或名称搜索应用(new added)

GET /openapi/v1/apps/search/by-appid-or-name

Authorizations:
ApiKeyAuth
query Parameters
query
string
page
integer
Default: 0
size
integer
Default: 20

Responses

Response samples

Content type
application/json
{ }

导入命名空间配置项(new added)

POST /openapi/v1/apps/{appId}/envs/{env}/clusters/{clusterName}/namespaces/{namespaceName}/items/import

Authorizations:
ApiKeyAuth
path Parameters
appId
required
string
env
required
string
clusterName
required
string
namespaceName
required
string
Request Body schema: multipart/form-data
required
file
string <binary>

Responses