Route - Post Snap To Roads
API:et Snap to Roads accepterar GPS-punktdata, som representeras som longitud- och latitudkoordinater, och genererar punkter som överensstämmer med befintliga vägar på en karta. Den här processen, som kallas "snapping to roads", skapar en serie objekt som spårar en väg nära vägnätet. Resulterande data innehåller vägnamn och deras respektive hastighetsgränser, relevanta för de segment som passerar.
Dessutom erbjuder Snap to Roads API en interpoleringsfunktion, som förfinar GPS-punkterna för att skapa en smidigare väg som följer vägens geometri. Den här funktionen är särskilt fördelaktig för tillgångsspårning och förbättrad datavisualisering i mappningsprogram.
Viktigt!
GPS-punkterna måste ligga inom 6 kilometer från varandra.
För information om rutttillgänglighet i länder/regioner, se Azure Maps routingtäckning.
POST {endpoint}/route/snapToRoads?api-version=2025-01-01
URI-parametrar
| Name | I | Obligatorisk | Typ | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
|
|
api-version
|
query | True |
string minLength: 1 |
Den API-version som ska användas för den här åtgärden. |
Begärandehuvud
Media Types: "application/geo+json"
| Name | Obligatorisk | Typ | Description |
|---|---|---|---|
| x-ms-client-id |
string |
Anger vilket konto som är avsett för användning med Microsoft Entra ID-säkerhetsmodellen. Detta unika ID för Azure Maps-kontot kan erhållas från Azure Maps Management Plane Account API. För mer information om hur man använder Microsoft Entra ID säkerhet i Azure Maps, se Hantera autentisering i Azure Maps. |
|
| Accept-Language |
string |
Språk där routningsresultat ska returneras. För mer information, se Lokaliseringsstöd i Azure Maps. |
Begärandetext
Media Types: "application/geo+json"
| Name | Obligatorisk | Typ | Description |
|---|---|---|---|
| features | True |
En uppsättning punkter för att fästa till vägnätet. Du kan ha minst 2 poäng och högst 5000 poäng och de två på varandra följande poängen måste ligga inom 6 kilometer från varandra och en total vägsträcka på upp till 100 kilometer. Se RFC 7946 för mer information om GeoJSON-formatet.
|
|
| type | True |
Anger |
|
| includeSpeedLimit |
boolean |
Anger om hastighetsbegränsningsinformation ska inkluderas för snappade punkter i svaret. Enheten är i kilometer per timme. |
|
| interpolate |
boolean |
Anger om du vill returnera ytterligare punkter mellan de fästa punkterna för att slutföra den fullständiga vägsökvägen som smidigt följer väggeometrin. De interpolerade punkterna har |
|
| travelMode |
Anger routningsprofilen för att fästa punkterna. Om det är ospecificerat är standardläget "körning", vilket optimerar fästpunkterna för körvägar. |
Svar
| Name | Typ | Description |
|---|---|---|
| 200 OK |
Begäran har slutförts. Media Types: "application/geo+json", "application/json" |
|
| Other Status Codes |
Ett oväntat felsvar. Media Types: "application/geo+json", "application/json" |
Säkerhet
AadToken
Dessa är Microsoft Entra OAuth 2.0 flöden. När den kombineras med Azure rollbaserad åtkomst kontroll kan den användas för att kontrollera åtkomst till Azure Maps REST-API:er. Azure:s rollbaserade åtkomstkontroller används för att ange åtkomst till ett eller flera Azure Maps-resurskonton eller delresurser. Varje användare, grupp eller tjänstehuvudperson kan beviljas åtkomst via en inbyggd roll eller en anpassad roll bestående av en eller flera behörigheter för att Azure Maps REST-API:er.\n\nFör att implementera scenarier rekommenderar vi att man tittar på autentiseringskoncept. Sammanfattningsvis erbjuder denna säkerhetsdefinition en lösning för modellering av applikationer via objekt som kan åtkomstkontroll på specifika API:er och scopes.\n\n#### Anteckningar\n* Denna säkerhetsdefinition kräver användning av x-ms-client-id-headern för att ange vilken Azure Maps resurs applikationen begär åtkomst till. Detta kan hämtas från Maps management API.\n* \nAuthorization URL är specifik för den Azure publika molninstansen. Suveräna moln har unika auktoriserings-URL:er och Microsoft Entra ID-konfigurationer. \n* \nDen Azure rollbaserade åtkomstkontrollen konfigureras från Azure hanteringsplanet via Azure portal, PowerShell, CLI, Azure-SDK:er eller REST API:er.\n* \nAnvändning av Azure Maps Web SDK möjliggör konfigurationsbaserad installation av en applikation för flera användningsområden.\n* För mer information om Microsofts identitetsplattform, se Microsofts identitetsplattform översikt.
Typ:
oauth2
Flow:
implicit
Auktoriseringswebbadress:
https://login.microsoftonline.com/common/oauth2/authorize
Omfattningar
| Name | Description |
|---|---|
| https://atlas.microsoft.com/.default |
subscription-key
Detta är en delad nyckel som provisioneras när du Skapa ett Azure Maps-konto i Azure-portalen eller med PowerShell, CLI, Azure-SDK:er eller REST API.\n\n Med denna nyckel kan vilken applikation som helst komma åt alla REST API:er. Med andra ord kan denna nyckel användas som en huvudnyckel i det konto där de utfärdas.\n\n För offentligt exponerade applikationer rekommenderar vi att använda konfidentiella klientapplikationer för att komma åt Azure Maps REST-API:er så att din nyckel kan lagras säkert.
Typ:
apiKey
I:
header
SAS Token
Detta är en delad åtkomstsignaturtoken som skapas från List SAS-operationen på Azure Maps-resursen via Azure hanteringsplanet via Azure portal, PowerShell, CLI, Azure-SDK:er eller REST-API:er.\n\n Med denna token är varje applikation auktoriserad att få åtkomst med Azure rollbaserade åtkomstkontroller och finkornig kontroll till utgångsdatum, hastighet och region(er) för användning för den specifika token. Med andra ord kan SAS-token användas för att låta applikationer kontrollera åtkomsten på ett säkrare sätt än den delade nyckeln.\n\n För offentligt exponerade applikationer är vår rekommendation att konfigurera en specifik lista över tillåtna ursprung på Map-kontots resurs för att begränsa renderingsmissbruk och regelbundet förnya SAS-token.
Typ:
apiKey
I:
header
Exempel
Successfully retrieve snap to roads points with additional parameters in the body
Exempelbegäran
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"
}
Exempelsvar
{
"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
}
}
]
}
Definitioner
| Name | Description |
|---|---|
|
Features |
Anger |
|
Feature |
Anger |
|
Geo |
Anger |
|
Geo |
En giltig |
|
Input |
Anger indataknäppen till vägpunkter.
|
|
Maps |
Detaljerna om felet. |
|
Maps |
Vanligt felsvar för Azure Maps API:er för att returnera feldetaljer för misslyckade operationer. |
|
Maps |
Ett objekt som innehåller mer specifik information än det aktuella objektet om felet. |
|
Snap |
GeoJSON-funktionsobjekt som innehåller geometriobjekt och ytterligare egenskaper för vägen. |
|
Snap |
Fäst vid vägars egenskaper. |
|
Snap |
Det här objektet är begärandetexten. |
|
Snap |
Det här objektet returneras från ett lyckat anrop. |
|
Snap |
Anger routningsprofilen för att fästa punkterna. Om det är ospecificerat är standardläget "körning", vilket optimerar fästpunkterna för körvägar. |
FeaturesItemTypeEnum
Anger GeoJSON typ. Den enda objekttyp som stöds är Funktion. Mer information finns i RFC 7946.
| Värde | Description |
|---|---|
| Feature |
Anger objekttypen |
FeatureTypeEnum
Anger GeoJSON typ. Den enda objekttypen som stöds är FeatureCollection. Mer information finns i RFC 7946.
| Värde | Description |
|---|---|
| FeatureCollection |
Anger |
GeoJsonObjectType
Anger GeoJSON typ. Måste vara en av de nio giltiga GeoJSON-objekttyperna – Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature och FeatureCollection.
| Värde | Description |
|---|---|
| Point |
|
| MultiPoint |
|
| LineString |
|
| MultiLineString |
|
| Polygon |
|
| MultiPolygon |
|
| GeometryCollection |
|
| Feature |
|
| FeatureCollection |
|
GeoJsonPoint
En giltig GeoJSON Point geometrityp. Mer information finns i RFC 7946.
| Name | Typ | Description |
|---|---|---|
| coordinates |
number[] (double) |
En |
| type |
string:
Point |
Anger |
InputSnapToRoadsFeaturesItem
Anger indataknäppen till vägpunkter.
GeoJSON funktionsobjekt och ytterligare egenskaper. Mer information finns i RFC 7946.
| Name | Typ | Description |
|---|---|---|
| geometry |
En giltig |
|
| properties |
Egenskapsobjektet krävs i en giltig GeoJSON, men det kan vara tomt eftersom metadata inte används för att fästa på väg. |
|
| type |
Anger |
MapsErrorDetail
Detaljerna om felet.
| Name | Typ | Description |
|---|---|---|
| code |
string |
En av en serverdefinierad uppsättning felkoder. |
| details |
En matris med information om specifika fel som ledde till det rapporterade felet. |
|
| innererror |
Ett objekt som innehåller mer specifik information än det aktuella objektet om felet. |
|
| message |
string |
En mänsklig läsbar representation av felet. |
| target |
string |
Målet för felet. |
MapsErrorResponse
Vanligt felsvar för Azure Maps API:er för att returnera feldetaljer för misslyckade operationer.
| Name | Typ | Description |
|---|---|---|
| error |
Detaljerna om felet. |
MapsInnerError
Ett objekt som innehåller mer specifik information än det aktuella objektet om felet.
| Name | Typ | Description |
|---|---|---|
| code |
string |
Felkoden. |
| innererror |
Ett objekt som innehåller mer specifik information än det aktuella objektet om felet. |
SnapToRoadFeaturesItem
GeoJSON-funktionsobjekt som innehåller geometriobjekt och ytterligare egenskaper för vägen.
| Name | Typ | Description |
|---|---|---|
| bbox |
number[] (double) |
Ett rektangulärt område på jorden som definieras som ett avgränsningsramobjekt. Rektanglarnas sidor definieras av latitud- och longitudvärden. Mer information finns i RFC 7946, avsnitt 5. Exempel: "bbox": [-10.0, -10.0, 10.0, 10.0] |
| geometry |
En giltig |
|
| properties |
Fäst vid vägars egenskaper. |
|
| type |
Anger |
SnapToRoadsFeatureProperties
Fäst vid vägars egenskaper.
| Name | Typ | Description |
|---|---|---|
| inputIndex |
integer (int64) |
Identifiera motsvarande index i den ursprungliga listan med punkter för varje fästpunkt. Endast de snappade punkterna returnerar index och kan användas för att skilja dem från de interpolerade punkterna. |
| isInterpolated |
boolean |
Identifiera om det här är den interpolerade punkten. |
| name |
string |
Namnet på den väg som punkten fästs på. |
| speedLimitInKilometersPerHour |
number (double) |
Hastighetsbegränsning i kilometer per timme. |
SnapToRoadsRequest
Det här objektet är begärandetexten.
| Name | Typ | Standardvärde | Description |
|---|---|---|---|
| features |
En uppsättning punkter för att fästa till vägnätet. Du kan ha minst 2 poäng och högst 5000 poäng och de två på varandra följande poängen måste ligga inom 6 kilometer från varandra och en total vägsträcka på upp till 100 kilometer. Se RFC 7946 för mer information om GeoJSON-formatet.
|
||
| includeSpeedLimit |
boolean |
False |
Anger om hastighetsbegränsningsinformation ska inkluderas för snappade punkter i svaret. Enheten är i kilometer per timme. |
| interpolate |
boolean |
False |
Anger om du vill returnera ytterligare punkter mellan de fästa punkterna för att slutföra den fullständiga vägsökvägen som smidigt följer väggeometrin. De interpolerade punkterna har |
| travelMode | driving |
Anger routningsprofilen för att fästa punkterna. Om det är ospecificerat är standardläget "körning", vilket optimerar fästpunkterna för körvägar. |
|
| type |
Anger |
SnapToRoadsResponse
Det här objektet returneras från ett lyckat anrop.
| Name | Typ | Description |
|---|---|---|
| features |
|
|
| type |
Anger |
SnapToRoadsTravelModeEnum
Anger routningsprofilen för att fästa punkterna. Om det är ospecificerat är standardläget "körning", vilket optimerar fästpunkterna för körvägar.
| Värde | Description |
|---|---|
| driving |
Punkterna fästs på vägen som är lämplig för bilar. |
| truck |
Spetsarna fästs på vägen som är lämplig för lastbil. |