---
title: "Replicate KMS Key"
method: POST
path: "/kms-key/{id}/replicate"
tags: ["kms-key"]
---

# Replicate KMS Key

`POST /kms-key/{id}/replicate`

## Request

- Base URL: `https://api-ch-gva-2.exoscale.com/v2`
- URL: `https://api-ch-gva-2.exoscale.com/v2/kms-key/{id}/replicate`
- Auth: none declared
- TypeScript: <https://skmtc.dev/exoscale/apis/exoscale-api/docs/kms-key/:id/replicate/post.ts> (a function with typed inputs; its response is checked against the schema)

Replicate a KMS key to a target zone.

## Path parameters

- `id` string, uuid, required

## Request body

- ReplicateKmsKeyRequest
  - `zone` string, required: The targeted cloud zone where the KMS key should be replicated.

## Response `200`

Key replication target registered

- SuccessResponse
  - `status` 'success' | 'target-registered' | 'already-applied', required

## Other responses

- `400`: ### Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Pending Deletion: The request was rejected because it was performed on a key that is pending deletion. Not on Default: The request was rejected because the operation is not allowed on the default key. Not Multizone: The request was rejected because the KMS key is not a multi-zone key. Conflict: The request was rejected because the key is already replicated in the target zone. Invalid Argument: The request was rejected because the target zone is invalid.

## Changes

- **2026-11-06** `63da6f74c845`: 7 warning, 1 info
  - removed the optional property `errors` from the response with the `400` status
  - removed the optional property `id` from the response with the `200` status
  - removed the optional property `instance` from the response with the `400` status
  - removed the optional property `message` from the response with the `200` status
  - …4 more
- **2026-03-16** `e05707a7b346`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/exoscale/apis/exoscale-api/changes/kms-key/:id/replicate/post.md)

---

[API](https://skmtc.dev/exoscale/apis/exoscale-api.md) - [All operations](https://skmtc.dev/exoscale/apis/exoscale-api/llms.txt) - [OpenAPI document](https://skmtc.dev/exoscale/apis/exoscale-api/revisions/63da6f74c845?raw)
