Data - Upload
Use para cargar contenido de datos en una cuenta de Azure Maps.
Nota
Retirada del servicio Data de Azure Maps
El servicio Data de Azure Maps (tanto v1 como v2) ya está en desuso y se retirará el 16/9/24. Para evitar interrupciones del servicio, todas las llamadas al servicio Data deberán actualizarse para usar el servicio de registro de datos de Azure Maps antes del 16/9/24. Para más información, consulte Creación de un registro de datos.
La Data Upload
API es una solicitud HTTP POST
que permite al autor de la llamada cargar contenido de datos en el servicio Azure Maps.
Puede usar esta API en un escenario como cargar una colección de geovallas en GeoJSON
formato para su uso en nuestro servicio de geovalla Azure Maps.
Importante
Al usar esta característica, acepta los términos legales de versión preliminar. Consulte los Términos complementarios de la versión preliminar para obtener más detalles.
Enviar solicitud de carga
Para cargar el contenido, usará una POST
solicitud. El cuerpo de la solicitud contendrá los datos que se van a cargar. El dataFormat
parámetro de consulta contendrá el formato de los datos; el dataSharingLevel
parámetro de consulta puede contener el nivel de uso compartido de los datos. El Content-Type
encabezado se establecerá en el tipo de contenido de los datos.
Por ejemplo, para cargar una colección de geovallas en formato, establezca el cuerpo de la solicitud en GeoJSON
el contenido de la geovalla. Establezca el parámetro de dataFormat
consulta en geojson y establezca el Content-Type
encabezado en uno de los siguientes tipos de medios:
application/json
application/vnd.geo+json
application/octet-stream
El siguiente es un ejemplo de cuerpo de la solicitud para cargar una geovalla sencilla que se representa como una geometría circular mediante un punto central y un radio. El ejemplo siguiente se encuentra en GeoJSON
:
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
Data Upload API realiza una operación de larga duración.
Límites de carga de datos
Tenga en cuenta que actualmente cada cuenta de Azure Maps tiene un límite de almacenamiento de datos. Una vez alcanzado el límite de almacenamiento, todas las nuevas llamadas API de carga devolverán una 409 Conflict
respuesta de error http. Siempre puede usar la API de eliminación de datos para eliminar contenido antiguo o no utilizado y crear espacio para nuevas cargas.
POST https://{geography}.atlas.microsoft.com/mapData?api-version=2.0&dataFormat={dataFormat}
POST https://{geography}.atlas.microsoft.com/mapData?api-version=2.0&description={description}&dataFormat={dataFormat}
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
geography
|
path | True |
string |
Este parámetro especifica dónde se encuentra el recurso Azure Maps Creator. Los valores válidos son nosotros y eu. |
api-version
|
query | True |
string |
Número de versión de la API de Azure Maps. |
data
|
query | True |
Formato de datos del contenido que se va a cargar. |
|
description
|
query |
string |
Descripción que se va a proporcionar a la carga. |
Encabezado de la solicitud
Media Types: "application/json", "application/octet-stream"
Nombre | Requerido | Tipo | Description |
---|---|---|---|
x-ms-client-id |
string |
Especifica qué cuenta está pensada para su uso junto con el modelo de seguridad de Microsoft Entra ID. Representa un identificador único para la cuenta de Azure Maps y se puede recuperar de la API de cuenta del plano de administración de Azure Maps. Para usar Microsoft Entra ID seguridad en Azure Maps consulte los siguientes artículos para obtener instrucciones. |
Cuerpo de la solicitud
Media Types: "application/json", "application/octet-stream"
Nombre | Tipo | Description |
---|---|---|
UploadContent |
object |
Contenido que se va a cargar. |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK |
La operación se está ejecutando o completa. Si la operación se realizó correctamente, use el encabezado Resource-Location para obtener la ruta de acceso al resultado. Headers Resource-Location: string |
|
202 Accepted |
Solicitud aceptada: la solicitud se ha aceptado para su procesamiento. Use la dirección URL del encabezado Operation-Location para obtener el estado. Headers Operation-Location: string |
|
Other Status Codes |
Se alcanza el límite de almacenamiento de datos en la cuenta de Azure Maps. Siempre puede usar la API de eliminación de datos para eliminar contenido antiguo o no utilizado y crear espacio para nuevas cargas. |
|
Other Status Codes |
Se ha producido un error inesperado. |
Seguridad
AADToken
Estos son los flujos de OAuth 2.0 de Microsoft Entra. Cuando se empareja con el control de acceso basado en rol de Azure, se puede usar para controlar el acceso a Azure Maps API REST. Los controles de acceso basados en roles de Azure se usan para designar el acceso a una o varias Azure Maps cuenta de recursos o subrecursos. A cualquier usuario, grupo o entidad de servicio se le puede conceder acceso a través de un rol integrado o un rol personalizado compuesto por uno o varios permisos para Azure Maps API REST.
Para implementar escenarios, se recomienda ver los conceptos de autenticación. En resumen, esta definición de seguridad proporciona una solución para el modelado de aplicaciones a través de objetos capaces de controlar el acceso en determinadas API y ámbitos.
Notas
- Esta definición de seguridad requiere el uso del
x-ms-client-id
encabezado para indicar a qué recurso Azure Maps la aplicación solicita acceso. Esto se puede adquirir desde la API de administración de Maps .
Authorization URL
es específico de la instancia de nube pública de Azure. Las nubes soberanas tienen direcciones URL de autorización únicas y configuraciones de Microsoft Entra ID.
* El control de acceso basado en rol de Azure se configura desde el plano de administración de Azure a través de Azure Portal, PowerShell, CLI, SDK de Azure o API REST.
* El uso del SDK web de Azure Maps permite la configuración basada en la configuración de una aplicación para varios casos de uso.
- Para obtener más información sobre Plataforma de identidad de Microsoft, consulte Plataforma de identidad de Microsoft información general.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nombre | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Se trata de una clave compartida que se aprovisiona al Create una cuenta de Azure Maps en el Azure Portal o mediante PowerShell, la CLI, los SDK de Azure o la API REST.
Con esta clave, cualquier aplicación puede acceder a todas las API REST. En otras palabras, esta clave se puede usar como clave maestra en la cuenta en la que se emiten.
En el caso de las aplicaciones expuestas públicamente, nuestra recomendación es usar el enfoque de aplicaciones cliente confidenciales para acceder a Azure Maps API REST para que la clave se pueda almacenar de forma segura.
Type:
apiKey
In:
query
SAS Token
Se trata de un token de firma de acceso compartido que se crea a partir de la operación List SAS en el recurso de Azure Maps a través del plano de administración de Azure a través de Azure Portal, PowerShell, CLI, SDK de Azure o API REST.
Con este token, cualquier aplicación está autorizada para acceder a los controles de acceso basado en roles de Azure y al control específico de la expiración, la tasa y las regiones de uso para el token determinado. Es decir, el token de SAS se puede usar para permitir que las aplicaciones controlen el acceso de forma más segura que la clave compartida.
En el caso de las aplicaciones expuestas públicamente, nuestra recomendación es configurar una lista específica de orígenes permitidos en el recurso de la cuenta de mapa para limitar la representación de abusos y renovar periódicamente el token de SAS.
Type:
apiKey
In:
header
Ejemplos
Upload GeoJSON data containing geometries that represent a collection of geofences
Sample Request
POST https://us.atlas.microsoft.com/mapData?api-version=2.0&dataFormat=geojson
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.126986,
47.639754
]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}
]
}
Sample Response
Resource-Location: https://us.atlas.microsoft.com/mapData/3e36b996-f6d1-b068-0fcb-dd6b014c3447?api-version=2.0
{
"operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c",
"created": "2021-04-20T22:43:14.9401559+00:00",
"status": "Succeeded"
}
Operation-Location: https://us.atlas.microsoft.com/mapData/operations/{udid}?api-version=2.0
Access-Control-Expose-Headers: Operation-Location
{
"error": {
"code": "409 Conflict",
"message": "The data storage limit is reached on the Azure Maps account. You can always use the Data Delete API to delete old/unused content and create space for new uploads."
}
}
Definiciones
Nombre | Description |
---|---|
Data |
Formato de datos del contenido cargado. |
Error |
Información adicional sobre el error de administración de recursos. |
Error |
Detalle del error. |
Error |
Respuesta de error |
Long |
Modelo de respuesta para una API de operaciones de Long-Running. |
Lro |
Estado de la solicitud. |
DataFormat
Formato de datos del contenido cargado.
Nombre | Tipo | Description |
---|---|---|
dwgzippackage |
string |
Paquete ZIP que contiene el archivo DWG. |
geojson |
string |
GeoJSON es un formato de intercambio de datos geoespacial basado en JSON. |
zip |
string |
Formato de datos comprimidos. |
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. |
ErrorDetail
Detalle del error.
Nombre | Tipo | Description |
---|---|---|
additionalInfo |
Información adicional del error. |
|
code |
string |
Código de error. |
details |
Los detalles del error. |
|
message |
string |
El mensaje de error. |
target |
string |
Destino del error. |
ErrorResponse
Respuesta de error
Nombre | Tipo | Description |
---|---|---|
error |
Objeto de error. |
LongRunningOperationResult
Modelo de respuesta para una API de operaciones de Long-Running.
Nombre | Tipo | Description |
---|---|---|
created |
string |
Marca de tiempo creada. |
error |
Detalle del error. |
|
operationId |
string |
Identificador de esta operación de ejecución prolongada. |
status |
Estado de la solicitud. |
|
warning |
Detalle del error. |
LroStatus
Estado de la solicitud.
Nombre | Tipo | Description |
---|---|---|
Failed |
string |
La solicitud tiene uno o varios errores. |
NotStarted |
string |
La solicitud aún no ha iniciado el procesamiento. |
Running |
string |
La solicitud ha iniciado el procesamiento. |
Succeeded |
string |
La solicitud se ha completado correctamente. |