Optimize route through waypoints
client.Optimize.New(ctx, params) (*OptimizeResult, error)
POST/api/v1/optimize
Optimize route through waypoints
package main
import (
"context"
"fmt"
"github.com/plazafyi/plaza-go"
"github.com/plazafyi/plaza-go/option"
)
func main() {
client := githubcomplazafyiplazago.NewClient(
option.WithAPIKey("My API Key"),
)
optimizeResult, err := client.Optimize.New(context.TODO(), githubcomplazafyiplazago.OptimizeNewParams{
OptimizeRequest: githubcomplazafyiplazago.OptimizeRequestParam{
Waypoints: githubcomplazafyiplazago.F([]githubcomplazafyiplazago.OptimizeRequestWaypointParam{githubcomplazafyiplazago.OptimizeRequestWaypointParam{
Lat: githubcomplazafyiplazago.F(48.856600),
Lng: githubcomplazafyiplazago.F(2.352200),
}, githubcomplazafyiplazago.OptimizeRequestWaypointParam{
Lat: githubcomplazafyiplazago.F(48.860600),
Lng: githubcomplazafyiplazago.F(2.337600),
}, githubcomplazafyiplazago.OptimizeRequestWaypointParam{
Lat: githubcomplazafyiplazago.F(48.858400),
Lng: githubcomplazafyiplazago.F(2.294500),
}}),
},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", optimizeResult)
}
{
"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
{
"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"
}