This topic describes the types and fields of requests from template developers.

Template developer request properties

The template developer uses ALIYUN::ROS::CustomResource to specify a custom resource in a template.

The following table describes the three properties contained in ALIYUN::ROS::CustomResource, which are ServiceToken, Parameters, and Timeout.

Property Type Required Description Constraint
ServiceToken String Yes The service token that is provided by the custom service provider to the template developer . The service token can be a Function Compute function, an MNS topic, an MNS queue, or an HTTP or HTTPS URL.

The service token can be used in any regions.

Parameters Map No The parameters to be passed to the custom service provider. The property must be specified based on specifications provided by the custom service provider. None
Timeout Number No The timeout period for ROS to wait for responses from the custom service provider.

Valid values: 1 to 43200.

Unit: seconds.

Default value: 60.

Request fields for the custom resource provider

These fields are sent in JSON requests from ROS to the custom resource provider.

Field Type Required Description Constraint
RequestType String Yes The request type set by an ROS stack operation such as CreateStack, UpdateStack, or DeleteStack. The operation is initiated by the template developer for the stack that contains the custom resource. Valid values:
  • Create
  • Update
  • Delete

For more information, see Custom resource request types.

ResponseURL String Yes The presigned Internet URL. The URL receives responses from the custom resource provider to ROS. None
IntranetResponseURL String Yes The presigned internal URL that can be used in Elastic Compute Service (ECS). The URL receives responses from the custom resource provider to ROS. None
StackId String Yes The ID of the stack that contains the custom resource. None
StackName String Yes The name of the stack that contains the custom resource. None
ResourceOwnerId String Yes The ID of the Alibaba Cloud account to which the stack with the custom resource belongs. None
CallerId String Yes The ID of the Alibaba Cloud account or RAM user that is used to perform the stack operation. None
RegionId String Yes The region ID of the stack that contains the custom resource. None
RequestId String Yes The unique ID of the request. You can use RequestId in combination with StackId to form a value that uniquely identifies a request on a particular custom resource. None
ResourceType String Yes The resource type that the template developer selects for the custom resource in the template. The resource type name can be up to 68 characters in length and can contain letters, digits, underscores (_), at signs (@), and hyphens (-).
LogicalResourceId String Yes The name (logical ID) selected by the template developer for the custom resource in the ROS template. This field facilitates communication between the custom resource provider and the template developer. None
PhysicalResourceId String Yes The physical ID defined by the custom resource provider. The ID is unique to the provider. The ID is used only for Update and Delete requests.
ResourceProperties JSON object Yes The properties of the resource. This field contains the content of the Properties object sent by the template developer. The content is defined by the custom resource provider. None
OldResourceProperties JSON object No The resource properties that were declared previous to the update request. The properties are used only for Update requests.