- [HTTP request](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#body.HTTP_TEMPLATE)
- [Path parameters](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#body.PATH_PARAMETERS)
- [Request body](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#body.request_body)
- [Response body](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#body.response_body)
- [Authorization scopes](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#body.aspect)
- [InstancesReencryptRequest](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#InstancesReencryptRequest)
  - [JSON representation](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#InstancesReencryptRequest.SCHEMA_REPRESENTATION)
- [BackupReencryptionConfig](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#BackupReencryptionConfig)
  - [JSON representation](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#BackupReencryptionConfig.SCHEMA_REPRESENTATION)
- [BackupType](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#BackupType)
- [Examples](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#examples)
- [Try it!](https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#try-it)

instances.reencrypt CMEK instance with latest key version.

### HTTP request

`POST https://sqladmin.googleapis.com/v1/projects/{project}/instances/{instance}/reencrypt`

The URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.

### Path parameters

| Parameters ||
|---|---|
| `project` | `string` ID of the project that contains the instance. |
| `instance` | `string` Cloud SQL instance ID. This does not include the project ID. |

### Request body

The request body contains an instance of `https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#InstancesReencryptRequest`.

### Response body

If successful, the response body contains an instance of `https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/operations#Operation`.

### Authorization scopes

Requires one of the following OAuth scopes:

- `https://www.googleapis.com/auth/cloudsql`
- `
  https://www.googleapis.com/auth/cloud-platform`
- `
  https://www.googleapis.com/auth/sqlservice.admin`

For more information, see the [Authentication Overview](https://docs.cloud.google.com/docs/authentication#authorization-gcp).

## InstancesReencryptRequest

Database Instance reencrypt request.

| JSON representation |
|---|
| ``` { "backupReencryptionConfig": { object (`https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#BackupReencryptionConfig`) } } ``` |

| Fields ||
|---|---|
| `backupReencryptionConfig` | ``object (`https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#BackupReencryptionConfig`)`` Configuration specific to backup re-encryption |

## BackupReencryptionConfig

Backup Reencryption Config

| JSON representation |
|---|
| ``` { "backupLimit": integer, "backupType": enum (`https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#BackupType`) } ``` |

| Fields ||
|---|---|
| `backupLimit` | `integer` Backup re-encryption limit |
| `backupType` | ``enum (`https://docs.cloud.google.com/sql/docs/sqlserver/admin-api/rest/v1/instances/reencrypt#BackupType`)`` Type of backups users want to re-encrypt. |

## BackupType

Backup type for re-encryption

| Enums ||
|---|---|
| `BACKUP_TYPE_UNSPECIFIED` | Unknown backup type, will be defaulted to AUTOMATIC backup type |
| `AUTOMATED` | instances.reencrypt automatic backups |
| `ON_DEMAND` | instances.reencrypt on-demand backups |