Our service optimizes the routes by assigning shipments (deliveries or pickups) to vehicles considering constraints like territory, time window, capacity and special attributes. Shipments hold the information required to plan the routes:
- Time windows
- Shipment type - delivery or pickup
- Load dimensions like pallet places, weight & height, volume, loading meter
- Required attributes of a vehicle like trailer, liftgate or ADR
You can find a short description of all the properties in our delivery schema in the API reference.
shipment_type sets the type of a shipment as
pickup. We also support Directs - freight that is picked up on tour and delivered on tour, so there is no depot loading or unloading. Deliveries that have such a pickup on tour reference those using the
We consider the expected length of a stay for loading and unloading shipments.
It is composed of two values:
fixed_els: The fixed part of the loading and unloading time for a shipment.
variable_els: The variable part of loading and unloading time based on the shipment loads.
els for a shipment will be calculated as
fixed_els + n * variable_els, where
n is the amount of the corresponding load parameter.
variable_els can just be defined for one load parameter of a shipment.
We follow a hierarchy of
els settings in order to fetch the best value possible:
- fixed and variable
elsdefined in shipment data
- fixed and variable
elsdefined on a vehicle level
- fixed and variable
elsdefined on a vehicle type level
- Fallback to default fixed and variable
elsstored in our DB if no
elsis provided in an upper level
We can group the time attributes of a delivery into two categories.
- The times that are used as input for the routing algorithm, which need to be known before planning a tour, e.g. the
- The times that are calculated by the routing algorithm. These are e.g. the "target delivery time - tdt" or the "expected time of arrival - ETA".
We can also plan with multiple time windows. They can be set by using arrays of
"pdt_from": ["2020-07-03T10:30:00+02:00", "2020-07-03T12:30:00+02:00"], "pdt_to": ["2020-07-03T11:30:00+02:00", "2020-07-03T13:30:00+02:00"]
So in this example we have two time windows: The first from "10:30" to "11:30", the second from "12:30" to "13:30".
Make sure that all dates and times are formatted according to the ISO 8601 standard.
Be aware that the time zone designator is mandatory.
Time spans are often specified in minutes for convenience.
But you may have already noticed that there are many more properties, having
_to in their names, and all of them describe time spans, calculated by our algorithm. So let's explain them one by one.
The first is the target delivery time, abbreviated to
tdt_to. It defines the time span, that when met by the driver, allows that the next delivery
tdt can also be met. This time span is always within the planned delivery time span.
The next time span estimated time of arrival
eta is derived from the target delivery time
tdt. It serves some important functionality. First of all, the
tdts can be very wide when the planned delivery time windows (
pdts) are very large. So it narrows them down to a more definite interval. This is also the time that is communicated to the end customer.
The last of this bunch of time spans is the driver delivery time
ddt. It is the time span, that is supposed to be communicated to the driver to tell him at what time it would be best to arrive. It is very similar to the
eta, but usually a little earlier.
One more time is missing: the planned pickup time
ppt. We fully support pickup and delivery services, but at this point is beyond the scope of this tutorial.
A time related settings overview:
|PDT||planned delivery time||Manual input based on customer wishes.|
|TDT||target delivery time||Calculated possible time span of delivery, based on pre-defined time constraints and traffic forecasts.|
|DDT||driver delivery time||Time span of delivery to be communicated to the driver based on TDT.|
|ETA||estimated time of arrival||Time span of delivery to be communicated to the end customer based on TDT.|
Used for customer notification.
|PPT||planned pickup time||Manual input based on customer wishes.|
|ELS||estimated length of stay (seconds)||Defines the time span for a stopp|
Updated 3 months ago