For requests with more than 60 visits (i.e. 30 orders), it is necessary to use the asynchronous endpoint /pdp-long for long-running tasks to avoid timeouts. We recommend that you to use this endpoint even for smaller requests.

Most real-world routing situations can be covered with the routing endpoint described above. There is one case that requires special attention: Same-day Pickup and Delivery. Each order has a pickup location and a drop-off location that are mutually dependent. An item can only be dropped off after it has been picked up by the same driver.

The algorithm will find the optimal routes to do all your orders, so it may often occur that you pick up multiple orders before you drop them off. If you specify capacity constraints, it will ensure that your vehicles won't try to carry more than they can hold.

Some example use-cases:

  • same-day courier
  • taxi services
  • moving companies
  • transportation services
  • third-party restaurant delivery


Next-day pickup and delivery

Note that if you do pickups and deliveries, but they are not same-day, then you can use the normal Vehicle Routing endpoint, because there are no direct dependencies between the visits in the route you are solving.

When using the capacity and load parameters, you can use a negative load to indicate a drop-off, which would clear up space in your vehicle.