---
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 2 of 75 revisions.

- **2025-08-22** `3c0154b2053a` — 3 breaking
- **2025-06-27** `0aead68de7b0` — 6 breaking, 19 warning, 12 info

## Changes

- **2025-08-22** `3c0154b2053a` — 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-27** `0aead68de7b0` — 6 breaking, 19 warning, 12 info
  - the response's body type changed from `object` to no type 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

---

[Operation](https://skmtc.dev/kong/apis/konnect-api-go-sdk/docs/v2/control-planes/:controlPlaneId/core-entities/plugin-schemas/post.md) · [API](https://skmtc.dev/kong/apis/konnect-api-go-sdk.md) · [Page](https://skmtc.dev/kong/apis/konnect-api-go-sdk/changes/v2/control-planes/:controlPlaneId/core-entities/plugin-schemas/post)
