| Creating a release note or a change from outside the wiki – a script, a CI job, or an agent producing release notes automatically – currently means using the generic XWiki REST API and reproducing the application's internal rules by hand: the short version page name, the Entry### numbering, and the pair of objects every change page must carry. Expose the Java API of the application over REST so that a correct release note or change can be created in a single call:
- {{GET /wikis/ {wikiName}/releasenotes[?product=]}} – list the release notes.
* {{POST /wikis/{wikiName} /releasenotes}} – create one; 409 with the existing page reference when it already exists.
- {{POST /wikis/ {wikiName}/releasenotes/{product}/{version}/changes}} – add a change to it.
* {{GET /wikis/{wikiName} /releasenotes/ {product} / {version} /changes}} – list its changes, with the usual audience/category/importance/screenshot filters and paging, and an aggregated switch to include the milestones and release candidates the way the release note itself does.
Only creating and listing are covered. Updating a note, marking it released, and editing or deleting a change are deliberately left to the generic XWiki REST API. The endpoints ship in a new application-releasenotes-rest module, which the application XAR depends on, so installing the Release Notes Application gives you the endpoints. |