box_collab_create function

Create Box collaboration

Create Box collaboration

Although this function can be used in all sorts of situations, it can be particularly useful in setting up a workflow with a service-account:

  • If you are authenticated as a user, using box_auth(), you can invite the service account to collaborate on a folder in your user filespace. In this case, the shared folder will appear in the service-account filespace.
  • If you are authenticated as the service-account using box_auth_service(), you can invite your user-account to collaborate. In this case, the shared folder will appear in your user file-space.

Once you issue an invitation to create a collaboration, you cannot change it, e.g. you cannot change the role from "viewer" to "co-owner". However, you can delete the collaboration, then issue a new invitation. To delete a collaboration, use box_collab_delete(). To check a Box folder ID or file ID for existing collaborations, use box_collab_get(). You can also use the Box web-portal to manage collaborations.

The default role, i.e. permission level, for an invitation is "editor". Legal values for role are "editor", "viewer", "previewer", "uploader", "previewer uploader", "viewer uploader", "co-owner", "owner".

box_collab_create( dir_id = NULL, user_id = NULL, file_id = NULL, group_id = NULL, login = NULL, role = "editor", can_view_path = FALSE )

Arguments

  • dir_id: numeric or character, folder ID at Box.
  • user_id: character ID for Box user-account to invite.
  • file_id: numeric or character, file ID at Box.
  • group_id: character ID for Box group-account to invite.
  • login: character email address of account to invite, if specified will be used instead of user_id.
  • role: character role of the collaborator; default is "viewer".
  • can_view_path: logical indicates to allow the collaborator to navigate parent-folders at Box.

Returns

Object with S3 class boxr_collab.

Details

To use this function, you must provide exactly one of: dir_id or file_id, to specify what you want to share, and exactly one of: user_id, group_id, or login (email address), to specify the account you want to share it with.

While authenticated from the host account, the one that will issue the invitation, you can use box_ls() and box_setwd() to get the dir_id

or file_id for the item you want to share. If the host-account is the user-account, you can also use the web-portal to find the dir_id or file-id. If the host account is the service-account, you can use the Box content-portal to find this.

A user can find their user_id using the Box web-portal. As well, when you authenticate using boxr, the user_id is included in the login message. Thus, you can use box_auth_service() to find out the user_id

for a given service-account.

This returns an object with S3 class boxr_collab; this is a list containing the response from the API. You can use as_tibble() or as.data.frame() on this return-object to convert to a tibble or data frame.

See Also

box_auth(), box_auth_service()

  • Maintainer: Ian Lyttle
  • License: MIT + file LICENSE
  • Last published: 2021-01-19