# AWS Transfer for SFTP Construct Library

This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.

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

There are no official hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet. Here are some suggestions on how to proceed:

- Search [Construct Hub for Transfer construct libraries](https://constructs.dev/search?q=transfer)
- Use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, in the same way you would use [the CloudFormation AWS::Transfer resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Transfer.html) directly.

There are no hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet.
However, you can still use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, and use this service exactly as you would using CloudFormation directly.

For more information on the resources and properties available for this service, see the [CloudFormation documentation for AWS::Transfer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Transfer.html).

(Read the [CDK Contributing Guide](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and submit an RFC if you are interested in contributing to this construct library.)

## Types

| Name | Kind | Summary |
| --- | --- | --- |
| [`CfnAgreement`](/v2/docs/aws-cdk-lib.aws_transfer.CfnAgreement) | Construct (L1) | Creates an agreement. |
| [`CfnCertificate`](/v2/docs/aws-cdk-lib.aws_transfer.CfnCertificate) | Construct (L1) | Imports the signing and encryption certificates that you need to create local (AS2) profiles and partner profiles. |
| [`CfnConnector`](/v2/docs/aws-cdk-lib.aws_transfer.CfnConnector) | Construct (L1) | Creates the connector, which captures the parameters for a connection for the AS2 or SFTP protocol. |
| [`CfnHostKey`](/v2/docs/aws-cdk-lib.aws_transfer.CfnHostKey) | Construct (L1) | Resource type definition for AWS::Transfer::HostKey. |
| [`CfnProfile`](/v2/docs/aws-cdk-lib.aws_transfer.CfnProfile) | Construct (L1) | Creates the local or partner profile to use for AS2 transfers. |
| [`CfnServer`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer) | Construct (L1) | Instantiates an auto-scaling virtual server based on the selected file transfer protocol in AWS . |
| [`CfnUser`](/v2/docs/aws-cdk-lib.aws_transfer.CfnUser) | Construct (L1) | The `AWS::Transfer::User` resource creates a user and associates them with an existing server. |
| [`CfnWebApp`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWebApp) | Construct (L1) | Creates a web app based on specified parameters, and returns the ID for the new web app. |
| [`CfnWorkflow`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow) | Construct (L1) | Allows you to create a workflow with specified steps and step details the workflow invokes after file transfer completes. |
| [`CfnAgreement.CustomDirectoriesProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnAgreement.CustomDirectoriesProperty) | Struct | Specifies a separate directory for each type of file to store for an AS2 message. |
| [`CfnAgreementProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnAgreementProps) | Struct | Properties for defining a `CfnAgreement`. |
| [`CfnCertificateProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnCertificateProps) | Struct | Properties for defining a `CfnCertificate`. |
| [`CfnConnector.As2ConfigProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnConnector.As2ConfigProperty) | Struct | A structure that contains the parameters for an AS2 connector object. |
| [`CfnConnector.ConnectorAsyncMdnConfigProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnConnector.ConnectorAsyncMdnConfigProperty) | Struct |  |
| [`CfnConnector.ConnectorEgressConfigProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnConnector.ConnectorEgressConfigProperty) | Struct | Configuration structure that defines how traffic is routed from the connector to the SFTP server. |
| [`CfnConnector.ConnectorVpcLatticeEgressConfigProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnConnector.ConnectorVpcLatticeEgressConfigProperty) | Struct | VPC_LATTICE egress configuration that specifies the Resource Configuration ARN and port for connecting to SFTP servers through customer VPCs. |
| [`CfnConnector.SftpConfigProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnConnector.SftpConfigProperty) | Struct | A structure that contains the parameters for an SFTP connector object. |
| [`CfnConnectorProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnConnectorProps) | Struct | Properties for defining a `CfnConnector`. |
| [`CfnHostKeyProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnHostKeyProps) | Struct | Properties for defining a `CfnHostKey`. |
| [`CfnProfileProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnProfileProps) | Struct | Properties for defining a `CfnProfile`. |
| [`CfnServer.EndpointDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer.EndpointDetailsProperty) | Struct | The virtual private cloud (VPC) endpoint settings that are configured for your server. |
| [`CfnServer.IdentityProviderDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer.IdentityProviderDetailsProperty) | Struct | Required when `IdentityProviderType` is set to `AWS_DIRECTORY_SERVICE` , `AWS _LAMBDA` or `API_GATEWAY` . |
| [`CfnServer.ProtocolDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer.ProtocolDetailsProperty) | Struct | The protocol settings that are configured for your server. |
| [`CfnServer.ProxyConfigProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer.ProxyConfigProperty) | Struct |  |
| [`CfnServer.S3StorageOptionsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer.S3StorageOptionsProperty) | Struct | The Amazon S3 storage options that are configured for your server. |
| [`CfnServer.WorkflowDetailProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer.WorkflowDetailProperty) | Struct | Specifies the workflow ID for the workflow to assign and the execution role that's used for executing the workflow. |
| [`CfnServer.WorkflowDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServer.WorkflowDetailsProperty) | Struct | Container for the `WorkflowDetail` data type. |
| [`CfnServerProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnServerProps) | Struct | Properties for defining a `CfnServer`. |
| [`CfnUser.HomeDirectoryMapEntryProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnUser.HomeDirectoryMapEntryProperty) | Struct | Represents an object that contains entries and targets for `HomeDirectoryMappings` . |
| [`CfnUser.PosixProfileProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnUser.PosixProfileProperty) | Struct | The full POSIX identity, including user ID ( `Uid` ), group ID ( `Gid` ), and any secondary groups IDs ( `SecondaryGids` ), that controls your users' access to your Amazon EFS file systems. |
| [`CfnUserProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnUserProps) | Struct | Properties for defining a `CfnUser`. |
| [`CfnWebApp.EndpointDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWebApp.EndpointDetailsProperty) | Struct |  |
| [`CfnWebApp.IdentityProviderDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWebApp.IdentityProviderDetailsProperty) | Struct | A structure that describes the values to use for the SSO settings when you create or update a web app. |
| [`CfnWebApp.VpcProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWebApp.VpcProperty) | Struct | You can provide a structure that contains the details for the VPC endpoint to use with your web app. |
| [`CfnWebApp.WebAppCustomizationProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWebApp.WebAppCustomizationProperty) | Struct | A structure that contains the customization fields for the web app. |
| [`CfnWebApp.WebAppUnitsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWebApp.WebAppUnitsProperty) | Struct | Contains an integer value that represents the value for number of concurrent connections or the user sessions on your web app. |
| [`CfnWebAppProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWebAppProps) | Struct | Properties for defining a `CfnWebApp`. |
| [`CfnWorkflow.CopyStepDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.CopyStepDetailsProperty) | Struct | Details for a step that performs a file copy. |
| [`CfnWorkflow.CustomStepDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.CustomStepDetailsProperty) | Struct | Details for a step that invokes an AWS Lambda function. |
| [`CfnWorkflow.DecryptStepDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.DecryptStepDetailsProperty) | Struct | Details for a step that decrypts an encrypted file. |
| [`CfnWorkflow.DeleteStepDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.DeleteStepDetailsProperty) | Struct | An object that contains the name and file location for a file being deleted by a workflow. |
| [`CfnWorkflow.EfsInputFileLocationProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.EfsInputFileLocationProperty) | Struct | Specifies the Amazon EFS identifier and the path for the file being used. |
| [`CfnWorkflow.InputFileLocationProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.InputFileLocationProperty) | Struct | Specifies the location for the file that's being processed. |
| [`CfnWorkflow.S3FileLocationProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.S3FileLocationProperty) | Struct | Specifies the S3 details for the file being used, such as bucket, ETag, and so forth. |
| [`CfnWorkflow.S3InputFileLocationProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.S3InputFileLocationProperty) | Struct | Specifies the details for the Amazon S3 location for an input file to a workflow. |
| [`CfnWorkflow.S3TagProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.S3TagProperty) | Struct | Specifies the key-value pair that are assigned to a file during the execution of a Tagging step. |
| [`CfnWorkflow.TagStepDetailsProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.TagStepDetailsProperty) | Struct | Details for a step that creates one or more tags. |
| [`CfnWorkflow.WorkflowStepProperty`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflow.WorkflowStepProperty) | Struct | The basic building block of a workflow. |
| [`CfnWorkflowProps`](/v2/docs/aws-cdk-lib.aws_transfer.CfnWorkflowProps) | Struct | Properties for defining a `CfnWorkflow`. |
