StartReplication - AWS Database Migration Service


For a given AWS DMS Serverless replication configuration, AWS DMS connects to the source endpoint and collects the metadata to analyze the replication workload. Using this metadata, AWS DMS then computes and provisions the required capacity and starts replicating to the target endpoint using the server resources that AWS DMS has provisioned for the AWS DMS Serverless replication.

Request Syntax

{ "CdcStartPosition": "string", "CdcStartTime": number, "CdcStopPosition": "string", "ReplicationConfigArn": "string", "StartReplicationType": "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.


Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.

The value can be in date, checkpoint, or LSN/SCN format.

Type: String

Required: No


Indicates the start time for a change data capture (CDC) operation. Use either CdcStartTime or CdcStartPosition to specify when you want a CDC operation to start. Specifying both values results in an error.

Type: Timestamp

Required: No


Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

Type: String

Required: No


The Amazon Resource Name of the replication for which to start replication.

Type: String

Required: Yes


The replication type.

When the replication type is full-load or full-load-and-cdc, the only valid value for the first run of the replication is start-replication. This option will start the replication.

You can also use ReloadTables to reload specific tables that failed during replication instead of restarting the replication.

The resume-processing option isn't applicable for a full-load replication, because you can't resume partially loaded tables during the full load phase.

For a full-load-and-cdc replication, AWS DMS migrates table data, and then applies data changes that occur on the source. To load all the tables again, and start capturing source changes, use reload-target. Otherwise use resume-processing, to replicate the changes from the last stop position.

Type: String

Required: Yes

Response Syntax

{ "Replication": { "CdcStartPosition": "string", "CdcStartTime": number, "CdcStopPosition": "string", "FailureMessages": [ "string" ], "ProvisionData": { "DateNewProvisioningDataAvailable": number, "DateProvisioned": number, "IsNewProvisioningAvailable": boolean, "ProvisionedCapacityUnits": number, "ProvisionState": "string", "ReasonForNewProvisioningData": "string" }, "RecoveryCheckpoint": "string", "ReplicationConfigArn": "string", "ReplicationConfigIdentifier": "string", "ReplicationCreateTime": number, "ReplicationDeprovisionTime": number, "ReplicationLastStopTime": number, "ReplicationStats": { "ElapsedTimeMillis": number, "FreshStartDate": number, "FullLoadFinishDate": number, "FullLoadProgressPercent": number, "FullLoadStartDate": number, "StartDate": number, "StopDate": number, "TablesErrored": number, "TablesLoaded": number, "TablesLoading": number, "TablesQueued": number }, "ReplicationType": "string", "ReplicationUpdateTime": number, "SourceEndpointArn": "string", "StartReplicationType": "string", "Status": "string", "StopReason": "string", "TargetEndpointArn": "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 that AWS DMS started.

Type: Replication 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 resource is in a state that prevents it from being used for database migration.

HTTP Status Code: 400


The resource could not be found.

HTTP Status Code: 400



This example illustrates one usage of StartReplication.

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.StartReplication { "ReplicationConfigArn":"arn:aws:dms:us-east 1:123456789012:replication-config:RALPZGYI3IUSJCBKKIRBEURKDY", "StartReplicationTaskType":"reload-target", "CdcStartTime":null }

Sample Response

HTTP/1.1 200 OK x-amzn-RequestId: <RequestId> Content-Type: application/x-amz-json-1.1 Content-Length: <PayloadSizeBytes> Date: <Date> { "Replication": { { "SourceEndpointArn": "arn:aws:dms:us-west- 2:123456789012:endpoint:5OFSBLSONLVVSYQAY7IBDSMCEHD6NU4FJQ5L7XY", "Status": "created", "ReplicationConfigIdentifier": "serverless-kms-0", "ReplicationStats": { "TablesLoading": 0, "TablesQueued": 0, "TablesErrored": 0, "FullLoadProgressPercent": 0, "TablesLoaded": 0, "ElapsedTimeMillis": 0 }, "ReplicationCreateTime": 1679665872.025, "ReplicationConfigArn": "arn:aws:dms:us-east 1:123456789012:replication-config:RALPZGYI3IUSJCBKKIRBEURKDY", "ReplicationType": "full-load-and-cdc", "ReplicationUpdateTime": 1679665872.025, "ProvisionData": { "IsNewProvisioningAvailable": false, "ProvisionedCapacityUnits": 0 }, "TargetEndpointArn": "arn:aws:dms:us-west- 2:123456789012:endpoint:WTMG7G6X5TQ5GOQG46WGEBNMPDSH47J5JZHXUFI", "FailureMessages": [] } } }

See Also

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