

# StartDeployment
<a name="API_StartDeployment"></a>

Starts a deployment for a manually deployed app. Manually deployed apps are not connected to a Git repository. 

The maximum duration between the `CreateDeployment` call and the `StartDeployment` call cannot exceed 8 hours. If the duration exceeds 8 hours, the `StartDeployment` call and the associated `Job` will fail.

## Request Syntax
<a name="API_StartDeployment_RequestSyntax"></a>

```
POST /apps/appId/branches/branchName/deployments/start HTTP/1.1
Content-type: application/json

{
   "jobId": "string",
   "sourceUrl": "string",
   "sourceUrlType": "string"
}
```

## URI Request Parameters
<a name="API_StartDeployment_RequestParameters"></a>

The request uses the following URI parameters.

 ** [appId](#API_StartDeployment_RequestSyntax) **   <a name="amplify-StartDeployment-request-uri-appId"></a>
The unique ID for an Amplify app.   
Length Constraints: Minimum length of 1. Maximum length of 20.  
Pattern: `d[a-z0-9]+`   
Required: Yes

 ** [branchName](#API_StartDeployment_RequestSyntax) **   <a name="amplify-StartDeployment-request-uri-branchName"></a>
The name of the branch to use for the deployment job.   
Length Constraints: Minimum length of 1. Maximum length of 255.  
Pattern: `(?s).+`   
Required: Yes

## Request Body
<a name="API_StartDeployment_RequestBody"></a>

The request accepts the following data in JSON format.

 ** [jobId](#API_StartDeployment_RequestSyntax) **   <a name="amplify-StartDeployment-request-jobId"></a>
The job ID for this deployment that is generated by the `CreateDeployment` request.   
Type: String  
Length Constraints: Maximum length of 255.  
Pattern: `[0-9]+`   
Required: No

 ** [sourceUrl](#API_StartDeployment_RequestSyntax) **   <a name="amplify-StartDeployment-request-sourceUrl"></a>
The source URL for the deployment that is used when calling `StartDeployment` without `CreateDeployment`. The source URL can be either an HTTP GET URL that is publicly accessible and downloads a single .zip file, or an Amazon S3 bucket and prefix.  
Type: String  
Length Constraints: Maximum length of 3000.  
Pattern: `^(s3|https|http)://.*`   
Required: No

 ** [sourceUrlType](#API_StartDeployment_RequestSyntax) **   <a name="amplify-StartDeployment-request-sourceUrlType"></a>
The type of source specified by the `sourceURL`. If the value is `ZIP`, the source is a .zip file. If the value is `BUCKET_PREFIX`, the source is an Amazon S3 bucket and prefix. If no value is specified, the default is `ZIP`.  
Type: String  
Valid Values: `ZIP | BUCKET_PREFIX`   
Required: No

## Response Syntax
<a name="API_StartDeployment_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "jobSummary": { 
      "commitId": "string",
      "commitMessage": "string",
      "commitTime": number,
      "endTime": number,
      "jobArn": "string",
      "jobId": "string",
      "jobType": "string",
      "sourceUrl": "string",
      "sourceUrlType": "string",
      "startTime": number,
      "status": "string"
   }
}
```

## Response Elements
<a name="API_StartDeployment_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [jobSummary](#API_StartDeployment_ResponseSyntax) **   <a name="amplify-StartDeployment-response-jobSummary"></a>
The summary for the job.   
Type: [JobSummary](API_JobSummary.md) object

## Errors
<a name="API_StartDeployment_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** BadRequestException **   
A request contains unexpected data.   
HTTP Status Code: 400

 ** 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
<a name="API_StartDeployment_SeeAlso"></a>

For more information about using this API in one of the language-specific AWS SDKs, see the following:
+  [AWS Command Line Interface V2](https://docs.aws.amazon.com/goto/cli2/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for Python](https://docs.aws.amazon.com/goto/boto3/amplify-2017-07-25/StartDeployment) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/amplify-2017-07-25/StartDeployment) 