## Match GPS coordinates to the road network `client.mapMatch.match(MapMatchMatchParamsbody, RequestOptionsoptions?): MapMatchResult` **post** `/api/v1/map-match` Match GPS coordinates to the road network ### Parameters - `body: MapMatchMatchParams` - `trace: GeoJsonGeometry` GPS trace (GeoJSON LineString geometry) - `coordinates: Array | Array> | Array>> | Array>>>` GeoJSON coordinates array (nesting depth varies by geometry type) - `Array` - `Array>` - `Array>>` - `Array>>>` - `type: "Point" | "LineString" | "Polygon" | 3 more` - `"Point"` - `"LineString"` - `"Polygon"` - `"MultiPoint"` - `"MultiLineString"` - `"MultiPolygon"` - `radiuses?: Array | null` Search radius per coordinate in meters (optional, default 50) ### Returns - `MapMatchResult` Map matching result with snapped geometry - `geometry: GeoJsonGeometry` - `coordinates: Array | Array> | Array>> | Array>>>` GeoJSON coordinates array (nesting depth varies by geometry type) - `Array` - `Array>` - `Array>>` - `Array>>>` - `type: "Point" | "LineString" | "Polygon" | 3 more` - `"Point"` - `"LineString"` - `"Polygon"` - `"MultiPoint"` - `"MultiLineString"` - `"MultiPolygon"` - `properties: Properties` - `confidence?: number` Match confidence score - `distance?: number` Total matched distance in meters - `duration?: number` Estimated duration in seconds - `type: "Feature"` - `"Feature"` - `legs?: Array>` Matched route legs between consecutive trace points ### Example ```typescript import Plaza from '@plazafyi/sdk'; const client = new Plaza({ apiKey: process.env['PLAZA_API_KEY'], // This is the default and can be omitted }); const mapMatchResult = await client.mapMatch.match({ trace: { coordinates: [0], type: 'Point' } }); console.log(mapMatchResult.geometry); ```