--- title: "Authenticating osfr" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{Authenticating osfr} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE, eval = FALSE, comment = "#>", collapse = TRUE) ``` ## osfr This vignette covers how to obtain and use an OSF *personal access token* (PAT) for use with `osfr`. PATs are required to upload files, create projects/components, access information about your private projects, or download files in your private projects. PATs are not required for accessing information about public projects or downloading public files, but authentication with a PAT will increase the rate limit on the API. Unauthenticated requests are limited to 100 per hour; Authenticated requests are limited to 10,000 per day. So, if you are planning to make a large number of calls to the API, we suggest authenticating with a PAT even if one is not required for the functions you are running. ## Creating an OSF PAT To create an OSF PAT, log into OSF through your browser, navigate to the [OSF settings page](https://osf.io/settings/tokens/), and click the **create token** button. You will need to create a PAT with at least `osf.read_full` scope; if you want to be able to edit information through the package, you will also need the PAT to have `osf.write_full` permissions. Once the PAT is created, save it in a safe space. ## Using your PAT You can authenticate in two different ways: 1. Call the `osf_auth()` function in the console at the start of each new session and paste in your PAT. ```r osf_auth("ThIsIsNoTaReAlPaTbUtYoUgEtIt") ``` Your PAT functions like a password, so it should **not** be hard coded into any scripts, ever. 2. To authenticate automatically, store the PAT as an environment variable named `OSF_PAT`, which osfr will detect upon being loaded. One way to do this is to create a `.Renviron` file in your home or project working directory that defines `OSF_PAT`. If you'd like to learn more about `.Renviron` files, the [R Startup chapter](https://rstats.wtf/r-startup.html) of *What They Forgot to Teach You About R* is highly recommended. ## Removing a PAT If your PAT has accidentally been publicly released in the world, you should deactivate that PAT. To do this, navigate to the [OSF settings page](https://osf.io/settings/tokens/) and click on the :x: to the right of the PAT you want to deactivate. You can then create a new PAT and reauthenticate.