通过指定模板地址或模板内容验证将要创建资源栈的模板。
接口说明
该接口不涉及用户数据,只对模板进行校验,无需进行 RAM 鉴权。
本文将提供一个示例,验证将要创建资源栈的模板,包含模板主体的文件的位置TemplateURL
为oss://ros/template/demo
。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息
请求参数
名称 |
类型 |
必填 |
描述 |
示例值 |
TemplateURL |
string |
否 |
包含模板主体的文件的位置。URL 必须指向位于 HTTP Web 服务器或阿里云 OSS 存储空间(例如:oss://ros/template/demo、oss://ros/template/demo?RegionId=cn-hangzhou)中的模板,模板最大为 524,288 个字节。 说明
如果 OSS 地域未指定,默认与接口参数 RegionId 相同。 您可以指定 TemplateBody 或 TemplateURL 参数,但不能同时指定。 |
oss://ros/template/demo |
RegionId |
string |
否 |
资源栈模板所属的地域 ID。您可以调用 DescribeRegions 查看最新的阿里云地域列表。 |
cn-hangzhou |
TemplateBody |
string |
否 |
模板主体的结构。长度为 1~524,288 个字节。 |
{"ROSTemplateFormatVersion":"2015-09-01"} |
ClientToken |
string |
否 |
保证请求的幂等性。该值由客户端生成,并且必须是全局唯一的。 长度不超过 64 个字符,可包含英文字母、数字、短划线(-)和下划线(_)。 更多信息,请参见如何保证幂等性。 |
123e4567-e89b-12d3-a456-42665544**** |
ValidationOption |
string |
否 |
是否对模板开启额外校验。取值:
说明
EnableFastTerraformValidation 与 EnableTerraformValidation 相比速度较快,但校验完整性稍有不足。 |
None |
UpdateInfoOptions |
array |
否 |
更新信息选项列表。列表最大长度为 2。 |
|
string |
否 |
更新信息选项,用于控制资源栈更新的相关信息的生成。取值:
|
ConsiderCondition |
关于公共请求参数的详情,请参见公共参数。
返回参数
名称 |
类型 |
描述 |
示例值 |
object |
|||
Description |
string |
描述此资源栈模板的相关信息。 |
No description |
Parameters |
array<object> |
输入参数列表。 |
|
object |
输入参数。 |
[{"Description": "", "Label": "param_integer", "NoEcho": "false", "ParameterKey": "param_integer", "Type": "Number"},{ "Description": "", "Label": "param_float", "NoEcho": "false", "ParameterKey": "param_float", "Type": "Number"}] |
|
RequestId |
string |
请求 ID。 |
B288A0BE-D927-4888-B0F7-B35EF84B6E6F |
Outputs |
array<object> |
模板输出列表。 |
|
object |
|||
OutputKey |
string |
模板输出名称。 |
instance_id |
Description |
string |
模板输出描述。 |
The instance ID of my ECS. |
Label |
string |
模板输出别名。 |
Instance ID |
ResourceTypes |
object |
模板中用到的资源类型信息。 |
|
Resources |
array |
普通资源类型列表(已去重)。 |
|
string |
普通资源类型。 |
ALIYUN::ECS::InstanceGroup |
|
DataSources |
array |
数据源资源类型列表(已去重)。 |
|
string |
数据源资源类型。 |
DATASOURCE::VPC::Vpcs |
|
Resources |
array<object> |
模板中定义的普通资源列表。 说明
|
|
object |
|||
ResourceType |
string |
普通资源类型。 |
ALIYUN::ECS::InstanceGroup |
ResourcePath |
string |
普通资源路径。通常与资源名称相同。 |
server |
LogicalResourceIdPattern |
string |
普通资源逻辑 ID 的字符串匹配模式。 对于 ROS 模板,存在如下两种情况:
对于 Terraform 模板中的资源和模块,存在如下两种情况:
Terraform 模板示例如下:
|
server |
UpdateInfo |
object |
资源栈更新的相关信息。若 UpdateInfoOptions 包含 Disabled,则不返回。 |
|
ParametersAllowedToBeModified |
array |
允许修改的参数的列表。 |
|
string |
允许修改的参数。更新资源栈时,若模板保持不变,仅修改参数取值不会引发校验错误。 |
param1 |
|
ParametersCauseInterruptionIfModified |
array |
一定会引发资源中断的参数的列表。 说明
|
|
string |
一定会引发资源中断的参数。更新资源栈时,若模板保持不变,仅修改参数取值一定会引发资源中断。 |
param1 |
|
ParametersConditionallyAllowedToBeModified |
array |
可能允许修改的参数的列表。 |
|
string |
可能允许修改的参数。更新资源栈时,若模板保持不变,仅修改参数取值,修改该参数是否引发校验错误,取决于参数的取值。 |
param2 |
|
ParametersConditionallyCauseInterruptionIfModified |
array |
可能会引发资源中断的参数的列表。 说明
|
|
string |
可能会引发资源中断的参数。更新资源栈时,若模板保持不变,仅修改参数取值可能会引发资源中断,取决于参数的取值和资源的更新行为。 |
param2 |
|
ParametersNotAllowedToBeModified |
array |
不允许修改的参数的列表。 |
|
string |
不允许修改的参数。更新资源栈时,若模板保持不变,仅修改参数取值一定会引发校验错误。 |
param3 |
|
ParametersUncertainlyAllowedToBeModified |
array |
不确定是否允许修改的参数的列表。 |
|
string |
不确定是否允许修改的参数。更新资源栈时,若模板保持不变,仅修改参数取值,运行时才能确定修改该参数是否会引发校验错误。 |
param4 |
|
ParametersUncertainlyCauseInterruptionIfModified |
array |
不确定是否会引发资源中断的参数的列表。 说明
|
|
string |
不确定是否会引发资源中断的参数。更新资源栈时,若模板保持不变,仅修改参数取值,运行时才能确定该参数是否会引发资源中断。 |
param4 |
|
ParametersCauseReplacementIfModified |
array |
一定会引发资源替换更新的参数的列表。 说明
|
|
string |
一定会引发资源替换更新的参数。更新资源栈时,若模板保持不变,仅修改参数取值一定会引发资源替换更新。 |
param5 |
|
ParametersConditionallyCauseReplacementIfModified |
array |
可能会引发资源替换更新的参数的列表。 说明
|
|
string |
可能会引发资源替换更新的参数。更新资源栈时,若模板保持不变,仅修改参数取值可能会引发资源替换更新,取决于参数的取值。 |
param6 |
|
ParametersUncertainlyCauseReplacementIfModified |
array |
不确定是否会引发资源替换更新的参数的列表。 说明
|
|
string |
不确定是否会引发资源替换更新的参数。更新资源栈时,若模板保持不变,仅修改参数取值,运行时才能确定该参数是否会引发资源替换更新。 |
param7 |
示例
正常返回示例
JSON
格式
{
"Description": "No description",
"Parameters": [
[
{
"Description": "",
"Label": "param_integer",
"NoEcho": "false",
"ParameterKey": "param_integer",
"Type": "Number"
},
{
"Description": "",
"Label": "param_float",
"NoEcho": "false",
"ParameterKey": "param_float",
"Type": "Number"
}
]
],
"RequestId": "B288A0BE-D927-4888-B0F7-B35EF84B6E6F",
"Outputs": [
{
"OutputKey": "instance_id",
"Description": "The instance ID of my ECS.",
"Label": "Instance ID"
}
],
"ResourceTypes": {
"Resources": [
"ALIYUN::ECS::InstanceGroup"
],
"DataSources": [
"DATASOURCE::VPC::Vpcs"
]
},
"Resources": [
{
"ResourceType": "ALIYUN::ECS::InstanceGroup",
"ResourcePath": "server",
"LogicalResourceIdPattern": "server"
}
],
"UpdateInfo": {
"ParametersAllowedToBeModified": [
"param1"
],
"ParametersCauseInterruptionIfModified": [
"param1"
],
"ParametersConditionallyAllowedToBeModified": [
"param2"
],
"ParametersConditionallyCauseInterruptionIfModified": [
"param2"
],
"ParametersNotAllowedToBeModified": [
"param3"
],
"ParametersUncertainlyAllowedToBeModified": [
"param4"
],
"ParametersUncertainlyCauseInterruptionIfModified": [
"param4"
],
"ParametersCauseReplacementIfModified": [
"param5"
],
"ParametersConditionallyCauseReplacementIfModified": [
"param6"
],
"ParametersUncertainlyCauseReplacementIfModified": [
"param7"
]
}
}
错误码
访问错误中心查看更多错误码。
变更历史
更多信息,参考变更详情。