# StateMachineType

Two types of state machines are available in AWS Step Functions: EXPRESS AND STANDARD.

- Source: [`aws-stepfunctions/lib/state-machine.ts`](https://github.com/aws/aws-cdk/blob/v2.274.0/packages/aws-cdk-lib/aws-stepfunctions/lib/state-machine.ts#L29)

## Example

```ts
import * as kms from 'aws-cdk-lib/aws-kms';
import * as cdk from 'aws-cdk-lib';

const kmsKey = new kms.Key(this, 'Key');
const stateMachine = new sfn.StateMachine(this, 'StateMachineWithCMKEncryptionConfiguration', {
  stateMachineName: 'StateMachineWithCMKEncryptionConfiguration',
  definitionBody: sfn.DefinitionBody.fromChainable(sfn.Chain.start(new sfn.Pass(this, 'Pass'))),
  stateMachineType: sfn.StateMachineType.STANDARD,
  encryptionConfiguration: new sfn.CustomerManagedEncryptionConfiguration(kmsKey, cdk.Duration.seconds(60)),
});
```

## Members

| Member | Description |
| --- | --- |
| `EXPRESS` | Express Workflows are ideal for high-volume, event processing workloads. |
| `STANDARD` | Standard Workflows are ideal for long-running, durable, and auditable workflows. |

## Referenced by

- [`DistributedMapJsonataProps`](/v2/docs/aws-cdk-lib.aws_stepfunctions.DistributedMapJsonataProps).mapExecutionType
- [`DistributedMapJsonPathProps`](/v2/docs/aws-cdk-lib.aws_stepfunctions.DistributedMapJsonPathProps).mapExecutionType
- [`DistributedMapProps`](/v2/docs/aws-cdk-lib.aws_stepfunctions.DistributedMapProps).mapExecutionType
- [`StateMachine`](/v2/docs/aws-cdk-lib.aws_stepfunctions.StateMachine).stateMachineType
- [`StateMachineProps`](/v2/docs/aws-cdk-lib.aws_stepfunctions.StateMachineProps).stateMachineType
