File: shared_drive_create.R

package info (click to toggle)
r-cran-googledrive 2.1.1-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,584 kB
  • sloc: sh: 13; makefile: 2
file content (35 lines) | stat: -rw-r--r-- 956 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#' Create a new shared drive
#'
#' @template shared-drive-description
#'
#' @seealso Wraps the `drives.create` endpoint:
#'   * <https://developers.google.com/drive/api/v3/reference/drives/create>
#'
#' @param name Character. Name of the new shared drive. Must be non-empty and not
#'   entirely whitespace.
#'
#' @eval return_dribble("shared drive")
#' @export
#' @examples
#' \dontrun{
#' shared_drive_create("my-awesome-shared-drive")
#'
#' # Clean up
#' shared_drive_rm("my-awesome-shared-drive")
#' }
shared_drive_create <- function(name) {
  stopifnot(is_string(name), isTRUE(nzchar(name)))
  request <- request_generate(
    "drive.drives.create",
    params = list(
      requestId = uuid::UUIDgenerate(),
      name = name,
      fields = "*"
    )
  )
  response <- request_make(request)
  out <- as_dribble(list(gargle::response_process(response)))

  drive_bullets(c("Shared drive created:", bulletize(gargle_map_cli(out))))
  invisible(out)
}