Source: https://developers.woosmap.com/api-reference/indoor-api/get-indoor-distancematrix-venue_id/

> For clean Markdown of any page, append `.md` to the page URL.

> For a complete documentation index, see https://developers.woosmap.com/llms.txt

# Distance Matrix



# Distance Matrix

 GET 
https://api.woosmap.com/indoor/distancematrix/{venue\_id}

Get distances and durations for a matrix of origins and destinations, based on the recommended route between start and end points for a specified travel mode. The API returns information consisting of rows containing distance and duration values for each pair of start and end point. The returned distances are designed to be used to find and sort multiple assets by road distance. Duration values are provided as complementary info.

**Rate limit** : `20/1s`

### Authorization

[`private_key`](#authorization-indoor-api-privatekeyauth)
apiKeyquery

[`X-Api-Key`](#authorization-indoor-api-privatekeyheaderauth)
apiKeyheader

[`key`](#authorization-indoor-api-publickeyauth)
apiKeyquery

### Path Parameters

[`venue_id`](#path-venue-id)
stringrequired

ID of the venue

### Query Parameters

[`origins`](#query-origins)
stringrequired

A string with a list of origins seperated by `|`. Origins can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`

Example:`1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit`

[`destinations`](#query-destinations)
stringrequired

A string with a list of destinations seperated by `|`. Destinations can be of the format: `lat,lng,level`, `poi_id`, `ref:poi_ref`

Example:`1.2,2.1,1|exit_1|1.3,3.1,2|ref:main_exit`

[`language`](#query-language)
stringDefaults to `en`

A supported language as an ISO 639-1, 2 letter code.

[`routing_profile`](#query-routing-profile)
stringDefaults to `""`

The routing profile to use to calculate the path (depends on the modes which were used to digitize the venue)

[`units`](#query-units)
objectDefaults to `metric`

Unit System to use for response

### Response

200application/json

OK

[`status`](#resp-200-status)
stringrequired

A string to indicate the success of the request

[`rows`](#resp-200-rows)
object[]required

#Show 1 propertiesHide 1 properties

rows.[`elements`](#resp-200-rows-elements)
object[]required

Show 3 propertiesHide 3 properties

rows.elements.[`status`](#resp-200-rows-elements-status)
stringrequired

A string to indicate if a path was found or not

rows.elements.[`duration`](#resp-200-rows-elements-duration)
objectrequired

Show 2 propertiesHide 2 properties

rows.elements.duration.[`value`](#resp-200-rows-elements-duration-value)
numberrequired

Duration in seconds

rows.elements.duration.[`text`](#resp-200-rows-elements-duration-text)
stringrequired

Duration as text based response with unit type

rows.elements.[`distance`](#resp-200-rows-elements-distance)
objectrequired

Show 2 propertiesHide 2 properties

rows.elements.distance.[`value`](#resp-200-rows-elements-distance-value)
numberrequired

Distance in metres

rows.elements.distance.[`text`](#resp-200-rows-elements-distance-text)
stringrequired

Distance as text based response with unit type

### Errors

#400

Bad Request

 

`application/json`

[`detail`](#err-400-detail)
stringrequired

#401

Unauthorized

 

`application/json`

[`detail`](#err-401-detail)
stringrequired

#402

Payment Required

 

`application/json`

No properties defined

#403

Forbidden

 

`application/json`

No properties defined

#422

Unprocessable Entity

 

`application/json`

[`detail`](#err-422-detail)
object[]required

The validation errors.

[`context`](#err-422-context)
objectrequired

Context

```json
{
  "rows": [],
  "status": "OK"
}
```
