---
title: "Changes to Update a Opa plugin"
method: PUT
path: "/v2/control-planes/{controlPlaneId}/core-entities/plugins/{PluginId}#Opa"
---

# Changes to Update a Opa plugin

`PUT /v2/control-planes/{controlPlaneId}/core-entities/plugins/{PluginId}#Opa`

> Every recorded change to this endpoint, newest first.

## Timeline

Changed in 16 of 54 revisions.

- **2026-09-25** `4a02153f2e60` — 2 warning, 2 info
- **2026-06-11** `62c54f1094bb` — 1 breaking, 1 info
- **2026-04-24** `7d6a643707d9` — 2 info
- **2025-10-29** `19e869275e28` — 2 breaking
- **2025-09-16** `f03059016622` — 5 breaking
- **2025-08-22** `96118a9cd7f4` — 2 breaking, 26 info
- **2025-07-22** `2c77aeaee5fb` — 3 breaking, 3 info
- **2025-06-17** `c308b7426a7c` — 2 breaking
- **2025-05-21** `69704304ad5f` — 2 info
- **2025-04-15** `fc6abbc537f3` — 2 breaking, 6 info
- **2025-03-05** `ceb048468954` — 2 breaking, 2 info
- **2025-02-10** `d833d4dbb1fa` — 1 breaking, 1 warning, 8 info
- **2024-12-13** `8aedc289a938` — 1 breaking
- **2024-12-06** `426663331655` — 1 breaking
- **2024-11-11** `08ead66e9ebb` — 4 breaking, 1 warning, 25 info
- **2024-09-11** `be7c36317ba6` — 1 info

## Changes

- **2026-09-25** `4a02153f2e60` — 2 warning, 2 info
  - added the new `ws` enum value to the `allOf[#/components/schemas/OpaPluginConfig]/protocols/items/` response property for the response status `200`
  - added the new `wss` enum value to the `allOf[#/components/schemas/OpaPluginConfig]/protocols/items/` response property for the response status `200`
  - added the new `ws` enum value to the request property `allOf[#/components/schemas/OpaPluginConfig]/protocols/items/`
  - added the new `wss` enum value to the request property `allOf[#/components/schemas/OpaPluginConfig]/protocols/items/`
- **2026-06-11** `62c54f1094bb` — 1 breaking, 1 info
  - the request property `allOf[#/components/schemas/PluginBase]/partials/items/path` became required
  - the response property `allOf[#/components/schemas/PluginBase]/partials/items/path` became required for the status `200`
- **2026-04-24** `7d6a643707d9` — 2 info
  - added the new optional request property `allOf[#/components/schemas/PluginBase]/condition`
  - added the optional property `allOf[#/components/schemas/PluginBase]/condition` to the response with the `200` status
- **2025-10-29** `19e869275e28` — 2 breaking
  - the `allOf[#/components/schemas/OpaPluginConfig]/name` request property type changed from `string` to no type
  - the `allOf[#/components/schemas/OpaPluginConfig]/name` response's property type changed from `string` to no type for status `200`
- **2025-09-16** `f03059016622` — 5 breaking
  - the request property `allOf[#/components/schemas/PluginBase]/partials/items/name` became not nullable
  - the request property `allOf[#/components/schemas/PluginBase]/partials/items/path` became not nullable
  - the `allOf[#/components/schemas/PluginBase]/id` request property's minLength was increased from `0` to `1`
  - the `allOf[#/components/schemas/PluginBase]/name` request property's minLength was increased from `0` to `1`
  - the `allOf[#/components/schemas/PluginBase]/partials/items/id` request property's minLength was increased from `0` to `1`
- **2025-08-22** `96118a9cd7f4` — 2 breaking, 26 info
  - the response property `allOf[#/components/schemas/PluginBase]/partials/items/name` became nullable for the status `200`
  - the response property `allOf[#/components/schemas/PluginBase]/partials/items/path` became nullable for the status `200`
  - the request property `allOf[#/components/schemas/PluginBase]/partials/items/name` became nullable
  - the request property `allOf[#/components/schemas/PluginBase]/partials/items/path` became nullable
  - the `enabled` request property default value `true` was added
  - the `include_body_in_opa_input` request property default value `false` was added
  - the `include_consumer_in_opa_input` request property default value `false` was added
  - the `include_parsed_json_body_in_opa_input` request property default value `false` was added
  - the `include_route_in_opa_input` request property default value `false` was added
  - the `include_service_in_opa_input` request property default value `false` was added
  - the `include_uri_captures_in_opa_input` request property default value `false` was added
  - the `opa_host` request property default value `localhost` was added
  - the `opa_port` request property default value `8181` was added
  - the `opa_protocol` request property default value `http` was added
  - the `protocols` request property default value `grpc, grpcs, http, https` was added
  - the `ssl_verify` request property default value `true` was added
  - the `enabled` response's property default value `true` was added for the status `200`
  - the `include_body_in_opa_input` response's property default value `false` was added for the status `200`
  - the `include_consumer_in_opa_input` response's property default value `false` was added for the status `200`
  - the `include_parsed_json_body_in_opa_input` response's property default value `false` was added for the status `200`
  - the `include_route_in_opa_input` response's property default value `false` was added for the status `200`
  - the `include_service_in_opa_input` response's property default value `false` was added for the status `200`
  - the `include_uri_captures_in_opa_input` response's property default value `false` was added for the status `200`
  - the `opa_host` response's property default value `localhost` was added for the status `200`
  - the `opa_port` response's property default value `8181` was added for the status `200`
  - the `opa_protocol` response's property default value `http` was added for the status `200`
  - the `protocols` response's property default value `grpc, grpcs, http, https` was added for the status `200`
  - the `ssl_verify` response's property default value `true` was added for the status `200`
- **2025-07-22** `2c77aeaee5fb` — 3 breaking, 3 info
  - the request property `allOf[#/components/schemas/OpaPluginConfig]/config` became required
  - the request property `allOf[#/components/schemas/OpaPluginConfig]/config/opa_path` became required
  - the response property `allOf[#/components/schemas/PluginBase]/tags` became nullable for the status `200`
  - the request property `allOf[#/components/schemas/PluginBase]/tags` became nullable
  - the response property `allOf[#/components/schemas/OpaPluginConfig]/config` became required for the status `200`
  - the response property `allOf[#/components/schemas/OpaPluginConfig]/config/opa_path` became required for the status `200`
- **2025-06-17** `c308b7426a7c` — 2 breaking
  - the `allOf[#/components/schemas/OpaPluginConfig]/protocols` request property format changed from no format to `set`
  - the `allOf[#/components/schemas/OpaPluginConfig]/protocols` response's property format changed from no format to `set` for status `200`
- **2025-05-21** `69704304ad5f` — 2 info
  - added the new optional request property `allOf[#/components/schemas/PluginBase]/partials`
  - added the optional property `allOf[#/components/schemas/PluginBase]/partials` to the response with the `200` status
- **2025-04-15** `fc6abbc537f3` — 2 breaking, 6 info
  - the response property `allOf[#/components/schemas/PluginBase]/created_at` became nullable for the status `200`
  - the response property `allOf[#/components/schemas/PluginBase]/updated_at` became nullable for the status `200`
  - the request optional property `allOf[#/components/schemas/PluginBase]/created_at` became not read-only
  - the request optional property `allOf[#/components/schemas/PluginBase]/updated_at` became not read-only
  - the request property `allOf[#/components/schemas/PluginBase]/created_at` became nullable
  - the request property `allOf[#/components/schemas/PluginBase]/updated_at` became nullable
  - the response optional property `allOf[#/components/schemas/PluginBase]/created_at` became not read-only for the status `200`
  - the response optional property `allOf[#/components/schemas/PluginBase]/updated_at` became not read-only for the status `200`
- **2025-03-05** `ceb048468954` — 2 breaking, 2 info
  - the response property `allOf[#/components/schemas/OpaPluginConfig]/route` became nullable for the status `200`
  - the response property `allOf[#/components/schemas/OpaPluginConfig]/service` became nullable for the status `200`
  - the request property `allOf[#/components/schemas/OpaPluginConfig]/route` became nullable
  - the request property `allOf[#/components/schemas/OpaPluginConfig]/service` became nullable
- **2025-02-10** `d833d4dbb1fa` — 1 breaking, 1 warning, 8 info
  - added `#/components/schemas/PluginBase` to the request body `allOf` list
  - removed `#/components/schemas/Plugin` from the request body `allOf` list
  - added the new optional request property `allOf[#/components/schemas/OpaPluginConfig]/protocols`
  - added the new optional request property `allOf[#/components/schemas/OpaPluginConfig]/route`
  - added the new optional request property `allOf[#/components/schemas/OpaPluginConfig]/service`
  - added `#/components/schemas/PluginBase` to the response body `allOf` list for the response status `200`
  - removed `#/components/schemas/Plugin` from the response body `allOf` list for the response status `200`
  - added the optional property `allOf[#/components/schemas/OpaPluginConfig]/protocols` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/OpaPluginConfig]/route` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/OpaPluginConfig]/service` to the response with the `200` status
- **2024-12-13** `8aedc289a938` — 1 breaking
  - request body became required
- **2024-12-06** `426663331655` — 1 breaking
  - the request property `allOf[#/components/schemas/Plugin]/tags` became not nullable
- **2024-11-11** `08ead66e9ebb` — 4 breaking, 1 warning, 25 info
  - added the new required request property `allOf[#/components/schemas/Plugin]/config`
  - added the new required request property `allOf[#/components/schemas/Plugin]/name`
  - the `allOf[#/components/schemas/Plugin]/` request property type changed from no type to `object`
  - the `allOf[#/components/schemas/Plugin]/` response's property type changed from no type to `object` for status `200`
  - removed `#/components/schemas/PluginWithoutParents, subschema #2` from the `allOf[#/components/schemas/Plugin]/` request property `allOf` list
  - added the new optional request property `allOf[#/components/schemas/Plugin]/consumer`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/consumer_group`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/enabled`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/id`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/instance_name`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/ordering`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/protocols`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/route`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/service`
  - added the new optional request property `allOf[#/components/schemas/Plugin]/tags`
  - added the optional property `allOf[#/components/schemas/Plugin]/consumer` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/consumer_group` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/created_at` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/enabled` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/id` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/instance_name` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/ordering` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/protocols` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/route` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/service` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/tags` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/Plugin]/updated_at` to the response with the `200` status
  - removed `#/components/schemas/PluginWithoutParents, subschema #2` from the `allOf[#/components/schemas/Plugin]/` response property `allOf` list for the response status `200`
  - added the required property `allOf[#/components/schemas/Plugin]/config` to the response with the `200` status
  - added the required property `allOf[#/components/schemas/Plugin]/name` to the response with the `200` status
- **2024-09-11** `be7c36317ba6` — 1 info
  - endpoint added

---

[Operation](https://skmtc.dev/kong/apis/konnect-api/docs/v2/control-planes/:controlPlaneId/core-entities/plugins/:PluginId#Opa/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/plugins/:PluginId#Opa/put)
