GuidesAPI Reference
Guides

Legal driver rest time regulations and parameters

Governments impose rules on how long a truck driver can drive before he needs to rest.

Route matching can consider these regulations with respect to short rests during a day and long (overnight) rests.

For example, in EU countries drivers have to rest after 4.5 hours of driving for at least 45 minutes, and must not exceed a total of 9 working hours per day before they have to rest for 11 hours.

You can activate this feature in route matching by using the "&restTimes=local" request parameter.

Route matching will then consider each country's local regulations as by the list "local" settings below.

In the same parameter you can specify whether the driver starts a new route or how long he has already been driving/on duty since his last short or long rest period.

The rest time rules can distinguish between totally elapsed time between rests and time actually driven (not standing still, not unloading goods), because the country wide regulations are using both variants.

Explicit rule specification has the following 10 elements:

  • driveShortSec: Driving time until a short rest is needed. Clock ticks only while vehicle moves.
  • timeShortSec: Elapsed time until a short rest is needed. Clock ticks always.
  • restShortSec: Short legal rest time (usually lunch break).
  • driveLongSec: Driving time until a long rest is needed. Clock ticks only while vehicle moves.
  • timeLongSec: Elapsed time until a long rest is needed. Clock ticks always.
  • restLongSec: Long legal rest time (usually night rest).
  • driveTimeSinceLastShortRestSec: Driver's driving time since his last short or long rest when the route starts.
  • elapsedTimeSinceLastShortRestSec: Driver's elapsed time since his last short or long rest when the route starts.
  • driveTimeSinceLastLongRestSec: Driver's driving time since his last long rest when the route starts.
  • elapsedTimeSinceLastLongRestSec: Driver's elapsed time since his last long rest when the route starts.

Route matching doesn't try to use more fine grained rules for optimization, for example the EU rule that the 45 minute short rest can be divided into a 15 minute break followed by a 30 minute break.

Route matching is aware of this rule when creating driver rest time violation warnings.

The rest times can be specified by using the parameter &restTimes= followed by 1, 4, 5, 6 or 10 comma separated values (no spaces)

  • Activate country specific usage (1 value).

Example: &restTimes=local Other country codes can be used, but local is the preferred value.

  • European regulation (4 values). Only driving times are accounted for, not other work times.

The values need to be structured in the following way: restTimes=driveShortSec,restShortSec,driveLongSec,restLongSec Example: &restTimes=16200,2700,32400,39600 where the first value (16200s or 4.5 h) represents the time after which a rest needs to be taken (for 2700s or 45 min) and the third and fourth values repesent the time after which a longer break needs to be taken (32400 s or 9 h) and (36600 s or 11 h).

  • International regulations while taking local regulations as a default including rest times taken over from last trip (5 values). For instance in the example below the local regulations might require a short rest after 4.5h, the driver has however driven 2.5h after a short rest in his last trip. So in the example he needs to take a short rest already after 2h.

The values need to be structured in the following way: restTimes=local,driveTimeSinceShortBrk,elapsedTimeSinceShortBrk,driveTimeSinceLongRest,elapsedTimeSinceLongRest

with elapsedTimeSinceShortBrk >= driveTimeSinceShortBrk, elapsedTimeSinceLongRest >= driveTimeSinceLongRest Example: &restTimes=local,7200,7200,14400,14400 The first value represents the local regulations, the second value represents the driven time since last short break (2h), the third value represents the elapsed time since last short break (2h), the fourth value represents the driven time since last long break (4h) and the fifth value represents the elapsed time since last long rest (4h).

  • European regulation (6 values). Only driving time is accounted for, other working time (for example loading the truck) is not covered.

The values need to be structured in the following way: restTimes=driveShortSec,restShortSec,driveLongSec,restLongSec,driveTimeSinceLastShortRestSec,driveTimeSinceLastLongRestSec Example: &restTimes=16200,2700,32400,39600,7200,14400 where the first four values are regulation values (16200s or 4.5h time to drive until the next short rest, 2700s or 0.45h short rest time, 32400s or 9h until the next long rest, 39600s or 11h long legal rest time) and the last two values are information on the driver's route (7200s or 2h driven time since last short rest, 14400s or 4h driven time since last long rest).

  • International regulation (10 values)

The values need to be structured in the following way: restTimes=driveShortSec,timeShortSec,restShortSec,driveLongSec,timeLongSec,restLongSec,driveTimeSinceLastShortRestSec,elapsedTimeSinceLastShortRestSec,driveTimeSinceLastLongRestSec,elapsedTimeSinceLastLongRestSec Example: &restTimes=999999,28800,1800,39600,50400,36000,7200,7200,14400,14400 where the first value represents the driving time before a short rest is needed (999999 means this value is not specified), the second value represents the elapsed time until a short rest is needed (in this case 28800s or 8h), the third value represents the short legal rest time (1800s or 0.5h), the fourth value represents the driving time until a long rest is needed (39600s or 11h), the fifth value represents the elapsed time until a long rest is needed (50400s or 14h), the sixth value represents the duration of a long rest (36000s or 10h), the seventh value represents the driven time since the last short rest (7200s or 2h), the eigth value represents the elapsed time since the last short rest (7200s or 2h), the ninth and tenth values represent the driven and the elapsed time since the last long rest (14400s or 4h).

“local“ settings can cover journeys in these countries:

  • Countries within the European Agreement Concerning the Work of Crews of Vehicles Engaged in International Road Transport (AETR), the EU and the European Economic Area (EEA) (*)
  • The United States (federal regulations)
  • Canada
  • Mexico
  • Brazil
  • Peru
  • Argentine
  • Uruguay
  • Chile
  • Japan

(*) EU, EEA + AETR Countries:

Austria Belgium Bulgaria Croatia Republic of Cyprus Czech Republic Denmark Estonia Finland France Germany Greece Hungary Ireland Italy Latvia Lithuania Luxembourg Malta Netherlands Poland Portugal Romania Slovakia Slovenia Spain Sweden United Kingdom Iceland Liechtenstein Norway Switzerland Albania Andorra Armenia Azerbaijan Belarus Bosnia and Herzegovina Kazakhstan Macedonia Moldova Monaco Montenegro Russia San Marino Serbia Turkey Turkmenistan Ukraine Uzbekistan For detailed information on driver rest time regulations in different countries, see the Country Profiles - Admin-wide Commercial Vehicle Regulation document you can obtain from HERE customer support.

Route matching tries to combine other wait times with legal driver rest times:

  • If a waypoint has a "stopOverDelay" where part of it qualifies as driver rest time (parameter "stopOverDelayRestTime") then route matching checks whether it should take the next upcoming driver rest already at this point to save time.
  • If the vehicle has to wait on a condition (roads not accessible for a few hours, weekend truck bans) then route matching checks whether it should take the next upcoming driver rest already at this point to save time.
  • If the vehicle has idle time during a longer ferry ride then route matching checks whether it should take the next upcoming driver rest already at this point to save time.

Route matching always checks all alternative options to combine a wait time with an earlier rest and chooses the combination that results in the overall fastest route and meets all deadlines and opening hours at the waypoints.

This feature works for route matching with given departure time, with given arrival time and without departure/arrival specification.

A special case are waiting times for ferry departures.

Route matching neither knows the exact ferry departure schedules nor the departure time that the driver has booked.

Hence, the waiting time - including automatic combination of waiting time with legal rest time by the router - must be modeled as an additional waypoint at the ferry terminal, in the route matching call, along with the "opening" and "closing" time parameters for the ferry departure.