ThinkGeo Cloud Reverse Geocoding

Quickly convert geographic coordinates into human-readable street addresses, get a list of nearby points of interest, or find the nearest place of any category, all with worldwide coverage.

Convert Coordinates to Addresses

Click on the map or enter a coordinate to find the best matching address and nearby points of interest.
Use ctrl + scroll to zoom the map

To access ThinkGeo Cloud Reverse Geocoding, you'll need a ThinkGeo account and a ThinkGeo Cloud API key which you'll use to authenticate your tile requests. Don't have a ThinkGeo account? Start building today and get a free 60-day evaluation of all ThinkGeo Cloud services, including Vector Tiles, Raster Tiles, Geocoding, Elevation and WMS.

Batch Reverse Geocoding

You can provide our cloud reverse geocoding API with a batch of up to 100 points at a time and receive back a list of possible address and point-of-interest matches in the same order.

Custom Projections Supported

You can pass in any arbitrary Proj4-formatted projection string or a spatial reference system ID in the ESRI or EPSG namespace to get geocoded coordinates back in any projection you like.

Nearby POIs (Point of interest)

Besides the addresses matching the input coordinates, the nearby POIs in a specific radius around the result address are returned.

Easy Access with Native Clients

Custom-designed API clients for the ThinkGeo Cloud make accessing all of our GIS web services a breeze. Choose from .NET or JavaScript, with more languages coming soon.


Design Features

Comprehensive, emphasis on details and worldwide coverage of cities and towns.

Source Data

Global Places With Street-level Details

Rich data sources. ThinkGeo Cloud Reverse Geocoding is based on open data projects, governments and private companies. Most of the data comes from OpenStreetMap and GeoNames.

Addresses, places, intersections and more. Results are categorized by type so you can specify which types of results you want to receive.

Proximity range. Specify a maximum radius for your reverse geocode results, or perform a query inside a specific polygonal area.

Mutiple languages supported. Using the language request parameter, you can get results back in your language of choice, with several options available.

Source Data


Why ThinkGeo Reverse Geocoding?

High Performance. API access supports hundreds of requests per minute.

Filter by Type. Filter results only to include the types of place you want, such as bar, restaurant, bus-stop, hospital and more.

Batch processing. Have a group of coordinates that need to be reverse geocoded? Submit them all in a single request and get addresses and POIs back in matching order.

Distance and direction. The distance and direction information between the search place and a specific nearby is included in the resultes.

Cloud-Based GIS Server

ThinkGeo Cloud can be accessed from anywhere using simple RESTful web requests, so you can serve up great looking maps, or provide routing or geocoding to a variety of client applications.
More Details Start Building

Always Online

No Infrastructure to Maintain

Simple Transaction Model


See How It Works

Seamlessly with iOS, Android, Web and desktop applications.

    <script src=""></script>
        var reverseGeocodingClient = new tg.ReverseGeocodingClient("YOUR-API-KEY");
        var point = [-115.689893,36.284432]
        var reverseGeocoding = reverseGeocodingClient.searchPlaceByPoint(point[1],point[0], function (status, data) {
        //output: {"data":{"bestMatchLocation":{"data":{"locationName":"Mount Charleston","locationCategory":"Boundary","distanceFromQueryFeature":0,"directionFromQueryFeature":"east","distanceFromQueryFeatureUnit":"Meter","locationPoint":{"pointX":-115.6427994,"pointY":36.257191},"id":182279252,"address":"Mount Charleston, Clark County, Nevada, United States of America","addressComponents":{},"optionalNames":{},"locationFeatureWellKnownText":"POLYGON((-115.696694 36.266989......} 


    using System;
    using ThinkGeo.Cloud;
    namespace ReverseGeocodingClient_Test
        class Program
            static void Main(string[] args)
                string clientId = "your client id";
                string clientSecret = "your client secret";
                string cloudServerUri = "";
                ThinkGeo.Cloud.ReverseGeocodingClient reverseGeocodingClient = new ThinkGeo.Cloud.ReverseGeocodingClient(clientId, clientSecret);
                reverseGeocodingClient.BaseUris.Add(new System.Uri(cloudServerUri));
                ThinkGeo.Cloud.ReverseGeocodingResult result = reverseGeocodingClient.SearchPoint(-96.804616, 33.120202,4326,200, ThinkGeo.MapSuite.Shapes.DistanceUnit.Meter);

                ThinkGeo.Cloud.ReverseGeocodingLocation bestMatchLocation = result.BestMatchLocation;
                System.Collections.ObjectModel.Collection<ThinkGeo.Cloud.ReverseGeocodingLocation> NearbyLocations = result.NearbyLocations;
                // do something


    import requests
    contents = requests.get(",-96.804616?apikey=Your-API-Key")


Ready to Get Started?

Ready to add ThinkGeo Cloud services to your project? Sign up for a free ThinkGeo account and get full access to all of these services free for 60 days.

Start Your Evaluation