Until these endpoints exist, a change request can be created from outside the wiki by posting the editor's form to the application's own resource handler. Verified on xwiki.org on 2026-10-18 (a draft change request was created, then deleted):
Log in with a cookie session: POST j_username, j_password and the login page's form_token to /bin/loginsubmit/XWiki/XWikiLogin. HTTP Basic auth does not work here: outside /rest it resolves to Guest.
Read the hidden fields of the /bin/edit/<Space>/<Page>?editor=wiki form.
POST them, with the new content, docReference=<wiki>:<Space>.<Page>, crTitle, crDescription and crDraft=1 for a draft, to /xwiki/changerequest/<wiki>/create. The 302's Location is the new change request.
Since this goes through CreateChangeRequestHandler, nothing is skipped: the saving checks, the copy of view rights and approvers, the ready-for-merging status and the creation events all run. That is also why writing the change request pages with the generic page REST API is not an alternative: it would bypass all of these and depend on the internal storage format.
The workaround is fragile, though: it depends on the editor form's fields and on scraping HTML, and it needs a password-based session where a REST endpoint could take a token. So this issue is still needed.
PS: This post was co-written with Claude Code.
This message was sent by Atlassian Jira (v9.3.0#930000-sha1:287aeb6)
If image attachments aren't displayed, see this article.