Skip to content
GuidesPlaygroundDashboard

Calculate a route between two points

client.Routing.Route(ctx, body) (*RouteResult, error)
POST/api/v1/route

Calculate a route between two points

ParametersExpand Collapse
body RoutingRouteParams
RouteRequest param.Field[RouteRequest]
ReturnsExpand Collapse
type RouteResult struct{…}
Coordinates GeoJsonGeometryCoordinatesUnion

GeoJSON coordinates array (nesting depth varies by geometry type)

One of the following:
type GeoJsonGeometryCoordinatesArray []float64
type GeoJsonGeometryCoordinatesArray [][]float64
type GeoJsonGeometryCoordinatesArray [][][]float64
type GeoJsonGeometryCoordinatesArray [][][][]float64
Type GeoJsonGeometryType
One of the following:
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 float64optional

Total distance in meters

Duration float64optional

Estimated duration in seconds

Mode stringoptional

Travel mode used

Type RouteResultType

Calculate a route between two points

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)
}
Returns Examples