Using the REST API

This guide will show you how to use the bridge your node exposes as a simple API that applications can use to upload, download, delete, and list objects you have stored in the network as well as get status information. For the purposes of brevity for this guide, we are going to assume the following default configuration scheme that is used in the simulation environment and will use curl for the examples.

BridgeHostname = 127.0.0.1
BridgePort = 10089 # live mode default is usually 9089

Note that in order to receive JSON payloads as responses from the API instead of the web interface HTML, you must set the header Accept: application/json. Oh, and protip, you can pipe your command to jq to pretty print the result!

POST /login

First you need to establish an authenticated session. This is done by submitting your passphrase and receiving a Set-Cookie token header. The form parameters are passphrase, oath, and keepalive.

The oath parameter is required is 2FA is enabled and should be a valid TOTP code.

The keepalive parameter is optional and is a human readable time frame to keep the session alive like "6h" or "30d".

curl \                                                                         
--verbose \
--header "Accept: application/json" \
--form "passphrase=Simulation" \
http://127.0.0.1:10089/login | jq
*   Trying 127.0.0.1...
* TCP_NODELAY set
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* Connected to 127.0.0.1 (127.0.0.1) port 10089 (#0)
> POST /login HTTP/1.1
> Host: 127.0.0.1:10089
> User-Agent: curl/7.61.0
> Accept: application/json
> Content-Length: 155
> Content-Type: multipart/form-data; boundary=------------------------abfd4216430e6ee7
> 
} [155 bytes data]
< HTTP/1.1 200 OK
< X-Powered-By: Express
< Access-Control-Allow-Origin: *
< Set-Cookie: token=234ec3b4-27c7-4a0a-aa4a-79a71aaa6ad7; Max-Age=900; Path=/; Expires=Tue, 14 Aug 2018 15:16:53 GMT; HttpOnly
< Vary: Accept
< Content-Type: application/json; charset=utf-8
< Content-Length: 2
< ETag: W/"2-vyGp6PvFo4RvsFtPoIWeCReyIC8"
< Date: Tue, 14 Aug 2018 15:01:53 GMT
< Connection: keep-alive
< 
{ [2 bytes data]
100   157  100     2  100   155      4    372 --:--:-- --:--:-- --:--:--   377
* Connection #0 to host 127.0.0.1 left intact
{}

Note the value of the Set-Cookie header. You'll be including this in every other request.

GET /logout

Invalidates the current session.

curl \                                                                         
--cookie "token=234ec3b4-27c7-4a0a-aa4a-79a71aaa6ad7" \
http://127.0.0.1:10089/logout

GET /

Fetches general status information about the running node.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=234ec3b4-27c7-4a0a-aa4a-79a71aaa6ad7" \
http://127.0.0.1:10089/ | jq     
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1704  100  1704    0     0   554k      0 --:--:-- --:--:-- --:--:--  554k
{
  "peers": [
    [
      "78605de8b6b06fc834801dde47e12415c51efa12",
      {
        "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
        "protocol": "http:",
        "port": "80",
        "xpub": "xpub661MyMwAqRbcF6CTS9KDVWjEuQVDA2KgG2zu3WFAW8gYjb9i1YwzxqmiFB8u81MXMjGWiikQxvmvAfjAEJkKpx5qoGjd3n41rNJPiSQ2MH2",
        "index": 0,
        "agent": "4.0.0",
        "flags": [
          [
            "ALLOCATED",
            1073741824
          ],
          [
            "AVAILABLE",
            1073737728
          ]
        ]
      }
    ],
    [
      "3f9e8519d66ba37f70a4e9fc2ef9d235480de5ab",
      {
        "hostname": "2s2u2o5fmk2lhdclsrfpfo4igzh7nwmpmfbsvucyvepvwehw2sxdyvad.onion",
        "protocol": "http:",
        "port": "80",
        "xpub": "xpub661MyMwAqRbcFdbNJUyfxU8yh9e8LrkML6BKorHReU4KpePVppNZhZbZpYx9NPjGFmy7TZnkmgkZXBeTJcnjjU5Cabt8kekPZ8LaWoCEwYo",
        "index": 0,
        "agent": "4.0.0",
        "flags": [
          [
            "ALLOCATED",
            1073741824
          ],
          [
            "AVAILABLE",
            1073737728
          ]
        ]
      }
    ],
    [
      "b5141334673315c5872f702eb9f6c186c15ee722",
      {
        "hostname": "fjk3xswbpeezfbtwv76rue5a644hp3vsbjnrbb6cczmo3anv7qsq2vyd.onion",
        "protocol": "http:",
        "port": "80",
        "xpub": "xpub661MyMwAqRbcGbJkW9PbKFhUbooSt6ttJMRn8QmaUMpAZVC2K77opg6C2D7UX2USRedH5SNLdsTA1k33vKa37ea1ZgFPyuhokjynjrwrjoT",
        "index": 0,
        "agent": "4.0.0",
        "flags": [
          [
            "ALLOCATED",
            1073741824
          ],
          [
            "AVAILABLE",
            1073737728
          ]
        ]
      }
    ]
  ],
  "providing": {
    "allocated": 1073741824,
    "available": 1073737728,
    "availableHuman": "1024MB",
    "allocatedHuman": "1GB"
  },
  "identity": "7d7e1bf0083d5dc74983e263a2a7cebaf898db65",
  "contact": {
    "hostname": "zeatlf6whhi2ngtrtjhhvxpexqqngxjg37ih6maaabzepeohktozm4yd.onion",
    "protocol": "http:",
    "port": "80",
    "xpub": "xpub661MyMwAqRbcG8XndBgKGNXYjpoqTNU7QjHsdCsZSBZADut5G2kZzKygxJYbQ8dfp5EhZhHZ7YDXNsb9wJvkRDte6EbH2dmoemtWMjNNAj5",
    "index": 0,
    "agent": "4.0.0",
    "flags": [
      [
        "ALLOCATED",
        1073741824
      ],
      [
        "AVAILABLE",
        1073737728
      ]
    ]
  },
  "versions": {
    "protocol": "4.0.0",
    "software": "12.0.1"
  },
  "category": "status",
  "policies": [
    {
      "fingerprint": "*",
      "methods": [
        "*"
      ]
    }
  ]
}

GET /providers

Fetches a JSON array of all identities and their associated profiles for which the node has interacted with in the past 24 hours.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=234ec3b4-27c7-4a0a-aa4a-79a71aaa6ad7" \
http://127.0.0.1:10089/providers | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2222  100  2222    0     0   120k      0 --:--:-- --:--:-- --:--:--  120k
[
  {
    "contact": {
      "protocol": "http:",
      "index": 0,
      "agent": "4.0.0",
      "hostname": "2s2u2o5fmk2lhdclsrfpfo4igzh7nwmpmfbsvucyvepvwehw2sxdyvad.onion",
      "port": 80,
      "xpub": "xpub661MyMwAqRbcFdbNJUyfxU8yh9e8LrkML6BKorHReU4KpePVppNZhZbZpYx9NPjGFmy7TZnkmgkZXBeTJcnjjU5Cabt8kekPZ8LaWoCEwYo"
    },
    "capacity": {
      "allocated": 1073741824,
      "available": 1073737728,
      "allocatedHuman": "1GB",
      "availableHuman": "1024MB"
    },
    "reputation": {
      "score": 0,
      "timestamp": "2018-08-14T14:59:42.643Z"
    },
    "identity": "3f9e8519d66ba37f70a4e9fc2ef9d235480de5ab",
    "updated": "2018-08-14T14:53:43.860Z",
    "id": "5b72df1a16b73c3ed6ae25d3"
  },
  {
    "contact": {
      "protocol": "http:",
      "index": 0,
      "agent": "4.0.0",
      "hostname": "fjk3xswbpeezfbtwv76rue5a644hp3vsbjnrbb6cczmo3anv7qsq2vyd.onion",
      "port": 80,
      "xpub": "xpub661MyMwAqRbcGbJkW9PbKFhUbooSt6ttJMRn8QmaUMpAZVC2K77opg6C2D7UX2USRedH5SNLdsTA1k33vKa37ea1ZgFPyuhokjynjrwrjoT"
    },
    "capacity": {
      "allocated": 1073741824,
      "available": 1073737728,
      "allocatedHuman": "1GB",
      "availableHuman": "1024MB"
    },
    "reputation": {
      "score": 0,
      "timestamp": "2018-08-14T14:59:42.644Z"
    },
    "identity": "b5141334673315c5872f702eb9f6c186c15ee722",
    "updated": "2018-08-14T14:53:41.807Z",
    "id": "5b72df1a16b73c3ed6ae25d4"
  },
  {
    "contact": {
      "protocol": "http:",
      "index": 0,
      "agent": "4.0.0",
      "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
      "port": 80,
      "xpub": "xpub661MyMwAqRbcF6CTS9KDVWjEuQVDA2KgG2zu3WFAW8gYjb9i1YwzxqmiFB8u81MXMjGWiikQxvmvAfjAEJkKpx5qoGjd3n41rNJPiSQ2MH2"
    },
    "capacity": {
      "allocated": 1073741824,
      "available": 1073737728,
      "allocatedHuman": "1GB",
      "availableHuman": "1024MB"
    },
    "reputation": {
      "score": 0,
      "timestamp": "2018-08-14T14:59:42.645Z"
    },
    "identity": "78605de8b6b06fc834801dde47e12415c51efa12",
    "updated": "2018-08-14T14:53:36.697Z",
    "id": "5b72dea516b73c3ed6ae25b1"
  },
  {
    "contact": {
      "protocol": "http:",
      "index": 0,
      "agent": "4.0.0",
      "hostname": "zeatlf6whhi2ngtrtjhhvxpexqqngxjg37ih6maaabzepeohktozm4yd.onion",
      "port": 80,
      "xpub": "xpub661MyMwAqRbcG8XndBgKGNXYjpoqTNU7QjHsdCsZSBZADut5G2kZzKygxJYbQ8dfp5EhZhHZ7YDXNsb9wJvkRDte6EbH2dmoemtWMjNNAj5"
    },
    "capacity": {
      "allocated": 0,
      "available": 0,
      "allocatedHuman": "0B",
      "availableHuman": "0B"
    },
    "reputation": {
      "score": 0,
      "timestamp": "2018-08-14T14:59:42.648Z"
    },
    "identity": "7d7e1bf0083d5dc74983e263a2a7cebaf898db65",
    "updated": "2018-08-14T13:52:36.847Z",
    "id": "5b72dea416b73c3ed6ae25af"
  }
]

GET /providers/{identity}

Given a known identity key, fetch the specific profile associated.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=234ec3b4-27c7-4a0a-aa4a-79a71aaa6ad7" \
http://127.0.0.1:10089/providers/78605de8b6b06fc834801dde47e12415c51efa12 | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   560  100   560    0     0  46666      0 --:--:-- --:--:-- --:--:-- 50909
{
  "contact": {
    "protocol": "http:",
    "index": 0,
    "agent": "4.0.0",
    "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
    "port": 80,
    "xpub": "xpub661MyMwAqRbcF6CTS9KDVWjEuQVDA2KgG2zu3WFAW8gYjb9i1YwzxqmiFB8u81MXMjGWiikQxvmvAfjAEJkKpx5qoGjd3n41rNJPiSQ2MH2"
  },
  "capacity": {
    "allocated": 1073741824,
    "available": 1073737728,
    "allocatedHuman": "1GB",
    "availableHuman": "1024MB"
  },
  "reputation": {
    "score": 0,
    "timestamp": "2018-08-14T15:03:10.284Z"
  },
  "identity": "78605de8b6b06fc834801dde47e12415c51efa12",
  "updated": "2018-08-14T14:53:36.697Z",
  "id": "5b72dea516b73c3ed6ae25b1"
}

POST /objects

You can upload a file to the network my sending a multipart/form-upload request to POST /objects. This works the same as if using a <input type="file"/> on a web page. You can also add policy fields to specify access policies as defined in IMP-0010.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=0eba09e1-f7fa-4a9a-a7bc-d9b65ec4db87" \
--form "file=@Pictures/avatar.jpg;type=image/jpeg" \
--form "policy=::RETRIEVE" \
http://127.0.0.1:10089/objects | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 70243  100  5778  100 64465    562   6273  0:00:10  0:00:10 --:--:--  1420
{
  "name": "avatar.jpg",
  "mimetype": "image/jpeg",
  "policies": [
    "::RETRIEVE"
  ],
  "encoding": "7bit",
  "size": 64172,
  "ecpub": "024f869a19b3868773d3e2fe0c66af76dcc9baa17e2989a814ebcf2e5883d35fef",
  "hash": "0186d6cebe297a5166f059640894f5d605d6823db933e3d220d27a4608663a70",
  "shards": [
    {
      "size": 2097152,
      "hash": "08b37ae500412cce8b7c4d4dd0045c275fdf5708",
      "service": [
        "fdd13bc526d3ec7554cb85c588e34d736563f3f1",
        {
          "hostname": "a2ncwm63s6l7ifoczbqavmfyeqzkf7qeuzj55tk6htqsnabhrvinqgyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFKLJAkYT1vj5oUd5jNdjVVWt4WHN6Reku6rmMVEmexgN3kXk5VDcoQLzwLXed2DDaHxev8Xcgn6t9qiohMnNCDFNbTVD3fX",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "695389c05335c26f259ab770213368778ddd8cb4",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "61dd32d2fbc4c55c3e2473c810be526d6f0993ea",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "7a133b6a5dab518710a4d4b8ad8c04f674627d8f",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "f270f021bdaa125c440c46140af4ce22b59c4f78",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "e09f14b0b20ebd1179b88af8b0b975819391eb7b",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "eefb28a12ca88ef1363e7c23ab2eb88cc4d25d3c",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "52c15ffc42f0b0168951493e72ef45aa8e739550",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "eada4ef9832edab49e98b3f7ec5063d93653b881",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "af5fabf651e914a038e7df75f483ab4d3267d7a7",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "7be60f10d83dcd2bdf086a62fcacb25aa100044d",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    },
    {
      "size": 2097152,
      "hash": "f1a1272d8b69e34364d03339ad3158a16e0dd409",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false
    }
  ],
  "status": "finished",
  "csize": 64176,
  "id": "5b72f32bc787d2012e5c8f50"
}

Once the object is completely distributed, the metadata will be returned. You can check on the status of an object while the request is pending by listing the objects using GET /. Statuses may be finished, queued, or failed.

GET /objects

Retreive a JSON list of your objects stored in the network and managed by this node. Each item returned in the list contains metadata regarding the type, size, name, hash, location of shards, and more.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=0eba09e1-f7fa-4a9a-a7bc-d9b65ec4db87" \
http://127.0.0.1:10089/objects | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  5802  100  5802    0     0   566k      0 --:--:-- --:--:-- --:--:--  566k
[
  {
    "name": "avatar.jpg",
    "mimetype": "image/jpeg",
    "policies": [
      "::RETRIEVE"
    ],
    "encoding": "7bit",
    "size": 64172,
    "ecpub": "024f869a19b3868773d3e2fe0c66af76dcc9baa17e2989a814ebcf2e5883d35fef",
    "hash": "0186d6cebe297a5166f059640894f5d605d6823db933e3d220d27a4608663a70",
    "shards": [
      {
        "size": 2097152,
        "hash": "08b37ae500412cce8b7c4d4dd0045c275fdf5708",
        "service": [
          "fdd13bc526d3ec7554cb85c588e34d736563f3f1",
          {
            "hostname": "a2ncwm63s6l7ifoczbqavmfyeqzkf7qeuzj55tk6htqsnabhrvinqgyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFKLJAkYT1vj5oUd5jNdjVVWt4WHN6Reku6rmMVEmexgN3kXk5VDcoQLzwLXed2DDaHxev8Xcgn6t9qiohMnNCDFNbTVD3fX",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "695389c05335c26f259ab770213368778ddd8cb4",
        "service": [
          "e659b4e15864baf62f60110ce54bf555a97d8ee2",
          {
            "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "61dd32d2fbc4c55c3e2473c810be526d6f0993ea",
        "service": [
          "e659b4e15864baf62f60110ce54bf555a97d8ee2",
          {
            "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "7a133b6a5dab518710a4d4b8ad8c04f674627d8f",
        "service": [
          "606aaea97f49f29b13f173023b8a2cd37378621b",
          {
            "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "f270f021bdaa125c440c46140af4ce22b59c4f78",
        "service": [
          "e659b4e15864baf62f60110ce54bf555a97d8ee2",
          {
            "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "e09f14b0b20ebd1179b88af8b0b975819391eb7b",
        "service": [
          "606aaea97f49f29b13f173023b8a2cd37378621b",
          {
            "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "eefb28a12ca88ef1363e7c23ab2eb88cc4d25d3c",
        "service": [
          "606aaea97f49f29b13f173023b8a2cd37378621b",
          {
            "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "52c15ffc42f0b0168951493e72ef45aa8e739550",
        "service": [
          "e659b4e15864baf62f60110ce54bf555a97d8ee2",
          {
            "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "eada4ef9832edab49e98b3f7ec5063d93653b881",
        "service": [
          "e659b4e15864baf62f60110ce54bf555a97d8ee2",
          {
            "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "af5fabf651e914a038e7df75f483ab4d3267d7a7",
        "service": [
          "606aaea97f49f29b13f173023b8a2cd37378621b",
          {
            "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "7be60f10d83dcd2bdf086a62fcacb25aa100044d",
        "service": [
          "e659b4e15864baf62f60110ce54bf555a97d8ee2",
          {
            "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      },
      {
        "size": 2097152,
        "hash": "f1a1272d8b69e34364d03339ad3158a16e0dd409",
        "service": [
          "e659b4e15864baf62f60110ce54bf555a97d8ee2",
          {
            "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
            "protocol": "http:",
            "port": "80",
            "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
            "index": 0,
            "agent": "4.0.0",
            "flags": [
              [
                "ALLOCATED",
                1073741824
              ],
              [
                "AVAILABLE",
                1073737728
              ]
            ]
          }
        ],
        "decayed": false
      }
    ],
    "status": "finished",
    "csize": 64176,
    "id": "5b72f32bc787d2012e5c8f50",
    "sizeHuman": "62.67kB"
  }
]

GET /objects/{id}/info

Retrieve the metadata for a specific object by it's unique ID.

curl \                                                                    130 ↵
--header "Accept: application/json" \
--cookie "token=0eba09e1-f7fa-4a9a-a7bc-d9b65ec4db87" \
http://127.0.0.1:10089/objects/5b72f32bc787d2012e5c8f50/info | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 13984  100 13984    0     0   758k      0 --:--:-- --:--:-- --:--:--  803k
{
  "name": "avatar.jpg",
  "mimetype": "image/jpeg",
  "policies": [
    "::RETRIEVE"
  ],
  "encoding": "7bit",
  "size": 64172,
  "ecpub": "024f869a19b3868773d3e2fe0c66af76dcc9baa17e2989a814ebcf2e5883d35fef",
  "hash": "0186d6cebe297a5166f059640894f5d605d6823db933e3d220d27a4608663a70",
  "shards": [
    {
      "size": 2097152,
      "hash": "08b37ae500412cce8b7c4d4dd0045c275fdf5708",
      "service": [
        "fdd13bc526d3ec7554cb85c588e34d736563f3f1",
        {
          "hostname": "a2ncwm63s6l7ifoczbqavmfyeqzkf7qeuzj55tk6htqsnabhrvinqgyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFKLJAkYT1vj5oUd5jNdjVVWt4WHN6Reku6rmMVEmexgN3kXk5VDcoQLzwLXed2DDaHxev8Xcgn6t9qiohMnNCDFNbTVD3fX",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "695389c05335c26f259ab770213368778ddd8cb4",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "61dd32d2fbc4c55c3e2473c810be526d6f0993ea",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "7a133b6a5dab518710a4d4b8ad8c04f674627d8f",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "f270f021bdaa125c440c46140af4ce22b59c4f78",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "e09f14b0b20ebd1179b88af8b0b975819391eb7b",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "eefb28a12ca88ef1363e7c23ab2eb88cc4d25d3c",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "52c15ffc42f0b0168951493e72ef45aa8e739550",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "eada4ef9832edab49e98b3f7ec5063d93653b881",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "af5fabf651e914a038e7df75f483ab4d3267d7a7",
      "service": [
        "606aaea97f49f29b13f173023b8a2cd37378621b",
        {
          "hostname": "l466qntstik7falkkzxttgrtlu4u7g6yaxmyvjs2qamlzymsdsiqxdqd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFtsPtyz5MHxpL46vfo5ZFx93hPqKdkBKVEjyedpPvFBbS8gz99pWn7Jzw4mkrRboQq37FHVLS1JK52y7gKvV6aGG5a2PWod",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "7be60f10d83dcd2bdf086a62fcacb25aa100044d",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    },
    {
      "size": 2097152,
      "hash": "f1a1272d8b69e34364d03339ad3158a16e0dd409",
      "service": [
        "e659b4e15864baf62f60110ce54bf555a97d8ee2",
        {
          "hostname": "vdncsvd6cgwvw4udm6suygmcuwwl2vi6n3m55nmoxnw3m76z4ojd5yyd.onion",
          "protocol": "http:",
          "port": "80",
          "xpub": "xpub661MyMwAqRbcFTNjuDssNCHbHb9f6ZCWTGNV3TU7H797Evd8HPVUo7Cg5h8kFAjTvBzVD6wTC55SRYYuFSTr1i58qQKBjjfL4UbZpqakqre",
          "index": 0,
          "agent": "4.0.0",
          "flags": [
            [
              "ALLOCATED",
              1073741824
            ],
            [
              "AVAILABLE",
              1073737728
            ]
          ]
        }
      ],
      "decayed": false,
      "sizeHuman": "2MB"
    }
  ],
  "status": "finished",
  "csize": 64176,
  "id": "5b72f32bc787d2012e5c8f50",
  "pointer": {
    "blob": "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",
    "hash": "e4d5384ec149377f7c67c47026e04cbd2d90adeb",
    "magnet": "magnet:?xt=urn:orc:e4d5384ec149377f7c67c47026e04cbd2d90adeb&xs=64172&dn=avatar.jpg&x.ecprv=6d26ec46039e27d6533e3d3231d45515a9a08c529e49fde7f0a865c30aa5f7dc&x.pword=d3bc6fc9bd00e2753cb35900f818f9b7c78edbca"
  },
  "sizeHuman": "62.67kB"
}

POST /objects/{id}/retry

In the event that an upload fails due to network issues, it will end up in a "queued" state, which allows for it to have a retry triggered by sending this request. The result of this request is identical to uploading an object and is functionally equivalent, except instead of first accepting the file as part of the request, it will use the already encrypted copy stored locally.

curl \                                                                      1 ↵
--header "Accept: application/json" \
--cookie "token=0eba09e1-f7fa-4a9a-a7bc-d9b65ec4db87" \
--request POST \
http://127.0.0.1:10089/objects/5b72f32bc787d2012e5c8f50/retry | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    32  100    32    0     0   4000      0 --:--:-- --:--:-- --:--:--  4000
{
  "error": "Object is not queued"
}

GET /objects/{id}

You can download a file from the network knowing only the object's ID in the local bridge service. The appropriate headers for content type are sent to enable browsers and other applications to display the downloaded object.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=0eba09e1-f7fa-4a9a-a7bc-d9b65ec4db87" \
http://127.0.0.1:10089/objects/5b72f32bc787d2012e5c8f50 > avatar.jpg
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 64172  100 64172    0     0  11069      0  0:00:05  0:00:05 --:--:-- 13965

POST /magnets

To fetch an object pointer shared by someone else, you can send the magnet link and get back an object pointer with an ID you can use in the download example.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=0eba09e1-f7fa-4a9a-a7bc-d9b65ec4db87" \
--form "link=magnet:?xt=urn:orc:e4d5384ec149377f7c67c47026e04cbd2d90adeb&xs=64172&dn=avatar.jpg&x.ecprv=6d26ec46039e27d6533e3d3231d45515a9a08c529e49fde7f0a865c30aa5f7dc&x.pword=d3bc6fc9bd00e2753cb35900f818f9b7c78edbca" \
http://127.0.0.1:10089/magnets | jq

The response here in removed - it is the same as the response from POST /objects.

POST /objects/{id}/delete

You can destroy an object, nullifying associated contracts. Returns a 200 and empty object.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=0eba09e1-f7fa-4a9a-a7bc-d9b65ec4db87" \
--request POST \
http://127.0.0.1:10089/objects/5b72f574c787d2012e5c8f81/delete | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     2  100     2    0     0     90      0 --:--:-- --:--:-- --:--:--    90
{}

POST /trusted

Adds the provided identity fingerprint to the list of trusted providers.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=478fa856-92ab-4343-95b5-74004da2fb97" \
--form "fingerprint=697bbb3d956208dd5d649fd9f1e93621e4fdfbe0" \
http://127.0.0.1:10089/trusted | jq                                
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   244  100    58  100   186   3866  12400 --:--:-- --:--:-- --:--:-- 16266
{
  "fingerprint": "697bbb3d956208dd5d649fd9f1e93621e4fdfbe0"
}

POST /trusted/{fingerprint}/delete

Removes the given fingerprint from the list of trusted providers. Note that if the fingerprint is defined in the ORC configuration file, it will be restored the next time ORC is started.

curl \
--header "Accept: application/json" \
--cookie "token=478fa856-92ab-4343-95b5-74004da2fb97" \
--request POST \
http://127.0.0.1:10089/trusted/697bbb3d956208dd5d649fd9f1e93621e4fdfbe0/delete | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     2  100     2    0     0    666      0 --:--:-- --:--:-- --:--:--   666
{}

GET /messages

Requests the last ~200 log messages for debugging and status purposes.

curl \                                                                         
--header "Accept: application/json" \
--cookie "token=e1232b60-87f4-4407-af58-4522ce631d1b" \
http://127.0.0.1:10089/messages | jq

POST /passphrase

You can reset your passphrase for accessing your node. This will reset all active sessions and you must login again.

curl \                                                                    
--header "Accept: application/json" \
--cookie "token=e1232b60-87f4-4407-af58-4522ce631d1b" \
--form "passphrase_old=Simulation" \
--form "passphrase_new=NewPassword" \
http://127.0.0.1:10089/passphrase | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   275  100     2  100   273      1    225  0:00:02  0:00:01  0:00:01   226
{}