This is the new AWS CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.
AWS::RefactorSpaces::Service
Note
AWS Migration Hub will no longer be open to new customers starting November 7, 2025. To continue using the service, sign up prior to November 7, 2025. For capabilities similar to AWS Migration Hub, explore AWS Migration Hub
Creates an AWS Migration Hub Refactor Spaces service. The account owner of the service is always the environment owner, regardless of which account in the environment creates the service. Services have either a URL endpoint in a virtual private cloud (VPC), or a Lambda function endpoint.
Important
If an AWS resource is launched in a service VPC, and you want it to be
        accessible to all of an environment’s services with VPCs and routes, apply the
          RefactorSpacesSecurityGroup to the resource. Alternatively, to add more
        cross-account constraints, apply your own security group.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::RefactorSpaces::Service", "Properties" : { "ApplicationIdentifier" :String, "Description" :String, "EndpointType" :String, "EnvironmentIdentifier" :String, "LambdaEndpoint" :LambdaEndpointInput, "Name" :String, "Tags" :[ Tag, ... ], "UrlEndpoint" :UrlEndpointInput, "VpcId" :String} }
YAML
Type: AWS::RefactorSpaces::Service Properties: ApplicationIdentifier:StringDescription:StringEndpointType:StringEnvironmentIdentifier:StringLambdaEndpoint:LambdaEndpointInputName:StringTags:- TagUrlEndpoint:UrlEndpointInputVpcId:String
Properties
- ApplicationIdentifier
- 
                    The unique identifier of the application. Required: Yes Type: String Pattern: ^app-([0-9A-Za-z]{10}$)Minimum: 14Maximum: 14Update requires: Replacement 
- Description
- 
                    A description of the service. Required: No Type: String Pattern: ^[a-zA-Z0-9-_\s\.\!\*\#\@\']+$Minimum: 1Maximum: 256Update requires: Replacement 
- EndpointType
- 
                    The endpoint type of the service. Required: Yes Type: String Allowed values: LAMBDA | URLUpdate requires: Replacement 
- EnvironmentIdentifier
- 
                    The unique identifier of the environment. Required: Yes Type: String Pattern: ^env-([0-9A-Za-z]{10}$)Minimum: 14Maximum: 14Update requires: Replacement 
- LambdaEndpoint
- 
                    A summary of the configuration for the AWS Lambda endpoint type. Required: No Type: LambdaEndpointInput Update requires: Replacement 
- Name
- 
                    The name of the service. Required: Yes Type: String Pattern: ^(?!svc-)[a-zA-Z0-9]+[a-zA-Z0-9-_ ]+$Minimum: 3Maximum: 63Update requires: Replacement 
- 
                    The tags assigned to the service. Required: No Type: Array of Tag Update requires: No interruption 
- UrlEndpoint
- 
                    The summary of the configuration for the URL endpoint type. Required: No Type: UrlEndpointInput Update requires: Replacement 
- VpcId
- 
                    The ID of the virtual private cloud (VPC). Required: No Type: String Pattern: ^vpc-[-a-f0-9]{8}([-a-f0-9]{9})?$Minimum: 12Maximum: 21Update requires: Replacement 
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns a composite ID following this format:
        <EnvironmentId>|<ApplicationId>|<ServiceId>. For example,
        env-1234654123|app-1234654123|svc-1234654123.
For more information about using the Ref function, see Ref.
Fn::GetAtt
The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.
- Arn
- 
                            The Amazon Resource Name (ARN) of the service. 
- ServiceIdentifier
- 
                            The unique identifier of the service.