更新时间:2025-08-11 GMT+08:00

列举资源栈输出

功能介绍

列举资源栈输出(ListStackOutputs)

此API用于列举该资源栈的所有输出

资源栈输出为用户在模板中定义的 output 语句块在部署结束后所产生的返回信息,用户可在部署结束后,调用此API获取其具体的输出信息

当资源栈状态处于非终态(状态以IN_PROGRESS结尾)状态时,此API将返回空。非终态包括但不限于以下状态:

  • 正在部署(DEPLOYMENT_IN_PROGRESS)

  • 正在删除(DELETION_IN_PROGRESS)

  • 正在回滚(ROLLBACK_IN_PROGRESS)

output为HCL官方定义的语法,其返回信息类似于常见编程语言中的返回值,详细定义请参考HCL官方的说明

支持分页返回。如果响应中存在next_marker,则表示实际总输出比当前响应中包含的输出多。在对请求的后续调用中,在请求参数中使用此值,以获取输出的下一部分。您应该重复此操作,直到next_marker响应元素返回为null

URI

GET /v1/{project_id}/stacks/{stack_name}/outputs

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,可以从调用API处获取,也可以从控制台获取。

项目ID获取方式

stack_name

String

资源栈的名称。此名字在domain_id+区域+project_id下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。

表2 Query参数

参数

是否必选

参数类型

描述

stack_id

String

资源栈(stack)的唯一ID。

此ID由资源编排服务在生成资源栈的时候生成,为UUID。

由于资源栈名仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的资源栈,删除,再重新创建一个同名资源栈。

对于团队并行开发,用户可能希望确保,当前我操作的资源栈就是我认为的那个,而不是其他队友删除后创建的同名资源栈。因此,使用ID就可以做到强匹配。

资源编排服务保证每次创建的资源栈所对应的ID都不相同,更新不会影响ID。如果给予的stack_id和当前资源栈的ID不一致,则返回400

marker

String

分页标记。当一页无法返回所有结果,上一次的请求将返回next_marker以指引还有更多页数,用户可以将next_marker中的值放到此处以查询下一页的信息。此marker只能用于与上一请求指定的相同参数的请求。不指定时默认从第一页开始查询。

limit

Integer

每页返回的最多结果数量

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

Client-Request-Id

String

用户指定的,对于此请求的唯一ID,用于定位某个请求,推荐使用UUID

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

outputs

Array of StackOutput objects

资源栈输出列表

page_info

page_info object

分页信息

表5 StackOutput

参数

参数类型

描述

name

String

资源栈输出的名称,由用户在模板中定义

以 HCL 模板为例,name 为 vpc_id

output "vpc_id" {
  value = huaweicloud_vpc.my_hello_world_vpc.id
}

以 json 模板为例,name 为 vpc_id

{
  "output": {
    "vpc_id": [
      {
        "value": "${huaweicloud_vpc.my_hello_world_vpc.id}"
      }
    ]
  }
}

description

String

资源栈输出的描述,由用户在模板中定义

type

String

资源栈输出的类型

value

String

资源栈输出的值

sensitive

Boolean

标识该资源栈输出是否为敏感信息,由用户在模板中定义

如果用户在模板中将该输出定义为sensitive,则返回体中该输出的value和type不会返回真实值,而是返回<sensitive>

表6 page_info

参数

参数类型

描述

next_marker

String

向后分页标识符。如果存在,则表示实际总输出比当前响应中包含的输出多。在对请求的后续调用中,在请求参数中使用此值,以获取输出的下一部分。您应该重复此操作,直到next_marker响应元素返回为null。

previous_marker

String

向前分页标识符。

current_count

Integer

本页显示的条目数量。

状态码:400

表7 响应Body参数

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

encoded_authorization_message

String

包含有关未经授权请求的信息。

details

Array of Detail objects

权限拒绝时服务返回的详细错误信息。

表8 Detail

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

状态码:401

表9 响应Body参数

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

encoded_authorization_message

String

包含有关未经授权请求的信息。

details

Array of Detail objects

权限拒绝时服务返回的详细错误信息。

表10 Detail

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

状态码:403

表11 响应Body参数

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

encoded_authorization_message

String

包含有关未经授权请求的信息。

details

Array of Detail objects

权限拒绝时服务返回的详细错误信息。

表12 Detail

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

状态码:404

表13 响应Body参数

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

encoded_authorization_message

String

包含有关未经授权请求的信息。

details

Array of Detail objects

权限拒绝时服务返回的详细错误信息。

表14 Detail

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

状态码:429

表15 响应Body参数

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

encoded_authorization_message

String

包含有关未经授权请求的信息。

details

Array of Detail objects

权限拒绝时服务返回的详细错误信息。

表16 Detail

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

状态码:500

表17 响应Body参数

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

encoded_authorization_message

String

包含有关未经授权请求的信息。

details

Array of Detail objects

权限拒绝时服务返回的详细错误信息。

表18 Detail

参数

参数类型

描述

error_code

String

响应码

error_msg

String

响应消息

请求示例

  • 列举资源栈输出

    GET https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/outputs
  • 列举资源栈输出,并提供资源栈id以校验是否与当前资源栈匹配

    GET https://{endpoint}/v1/ba2b9930c977f71edaeaa3a5e96a8ff1/stacks/my_hello_world_stack/outputs?stack_id=ea6a4f0e-ee8a-494e-b12a-8be4a1e65af2

响应示例

状态码:200

列举资源栈输出成功

{
  "outputs" : [ {
    "name" : "my_first_vpc",
    "sensitive" : true,
    "type" : "<sensitive>",
    "value" : "<sensitive>",
    "description" : "type and value is invisible when sensitive is true."
  }, {
    "name" : "my_second_vpc",
    "type" : "string",
    "value" : "\"huaweicloud_vpc.my_second_vpc\"",
    "description" : "type and value is real when sensitive not set or is false."
  } ],
  "page_info" : {
    "current_count" : 2,
    "next_marker" : null,
    "previous_marker" : "zxc1oHc08HcCmypYGTsOoRcvoHUvHRUAW5NOSnc1oHc08HcCPZrwP5NOeTlRiukJgtGxeujJeuGwGIihaIUCmypYGTsOtqvKPr2xmH8fPqpGWyQ0axGwGZp9aqvx8pQ7m5FvGTsJiKk7gtNFiuaxetdRCks="
  }
}

状态码

状态码

描述

200

列举资源栈输出成功

400

用户请求非法

401

用户身份认证失败

403

用户无权限调用此API

404

资源栈不存在

429

请求数量过多

500

服务器内部错误