
# 查询模板版本列表 - ListLaunchTemplateVersions
#### 功能介绍
根据用户请求条件从数据库筛选、查询启动模板的版本相关信息，支持按照image_id和flavor_id进行过滤。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ECS/doc?api=ListLaunchTemplateVersions)中调试该接口。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-ecs/ecs_06_0000.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
 
| 授权项                             | 访问级别 | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| ecs:launchTemplateVersions:list | list | -           | -   | -  | -      |
   
#### URI
GET /v3/{project_id}/launch-template-versions
参数说明请参见[表1 路径参数]。
 表1路径参数 
| 参数         | 是否必选 | 描述                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| project_id | 是    | **参数解释** **：** 项目ID。 获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-ecs/ecs_01_0016.html)。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及 |
   
表2请求参数 
| 参数                 | 是否必选 | 参数类型              | 描述                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| limit              | 否    | Integer           | **参数解释** **：** 查询返回的模板最大资源数。 **约束限制：** 最多返回100个模板的信息。 **取值范围：** 不涉及 **默认取值：** 不涉及                       |
| marker             | 否    | String            | **参数解释** **：** 从marker指定的模板ID的下一条数据开始查询。 **约束限制：** marker需要与limit配合使用。 **取值范围：** 不涉及 **默认取值：** 不涉及 |
| launch_template_id | 否    | String            | **参数解释** **：** 模板ID。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及                                        |
| image_id           | 否    | String            | **参数解释** **：** 模板的镜像ID。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及                                     |
| flavor_id          | 否    | String            | **参数解释** **：** 模板的规格ID。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及                                     |
| version            | 否    | Array of Integers | **参数解释** **：** 模板版本。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及                                          |
   
#### 请求消息
无。
#### 响应消息
响应参数如[表3]所示。
 表3响应参数 
| 参数                       | 参数类型             | 描述                                                                                                                                                                                         |
|:---|:---|:---|
| launch_template_versions | Array of Objects | **参数解释** **：** 模板版本信息。详情请参见[表4]。 **取值范围：** 不涉及 |
| page_info                | Object           | **参数解释** **：** 页码信息。详情请参见[表18]。 **取值范围：** 不涉及                   |
   
 表4launch_template_version字段数据结构说明 
| 参数                  | 参数类型    | 描述                                                                                                                                                                                               |
|:---|:---|:---|
| template_data       | Object  | **参数解释** **：** 创建云服务器的请求信息。详情请参见[表5]。 **取值范围：** 不涉及 |
| version_number      | Integer | **参数解释** **：** 模板版本号。 **取值范围：** 不涉及                                                   |
| version_id          | String  | **参数解释** **：** 模板版本ID。 **取值范围：** 不涉及                                                                   |
| version_description | String  | **参数解释** **：** 模板版本描述。 **取值范围：** 不涉及                                                  |
| created_at          | String  | **参数解释** **：** 模板版本创建时间。 **取值范围：** 不涉及                                              |
| launch_template_id  | String  | **参数解释** **：** 模板ID。 **取值范围：** 不涉及                                                                  |
   
 表5template_data字段数据结构说明 
| 参数                    | 参数类型             | 描述                                                                                                                                                                                                           |
|:---|:---|:---|
| flavor_id             | String           | **参数解释** **：** 依据模板创建云服务器的规格ID。 **取值范围：** 不涉及                                                                    |
| name                  | String           | **参数解释** **：** 模板名称。 **取值范围：** 不涉及                                                                                   |
| description           | String           | **参数解释** **：** 模板描述。 **取值范围：** 不涉及                                                                              |
| availability_zone_id  | String           | **参数解释** **：** 模板的可用区。 **取值范围：** 不涉及                                                                              |
| enterprise_project_id | String           | **参数解释** **：** 模板企业项目ID **取值范围：** 不涉及                                                                                |
| auto_recovery         | Boolean          | **参数解释** **：** 开启自动恢复。 **取值范围：** 不涉及                                                                                 |
| os_profile            | Object           | **参数解释** **：** 操作系统属性。详情请参见[表6]。 **取值范围：** 不涉及                                    |
| security_group_ids    | Array of strings | **参数解释** **：** 安全组ID列表。全网卡生效。 **取值范围：** 不涉及                                                                        |
| network_interfaces    | Array of Objects | **参数解释** **：** 网络接口。详情请参见[表7]。 **取值范围：** 不涉及                                     |
| block_device_mappings | Array of Objects | **参数解释** **：** BDM挂载信息，以flavor限制为准。详情请参见[表9]。 **取值范围：** 不涉及                       |
| market_options        | Object           | **参数解释** **：** 计费信息。详情请参见[表11]。 **取值范围：** 不涉及                                       |
| internet_access       | Object           | **参数解释** **：** 公网访问。详情请参见[表13]。 **取值范围：** 不涉及                                        |
| metadata              | Object           | **参数解释** **：** 用户自定义键值对。 **取值范围：** 不涉及                                                                             |
| tag_options           | Array of Objects | **参数解释** **：** 创建虚拟机标签，目前仅支持给虚拟机打标签，后续会支持同时给相关资源如卷等打标签。详情请参见[表16]。 **取值范围：** 不涉及 |
   
 表6os_profile字段数据结构说明 
| 参数                        | 参数类型    | 描述                                                                                                                                                      |
|:---|:---|:---|
| key_name                  | String  | **参数解释** **：** 密钥名称。 **取值范围：** 不涉及                            |
| user_data                 | String  | **参数解释** **：** 创建云服务器过程中待注入实例自定义数据。支持注入文本、文本文件。 **取值范围：** 不涉及 |
| iam_agency_name           | String  | **参数解释** **：** 委托名称。 **取值范围：** 不涉及                            |
| enable_monitoring_service | Boolean | **参数解释** **：** 开启主机监控服务。 **取值范围：** 不涉及                        |
   
 表7network_interfaces字段数据结构说明 
| 参数           | 参数类型   | 描述                                                                                                                                                                      |
|:---|:---|:---|
| virsubnet_id | String | **参数解释** **：** 子网ID。 **取值范围：** 不涉及                                              |
| attachment   | Object | **参数解释** **：** 网卡信息。详情请参见[表8]。 **取值范围：** 不涉及 |
   
 表8attachment字段数据结构说明 
| 参数           | 参数类型    | 描述                                                                                                                                |
|:---|:---|:---|
| device_index | Integer | **参数解释** **：** 加载顺序，0代表主网卡。 **取值范围：** 不涉及 |
   
 表9block_device_mappings字段数据结构说明 
| 参数          | 参数类型    | 描述                                                                                                                                                                    |
|:---|:---|:---|
| source_id   | String  | **参数解释** **：** 云服务器卷数据源类型。 **取值范围：** 不涉及                                   |
| source_type | String  | **参数解释** **：** 卷设备源头类型。 **取值范围：** 不涉及                                     |
| encrypted   | Boolean | **参数解释** **：** 是否加密。 **取值范围：** 不涉及                                          |
| cmk_id      | String  | **参数解释** **：** 密钥ID。 **取值范围：** 不涉及                                          |
| volume_type | String  | **参数解释** **：** 卷类型。 **取值范围：** 不涉及                                           |
| volume_size | Integer | **参数解释** **：** 卷大小。 **取值范围：** 不涉及                                         |
| attachment  | Object  | **参数解释** **：** 磁盘接口。详情请参见[表10]。 **取值范围：** 不涉及 |
   
 表10attachment字段数据结构说明 
| 参数                    | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| boot_index            | Integer | **参数解释** **：** 加载顺序，0代表系统盘。 **取值范围：** 不涉及                                                                                                                                                                                                                              |
| delete_on_termination | Boolean | **参数解释** **：** 磁盘是否随实例一同释放。 **取值范围：** - true：随实例释放  - false：不随实例释放   默认系统盘设置为true随实例释放，数据盘设置为false不随实例释放。 |
   
 表11market_options字段数据结构说明 
| 参数           | 参数类型   | 描述                                                                                                                                                                             |
|:---|:---|:---|
| market_type  | String | **参数解释** **：** 计费类型。 **取值范围：** 不涉及                                                    |
| spot_options | Object | **参数解释** **：** spot实例相关参数。详情请参见[表12]。 **取值范围：** 不涉及 |
   
 表12spot_options字段数据结构说明 
| 参数                             | 参数类型    | 描述                                                                                                                                               |
|:---|:---|:---|
| spot_price                     | Float   | **参数解释** **：** 用户愿意为竞价实例每小时支付的最高价格。 **取值范围：** 不涉及           |
| block_duration_minutes         | Integer | **参数解释** **：** 购买的竞价实例时长。 **取值范围：** 不涉及               |
| instance_interruption_behavior | String  | **参数解释** **：** 竞价实例中断策略，当前支持immediate。 **取值范围：** 不涉及 |
   
 表13internet_access字段数据结构说明 
| 参数       | 参数类型   | 描述                                                                                                                                                                         |
|:---|:---|:---|
| publicip | Object | **参数解释** **：** 公网访问。详情请参见[表14]。 **取值范围：** 不涉及 |
   
 表14publicip字段数据结构说明 
| 参数                    | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|
| publicip_type         | String  | **参数解释** **：** 弹性公网IP类型。 **取值范围：** 不涉及                                                                                                                                                                                           |
| charging_mode         | String  | **参数解释** **：** 弹性公网IP计费类型。 **取值范围：** 不涉及                                                                                                                                                                                       |
| bandwidth             | Object  | **参数解释** **：** 弹性公网IP带宽。详情请参见[表15]。 **取值范围：** 不涉及                                                                                                                                              |
| delete_on_termination | Boolean | **参数解释** **：** 弹性公网IP是否随实例一同释放。 **取值范围：** - true：随实例释放  - false：不随实例释放   |
   
 表15bandwidth字段数据结构说明 
| 参数          | 参数类型    | 描述                                                                                                                                                            |
|:---|:---|:---|
| share_type  | String  | **参数解释** **：** 带宽类型。 **取值范围：** 不涉及                                   |
| size        | Integer | **参数解释** **：** 带宽大小。 **取值范围：** 不涉及                                   |
| charge_mode | String  | **参数解释** **：** 计费类型。 **取值范围：** 不涉及                                  |
| id          | String  | **参数解释** **：** 带宽ID，创建WHOLE类型带宽的弹性公网IP时可以指定之前的共享带宽创建。 **取值范围：** 不涉及 |
   
 表16tag_options字段数据结构说明 
| 参数   | 参数类型             | 描述                                                                                                                                                                    |
|:---|:---|:---|
| tags | Array of Objects | **参数解释** **：** 标签。详情请参见[表17]。 **取值范围：** 不涉及 |
   
 表17tags字段数据结构说明 
| 参数    | 参数类型   | 描述                                                                                                                        |
|:---|:---|:---|
| key   | String | **参数解释** **：** 标签键。 **取值范围：** 不涉及 |
| value | String | **参数解释** **：** 标签值。 **取值范围：** 不涉及 |
   
 表18page_info参数信息 
| 参数              | 参数类型   | 描述                                                                                                                                  |
|:---|:---|:---|
| next_marker     | String | **参数解释** **：** 下一页的开始索引ID。 **取值范围：** 不涉及 |
| previous_marker | String | **参数解释** **：** 上一页的开始索引ID。 **取值范围：** 不涉及   |
   
#### 请求示例
查询模板版本列表。
```
GET https://{endpoint}/v3/{project_id}/launch-template-versions
```
#### 响应示例
```
{
  "launch_template_versions": [
    {
      "template_data": {
        "flavor_id": "c1.2xlarge.2",
        "name": "new-server",
        "description": "test server",
        "availability_zone_id": "az1.dc1",
        "enterprise_project_id": "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67",
        "auto_recovery": false,
        "os_profile": {
          "key_name": "new-key",
          "user_data": "XXXXXXXXXXXXXXXX",
          "iam_agency_name": "new-agency",
          "enable_monitoring_service": false
        },
        "security_group_ids": [
          "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67"
        ],
        "network_interfaces": [
          {
            "virsubnet_id": "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67",
            "attachment": {
             "device_index": 0
            }
          }
        ],
        "block_device_mappings": [
          {
            "source_id": "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67",
            "source_type": "image",
            "encrypted": false,
            "cmk_id": "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67",
            "volume_type": "SATA",
            "volume_size": 40,
            "attachment": {
             "boot_index": 0
            }
          }
        ],
        "market_options": {
          "market_type": "postpaid",
          "spot_options": {
            "spot_price": 3.5,
            "block_duration_minutes": 60,
            "instance_interruption_behavior": "immediate"
          }
        },
        "internet_access": {
          "publicip": {
            "publicip_type": "5_bgp",
            "charging_mode": "postPaid",
            "bandwidth": {
              "share_type": "PER",
              "size": 2,
              "charge_mode": "traffic",
              "id": "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67"
            }
          }
        },
        "metadata": {
          "additionalProp1": "string",
          "additionalProp2": "string",
          "additionalProp3": "string"
        },
        "tag_options": [
          {
            "tags": [
              {
                "key": "tag-key",
                "value": "tag-value"
              }
            ]
          }
        ]
      },
      "version_number": 2,
      "version_id": "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67",
      "version_description": "this template version is used for XXXXXX",
      "created_at": "XXXX-XX-XXTXX:XX:XX.XXXZ",
      "launch_template_id": "e6b99563-xxxx-xxxx-xxxx-1820d4fd2a67"
    }
  ],
  "page_info": {
    "next_marker": "string"
  }
}
```
#### 返回值
请参考[通用请求返回值](https://support.huaweicloud.com/api-ecs/ecs_07_0001.html)。
#### 错误码
请参考[错误码](https://support.huaweicloud.com/api-ecs/ecs_07_0002.html)。
