Docs
  • Solver
  • Models
    • Field Service Routing
    • Employee Shift Scheduling
    • Pick-up and Delivery Routing
    • Task Scheduling
  • Platform
Start Free Trial
  • Timefold Solver SNAPSHOT
  • Running the Solver
  • As a service
  • Maps service configuration
  • Edit this Page

Timefold Solver SNAPSHOT

    • Introduction
    • Getting started
      • Overview
      • Build as a service
      • Embed as a library
        • Hello World guide
        • Quarkus guide
        • Spring Boot guide
    • Domain modeling
      • Guide
      • Building blocks
      • Common patterns
    • Constraints and score
      • Overview
      • Score calculation
      • Understanding the score
      • Load balancing and fairness
      • Performance tips and tricks
    • Running the Solver
      • Overview
      • As a service
        • REST API
        • Model configuration overrides
        • Model enrichment
        • Maps service configuration
        • Demo data
        • Exposing metrics
        • Service consumer guide
      • As a library
        • Configuring Timefold Solver
        • Constraint weights
        • Quarkus integration
        • Spring Boot integration
        • JPA/JAXB/JSON integration
    • Diagnosing the Solver
      • Benchmarking
      • Solver diagnostics
    • Deploying to the Timefold Platform
      • Overview
      • Guide
      • Platform model metadata
      • Using metrics
    • Optimization algorithms
      • Overview
      • Construction heuristics
      • Local search
      • Exhaustive search
      • Custom moves
        • Neighborhoods API
        • Move Selector reference
    • Responding to change
      • Continuous planning
      • Real-time planning
      • Non-disruptive replanning
      • Assignment Recommendation API
    • Example use cases
      • Vehicle routing (guide)
      • More examples on GitHub
    • FAQ
    • New and noteworthy
    • Upgrading Timefold Solver
      • Upgrading Timefold Solver: Overview
      • Upgrade Timefold Solver to the latest version
      • Upgrade from Timefold Solver 1.x to 2.x
      • Upgrading from OptaPlanner
      • Backwards compatibility
      • Migration guides
        • Variable Listeners to Custom Shadow Variables
        • Chained planning variable to planning list variable
        • @ShadowVariablesInconsistent to structural scores
    • Commercial editions
      • Overview
      • Installation
      • Performance improvements
      • Score analysis
      • Recommendation API
      • Nearby selection
      • Multithreaded solving
      • Partitioned search
      • Constraint profiling
      • Multistage moves
      • Throttling best solution events
      • License management

Maps service configuration

A routing model gets travel times, distances, and waypoints from the maps service. Set these properties in the application.properties of the model.

Property Default Description

timefold.platform.map-service.use-remote

true

When true, the model checks at startup that the maps service is available, and stops if it isn’t. When false, the model doesn’t call the maps service. It calculates travel times, distances, and waypoints locally with the Haversine formula (straight-line distance).

timefold.platform.map-service.url

The URL of the maps service, shown in the startup error when the maps service isn’t available. The REST client reads quarkus.rest-client.map-service.url, so set both, for example quarkus.rest-client.map-service.url=${timefold.platform.map-service.url}.

timefold.platform.map-service.provider

The map provider, sent to the maps service as the provider option.

timefold.platform.map-service.location

The map location, sent to the maps service as the location option.

timefold.platform.map-service.max-distance-from-road

Sent to the maps service as the maxDistanceFromRoad option.

timefold.platform.map-service.transport-type

Sent to the maps service as the transportType option.

timefold.platform.map-service.enable-fallback

false

When true and a call to the maps service fails, the model uses the Haversine formula for that call instead of failing.

timefold.platform.map-service.use-traffic

false

When true, the model gets a travel time matrix for each timeframe of the day: morning (06:00 to 12:00), afternoon (12:00 to 18:00), and night (18:00 to 06:00).

timefold.platform.map-service.default-timeframe

morning

The timeframe for a request that doesn’t name one, when use-traffic is true. Allowed values are morning, afternoon, and night (not case-sensitive). Another value stops the model at startup.

timefold.platform.map-service.waypoints-parallelism

8

The maximum number of waypoints calls to the maps service at the same time, for all datasets of one model instance. The value must be greater than zero, or the model stops at startup.

enable-fallback, use-traffic, and default-timeframe have no effect when use-remote is false.

  • © 2026 Timefold BV
  • Timefold.ai
  • Documentation
  • Changelog
  • Send feedback
  • Privacy
  • Legal
    • Light mode
    • Dark mode
    • System default