Skip to content
Emmanuel Blondel edited this page Feb 12, 2020 · 4 revisions

ocs4R – R Interface to Open Collaboration Services (OCS) REST API

ocs4R intends to provide an interface in R to the Open Collaboration Services (OCS) REST APIs.


If you wish to sponsor ocs4R, do not hesitate to contact me


Table of contents

1. Overview
2. Package status
3. Credits
4. User guide
   4.1 Installation
   4.2 'OCS' R manager
5. Issue reporting

1. Overview and vision


ocs4R provides a R interface to the Open Collaboration Services (OCS) REST APIs. ocs4R includes support for the below APIs:

  • OCS Webdav API
  • OCS Share API
  • OCS User Provisioning API

ocs4R constitutes the generic R client to access to OCS-compliant cloud platforms such as ownCloud and Nextcloud, either directly using ocs4R or through product-specific ocs4R wrappers such as ownCloud4R and nextCloud4R

2. Development status


ocs4R has been started on 2019-11-06 and is under active development, with a plan to release ASAP a first version in CRAN.

3. Credits


(c) 2019, Emmanuel Blondel

Package distributed under MIT license.

If you use ocs4R, i would be very grateful if you can add a citation in your published work. By citing ocs4R, beyond acknowledging the work, you contribute to make it more visible and contribute to its growing and sustainability.

You can get the preferred citation by using the ocs4R Document Object Identifier (DOI): [![DOI]DOI

4. User guide


4.1 How to install ocs4R in R

The development version can be installed from GitHub

install.packages("devtools")

Once the devtools package loaded, you can use the install_github to install ocs4R. By default, package will be installed from master which is the current version in development (likely to be unstable).

require("devtools")
install_github("eblondel/ocs4R")

4.2 'OCS' R Manager

In order to use an OCS-compliant software from R, you need to create an interface in R to the OCS software of your choice. This is done with the class ocsManager, as follows:

OCS <- ocsManager$new(
   url = "http://localhost:8080", 
   user = "<username>", 
   pwd = "<password>",
   logger = "INFO"
)

You can define the level of logger: "INFO" to get ocs4R logs, "DEBUG" for all internal logs (such as as Curl details).

5. Issue reporting


Issues can be reported at https://github.com/eblondel/ocs4R/issues