Route - Post Snap To Roads
A API snap to roads aceita dados de ponto GPS, representados como coordenadas de longitude e latitude, e gera pontos que se alinham com as estradas existentes em um mapa. Esse processo, conhecido como "encaixe em estradas", produz uma série de objetos que rastreiam um caminho de perto seguindo a rede rodoviária. Os dados resultantes incluem nomes de estrada e seus respectivos limites de velocidade, pertinentes aos segmentos percorridos.
Além disso, a API Snap to Roads oferece um recurso de interpolação, que refina os pontos gps para criar uma rota mais suave que adere à geometria da estrada. Essa funcionalidade é especialmente benéfica para o acompanhamento de ativos e para melhorar a visualização de dados em aplicativos de mapeamento.
Importante
Os pontos GPS devem estar a 6 quilômetros um do outro.
Para informações sobre a disponibilidade de roteamento em países/regiões, veja Azure Mapas cobertura de roteamento.
POST {endpoint}/route/snapToRoads?api-version=2025-01-01
Parâmetros de URI
| Nome | Em | Obrigatório | Tipo | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
|
|
api-version
|
query | True |
string minLength: 1 |
A versão da API a ser usada para esta operação. |
Cabeçalho da solicitação
Media Types: "application/geo+json"
| Nome | Obrigatório | Tipo | Description |
|---|---|---|---|
| x-ms-client-id |
string |
Indica a conta destinada a ser usada com o modelo de segurança do Microsoft Entra ID. Esse ID único para a conta Azure Mapas pode ser obtido a partir da API de Conta Azure Mapas plano de gerenciamento. Para mais informações sobre o uso da segurança Microsoft Entra ID em Azure Mapas, veja Gerencie autenticação em Azure Mapas. |
|
| Accept-Language |
string |
Idioma no qual os resultados do roteamento devem ser retornados. Para mais informações, veja Suporte à localização em Azure Mapas. |
Corpo da solicitação
Media Types: "application/geo+json"
| Nome | Obrigatório | Tipo | Description |
|---|---|---|---|
| features | True |
Um conjunto de pontos para ajustar à rede rodoviária. Você pode ter um mínimo de 2 pontos e um máximo de 5000 pontos e os dois pontos consecutivos devem estar a 6 quilômetros um do outro e uma distância total da estrada de até 100 quilômetros. Consulte RFC 7946 para obter detalhes sobre o formato GeoJSON.
|
|
| type | True |
Especifica o tipo de |
|
| includeSpeedLimit |
boolean |
Especifica se as informações de limite de velocidade devem ser incluídas para os pontos ajustados na resposta. A unidade está em quilômetros por hora. |
|
| interpolate |
boolean |
Especifica se deseja retornar pontos adicionais entre os pontos ajustados para concluir o caminho de rota completo que segue suavemente a geometria da estrada. Os pontos interpolados terão |
|
| travelMode |
Especifica o perfil de roteamento para ajustar os pontos. Se não for especificado, o modo padrão será "condução", o que otimiza os pontos ajustados para rotas de condução. |
Respostas
| Nome | Tipo | Description |
|---|---|---|
| 200 OK |
A solicitação foi bem-sucedida. Media Types: "application/geo+json", "application/json" |
|
| Other Status Codes |
Uma resposta de erro inesperada. Media Types: "application/geo+json", "application/json" |
Segurança
AadToken
Estes são os fluxos Microsoft Entra OAuth 2.0. Quando combinado com o controle de acesso baseado em funções Azure , pode ser usado para controlar o acesso às APIs REST Azure Mapas. Controles de acesso baseados em função do Azure são usados para designar acesso a uma ou mais contas ou subrecursos de recursos do Azure Mapas. Qualquer usuário, grupo ou principal de serviço pode receber acesso via um papel embutido ou um papel personalizado composto por uma ou mais permissões para Azure Mapas APIs REST.\n\nPara implementar cenários, recomendamos visualizar conceitos autenticação. Em resumo, essa definição de segurança fornece uma solução para modelagem de aplicações(ões) por meio de objetos capazes de controle de acesso em APIs e escopos específicos.\n\n#### Notas\n* Esta definição de segurança exige o uso do cabeçalho x-ms-client-id para indicar a qual Azure Mapas recurso o aplicativo está solicitando acesso. Isso pode ser adquirido da API de gerenciamento Maps.\n* \nO Authorization URL é específico para a instância Azure nuvem pública. As nuvens soberanas possuem URLs de Autorização e configurações de Microsoft Entra ID únicas. \n* \nO controle de acesso baseado em função Azure é configurado a partir do plano de gerenciamento Azure via portal Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.\n* \nUso do Azure Mapas Web SDK permite a configuração de uma aplicação baseada em configuração para múltiplos casos de uso.\n* Para mais informações sobre plataforma de identidade da Microsoft, veja plataforma de identidade da Microsoft visão geral.
Tipo:
oauth2
Flow:
implicit
URL de Autorização:
https://login.microsoftonline.com/common/oauth2/authorize
Escopos
| Nome | Description |
|---|---|
| https://atlas.microsoft.com/.default |
subscription-key
Esta é uma chave compartilhada que é provisionada quando você Criar uma conta Azure Mapas no portal Azure ou usando PowerShell, CLI, SDKs do Azure ou API REST.\n\n Com essa chave, qualquer aplicativo pode acessar toda a API REST. Em outras palavras, essa chave pode ser usada como uma chave mestra na conta em que são emitidas.\n\n Para aplicações publicamente expostas, nossa recomendação é usar a abordagem confidenciais de aplicativos clientes para acessar APIs REST Azure Mapas e assim sua chave possa ser armazenada com segurança.
Tipo:
apiKey
Em:
header
SAS Token
Este é um token de assinatura de acesso compartilhado criado a partir da operação List SAS no recurso Azure Mapas através do plano de gerenciamento Azure via portal Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.\n\n Com este token, qualquer aplicativo está autorizado a acessar com Azure controles de acesso baseados em funções e controle detalhado da expiração, taxa e região(s) de uso do token específico. Em outras palavras, o Token SAS pode ser usado para permitir que aplicações controlem o acesso de forma mais segura do que a chave compartilhada.\n\n Para aplicações publicamente expostas, nossa recomendação é configurar uma lista específica de origens permitidas no recurso da conta Map para limitar abusos de renderização e renovar regularmente o Token SAS.
Tipo:
apiKey
Em:
header
Exemplos
Successfully retrieve snap to roads points with additional parameters in the body
Solicitação de exemplo
POST {endpoint}/route/snapToRoads?api-version=2025-01-01
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336729,
47.590868
]
},
"properties": {}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336042,
47.601604
]
},
"properties": {}
}
],
"includeSpeedLimit": true,
"travelMode": "driving"
}
Resposta de exemplo
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336769,
47.590885
]
},
"properties": {
"name": "State Rte-99 N",
"inputIndex": 0,
"isInterpolated": false,
"speedLimitInKilometersPerHour": 80
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336008,
47.601609
]
},
"properties": {
"name": "State Rte-99 N",
"inputIndex": 1,
"isInterpolated": false,
"speedLimitInKilometersPerHour": 80
}
}
]
}
Definições
| Nome | Description |
|---|---|
|
Features |
Especifica o tipo de |
|
Feature |
Especifica o tipo de |
|
Geo |
Especifica o tipo de |
|
Geo |
Um tipo de geometria de |
|
Input |
Especifica o snap de entrada para pontos de estradas.
|
|
Maps |
O detalhe do erro. |
|
Maps |
Resposta comum de erro para APIs do Azure Mapas devolver detalhes de erro em operações falhadas. |
|
Maps |
Um objeto que contém informações mais específicas do que o objeto atual sobre o erro. |
|
Snap |
Objeto de recurso GeoJSON que contém o objeto Geometry e propriedades adicionais da rota. |
|
Snap |
Ajuste às propriedades do Roads. |
|
Snap |
Esse objeto é o corpo da solicitação. |
|
Snap |
Esse objeto é retornado de uma chamada bem-sucedida. |
|
Snap |
Especifica o perfil de roteamento para ajustar os pontos. Se não for especificado, o modo padrão será "condução", o que otimiza os pontos ajustados para rotas de condução. |
FeaturesItemTypeEnum
Especifica o tipo de GeoJSON. O único tipo de objeto com suporte é o Recurso. Para obter mais informações, consulte RFC 7946.
| Valor | Description |
|---|---|
| Feature |
Especifica o tipo de objeto |
FeatureTypeEnum
Especifica o tipo de GeoJSON. O único tipo de objeto com suporte é FeatureCollection. Para obter mais informações, consulte RFC 7946.
| Valor | Description |
|---|---|
| FeatureCollection |
Especifica o tipo de objeto |
GeoJsonObjectType
Especifica o tipo de GeoJSON. Deve ser um dos nove tipos de objeto GeoJSON válidos – Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.
| Valor | Description |
|---|---|
| Point |
|
| MultiPoint |
|
| LineString |
|
| MultiLineString |
|
| Polygon |
|
| MultiPolygon |
|
| GeometryCollection |
|
| Feature |
|
| FeatureCollection |
|
GeoJsonPoint
Um tipo de geometria de GeoJSON Point válido. Consulte RFC 7946 para obter detalhes.
InputSnapToRoadsFeaturesItem
Especifica o snap de entrada para pontos de estradas.
GeoJSON objeto de recurso e propriedades adicionais. Consulte RFC 7946 para obter detalhes.
| Nome | Tipo | Description |
|---|---|---|
| geometry |
Um tipo de geometria de |
|
| properties |
O objeto properties é necessário em um GeoJSON válido, mas pode estar vazio, pois os metadados não são usados para ajustar à estrada. |
|
| type |
Especifica o tipo de |
MapsErrorDetail
O detalhe do erro.
| Nome | Tipo | Description |
|---|---|---|
| code |
string |
Um de um conjunto definido pelo servidor de códigos de erro. |
| details |
Uma matriz de detalhes sobre erros específicos que levaram a esse erro relatado. |
|
| innererror |
Um objeto que contém informações mais específicas do que o objeto atual sobre o erro. |
|
| message |
string |
Uma representação do erro em formato legível por humanos. |
| target |
string |
O destino do erro. |
MapsErrorResponse
Resposta comum de erro para APIs do Azure Mapas devolver detalhes de erro em operações falhadas.
| Nome | Tipo | Description |
|---|---|---|
| error |
O detalhe do erro. |
MapsInnerError
Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.
| Nome | Tipo | Description |
|---|---|---|
| code |
string |
O código de erro. |
| innererror |
Um objeto que contém informações mais específicas do que o objeto atual sobre o erro. |
SnapToRoadFeaturesItem
Objeto de recurso GeoJSON que contém o objeto Geometry e propriedades adicionais da rota.
| Nome | Tipo | Description |
|---|---|---|
| bbox |
number[] (double) |
Uma área retangular na Terra definida como um objeto de caixa delimitadora. Os lados dos retângulos são definidos por valores de latitude e longitude. Para obter mais informações, consulte RFC 7946, Seção 5. Exemplo: "bbox": [-10.0, -10.0, 10.0, 10.0] |
| geometry |
Um tipo de geometria de |
|
| properties |
Ajuste às propriedades do Roads. |
|
| type |
Especifica o tipo de |
SnapToRoadsFeatureProperties
Ajuste às propriedades do Roads.
| Nome | Tipo | Description |
|---|---|---|
| inputIndex |
integer (int64) |
Identifique o índice correspondente na lista original de pontos para cada ponto ajustado. Somente os pontos ajustados retornarão índices e poderão ser usados para distingui-los dos pontos interpolados. |
| isInterpolated |
boolean |
Identifique se esse é o ponto interpolado. |
| name |
string |
Nome da estrada para a qual o ponto é encaixado. |
| speedLimitInKilometersPerHour |
number (double) |
Limite de velocidade em quilômetros por hora. |
SnapToRoadsRequest
Esse objeto é o corpo da solicitação.
| Nome | Tipo | Valor padrão | Description |
|---|---|---|---|
| features |
Um conjunto de pontos para ajustar à rede rodoviária. Você pode ter um mínimo de 2 pontos e um máximo de 5000 pontos e os dois pontos consecutivos devem estar a 6 quilômetros um do outro e uma distância total da estrada de até 100 quilômetros. Consulte RFC 7946 para obter detalhes sobre o formato GeoJSON.
|
||
| includeSpeedLimit |
boolean |
False |
Especifica se as informações de limite de velocidade devem ser incluídas para os pontos ajustados na resposta. A unidade está em quilômetros por hora. |
| interpolate |
boolean |
False |
Especifica se deseja retornar pontos adicionais entre os pontos ajustados para concluir o caminho de rota completo que segue suavemente a geometria da estrada. Os pontos interpolados terão |
| travelMode | driving |
Especifica o perfil de roteamento para ajustar os pontos. Se não for especificado, o modo padrão será "condução", o que otimiza os pontos ajustados para rotas de condução. |
|
| type |
Especifica o tipo de |
SnapToRoadsResponse
Esse objeto é retornado de uma chamada bem-sucedida.
| Nome | Tipo | Description |
|---|---|---|
| features |
|
|
| type |
Especifica o tipo de |
SnapToRoadsTravelModeEnum
Especifica o perfil de roteamento para ajustar os pontos. Se não for especificado, o modo padrão será "condução", o que otimiza os pontos ajustados para rotas de condução.
| Valor | Description |
|---|---|
| driving |
Os pontos são encaixados na estrada adequada para carros. |
| truck |
Os pontos são encaixados na estrada adequada para caminhão. |