AWS Fundamentals Logo
AWS Fundamentals
L1 ConstructAWS::Amplify::App

CfnApp

The AWS::Amplify::App resource specifies Apps in Amplify Hosting. An App is a collection of branches.

Import

import { CfnApp } from 'aws-cdk-lib/aws-amplify';

Or use the module namespace:

import * as amplify from 'aws-cdk-lib/aws-amplify';
// amplify.CfnApp

Properties

Configuration passed to the constructor as CfnAppProps.

nameRequired
string

The name of the Amplify app.

accessTokenOptional
string

The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored. Use `AccessToken` for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use `OauthToken` . You must specify either `AccessToken` or `OauthToken` when you create a new app. Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see [Migrating an existing OAuth app to the Amplify GitHub App](https://docs.aws.amazon.com/amplify/latest/userguide/setting-up-GitHub-access.html#migrating-to-github-app-auth) in the *Amplify User Guide* .

autoBranchCreationConfigOptional
IResolvable | AutoBranchCreationConfigProperty

Sets the configuration for your automatic branch creation.

basicAuthConfigOptional
IResolvable | BasicAuthConfigProperty

The credentials for basic authorization for an Amplify app. You must base64-encode the authorization credentials and provide them in the format `user:password` .

buildSpecOptional
string

The build specification (build spec) for an Amplify app.

cacheConfigOptional
IResolvable | CacheConfigProperty

The cache configuration for the Amplify app. If you don't specify the cache configuration `type` , Amplify uses the default `AMPLIFY_MANAGED` setting.

computeRoleArnOptional
string

The Amazon Resource Name (ARN) of the IAM role for an SSR app. The Compute role allows the Amplify Hosting compute service to securely access specific AWS resources based on the role's permissions. For more information about the SSR Compute role, see [Adding an SSR Compute role](https://docs.aws.amazon.com/amplify/latest/userguide/amplify-SSR-compute-role.html) in the *Amplify User Guide* .

customHeadersOptional
string

The custom HTTP headers for an Amplify app.

customRulesOptional
IResolvable | IResolvable | CustomRuleProperty[]

The custom rewrite and redirect rules for an Amplify app.

descriptionOptional
string

The description of the Amplify app.

enableBranchAutoDeletionOptional
boolean | IResolvable

Automatically disconnect a branch in Amplify Hosting when you delete a branch from your Git repository.

environmentVariablesOptional
IResolvable | IResolvable | EnvironmentVariableProperty[]

The environment variables for the Amplify app. For a list of the environment variables that are accessible to Amplify by default, see [Amplify Environment variables](https://docs.aws.amazon.com/amplify/latest/userguide/amplify-console-environment-variables.html) in the *Amplify Hosting User Guide* .

iamServiceRoleOptional
string | IRoleRef

AWS Identity and Access Management ( IAM ) service role for the Amazon Resource Name (ARN) of the Amplify app.

jobConfigOptional
IResolvable | JobConfigProperty

The configuration details that apply to the jobs for an Amplify app.

oauthTokenOptional
string

The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored. Use `OauthToken` for repository providers other than GitHub, such as Bitbucket or CodeCommit. To authorize access to GitHub as your repository provider, use `AccessToken` . You must specify either `OauthToken` or `AccessToken` when you create a new app. Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see [Migrating an existing OAuth app to the Amplify GitHub App](https://docs.aws.amazon.com/amplify/latest/userguide/setting-up-GitHub-access.html#migrating-to-github-app-auth) in the *Amplify User Guide* .

platformOptional
string

The platform for the Amplify app. For a static app, set the platform type to `WEB` . For a dynamic server-side rendered (SSR) app, set the platform type to `WEB_COMPUTE` . For an app requiring Amplify Hosting's original SSR support only, set the platform type to `WEB_DYNAMIC` . If you are deploying an SSG only app with Next.js version 14 or later, you must set the platform type to `WEB_COMPUTE` and set the artifacts `baseDirectory` to `.next` in the application's build settings. For an example of the build specification settings, see [Amplify build settings for a Next.js 14 SSG application](https://docs.aws.amazon.com/amplify/latest/userguide/deploy-nextjs-app.html#build-setting-detection-ssg-14) in the *Amplify Hosting User Guide* .

repositoryOptional
string

The Git repository for the Amplify app.

tagsOptional
CfnTag[]

The tag for an Amplify app.

CloudFormation Resource

This L1 construct maps directly to the following CloudFormation resource type.

Learn AWS the Practical Way

Our bi-weekly newsletter teaches hands-on AWS fundamentals. No certification fluff - just practical knowledge.

Subscribe to Newsletter