Custom resource response objects
This topic describes the properties of the response object for a CloudFormation custom resource.
For an introduction to custom resources and how they work, see Create custom provisioning logic with custom resources.
Custom resource provider response fields
The following are properties that the custom resource provider includes when it sends the JSON file to the presigned URL. For more information about uploading objects by using presigned URLs, see Uploading objects with presigned URLs in the Amazon Simple Storage Service User Guide.
Note
The total size of the response body can't exceed 4096 bytes.
- Status
- 
               The status value sent by the custom resource provider in response to an Amazon CloudFormation-generated request. Must be either SUCCESSorFAILED.Required: Yes Type: String 
- Reason
- 
               Describes the reason for a failure response. Required: Required if StatusisFAILED. It's optional otherwise.Type: String 
- PhysicalResourceId
- This value should be an identifier unique to the custom resource vendor, and can be up to 1 KB in size. The value must be a non-empty string and must be identical for all responses for the same resource. - The value returned for a - PhysicalResourceIdcan change custom resource update operations. If the value returned is the same, it is considered a normal update. If the value returned is different, Amazon CloudFormation recognizes the update as a replacement and sends a delete request to the old resource. For more information, see- AWS::CloudFormation::CustomResource.- Required: Yes - Type: String 
- StackId
- 
               The Amazon Resource Name (ARN) that identifies the stack that contains the custom resource. This response value should be copied verbatim from the request. Required: Yes Type: String 
- RequestId
- 
               A unique ID for the request. This response value should be copied verbatim from the request. Required: Yes Type: String 
- LogicalResourceId
- 
               The template developer-chosen name (logical ID) of the custom resource in the Amazon CloudFormation template. This response value should be copied verbatim from the request. Required: Yes Type: String 
- NoEcho
- 
               Optional. Indicates whether to mask the output of the custom resource when retrieved by using the Fn::GetAttfunction. If set totrue, all returned values are masked with asterisks (*****), except for those stored in theMetadatasection of the template. Amazon CloudFormation does not transform, modify, or redact any information you include in theMetadatasection. The default value isfalse.For more information about using NoEchoto mask sensitive information, see the Do not embed credentials in your templates best practice.Required: No Type: Boolean 
- Data
- 
               Optional. The custom resource provider-defined name-value pairs to send with the response. You can access the values provided here by name in the template with Fn::GetAtt.ImportantIf the name-value pairs contain sensitive information, you should use the NoEchofield to mask the output of the custom resource. Otherwise, the values are visible through APIs that surface property values (such asDescribeStackEvents).Required: No Type: JSON object