
The Open Collaboration Services (OCS) is an open and vendor-independent
REST
REST (Representational State Transfer) is a software architectural style that was created to describe the design and guide the development of the architecture for the World Wide Web. REST defines a set of constraints for how the architecture of ...
and
WebDAV
WebDAV (Web Distributed Authoring and Versioning) is a set of extensions to the Hypertext Transfer Protocol (HTTP), which allows user agents to collaboratively author contents ''directly'' in an HTTP web server by providing facilities for conc ...
based API designed to make it easy to connect apps to a content collaboration platform.
The OCS API provides basic file handling features such as file access, sharing, versioning and commenting. It also supports communication (chat, video calls), calendaring, tasks and more.
The OCS API allows for the integration of web communities and web-based services into desktop and mobile applications. It allows the exchange of relevant data from a
social network
A social network is a social structure consisting of a set of social actors (such as individuals or organizations), networks of Dyad (sociology), dyadic ties, and other Social relation, social interactions between actors. The social network per ...
between the site and clients such as other websites and applications or widgets running locally on the user's machine or mobile device. The protocol is designed so that all applications can access multiple services providing OCS APIs.
The initial
API
An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
design was done by
openDesktop.org
Opendesktop.org is a website portal offering personal cloud services such as storage and communication services, as well as public services in form of a store for libre (open source/Creative Commons license, creative commons) content publishing an ...
as part of the Social Desktop, especially as a cross-desktop
backend provider. The API was standardised by
freedesktop.org
freedesktop.org (fd.o), formerly X Desktop Group (XDG), is a project to work on interoperability and shared base technology for free-software desktop environments for the X Window System (X11) and Wayland on Linux and other Unix-like operatin ...
so that third-party providers are able to implement OCS API. Currently,
Nextcloud
Nextcloud is a suite of Client–server model, client-server software for creating and using file hosting services. It can integrate with the Collabora Online and OnlyOffice office suites. It can be hosted in the Cloud computing, cloud or On-pre ...
implements and develops the OCS API, with parts also supported in various other projects and by many third party apps and tools.
Non-KDE environments using the API in the past included the
Maemo
Maemo is a Linux-based software platform originally developed by Nokia, now developed by the Free software movement, community, for smartphones and Internet tablets. The platform comprises both the Maemo operating system and Software development ...
Downloads application store and Apps for
MeeGo
MeeGo is a discontinued Linux distribution hosted by the Linux Foundation, using source code from the operating systems Moblin (produced by Intel) and Maemo (produced by Nokia). MeeGo was primarily targeted at mobile devices and information app ...
.
Modules
The OCS API documentation lists several modules. Here are the key OCS modules:
* User metadata
* Capabilities
* OCS Share
* OCS Sharee
* OCS Status
* OCS Recommendations
* OCS User Preferences
* OCS Translation API
* OCS Text Processing
* OCS Text-To-Image
* OCS Task Processing
* OCS Out-of-office
OCS API Viewer
The OCS API Viewer
is a
Nextcloud
Nextcloud is a suite of Client–server model, client-server software for creating and using file hosting services. It can integrate with the Collabora Online and OnlyOffice office suites. It can be hosted in the Cloud computing, cloud or On-pre ...
app where you can interactively discover APIs and try them out on your own instance from the browser.
For example, if you wanted to update a (file) share, you can go to file_sharing –> shareapi –> update a share and add the file ID. Hit “Send API request” and you can see the response from the server, and how the share was created. On top of that, it shows you code snippets for many different programming languages for executing this request.
References
External links
Official WebsiteOCS API ViewerOpen Collaboration Services tools and libraries
{{Freedesktop.org
Social Desktop
KDE
*
*
Freedesktop.org