Add topics API

What does this MR do and why?

In the UI, there have been some recent enhancements for project topics:

  • Thanks to !71033 (merged), an admin can manage topics.
  • Thanks to !62443 (merged), a user can explore topics.

Let's reflect these UI enhancements on the API as well: This MR adds a new Topics API with the following endpoints:

  • Get topics
  • Get topic
  • Create topic (admin only)
  • Update topic (admin only)

🛠 with ❤ at Siemens /cc @bufferoverflow

How to set up and validate locally

➡ See documentation included in this MR in doc/api/topics.md with the corresponding sample API requests.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

  • I have evaluated the MR acceptance checklist for this MR.
Assignee Loading
Time tracking Loading