Label | Explanation | Data Type |
Input Feature Class or layer | A point feature class or layer from which matching places or addresses will be returned based on the features' point location. | Feature Layer |
Input Address Locator | The locator that will be used to reverse geocode the input feature class or layer. | Address Locator |
Output Feature Class | The output feature class. | Feature Class |
Output Address Type (Optional) | Specifies whether addresses for the points will be returned as street addresses or intersection addresses if the locator supports intersection matching.
Legacy:This parameter only applies to locators built with the Create Address Locator tool or composite locators that contain locators built with the Create Address Locator tool. | String |
Search Distance | The distance that will be used to search for the nearest address or intersection for the point location. Some locators use optimized distance values that do not support overriding the search distance parameter. Legacy:This parameter only applies to locators built with the Create Address Locator tool or composite locators that contain locators built with the Create Address Locator tool. | Linear Unit |
Feature Type
(Optional) | Specifies the possible match types that will be returned. A single value or multiple values can be selected. If a single value is selected, the search tolerance for the input feature type is 500 meters. If multiple values are included, the default search distances specified in the feature type hierarchy table will be applied. This parameter is not supported for all locators.
| String |
Preferred Location Type
(Optional) | Specifies the preferred output geometry for Point Address matches. The options for this parameter are a side of street location, which can be used for routing, or the location that represents the rooftop or parcel centroid for the address. If the preferred location does not exist in the data, the default location will be returned instead. For geocode results with Addr_type=PointAddress, the x,y attribute values describe the coordinates of the address along the street, while the DisplayX and DisplayY values describe the rooftop or building centroid coordinates. This parameter is not supported for all locators.
| String |
Summary
Creates addresses from point locations in a feature class. The reverse geocoding process searches for the nearest address, place, or intersection for the point location based on optimized distance values for locators created with the Create Locator tool.
Note:
Locators created with legacy tools are not optimized in the same way and use a default value of 100 for distance. For best results, update locators built with legacy tools, and build them using the Create Locator tool.
Performing geocoding operations using the ArcGIS World Geocoding Service requires an ArcGIS organizational account, and it consumes credits. The organizational account must have enough credits to complete the entire geocoding request.
Usage
The input feature class must contain point shapes with valid x,y coordinates. Results will not be returned on points with null coordinates.
The output feature class will contain the same number of records as in the input feature class. Additional fields containing the result addresses or places are added to the feature class. The names of the fields are prefixed with REV_. If a matching place or address cannot be found, the fields will contain empty values.
If the spatial reference of the input feature class is different from that of the locator, the locator will transform the coordinates on the fly and try to find the match. The output feature class will be saved in the same spatial reference as the input feature class. To change the spatial reference of the output feature class, set a different output coordinate system in the tool's environment settings.
If a point in the input feature class fails to return a matching place or address, it means there are no features in the locator that can be associated with the input point. The following are common causes for unmatched points:
- The point contains null coordinates.
- The point's coordinates are incorrect and cannot be transformed to the spatial reference used in the locator.
- The locator does not contain reference features in the area that can be associated with the point.
- A feature type was specified for which there are no good matches within a reasonable distance.
An ArcGIS Online for organizations subscription is required to reverse geocode a feature class using the ArcGIS World Geocoding Service.
Parameters
arcpy.geocoding.ReverseGeocode(in_features, in_address_locator, out_feature_class, {address_type}, search_distance, {feature_type}, {location_type})
Name | Explanation | Data Type |
in_features | A point feature class or layer from which matching places or addresses will be returned based on the features' point location. | Feature Layer |
in_address_locator | The locator that will be used to reverse geocode the input feature class or layer. | Address Locator |
out_feature_class | The output feature class. | Feature Class |
address_type (Optional) | Specifies whether addresses for the points will be returned as street addresses or intersection addresses if the locator supports intersection matching. Legacy:This parameter only applies to locators built with the Create Address Locator tool or composite locators that contain locators built with the Create Address Locator tool.
| String |
search_distance | The distance that will be used to search for the nearest address or intersection for the point location. Some locators use optimized distance values that do not support overriding the search distance parameter. Legacy:This parameter only applies to locators built with the Create Address Locator tool or composite locators that contain locators built with the Create Address Locator tool. | Linear Unit |
feature_type [feature_type,...] (Optional) | Specifies the possible match types that will be returned. A single value or multiple values can be selected. If a single value is selected, the search tolerance for the input feature type is 500 meters. If multiple values are included, the default search distances specified in the feature type hierarchy table will be applied. See the REST API web help for more details about the featureTypes parameter for reverseGeocode. This parameter is not supported for all locators.
| String |
location_type (Optional) | Specifies the preferred output geometry for POINT_ADDRESS matches. The options for this parameter are ROUTING_LOCATION, the side of street location, which can be used for routing, or ADDRESS_LOCATION, the location that represents the rooftop, parcel centroid for the address, or front door. If the preferred location does not exist in the data, the default location of ROUTING_LOCATION will be returned instead. For geocode results with Addr_type = "PointAddress", the x,y attribute values describe the coordinates of the address along the street, while the DisplayX and DisplayY values describe the rooftop or building centroid coordinates. See the REST API web help for more details about the locationType parameter for reverseGeocode. This parameter is not supported for all locators.
| String |
Code sample
The following Python window script demonstrates how to use the ReverseGeocode function in immediate mode.
import arcpy
arcpy.env.workspace = "C:/data/locations.gdb"
# Set local variables:
input_feature_class = "customers"
address_locator = "e:/StreetMap/data/Street_Addresses_US.loc"
result_feature_class = "customers_with_address"
arcpy.ReverseGeocode_geocoding(input_feature_class, address_locator,
result_feature_class, "ADDRESS")
The following Python script demonstrates how to use the ReverseGeocode function in a stand-alone script.
# Description:
# Reverse Geocode customer point locations using a locator created with
# the Create Locator tool.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "c:/data/Atlanta.gdb"
# Set local variables
input_features = "MyCustomers"
locator = "c:/data/Atlanta/Atlanta_StreetAddress.loc"
reverse_output = "MyCustomers_Reverse_Streets"
addr_type = "ADDRESS"
feature_type = "STREET_INTERSECTION;STREET_ADDRESS"
location_type = "ROUTING_LOCATION"
# Execute ReverseGeocode
arcpy.geocoding.ReverseGeocode(input_features, locator, reverse_output,
addr_type, None, feature_type, location_type)
The following Python script demonstrates how to use the ReverseGeocode function with ArcGIS World Geocoding Service in a stand-alone script.
Note:
If you are working with locators on a portal, ensure that you are signed in and have set the portal as your active portal in ArcGIS Pro. To access a locator that is on a portal other than your active portal, authenticate it using the SignInToPortal function.
# Description:
# Reverse Geocode customer point locations using the ArcGIS World Geocoding Service.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "c:/data/Atlanta.gdb"
# Set local variables
input_features = "MyCustomers"
locator = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
reverse_output = "MyCustomers_Reverse_Streets"
addr_type = "ADDRESS"
feature_type = "STREET_INTERSECTION;STREET_ADDRESS"
location_type = "ROUTING_LOCATION"
# Execute ReverseGeocode
arcpy.geocoding.ReverseGeocode(input_features, locator, reverse_output,
addr_type, None, feature_type, location_type)
Environments
Licensing information
- Basic: Yes
- Standard: Yes
- Advanced: Yes