Use the S3 protocol with dotmesh
In addition to the RPC API we provide a limited S3-compatible API. This is available at
/s3 and the supported commands are explained below.
Our version of the S3 api uses basic authentication, which should be your username and password and can be supplied to curl using
Bucket naming convention
The convention for dot names -> s3 bucket naming is
<namespace>:<name>@<branch> - if using master branch, you can just use
<namespace>:<name>. For example, the URL to Alice’s dot
apples would be
Putting objects is used for uploading or changing files. The following example creates a dot, creates a file then puts the file into the dot using s3:
dm init alice/apples echo "hello, world" > hello-world.txt curl -T hello-world.txt -u alice:notmypassword 127.0.0.1:32607/s3/alice:apples/hello-world.txt
This will result in a commit indicating the filename created or updated:
$ dm log commit e5041af1-6f5a-4390-6689-5148d336bce4 author: date: 1534429919723622772 saving file put by s3 api hello-world.txt
And the file will be written with the filename
hello-world.txt which was supplied as the key.