drive_share function

Share Drive files

Share Drive files

Grant individuals or other groups access to files, including permission to read, comment, or edit. The returned dribble will have extra columns, shared and permissions_resource. Read more in drive_reveal().

drive_share_anyone() is a convenience wrapper for a common special case: "make this file readable by 'anyone with a link'".

drive_share( file, role = c("reader", "commenter", "writer", "fileOrganizer", "owner", "organizer"), type = c("user", "group", "domain", "anyone"), ..., verbose = deprecated() ) drive_share_anyone(file, verbose = deprecated())

Arguments

  • file: Something that identifies the file(s) of interest on your Google Drive. Can be a character vector of names/paths, a character vector of file ids or URLs marked with as_id(), or a dribble.

  • role: Character. The role to grant. Must be one of:

    • owner (not allowed in shared drives)
    • organizer (applies to shared drives)
    • fileOrganizer (applies to shared drives)
    • writer
    • commenter
    • reader
  • type: Character. Describes the grantee. Must be one of:

    • user
    • group
    • domain
    • anyone
  • ...: Name-value pairs to add to the API request. This is where you provide additional information, such as the emailAddress (when grantee type is "group" or "user") or the domain (when grantee type is "domain"). Read the API docs linked below for more details.

  • verbose: This logical argument to individual googledrive functions is deprecated. To globally suppress googledrive messaging, use options(googledrive_quiet = TRUE) (the default behaviour is to emit informational messages). To suppress messaging in a more limited way, use the helpers local_drive_quiet() or with_drive_quiet().

Returns

An object of class dribble, a tibble with one row per file. There will be extra columns, shared and permissions_resource.

Examples

# Create a file to share file <- drive_example_remote("chicken_doc") %>% drive_cp(name = "chicken-share.txt") # Let a specific person comment file <- file %>% drive_share( role = "commenter", type = "user", emailAddress = "susan@example.com" ) # Let a different specific person edit and customize the email notification file <- file %>% drive_share( role = "writer", type = "user", emailAddress = "carol@example.com", emailMessage = "Would appreciate your feedback on this!" ) # Let anyone read the file file <- file %>% drive_share(role = "reader", type = "anyone") # Single-purpose wrapper function for this drive_share_anyone(file) # Clean up drive_rm(file)

See Also

Wraps the permissions.create endpoint:

Drive roles and permissions are described here: