share

Shares restricted access to objects

Usage

Windows
Linux
macOS
Windows
./uplink.exe share [ALLOWED_PATH_PREFIX]... [flags]
Linux
uplink share [ALLOWED_PATH_PREFIX]... [flags]
macOS
uplink share [ALLOWED_PATH_PREFIX]... [flags]

An access generated using uplink share with no arguments creates an access to your entire project with read permissions.

Flags

Flag

Description

--access string

the serialized access, or name of the access to use

--auth-service string

url for shared auth service

Asia https://auth.ap1.storjshare.io

US https://auth.us1.storjshare.io

EU https://auth.eu1.storjshare.io

--base-url string

the base url for link sharing

Asia https://link.ap1.storjshare.io

US https://link.us1.storjshare.io

EU https://link.eu1.storjshare.io

--disallow-deletes

if true, disallow deletes

--disallow-lists

if true, disallow lists

--disallow-reads

if true, disallow reads

--disallow-writes

if true, disallow writes

--dns string

specify your custom hostname. if set, returns dns settings for web hosting. implies --register and --public

--export-to string

path to export the shared access to

--help, -h

help for share

--not-after

disallow access after this time (e.g. '+2h', '2020-01-02T15:01:01-01:00')

--not-before

disallow access before this time (e.g. '+2h', '2020-01-02T15:01:01-01:00')

--public

if true, the access will be public. --dnsand --urloverride this

--readonly

implies --disallow-writes and --disallow-deletes

--register

if true, creates and registers access grant

--url

if true, returns a url for the shared path. implies --register and --public

--writeonly

implies --disallow-reads and --disallow-lists

Examples

Share a single object

Windows
Linux
macOS
Windows
./uplink.exe share sj://cakes/cheesecake.jpg
Linux
uplink share sj://cakes/cheesecake.jpg
macOS
uplink share sj://cakes/cheesecake.jpg

Notice that by default, only download (read) and list operations are allowed.

=========== ACCESS RESTRICTIONS ==========================================================
Download : Allowed
Upload : Disallowed
Lists : Allowed
Deletes : Disallowed
NotBefore : No restriction
NotAfter : No restriction
Paths : sj://cakes/cheesecake.jpg
=========== SERIALIZED ACCESS WITH THE ABOVE RESTRICTIONS TO SHARE WITH OTHERS ===========
Access : 12yUGNqdsKX1Xky2qVoGwdpL...

Share a bucket with all permissions

Windows
Linux
macOS
Windows
./uplink.exe share sj://cakes/ --readonly=false
Linux
uplink share sj://cakes/ --readonly=false
macOS
uplink share sj://cakes/ --readonly=false

As the --readonly flag is set to false, uploads and deletes are allowed.

=========== ACCESS RESTRICTIONS ==========================================================
Download : Allowed
Upload : Allowed
Lists : Allowed
Deletes : Allowed
NotBefore : No restriction
NotAfter : No restriction
Paths : sj://cakes/
=========== SERIALIZED ACCESS WITH THE ABOVE RESTRICTIONS TO SHARE WITH OTHERS ===========
Access : 12BncZWg9xc4GyXCgCi3YvBg...

Register with Gateway MT

Generate credentials to use with our S3 multitenant gateway (beta): GatewayMT

Windows
Linux
macOS
Windows
./uplink.exe share sj://cakes/ --register --auth-service=https://auth.us1.storjshare.io
Linux
uplink share sj://cakes/ --register --auth-service=https://auth.us1.storjshare.io
macOS
uplink share sj://cakes/ --register --auth-service=https://auth.us1.storjshare.io

Notice the endpoint generated for Gateway MT gateway.us1.storjshare.io corresponds to the auth service used auth.us1.storjshare.io

=========== ACCESS RESTRICTIONS ==========================================================
Download : Allowed
Upload : Disallowed
Lists : Allowed
Deletes : Disallowed
NotBefore : No restriction
NotAfter : No restriction
Paths : sj://cakes/ (entire bucket)
=========== SERIALIZED ACCESS WITH THE ABOVE RESTRICTIONS TO SHARE WITH OTHERS ===========
Access : 1Q74vfxunqiAQ15WPxPqreya...
========== CREDENTIALS ===================================================================
Access Key ID: jvguri...
Secret Key : j3nj4x...
Endpoint : https://gateway.us1.storjshare.io

You can also generate a URL to share your projects/buckets/objects

Windows
Linux
macOS
Windows
./uplink.exe share sj://cakes/ --url --base-url=https://link.us1.storjshare.io
Linux
uplink share sj://cakes/ --url --base-url=https://link.us1.storjshare.io
macOS
uplink share sj://cakes/ --url --base-url=https://link.us1.storjshare.io

Note that specifying --base-url is optional.

=========== ACCESS RESTRICTIONS ==========================================================
Download : Allowed
Upload : Disallowed
Lists : Allowed
Deletes : Disallowed
NotBefore : No restriction
NotAfter : No restriction
Paths : sj://cakes/ (entire bucket)
=========== SERIALIZED ACCESS WITH THE ABOVE RESTRICTIONS TO SHARE WITH OTHERS ===========
Access : 1Q74vfxunqiAQ15WPxPqreya...
========== CREDENTIALS ===================================================================
Access Key ID: jvguri...
Secret Key : j3nj4x...
Endpoint : https://gateway.us1.storjshare.io
Public Access: true
=========== BROWSER URL ==================================================================
REMINDER : Object key must end in '/' when trying to share recursively
URL : https://link.us1.storjshare.io/s/jvguri.../cakes

Also note that the URL uses the same Gateway MT access key, so if you have that already, you don't necessarily need to run this command to generate a shareable link.

https://link.<region>.storjshare.io/s/<access key>/<object path>

To download content directly, use /raw/ in Linkshare URL ex: https://link.us1.storjshare.io/raw/ju34skavohcqezr6vlfgshg5nmjq/dwebdemo/isthataquestion.mp4

To view the object location map, use /s/ in Linkshare URL ex: https://link.us1.storjshare.io/s/ju34skavohcqezr6vlfgshg5nmjq/dwebdemo/isthataquestion.mp4

Webhosting

For more detail, visit the documentation on hosting a static website with the Uplink CLI.

While you may share individual objects with the above linksharing instructions, you must share a bucket or object prefix for webhosting. Your web address will render the index.html file.

Windows
Linux
macOS
Windows
./uplink.exe share --dns www sj://cakes/ --base-url https://link.us1.storjshare.io
Linux
uplink share --dns www sj://cakes/ --base-url https://link.us1.storjshare.io
macOS
uplink share --dns www sj://cakes/ --base-url https://link.us1.storjshare.io
=========== ACCESS RESTRICTIONS ==========================================================
Download : Allowed
Upload : Disallowed
Lists : Allowed
Deletes : Disallowed
NotBefore : No restriction
NotAfter : No restriction
Paths : sj://cakes/ (entire bucket)
=========== SERIALIZED ACCESS WITH THE ABOVE RESTRICTIONS TO SHARE WITH OTHERS ===========
Access : 12BncZWg9xc4GyXCDX73...
========== CREDENTIALS ===================================================================
Access Key ID: ju3ga56lfk7x...
Secret Key : j2psszecoqtc...
Endpoint : https://gateway.us1.storjshare.io
Public Access: true
=========== DNS INFO =====================================================================
Remember to update the $ORIGIN with your domain name. You may also change the $TTL.
$ORIGIN example.com.
$TTL 3600
www IN CNAME link.us1.storjshare.io.
txt-www IN TXT storj-root:cakes
txt-www IN TXT storj-access:ju3ga56lfk7x...

Use the generated DNS info to connect your domain name to your shared objects.

Note you can use any hostname in place of www in the example. The base-url is also optional.