## Calculate a route between two points `client.Routing.Route(ctx, body) (*RouteResult, error)` **post** `/api/v1/route` Calculate a route between two points ### Parameters - `body RoutingRouteParams` - `RouteRequest param.Field[RouteRequest]` ### Returns - `type RouteResult struct{…}` - `Geometry GeoJsonGeometry` - `Coordinates GeoJsonGeometryCoordinatesUnion` GeoJSON coordinates array (nesting depth varies by geometry type) - `type GeoJsonGeometryCoordinatesArray []float64` - `type GeoJsonGeometryCoordinatesArray [][]float64` - `type GeoJsonGeometryCoordinatesArray [][][]float64` - `type GeoJsonGeometryCoordinatesArray [][][][]float64` - `Type GeoJsonGeometryType` - `const GeoJsonGeometryTypePoint GeoJsonGeometryType = "Point"` - `const GeoJsonGeometryTypeLineString GeoJsonGeometryType = "LineString"` - `const GeoJsonGeometryTypePolygon GeoJsonGeometryType = "Polygon"` - `const GeoJsonGeometryTypeMultiPoint GeoJsonGeometryType = "MultiPoint"` - `const GeoJsonGeometryTypeMultiLineString GeoJsonGeometryType = "MultiLineString"` - `const GeoJsonGeometryTypeMultiPolygon GeoJsonGeometryType = "MultiPolygon"` - `Properties RouteResultProperties` - `Distance float64` Total distance in meters - `Duration float64` Estimated duration in seconds - `Mode string` Travel mode used - `Type RouteResultType` - `const RouteResultTypeFeature RouteResultType = "Feature"` ### Example ```go 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"), ) routeResult, err := client.Routing.Route(context.TODO(), githubcomplazafyiplazago.RoutingRouteParams{ RouteRequest: githubcomplazafyiplazago.RouteRequestParam{ Destination: githubcomplazafyiplazago.F(githubcomplazafyiplazago.GeoJsonGeometryParam{ Coordinates: githubcomplazafyiplazago.F[githubcomplazafyiplazago.GeoJsonGeometryCoordinatesUnionParam](githubcomplazafyiplazago.GeoJsonGeometryCoordinatesArrayParam([]float64{0.000000})), Type: githubcomplazafyiplazago.F(githubcomplazafyiplazago.GeoJsonGeometryTypePoint), }), Origin: githubcomplazafyiplazago.F(githubcomplazafyiplazago.GeoJsonGeometryParam{ Coordinates: githubcomplazafyiplazago.F[githubcomplazafyiplazago.GeoJsonGeometryCoordinatesUnionParam](githubcomplazafyiplazago.GeoJsonGeometryCoordinatesArrayParam([]float64{0.000000})), Type: githubcomplazafyiplazago.F(githubcomplazafyiplazago.GeoJsonGeometryTypePoint), }), }, }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", routeResult.Geometry) } ```