Skip to content
GuidesBlogPlaygroundDashboard

Get async optimization result

optimize().retrieve(OptimizeRetrieveParamsparams = OptimizeRetrieveParams.none(), RequestOptionsrequestOptions = RequestOptions.none()) : OptimizeJobStatus
GET/api/v1/optimize/{job_id}

Get async optimization result

ParametersExpand Collapse
params: OptimizeRetrieveParams
jobId: Optional<String>
ReturnsExpand Collapse
class OptimizeJobStatus:

Status of an async optimization job. When completed, the result field contains the full OptimizeCompletedResult. When processing, the job is still running — poll again. Failed jobs return a standard Error response (HTTP 422), not this schema.

status: Status

Current job state

One of the following:
COMPLETED("completed")
PROCESSING("processing")
result: Optional<OptimizeCompletedResult>

Completed optimization result as a GeoJSON FeatureCollection. Each Feature is a waypoint in optimized visit order. Top-level fields provide summary statistics.

features: List<Feature>

Waypoints in optimized visit order

geometry: GeoJsonGeometry

GeoJSON Geometry object per RFC 7946. Coordinates use [longitude, latitude] order. 3D coordinates [lng, lat, elevation] are used for elevation endpoints.

coordinates: Coordinates

Coordinates array. Nesting depth varies by geometry type: Point = [lng, lat], LineString = [[lng, lat], ...], Polygon = [[[lng, lat], ...], ...], etc.

One of the following:
List<Double>
List<List<Double>>
List<List<List<Double>>>
List<List<List<List<Double>>>>
type: Type

Geometry type

One of the following:
POINT("Point")
LINE_STRING("LineString")
POLYGON("Polygon")
MULTI_POINT("MultiPoint")
MULTI_LINE_STRING("MultiLineString")
MULTI_POLYGON("MultiPolygon")
properties: Properties
costS: Double

Travel time in seconds from the previous waypoint to this one (0 for the first waypoint)

cumulativeCostS: Double

Cumulative travel time in seconds from the start to this waypoint

waypointIndex: Long

Position of this waypoint in the optimized visit order (0-based)

type: Type
optimization: String

Optimization method used (e.g. nearest_neighbor, 2opt)

roundtrip: Boolean

Whether the route returns to the starting waypoint

totalCostS: Double

Total travel time for the optimized route in seconds

type: Type

Get async optimization result

package com.plazafyi.example

import com.plazafyi.client.PlazaClient
import com.plazafyi.client.okhttp.PlazaOkHttpClient
import com.plazafyi.models.optimize.OptimizeJobStatus
import com.plazafyi.models.optimize.OptimizeRetrieveParams

fun main() {
    val client: PlazaClient = PlazaOkHttpClient.fromEnv()

    val optimizeJobStatus: OptimizeJobStatus = client.optimize().retrieve("job_id")
}
{
  "status": "completed",
  "result": {
    "features": [
      {
        "geometry": {
          "coordinates": [
            2.3522,
            48.8566
          ],
          "type": "Point"
        },
        "properties": {
          "cost_s": 0,
          "cumulative_cost_s": 0,
          "waypoint_index": 0
        },
        "type": "Feature"
      }
    ],
    "optimization": "optimization",
    "roundtrip": true,
    "total_cost_s": 0,
    "type": "FeatureCollection"
  }
}
Returns Examples
{
  "status": "completed",
  "result": {
    "features": [
      {
        "geometry": {
          "coordinates": [
            2.3522,
            48.8566
          ],
          "type": "Point"
        },
        "properties": {
          "cost_s": 0,
          "cumulative_cost_s": 0,
          "waypoint_index": 0
        },
        "type": "Feature"
      }
    ],
    "optimization": "optimization",
    "roundtrip": true,
    "total_cost_s": 0,
    "type": "FeatureCollection"
  }
}