Open Guidance Service Developer's Guide

The Open Guidance Service provides a simple interface to get detailed routing, connectivity information, and route shapes.

See our Release Notes for details on the latest additions to this service.


Hello, World!

The Open Guidance Service lets you request guidance route information between two or more points. The service can return results in JSON or XML, either of which can easily be parsed by client applications.

The following example demonstrates a simple request to receive guidance route information from Milpitas, CA to San Jose, CA. The JavaScript code which sends the request and displays the result can be viewed here.

(Guidance route information will be displayed below)    


Contents


Overview

  1. Route - The core guidance function. Provides guidance route information on how to get from one location to one (or more) other locations.

The input to this function is a Route Request, which is described via Key/Value pair request parameters, or as JSON or XML text.

The Open Guidance Service is designed to accept and return a variety of formats. All requests are submitted and returned via HTTP. The input format supplied to the service is not required to be the same format returned from it.

Supported input formats:

  • Key/Value pairs - All guidance parameters are supplied via request parameters.
  • JSON - The guidance parameters are supplied via JSON-formated text, either in the body of an HTTP POST request or as the "json" parameter of an HTTP GET request.
  • XML - The guidance parameters are supplied via XML-formatted text, either in the body of an HTTP POST request or as the "xml" parameter of an HTTP GET request.

Supported output formats:

  • JSON (default) - The HTTP response will be a JSON-formatted Guidance Response.
  • XML - The HTTP response will be an XML-formatted Guidance Response.

Geocoding/Reverse Geocoding with Nominatim:


Common URL Parameters

The following table describes the request parameters which are not related to specific Guidance Request options. These parameters, if supplied, must be supplied as request parameters (they can not be supplied in the BODY of the request).

Request Parameter Description
ambiguities
String
Use this parameter to set the strategy for resolving ambiguous location names.

If this parameter is set to "ignore", the Open Guidance Service will simply use the first location found for an address.

If this parameter is not set, or set to a value other than "ignore", the Open Guidance Service will return a full list of the possible location matches in the collections attribute of the response.
inFormat Specifies the format of the request. If this parameter is not supplied, the input format is assumed to be JSON-formatted text. The JSON-formatted input text must be supplied as either the "json" parameter of an HTTP GET, or as the BODY of an HTTP POST. If this parameter is "xml", the XML-formatted input text must be supplied as either the "xml" parameter of an HTTP GET, or as the BODY of an HTTP POST.

Must be one of the following, if supplied:
  • json
  • xml
Defaults to "json" if not supplied
json This parameter, if present, should contain the JSON-formatted text of the request. Use this parameter if you want to submit your request in JSON format, but do not want to use an HTTP POST to submit body text.

Note: Remember to URL-escape the text in this parameter!
xml This parameter, if present, should contain the XML-formatted text of the request. Use this parameter if you want to submit your request in XML format, but do not want to use an HTTP POST to submit body text.

Note: Remember to URL-escape the text in this parameter!
outFormat Specifies the format of the response. Must be one of the following, if supplied:
  • json
  • xml
Defaults to "json" if not supplied

Basic Guidance Options

The following table describes the "bare bones" parameters needed to make a Guidance request

Name Description
key
String
A unique key to authorize use of the Guidance Service.

This is a required parameter!
from
Location
When the input format is Key/Value pairs, the starting location of a Guidance Request. Exactly one "from" parameter is allowed.
to
Location
When the input format is Key/Value pairs, the ending location(s) of a Guidance Request. More than one "to" parameter may be supplied.

Specifying Locations

To specify locations in JSON or XML, you must include a "locations" parameter that encloses a list of locations. It is locations:[ and ] in JSON, or <locations> and </locations> in XML. The contents of the locations must be Location objects. Please also see Single-Line Locations for more details.

Parameters are described in the table below.

Field Name Description
latLng Returns the latitude/longitude for routing and is the nearest point on a road for the entrance.
street (optional) Street address
adminArea5 (optional) City name
adminArea4 (optional) County name
adminArea3 (optional) State name
adminArea1 (optional) Country name
postalCode (optional) Postal code
type Type of location.
  • s - stop (default)
  • v - via
Each "stop" location used is treated as a "destination" point and will cause a destination maneuver to be generated. For example, a Guidance Route Request from A to B to C will generate a route from A to B as well as a route from B to C. The Guidance Response would include 2 maneuvers associated with A and B as start points as well as 2 maneuvers associated with B and C as destination points. This may also result in a route which, upon reaching location B, reverses its direction of travel to reach location C. If location B were a "via" type, the route would avoid immediatly reversing the direction of travel at location B. Instead, location B would simply be treated as a point through which the route must pass. Such a Guidance Response would only contain 1 maneuver associated with A as a start point and 1 maneuver associated with C as the destination point.

JSON Response Example XML Response Example
{
   latLng: {
      lng: -77.792499,
      lat: 40.775618
   },
   adminArea4: "Centre County",
   adminArea5Type: "City",
   adminArea4Type: "County",
   adminArea5: "Boalsburg",
   street: "",
   adminArea1: "US",
   adminArea3: "PA",
   type: "s",
   postalCode: "",
   adminArea1Type: "Country",
   adminArea3Type: "State"
}
<location>
   <street/>
   <adminArea5 type="City">
      Boalsburg
   </adminArea5>
   <adminArea3 type="State">
      PA
   </adminArea3>
   <adminArea4 type="County">
      Centre County
   </adminArea4>
   <postalCode/>
   <adminArea1 type="Country">
      US
   </adminArea1>
   <type>s</type>
   <latLng>
      <lat>40.775618</lat>
      <lng>-77.792499</lng>
   </latLng> 
</location>

Advanced Guidance Options

The section below describes different parameters that can be used in a Guidance Request.

Advanced Options

The options in the table below, if used in a request in JSON or XML format, must be enclosed in a field named options. See the examples below for functional examples of the options field.

Name Description
units
String
Specifies the type of units to use when calculating distance. Acceptable values are:
  • m - Miles
  • k - Kilometers
Default value is 'm'
routeType
String
Specifies the type of route wanted. Acceptable values are:
  • fastest - Quickest drive time route.
  • shortest - Shortest driving distance route.
  • pedestrian - Walking route; Avoids limited access roads; Ignores turn restrictions.
  • bicycle - Bike route; Avoids limited access roads; Avoids roads where bicycle access is false; Favors bike specific paths and lower maxspeed roads.
  • multimodal - Combination of walking and (if available) public transit
Default = 'fastest'
narrativeType
String
Specifies the type of narrative to generate. Currently only text is supported.
  • none - No narrative is generated
  • text - Standard text narrative
  • html - Adds some HTML tags to the standard text
  • microformat - Uses HTML span tags with class attributes to allow parts of the narrative to be easily styled via CSS. Explanation
Default = 'text'
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:
  • Limited Access - Highways
  • Toll Road
  • Ferry
  • Unpaved
  • Seasonal Closure - Approximate. Season roads might not be relected with 100% accuracy.
  • Country Crossing
mustAvoidLinkIds
Integer Collection
Link Ids of roads to absolutely avoid. May cause some routes to fail. Multiple link ids should be comma-separated.
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.
shapeFormat
String
Shape format options.
  • raw - shape is represented as float pairs.
  • cmp - shape is represented as a compressed path string with 5 digits of precision.
  • cmp6 - Same as for cmp, but uses 6 digits of precision.

See the Compressed Lat/Lng description page for more detail, including sample source code and an interactive encoder/decoder.
generalizeAfter This parameter enables line generalization as described below. Since the shapePoints object contains exact shape information applicable for navigation calculations, it can be costly to use this shape for display purposes. This option can be used to get simplified shape data in addition to the standard shape data.

Set generalizeAfter to a positive integer value. If the number of shape points in the shapePoints object is > the generalizeAfter parameter then additional generalized shape will be returned in the generalizedShape object.
generalize This parameter is to be used only in conjunction with generalizeAfter and will reduce the number of points returned in the generalizedShape object.

If -1 (the default) is suppled then level of generalization will be automatically determined.

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.

If the generalize parameter is 0, then no shape simplification will be done and all shape points will be returned.
direction Provides an initial compass direction of travel to favor when generating the route.

If the direction < 0, then no direction is favored.

If the direction >= 0, then the calculated route will attempt to follow the given direction at the beginning of the route.

This is useful for real-time GPS guided applications in which the user is already traveling in a certain direction and would like to ensure that the returned route starts heading in a similar direction.
avoidManeuverDuration Provides a duration in seconds starting from the beginning of the route in which the route is to continue on the current road (ie. avoid performing any maneuvers that lead the user off of the current road).

If the avoidManeuverDuration < 0 then no duration is used.

If the 0 <= avoidManeuverDuration <= 300 then the calculated route will attempt to continue on the current road for the given duration at the beginning of the route.

If the avoidManeuverDuration > 300 then a duration of 300 seconds is used for the route calculation.

This is useful for real-time GPS guided applications in which the user is already traveling at a certain speed and would like to ensure that the returned route does not require an immediate maneuver. The user's current speed can be used to calculate an appropriate avoidmaneuverDuration. If, for example, the user is traveling at 65mph on a highway, a longer avoidmaneuverDuration can be used to avoid a route with an immediate exit ramp maneuver that the user will not have time to make. Also in poor connectivity situations a longer duration may provide enough time for the Guidance Response to be fully downloaded before the first maneuver in the route occurs.
enableFishbone Provides extra links for each node along the route. Disabling this option (if unneeded) will result in a substantially smaller amount of returned data.

drivingStyle
Integer or String
Driving style to be used when calculating fuel usage.
  • 1 or cautious - Assume a cautious driving style.
  • 2 or normal - Assume a normal driving style. This is the default.
  • 3 or aggressive - Assume an aggressive driving style.
highwayEfficiency
Double
This is the fuel efficiency of your vehicle, given as miles per gallon.

Date/Time Options

This is an extension of the Advanced Guidance Options that allows the user to specify a date and time when generating a route. The Date/Time Options will effect routes that contain roads that are HOV at specific times, have timed-turned restrictions, or have seasonal or specific day of the week closures.

Name Description
timeType
Integer
Specifies the time type to use. Acceptable values are:
  • 0 - None (No date/time options will be used)
  • 1 - Current (Uses the current date/time when generating a route.)
  • 2 - Start At (May specify a specific date/time or day of the week to use when generating a route.)
Default timeType value is 0
dateType
Integer
Specifies the date type to use. If timeType is 0 or 1, this option will be ignored. Acceptable values are:
  • 0 - Specific Date & Time
  • 1 - Sunday
  • 2 - Monday
  • 3 - Tuesday
  • 4 - Wednesday
  • 5 - Thursday
  • 6 - Friday
  • 7 - Saturday
Default dateType value is 0
isoLocal If timeType is 0 or 1 , or if dateType is 1-7 ,this option will be ignored.

If dateType is 0 , this is an optional parameter.

The user has the choice of entering date/time in the ISO 8601 format YYYY-MM-DDThh:mm or may enter as individual parameters by using the month, day, year, and localTime fields that are listed below.

Default isoLocal value is the current date and time.
date The format for date is MM/DD/YYYY. If timeType is 0 or 1 , or if dateType is 1-7 ,this option will be ignored.

If dateType is 0 and isoLocal is null, this parameter must be used. MM specifies the month of year. Acceptable values are:
  • 01 - January
  • 02 - February
  • 03 - March
  • 04 - April
  • 05 - May
  • 06 - June
  • 07 - July
  • 08 - August
  • 09 - September
  • 10 - October
  • 11 - November
  • 12 - December
DD specifies the day of the month.

Acceptable values are 01-31. YYYY specifies the year.

Values need to be entered in YYYY format. Default date value is the current date.

Please note that the user has the choice of entering date/time in the ISO 8601 format YYYY-MM-DDThh:mm or as a calendar date (MM/DD/YYYY) and local time (hh:mm) by using the date and localTime fields, respectively.
localTime
Integer
If timeType is 0 or 1 ,this option will be ignored.

If dateType is 0 and isoLocal is null, this parameter must be used.

If dateType is 1-7 , this paramater can be used to set a specific time of day to generate a route.

Values need to be entered in hh:mm format. Default localTime value is the current time.

Please note that the user has the choice of entering date/time in the ISO 8601 format YYYY-MM-DDThh:mm or as a calendar date (MM/DD/YYYY) and local time (hh:mm) by using the date and localTime fields, respectively.


Advanced Guidance Options Sample


Option Value(s) Notes
From:
To:
Avoids: Limited Access   Toll Road   Seasonal Closure   Unpaved   Ferry   Country border crossing
Route Type:
Narrative Type:  
Units:  
Shape Format:  
GeneralizeAfter: Ignored if "generalizeAfter" is < 0
Generalize: Ignored if "generalizeAfter" (above) is not set
Direction: Ignored if direction < 0
AvoidManeuverDuration: Ignored if avoidManeuverDuration < 0. Clamped to 300 if avoidManeuverDuration > 300
Input Format: Uses "json=" or "xml=" if appropriate.
Enable Fishbone:

(Output will be displayed below)    


Guidance Response Description

The following table describes the response from a Guidance Request. The examples are given in JSON & XML format.

Response Field Description JSON Example Return Value(s) XML Example Return Value(s)
boundingBox A best-fit lat/lng bounding rectangle of all points in the shapePoint collection.
  • ul - represents the northwestern most LatLng pair
  • lr - represents the southeastern most LatLng pair.
            
boundingBox: {
   ul: {
      lng: -76.7304,
      lat: 40.0788
   },
   lr: {
      lng: -76.3300,
      lat: 39.9619
   }
}
            
<boundingBox>
   <ul>
      <lat>40.0788</lat>
      <lng>-76.7305</lng>
   </ul>
   <lr>
      <lat>40.0788</lat>
      <lng>-76.7305</lng>
   </lr>
</boundingBox>
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.
location: []
<location></location>
GuidanceNodeCollection A collection of nodes along the route (in order of traversal) where each node represents an intersection of 2 or more links along the route. An empty node is added at the beginning of the collection.

Each node has an array of link indices associated with the intersection that occurs there. These indices can be used to index the GuidanceLinkCollection. The first link index in the array represents the link on the route that starts at that node.
  • maneuverType - used to determine which type of action should be taken in order to stay on route. Each node may or may not have a maneuver associated with it. For a list of maneuver types, see: Maneuver Types.

  • turnCost - number of seconds to transition between successive links along the route. These take into account the geometry of the intersection, number of links at the intersection, and types of roads at the intersection. This attempts to estimate the time in seconds it would take for stops, or places where a vehicle must slow to make a turn.

  • infoCollection - if a narrativeType other than none is selected, nodes at which a maneuver occur will include an info field which is a string collection of narrative for that maneuver. The first string in the collection will be TTS ready text, with the latter strings containing more verbose (display ready) equivalents.
GuidanceNodeCollection: [
    {
        turnCost: 3,
        nodeType: 0,        
        maneuverType: 20,
        linkIds: [
            9,
            152,
        ]
	infoCollection: [
           "Merge left onto
		STATE ROUTE 470 East",
           "Merge onto CO-470 E."
        ]
    },
    {
        turnCost: 1,
        nodeType: 0,
        linkIds: [
            10,
            153,
        ]
    },
    ...
]
<GuidanceNodeCollection>
    <node>
        <nodeType>0</nodeType>
        <maneuverType>20</maneuverType>
        <turnCost>3</turnCost>
        <linkIds>
            <linkId>9</linkId>
            <linkId>152</linkId>
        </linkIds>
        <infoCollection>
            <info>Merge left onto
		STATE ROUTE 470 East</info>
            <info>Merge onto CO-470 E.</info>
        </infoCollection>
    </node>
    <node>
        <nodeType>0</nodeType>
        <turnCost>1</turnCost>
        <linkIds>
            <linkId>10</linkId>
            <linkId>153</linkId>
        </linkIds>
    </node>
    ...
</GuidanceNodeCollection>
GuidanceLinkCollection A collection of links along the route as well as any link that is connected to any node along the route (ie. cross streets).

The first set of links in the collection will be the links in the order they are traversed along the route. The cross streets are added to the end of the collection in the order they are encountered along the route.
  • endNode/refNode - specifies the nodes from GuidanceNodeCollections that occur at the beginning and end of the link

  • shapeIndex - specifies the index into the shapePoints array where the first shape point of the link is located

  • shapeCount - get the remaining shape points associated with the link

  • roadInfoIndices - indices into the roadInfoCollection. They are prioritized by their name's importance. Typically ramps on/off/between highways will have no name and thus no roadInfoIndices

  • length - describes the link length in miles or kilometers

  • beginTurnDir/endTurnDir - compass angles at the beginning and end of the link. The difference between these (on abutting links) can be used to determine the turn type (left vs. right vs. straight) and turn degree (slight vs. sharp).

  • exitIndex - specifies the index into the GuidanceExitCollection to find the first exit information associated with that link

  • exitCount - find further exit information associated with the link.

  • gefID - link ID that can be used when communicating back to the server to find additional information along the route (e.g. to query for traffic along a route in the future)

  • driveability - T (reverse)=driveable one way from the end to the beginning of the link; F (forward)=driveable one way from the beginning to the end of the link; B (both)=driveable both ways along the link; N (none)=not driveable in either direction on the link (e.g. a walkway).

  • speed - speed of link

  • speedType - type of speed (0=unknown, 1=limit, 2=category, 3=free flow, 4=design, 5=historical)

  • networkDirection - indicates the direction of travel along a bidirectional link (0=mostly south or if horizontal, mostly west; 1=mostly north or if horizontal, mostly east).
GuidanceLinkCollection: [
    {
        linkType: 0,
        endTurnDir: 145,
        speed: 55,
        speedType: 2,
        exitIndex: 0,
        exitCount: 1,
        shapeIndex: 465,
        refNode: 57,
        driveability: "T",
        endNode: 58,
        length: 0.012,
        shapeCount: 3,
        attributes: 8,
        beginTurnDir: 142,
        name1: 5,
        gefID: 42997633,
        name0: 4,
        networkDirection: 1,
        roadInfoIndices: [
        	2,
        	3
		]
    },
    {
        linkType: 0,
        endTurnDir: 154,
        speed: 55,
        speedType: 2,
        shapeIndex: 468,
        refNode: 58,
        driveability: "T",
        endNode: 59,
        length: 0.435,
        shapeCount: 10,
        attributes: 8,
        beginTurnDir: 148,
        name1: 5,
        gefID: 125400131,
        name0: 4,
        networkDirection: 1,
        roadInfoIndices: [
        	4,
        	5
		]
    },
    ...
]
<GuidanceLinkCollection>
    <link>
        <linkType>0</linkType>    
        <gefID>42997633</gefID>
        <speed>55</speed>
        <speedType>2</speedType>
        <driveability>T</driveability>
        <length>0.012</length>
        <shapeIndex>465</shapeIndex>
        <shapeCount>3</shapeCount>
        <refNode>57</refNode>
        <endNode>58</endNode>
        <attributes>8</attributes>
        <beginTurnDir>142</beginTurnDir>
        <endTurnDir>145</endTurnDir>
        <exitCount>1</exitCount>
        <exitIndex>0</exitIndex>
        <name0>4</name0>
        <name1>5</name1>
        <networkDirection>1</networkDirection>
		<roadInfoIndices>
			<index>2</index>
			<index>3</index>
		</roadInfoIndices>
    </link>
    <link>
        <linkType>0</linkType>    
        <gefID>125400131</gefID>
        <speed>55</speed>
        <speedType>2</speedType>
        <driveability>T</driveability>
        <length>0.435</length>
        <shapeIndex>468</shapeIndex>
        <shapeCount>10</shapeCount>
        <refNode>58</refNode>
        <endNode>59</endNode>
        <attributes>8</attributes>
        <beginTurnDir>148</beginTurnDir>
        <endTurnDir>154</endTurnDir>
        <name0>4</name0>
        <name1>5</name1>
        <networkDirection>1</networkDirection>
        <roadInfoIndices>
			<index>4</index>
			<index>5</index>
		</roadInfoIndices>
    </link>
    ...
</GuidanceLinkCollection>
shapePoints Shape points for the guidance route.

Shape points is an alternated array of lat/lngs. Evens are lat and odds are lng. The index of a specific shape point is i/2. If compression is specified in the request, the output will be the compressed set of alternating lat/lngs.
shapePoints: [
    40.2562,
    -76.5095,
    40.2561,
    -76.5098,
    40.2558,
    -76.50998,
    40.2557,
    -76.5102,
    40.2555,
    -76.5103,
    ...
]
<shapePoints>
    <lat>40.2562</lat>
    <lng>-76.5095</lng>
    <lat>40.2561</lat>
    <lng>-76.5098</lng>
    <lat>40.2558</lat>
    <lng>-76.50998</lng>
    <lat>40.2557</lat>
    <lng>-76.5102</lng>
    <lat>40.2555</lat>
    <lng>-76.5103</lng>
    ...
</shapePoints>
generalizedShape Generalized shape points for the guidance route.

Generalized shape is an alternated array of lat/lngs. Evens are lat and odds are lng. The index of a specific shape point is i/2. If compression is specified in the request, the output will be the compressed set of alternating lat/lngs.
generalizedShape: [
    40.2562,
    -76.5096,
    40.2562,
    -76.5098,
    40.2558,
    -76.50998,
    40.2557,
    -76.5102,
    40.2555,
    -76.5103,
    ...
]
<generalizedShape>
    <lat>40.2562</lat>
    <lng>-76.5096</lng>
    <lat>40.2562</lat>
    <lng>-76.5098</lng>
    <lat>40.2558</lat>
    <lng>-76.50998</lng>
    <lat>40.2557</lat>
    <lng>-76.5102</lng>
    <lat>40.2555</lat>
    <lng>-76.5103</lng>
    ...
</generalizedShape>
RouteLinkCount The number of links contained in the guidance route response.

Since the response not only contains links on the route but also any link that connects directly to the route, the RouteLinkCount will be strictly greater than or equal to the number of nodes in the response.
RouteLinkCount: 30
<RouteLinkCount>30</RouteLinkCount>
GuidanceRoadInfoCollection A collection of human-readable road names and signage associated with the links returned in the results.

  • name - contains a fully expanded version of the road name
  • stdName - same as name but allows for abbreviations
  • sign - contains information about the road shield for the given link. For information regarding the different shield types see Sign Types.
  • direction - sign direction that is simply an integer from 0-8 corresponding to NONE, N, NW, NE, S, SE, SW, W, E respectively.
GuidanceRoadInfoCollection: [
{
stdName: "US HIGHWAY 422 BR E"
name: "U.S. HIGHWAY 422 BRANCH East"
sign: {
text: "422"
direction: 8
type: 2
extraText: "BR"
}
},
...
]
<GuidanceRoadInfoCollection>
    <roadInfo>
	<name>U.S. HIGHWAY 422
BRANCH East</name>
	<stdName>US HIGHWAY 422 BR E</stdName>
	<sign>
	<type>2</type>
	<direction>8</direction>
	<text>422</text>
	<extraText>BR</extraText>
	</sign>
	</roadInfo>
    ...
</GuidanceRoadInfoCollection>
fuelUsed The estimated amount of fuel used during the route
fuelUsed: 8.21
<fuelUsed>8.21</fuelUsed>
GuidanceExitCollection A collection of exit sign information associated with links along the returned route.
  • signText - represents the destination of the exit.
  • exitNumber - contains the sign's exit number.
GuidanceExitCollection: [
    {
        signText: "YORK",
        exitDirection: 82,
        exitNumber: "",
        fromLinkID: 125399983,
        signValue: 84,
    },
    {
        signText: "PA-581 W",
        exitDirection: 82,
        exitNumber: "41A",
        fromLinkID: 43029139,
        signValue: 66,
    },
    ...
]
<GuidanceExitCollection>
    <exit>
        <fromLinkID>125399983</fromLinkID>
        <exitDirection>R</exitDirection>
        <signValue>T</signValue>
        </exitNumber>
        <signText>YORK</signText>
    </exit>
    <exit>
        <fromLinkID>43029139</fromLinkID>
        <exitDirection>R</exitDirection>
        <signValue>B</signValue>
        <exitNumber>41A</exitNumber>
        <signText>PA-581 W</signText>
    </exit>
    ...
</GuidanceExitCollection>

Maneuver Types

The following table describes the maneuver types associated with nodes from a Guidance Response. This list is subject to change; please check back frequently for an updated list of maneuver types and IDs.

Maneuver Type Name Maneuver ID Description
NONE 0 No maneuver occurs here.
STRAIGHT 1 Continue straight.
BECOMES 2 No maneuver occurs here. Road name changes.
SLIGHT_LEFT 3 Make a slight left.
LEFT 4 Turn left.
SHARP_LEFT 5 Make a sharp left.
SLIGHT_RIGHT 6 Make a slight right.
RIGHT 7 Turn right.
SHARP_RIGHT 8 Make a sharp right.
STAY_LEFT 9 Stay left.
STAY_RIGHT 10 Stay right.
STAY_STRAIGHT 11 Stay straight.
UTURN 12 Make a U-turn.
UTURN_LEFT 13 Make a left U-turn.
UTURN_RIGHT 14 Make a right U-turn.
EXIT_LEFT 15 Exit left.
EXIT_RIGHT 16 Exit right.
RAMP_LEFT 17 Take the ramp on the left.
RAMP_RIGHT 18 Take the ramp on the right.
RAMP_STRAIGHT 19 Take the ramp straight ahead.
MERGE_LEFT 20 Merge left.
MERGE_RIGHT 21 Merge right.
MERGE_STRAIGHT 22 Merge.
ENTERING 23 Enter state/province.
DESTINATION 24 Arrive at your destination.
DESTINATION_LEFT 25 Arrive at your destination on the left.
DESTINATION_RIGHT 26 Arrive at your destination on the right.
ROUNDABOUT1 27 Enter the roundabout and take the 1st exit.
ROUNDABOUT2 28 Enter the roundabout and take the 2nd exit.
ROUNDABOUT3 29 Enter the roundabout and take the 3rd exit.
ROUNDABOUT4 30 Enter the roundabout and take the 4th exit.
ROUNDABOUT5 31 Enter the roundabout and take the 5th exit.
ROUNDABOUT6 32 Enter the roundabout and take the 6th exit.
ROUNDABOUT7 33 Enter the roundabout and take the 7th exit.
ROUNDABOUT8 34 Enter the roundabout and take the 8th exit.
TRANSIT_TAKE 35 Take a public transit bus or rail line.
TRANSIT_TRANSFER 36 Transfer to a public transit bus or rail line.
TRANSIT_ENTER 37 Enter a public transit bus or rail station
TRANSIT_EXIT 38 Exit a public transit bus or rail station
TRANSIT_REMAIN_ON 39 Remain on the current bus/rail car

Guidance Node Types

The following table describes the node types associated with nodes from a Guidance Response.

Node Type Name Node Type ID Description
STREET 0 Street
RAIL_STATION 1 Rail Station
BUS_STATION 2 Bus Station
EGRESS 3 Egress Point

Guidance Link Types

The following table describes the link types associated with links in a Guidance Response.

Link Type Name Link Type ID Description
STREET 0 Street
RAIL 1 Rail
TRANSIT_CONNECTION 2 Connection between transit links

Sign Types

The following table describes the road shield types associated with links from a Guidance Response. This list is subject to change; please check back frequently for an updated list of shield types.

Sign Type Description
United States Road Shield Tokens
1 Interstate
2 US Highway
3 State Route
4 County Route / Parish Route
5 Interstate Business
10 Farm to Market (FM)
11 Bureau of Indian Affairs (BIA)
Canada Road Shield Tokens
20 Trans Canada Highway
21 Autoroute
22 Primary Provincial Route
23 Provincial Secondary Route
24 District Route / Regional Route
25 Yellowhead Highway
United Kingdom Road Shield Tokens
30 Motorway / M Road
31 National / A Road
32 * DO NOT USE (ASCII space) *
33 Regional / B Road
34 C Road

OpenStreetMap data is licensed under the Open Data Commons Open Database License (ODbL).

  © MapQuest, Inc. All rights reserved.    Privacy Policy | Terms of Use