Content
integration_openproject (Nextcloud app): are its OCS routes a public API for other Nextcloud apps?
Added by Khaled Cherif 7 days ago
Hello OpenProject team,
I maintain mcp_connector, a Nextcloud ExApp in the Nextcloud App Store that lets an assistant read Nextcloud data strictly on behalf of the signed-in user (OAuth 2.1 per the MCP authorization spec). I would like to extend it to OpenProject data, and integration_openproject already solves the hard part: its appinfo/routes.php exposes 17 OCS routes (counted at tag v3.1.1) under openProjectAPI#, running with the signed-in user's own OpenProject connection.
Going through your app instead of opening a second OAuth client of my own means no additional secret in my container, no second consent screen for the user, and no new outbound host. Technically it already works, verified on a pinned setup (Nextcloud 33.0.7, integration_openproject 3.1.1, OpenProject 17.7.2) with AppAPI impersonation: permissions are the user's own (a work package in a private project is visible to the member and invisible to another account, same call), the oauth2 setup refreshes expired user tokens by itself, and validatePreRequestConditions() correctly returns 401 for accounts that never connected OpenProject.
My question is about intent, not mechanics: are these OCS routes meant as an interface that other Nextcloud apps may call, or are they internal plumbing for your own front end that may change without notice? Concretely, it would help me (and likely other integrators) to know one of the following: a statement on the stability of the existing routes, a short description of your API lifecycle for this app, or a channel where upcoming breaking changes are announced.
If the routes are fair game: I noticed there is no route to read a single work package by id, none for comments/activities, and none for "work assigned to me". Would read-only additions in that direction be welcome as a contribution? I would be glad to prepare a PR.
Background discussion with the Nextcloud community, where I was advised to ask you directly: https://help.nextcloud.com/t/integration-openproject-are-the-ocs-routes-a-public-api-for-other-apps/248660
Thank you,
Khaled (mcp_connector)