Task Description
Describes how to call rest api using various methods and services when running Pydio Cells Home in a docker container. Note that this was originally an issue, but I discovered as I was writing everything up that there is a new version of the Pydio Cells Rest API on Swagger Hub that worked.
Cells Version
Taken directly from the logs:
$ docker compose logs
pydio-cells | ### Pydio Cells Home Edition
pydio-cells | Version: 4.4.6
pydio-cells | Built: 27 Sep 24 14:07 +0000
pydio-cells | Git commit: 1d70c6afd6c5c35aa6ff54c5093435e9492f828e
pydio-cells | OS/Arch: linux/amd64
pydio-cells | Go version: go1.21.13
pydio-cells | Binary:
pydio-cells | Package: Pydio Cells Home Edition
pydio-cells | Version: 4.4.6
pydio-cells | BuildTime: 27 Sep 24 14:07 +0000
pydio-cells | Git Commit: 1d70c6afd6c5c35aa6ff54c5093435e9492f828e
pydio-cells | Go Version: go1.21.13
pydio-cells | OS/arch: linux/amd64
Server and Host Details
Operating System Linux 6.1.0-22-amd64 x86_64
Docker version 27.0.3, build 7d4bcd8
Docker Compose version v2.28.1
Steps to Reproduce
- Create personal access token
Access command line and issue the following command:
docker exec pydio-cells cells admin user token -u admin -a 28d
Securely store the PAT.
-
Review and confirm api references
-
Create a flow in Node-Red that uses the GET method
3.1. Add Inject node to launch flow
3.2. Add a Change node to set method to GET and url to https://<>/a/config/datasources
3.3. Add a HTTP Request node that sets the method, url, and body using parameters, add the authentication token, and set the appropriate headers
3.4. Add some Debug nodes to confirm the output then execute the flow
-
Create a flow in Node-Red that uses the POST method with an empty body
4.1. Add Inject node to launch flow
4.2. Add a Change node to set method to POST, url to https://<>/a/users, and body to {}
4.3. Connect the Inject and Change nodes to the previous parameterised request node and execute
-
Create a flow in Node-Red that uses the POST method with body parameters
5.1. Add Inject node to launch flow
5.2. Add a Change node to set method to POST,url to url to https://<>/a/tree/stats, and body to {“NodePaths”:[“/”],“AllMetaProviders”:true,“Versions”:true,“Offset”:0,“Limit”:0}
5.3. Connect the Inject and Change nodes to the previous parameterised request node and execute