Skip to content
GuidesPlaygroundDashboard

Optimize

Optimize route through waypoints
optimize().create(OptimizeCreateParamsparams, RequestOptionsrequestOptions = RequestOptions.none()) : OptimizeResult
POST/api/v1/optimize
Get async optimization result
optimize().retrieve(OptimizeRetrieveParamsparams = OptimizeRetrieveParams.none(), RequestOptionsrequestOptions = RequestOptions.none()) : OptimizeJobStatus
GET/api/v1/optimize/{job_id}
ModelsExpand Collapse
class OptimizeCompletedResult:

Completed optimization — GeoJSON Feature with optimized route

geometry: GeoJsonGeometry
coordinates: Coordinates

GeoJSON coordinates array (nesting depth varies by geometry type)

One of the following:
List<Double>
List<List<Double>>
List<List<List<Double>>>
List<List<List<List<Double>>>>
type: Type
One of the following:
POINT("Point")
LINE_STRING("LineString")
POLYGON("Polygon")
MULTI_POINT("MultiPoint")
MULTI_LINE_STRING("MultiLineString")
MULTI_POLYGON("MultiPolygon")
properties: Properties
distance: Optional<Double>

Total distance in meters

duration: Optional<Double>

Estimated duration in seconds

waypointOrder: Optional<List<Long>>

Optimized waypoint ordering

status: Status

Job status

type: Type
class OptimizeJobStatus:

Status of an async optimization job

status: Status

Job status

One of the following:
COMPLETED("completed")
PROCESSING("processing")
FAILED("failed")
error: Optional<String>

Error message when failed

result: Optional<JsonValue>

Optimization result when completed

class OptimizeProcessingResult:

Async optimization in progress — poll with the job_id

jobId: String

Job ID for polling

status: Status

Job status

class OptimizeRequest:

Route optimization request through waypoints

waypoints: GeoJsonGeometry

Waypoints to visit (GeoJSON MultiPoint geometry, minimum 2 points)

coordinates: Coordinates

GeoJSON coordinates array (nesting depth varies by geometry type)

One of the following:
List<Double>
List<List<Double>>
List<List<List<Double>>>
List<List<List<List<Double>>>>
type: Type
One of the following:
POINT("Point")
LINE_STRING("LineString")
POLYGON("Polygon")
MULTI_POINT("MultiPoint")
MULTI_LINE_STRING("MultiLineString")
MULTI_POLYGON("MultiPolygon")
mode: Optional<Mode>

Travel mode (default: auto)

One of the following:
AUTO("auto")
FOOT("foot")
BICYCLE("bicycle")
roundtrip: Optional<Boolean>

Whether route returns to start (default: true)

class OptimizeResult: A class that can be one of several variants.union

Optimization response — either a completed GeoJSON Feature route or an async job reference

class OptimizeCompletedResult:

Completed optimization — GeoJSON Feature with optimized route

geometry: GeoJsonGeometry
coordinates: Coordinates

GeoJSON coordinates array (nesting depth varies by geometry type)

One of the following:
List<Double>
List<List<Double>>
List<List<List<Double>>>
List<List<List<List<Double>>>>
type: Type
One of the following:
POINT("Point")
LINE_STRING("LineString")
POLYGON("Polygon")
MULTI_POINT("MultiPoint")
MULTI_LINE_STRING("MultiLineString")
MULTI_POLYGON("MultiPolygon")
properties: Properties
distance: Optional<Double>

Total distance in meters

duration: Optional<Double>

Estimated duration in seconds

waypointOrder: Optional<List<Long>>

Optimized waypoint ordering

status: Status

Job status

type: Type
class OptimizeProcessingResult:

Async optimization in progress — poll with the job_id

jobId: String

Job ID for polling

status: Status

Job status