Forward Geocode Example

This sample shows how to use the geocoding service API to find the location of an address and diplay it on the map.

Request
response
You haven't submitted a request yet. Click on the Submit button to try the API.
Submit the Form!
HTTP Response Status:200OK
<script>
  $(function(){
      var accessToken = '7fNWCXhqQ_OSyB4fd8C6539PYQ1G8YjdsOCoTtio';
      var gssMap = new gssmaps.GSSMap(accessToken, 'map');
      var latLngRegex = /^-?([0-8]?[0-9]|90)\.[0-9]{1,6},-?((1?[0-7]?|[0-9]?)[0-9]|180)\.[0-9]{1,6}$/;

      $('#submit').on('click', function(){
          if(!latLngRegex.test($('#lat').val() + "," + $('#lng').val())){
              $('#error_message').html('<div class="error_message">Please enter proper search center latitude and longitude.</font>');
              return false;
          }

          gssMap.removeAllMarkers();
          getForwardGeocode();
      });

      function getForwardGeocode(){
          var requestUrl = "https://apis.location.studio/geo/v2/search/json?type=address-only&search_center={lat},{lng}&query={query}&api_key={access_token}";

          requestUrl = requestUrl.replace('{access_token}', accessToken).replace('{lat}', $('#lat').val()).replace('{lng}', $('#lng').val()).replace('{query}',  $('#freeFormAddress').val());

          $.ajax({
              url: requestUrl,
              crossDomain: true,
              contentType: 'application/json',
              processData: false,
              success: function( data, textStatus, jQxhr ){

                 var str = JSON.stringify(data, undefined, 4);
                 $('#json_data').html(str);

                 if(data.places && data.places.length > 0){
                      showMarkers(data);
                 }

              },
              error: function( jqXhr, textStatus, errorThrown ){
                  console.log( errorThrown );
              }
          });
        }

      function showMarkers(data){
          var gssLatLngs = new Array();
          var marker;

          $.each(data.places, function(index, place){
              var location = place.location;
              marker = addMarker(location.coordinate.latitude, location.coordinate.longitude, place.location.formatted_address);
              gssLatLngs.push(marker.getLatLng());
          });

          if(gssLatLngs && gssLatLngs.length == 1){
              gssMap.setView(gssLatLngs[0], 17);
          } else {
              gssMap.fitBounds(gssLatLngs);
          }
      }

       function addMarker(lat, lng, popupContent){
          var gssLatLng = new gssmaps.GSSLatLng(lat, lng);
          var gssMarker = new gssmaps.GSSMarker(gssLatLng);
          return gssMap.addMarker(gssMarker, popupContent);
      }
      });
</script>