Skip to content

Geocoding API

POST Batch Geocode

Note

There is a batch limit of 100 locations at a time!

The batch geocoding service allows multiple locations to be geocoded at the same time.

Resource URL

https://www.mapquestapi.com/geocoding/v1/batch

Resource Information

Response FormatsJSON, XML, CSV
AuthenticationYes (Requires Key)
Rate LimitedYes

Request Parameters

Request ParameterDescriptionRequired
keyThe API Key, which is needed to make requests to MapQuest services.Yes
outFormatSpecifies the format of the response. Must be one of the following, if supplied:
  • json
  • xml
  • csv (character delimited)
Example: XML response
outFormat=xml
optional, defaults to json
callbackA JavaScript function name. The JSON-formatted response will be wrapped in a call to the supplied callback function name to provide JSONP functionality. This functionality might be needed to do cross-site scripting. See the Wikipedia.org entry for JSON for more details.

Example: Callback
callback=batchGeocodeResult
optional

Request Body

Request ParameterDescriptionRequired
locationsThe locations to geocode.

A limit of 100 locations exists for one call.

Example: Two Addresses

"locations": [{"city": "Denver", "state": "CO"},{ "city": "Boulder", "state": "CO"}]
Yes

Options Object

Request ParameterDescriptionRequired
boundingBoxWhen using batch geocoding or when ambiguous results are returned, any results within the provided bounding box will be moved to the top of the results list. Bounding box format is: upper left latitude, upper left longitude, lower right latitude, lower right longitude.

Example: Bounding Box

"boundingBox": {"ul": { "lng": -77.085411, "lat": 38.893276 }, "lr": { "lng": -77.071159, "lat": 38.848869 }}
optional
ignoreLatLngInputThis option tells the service whether it should fail when given a latitude/longitude pair in a batch geocode call, or if it should ignore that and try and geocode what it can.
  • true: The geocoder will ignore the LatLng specified in the location, and use the address info to perform geocode
  • false: The geocoder will return a geoaddress object containing the LatLng passed in and write a warning message to Info block
optional, defaults to false
thumbMapsThis parameter tells the service whether it should return a URL to a static map thumbnail image for a location being geocoded.
  • true: The response will include a URL to a static map image of the geocoded location.
  • false: The response will not include a static map image URL.
Example: Disable Static Map Response
"thumbMaps": false
optional, defaults to true
maxResultsThe max number of locations to return from the batch geocode

This option will only have an effect on the second location because it is ambiguous

Example: Five Results Max
"maxResults": 5
optional
delimiterSpecifies the delimiter used in the csv response
  • ,
  • |
  • :
  • ;
Example: Pipe Delimiter
"delimiter": "|"
optional, defaults to none, only in effect if outFormat=csv

Response Object

providedLocationThe provided location properties passed in the geocode request.
latLngReturns the latitude/longitude for routing and is the nearest point on a road for the entrance.
streetStreet address.
adminArea6Neighborhood name.
adminArea5City name.
adminArea4County name.
adminArea3State name.
adminArea1Country name.
postalCodePostal code.
typeType of location.
  • 's' = stop (default)
  • 'v' = via
dragPointIs location a drag point? This option only applies when making a dragroute call.
  • true = location is a drag point
  • false = location is not a drag point (default)
displayLatLngA lat/lng pair that can be helpful when showing this address as a Point of Interest.
geocodeQualityThe precision of the geocoded location.

Refer to the Geocode Quality reference page for more information.
geocodeQualityCodeThe five character quality code for the precision of the geocoded location.

Refer to the Geocode Quality reference page for more information.
linkIdString that identifies the closest road to the address for routing purposes.
sideOfStreetSpecifies the side of street.
  • 'L' = left
  • 'R' = right
  • 'M' = mixed
  • 'N' = none (default)
infoThis field contains information about the response.

The statuscode subfield is an integer return value. Refer to the status codes page for more details about our status codes and error messages.

The messages subfield is an array of error messages that describe the status

Example Request

POST https://www.mapquestapi.com/geocoding/v1/batch?key=KEY

Example Request Body

JSON
{
    "locations": [
        {
            "city": "Denver",
            "state": "CO"
        },
        {
            "city": "Boulder",
            "state": "CO"
        }
    ],
    "options": {
        "maxResults": -1,
        "thumbMaps": true,
        "ignoreLatLngInput": false
    }
}
XML
<batch>
    <locations>
       <location>
          <city>Denver</city>
          <state>CO</state>
       </location>
       <location>
          <city>Boulder</city>
          <state>CO</state>
       </location>
    </locations>
    <options>
        <thumbMaps>true</thumbMaps>
    </options>
</batch>

Example Response

JSON
{
  "info": {
    "statuscode": 0,
    "copyright": {
      "text": "© 2023 MapQuest, Inc.",
      "imageUrl": "https://api.mqcdn.com/res/mqlogo.gif",
      "imageAltText": "© 2023 MapQuest, Inc."
    },
    "messages": []
  },
  "options": {
    "maxResults": -1,
    "thumbMaps": true,
    "ignoreLatLngInput": false
  },
  "results": [
    {
      "providedLocation": {
        "city": "Denver",
        "state": "CO"
      },
      "locations": [
        {
          "street": "",
          "adminArea6": "",
          "adminArea6Type": "Neighborhood",
          "adminArea5": "Denver",
          "adminArea5Type": "City",
          "adminArea4": "Denver County",
          "adminArea4Type": "County",
          "adminArea3": "CO",
          "adminArea3Type": "State",
          "adminArea1": "US",
          "adminArea1Type": "Country",
          "postalCode": "",
          "geocodeQualityCode": "A5XAX",
          "geocodeQuality": "CITY",
          "dragPoint": false,
          "sideOfStreet": "N",
          "linkId": "282041090",
          "unknownInput": "",
          "type": "s",
          "latLng": {
            "lat": 39.738453,
            "lng": -104.984853
          },
          "displayLatLng": {
            "lat": 39.738453,
            "lng": -104.984853
          },
          "mapUrl": "https://www.mapquestapi.com/staticmap/v4/getmap?key=KEY&type=map&size=225,160&pois=purple-1,39.738453,-104.984853,0,0,|&center=39.738453,-104.984853&zoom=12&rand=-38639423"
        }
      ]
    },
    {
      "providedLocation": {
        "city": "Boulder",
        "state": "CO"
      },
      "locations": [
        {
          "street": "",
          "adminArea6": "",
          "adminArea6Type": "Neighborhood",
          "adminArea5": "Boulder",
          "adminArea5Type": "City",
          "adminArea4": "Boulder County",
          "adminArea4Type": "County",
          "adminArea3": "CO",
          "adminArea3Type": "State",
          "adminArea1": "US",
          "adminArea1Type": "Country",
          "postalCode": "",
          "geocodeQualityCode": "A5XAX",
          "geocodeQuality": "CITY",
          "dragPoint": false,
          "sideOfStreet": "N",
          "linkId": "282039983",
          "unknownInput": "",
          "type": "s",
          "latLng": {
            "lat": 40.015831,
            "lng": -105.27927
          },
          "displayLatLng": {
            "lat": 40.015831,
            "lng": -105.27927
          },
          "mapUrl": "https://www.mapquestapi.com/staticmap/v4/getmap?key=KEY&type=map&size=225,160&pois=purple-1,40.015831,-105.27927,0,0,|&center=40.015831,-105.27927&zoom=12&rand=824515020"
        }
      ]
    }
  ]
}
XML
<?xml version='1.0' encoding='utf-8'?>
<response>
    <info>
        <statusCode>0</statusCode>
        <messages />
        <copyright>
            <imageUrl>https://api.mqcdn.com/res/mqlogo.gif</imageUrl>
            <imageAltText>&#169; 2023 MapQuest, Inc.</imageAltText>
            <text>&#169; 2023 MapQuest, Inc.</text>
        </copyright>
    </info>
    <results>
        <result>
            <providedLocation>
                <state>CO</state>
                <city>Denver</city>
            </providedLocation>
            <locations>
                <location>
                    <street />
                    <adminArea6 type='Neighborhood' />
                    <adminArea5 type='City'>Denver</adminArea5>
                    <adminArea3 type='State'>CO</adminArea3>
                    <adminArea4 type='County'>Denver County</adminArea4>
                    <postalCode />
                    <adminArea1 type='Country'>US</adminArea1>
                    <geocodeQuality>CITY</geocodeQuality>
                    <geocodeQualityCode>A5XAX</geocodeQualityCode>
                    <dragPoint>false</dragPoint>
                    <sideOfStreet>N</sideOfStreet>
                    <displayLatLng>
                        <latLng>
                            <lat>39.738453</lat>
                            <lng>-104.984853</lng>
                        </latLng>
                    </displayLatLng>
                    <linkId>282041090</linkId>
                    <unknownInput />
                    <type>s</type>
                    <latLng>
                        <lat>39.738453</lat>
                        <lng>-104.984853</lng>
                    </latLng>
                    <mapUrl>
                        <![CDATA[https://www.mapquestapi.com/staticmap/v4/getmap?key=KEY&type=map&size=225,160&pois=purple-1,39.738453,-104.984853,0,0,|&center=39.738453,-104.984853&zoom=12&rand=127546831]]>
                    </mapUrl>
                </location>
            </locations>
        </result>
        <result>
            <providedLocation>
                <state>CO</state>
                <city>Boulder</city>
            </providedLocation>
            <locations>
                <location>
                    <street />
                    <adminArea6 type='Neighborhood' />
                    <adminArea5 type='City'>Boulder</adminArea5>
                    <adminArea3 type='State'>CO</adminArea3>
                    <adminArea4 type='County'>Boulder County</adminArea4>
                    <postalCode />
                    <adminArea1 type='Country'>US</adminArea1>
                    <geocodeQuality>CITY</geocodeQuality>
                    <geocodeQualityCode>A5XAX</geocodeQualityCode>
                    <dragPoint>false</dragPoint>
                    <sideOfStreet>N</sideOfStreet>
                    <displayLatLng>
                        <latLng>
                            <lat>40.015831</lat>
                            <lng>-105.27927</lng>
                        </latLng>
                    </displayLatLng>
                    <linkId>282039983</linkId>
                    <unknownInput />
                    <type>s</type>
                    <latLng>
                        <lat>40.015831</lat>
                        <lng>-105.27927</lng>
                    </latLng>
                    <mapUrl>
                        <![CDATA[https://www.mapquestapi.com/staticmap/v4/getmap?key=KEY&type=map&size=225,160&pois=purple-1,40.015831,-105.27927,0,0,|&center=40.015831,-105.27927&zoom=12&rand=-1187015564]]>
                    </mapUrl>
                </location>
            </locations>
        </result>
    </results>
    <options>
        <maxResults>-1</maxResults>
        <thumbMaps>true</thumbMaps>
        <ignoreLatLngInput>false</ignoreLatLngInput>
        <boundingBox />
    </options>
</response>
CSV
"Country","State","County","City","PostalCode","Street","Lat","Lng","DragPoint","LinkId","Type","GeocodeQualityCode","GeocodeQuality","SideOfStreet","DisplayLat","DisplayLng"
"US","CO","Denver County","Denver","","","39.738453","-104.984853","false","282041090","s","A5XAX","CITY","N","39.738453","-104.984853"
"US","CO","Boulder County","Boulder","","","40.015831","-105.27927","false","282039983","s","A5XAX","CITY","N","40.015831","-105.27927