Non-browser editing API?


Forgive me if this is a silly question, but does Collabora Online (or Nextcloud Office, which I think is the same thing rebranded?) provide an API which non-browser clients could use to edit a spreadsheet?

I have seen:

  • Documentation on using Python scripts (link removed - I’m limited to 2 links :upside_down_face: ), but it seems these have to be set up on the server in advance and then invoked from Javascript, which is not what I’m after.
  • The WSD protocol mostly seems lower level than what I want - maybe the UNO command support would work, but I don’t know how to authenticate to the server and find the URL for a websocket connection.
  • This FAQ on UNO commands seems to assume you’re in a browser using Javascript.

I’m hoping for something roughly equivalent to Google’s Sheets API, which lets programmatic access participate in live collaboration. I know I could download the file from Nextcloud, modify it locally and re-upload it, but that won’t play nicely with simultaneous manual editing.

I think the answer is that what I want doesn’t exist, but I’d love to hear that it does. :slight_smile: Thanks!

We have the remote / websocket UNO API access that just landed in the last release - but this is currently disabled for all but the first joiner in the document; since the APIs are under-used in collaborative apps so far.

So - what API would you like ? =) It would be nice to know what operations you would want to use, is it primarily about appending data records to sheets or ?


1 Like

Thanks, that’s interesting. Is the new API you mentioned documented somewhere? It’s quite possible I’ve already seen it, but I’m somewhat confused by all the different APIs.

What I’d be interested in is primarily adding data to cells in a sheet, but also updating already-filled cells, and some simple formatting - things like making a cell bold, changing the text and background colours. Reading cell values might be useful as well, and even having a way to know when a cell I’ve read has subsequently been changed.