Exposing the Gmail API from R.


Get the released version from CRAN:

Or the development version from github with:



By default gmailr will use a global project. However if you are going to be a heavy user and will do a lot of queries please setup your own project with the steps below. This often works best via Google Chrome.

  • Pick a project name; referred to as PROJ-NAME from now on.
  • Register a new project at https://console.developers.google.com/project.
  • From Overview screen, look at Google Apps APIs and select the Gmail API. Enable it.
  • Click “Go to Credentials” or navigate directly to Credentials.
  • You want a get a client ID and will need to “Configure consent screen”.
    • The email should be pre-filled. Enter PROJ-NAME as Product name. Other fields can be left blank.
  • Returning to the “client id” process:
    • Application Type: “Other”
    • Enter PROJ-NAME again as the name.
    • Click “Create”
  • Client id and secret will appear in a pop-up which you can dismiss via “OK”. Instead use download icon at far right of your project’s listing to download a JSON file with all of this info. Move to an appropriate location and consider renaming as PROJ-NAME.json.
  • Use the downloaded JSON file as input to use_secret_file(), prior to other gmailr calls.


Future Work

  • More unit tests and better coverage
  • More (complicated) examples
  • Email statistics
  • Programmatic emailing
  • Returning data frames in addition to native Gmail API objects which are usually a nested list.
  • Support all the formats of users.messages:get


Privacy policy