reverse_geocode {arcgisgeocode}R Documentation

Reverse Geocode Locations

Description

Determines the address for a given point.

Usage

reverse_geocode(
  locations,
  crs = sf::st_crs(locations),
  ...,
  lang_code = NULL,
  feature_type = NULL,
  location_type = c("rooftop", "street"),
  preferred_label_values = c("postalCity", "localCity"),
  for_storage = FALSE,
  geocoder = default_geocoder(),
  token = arc_token(),
  .progress = TRUE
)

Arguments

locations

an sfc_POINT object of the locations to be reverse geocoded.

crs

the CRS of the returned geometries. Passed to sf::st_crs(). Ignored if locations is not an sfc_POINT object.

...

unused.

lang_code

default NULL. An ISO 3166 country code. See iso_3166_codes() for valid ISO codes. Optional.

feature_type

limits the possible match types returned. Must be one of "StreetInt", "DistanceMarker", "StreetAddress", "StreetName", "POI", "Subaddress", "PointAddress", "Postal", or "Locality". Optional.

location_type

default "rooftop". Must be one of "rooftop" or "street". Optional.

preferred_label_values

default NULL. Must be one of "postalCity" or "localCity". Optional.

for_storage

default FALSE. Whether or not the results will be saved for long term storage.

geocoder

default default_geocoder().

token

an object of class httr2_token as generated by auth_code() or related function

.progress

default TRUE. Whether a progress bar should be provided.

Details

This function utilizes the ⁠/reverseGeocode⁠ endpoint of a geocoding service. By default, it uses the public ArcGIS World Geocoder.

Location Type

Storage

Very Important

The argument for_storage is used to determine if the request allows you to persist the results of the query. It is important to note that there are contractual obligations to appropriately set this argument. You cannot save or persist results when for_storage = FALSE (the default).

Execution

The ⁠/reverseGeocode⁠ endpoint can only handle one address at a time. To make the operation as performant as possible, requests are sent in parallel using httr2::req_perform_parallel(). The JSON responses are then processed using Rust and returned as an sf object.

Value

An sf object.

Examples

# Find addresses from locations
reverse_geocode(c(-117.172, 34.052))

[Package arcgisgeocode version 0.2.0 Index]