更新时间:2026-02-28 GMT+08:00
分享

获取所有组件 - ObtainAllComponents

功能介绍

此API用于获取所有应用组件。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。

  • 如果使用角色与策略授权,具体权限要求请参见权限和授权项
  • 如果使用身份策略授权,需具备如下身份策略权限。

    授权项

    访问级别

    资源类型(*为必须)

    条件键

    别名

    依赖的授权项

    servicestage:app:listComponent

    list

    -

    -

    servicestage:app:list

    -

URI

GET /v3/{project_id}/cas/components

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

租户项目ID。获取方法,请参考获取项目ID

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表2 查询参数

参数

是否必选

参数类型

描述

limit

Integer

参数解释:

查询个数。

约束限制:

不涉及

取值范围:

1~100

默认取值:

10

offset

Integer

参数解释:

查询偏移量,表示查询第n条数据后的结果。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

0

order_by

String

参数解释:

排序字段。

约束限制:

不涉及

取值范围:

  • create_time:组件创建时间
  • name:组件名称
  • update_time:组件修改时间

传值不在支持的枚举值范围内的话按create_time排序。

默认取值:

create_time

order

String

参数解释:

排序方式。

约束限制:

不涉及

取值范围:

  • desc,降序排序
  • asc,升序排序

默认取值:

desc

application_name

String

参数解释:

应用名称。

取值范围:

不涉及

默认取值:

不涉及

component_name

String

参数解释:

组件名称。

取值范围:

不涉及

默认取值:

不涉及

请求消息

表3 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

参数解释:

消息体的类型(格式)。

约束限制:

不涉及

取值范围:

application/json;charset=utf8

默认取值:

不涉及

X-Auth-Token

String

参数解释:

调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值。Token获取方式,请参考认证鉴权

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

响应消息

表4 响应参数

参数

参数类型

描述

count

Integer

参数解释:

组件总数。

取值范围:

不涉及

components

Array of objects

参数解释:

组件参数,请参考表5

表5 components

参数

参数类型

描述

id

String

参数解释:

组件ID。

取值范围:

不涉及

name

String

参数解释:

组件名称。

取值范围:

不涉及

labels

Array of objects

参数解释:

标签。容器部署可通过标签查询对应工作负载,虚机部署可配置对应的微服务名称的标签来使用优雅上下线功能,请参考表10

status

Object

参数解释:

组件状态,请参考表8

runtime_stack

Object

参数解释:

技术栈,请参考表7

application_name

String

参数解释:

应用名称。

取值范围:

不涉及

application_id

String

参数解释:

应用ID。

取值范围:

不涉及

environment_name

String

参数解释:

环境名称。

取值范围:

不涉及

environment_id

String

参数解释:

环境ID。

取值范围:

不涉及

version

String

参数解释:

版本号。

取值范围:

不涉及

source

Object

参数解释:

代码/软件包来源,请参考表6

creator

String

参数解释:

创建人。

取值范围:

不涉及

platform_type

String

参数解释:

运行平台类型。

取值范围:

应用可以在不同的平台上运行,可选用的平台的类型有以下几种:

  • cce:容器
  • vmapp:虚拟机

external_accesses

Array of objects

参数解释:

外部访问,请参考表11

workload_kind

String

参数解释:

工作负载类型。

取值范围:

  • deployment:无状态工作负载。
  • statefulset:有状态工作负载。
  • daemonset:守护进程集。
  • job:普通任务。

is_multi_containers

Boolean

参数解释:

是否是多容器。

取值范围:

  • true:是多容器。
  • false:非多容器。

enterprise_project_id

String

参数解释:

企业项目ID。

取值范围:

不涉及

engine_id

String

参数解释:

引擎ID。

取值范围:

不涉及

swimlane_tag

String

参数解释:

泳道标签。

取值范围:

不涉及

swimlane

Object

参数解释:

所属泳道,请参考表12

refer_resources

Array of objects

参数解释:

关联资源,请参考表14

config_mode

String

参数解释:

组件创建方式。

取值范围:

  • yaml:基于YAML配置创建。
  • ui:基于界面配置创建。
  • template:基于组件模板创建。

template_source

Object

参数解释:

组件模板包来源,请参考表20

表6 source

参数

参数类型

描述

kind

String

参数解释:

组件来源类型。

取值范围:

  • code:源码。
  • package:软件包。
  • image:镜像包。

version

String

参数解释:

版本号。

取值范围:

不涉及

url

String

参数解释:

包地址,类型为package和image时需要添加。

取值范围:

不涉及

storage

String

参数解释:

存储方式。

取值范围:

  • devcloud:CodeArts软件发布库。
  • obs:OBS对象存储。
  • http:自定义文件地址。
  • swr:镜像仓库。

组件来源类型为package和image时需要添加。

auth

String

参数解释:

认证方式。

取值范围:

  • iam:IAM认证
  • none:无认证

repo_auth

String

参数解释:

授权名称,在授权列表获取。

取值范围:

不涉及

repo_namespace

String

参数解释:

代码仓库命名空间。

取值范围:

不涉及

repo_ref

String

参数解释:

代码分支或者Tag,默认是master。

取值范围:

不涉及

repo_type

String

参数解释:

代码仓类型。

取值范围:

  • DevCloud,codearts制品仓。
  • Gitee,开源中国推出代码托管平台。
  • GitHub,开源代码仓。
  • GitLab,开源代码仓。
  • Bitbucket,源代码托管网站。

web_url

String

参数解释:

代码跳转链接,例如:https://github.com/example/demo.git。

取值范围:

不涉及

repo_url

String

参数解释:

代码仓url,例如:https://github.com/example/demo.git。

取值范围:

不涉及

http_username

String

参数解释:

“storage”“http”时需要填写,支持用户名、密码认证,这里填写用户名。

取值范围:

不涉及

http_password

String

参数解释:

“storage”“http”时需要填写,支持用户名、密码认证,这里填写密码。

取值范围:

不涉及

http_command

String

参数解释:

“storage”“http”时需要填写,这里是用户定义软件包的地址。

取值范围:

不涉及

http_headers

Map<String, String>

参数解释:

“storage”“http”时需要填写,支持用户自定义请求头,支持填写一个key,value,例如{"key":"xx","value":"xx""},其中的key和value关键字固定。

取值范围:

不涉及

表7 runtime_stack

参数

参数类型

描述

name

String

参数解释:

技术栈名称,例如:OpenJDK8。

取值范围:

不涉及

type

String

参数解释:

技术栈类型。

取值范围:

  • 部署模式为虚机部署时,支持Java、Tomcat、Nodejs。
  • 部署模式为容器部署时,支持Java、Tomcat、Nodejs、Php、Docker、Python。

version

String

参数解释:

技术栈版本,例如:1.1.4。

取值范围:

不涉及

deploy_mode

String

参数解释:

部署模式。

取值范围:

  • container:容器部署
  • virtualmachine:虚机部署
表8 status参数

参数

参数类型

描述

component_status

String

参数解释:

组件状态。

取值范围:

  • INITIALIZING:初始化。
  • UPGRADING:升级中。
  • FAILED:失败。
  • RUNNING:运行中。
  • DOWN:下线。
  • DELETING:删除中。
  • DELETED:已删除。
  • RESERVED:保留。
  • STARTING:启动中。
  • STOPPING:停止中。
  • STOPPED:停止。
  • RESTARTING:重启中。
  • PENDING:未就绪。
  • UNKNOWN:未知。
  • PARTIALLY_FAILED:部分失败。

available_replica

Integer

参数解释:

可用实例。

取值范围:

不涉及

replica

Integer

参数解释:

总实例。

取值范围:

不涉及

succeeded_replica

Integer

参数解释:

普通任务工作负载执行成功的实例数。

取值范围:

不涉及

fail_detail

String

参数解释:

失败原因。

取值范围:

  • cluster_deleted:集群被删除。
  • cluster_unavailable:集群不可用。
  • cluster_inaccessible:集群无法访问。
  • namespace_deleted:命名空间被删除。
  • namespace_unavailable:命名空间不可用。
  • namespace_inaccessible:命名空间无法访问。
  • resource_deleted:资源已删除。
  • create_failed:创建组件失败。
  • delete_failed:删除组件失败。

last_job_id

String

参数解释:

最后执行任务ID。

取值范围:

不涉及

create_time

Integer

参数解释:

创建时间。

取值范围:

不涉及

update_time

Integer

参数解释:

更新时间。

取值范围:

不涉及

creator

String

参数解释:

创建人。

取值范围:

不涉及

artifact

Object

参数解释:

组件构建信息,请参考表9

表9 artifact

参数

参数类型

描述

type

String

参数解释:

组件来源包类型。

取值范围:

  • package:软件包
  • image:镜像包

url

String

参数解释:

软件包/镜像地址。

取值范围:

不涉及

表10 labels

参数

参数类型

描述

key

String

参数解释:

标签名称。

取值范围:

不涉及

value

String

参数解释:

标签值。

取值范围:

不涉及

表11 external_accesses

参数

参数类型

描述

protocol

String

参数解释:

外部访问类型。

取值范围:

  • http:超文本传输协议
  • https:超文本传输安全协议

address

String

参数解释:

外部访问地址。

取值范围:

不涉及

forward_port

Integer

参数解释:

外部访问端口。

取值范围:

不涉及

表12 swimlane

参数

参数类型

描述

id

String

参数解释:

泳道ID。

取值范围:

不涉及

name

String

参数解释:

泳道名称。

取值范围:

不涉及

swimlane_group_id

String

参数解释:

所属泳道组ID。

取值范围:

不涉及

type

String

参数解释:

泳道类型。

取值范围:

  • BASE:基线泳道。
  • GRAY:灰度泳道。

tag

String

参数解释:

泳道标签,根据标签来控制流量的走向。

取值范围:

不涉及

route_status

String

参数解释:

泳道路由状态。

取值范围:

  • ENABLE:开启路由。
  • DISABLED:关闭路由。

rule_match_mode

String

参数解释:

路由规则匹配模式。当泳道组灰度类型为基于内容,即gray_release_type为CONTENT时生效。

取值范围:

  • ALL:匹配所有的规则。
  • ANY:匹配任一规则。

rules

Array of objects

参数解释:

路由规则。当泳道组灰度类型为基于内容,即gray_release_type为CONTENT时生效。请参考表13

weight

Integer

参数解释:

泳道流量权重。当泳道组灰度类型为基于流量,即gray_release_type为WEIGHT时生效。

取值范围:

0-100之前

project_id

String

参数解释:

项目ID。

取值范围:

不涉及

create_time

Integer

参数解释:

创建时间。

取值范围:

不涉及

update_time

Integer

参数解释:

更新时间。

取值范围:

不涉及

creator

String

参数解释:

创建人。

取值范围:

不涉及

swimlane_group

Object

参数解释:

所属泳道组,请参考表17

engine_ids

Array of strings

参数解释:

引擎ID列表。

取值范围:

不涉及

表13 rules

参数

参数类型

描述

type

String

参数解释:

灰度匹配规则类型。

取值范围:

HEADER:基于Header头进行匹配

key

String

参数解释:

键。

取值范围:

不涉及

value

String

参数解释:

值。

取值范围:

不涉及

condition

String

参数解释:

匹配条件。

取值范围:

  • EXACT:精确匹配。
  • PREFIX:前缀匹配。
  • REGEX:正则匹配。
表14 refer_resources

参数

参数类型

描述

id

String

参数解释:

资源ID。

取值范围:

不涉及

instance_id

String

参数解释:

组件实例ID。

取值范围:

不涉及

type

String

参数解释:

资源类型。

取值范围:

  • elb:弹性负载均衡
  • cce:云容器引擎
  • ecs:弹性云服务器
  • as: 弹性伸缩组
  • cse:ServiceComb引擎
  • nacos:注册配置中心
  • dcs:分布式缓存服务
  • rds:云数据库RDS
  • gaussdb:云数据库GaussDB
  • dms_rocketmq:分布式消息服务RocketMQ
  • customServer:自定义服务器
  • pvc:存储卷声明
  • css_es:云搜索服务Elasticsearch
  • custom_k8s:自定义kubernetes集群

refer_type

String

参数解释:

资源类别。

取值范围:

  • platform:部署型。
  • service:服务型。

refer_alias

String

参数解释:

资源别名。

取值范围:

不涉及

parameters

Object

参数解释:

资源参数,请参考表15

selectors

Objects

参数解释:

资源选择器,请参考表16

表15 refer_resource_parameter

参数

参数类型

描述

namespace

String

参数解释:

命名空间。

取值范围:

不涉及

name

String

参数解释:

资源名称。

取值范围:

不涉及

capacity

Integer

参数解释:

存储容量,单位GiB。

取值范围:

不涉及

type

String

参数解释:

存储卷声明类型,当表14中的type为pvc时指定。

取值范围:

  • efs:极速文件存储。
  • obs:对象存储。
  • sfs:文件存储。
  • evs:云硬盘。

class

String

参数解释:

存储卷声明子类型。

取值范围:

  • csi-sfsturbo:type为efs时固定指定。
  • csi-obs:type为obs时固定指定。
  • csi-nas:type为sfs时固定指定。
  • csi-disk:type为evs时固定指定。

pv_name

String

参数解释:

存储卷名称。type为efs时展示。

取值范围:

不涉及

share_id

String

参数解释:

存储卷句柄。type为efs时展示。

取值范围:

不涉及

share_export_location

String

参数解释:

存储卷共享路径。type为efs时展示。

取值范围:

不涉及

share_proto

String

参数解释:

存储卷文件系统类型。type为efs时展示。默认为NFS。

取值范围:

不涉及

obs_volume_type

String

参数解释:

OBS存储卷类型,默认为STANDARD标准存储类型。

取值范围:

  • STANDARD:标准存储,拥有低访问时延和较高的吞吐量,适用于有大量热点对象(平均一个月多次)或小对象(<1MB),且需要频繁访问数据的业务场景。
  • WARM:低频访问存储,适用于不频繁访问(平均一年少于12次)但在需要时也要求能够快速访问数据的业务场景。
  • COLD:归档存储,适用于很少访问(平均一年访问一次)数据的业务场景。

access_mode

String

参数解释:

存储卷访问模式。

取值范围:

  • ReadWriteOnce:卷可以被一个节点以读写方式挂载。
  • ReadWriteMany:卷可以被多个节点以读写方式挂载。

availableZone

String

参数解释:

可用区。

取值范围:

不涉及

volume_type

String

参数解释:

存储卷类型。

取值范围:

  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。
  • SAS:高IO,是指由SAS存储提供资源的磁盘类型。
  • SSD:超高IO,是指由SSD存储提供资源的磁盘类型。
表16 selectors

参数

参数类型

描述

name

String

参数解释:

资源选择器名称。

取值范围:

不涉及

flavor

String

参数解释:

资源选择器规格。

取值范围:

不涉及

labels

Map<String,String>

参数解释:

标签。

取值范围:

不涉及

表17 swimlane_group

参数

参数类型

描述

id

String

参数解释:

泳道组ID。

取值范围:

不涉及

name

String

参数解释:

泳道组名称。

取值范围:

不涉及

description

String

参数解释:

泳道组描述。

取值范围:

不涉及

creator

String

参数解释:

创建人。

取值范围:

不涉及

project_id

String

参数解释:

项目ID。

取值范围:

不涉及

gray_release_type

String

参数解释:

泳道组灰度类型。

取值范围:

  • WEIGHT:基于流量比例进行全链路灰度。
  • CONTENT:基于内容进行全链路灰度。

engine_ids

Array of strings

参数解释:

网关目标服务引擎ID。

取值范围:

不涉及

gateways

Array of objects

参数解释:

目标服务列表,请参考表18

create_time

Integer

参数解释:

创建时间。

取值范围:

不涉及

update_time

Integer

参数解释:

更新时间。

取值范围:

不涉及

表18 gateways

参数

参数类型

描述

id

String

参数解释:

网关ID。

取值范围:

不涉及

name

String

参数解释:

网关名称。

取值范围:

不涉及

engine_id

String

参数解释:

目标服务引擎ID,对应于目标服务对应的服务来源所用的引擎ID。

取值范围:

不涉及

target_services

Array of objects

参数解释:

目标服务列表,对应于网关服务管理中的服务。请参考表19

表19 target_services

参数

参数类型

描述

id

String

参数解释:

目标服务ID。

取值范围:

不涉及

name

String

参数解释:

目标服务名称。

取值范围:

不涉及

host

String

参数解释:

目标服务host信息。

取值范围:

不涉及

表20 template_source

参数

参数类型

描述

storage

String

参数解释:

组件模板包存储方式。

取值范围:

  • devcloud:CodeArts软件发布库。
  • obs:OBS对象存储。
  • http:自定义文件地址。

url

String

参数解释:

组件模板包地址。

组件模板包存储方式为自定义文件地址时有效。

取值范围:

不涉及

http_username

String

参数解释:

用户名。

组件模板包存储方式为自定义文件地址且安全认证方式为用户名密码认证时有效。

取值范围:

不涉及

http_password

String

参数解释:

密码。

组件模板包存储方式为自定义文件地址且安全认证方式为用户名密码认证时有效。

取值范围:

不涉及

http_headers

Array of objects

参数解释:

请求头,请参考表21

组件模板包存储方式为自定义文件地址且安全认证方式为自定义Header认证时有效。

表21 http_headers

参数

参数类型

描述

key

String

参数解释:

请求key。

取值范围:

不涉及

value

String

参数解释:

请求value。

取值范围:

不涉及

请求示例

响应示例

{
    "components": [
        {
            "source": {
                "kind": "package",
                "url": "obs://bucket0001/weather-1.0.0.jar",
                "storage": "obs"
            },
            "name": "mycomponent",
            "id": "b8702b0f-94d3-4822-98a1-56815632a0a0",
            "labels": null,
            "runtime_stack": {
                "name": "OpenJDK8",
                "deploy_mode": "virtualmachine",
                "version": "1.1.1"
            },
            "external_accesses": null,
            "status": {
                "component_status": "RUNNING",
                "available_replica": 1,
                "replica": 1,
                "fail_detail": null,
                "last_job_id": "JOB8be53b2a-af9a-4e2b-8505-096688a52237",
                "creator": "ss-test",
                "create_time": 1679556221028,
                "update_time": 1679556318779
            },
            "environment_name": "sudo",
            "environment_id": "4d084044-0b80-4641-963c-b9c9f4092a4f",
            "application_name": "app-39mbbn",
            "application_id": "fc092465-a5fb-4a52-bc65-b735f18366d8",
            "creator": "ss-test",
            "platform_type": "cce",
            "version": "2023.0323.15181"
        }
    ],
    "count": 1
}

状态码

状态码

描述

200

操作成功

400

错误的请求

404

请求对象不存在

500

内部错误

错误码

请参考ServiceStage错误码

相关文档