Route - Post Snap To Roads Batch
La API de Snap To Roads Batch envía lotes de hasta 100 consultas como una sola llamada a la API de Snap To Roads. Esta API permite un procesamiento eficaz de varias consultas en una solicitud, lo que reduce la necesidad de llamadas individuales.
Enviar solicitud por lotes sincrónica
Se recomienda la API sincrónica para solicitudes por lotes ligeras. Cuando el servicio recibe una solicitud, responderá tan pronto como se calculen los elementos por lotes y no habrá posibilidad de recuperar los resultados más adelante. La API sincrónica devolverá un error de tiempo de espera (una respuesta 408) si la solicitud tarda más de 60 segundos. El número de elementos por lotes se limita a 100 para esta API.
POST https://atlas.microsoft.com/route/snapToRoads:batch?api-version=2025-01-01
Cuerpo POST para solicitud por lotes
Para enviar el ajuste de a las rutas consultas, usará una solicitud de POST donde el cuerpo de la solicitud contendrá la matriz de batchItems en formato json y el encabezado Content-Type se establecerá en application/json. Este es un cuerpo de solicitud de ejemplo que contiene 1 acoplamiento a consultas de carreteras :
{
"batchItems": [
{
"optionalId": "bbc9c0f6-ab52-49d8-a788-a658fa654c94",
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336691,
47.59085
]
},
"properties": {
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336023,
47.601616
]
},
"properties": {
}
}
],
"includeSpeedLimit": true,
"travelMode": "driving"
}
]
}
Un acoplamiento a las carreteras objeto batchItem puede aceptar cualquiera de las compatibles que se ajusten a las carreterascuerpo de solicitud
El lote debe contener al menos 1 consulta de.
Modelo de respuesta por lotes
La respuesta por lotes contiene un componente de summary que indica el totalRequests que formaron parte de la solicitud por lotes original y successfulRequests es decir, las consultas que se ejecutaron correctamente. La respuesta por lotes también incluye una matriz de batchItems que contiene una respuesta para cada consulta y cada consulta de la solicitud por lotes. El batchItems contendrá los resultados en el mismo orden en que se enviaron las consultas originales en la solicitud por lotes.
Cada elemento es de uno de los siguientes tipos:
SnapToRoadsResponse: si la consulta se completó correctamente.Error: si se produjo un error en la consulta. La respuesta contendrá uncodey unmessageen este caso.
POST {endpoint}/route/snapToRoads:batch?api-version=2025-01-01
Parámetros de identificador URI
| Nombre | En | Requerido | Tipo | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
|
|
api-version
|
query | True |
string minLength: 1 |
La versión de API que se va a utilizar para esta operación. |
Encabezado de la solicitud
Media Types: "application/geo+json"
| Nombre | Requerido | Tipo | Description |
|---|---|---|---|
| x-ms-client-id |
string |
Indica la cuenta destinada a usarse con el modelo de seguridad Microsoft Entra ID. Este ID único para la cuenta de Azure Maps puede obtenerse desde la API de la cuenta Azure Maps plano de gestión. Para más información sobre el uso de la seguridad Microsoft Entra ID en Azure Maps, consulte Gestionar la autenticación en Azure Maps. |
|
| Accept-Language |
string |
Idioma en el que se deben devolver los resultados de enrutamiento. Para más información, consulte Soporte de localización en Azure Maps. |
Cuerpo de la solicitud
Media Types: "application/geo+json"
| Nombre | Tipo | Description |
|---|---|---|
| batchItems |
Lista de consultas que se van a procesar. |
Respuestas
| Nombre | Tipo | Description |
|---|---|---|
| 200 OK |
La solicitud se ha realizado correctamente. |
|
| Other Status Codes |
Una respuesta de error inesperada. |
Seguridad
AadToken
Estos son los flujos Microsoft Entra OAuth 2.0. Cuando se combina con el control de acceso basado en roles Azure puede usarse para controlar el acceso a Azure Maps APIs REST. Los controles de acceso basados en roles de Azure se utilizan para designar el acceso a una o más cuentas o subrecursos de recursos de Azure Maps. Cualquier usuario, grupo o principal de servicio puede recibir acceso mediante un rol incorporado o un rol personalizado compuesto por uno o más permisos para Azure Maps APIs REST.\n\nPara implementar escenarios, recomendamos consultar conceptos autenticación. En resumen, esta definición de seguridad proporciona una solución para modelar aplicaciones(es) mediante objetos capaces de control de acceso en APIs y ámbitos específicos.\n\n#### Notas\n* Esta definición de seguridad requiere el uso del encabezado x-ms-client-id para indicar a qué recurso Azure Maps solicita acceso la aplicación. Esto puede obtenerse de la API de gestión Maps.\n* \nEl Authorization URL es específico para la instancia Azure nube pública. Las nubes soberanas tienen URLs de Autorización y configuraciones de Microsoft Entra ID únicas. \n* \nEl control de acceso basado en roles Azure se configura desde el plano de gestión Azure a través de Azure portal, PowerShell, CLI, SDK de Azure o APIs REST.\n* \nUso del Azure Maps Web SDK permite la configuración de una aplicación para múltiples casos de uso.\n* Para más información sobre Plataforma de identidad de Microsoft, véase Plataforma de identidad de Microsoft visión general.
Tipo:
oauth2
Flujo:
implicit
Dirección URL de autorización:
https://login.microsoftonline.com/common/oauth2/authorize
Ámbitos
| Nombre | Description |
|---|---|
| https://atlas.microsoft.com/.default |
subscription-key
Esta es una clave compartida que se provisiona cuando Crea una cuenta Azure Maps en el portal Azure o usando PowerShell, CLI, SDK de Azure o REST API.\n\n Con esta clave, cualquier aplicación puede acceder a toda la API REST. En otras palabras, esta clave puede usarse como una llave maestra en la cuenta en la que se emiten.\n\n Para aplicaciones expuestas públicamente, nuestra recomendación es utilizar el enfoque
Tipo:
apiKey
En:
header
SAS Token
Este token de firma de acceso compartido se crea a partir de la operación List SAS en el recurso Azure Maps a través del plano de gestión de Azure mediante Azure portal, PowerShell, CLI, SDK de Azure o APIs REST.\n\n Con este token, cualquier aplicación está autorizada para acceder con Azure controles de acceso basados en roles y control detallado de la expiración, tasa y región(es) de uso para el token en particular. En otras palabras, el Token SAS puede usarse para permitir que las aplicaciones controlen el acceso de forma más segura que la clave compartida.\n\n Para aplicaciones expuestas públicamente, nuestra recomendación es configurar una lista específica de orígenes permitidos en el recurso de la cuenta Map para limitar el abuso de renderizado y renovar regularmente el Token SAS.
Tipo:
apiKey
En:
header
Ejemplos
A Snap To Roads Batch request containing 1 query
Solicitud de ejemplo
POST {endpoint}/route/snapToRoads:batch?api-version=2025-01-01
{
"batchItems": [
{
"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"
},
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.133269,
47.6470965
]
},
"properties": {}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-74.00487,
40.71396
]
},
"properties": {}
}
],
"travelMode": "driving"
}
]
}
Respuesta de muestra
{
"batchItems": [
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336773,
47.590876
]
},
"properties": {
"name": "State Rte-99 N",
"inputIndex": 0,
"isInterpolated": false,
"speedLimitInKilometersPerHour": 80
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.336008,
47.601606
]
},
"properties": {
"name": "State Rte-99 N",
"inputIndex": 1,
"isInterpolated": false,
"speedLimitInKilometersPerHour": 80
}
}
]
},
{
"error": {
"code": "BadRequest",
"message": "The distance between two consecutive points (-122.133269,47.6470965) (-74.00487,40.71396) must be within 6 kilometers of each other."
}
}
],
"summary": {
"successfulRequests": 1,
"totalRequests": 2
}
}
Definiciones
| Nombre | Description |
|---|---|
|
Common |
Detalle del error. |
|
Error |
Información adicional sobre el error de administración de recursos. |
|
Features |
Especifica el tipo de |
|
Feature |
Especifica el tipo de |
|
Geo |
Especifica el tipo de |
|
Geo |
Un tipo de geometría |
|
Input |
Especifica el ajuste de entrada a los puntos de carretera.
|
|
Maps |
Detalle del error. |
|
Maps |
Respuesta común a errores para que las APIs de Azure Maps devolvan detalles de error por operaciones fallidas. |
|
Maps |
Objeto que contiene información más específica que el objeto actual sobre el error. |
|
Snap |
Objeto de característica GeoJSON que contiene el objeto Geometry y propiedades adicionales de la ruta. |
|
Snap |
La lista de ajuste a las consultas o solicitudes de carretera que se van a procesar. La lista puede contener un máximo de 100 consultas y debe contener al menos 1 consulta. |
|
Snap |
Batch Query (objeto) |
|
Snap |
Este objeto se devuelve de una llamada correcta al servicio Snap To Roads Batch. |
|
Snap |
detalles del error |
|
Snap |
Resumen de la solicitud por lotes |
|
Snap |
Ajustar a las propiedades De carreteras. |
|
Snap |
Especifica el perfil de enrutamiento para ajustar los puntos. Si no se especifica, el modo predeterminado es "conducción", que optimiza los puntos acoplados para las rutas de conducción. |
CommonErrorDetail
Detalle del error.
| Nombre | Tipo | Description |
|---|---|---|
| additionalInfo |
Información adicional del error. |
|
| code |
string |
Código de error. |
| details |
Detalles del error. |
|
| message |
string |
El mensaje de error. |
| target |
string |
Destino del error. |
ErrorAdditionalInfo
Información adicional sobre el error de administración de recursos.
| Nombre | Tipo | Description |
|---|---|---|
| info |
object |
Información adicional. |
| type |
string |
Tipo de información adicional. |
FeaturesItemTypeEnum
Especifica el tipo de GeoJSON. El único tipo de objeto admitido es Feature. Para obtener más información, vea RFC 7946.
| Valor | Description |
|---|---|
| Feature |
Especifica el tipo de objeto feature de |
FeatureTypeEnum
Especifica el tipo de GeoJSON. El único tipo de objeto admitido es FeatureCollection. Para obtener más información, vea RFC 7946.
| Valor | Description |
|---|---|
| FeatureCollection |
Especifica el tipo de objeto |
GeoJsonObjectType
Especifica el tipo de GeoJSON. Debe ser uno de los nueve tipos de objeto GeoJSON válidos: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature y FeatureCollection.
| Valor | Description |
|---|---|
| Point |
|
| MultiPoint |
|
| LineString |
|
| MultiLineString |
|
| Polygon |
|
| MultiPolygon |
|
| GeometryCollection |
|
| Feature |
Objeto |
| FeatureCollection |
Objeto |
GeoJsonPoint
Un tipo de geometría GeoJSON Point válido. Consulte RFC 7946 para obtener más información.
InputSnapToRoadsFeaturesItem
Especifica el ajuste de entrada a los puntos de carretera.
GeoJSON objeto de característica y propiedades adicionales. Consulte RFC 7946 para obtener más información.
| Nombre | Tipo | Description |
|---|---|---|
| geometry |
Un tipo de geometría |
|
| properties |
El objeto properties es necesario en un GeoJSON válido, pero puede estar vacío, ya que los metadatos no se usan para ajustar a carretera. |
|
| type |
Especifica el tipo de |
MapsErrorDetail
Detalle del error.
| Nombre | Tipo | Description |
|---|---|---|
| code |
string |
Uno de un conjunto definido por el servidor de códigos de error. |
| details |
Matriz de detalles sobre errores específicos que llevaron a este error notificado. |
|
| innererror |
Objeto que contiene información más específica que el objeto actual sobre el error. |
|
| message |
string |
Una representación en lenguaje natural del error. |
| target |
string |
Destino del error. |
MapsErrorResponse
Respuesta común a errores para que las APIs de Azure Maps devolvan detalles de error por operaciones fallidas.
| Nombre | Tipo | Description |
|---|---|---|
| error |
Detalle del error. |
MapsInnerError
Objeto que contiene información más específica que el objeto actual sobre el error.
| Nombre | Tipo | Description |
|---|---|---|
| code |
string |
Código de error. |
| innererror |
Objeto que contiene información más específica que el objeto actual sobre el error. |
SnapToRoadFeaturesItem
Objeto de característica GeoJSON que contiene el objeto Geometry y propiedades adicionales de la ruta.
| Nombre | Tipo | Description |
|---|---|---|
| bbox |
number[] (double) |
Un área rectangular en la tierra definida como un objeto de rectángulo delimitador. Los lados de los rectángulos se definen mediante valores de latitud y longitud. Para obtener más información, vea RFC 7946, Sección 5. Ejemplo: "bbox": [-10.0, -10.0, 10.0, 10.0] |
| geometry |
Un tipo de geometría |
|
| properties |
Ajustar a las propiedades De carreteras. |
|
| type |
Especifica el tipo de |
SnapToRoadsBatchRequestBody
La lista de ajuste a las consultas o solicitudes de carretera que se van a procesar. La lista puede contener un máximo de 100 consultas y debe contener al menos 1 consulta.
| Nombre | Tipo | Description |
|---|---|---|
| batchItems |
Lista de consultas que se van a procesar. |
SnapToRoadsBatchRequestItem
Batch Query (objeto)
| Nombre | Tipo | Valor predeterminado | Description |
|---|---|---|---|
| features |
Un conjunto de puntos que se ajustarán a la red de carreteras. Puede tener un mínimo de 2 puntos y un máximo de 5000 puntos y los dos puntos consecutivos deben estar dentro de los 6 kilómetros entre sí y una distancia total por carretera de hasta 100 kilómetros. Consulte RFC 7946 para obtener detalles sobre el formato GeoJSON.
|
||
| includeSpeedLimit |
boolean |
False |
Especifica si se debe incluir información de límite de velocidad para los puntos acoplados en la respuesta. La unidad está en kilómetros por hora. |
| interpolate |
boolean |
False |
Especifica si se devuelven puntos adicionales entre los puntos acoplados para completar la ruta completa que sigue suavemente la geometría de la carretera. Los puntos interpolados tendrán |
| optionalId |
string |
Identificador de la solicitud que se mostraría en batchItem correspondiente. |
|
| travelMode | driving |
Especifica el perfil de enrutamiento para ajustar los puntos. Si no se especifica, el modo predeterminado es "conducción", que optimiza los puntos acoplados para las rutas de conducción. |
|
| type |
Especifica el tipo de |
SnapToRoadsBatchResponse
Este objeto se devuelve de una llamada correcta al servicio Snap To Roads Batch.
| Nombre | Tipo | Description |
|---|---|---|
| batchItems |
Matriz que contiene los resultados del lote. |
|
| summary |
Resumen de la solicitud por lotes |
SnapToRoadsBatchResponseItem
detalles del error
| Nombre | Tipo | Description |
|---|---|---|
| error |
Detalle del error. |
|
| features |
|
|
| optionalId |
string |
Identificador de la solicitud que se mostraría en batchItem correspondiente. |
| type |
Especifica el tipo de |
SnapToRoadsBatchResponseSummary
Resumen de la solicitud por lotes
| Nombre | Tipo | Description |
|---|---|---|
| successfulRequests |
integer (int32) |
Número de solicitudes correctas en el lote |
| totalRequests |
integer (int32) |
Número total de solicitudes en el lote |
SnapToRoadsFeatureProperties
Ajustar a las propiedades De carreteras.
| Nombre | Tipo | Description |
|---|---|---|
| inputIndex |
integer (int64) |
Identifique el índice correspondiente en la lista original de puntos para cada punto acoplado. Solo los puntos acoplados devolverán índices y se pueden usar para distinguirlos de los puntos interpolados. |
| isInterpolated |
boolean |
Identifique si se trata del punto interpolado. |
| name |
string |
Nombre de la carretera a la que se ajusta el punto. |
| speedLimitInKilometersPerHour |
number (double) |
Límite de velocidad en kilómetros por hora. |
SnapToRoadsTravelModeEnum
Especifica el perfil de enrutamiento para ajustar los puntos. Si no se especifica, el modo predeterminado es "conducción", que optimiza los puntos acoplados para las rutas de conducción.
| Valor | Description |
|---|---|
| driving |
Los puntos se acoplan a la carretera adecuada para los coches. |
| truck |
Los puntos se ajustan a la carretera adecuada para camiones. |