A new geocoding API called Yahoo! Including reverse geocoding. Zip+4; zip+2; zip; city; state; country; warning.

Note: The find operation has been deprecated. Please discontinue using it in your application, and use the findAddressCandidates operation instead. The findAddressCandidates operation supports finding the following types of locations:.

27488 Stanford Ave, Bowden, North Dakota. 380 New York St, Redlands, CA 92373. New York St and W Redlands Blvd, Redlands, CA. Jacques Veltmanstraat & Pieter Calandlaan, Amsterdam, NLD. by name and type. Disneyland.

banks in Paris. los angeles starbucks. mount everest., such as city, county, state, province, or country names. Seattle, Washington. State of Mahārāshtra. Liechtenstein. 92591.

TW9 1DN.117.155561 Request URL. There are several options for refining or restricting search results:. Specify output fields to return in the geocoding response with the parameter. Specify the spatial reference of candidates with the parameter. Limit the number of candidates with the parameter.

Confine the search results to a specified area with the parameter. Use the parameter to prefer local candidates, which will then be returned higher in the candidates list. Filter search results using the parameter.

Specify the language of geosearch candidates with the parameter. Specify rooftop or street location for PointAddress candidates with the parameter. Request parameters The findAddressCandidates operation supports searching for places and addresses in single-field format (the singleLine parameter) or in multifield format with the address components separated into multiple parameters. Single-field input is easier because the address parsing is done for you; however, multifield input may provide faster responses and more precise results. In order to provide a way to find addresses in many different countries, which may use different addressing formats, the findAddressCandidates operation uses standardized field names for submitting address components. In the parameters listed below, the neighborhood, city, subregion, and region parameters represent typical administrative divisions within a country.

They may have different contexts for different countries, and not all administrative divisions are used in all countries. For instance, with addresses in the United States, only the city (city) and region(state) parameters are used; for addresses in Mexico, the neighborhood parameter is used for districts (colonias) within a city, city for municipalities (municipios), and the region parameter for states (estados); Spain uses all four administrative divisions. The service info page provides localized versions of the input field names in all locales supported by the service.

See for more information. Required parameters The findAddressCandidates operation has only one required parameter: f.

However, you also need to pass address or place information, which can be done by passing the name as a single line of text for clarity or passing it as multiple fields of text for accuracy. To access single-line functionality, the singleLine parameter is required. To access multifield functionality instead, any combination of the address, neighborhood, city, region, subregion, countryCode, and postal parameters is required. SingleLine=380 New York St, Redlands, California 92373 Address parameters The full street address of a place (excluding administrative divisions and postal codes) may consist of multiple components, such as building name, street, and subunit (apartment). Web forms and written correspondence typically utilize multiple fields or lines to designate these components.

The findAddressCandidates operation supports three different address parameters which can be used to represent the different components of a street address: address, address2, address3. If you want to geocode the address Beetham Tower, 301 Deansgate, Suite 4208, Manchester, England using multiple input fields, you can set address=Beetham Tower, address2=301 Deansgate, and address3=Suite 4208. Note: The sourceCountry and countryCode parameters are similar but serve different purposes. The countryCode parameter defines the country value for a multifield geocode request.

The sourceCountry parameter defines the country value for a request regardless of whether it is a single-field or multifield request. If both countryCode and sourceCountry are included in a findAddressCandidates request, and the country values are different, the countryCode value takes priority over sourceCountry. CountryCode=USA magicKey The findAddressCandidates operation retrieves results quicker when you pass in valid singleLine and magicKey values than when you don't pass in magicKey.

However, to get these advantages, you need to make a prior request to, which provides a magicKey. This may or may not be relevant to your workflow.

The suggest operation is often called on to improve the user experience of search boxes by analyzing partial text and providing complete names of places, addresses, points of interest, and so on. For instance, typing Mbu into a search box offers Mbuji-Mayi, Democratic Republic of the Congo as a suggestion, so the user doesn't need to type the complete name. Looking at the suggestion process from another perspective, as the user types, the suggest operation performs a text search, which is a redundant part of the overall search that the findAddressCandidates operation can also perform. The user chooses a place-name or type—narrowing the results to a specific record. The results from suggest include text and magicKey values that contain the information the user chose; passing these values from suggest into findAddressCandidates results in faster and more accurate operations. In summary, using the magicKey parameter in findAddressCandidates is a two-step process:. Make a request to.

The response includes text and magicKey properties. Make a request to findAddressCandidates and pass in the text and magicKey values returned from suggest as the singleLine and magicKey input parameters, respectively. The magicKey parameter will not function correctly if passed alone. Both magicKey and singleLine must be included in a findAddressCandidates request so the output matches the selected suggestion. MagicKey=JS91CYhQDS5vDPhvSMyGZby0YFbaUDoaM5bHMoFF searchExtent A set of bounding box coordinates that limit the search area to a specific region. This is especially useful for applications in which a user will search for places and addresses within the current map extent.

You can specify the spatial reference of the searchExtent coordinates, which is necessary if the map spatial reference is different than that of the geocoding service; otherwise, the spatial reference of the coordinates is assumed to be the same as that of the geocoding service. The input can either be a comma-separated list of coordinates defining the bounding box or a. The spatial reference of the bounding box coordinates can be included if an envelope object is used. Example without a spatial reference. Category=Address,Postal outSR The spatial reference of the x/y coordinates returned by a geocode request.

This is useful for applications using a map with a spatial reference different than that of the geocode service. The spatial reference can be specified as either a well-known ID (WKID) or as a. If outSR is not specified, the spatial reference of the output locations is the same as that of the service.

The World Geocoding Service spatial reference is WGS84 (WKID = 4326). For a list of valid WKID values, see and.

Example (102100 is the WKID for the Web Mercator projection). OutSR=102100 outFields The list of fields to be returned within the attributes object of the response. Descriptions for each of these fields are available in the section of this document.

Batch Geocoding

The address, location (x/y coordinates of the match location), score, extent, and spatialReference objects are returned in the response by default. If the outFields parameter is excluded from the request, or if it is included but no fields are specified, then the attributes object in the corresponding response is blank. MaxLocations=10 forStorage Specifies whether the results of the operation will be persisted. The default value is false, which indicates the results of the operation can't be stored, but they can be temporarily displayed on a map for instance. If you store the results, in a database, for example, you need to set this parameter to true. Applications are contractually prohibited from storing the results of geocoding transactions unless they make the request by passing the forStorage parameter with a value of true and the token parameter with a valid ArcGIS Online token.

Instructions for composing a request with a valid token are provided in the. ArcGIS Online service credits are deducted from the organization account for each geocode transaction that includes the forStorage parameter with a value of true and a valid token. Refer to the for more information on how credits are charged. To learn more about free and paid geocoding operations, see. ForStorage=true matchOutOfRange A Boolean which specifies if StreetAddress matches should be returned even when the input house number is outside of the house number range defined for the input street.

Out-of-range matches have =StreetAddressExt. The geometry of such matches is a point corresponding to the end of the street segment where the range value is closest to the input house number. If matchOutOfRange is not specified in a request, its value is set to true by default. With matchOutOfRange, better spatial accuracy is provided for inexact street address searches. Most street segments are assigned house number ranges.

For example, 'Main Street' may include house numbers from 2–100 on one side of the street and 1–99 on the other. A user may search for a house number which is not within this range, such as '109 Main Street'. If matchOutOfRange=false is passed in this request, the geocode service will return a StreetName-level match to 'Main Street', with geometry corresponding to the centroid of a street segment which most closely matches the input values. StreetName matches can be ambiguous because there may be multiple street segments with the same name that equally match the input. However, if matchOutOfRange=true in this case, a more precise geometry is returned to the specific side of the segment of Main Street with house number range 1–99. MatchOutOfRange=false locationType Specifies if the output geometry of PointAddress matches should be the rooftop point or street entrance location.

Log In

Geocoding

Valid values are rooftop and street. The default value is street. Geocode results include one geometry object (the location object) which defines the location of the address, as well as two sets of X/Y coordinate values within the attributes object: /, and /. For geocode results with =PointAddress, the X/ Y attribute values describe the coordinates of the address along the street, while the DisplayX/ DisplayY values describe the rooftop, or building centroid, coordinates. By default the geometry returned for geocode results represents the street entrance location of the address.

This is useful for routing scenarios because the rooftop location of some addresses may be offset from a street by a large distance. However for map display purposes it may be desirable to show the rooftop location instead, especially when large buildings or landmarks are geocoded. For these cases the locationType parameter can be used to specify that the rooftop geometry should be returned.

LocationType=rooftop langCode Sets the language in which geocode results are returned. Addresses and places in many countries are available in more than one language; in these cases the langCode parameter can be used to specify which language should be used for results returned by the findAddressCandidates operation. This is useful for ensuring that results are returned in the expected language. For example, a web application could be designed to get the browser language and pass it as the langCode parameter value in a findAddressCandidates request. See the for valid language code values in each country.

The Supported Language Codes column provides the valid input values for the langCode parameter. Full language names cannot be used with the langCode parameter.

Only one language code value can be included for the langCode parameter in a findAddressCandidates request. The default language code for each country is the first one listed in the Supported Language Codes column, highlighted with bold text. It is the default language of results returned by the findAddressCandidates operation for a particular country.

For countries with multiple supported languages, the default language is the one spoken by the highest percentage of the country's population. For some countries, not all addresses and places are available in the default language. If the langCode parameter isn't included in a request, or if it is included but there are no matching features with the input language code, then the resultant match is returned in the country's default language code. Similarly, when there are multiple supported languages for a country, it doesn't mean that every address in the country is available in each of the languages. It may be the case that addresses are available in multiple languages for only one region of the country, or that each language is exclusive to a different region and there is no overlap at all. Examples:. Both English and French are listed as supported languages for Canada.

However, there is no overlap between the languages for any addresses in most provinces. In the province of Quebec, only French addresses are available, while English is the only language used for addresses in Ontario. In Belgium, where three languages are supported (Dutch, French, and German), addresses are available in the City of Brussels in both Dutch and French. However, in the majority of the country only a single language is used for addresses. In Greece there is complete address coverage in both Greek and transliterated Greek languages (Greek words translated with Latin characters).

Due to variability of language coverage, the following logic is used to handle the different scenarios that may be encountered. Scenario Result Example No langCode value is specified and only one language is supported for the matching record. Address is returned in the supported language Location in Geneva, Switzerland (only French addresses are supported) Address returned in French language No langCode value is specified and multiple languages are supported for the matching record. Address is returned in the country's default language Location in Brussels, Belgium (Dutch and French addresses are supported; Dutch is the default language) Address returned in Dutch language An invalid langCode value is specified and only one language is supported for the matching record.

Zip

Address is returned in the supported language Location in Geneva, Switzerland (only French addresses are supported), and langCode=zh Address returned in French language An invalid langCode is specified and multiple languages are supported for the matching record; the input langCode is a Latin-based script and a transliterated address exists at the location. Address is returned in the transliterated language Location in Athens, Greece (Greek and transliterated Greek are supported), and langCode=fr Transliterated address is returned An invalid langCode is specified and multiple languages are supported for the matching record; the input langCode is not a Latin-based script.

Address is returned in the country's default language Location in Athens, Greece (Greek and transliterated Greek are supported; Greek is the default language), and langCode=ru Address returned in Greek language Example. LangCode=fr sourceCountry Limits the candidates returned by the findAddressCandidates operation to the specified country or countries. For example, if sourceCountry=USA is included in the request, it is assumed that the address is in the United States, so only matching addresses in USA are returned. Using this parameter prevents potential unexpected results in other countries for ambiguous searches. Acceptable values include the ISO 3166-1 3-character country code. You can specify multiple country codes to limit results to more than one country.

A list of supported countries and codes is available in. SourceCountry=FRA,DEU,ESP Search for street addresses You can search for a street address, street name, or street intersection using the findAddressCandidates operation. For best results, you should include as much location information as possible in the search in addition to the street address.

Batch Geocoding

See for more information about obtaining optimal results for address searches. You can pass the address components in a single parameter or separated into multiple parameters. Examples of each are shown. Note that in each case the JSON response is the same for both the single and multiple parameter requests. Example: Find a street address (380 New York Street, Redlands, CA 92373) Single-field request URL. Note: The supported types are listed in this. As with street addresses, you can search for POIs with findAddressCandidates using the single field or multifield approach.

Single-field POI search To search for POIs with single-field search, use the singleLine parameter. In general, valid singleLine POI search strings can be formatted in variations of three basic structures:. Where. = A place-name, such as Disneyland, Starbucks, or Niagara Falls; or a type, such as amusement parks, waterfalls, or coffee shops.

= A postal code or administrative boundary—such as neighborhood, city, subregion, region, country, or any combination thereof— that provides a spatial boundary to the search. It can be included in the search to limit matching candidates but is not required. = in or at; this is not required for the search. = A street name, such as Main St, or a complete street address, such as 590 N Main St. Examples of valid singleLine search strings include the following: Business name searches. Starbucks San Diego. Starbucks in San Diego.

San Diego Starbucks. Starbucks 92101. Starbucks 5th Ave San Diego. Rueben H Fleet Science Center, 1875 El Prado, San Diego, CA, 92101, USA Type searches. coffee shops San Diego.

coffee shops in San Diego CA. San Diego coffee shops. coffee shops 92101.

coffee shops 5th Ave San Diego Multifield POI search When searching for POIs using multifield input, the name or type of the POI must be passed as the value for the address parameter. The zone information can be passed in the postal, neighborhood, city, subregion, region, and countryCode parameters. If searching for POI + address, the address should be passed as the value for the address2 parameter. General information It is important to note that instead of providing a zone, you can limit searches to a specific area by using the. You can also influence the sorting of match candidates according to their proximity to a location with the.

As with address searches, the quality of POI search results is dependent on the amount and quality of information in the search string. If you just search for hotels without qualifying information, such as zone, search extent, or location, your results will not be meaningful. Adding supplemental information to the search string—the more specific the better—will result in more accurate and relevant matches.

Note: There may be instances when searches yield unexpected results. For example, a search for New York pizza, where the expected results are pizzerias in New York City, may instead return a match to a restaurant named New York Pizza in Sacramento, California. This is because exact place-name matches are given higher priority to increase performance. If this occurs, you can obtain the desired results by modifying the search string—in this case, a search for pizza in NYC should yield the expected results. Note: The category parameter is only functional when used with the singleLine parameter. It does not work with the multifield parameters, specifically, the address, neighborhood, city, region, subregion, countryCode, and postal parameters.

For example, a user may search for June, expecting the service to match to June Mountain ski resort. However, there are many places in the world named June, so the search returns several cities named June. Example: Search for June without a category Request URL.

Reverse Geocoding Webservices 'Reverse Geocoding' is the process of finding an address, toponym or an other type of resource for a given lat/lng pair. GeoNames offers a wide range of reverse geocoding web services.: finds postal codes and place names for the given lat/lng within a given radius.: finds pouplated place names for the given lat/lng within a given radius.

Simlar to findNearby, but with filter for populated places.: finds any toponym for the given lat/lng within a given radius. Similar to findNearbyPlaceName, but without the filter for populated places.: most detailed information for toponym for the given lat/lng within a given radius (combination of 4 services).: finds wikipedia articles for the given lat/lng within a given radius.: finds the ISO country code for the given lat/lng.: finds the country and the administrative subdivison for the given lat/lng.: finds the ocean or sea for the given lat/lng.: finds the neighbourhood for the given lat/lng (US cities only).: finds weatherstations and most recent weather observations for the given lat/lng. US Street level reverse geocoding services:.: Finds the nearest street and address for a given lat/lng pair. (US only).: Finds the nearest street and the next crossing street for a given lat/lng pair.

(US only).: Finds the nearest street segments for a given lat/lng pair. (US only) Global Street level reverse geocoding services (cc by-sa license):.: Finds the nearest street and the next crossing street for a given lat/lng pair.: Finds the nearest street segments for a given lat/lng pair. Others:.: returns the timezone at the given lat/lng.: returns the Aster elevation (30mx30m).: returns the SRTM3 elevation (90mx90m).: return the GTOPO30 elevation (1Kmx1Km).: returns nearby points of interests (cc by-sa license).