Docs
  • Solver
  • Models
    • Field Service Routing
    • Employee Shift Scheduling
    • Pick-up and Delivery Routing
  • Platform
Try models
  • Pick-up and Delivery Routing
  • Upgrading to the latest versions

Pick-up and Delivery Routing

    • Introduction
    • Getting started: Hello world
    • User guide
      • Terms
      • Planning AI concepts
      • Constraints
      • Demo datasets
      • Input validation
      • Routing with Timefold’s maps service
      • Metrics and optimization goals
    • Driver resource constraints
      • Lunch breaks and personal appointments
      • Route optimization
      • Shift hours and overtime
    • Job service constraints
      • Time windows and opening hours
      • Skills
      • Movable stops and multi-day schedules
      • Dependencies between stops
      • Priority jobs and optional jobs
      • Job requirements and tags
        • Job required drivers
        • Job pooling
        • Prohibit job combinations
        • Maximum time burden
        • Driver capacity
        • Tags
    • Real-time planning
    • Changelog
    • Upgrading to the latest versions
    • Feature requests

Upgrading to the latest versions

From 0.58.0 to 0.59.0

Naming changes in the input API

To improve clarity and consistency in the input API, we have updated the way capacities and demands are defined for drivers and jobs. The following changes have been made:

Driver capacity

  • The field previously named capacityDefinitions in a driver shift has been renamed capacities.

  • The capacityName field in a capacity definition has been renamed type.

  • The providedCapacity field in a capacity definition has been renamed quantity.

Before:

{
  "capacityDefinitions": [
    {
      "capacityName": "Passenger",
      "providedCapacity": 5
    }
  ]
}

After:

{
  "capacities": [
    {
      "type": "Passenger",
      "quantity": 5
    }
  ]
}

Stop demands

  • The field previously named capacityRequirements in a stop has been renamed demands.

  • The capacityName field in a capacity requirement has been renamed type.

  • The requiredCapacity field in a capacity requirement has been renamed pickup.

  • The freedCapacity field in a capacity requirement has been renamed deliver.

Before:

{
  "capacityRequirements": [
    {
        "capacityName": "Passenger",
        "requiredCapacity": 5,
        "freedCapacity": 0
    }
  ]
}

After:

{
  "demands": [
    {
        "type": "Passenger",
        "pickup": 5,
        "deliver": 0
    }
  ]
}
  • © 2026 Timefold BV
  • Timefold.ai
  • Documentation
  • Changelog
  • Send feedback
  • Privacy
  • Legal
    • Light mode
    • Dark mode
    • System default