swagger: '2.0'
info:
version: 2020-08-01-preview
title: Microsoft Azure AccessControlClient AccessConnector Wayfinding API
schemes:
- https
tags:
- name: Wayfinding
paths:
/wayfinding/path:
get:
summary: Microsoft Azure Use To Calculate The Best Path Between Two Locations Within A Facility
description:
The Wayfinding Service is part of Creator, and adheres to the [Open Geospatial Consortium](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) standard. Wayfinding uses indoor map data from the [routeset](/rest/api/maps-creator/routeset) to calculate the best path between two locations within the same facility. For more information, see [Wayfinding](/azure/azure-maps/creator-indoor-maps#wayfinding-preview) in the _Creator for indoor maps_ concepts article.
operationId: microsoftAzureWayfindingGetpath
x-ms-examples:
Get the shortest path between two points in the facility.:
$ref: ./examples/wayfind/Wayfinding_GetPath.json
parameters:
- $ref: ../../../Common/preview/1.0/common.json#/parameters/ClientId
- $ref: '#/parameters/ApiVersion'
- $ref: '#/parameters/RoutesetId'
- $ref: '#/parameters/FacilityId'
- $ref: '#/parameters/FromPoint'
- $ref: '#/parameters/FromLevel'
- $ref: '#/parameters/ToPoint'
- $ref: '#/parameters/ToLevel'
- $ref: '#/parameters/AvoidFeatures'
- $ref: '#/parameters/MinWidth'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/WayfindResult'
default:
$ref: ../../../Common/preview/1.0/common.json#/responses/default
tags:
- Wayfinding
definitions:
Path:
description: The details about a particular path between the origin and destination. It can be made up of one or more legs.
type: object
properties:
lengthInMeters:
type: number
description: The path length, in meters, of the entire path.
timeInSeconds:
type: integer
format: int64
description: The path total time, in seconds, to travel between the origin and the destination when following this path.
legs:
description: The different travel sections of this path.
type: array
items:
$ref: '#/definitions/Leg'
x-ms-identifiers: []
Point:
description: A point within the facility.
type: object
properties:
latitude:
description: the point latitude
type: number
longitude:
description: the point longitude
type: number
required:
- latitude
- longitude
Leg:
description: A section of the overall path.
type: object
properties:
mode:
type: string
description: The leg mode of traversal for this leg. It can be default (all on the same level), elevators or stairs when moving vertically between levels.
lengthInMeters:
type: number
description: The leg length, in meters, of this leg.
timeInSeconds:
type: integer
format: int64
description: The leg travel time, in seconds, to travel between the first and last point of this leg.
startLevel:
type: integer
format: int32
description: The floor where this leg starts.
endLevel:
type: integer
format: int32
description: The floor where this leg ends.
points:
description: 'The leg shape points. Their vertical position is determined as follows: all the points are at the same height when startLevel and endLevel are the same, otherwise the array will contain only two points: the first at startLevel and the second at endLevel.'
type: array
items:
$ref: '#/definitions/Point'
x-ms-identifiers: []
WayfindResult:
description: The object returned by this Wayfinding Path request.
type: object
properties:
noResultExplanation:
type: string
description: In the event that no paths are found, the `paths` array will be empty. If the reason no paths were found can be determined, this property will provide an explanation why.
enum:
- NoExplanation
x-ms-enum:
name: NoResultExplanation
modelAsString: true
values:
- value: NoExplanation
description: Default value provided when a result is returned or it wasn't possible to determine why a path wasn't found.
readOnly: true
paths:
description: An array of wayfinding path results. An empty array will be returned if no results were found.
type: array
items:
$ref: '#/definitions/Path'
x-ms-identifiers: []
parameters:
AvoidFeatures:
name: avoidFeatures
description: To avoid certain types of connectors in the resulting path. Multiple values can be specified.
type: array
items:
type: string
enum:
- stairs
- elevators
x-ms-enum:
name: avoidFeatures
modelAsString: true
values:
- value: stairs
description: Avoid stairs.
- value: elevators
description: Avoid elevators.
in: query
x-ms-parameter-location: client
MinWidth:
name: minWidth
description: 'The minimum width (in meters) of openings in the searched path. For example, if you specified a minimum width of 0.85, the searched path will avoid openings less than 85 centimeters wide. Note: by using this value, the resulting path points will be buffered from walls and other vertical obstacles by half of the width provided.'
type: number
in: query
default: '0.55'
x-ms-parameter-location: client
FacilityId:
name: facilityId
type: string
in: query
description: The identifier of the facility within the routeset where to find the path.
required: true
x-ms-parameter-location: client
RoutesetId:
name: routesetId
description: The ID of the routeset to query from.
type: string
in: query
required: true
x-ms-parameter-location: client
FromPoint:
name: fromPoint
type: string
in: query
description: 'The path origin point in the following format: {latitude},{longitude}.'
required: true
x-ms-parameter-location: client
ToLevel:
name: toLevel
type: integer
format: int32
in: query
description: The path destination level.
required: true
x-ms-parameter-location: client
ApiVersion:
name: api-version
description: Version number of Azure Maps API.
type: string
in: query
required: true
x-ms-parameter-location: client
FromLevel:
name: fromLevel
type: integer
format: int32
in: query
description: The path origin level.
required: true
x-ms-parameter-location: client
ToPoint:
name: toPoint
type: string
in: query
description: 'The path destination in the following format: {latitude},{longitude}.'
required: true
x-ms-parameter-location: client
x-ms-parameterized-host:
hostTemplate: '{endpoint}'
useSchemePrefix: false
parameters:
- $ref: '#/parameters/Endpoint'