ApiLeg Data Type

One leg of a trip -- that is, a temporally continuous piece of the journey that takes place on a particular vehicle (or on foot).

Properties
name data type constraints description
startTime number   The date and time this leg begins.
endTime number   The date and time this leg ends.
departureDelay number required For transit leg, the offset from the scheduled departure-time of the boarding stop in this leg. "scheduled time of departure at boarding stop" = startTime - departureDelay
arrivalDelay number required For transit leg, the offset from the scheduled arrival-time of the alighting stop in this leg. "scheduled time of arrival at alighting stop" = endTime - arrivalDelay
realTime boolean   Whether there is real-time data about this Leg
isNonExactFrequency boolean   Is this a frequency-based trip with non-strict departure times?
headway number   The best estimate of the time between two arriving vehicles. This is particularly important for non-strict frequency trips, but could become important for real-time trips, strict frequency trips, and scheduled trips with empirical headways.
distance number   The distance traveled while traversing the leg in meters.
pathway boolean   Is this leg a traversing pathways?
mode string   The mode (e.g., Walk) used when traversing this leg.
transitLeg boolean   Whether this leg is a transit leg or not.
route string   For transit legs, the route of the bus or train being used. For non-transit legs, the name of the street being traversed.
agencyName string  
agencyUrl string  
agencyBrandingUrl string  
agencyTimeZoneOffset number required
routeColor string   For transit leg, the route's (background) color (if one exists). For non-transit legs, null.
routeType number   For transit legs, the type of the route. Non transit -1 When 0-7: 0 Tram, 1 Subway, 2 Train, 3 Bus, 4 Ferry, 5 Cable Car, 6 Gondola, 7 Funicular When equal or highter than 100, it is coded using the Hierarchical Vehicle Type (HVT) codes from the European TPEG standard Also see http://groups.google.com/group/gtfs-changes/msg/ed917a69cf8c5bef
routeId string   For transit legs, the ID of the route. For non-transit legs, null.
routeTextColor string   For transit leg, the route's text color (if one exists). For non-transit legs, null.
interlineWithPreviousLeg boolean   For transit legs, if the rider should stay on the vehicle as it changes route names.
tripShortName string   For transit leg, the trip's short name (if one exists). For non-transit legs, null.
tripBlockId string   For transit leg, the trip's block ID (if one exists). For non-transit legs, null.
headsign string   For transit legs, the headsign of the bus or train being used. For non-transit legs, null.
agencyId string   For transit legs, the ID of the transit agency that operates the service used for this leg. For non-transit legs, null.
tripId string   For transit legs, the ID of the trip. For non-transit legs, null.
serviceDate string   For transit legs, the service date of the trip. For non-transit legs, null.

The trip service date should be used to identify the correct trip schedule and can not be trusted to display the date for any departures or arrivals. For example, the first departure for a given trip may happen at service date March 25th and service time 25:00, which in local time would be Mach 26th 01:00.

routeBrandingUrl string   For transit leg, the route's branding URL (if one exists). For non-transit legs, null.
from ApiPlace   The Place where the leg originates.
to ApiPlace   The Place where the leg begins.
intermediateStops array of ApiPlace   For transit legs, intermediate stops between the Place where the leg originates and the Place where the leg ends. For non-transit legs, null. This field is optional i.e. it is always null unless "showIntermediateStops" parameter is set to "true" in the planner request.
legGeometry EncodedPolylineBean   The leg's geometry.
steps array of ApiWalkStep   A series of turn by turn instructions used for walking, biking and driving.
alerts array of ApiAlert  
routeShortName string  
routeLongName string  
boardRule string  
alightRule string  
rentedBike boolean  
duration number required The leg's duration in seconds

Example

{
  "startTime" : 12345,
  "endTime" : 12345,
  "departureDelay" : 12345,
  "arrivalDelay" : 12345,
  "realTime" : true,
  "isNonExactFrequency" : true,
  "headway" : 12345,
  "distance" : 12345.0,
  "pathway" : true,
  "mode" : "...",
  "transitLeg" : true,
  "route" : "...",
  "agencyName" : "...",
  "agencyUrl" : "...",
  "agencyBrandingUrl" : "...",
  "agencyTimeZoneOffset" : 12345,
  "routeColor" : "...",
  "routeType" : 12345,
  "routeId" : "...",
  "routeTextColor" : "...",
  "interlineWithPreviousLeg" : true,
  "tripShortName" : "...",
  "tripBlockId" : "...",
  "headsign" : "...",
  "agencyId" : "...",
  "tripId" : "...",
  "serviceDate" : "...",
  "routeBrandingUrl" : "...",
  "from" : {
    "name" : "...",
    "stopId" : "...",
    "stopCode" : "...",
    "platformCode" : "...",
    "lon" : 12345.0,
    "lat" : 12345.0,
    "arrival" : 12345,
    "departure" : 12345,
    "orig" : "...",
    "zoneId" : "...",
    "stopIndex" : 12345,
    "stopSequence" : 12345,
    "vertexType" : "BIKESHARE",
    "bikeShareId" : "..."
  },
  "to" : {
    "name" : "...",
    "stopId" : "...",
    "stopCode" : "...",
    "platformCode" : "...",
    "lon" : 12345.0,
    "lat" : 12345.0,
    "arrival" : 12345,
    "departure" : 12345,
    "orig" : "...",
    "zoneId" : "...",
    "stopIndex" : 12345,
    "stopSequence" : 12345,
    "vertexType" : "TRANSIT",
    "bikeShareId" : "..."
  },
  "intermediateStops" : [ {
    "name" : "...",
    "stopId" : "...",
    "stopCode" : "...",
    "platformCode" : "...",
    "lon" : 12345.0,
    "lat" : 12345.0,
    "arrival" : 12345,
    "departure" : 12345,
    "orig" : "...",
    "zoneId" : "...",
    "stopIndex" : 12345,
    "stopSequence" : 12345,
    "vertexType" : "NORMAL",
    "bikeShareId" : "..."
  }, {
    "name" : "...",
    "stopId" : "...",
    "stopCode" : "...",
    "platformCode" : "...",
    "lon" : 12345.0,
    "lat" : 12345.0,
    "arrival" : 12345,
    "departure" : 12345,
    "orig" : "...",
    "zoneId" : "...",
    "stopIndex" : 12345,
    "stopSequence" : 12345,
    "vertexType" : "NORMAL",
    "bikeShareId" : "..."
  } ],
  "legGeometry" : {
    "points" : "...",
    "levels" : "...",
    "length" : 12345
  },
  "steps" : [ {
    "distance" : 12345.0,
    "relativeDirection" : "CIRCLE_CLOCKWISE",
    "streetName" : "...",
    "absoluteDirection" : "EAST",
    "exit" : "...",
    "stayOn" : true,
    "area" : true,
    "bogusName" : true,
    "lon" : 12345.0,
    "lat" : 12345.0,
    "elevation" : "...",
    "alerts" : [ {
      "alertHeaderText" : "...",
      "alertDescriptionText" : "...",
      "alertUrl" : "...",
      "effectiveStartDate" : 12345,
      "effectiveEndDate" : 12345
    }, {
      "alertHeaderText" : "...",
      "alertDescriptionText" : "...",
      "alertUrl" : "...",
      "effectiveStartDate" : 12345,
      "effectiveEndDate" : 12345
    } ]
  }, {
    "distance" : 12345.0,
    "relativeDirection" : "DEPART",
    "streetName" : "...",
    "absoluteDirection" : "SOUTHEAST",
    "exit" : "...",
    "stayOn" : true,
    "area" : true,
    "bogusName" : true,
    "lon" : 12345.0,
    "lat" : 12345.0,
    "elevation" : "...",
    "alerts" : [ {
      "alertHeaderText" : "...",
      "alertDescriptionText" : "...",
      "alertUrl" : "...",
      "effectiveStartDate" : 12345,
      "effectiveEndDate" : 12345
    }, {
      "alertHeaderText" : "...",
      "alertDescriptionText" : "...",
      "alertUrl" : "...",
      "effectiveStartDate" : 12345,
      "effectiveEndDate" : 12345
    } ]
  } ],
  "alerts" : [ {
    "alertHeaderText" : "...",
    "alertDescriptionText" : "...",
    "alertUrl" : "...",
    "effectiveStartDate" : 12345,
    "effectiveEndDate" : 12345
  }, {
    "alertHeaderText" : "...",
    "alertDescriptionText" : "...",
    "alertUrl" : "...",
    "effectiveStartDate" : 12345,
    "effectiveEndDate" : 12345
  } ],
  "routeShortName" : "...",
  "routeLongName" : "...",
  "boardRule" : "...",
  "alightRule" : "...",
  "rentedBike" : true,
  "duration" : 12345.0
}