Page or API call to retrieve Version?

I run a homelab, recently successfully got nextcloud and collabora working. I run release-argus to keep track of whether or not my stuff is up to date. release-argus has a handy feature where it can pull something (page, xml, json whatever) including key protected or pwd protected bits and then I can get a version number from that thing. Many apps like collabora have a handy API or page that provides this without a lot of pain. NextCloud for example has a very handy link (https://selfhosted.nextcloud.domain/status.php) which returns a bunch of JSON including a JSON element called “versionstring”. Does Collabora have a similar thing? API documentation doesn’t seem to have anything about versions in the output. Any hints or thoughts would be appreciated… any page or output that includes the version string in it will do, it doesn’t have to be API.
Any help would be appreciated.

Hello @mstewart14 Welcome to the Collabora Online Forums! :tada:

For Collabora Online, there’s no direct equivalent to Nextcloud’s status.php that provides version information in JSON format via a URL. However, you can try the following methods to obtain the version information:

  1. Collabora Online UI:
    • If you access the Collabora Online instance through a web browser, the version number might be available in the “About” section of the interface. This is sometimes found in the settings or help menu, although it’s not always exposed in an easily accessible way.

  1. Server Logs:

    • Check the server logs for Collabora Online. When the service starts up, it often logs its version information. You can usually find these logs in the Docker container logs or the system logs where Collabora is hosted.
    • For Docker, you can use a command like docker logs <container_id> to view the logs.
  2. Configuration Files:

    • Inspect the configuration files or Docker image tags for the version information. For Docker deployments, the image tag often includes the version number. You can list your Docker images with docker images to find this information.
  3. API or Web Interface:

    • While Collabora Online’s API documentation might not include a version endpoint, you can try accessing some of its endpoints to see if version information is included in the response headers or any JSON payloads. For instance, you can use a tool like curl to inspect the headers of the service:
      curl -I https://your-collabora-domain/hosting/discovery
      
    • This may reveal some headers with version information.

Thanks,
Darshan

@mstewart14 i just tried to fetch info by curl on my local setup and i got version info as shown in the image. Maybe this will be a easy way to grab the versioning :wink:

Cheers,
Darshan

So far I’m not finding a way for release-argus to read the header. if I was looking for endpoints like the hosting/discovery endpoint you show here where would I find documentation to find these?

https://sdk.collaboraonline.com/docs/How_to_integrate.html?highlight=hosting%20discovery#server-for-hosting-collabora-online

So… looking around some more I discovered this URL would work for me.
https://selfhosted.collabora.domain/hosting/capabilities
which very nicely returns a bunch of JSON one element of which is productVersion which is what I was looking for. Now if only it matched what release-argus retrieves from github (appears to be the tag value) for CollaboraOnline/richdocumentscode
The value release-argus retrieves is 24.4.702 and the productVersion value is 24.04.7.2

Turns out release-argus has a regex/template mechanism that can help solve this.