Routing API Developer's Guide


Waypoints are points (including start and end points) along the route, based on input specified in the route request. They can also be defined as passThrough, such as a case where the road changes names and no stopover action is required.

If the request does not pass a coordinate when specifying the waypoint, the originalPosition attribute will not be filled.

Figure 1. WaypointType This image shows a graphical representation of the Waypoint Type.

WaypointType defines the following elements:

Element Description
LinkId LinkIdType

ID of the link on the navigable network associated with the waypoint.

MappedPosition GeoCoordinateType

If this waypoint is a start point, this will be mapped to the beginning of the link. If used as destination point or via point, it will be mapped to the end of the link.

OriginalPosition GeoCoordinateType

Original position as it was specified in the corresponding request. The value will depend on request construction:

  • If using a NavigationWaypointParameterType, the service will set OriginalPosition as the display position (if specified) or as the navigation position selected by the routing engine (if not specified in the request).
  • If using a GeoWaypointParameterType, the service will set the OriginalPosition as the position specified in the request.
Type WaypointParameterTypeType

Defines the type of the waypoint, either stopOver or passThrough.

Spot xs:double

Contains the relative position of the mapped location along the link, as the fractional distance between the link's reference node and the non-reference node. Ranges in value from 0 to 1. When no spot value nor display position is given in the request then default value 0.5 is assumed.

SideOfStreet SideOfStreetType

Indicates whether the waypoint is on the left or right side of the link, when heading from the reference node to the non-reference node.

MappedRoadName xs:string

Displays the name of the street to which the request waypoint was mapped.

Label xs:string

A label identifying this waypoint, generated by the routing service. Label is either a street name or a public transport stop, depending on the transport mode of the request.

UserLabel xs:string

Used to identify a waypoint point with a custom name. Copied verbatim as specified in the request.

ShapeIndex xs:int

Specifies the index of this waypoint, based on the global shape array that is provided at the route level.