# AWS Amplify Construct Library

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

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

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 Amplify construct libraries](https://constructs.dev/search?q=amplify)
- 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::Amplify resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Amplify.html) directly.

> An experimental construct library for this service is available in preview. Since it is not stable yet, it is distributed
> as a separate package so that you can pin its version independently of the rest of the CDK. See the package:
>
> <span class="package-reference">@aws-cdk/aws-amplify-alpha</span>

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::Amplify](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Amplify.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 |
| --- | --- | --- |
| [`CfnApp`](/v2/docs/aws-cdk-lib.aws_amplify.CfnApp) | Construct (L1) | The AWS::Amplify::App resource specifies Apps in Amplify Hosting. |
| [`CfnBranch`](/v2/docs/aws-cdk-lib.aws_amplify.CfnBranch) | Construct (L1) | The AWS::Amplify::Branch resource specifies a new branch within an app. |
| [`CfnDomain`](/v2/docs/aws-cdk-lib.aws_amplify.CfnDomain) | Construct (L1) | Specifies the AWS::Amplify::Domain resource that enables you to connect a custom domain to your app. |
| [`CfnWebhook`](/v2/docs/aws-cdk-lib.aws_amplify.CfnWebhook) | Construct (L1) | Resource Type definition for AWS::Amplify::Webhook. |
| [`CfnApp.AutoBranchCreationConfigProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnApp.AutoBranchCreationConfigProperty) | Struct | Use the AutoBranchCreationConfig property type to automatically create branches that match a certain pattern. |
| [`CfnApp.BasicAuthConfigProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnApp.BasicAuthConfigProperty) | Struct | Use the BasicAuthConfig property type to set password protection at an app level to all your branches. |
| [`CfnApp.CacheConfigProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnApp.CacheConfigProperty) | Struct | Describes the cache configuration for an Amplify app. |
| [`CfnApp.CustomRuleProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnApp.CustomRuleProperty) | Struct | The CustomRule property type allows you to specify redirects, rewrites, and reverse proxies. |
| [`CfnApp.EnvironmentVariableProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnApp.EnvironmentVariableProperty) | Struct | Environment variables are key-value pairs that are available at build time. |
| [`CfnApp.JobConfigProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnApp.JobConfigProperty) | Struct | Describes the configuration details that apply to the jobs for an Amplify app. |
| [`CfnAppProps`](/v2/docs/aws-cdk-lib.aws_amplify.CfnAppProps) | Struct | Properties for defining a `CfnApp`. |
| [`CfnBranch.BackendProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnBranch.BackendProperty) | Struct | Describes the backend associated with an Amplify `Branch` . |
| [`CfnBranch.BasicAuthConfigProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnBranch.BasicAuthConfigProperty) | Struct | Use the BasicAuthConfig property type to set password protection for a specific branch. |
| [`CfnBranch.EnvironmentVariableProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnBranch.EnvironmentVariableProperty) | Struct | The EnvironmentVariable property type sets environment variables for a specific branch. |
| [`CfnBranchProps`](/v2/docs/aws-cdk-lib.aws_amplify.CfnBranchProps) | Struct | Properties for defining a `CfnBranch`. |
| [`CfnDomain.CertificateProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnDomain.CertificateProperty) | Struct | Describes the SSL/TLS certificate for the domain association. |
| [`CfnDomain.CertificateSettingsProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnDomain.CertificateSettingsProperty) | Struct | The type of SSL/TLS certificate to use for your custom domain. |
| [`CfnDomain.SubDomainSettingProperty`](/v2/docs/aws-cdk-lib.aws_amplify.CfnDomain.SubDomainSettingProperty) | Struct | The SubDomainSetting property type enables you to connect a subdomain (for example, example.exampledomain.com) to a specific branch. |
| [`CfnDomainProps`](/v2/docs/aws-cdk-lib.aws_amplify.CfnDomainProps) | Struct | Properties for defining a `CfnDomain`. |
| [`CfnWebhookProps`](/v2/docs/aws-cdk-lib.aws_amplify.CfnWebhookProps) | Struct | Properties for defining a `CfnWebhook`. |
