% Generated by roxygen2: do not edit by hand % Please edit documentation in R/box.R \name{osem_boxes} \alias{osem_boxes} \title{Get a set of senseBoxes from the openSenseMap} \usage{ osem_boxes( exposure = NA, model = NA, grouptag = NA, date = NA, from = NA, to = NA, phenomenon = NA, bbox = NA, endpoint = osem_endpoint(), progress = TRUE, cache = NA ) } \arguments{ \item{exposure}{Only return boxes with the given exposure ('indoor', 'outdoor', 'mobile')} \item{model}{Only return boxes with the given model} \item{grouptag}{Only return boxes with the given grouptag} \item{date}{Only return boxes that were measuring within ±4 hours of the given time} \item{from}{Only return boxes that were measuring later than this time} \item{to}{Only return boxes that were measuring earlier than this time} \item{phenomenon}{Only return boxes that measured the given phenomenon in the time interval as specified through \code{date} or \code{from / to}} \item{bbox}{Only return boxes that are within the given boundingbox, vector of 4 WGS84 coordinates. Order is: longitude southwest, latitude southwest, longitude northeast, latitude northeast. Minimal and maximal values are: -180, 180 for longitude and -90, 90 for latitude.} \item{endpoint}{The URL of the openSenseMap API instance} \item{progress}{Whether to print download progress information, defaults to \code{TRUE}} \item{cache}{Whether to cache the result, defaults to false. If a valid path to a directory is given, the response will be cached there. Subsequent identical requests will return the cached data instead.} } \value{ A \code{sensebox data.frame} containing a box in each row } \description{ Boxes can be selected by a set of filters. Note that some filters do not work together: \enumerate{ \item \code{phenomenon} can only be applied together with \code{date} or \code{from / to} \item \code{date} and \code{from / to} cannot be specified together } } \examples{ \dontrun{ # get *all* boxes available on the API b = osem_boxes() # get all boxes with grouptag 'ifgi' that are placed outdoors b = osem_boxes(grouptag = 'ifgi', exposure = 'outdoor') # get all boxes with model 'luftdaten_sds011_dht22' b = osem_boxes(grouptag = 'ifgi') # get all boxes that have measured PM2.5 in the last 4 hours b = osem_boxes(date = Sys.time(), phenomenon = 'PM2.5') # get all boxes that have measured PM2.5 between Jan & Feb 2018 library(lubridate) b = osem_boxes( from = date('2018-01-01'), to = date('2018-02-01'), phenomenon = 'PM2.5' ) # get all boxes from a custom (selfhosted) openSenseMap API b = osem_box(endpoint = 'http://api.my-custom-osem.com') # get all boxes and cache the response, in order to provide # reproducible results in the future. Also useful for development # to avoid repeated loading times! b = osem_boxes(cache = getwd()) b = osem_boxes(cache = getwd()) # get *all* boxes available on the API, without showing download progress b = osem_boxes(progress = FALSE) } } \seealso{ \href{https://docs.opensensemap.org/#api-Measurements-findAllBoxes}{openSenseMap API documentation (web)} \code{\link{osem_phenomena}} \code{\link{osem_box}} \code{\link{osem_clear_cache}} }