Skip to main content
POST
Evaluate an imported solution
V3 is in beta. General availability (GA) is planned for January 2027.

Authorizations

Authorization
string
header
required

Query Parameters

validate_only
boolean

Check the request without fetching a matrix or searching. 200 {"valid": true, "warnings": []}, or a 400 for the problem, options and caps; plan is matched against the problem only by the real call, after the fetch (suggest's check that plan leaves a task to place does run here). Any other query parameter is rejected with a 400 unknown_field, as in the body: a misspelt validateOnly must not fall through to a billed solve.

Body

application/json

Request body for POST /v3/routing/evaluate.

Scores plan against problem without running the optimizer: objective totals, timing, loads and constraint violations. Tasks absent from every route are reported as unassigned. A solve response's plan goes in as it stands.

plan
object
required

The plan to score.

problem
object
required

Problem definition — identical to POST /v3/routing/solve.

Example:

Response

Solution evaluated. With ?validate_only=true: a ValidateOnlyResponse, {"valid": true, "warnings": []}, without a matrix fetch, not billed.

The 200 body of solve, evaluate and suggest: the call's result, or with ?validate_only=true the validation verdict (ValidateOnlyResponse).

plan
object
required

The plan these routes follow, in the request's vocabulary: valid input to evaluate, suggest or a warm-started solve as it stands.

routes
object[]
required

One entry per non-empty route.

summary
object
required

Aggregate statistics for the solve run.

Example:
unassigned
object[]
required

Tasks that could not be feasibly assigned.