The aim of httr is to provide a wrapper for the curl package, customised to the demands of modern web APIs.
Functions for the most important http verbs:
Automatic connection sharing across requests to the same website (by default, curl handles are managed automatically), cookies are maintained across requests, and a up-to-date root-level SSL certificate store is used.
Requests return a standard reponse object that captures the http status line, headers and body, along with other useful information.
Response content is available with
content()as a raw vector (
as = "raw"), a character vector (
as = "text"), or parsed into an R object (
as = "parsed"), currently for html, xml, json, png and jpeg.
You can convert http errors into R errors with
Config functions make it easier to modify the request in common ways:
Support for OAuth 1.0 and 2.0 with
oauth2.0_token(). The demo directory has eight OAuth demos: four for 1.0 (twitter, vimeo, withings and yahoo) and four for 2.0 (facebook, github, google, linkedin). OAuth credentials are automatically cached within a project.
To get the current released version from CRAN:
To get the current development version from github:
# install.packages("devtools") devtools::install_github("r-lib/httr")