CreateReplicationSubnetGroup - AWS Database Migration Service


Creates a replication subnet group given a list of the subnet IDs in a VPC.

The VPC needs to have at least one subnet in at least two availability zones in the AWS Region, otherwise the service will throw a ReplicationSubnetGroupDoesNotCoverEnoughAZs exception.

If a replication subnet group exists in your AWS account, the CreateReplicationSubnetGroup action returns the following error message: The Replication Subnet Group already exists. In this case, delete the existing replication subnet group. To do so, use the DeleteReplicationSubnetGroup action. Optionally, choose Subnet groups in the AWS DMS console, then choose your subnet group. Next, choose Delete from Actions.

Request Syntax

{ "ReplicationSubnetGroupDescription": "string", "ReplicationSubnetGroupIdentifier": "string", "SubnetIds": [ "string" ], "Tags": [ { "Key": "string", "ResourceArn": "string", "Value": "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 description for the subnet group.

Type: String

Required: Yes


The name for the replication subnet group. This value is stored as a lowercase string.

Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, or hyphens. Must not be "default".

Example: mySubnetgroup

Type: String

Required: Yes


Two or more subnet IDs to be assigned to the subnet group.

Type: Array of strings

Required: Yes


One or more tags to be assigned to the subnet group.

Type: Array of Tag objects

Required: No

Response Syntax

{ "ReplicationSubnetGroup": { "ReplicationSubnetGroupDescription": "string", "ReplicationSubnetGroupIdentifier": "string", "SubnetGroupStatus": "string", "Subnets": [ { "SubnetAvailabilityZone": { "Name": "string" }, "SubnetIdentifier": "string", "SubnetStatus": "string" } ], "SupportedNetworkTypes": [ "string" ], "VpcId": "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.


The replication subnet group that was created.

Type: ReplicationSubnetGroup object


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


AWS DMS was denied access to the endpoint. Check that the role is correctly configured.

HTTP Status Code: 400


The subnet provided isn't valid.

HTTP Status Code: 400


The replication subnet group does not cover enough Availability Zones (AZs). Edit the replication subnet group and add more AZs.

HTTP Status Code: 400


The resource you are attempting to create already exists.

HTTP Status Code: 400


The resource could not be found.

HTTP Status Code: 400


The quota for this resource quota has been exceeded.

HTTP Status Code: 400



This example illustrates one usage of CreateReplicationSubnetGroup.

Sample Request

POST / HTTP/1.1 Host: dms.<region>.<domain> x-amz-Date: <Date> Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=contenttype;date;host;user-agent;x-amz-date;x-amz-target;x-amzn-requestid,Signature=<Signature> User-Agent: <UserAgentString> Content-Type: application/x-amz-json-1.1 Content-Length: <PayloadSizeBytes> Connection: Keep-Alive X-Amz-Target: AmazonDMSv20160101.CreateReplicationSubnetGroup { "ReplicationSubnetGroupIdentifier":"test-subnet-group", "ReplicationSubnetGroupDescription":"dms testing", "SubnetIds":[ "subnet-f6dd91af", "subnet-3605751d", "subnet-c2daefb5" ], "Tags":[ { "Key":"", "Value":"" } ] }

Sample Response

HTTP/1.1 200 OK x-amzn-RequestId: <RequestId> Content-Type: application/x-amz-json-1.1 Content-Length: <PayloadSizeBytes> Date: <Date> { "ReplicationSubnetGroup":{ "ReplicationSubnetGroupDescription":"dms testing", "Subnets":[ { "SubnetStatus":"Active", "SubnetIdentifier":"subnet-f6dd91af", "SubnetAvailabilityZone":{ "Name":"us-east-1d" } }, { "SubnetStatus":"Active", "SubnetIdentifier":"subnet-3605751d", "SubnetAvailabilityZone":{ "Name":"us-east-1b" } }, { "SubnetStatus":"Active", "SubnetIdentifier":"subnet-c2daefb5", "SubnetAvailabilityZone":{ "Name":"us-east-1c" } } ], "VpcId":"vpc-6741a603", "SubnetGroupStatus":"Complete", "ReplicationSubnetGroupIdentifier":"test-subnet-group" } }

See Also

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