CreateBranch
Creates a new branch for an Amplify app.
Request Syntax
POST /apps/appId
/branches HTTP/1.1
Content-type: application/json
{
"backend": {
"stackArn": "string
"
},
"backendEnvironmentArn": "string
",
"basicAuthCredentials": "string
",
"branchName": "string
",
"buildSpec": "string
",
"description": "string
",
"displayName": "string
",
"enableAutoBuild": boolean
,
"enableBasicAuth": boolean
,
"enableNotification": boolean
,
"enablePerformanceMode": boolean
,
"enablePullRequestPreview": boolean
,
"environmentVariables": {
"string
" : "string
"
},
"framework": "string
",
"pullRequestEnvironmentName": "string
",
"stage": "string
",
"tags": {
"string
" : "string
"
},
"ttl": "string
"
}
URI Request Parameters
The request uses the following URI parameters.
- appId
-
The unique ID for an Amplify app.
Length Constraints: Minimum length of 1. Maximum length of 20.
Pattern:
d[a-z0-9]+
Required: Yes
Request Body
The request accepts the following data in JSON format.
- backend
-
The backend for a
Branch
of an Amplify app. Use for a backend created from an AWS CloudFormation stack.This field is available to Amplify Gen 2 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.
Type: Backend object
Required: No
- backendEnvironmentArn
-
The Amazon Resource Name (ARN) for a backend environment that is part of a Gen 1 Amplify app.
This field is available to Amplify Gen 1 apps only where the backend is created using Amplify Studio or the Amplify command line interface (CLI).
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1000.
Pattern:
(?s).*
Required: No
- basicAuthCredentials
-
The basic authorization credentials for the branch. You must base64-encode the authorization credentials and provide them in the format
user:password
.Type: String
Length Constraints: Maximum length of 2000.
Pattern:
(?s).*
Required: No
- branchName
-
The name for the branch.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern:
(?s).+
Required: Yes
- buildSpec
-
The build specification (build spec) for the branch.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 25000.
Pattern:
(?s).+
Required: No
- description
-
The description for the branch.
Type: String
Length Constraints: Maximum length of 1000.
Pattern:
(?s).*
Required: No
- displayName
-
The display name for a branch. This is used as the default domain prefix.
Type: String
Length Constraints: Maximum length of 255.
Pattern:
(?s).*
Required: No
- enableAutoBuild
-
Enables auto building for the branch.
Type: Boolean
Required: No
- enableBasicAuth
-
Enables basic authorization for the branch.
Type: Boolean
Required: No
- enableNotification
-
Enables notifications for the branch.
Type: Boolean
Required: No
- enablePerformanceMode
-
Enables performance mode for the branch.
Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out.
Type: Boolean
Required: No
- enablePullRequestPreview
-
Enables pull request previews for this branch.
Type: Boolean
Required: No
- environmentVariables
-
The environment variables for the branch.
Type: String to string map
Key Length Constraints: Maximum length of 255.
Key Pattern:
(?s).*
Value Length Constraints: Maximum length of 5500.
Value Pattern:
(?s).*
Required: No
- framework
-
The framework for the branch.
Type: String
Length Constraints: Maximum length of 255.
Pattern:
(?s).*
Required: No
- pullRequestEnvironmentName
-
The Amplify environment name for the pull request.
Type: String
Length Constraints: Maximum length of 20.
Pattern:
(?s).*
Required: No
- stage
-
Describes the current stage for the branch.
Type: String
Valid Values:
PRODUCTION | BETA | DEVELOPMENT | EXPERIMENTAL | PULL_REQUEST
Required: No
-
The tag for the branch.
Type: String to string map
Map Entries: Minimum number of 0 items. Maximum number of 50 items.
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Key Pattern:
^(?!aws:)[a-zA-Z+-=._:/]+$
Value Length Constraints: Maximum length of 256.
Value Pattern:
^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$
Required: No
- ttl
-
The content Time To Live (TTL) for the website in seconds.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 32.
Pattern:
\d*
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"branch": {
"activeJobId": "string",
"associatedResources": [ "string" ],
"backend": {
"stackArn": "string"
},
"backendEnvironmentArn": "string",
"basicAuthCredentials": "string",
"branchArn": "string",
"branchName": "string",
"buildSpec": "string",
"createTime": number,
"customDomains": [ "string" ],
"description": "string",
"destinationBranch": "string",
"displayName": "string",
"enableAutoBuild": boolean,
"enableBasicAuth": boolean,
"enableNotification": boolean,
"enablePerformanceMode": boolean,
"enablePullRequestPreview": boolean,
"environmentVariables": {
"string" : "string"
},
"framework": "string",
"pullRequestEnvironmentName": "string",
"sourceBranch": "string",
"stage": "string",
"tags": {
"string" : "string"
},
"thumbnailUrl": "string",
"totalNumberOfJobs": "string",
"ttl": "string",
"updateTime": number
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
Errors
For information about the errors that are common to all actions, see Common Errors.
- BadRequestException
-
A request contains unexpected data.
HTTP Status Code: 400
- DependentServiceFailureException
-
An operation failed because a dependent service threw an exception.
HTTP Status Code: 503
- InternalFailureException
-
The service failed to perform an operation due to an internal issue.
HTTP Status Code: 500
- LimitExceededException
-
A resource could not be created because service quotas were exceeded.
HTTP Status Code: 429
- NotFoundException
-
An entity was not found during an operation.
HTTP Status Code: 404
- UnauthorizedException
-
An operation failed due to a lack of access.
HTTP Status Code: 401
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: