---
title: "Changes to Upload custom plugin schema"
method: POST
path: "/v2/control-planes/{controlPlaneId}/core-entities/plugin-schemas"
---

# Changes to Upload custom plugin schema

`POST /v2/control-planes/{controlPlaneId}/core-entities/plugin-schemas`

> Every recorded change to this endpoint, newest first.

## Timeline

Changed in 4 of 52 revisions.

- **2025-08-22** `96118a9cd7f4` — 3 breaking
- **2025-06-19** `60ce7598bbd0` — 6 breaking, 19 warning, 12 info
- **2025-02-10** `d833d4dbb1fa` — 1 warning
- **2024-11-11** `08ead66e9ebb` — 1 breaking, 2 warning, 1 info

## Changes

- **2025-08-22** `96118a9cd7f4` — 3 breaking
  - the response property `item` became nullable for the status `201`
  - the response property `item/lua_schema` became nullable for the status `201`
  - the response property `item/name` became nullable for the status `201`
- **2025-06-19** `60ce7598bbd0` — 6 breaking, 19 warning, 12 info
  - the response's body type/format changed from `object`/`` to ``/`` for status `401`
  - media type `application/problem+json` was changed to a more general media type `application/json` for the response status `400`
  - media type `application/problem+json` was changed to a more general media type `application/json` for the response status `401`
  - media type `application/problem+json` was changed to a more general media type `application/json` for the response status `403`
  - media type `application/problem+json` was changed to a more general media type `application/json` for the response status `409`
  - removed the required property `allOf[subschema #2]/invalid_parameters` from the response with the `400` status
  - removed the optional property `allOf[subschema #2]/detail` from the response with the `401` status
  - removed the optional property `allOf[subschema #2]/detail` from the response with the `403` status
  - removed the optional property `allOf[subschema #2]/detail` from the response with the `409` status
  - removed the optional property `allOf[subschema #2]/instance` from the response with the `401` status
  - removed the optional property `allOf[subschema #2]/instance` from the response with the `403` status
  - removed the optional property `allOf[subschema #2]/instance` from the response with the `409` status
  - removed the optional property `allOf[subschema #2]/status` from the response with the `401` status
  - removed the optional property `allOf[subschema #2]/status` from the response with the `403` status
  - removed the optional property `allOf[subschema #2]/status` from the response with the `409` status
  - removed the optional property `allOf[subschema #2]/title` from the response with the `401` status
  - removed the optional property `allOf[subschema #2]/title` from the response with the `403` status
  - removed the optional property `allOf[subschema #2]/title` from the response with the `409` status
  - removed the optional property `allOf[subschema #2]/type` from the response with the `401` status
  - removed the optional property `allOf[subschema #2]/type` from the response with the `403` status
  - removed the optional property `allOf[subschema #2]/type` from the response with the `409` status
  - removed the optional property `detail` from the response with the `401` status
  - removed the optional property `instance` from the response with the `401` status
  - removed the optional property `status` from the response with the `401` status
  - removed the optional property `title` from the response with the `401` status
  - added `#/components/schemas/KonnectCPLegacyBaseError` to the response body `allOf` list for the response status `400`
  - added `#/components/schemas/KonnectCPLegacyBaseError` to the response body `allOf` list for the response status `401`
  - added `#/components/schemas/KonnectCPLegacyBaseError` to the response body `allOf` list for the response status `403`
  - added `#/components/schemas/KonnectCPLegacyBaseError` to the response body `allOf` list for the response status `409`
  - removed `#/components/schemas/BaseError` from the response body `allOf` list for the response status `400`
  - removed `#/components/schemas/BaseError` from the response body `allOf` list for the response status `401`
  - removed `#/components/schemas/BaseError` from the response body `allOf` list for the response status `403`
  - removed `#/components/schemas/BaseError` from the response body `allOf` list for the response status `409`
  - added the optional property `allOf[subschema #2]/message` to the response with the `400` status
  - added the optional property `allOf[subschema #2]/message` to the response with the `401` status
  - added the optional property `allOf[subschema #2]/message` to the response with the `403` status
  - added the optional property `allOf[subschema #2]/message` to the response with the `409` status
- **2025-02-10** `d833d4dbb1fa` — 1 warning
  - added the new `missing_reference` enum value to the `allOf[subschema #2]/invalid_parameters/items/oneOf[#/components/schemas/InvalidParameterStandard]/rule` response property for the response status `400`
- **2024-11-11** `08ead66e9ebb` — 1 breaking, 2 warning, 1 info
  - added `#/components/schemas/InvalidParameterMaximumLength` to the `allOf[subschema #2]/invalid_parameters/items/` response property `oneOf` list for the response status `400`
  - added the new `min` enum value to the `allOf[subschema #2]/invalid_parameters/items/oneOf[#/components/schemas/InvalidParameterMinimumLength]/rule` response property for the response status `400`
  - added the new `min_items` enum value to the `allOf[subschema #2]/invalid_parameters/items/oneOf[#/components/schemas/InvalidParameterMinimumLength]/rule` response property for the response status `400`
  - removed the `max_length` enum value from the `allOf[subschema #2]/invalid_parameters/items/oneOf[#/components/schemas/InvalidParameterStandard]/rule` response property for the response status `400`

---

[Operation](https://skmtc.dev/kong/apis/konnect-api/docs/v2/control-planes/:controlPlaneId/core-entities/plugin-schemas/post.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/plugin-schemas/post)
