Directions API
GET Route
Resource URL
Resource Information
Response Formats | JSON, XML |
Authentication | Yes (Requires Key) |
Rate Limited | Yes |
Request Parameters
Request Parameter | Description | Required |
---|---|---|
key String | The API Key, which is needed to make requests to MapQuest services. | Yes |
from Location | When the input format is key/value pairs, the starting location of a Route Request. Exactly one from parameter is allowed. This is used for single-line addresses only.Refer to the Locations documentation on how to properly form locations in all formats, including JSON and XML. | Yes |
to Location | When the input format is key/value pairs, the ending location(s) of a Route Request. More than one to parameter may be supplied. This is used for single-line addresses only. Refer to the Locations documentation on how to properly form locations in all formats, including JSON and XML. | Yes |
ambiguities String | Use this parameter to set the strategy for resolving ambiguous location names.
ignore | No |
outFormat | Specifies the format of the response. Must be one of the following, if supplied:
json | No |
callback | A 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. | No |
Advanced Parameters
TIP
These parameters might not be saved in the sessionId, so if you retrieve the saved request later (by supplying the sessionId parameter described above), you will have to ensure that you can recreate the parameters as needed.
Request Parameter | Description | Required |
---|---|---|
unit String | Specifies the type of units to use when calculating distance. Acceptable values are:
m | No |
routeType String | Specifies the type of route wanted. Acceptable values are:
Default: fastest | No |
avoidTimedConditions Boolean | Avoid Timed Conditions option. Avoids using timed conditions such as Timed Turn Restrictions, Timed Access Roads, HOV Roads, and Seasonal Closures. Please Note: This flag should NOT be used if the Date/Time Routing Options are used.
false | No |
doReverseGeocode Boolean | If this flag is set, no reverse geocoding will be done on input locations.
true | No |
narrativeType String | Specifies the type of narrative to generate.
text | No |
enhancedNarrative Boolean | Enhanced Narrative Option. This option will generate an enhanced narrative for Route & Alternate Route Services. This will encompass Intersection Counts, Previous Intersection, and Next Intersection/Gone Too Far advice.
false Note: In order to view the proper maneuver note styles, the narrativeType needs to be set to microformat . Microformat uses HTML span tags with class attributes to allow parts of the narrative to be easily styled via CSS. Read more. | No |
maxLinkId Integer | The maximum number of Link IDs to return for each maneuver. If zero, no link ID data is returned. Default: 0 | No |
locale String | Examples of commonly used locale parameter values. Input can be any supported ISO 639-1 code.
Default : en_US | No |
avoids String collection | Attribute flags of roads to try to avoid. The available attribute flags depend on the data set. This does not guarantee roads with these attributes will be avoided if alternate route paths are too lengthy, or not possible, or roads that contain these attributes are very short. Available choices:
| No |
disallows String collection | Attribute flags of roads to disallow. The available attribute flags depend on the data set. This guarantees roads with these attributes will not be allowed as part of the route. Available choices:
| No |
prefers String collection | Attribute flags of roads to try to prefer. The available attribute flags depend on the data set. Available choices:
| No |
mustAvoidLinkIds Integer Collection | Link IDs of roads to absolutely avoid. May cause some routes to fail. Multiple Link IDs should be comma-separated. | No |
tryAvoidLinkIds Integer Collection | Link IDs of roads to try to avoid during route calculation. Does not guarantee these roads will be avoided if alternate route paths are too lengthy or not possible. Multiple Link IDs should be comma-separated. | No |
stateBoundaryDisplay Boolean | State boundary display option.
| No |
countryBoundaryDisplay Boolean | Country boundary display option
| No |
sideOfStreetDisplay Boolean | Side of street display option
| No |
destinationManeuverDisplay Boolean | The "End at" destination maneuver display option.
| No |
fullShape Boolean | Returns all shapes (no generalization or clipping). This option overrides any mapState or generalize options.
Default: false | No |
shapeFormat String | This option applies to both input and output (raw, cmp, cmp6) and overrides inShapeFormat and outShapeFormat. Shape format options.
| No |
inShapeFormat String | Input shape format options.
See the Compressed Lat/Lng description page for more detail, including sample source code and an interactive encoder/decoder. | No |
outShapeFormat String | Output shape format options.
See the Compressed Lat/Lng description page for more detail, including sample source code and an interactive encoder/decoder. | No |
generalize Integer | If there is no mapState and fullShape = false , then the specified generalization factor will be used to generalize the shape.If the generalize parameter is 0 , then no shape simplification will be done and all shape points will be returned.If the generalize parameter is > 0 , it will be used as the tolerance distance (in meters) in the Douglas-Peucker Algorithm for line simplification.Higher values of generalize will result in fewer points in the final route shape. | No |
cyclingRoadFactor Double | Sets the cycling road favoring factor. A value of < 1 favors cycling on non-bike lane roads. Values are clamped to the range 0.1 to 100.0. Default: 1.0 | No |
roadGradeStrategy String | Specifies the road grade avoidance strategies to be used for each leg. This parameter is only for bicycle routes.
DEFAULT_STRATEGY | No |
drivingStyle Integer or String | Driving style to be used when calculating fuel usage.
| No |
highwayEfficiency Double | This is the fuel efficiency of your vehicle, given as miles per gallon (mpg). Valid range is 0 - 235 mpg. If a value is entered that is less than the minimum range, then 0 will be used. If a value is entered that is greater than the maximum range, then 235 will be used. | No |
manMaps Boolean | Maneuver maps display option.
true | No |
walkingSpeed Double | This is the speed (in miles per hour as default and it does adhere to the unit specifier) allowed for the pedestrian routeType. This is used for computing expected route times for walking routes. The default is 2.5 miles per hour . | No |
tollCost Boolean | Explicitly returns the route summary toll cost when at least one leg includes a toll fee. This is the aggregate projected cost of the entire route. This cost is in USD and is generated based on a typical 2 axle vehicle.
Defaulted to false . | No |
Advanced Routing Parameters
The following table describes the advanced parameters which can be used to make a Route request. These parameters would not be put inside an options
object.
Name | Description |
---|---|
sessionId String | A unique identifier used to refer to a session. An existing session ID will be used if provided, otherwise a new one will be created. The route stored in the session will be automatically updated if the session ID is provided. Expires after 30 minutes. This parameter is required for the Route Shape requests, but is optional for other requests. |
mapState object
A mapState
object, to which route shape information (if returned) will be mapped. Contains the basic information necessary to draw a map.
This parameter must contain the following information:
- width (pixels)
- height (pixels)
- center (lat/lng of map center)
- scale (map scale)
Note: Only the width and height are required for Route, Optimized Route and Drag Route. All parameters are required for Route Shape. No parameters are required for RouteMatrix.
mapState (with width and height only): Specifying just width and height will result in shape points being generalized with an optimal tolerance based on the bestFit recommended zoom level. This option can be used to retrieve a route with shape optimized for the best fit center and zoom level to fit the route.
mapState (full): If a complete mapState
is provided with center, width, height, and scale, the route shape will be clipped and generalized to the provided mapState
. Note: There is no guarantee the route shape will be contained within the mapState
(resulting in no shape points being returned). This option should only be used if the current map will not be changed due to the new route.
To describe a mapState
object using key/value pair input, supply the following query parameters:
- mapWidth
- mapHeight
- center (lat/lng of map center)
- scale (map scale)
- mapScale or mapZoom - The scale factor of the map. If
mapZoom
is provided, it will override the value ofmapScale
. See Zoom to Scale Mapping for information on scales versus zoom levels. - mapLat
- mapLng
mapLat
and mapLng
represent the latitude and longitude of the center of the map.
Specifying Locations
A route request needs to contain a minimum of two locations, a start and end location. A route request given in key/value pair format needs from=
and to=
parameters with single-line addresses. JSON and XML use two or more Location objects, which are the same across all the services. Refer to the Locations documentation on how to properly form locations in all formats.
All route calls also have a validity check to prevent routes from becoming excessively long. This check uses a straight line (as the crow flies) distance between successive locations. The check adds the distance from location 0 to location 1, plus location 1 to location 2, etc. If this distance becomes more than 8000 miles, the service should return an Invalid Location result code with a message: "Exceeded maximum gross distance for locations."
Date/Time Routing & Traffic-Influenced Routing
This is an extension of the Advanced Routing Options that allows the user to specify a date and time when generating their route. Date/Time routing options have an effect on routes that contain roads where all lanes are HOV at specific times, timed-turned restrictions, and seasonal or specific day of the week closures.
We provide Traffic Influenced Routing by using the useTraffic
option. This option uses historical and realtime traffic speeds (depending on route time and availability of data) to influence the route.
To learn more about this feature, refer to the Date/Time Routing Documentation.
Route Control Points
This is another extension of the Advanced Routing Options that allows the user to influence a regular route using a collection of route control points. To learn more about this feature, refer to the Route Control Points Documentation.
Response
Response Field | Description |
---|---|
bestFit | If a mapState is set, the directions service will compute and return new scale, zoom level, and center values that "best fit" the route shape. The best fit response will contain the original mapState height, width and scale as well as a new scale, new center and new level/zoom. It will use original mapState to calculate the new scale, new center and new level/zoom. |
hasTollRoad | A route attribute flag that is set per route and per leg. Per route, it returns true if at least one leg contains a Toll Road attribute, otherwise it returns false. Per leg, it returns true if at least one maneuver contains a Toll Road attribute, otherwise it returns false. |
hasFerry | A route attribute flag that is set per route and per leg. Per route, it returns true if at least one leg contains a Ferry attribute, otherwise it returns false. Per leg, it returns true if at least one maneuver contains a Ferry attribute, otherwise it returns false. |
hasHighway | A route attribute flag that is set per route and per leg. Per route, it returns true if at least one leg contains a Limited Access/Highway attribute, otherwise it returns false. Per leg, it returns true if at least one maneuver contains a Limited Access/Highway attribute, otherwise it returns false. |
hasSeasonalClosure | A route attribute flag that is set per route and per leg. Per route, it returns true if at least one leg contains a Seasonal Closure attribute, otherwise it returns false. Per leg, it returns true if at least one maneuver contains a Seasonal Closure attribute, otherwise it returns false. |
hasUnpaved | A route attribute flag that is set per route and per leg. Per route, it returns true if at least one leg contains an Unpaved attribute, otherwise it returns false. Per leg, it returns true if at least one maneuver contains an Unpaved attribute, otherwise it returns false. |
hasCountryCross | A route attribute flag that is set per route and per leg. Per route, it returns true if at least one leg contains a Country Crossing attribute, otherwise it returns false. Per leg, it returns true if at least one maneuver contains a Country Crossing attribute, otherwise it returns false. |
boundingBox | Returns lat/lng bounding rectangle of all points in the latlng collection; Returns the best-fit for route shape.
|
time | Returns the calculated elapsed time in seconds for the route. |
realTime | Returns the estimated route time in seconds over the route path using current traffic conditions and speeds (where available) along with historical traffic conditions. On longer routes, real-time conditions are only applied to the beginning of the route and historical conditions are used afterwards. The realTime estimate can produce a shorter time than the standard route time when traffic conditions reflect higher speeds than the speed limit. Also, real-time speeds are not available on all roads and as such may not always reflect true conditions. The realTime estimate is most useful on short routes where current conditions produce a higher percentage impact to the total route time. If any road along the route path is currently closed, the time will be greater than 10000000 (an absurdly long time for a route). |
formattedTime | Returns the calculated elapsed time as formatted text in HH:MM:SS format. |
distance | Returns the calculated distance of the route. |
fuelUsed | The estimated amount of fuel used during the route. |
legs | A collection of leg objects, one for each "leg" of the route. |
leg | Describes one "leg" of a route. It contains the maneuvers describing how to get from one location to the next location. Each leg will contain a variety of information, including index , time , distance , and formattedTime . |
Collapsed Narrative Parameters | The origin parameters are used if the user is familiar with the area and wants to collapse/hide the first few steps of the Route Narrative. The destination parameters are used if the user is familiar with the area and wants to collapse/hide the last few steps of the Route Narrative. Please note that this is currently only in the json response, not xml. An example of this is displayed on www.mapquest.com. See/Click the "I know the area, hide the first few steps" or "I know the area, hide the last few steps".
|
maneuvers | A collection of Maneuver objects. |
maneuver | Describes one step in a route narrative. Contains narrative, street names, m_shape, linkIds, route type, turnType, m_distance, m_time, direction, attributes, signs. See descriptions below. |
signs | Returns text name, extra text, type (road shield), and direction present for a particular maneuver. Also returns the URLs for the sign images. |
mapUrl | Returns a URL to a static map of this maneuver. |
narrative | Returns textual driving directions for a particular maneuver. |
maneuverNotes | A collection of maneuverNote objects, one for each maneuver. Note: In order to view the proper maneuver note styles, the narrativeType needs to be set to microformat . Microformat uses HTML span tags with class attributes to allow parts of the narrative to be easily styled via CSS. Read more. |
ruleId | A unique ID that is assigned to a particular maneuver note. This rule ID is used to determine the order that the maneuver notes will be displayed in the narrative. When enhancedNarrative=true , the possible return values are:
enhancedNarrative=false , the possible return values are:
|
manNote | Returns the maneuver note for a particular maneuver. Maneuver notes can exist for Timed Turn Restrictions, Timed Access Roads, HOV Roads, Seasonal Closures, and Timed Direction of Travel. Please Note: When the enhancedNarrative flag is set to true, additional maneuver notes may be displayed (see Route Option: enhancedNarrative). |
manNoteType | Used to specify the type of maneuver note. Possible return values are:
|
direction | Returns the direction associated to a particular maneuver. Possible return values are:
|
streets | Returns the collection of street names this maneuver applies to. |
attributes | Returns the attributes associated to a particular maneuver. Possible return values are:
|
turnType | Returns the turn type associated to a particular maneuver. Possible return values are:
|
startPoint | Returns the 1st shape point latLng for a particular maneuver. This will allow for zoomed street functionality for a maneuver. |
location | Returns a collection of locations in the form of an address. See the Specifying locations as JSON/XML section for more detail on the format of a Location object. |
sessionId | Returns a unique identifier used to refer to a session. An existing session id will be used if provided, otherwise a new one will be created. The route stored in the session will be automatically updated if the session id is provided. Expires after 30 minutes. |
mapState | Used to get the route shape from a session. |
shapeFormat | The shape format options:
|
shape | A collection of latitude/longitude coordinates or shape points for the entire route highlight based on the original mapState and/or the generalize option. Shape is an alternated array of lat/lngs. Evens are latitudes and odds are longitudes.Also included will be:
|
legIndexes | Returns an array of the shape point index for each specific route segment. The shape point index of the end of the segment is legIndex-1 of the next legIndex. Note that there is always one extra legIndex (the number of legIndexes = number of legs + 1) to account for the last shape point of the final segment. |
maneuverIndexes | Returns an array of the starting index for each maneuver. |
shapePoints | Shape points for the route (clipped and generalized) will be returned if mapState is given. Shape points is an alternated array of lat/lngs. Evens are latitudes and odds are longitudes. The index of a specific shape point is i/2. |
options | Returns route options. |
avoids | Attribute flags of roads to try to avoid. The available attribute flags depend on the data set. This does not guarantee roads with these attributes will be avoided if alternate route paths are too lengthy or not possible or roads that contain these attributes are very short. |
mustAvoidLinkIds | Returns link Ids of roads that will be absolutely avoided. May cause some routes to fail. |
tryAvoidLinkIds | Returns link Ids of roads that we will try to avoid during route calculation. Does not guarantee these roads will be avoided if alternate route paths are too lengthy or not possible. |
routeType | Returns the route type. |
locale | Returns the locale. |
unit | Specifies the type of units to use when calculating distance. |
info | This field contains information about the response. The statuscode subfield is an integer return value. See the Status Codes page for more details on our status codes and error messages.The messages subfield is an array of error messages which describe the status. |
transportMode | This is a string indicating the mode of transportation used for the maneuver. Values include:
|
filterZoneFactor | This is returned in the response as part of the options and represents an internal route options used in alternate routes. It cannot be set as an input by the application but can be used to differentiate 2 alternate route results. |
tollCost | This is the aggregate projected cost of Tolls for the entire route. This cost is in USD and is generated based on a typical 2 axle vehicle. It does not include any transponder discounts.
|
Example Request
Example Response
{
"route": {
"hasTollRoad": false,
"computedWaypoints": [],
"fuelUsed": 0.23,
"hasUnpaved": false,
"hasHighway": false,
"realTime": 653,
"boundingBox": {
"ul": {
"lng": -77.089424,
"lat": 38.893276
},
"lr": {
"lng": -77.077087,
"lat": 38.848926
}
},
"distance": 3.693,
"time": 501,
"locationSequence": [
0,
1
],
"hasSeasonalClosure": false,
"sessionId": "55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"locations": [
{
"latLng": {
"lng": -77.077959,
"lat": 38.893165
},
"adminArea4": "Arlington",
"adminArea5Type": "City",
"adminArea4Type": "County",
"adminArea5": "Arlington",
"street": "[1700 - 1720] Clarendon Blvd",
"adminArea1": "US",
"adminArea3": "VA",
"type": "s",
"displayLatLng": {
"lng": -77.077957,
"lat": 38.893165
},
"linkId": 13257655,
"postalCode": "22209-2713",
"sideOfStreet": "L",
"dragPoint": false,
"adminArea1Type": "Country",
"geocodeQuality": "STREET",
"geocodeQualityCode": "B1AAA",
"adminArea3Type": "State"
},
{
"latLng": {
"lng": -77.081229,
"lat": 38.848932
},
"adminArea4": "Arlington",
"adminArea5Type": "City",
"adminArea4Type": "County",
"adminArea5": "Arlington",
"street": "2400 S Glebe Rd",
"adminArea1": "US",
"adminArea3": "VA",
"type": "s",
"displayLatLng": {
"lng": -77.08123,
"lat": 38.84893
},
"linkId": 14874674,
"postalCode": "22206-2500",
"sideOfStreet": "R",
"dragPoint": false,
"adminArea1Type": "Country",
"geocodeQuality": "POINT",
"geocodeQualityCode": "P1AAA",
"adminArea3Type": "State"
}
],
"hasCountryCross": false,
"legs": [
{
"hasTollRoad": false,
"index": 0,
"roadGradeStrategy": [
[]
],
"hasHighway": false,
"hasUnpaved": false,
"distance": 3.693,
"time": 501,
"origIndex": 3,
"hasSeasonalClosure": false,
"origNarrative": "Go south on Arlington Blvd/US-50 W.",
"hasCountryCross": false,
"formattedTime": "00:08:21",
"destNarrative": "Proceed to 2400 S GLEBE RD.",
"destIndex": 5,
"maneuvers": [
{
"signs": [],
"index": 0,
"maneuverNotes": [],
"direction": 8,
"narrative": "Start out going east on Clarendon Blvd toward N Queen St.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/icon-dirs-start_sm.gif",
"distance": 0.031,
"time": 6,
"linkIds": [],
"streets": [
"Clarendon Blvd"
],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:00:06",
"directionName": "East",
"mapUrl": "https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-1,38.893164999999996,-77.077957,0,0|purple-2,38.893276,-77.077407,0,0|¢er=38.8932205,-77.077682&zoom=15&rand=-1645843521&session=55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"startPoint": {
"lng": -77.077957,
"lat": 38.893165
},
"turnType": 2
},
{
"signs": [],
"index": 1,
"maneuverNotes": [],
"direction": 4,
"narrative": "Turn right onto N Queen St.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/rs_right_sm.gif",
"distance": 0.168,
"time": 32,
"linkIds": [],
"streets": [
"N Queen St"
],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:00:32",
"directionName": "South",
"mapUrl": "https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-2,38.893276,-77.077407,0,0|purple-3,38.890857,-77.07708699999999,0,0|¢er=38.8920665,-77.077247&zoom=12&rand=-1645843521&session=55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"startPoint": {
"lng": -77.077407,
"lat": 38.893276
},
"turnType": 2
},
{
"signs": [],
"index": 2,
"maneuverNotes": [],
"direction": 7,
"narrative": "Turn right onto 14th St N.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/rs_right_sm.gif",
"distance": 0.003,
"time": 5,
"linkIds": [],
"streets": [
"14th St N"
],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:00:05",
"directionName": "West",
"mapUrl": "https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-3,38.890857,-77.07708699999999,0,0|purple-4,38.890842,-77.077148,0,0|¢er=38.8908495,-77.07711749999999&zoom=15&rand=-1646228270&session=55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"startPoint": {
"lng": -77.077087,
"lat": 38.890857
},
"turnType": 2
},
{
"signs": [
{
"text": "50",
"extraText": "",
"direction": 7,
"type": 2,
"url": "http://icons.mqcdn.com/icons/rs2.png?n=50&d=WEST"
}
],
"index": 3,
"maneuverNotes": [],
"direction": 4,
"narrative": "Merge onto Arlington Blvd/US-50 W via the ramp on the left.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/rs_merge_left_sm.gif",
"distance": 1.606,
"time": 151,
"linkIds": [],
"streets": [
"Arlington Blvd",
"US-50 W"
],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:02:31",
"directionName": "South",
"mapUrl": "https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-4,38.890842,-77.077148,0,0|purple-5,38.87355,-77.089424,0,0|¢er=38.882196,-77.08328599999999&zoom=9&rand=-1646228270&session=55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"startPoint": {
"lng": -77.077148,
"lat": 38.890842
},
"turnType": 11
},
{
"signs": [],
"index": 4,
"maneuverNotes": [],
"direction": 4,
"narrative": "Turn left onto N Fillmore St.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/rs_left_sm.gif",
"distance": 0.408,
"time": 74,
"linkIds": [],
"streets": [
"N Fillmore St"
],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:01:14",
"directionName": "South",
"mapUrl": "https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-5,38.87355,-77.089424,0,0|purple-6,38.867782,-77.08811899999999,0,0|¢er=38.870666,-77.0887715&zoom=10&rand=-1646228270&session=55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"startPoint": {
"lng": -77.089424,
"lat": 38.87355
},
"turnType": 6
},
{
"signs": [],
"index": 5,
"maneuverNotes": [],
"direction": 4,
"narrative": "Stay straight to go onto S Walter Reed Dr.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/rs_straight_sm.gif",
"distance": 0.884,
"time": 149,
"linkIds": [],
"streets": [
"S Walter Reed Dr"
],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:02:29",
"directionName": "South",
"mapUrl": "https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-6,38.867782,-77.08811899999999,0,0|purple-7,38.855185999999996,-77.088584,0,0|¢er=38.861484,-77.08835149999999&zoom=9&rand=-1646228270&session=55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"startPoint": {
"lng": -77.088119,
"lat": 38.867782
},
"turnType": 0
},
{
"signs": [
{
"text": "120",
"extraText": "",
"direction": 0,
"type": 545,
"url": "http://icons.mqcdn.com/icons/rs545.png?n=120"
}
],
"index": 6,
"maneuverNotes": [],
"direction": 5,
"narrative": "Turn slight left onto S Glebe Rd/VA-120.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/rs_slight_left_sm.gif",
"distance": 0.593,
"time": 84,
"linkIds": [],
"streets": [
"S Glebe Rd",
"VA-120"
],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:01:24",
"directionName": "Southeast",
"mapUrl": "https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-7,38.855185999999996,-77.088584,0,0|purple-8,38.848926,-77.08122999999999,0,0|¢er=38.852056,-77.08490699999999&zoom=10&rand=-1646228270&session=55e60cd9-00b6-001a-02b7-20ac-00163e7dd551",
"startPoint": {
"lng": -77.088584,
"lat": 38.855186
},
"turnType": 7
},
{
"signs": [],
"index": 7,
"maneuverNotes": [],
"direction": 0,
"narrative": "2400 S GLEBE RD is on the right.",
"iconUrl": "https://content.mapquest.com/mqsite/turnsigns/icon-dirs-end_sm.gif",
"distance": 0,
"time": 0,
"linkIds": [],
"streets": [],
"attributes": 0,
"transportMode": "AUTO",
"formattedTime": "00:00:00",
"directionName": "",
"startPoint": {
"lng": -77.08123,
"lat": 38.848926
},
"turnType": -1
}
],
"hasFerry": false
}
],
"formattedTime": "00:08:21",
"routeError": {
"message": "",
"errorCode": -400
},
"options": {
"mustAvoidLinkIds": [],
"drivingStyle": 2,
"countryBoundaryDisplay": true,
"generalize": -1,
"narrativeType": "text",
"locale": "en_US",
"avoidTimedConditions": false,
"destinationManeuverDisplay": true,
"enhancedNarrative": false,
"filterZoneFactor": -1,
"timeType": 0,
"maxWalkingDistance": -1,
"routeType": "FASTEST",
"transferPenalty": -1,
"stateBoundaryDisplay": true,
"walkingSpeed": -1,
"maxLinkId": 0,
"arteryWeights": [],
"tryAvoidLinkIds": [],
"unit": "M",
"routeNumber": 0,
"shapeFormat": "raw",
"maneuverPenalty": -1,
"useTraffic": false,
"returnLinkDirections": false,
"avoidTripIds": [],
"manmaps": "true",
"highwayEfficiency": 22,
"sideOfStreetDisplay": true,
"cyclingRoadFactor": 1,
"urbanAvoidFactor": -1
},
"hasFerry": false
},
"info": {
"copyright": {
"text": "© 2023 MapQuest, Inc.",
"imageUrl": "https://api.mqcdn.com/res/mqlogo.gif",
"imageAltText": "© 2023 MapQuest, Inc."
},
"statuscode": 0,
"messages": []
}
}
<response>
<info>
<statusCode>0</statusCode>
<messages/>
<copyright>
<imageUrl>https://api.mqcdn.com/res/mqlogo.gif</imageUrl>
<imageAltText>© 2023 MapQuest, Inc.</imageAltText>
<text>© 2023 MapQuest, Inc.</text>
</copyright>
</info>
<routeError>
<errorCode>-400</errorCode>
<message/>
</routeError>
<route>
<sessionId>55e60e61-02c8-001d-02b7-42c0-00163e1df8e2</sessionId>
<options>
<shapeFormat>raw</shapeFormat>
<generalize>-1.0</generalize>
<maxLinkId>0</maxLinkId>
<narrativeType>text</narrativeType>
<stateBoundaryDisplay>true</stateBoundaryDisplay>
<countryBoundaryDisplay>true</countryBoundaryDisplay>
<sideOfStreetDisplay>true</sideOfStreetDisplay>
<destinationManeuverDisplay>true</destinationManeuverDisplay>
<avoidTimedConditions>false</avoidTimedConditions>
<enhancedNarrative>false</enhancedNarrative>
<returnLinkDirections>false</returnLinkDirections>
<timeType>0</timeType>
<routeType>FASTEST</routeType>
<locale>en_US</locale>
<unit>M</unit>
<tryAvoidLinkIds/>
<mustAvoidLinkIds/>
<manmaps>true</manmaps>
<drivingStyle>2</drivingStyle>
<highwayEfficiency>22.0</highwayEfficiency>
<useTraffic>false</useTraffic>
</options>
<boundingBox>
<ul>
<lat>38.893276</lat>
<lng>-77.089424</lng>
</ul>
<lr>
<lat>38.848926</lat>
<lng>-77.077087</lng>
</lr>
</boundingBox>
<distance>3.693</distance>
<time>501</time>
<realTime>557</realTime>
<fuelUsed>0.23</fuelUsed>
<formattedTime>00:08:21</formattedTime>
<legs>
<leg>
<distance>3.693</distance>
<time>501</time>
<formattedTime>00:08:21</formattedTime>
<index>0</index>
<maneuvers>
<maneuver>
<startPoint>
<lat>38.8932</lat>
<lng>-77.078</lng>
</startPoint>
<maneuverNotes/>
<distance>0.031</distance>
<time>6</time>
<formattedTime>00:00:06</formattedTime>
<attributes>0</attributes>
<turnType>2</turnType>
<direction>8</direction>
<narrative>
Start out going east on Clarendon Blvd toward N Queen St.
</narrative>
<directionName>East</directionName>
<index>0</index>
<streets>
<street>Clarendon Blvd</street>
</streets>
<signs/>
<iconUrl>
<![CDATA[
https://content.mapquest.com/mqsite/turnsigns/rs_right_sm.gif
]]>
</iconUrl>
<linkIds/>
<mapUrl>
<![CDATA[
https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-2,38.893164999999996,-77.077957,0,0|purple-3,38.893276,-77.077407,0,0|¢er=38.8932205,-77.077682&zoom=15&rand=-1501428055&session=55e60e61-02c8-001d-02b7-42c0-00163e1df8e2
]]>
</mapUrl>
</maneuver>
<maneuver>
<startPoint>
<lat>38.8933</lat>
<lng>-77.0774</lng>
</startPoint>
<maneuverNotes/>
<distance>0.168</distance>
<time>32</time>
<formattedTime>00:00:32</formattedTime>
<attributes>0</attributes>
<turnType>2</turnType>
<direction>4</direction>
<narrative>Turn right onto N Queen St.</narrative>
<directionName>South</directionName>
<index>1</index>
<streets>
<street>N Queen St</street>
</streets>
<signs/>
<iconUrl>
<![CDATA[
https://content.mapquest.com/mqsite/turnsigns/rs_right_sm.gif
]]>
</iconUrl>
<linkIds/>
<mapUrl>
<![CDATA[
https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-3,38.893276,-77.077407,0,0|purple-4,38.890857,-77.07708699999999,0,0|¢er=38.8920665,-77.077247&zoom=12&rand=-1501428055&session=55e60e61-02c8-001d-02b7-42c0-00163e1df8e2
]]>
</mapUrl>
</maneuver>
<maneuver>
<startPoint>
<lat>38.8909</lat>
<lng>-77.0771</lng>
</startPoint>
<maneuverNotes/>
<distance>0.003</distance>
<time>5</time>
<formattedTime>00:00:05</formattedTime>
<attributes>0</attributes>
<turnType>2</turnType>
<direction>7</direction>
<narrative>Turn right onto 14th St N.</narrative>
<directionName>West</directionName>
<index>2</index>
<streets>
<street>14th St N</street>
</streets>
<signs/>
<iconUrl>
<![CDATA[
https://content.mapquest.com/mqsite/turnsigns/rs_right_sm.gif
]]>
</iconUrl>
<linkIds/>
<mapUrl>
<![CDATA[
https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-4,38.890857,-77.07708699999999,0,0|purple-5,38.890842,-77.077148,0,0|¢er=38.8908495,-77.07711749999999&zoom=15&rand=-1501428055&session=55e60e61-02c8-001d-02b7-42c0-00163e1df8e2
]]>
</mapUrl>
</maneuver>
<maneuver>
<startPoint>
<lat>38.8908</lat>
<lng>-77.0771</lng>
</startPoint>
<maneuverNotes/>
<distance>1.606</distance>
<time>151</time>
<formattedTime>00:02:31</formattedTime>
<attributes>0</attributes>
<turnType>11</turnType>
<direction>4</direction>
<narrative>
Merge onto Arlington Blvd/US-50 W via the ramp on the left.
</narrative>
<directionName>South</directionName>
<index>3</index>
<streets>
<street>Arlington Blvd</street>
<street>US-50 W</street>
</streets>
<signs>
<sign>
<type>2</type>
<direction>7</direction>
<text>50</text>
<extraText/>
<url>
<![CDATA[ http://icons.mqcdn.com/icons/rs2.png?n=50&d=WEST ]]>
</url>
</sign>
</signs>
<iconUrl>
<![CDATA[
https://content.mapquest.com/mqsite/turnsigns/rs_merge_left_sm.gif
]]>
</iconUrl>
<linkIds/>
<mapUrl>
<![CDATA[
https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-5,38.890842,-77.077148,0,0|purple-6,38.87355,-77.089424,0,0|¢er=38.882196,-77.08328599999999&zoom=9&rand=-1501428055&session=55e60e61-02c8-001d-02b7-42c0-00163e1df8e2
]]>
</mapUrl>
</maneuver>
<maneuver>
<startPoint>
<lat>38.8736</lat>
<lng>-77.0894</lng>
</startPoint>
<maneuverNotes/>
<distance>0.408</distance>
<time>74</time>
<formattedTime>00:01:14</formattedTime>
<attributes>0</attributes>
<turnType>6</turnType>
<direction>4</direction>
<narrative>Turn left onto N Fillmore St.</narrative>
<directionName>South</directionName>
<index>4</index>
<streets>
<street>N Fillmore St</street>
</streets>
<signs/>
<iconUrl>
<![CDATA[
https://content.mapquest.com/mqsite/turnsigns/rs_left_sm.gif
]]>
</iconUrl>
<linkIds/>
<mapUrl>
<![CDATA[
https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-6,38.87355,-77.089424,0,0|purple-7,38.867782,-77.08811899999999,0,0|¢er=38.870666,-77.0887715&zoom=10&rand=-1501428055&session=55e60e61-02c8-001d-02b7-42c0-00163e1df8e2
]]>
</mapUrl>
</maneuver>
<maneuver>
<startPoint>
<lat>38.8678</lat>
<lng>-77.0881</lng>
</startPoint>
<maneuverNotes/>
<distance>0.884</distance>
<time>149</time>
<formattedTime>00:02:29</formattedTime>
<attributes>0</attributes>
<turnType>0</turnType>
<direction>4</direction>
<narrative>Stay straight to go onto S Walter Reed Dr.</narrative>
<directionName>South</directionName>
<index>5</index>
<streets>
<street>S Walter Reed Dr</street>
</streets>
<signs/>
<iconUrl>
<![CDATA[
https://content.mapquest.com/mqsite/turnsigns/rs_straight_sm.gif
]]>
</iconUrl>
<linkIds/>
<mapUrl>
<![CDATA[
https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-7,38.867782,-77.08811899999999,0,0|purple-8,38.855185999999996,-77.088584,0,0|¢er=38.861484,-77.08835149999999&zoom=9&rand=-1501428055&session=55e60e61-02c8-001d-02b7-42c0-00163e1df8e2
]]>
</mapUrl>
</maneuver>
<maneuver>
<startPoint>
<lat>38.8552</lat>
<lng>-77.0886</lng>
</startPoint>
<maneuverNotes/>
<distance>0.593</distance>
<time>84</time>
<formattedTime>00:01:24</formattedTime>
<attributes>0</attributes>
<turnType>7</turnType>
<direction>5</direction>
<narrative>Turn slight left onto S Glebe Rd/VA-120.</narrative>
<directionName>Southeast</directionName>
<index>6</index>
<streets>
<street>S Glebe Rd</street>
<street>VA-120</street>
</streets>
<signs>
<sign>
<type>545</type>
<direction>0</direction>
<text>120</text>
<extraText/>
<url>
<![CDATA[ http://icons.mqcdn.com/icons/rs545.png?n=120 ]]>
</url>
</sign>
</signs>
<iconUrl>
<![CDATA[
https://content.mapquest.com/mqsite/turnsigns/rs_slight_left_sm.gif
]]>
</iconUrl>
<linkIds/>
<mapUrl>
<![CDATA[
https://www.mapquestapi.com/staticmap/v5/getmap?key=KEY&type=map&size=225,160&pois=purple-8,38.855185999999996,-77.088584,0,0|purple-9,38.848926,-77.08122999999999,0,0|¢er=38.852056,-77.08490699999999&zoom=10&rand=-1501428055&session=55e60e61-02c8-001d-02b7-42c0-00163e1df8e2
]]>
</mapUrl>
</maneuver>
<maneuver>
<startPoint/>
<maneuverNotes/>
<distance>0.0</distance>
<time>0</time>
<formattedTime>00:00:00</formattedTime>
<attributes>0</attributes>
<turnType>-1</turnType>
<direction>0</direction>
<narrative>2400 S GLEBE RD is on the right.</narrative>
<directionName/>
<index>7</index>
<streets/>
<signs/>
<linkIds/>
<mapUrl>
<![CDATA[ ]]>
</mapUrl>
</maneuver>
</maneuvers>
<hasTollRoad>false</hasTollRoad>
<hasFerry>false</hasFerry>
<hasHighway>false</hasHighway>
<hasSeasonalClosure>false</hasSeasonalClosure>
<hasUnpaved>false</hasUnpaved>
<hasCountryCross>false</hasCountryCross>
</leg>
</legs>
<hasTollRoad>false</hasTollRoad>
<hasFerry>false</hasFerry>
<hasHighway>false</hasHighway>
<hasSeasonalClosure>false</hasSeasonalClosure>
<hasUnpaved>false</hasUnpaved>
<hasCountryCross>false</hasCountryCross>
<locations>
<location>
<street>[1700 - 1720] Clarendon Blvd</street>
<adminArea5 type="City">Arlington</adminArea5>
<adminArea3 type="State">VA</adminArea3>
<adminArea4 type="County">Arlington</adminArea4>
<postalCode>22209-2713</postalCode>
<adminArea1 type="Country">US</adminArea1>
<geocodeQuality>STREET</geocodeQuality>
<geocodeQualityCode>B1AAA</geocodeQualityCode>
<dragPoint>false</dragPoint>
<sideOfStreet>L</sideOfStreet>
<displayLatLng>
<latLng>
<lat>38.893165</lat>
<lng>-77.077957</lng>
</latLng>
</displayLatLng>
<linkId>13257655</linkId>
<type>s</type>
<latLng>
<lat>38.893165</lat>
<lng>-77.077959</lng>
</latLng>
</location>
<location>
<street>2400 S Glebe Rd</street>
<adminArea5 type="City">Arlington</adminArea5>
<adminArea3 type="State">VA</adminArea3>
<adminArea4 type="County">Arlington</adminArea4>
<postalCode>22206-2500</postalCode>
<adminArea1 type="Country">US</adminArea1>
<geocodeQuality>POINT</geocodeQuality>
<geocodeQualityCode>P1AAA</geocodeQualityCode>
<dragPoint>false</dragPoint>
<sideOfStreet>R</sideOfStreet>
<displayLatLng>
<latLng>
<lat>38.84893</lat>
<lng>-77.08123</lng>
</latLng>
</displayLatLng>
<linkId>14874674</linkId>
<type>s</type>
<latLng>
<lat>38.848932</lat>
<lng>-77.081229</lng>
</latLng>
</location>
</locations>
<locationSequence>0,1</locationSequence>
<computedWaypoints/>
</route>
</response>