This creates a signed URL which you can share with others who may or may not have a Google account. The object will be available until the specified timestamp.

gcs_signed_url(
  meta_obj,
  expiration_ts = Sys.time() + 3600,
  verb = "GET",
  md5hash = NULL,
  includeContentType = FALSE
)

Arguments

meta_obj

A meta object from gcs_get_object

expiration_ts

A timestamp of class "POSIXct" such as from Sys.time() or a numeric in seconds from Unix Epoch. Default is 60 mins.

verb

The URL verb of access e.g. GET or PUT. Default GET

md5hash

An optional md5 digest value

includeContentType

For getting the URL via browsers this should be set to FALSE (the default). Otherwise, set to TRUE to include the content type of the object in the request needed.

Details

Create a URL with a time-limited read and write to an object, regardless whether they have a Google account

See also

https://cloud.google.com/storage/docs/access-control/signed-urls

Other download functions: gcs_download_url(), gcs_parse_download()

Examples

if (FALSE) { obj <- gcs_get_object("your_file", meta = TRUE) signed <- gcs_signed_url(obj) temp <- tempfile() on.exit(unlink(temp)) download.file(signed, destfile = temp) file.exists(temp) }