After further investigation and spike, the selected solution is more powerful than expected on the short term answer.
The idea is to implement a PATCH method on a resource api/:id/definition that let user update/add/remove value using the JSON path.
By default, the behavior is to update the value.
Main advantage of this solution is that we can also update/add/remove value from abstract components of the API (policies/endpoints/resources…). Users just need to know the json path since it doesn’t rely on a model, so it would work also for their custom policies for example.
On the other hand, it brings a lot of capabilities to users and we need to prevent critical information updates (like API’s ID)
:rainbow: Feature
As a devops, I want to update only specific info on my API in order to avoid mistake by adding full API Defintion.
Based on spike - https://github.com/gravitee-io/issues/issues/7417
:sunrise_over_mountains: Additional information
After further investigation and spike, the selected solution is more powerful than expected on the short term answer. The idea is to implement a PATCH method on a resource api/:id/definition that let user update/add/remove value using the JSON path.
By default, the behavior is to update the value.
Main advantage of this solution is that we can also update/add/remove value from abstract components of the API (policies/endpoints/resources…). Users just need to know the json path since it doesn’t rely on a model, so it would work also for their custom policies for example.
On the other hand, it brings a lot of capabilities to users and we need to prevent critical information updates (like API’s ID)
:link: Dependencies
N/a
:camera: Mockups
N/a
:books: Documentation required
https://graviteedocs.blob.core.windows.net/7443-patch-import/apim/3.x/apim_publisherguide_partial_update_apis.html
:superhero: Acceptance criteria
:warning: Potential impacts
Which other features may be impacted by this fix. This could be populated after fix
What are the impacted versions?
:heavy_check_mark: Definition of Done
For each User Story everything on the list must be considered, select only what was required
:rocket: