Skip to content

Generalize plugin-resources endpoints for more business use-cases #647

Description

@stiliyan-v

User Story:
As an API user,
I want to to be able to store plugin related resources easily
so plugins developers can share data between different users without the need to implement own endpoints

Description:

Updated resource plugins would look like as following:

Method Path operationId Description
POST /plugins-resources/plugins/{plugin}/types/{type} Create a new resource version createPluginResource
DELETE /plugins-resources/plugins/{plugin}/types/{type} Delete all resources of a type deletePluginResourcesByType
GET /plugins-resources/plugins/{plugin}/types/{type}/{id} Get specific version by UUID (with content) getPluginResourceById
GET /plugins-resources/plugins/{plugin}/types/{type}/latest List latest metadata per resource name getLatestPluginResourcesByType
DELETE /plugins-resources/plugins/{plugin}/types/{type}/resources/{name} Delete named resource + all versions deletePluginResourceByName
GET /plugins-resources/plugins/{plugin}/types/{type}/resources/{name}/latest Get latest version with content getLatestPluginResourceByName
GET /plugins-resources/plugins/{plugin}/types/{type}/resources/{name}/versions List all versions metadata (no content) getPluginResourceVersionsByName

Containing data overview:

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "plugin": "engineering-wizard",
  "type": "engineering-wizard_process",
  "name": "default-process",
  "description": "Default process definition for the engineering wizard",
  "contentType": "application/json",
  "version": "1.1.0",
  "dataCompatibilityVersion": "1.0.0",
  "uploadedAt": "2026-06-10T08:00:00Z"
  "content": "{\n  \"process\": \"substation-engineering\",\n  \"steps\": [\"design\", \"validation\", \"approval\"]\n}\n"
}

Metadata

Metadata

Labels

Refinement doneIssue is ready for developmentenhancementNew feature or request

Fields

No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions