Low-level function to execute a Sheets API request. Most users should, instead, use higher-level wrappers that facilitate common tasks, such as reading or writing worksheets or cell ranges. The functions here are intended for internal use and for programming around the Sheets API.

make_request() does very, very little: it calls an HTTP method, only adding the googlesheets4 user agent. Typically the input has been created with request_generate() or gargle::request_build() and the output is processed with process_response().

request_make(x, ..., encode = "json")



List. Holds the components for an HTTP request, presumably created with request_generate() or gargle::request_build(). Must contain a method and url. If present, body and token are used.


Optional arguments passed through to the HTTP method.


If the body is a named list, how should it be encoded? This has the same meaning as encode in all the httr::VERB()s, such as httr::POST(). Note, however, that we default to encode = "json", which is what you want most of the time when calling the Sheets API. The httr default is "multipart". Other acceptable values are "form" and "raw".


Object of class response from httr.

See also

Other low-level API functions: gs4_has_token(), gs4_token(), request_generate()