---
title: "Changes to Upsert a Key"
method: PUT
path: "/v2/control-planes/{controlPlaneId}/core-entities/keys/{KeyId}"
---

# Changes to Upsert a Key

`PUT /v2/control-planes/{controlPlaneId}/core-entities/keys/{KeyId}`

> Every recorded change to this endpoint, newest first.

## Timeline

Changed in 5 of 52 revisions.

- **2025-08-22** `96118a9cd7f4` — 2 breaking, 2 info
- **2025-07-22** `2c77aeaee5fb` — 1 breaking, 1 info
- **2025-04-15** `fc6abbc537f3` — 2 breaking, 8 info
- **2024-12-06** `426663331655` — 1 breaking
- **2024-11-11** `08ead66e9ebb` — 7 breaking, 9 info

## Changes

- **2025-08-22** `96118a9cd7f4` — 2 breaking, 2 info
  - the response property `pem/private_key` became nullable for the status `200`
  - the response property `pem/public_key` became nullable for the status `200`
  - the request property `pem/private_key` became nullable
  - the request property `pem/public_key` became nullable
- **2025-07-22** `2c77aeaee5fb` — 1 breaking, 1 info
  - the response property `tags` became nullable for the status `200`
  - the request property `tags` became nullable
- **2025-04-15** `fc6abbc537f3` — 2 breaking, 8 info
  - the response property `created_at` became nullable for the status `200`
  - the response property `updated_at` became nullable for the status `200`
  - added the new optional request property `x5t`
  - the request optional property `created_at` became not read-only
  - the request optional property `updated_at` became not read-only
  - the request property `created_at` became nullable
  - the request property `updated_at` became nullable
  - added the optional property `x5t` to the response with the `200` status
  - the response optional property `created_at` became not read-only for the status `200`
  - the response optional property `updated_at` became not read-only for the status `200`
- **2024-12-06** `426663331655` — 1 breaking
  - the request property `tags` became not nullable
- **2024-11-11** `08ead66e9ebb` — 7 breaking, 9 info
  - the request property `kid` became required
  - the response property `id` became nullable for the status `200`
  - the response property `jwk` became nullable for the status `200`
  - the response property `name` became nullable for the status `200`
  - the response property `pem` became nullable for the status `200`
  - the response property `set` became nullable for the status `200`
  - the response property `tags` became nullable for the status `200`
  - the request optional property `id` became not read-only
  - the request property `id` became nullable
  - the request property `jwk` became nullable
  - the request property `name` became nullable
  - the request property `pem` became nullable
  - the request property `set` became nullable
  - the request property `tags` became nullable
  - the response optional property `id` became not read-only for the status `200`
  - the response property `kid` became required for the status `200`

---

[Operation](https://skmtc.dev/kong/apis/konnect-api/docs/v2/control-planes/:controlPlaneId/core-entities/keys/:KeyId/put.md) · [API](https://skmtc.dev/kong/apis/konnect-api.md) · [Page](https://skmtc.dev/kong/apis/konnect-api/changes/v2/control-planes/:controlPlaneId/core-entities/keys/:KeyId/put)
