PUT/v2/databases/{database_cluster_uuid}/online-migration

Start an online database migration

Submits an online migration that connects a database cluster to an existing source cluster and replicates its contents. Supply the source connection details in source; online migration is available for MySQL, PostgreSQL, Caching, and Valkey clusters. If the source database continues to receive writes, migration can continue for up to two weeks unless you stop it manually.

1 parameter · 3 body fields
database_cluster_uuidstringrequired
The UUID of the target database cluster for the online migration.

Source connection details and optional migration settings.

sourceobjectrequired
Connection details for the source database, including its host, port, default database name, username, and password.
disable_sslbooleanoptional
Enables SSL encryption when connecting to the source database.
ignore_dbsarray<string>optional
List of databases that should be ignored during migration.
Default:[]

6 status codes
200Returns a migration object containing its ID, current status, and creation time in ISO 8601 format.
idstringoptional
The ID of the most recent migration.
statusstringoptional
The current status of the migration.
Allowed:runningsyncingcancelederrordone
created_atstringoptional
The time the migration was initiated, in ISO 8601 format.
401Returned when authentication credentials are invalid.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.
404Returned when the requested resource is not found.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.
429Returned when the API rate limit has been exceeded.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.
500Returned when a server error occurs.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.
defaultReturned when an unexpected error occurs.
idstringrequired
A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would be "not_found."
messagestringrequired
A message providing additional information about the error, including details to help resolve it when possible.
request_idstringoptional
Optionally, some endpoints may include a request ID that should be provided when reporting bugs or opening support tickets to help identify the issue.

Error handling

A 401 is returned when authentication credentials are invalid. A 404 is returned when the requested resource is not found. A 429 is returned when the API rate limit has been exceeded, and a 500 indicates a server error. The database_cluster_uuid path parameter identifies the target cluster. The source body field is required; ignore_dbs defaults to an empty array when omitted.