# AWS::StepFunctions::StateMachine Resource schema for StateMachine ## Syntax To declare this entity in your AWS CloudFormation template, use the following syntax: ### JSON
{ "Type" : "AWS::StepFunctions::StateMachine", "Properties" : { "DefinitionString" : String, "RoleArn" : String, "StateMachineName" : String, "StateMachineType" : String, "LoggingConfiguration" : LoggingConfiguration, "TracingConfiguration" : TracingConfiguration, "DefinitionS3Location" : S3Location, "DefinitionSubstitutions" : DefinitionSubstitutions, "Definition" : Map, "Tags" : [ TagsEntry, ... ] } }### YAML
Type: AWS::StepFunctions::StateMachine Properties: DefinitionString: String RoleArn: String StateMachineName: String StateMachineType: String LoggingConfiguration: LoggingConfiguration TracingConfiguration: TracingConfiguration DefinitionS3Location: S3Location DefinitionSubstitutions: DefinitionSubstitutions Definition: Map Tags: - TagsEntry## Properties #### DefinitionString _Required_: No _Type_: String _Minimum_:
1
_Maximum_: 1048576
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
#### RoleArn
_Required_: Yes
_Type_: String
_Minimum_: 1
_Maximum_: 256
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
#### StateMachineName
_Required_: No
_Type_: String
_Minimum_: 1
_Maximum_: 80
_Update requires_: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)
#### StateMachineType
_Required_: No
_Type_: String
_Allowed Values_: STANDARD
| EXPRESS
_Update requires_: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)
#### LoggingConfiguration
_Required_: No
_Type_: LoggingConfiguration
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
#### TracingConfiguration
_Required_: No
_Type_: TracingConfiguration
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
#### DefinitionS3Location
_Required_: No
_Type_: S3Location
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
#### DefinitionSubstitutions
_Required_: No
_Type_: DefinitionSubstitutions
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
#### Definition
_Required_: No
_Type_: Map
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
#### Tags
_Required_: No
_Type_: List of TagsEntry
_Update requires_: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
## Return Values
### Ref
When you pass the logical ID of this resource to the intrinsic `Ref` function, Ref returns the Arn.
### 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](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html).
#### Arn
Returns the Arn
value.
#### Name
Returns the Name
value.