CreateDeploymentConfig - AWS CodeDeploy


Creates a deployment configuration.

Request Syntax

{ "computePlatform": "string", "deploymentConfigName": "string", "minimumHealthyHosts": { "type": "string", "value": number }, "trafficRoutingConfig": { "timeBasedCanary": { "canaryInterval": number, "canaryPercentage": number }, "timeBasedLinear": { "linearInterval": number, "linearPercentage": number }, "type": "string" } }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.


The destination platform type for the deployment (Lambda, Server, or ECS).

Type: String

Valid Values: Server | Lambda | ECS

Required: No


The name of the deployment configuration to create.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 100.

Required: Yes


The minimum number of healthy instances that should be available at any time during the deployment. There are two parameters expected in the input: type and value.

The type parameter takes either of the following values:

  • HOST_COUNT: The value parameter represents the minimum number of healthy instances as an absolute value.

  • FLEET_PERCENT: The value parameter represents the minimum number of healthy instances as a percentage of the total number of instances in the deployment. If you specify FLEET_PERCENT, at the start of the deployment, AWS CodeDeploy converts the percentage to the equivalent number of instances and rounds up fractional instances.

The value parameter takes an integer.

For example, to set a minimum of 95% healthy instance, specify a type of FLEET_PERCENT and a value of 95.

Type: MinimumHealthyHosts object

Required: No


The configuration that specifies how the deployment traffic is routed.

Type: TrafficRoutingConfig object

Required: No

Response Syntax

{ "deploymentConfigId": "string" }

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.


A unique deployment configuration ID.

Type: String


For information about the errors that are common to all actions, see Common Errors.


A deployment configuration with the specified name with the user or AWS account already exists.

HTTP Status Code: 400


The deployment configurations limit was exceeded.

HTTP Status Code: 400


The deployment configuration name was not specified.

HTTP Status Code: 400


The computePlatform is invalid. The computePlatform should be Lambda, Server, or ECS.

HTTP Status Code: 400


The deployment configuration name was specified in an invalid format.

HTTP Status Code: 400


The minimum healthy instance value was specified in an invalid format.

HTTP Status Code: 400


The configuration that specifies how traffic is routed during a deployment is invalid.

HTTP Status Code: 400



This example illustrates one usage of CreateDeploymentConfig.

Sample Request

POST / HTTP/1.1 Host: Accept-Encoding: identity Content-Length: 103 X-Amz-Target: CodeDeploy_20141006.CreateDeploymentConfig X-Amz-Date: 20160707T235925Z User-Agent: aws-cli/1.10.6 Python/2.7.9 Windows/7 botocore/1.3.28 Content-Type: application/x-amz-json-1.1 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20160707/us-east-1/codedeploy/aws4_request, SignedHeaders=content-type;host;user-agent;x-amz-date;x-amz-target, Signature=39c3b3042cd2aEXAMPLE { "minimumHealthyHosts": { "type": "HOST_COUNT", "value": 1 }, "deploymentConfigName": "CustomConfig.One" }

Sample Response

HTTP/1.1 200 OK x-amzn-RequestId: 3ea3b855-88d0-11e5-9958-cd5094947bf1 Content-Type: application/x-amz-json-1.1 Content-Length: 61 { "deploymentConfigId": "e0839cbd-af8a-4a6c-921g-9ad0245d3459" }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: