Data - Upload
Usare per caricare il contenuto dei dati in un account Mappe di Azure.
Nota
Ritiro del servizio dati di Mappe di Azure
Il servizio dati mappe di Azure ( sia v1 che v2 ) è ora deprecato e verrà ritirato il 9/16/ 24. Per evitare interruzioni del servizio, tutte le chiamate al servizio dati dovranno essere aggiornate per usare il servizio Registro dati di Mappe di Azure entro il 9/16/24. Per altre informazioni, vedere Come creare il Registro dati.
L'API Data Upload
è una richiesta HTTP POST
che consente al chiamante di caricare il contenuto dei dati nel servizio Mappe di Azure.
È possibile usare questa API in uno scenario come il caricamento di una raccolta di Geofences in GeoJSON
formato, per l'uso nel servizio Geofencing di Mappe di Azure.
Importante
Usando questa funzionalità, si accettano le condizioni legali di anteprima. Per altri dettagli, vedere Le condizioni supplementari di anteprima .
Invia richiesta di caricamento
Per caricare il contenuto si userà una POST
richiesta. Il corpo della richiesta conterrà i dati da caricare. Il dataFormat
parametro di query conterrà il formato per i dati, il dataSharingLevel
parametro di query può contenere il livello di condivisione per i dati. L'intestazione Content-Type
verrà impostata sul tipo di contenuto dei dati.
Ad esempio, per caricare una raccolta di geofences in GeoJSON
formato, impostare il corpo della richiesta sul contenuto di geofence. Impostare il parametro di query su geojson e impostare l'intestazione Content-Type
dataFormat
su uno dei tipi di supporto seguenti:
application/json
application/vnd.geo+json
application/octet-stream
Ecco un corpo di richiesta di esempio per il caricamento di un semplice Geofence rappresentato come geometria cerchio usando un punto centrale e un raggio. L'esempio seguente è in GeoJSON
:
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
L'API Caricamento dati esegue un'operazione a esecuzione prolungata.
Limiti di caricamento dei dati
Tenere presente che attualmente ogni account di Mappe di Azure ha un limite di archiviazione dati. Una volta raggiunto il limite di archiviazione, tutte le nuove chiamate API di caricamento restituiranno una 409 Conflict
risposta di errore http. È sempre possibile usare l'API Eliminazione dati per eliminare il contenuto precedente/inutilizzato e creare spazio per i nuovi caricamenti.
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}
Parametri dell'URI
Nome | In | Necessario | Tipo | Descrizione |
---|---|---|---|---|
geography
|
path | True |
string |
Questo parametro specifica dove si trova la risorsa Creator di Mappe di Azure. I valori validi sono noi ed eu. |
api-version
|
query | True |
string |
Numero di versione dell'API Mappe di Azure. |
data
|
query | True |
Formato dati del contenuto caricato. |
|
description
|
query |
string |
Descrizione da fornire al caricamento. |
Intestazione della richiesta
Media Types: "application/json", "application/octet-stream"
Nome | Necessario | Tipo | Descrizione |
---|---|---|---|
x-ms-client-id |
string |
Specifica l'account destinato all'utilizzo in combinazione con il modello di sicurezza Microsoft Entra ID. Rappresenta un ID univoco per l'account Mappe di Azure e può essere recuperato dall'API del piano di gestione mappe di Azure. Per usare la sicurezza di Microsoft Entra ID in Mappe di Azure, vedere gli articoli seguenti per indicazioni. |
Corpo della richiesta
Media Types: "application/json", "application/octet-stream"
Nome | Tipo | Descrizione |
---|---|---|
UploadContent |
object |
Contenuto da caricare. |
Risposte
Nome | Tipo | Descrizione |
---|---|---|
200 OK |
L'operazione è in esecuzione o completa. Se l'operazione ha esito positivo, usare l'intestazione Resource-Location per ottenere il percorso del risultato. Intestazioni Resource-Location: string |
|
202 Accepted |
Richiesta accettata: la richiesta è stata accettata per l'elaborazione. Usare l'URL nell'intestazione Operation-Location per ottenere lo stato. Intestazioni Operation-Location: string |
|
Other Status Codes |
Il limite di archiviazione dati viene raggiunto nell'account Mappe di Azure. È sempre possibile usare l'API Eliminazione dati per eliminare il contenuto precedente/inutilizzato e creare spazio per i nuovi caricamenti. |
|
Other Status Codes |
Si è verificato un errore imprevisto. |
Sicurezza
AADToken
Si tratta dei flussi di Microsoft Entra OAuth 2.0 . Quando è associato al controllo degli accessi in base al ruolo di Azure , può essere usato per controllare l'accesso alle API REST di Mappe di Azure. I controlli di accesso basati sul ruolo di Azure vengono usati per designare l'accesso a uno o più account delle risorse delle risorse di Mappe di Azure o alle sotto-risorse. Qualsiasi utente, gruppo o entità servizio può essere concesso l'accesso tramite un ruolo predefinito o un ruolo personalizzato composto da una o più autorizzazioni per le API REST di Mappe di Azure.
Per implementare scenari, è consigliabile visualizzare i concetti di autenticazione. In riepilogo, questa definizione di sicurezza offre una soluzione per la modellazione di applicazioni tramite oggetti in grado di controllare l'accesso in API e ambiti specifici.
Note
- Questa definizione di sicurezza richiede l'uso dell'intestazione
x-ms-client-id
per indicare la risorsa mappe di Azure a cui l'applicazione richiede l'accesso. Questa operazione può essere acquisita dall'API di gestione mappe .
L'oggetto Authorization URL
è specifico dell'istanza del cloud pubblico di Azure. I cloud sovrani dispongono di URL di autorizzazione univoci e configurazioni di Microsoft Entra ID.
* Il controllo degli accessi in base al ruolo di Azure viene configurato dal piano di gestione di Azure tramite il portale di Azure, PowerShell, l'interfaccia della riga di comando, gli SDK di Azure o le API REST.
* L'utilizzo di Azure Maps Web SDK consente la configurazione basata sulla configurazione di un'applicazione per più casi d'uso.
- Per altre informazioni su Microsoft Identity Platform, vedere Panoramica di Microsoft Identity Platform.
Tipo:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nome | Descrizione |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Si tratta di una chiave condivisa di cui viene eseguito il provisioning quando si crea un account mappe di Azure nel portale di Azure o usando PowerShell, l'interfaccia della riga di comando, gli SDK di Azure o l'API REST.
Con questa chiave, qualsiasi applicazione può accedere a tutte le API REST. In altre parole, questa chiave può essere usata come chiave master nell'account in cui vengono rilasciati.
Per le applicazioni esposte pubblicamente, è consigliabile usare l'approccio delle applicazioni client riservate per accedere alle API REST di Mappe di Azure in modo che la chiave possa essere archiviata in modo sicuro.
Tipo:
apiKey
In:
query
SAS Token
Si tratta di un token di firma di accesso condiviso creato dall'operazione List SAS nella risorsa mappe di Azure tramite il portale di Azure, PowerShell, l'interfaccia della riga di comando, gli SDK di Azure o le API REST.
Con questo token, qualsiasi applicazione è autorizzata ad accedere con i controlli di accesso basati sul ruolo di Azure e il controllo granulare alla scadenza, alla frequenza e alle aree d'uso per il token specifico. In altre parole, il token di firma di accesso condiviso può essere usato per consentire alle applicazioni di controllare l'accesso in modo più protetto rispetto alla chiave condivisa.
Per le applicazioni esposte pubblicamente, è consigliabile configurare un elenco specifico di origini consentite nella risorsa account mappa per limitare l'abuso di rendering e rinnovare regolarmente il token di firma di accesso condiviso.
Tipo:
apiKey
In:
header
Esempio
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."
}
}
Definizioni
Nome | Descrizione |
---|---|
Data |
Formato dati del contenuto caricato. |
Error |
Informazioni aggiuntive sulla gestione delle risorse. |
Error |
Dettagli dell'errore. |
Error |
Risposta di errore |
Long |
Modello di risposta per un'API operations di Long-Running. |
Lro |
Stato della richiesta. |
DataFormat
Formato dati del contenuto caricato.
Nome | Tipo | Descrizione |
---|---|---|
dwgzippackage |
string |
Pacchetto ZIP contenente il file DWG. |
geojson |
string |
GeoJSON è un formato di interscambio dati geospaziali basato su JSON. |
zip |
string |
Formato dati compresso. |
ErrorAdditionalInfo
Informazioni aggiuntive sulla gestione delle risorse.
Nome | Tipo | Descrizione |
---|---|---|
info |
object |
Informazioni aggiuntive. |
type |
string |
Tipo di informazioni aggiuntive. |
ErrorDetail
Dettagli dell'errore.
Nome | Tipo | Descrizione |
---|---|---|
additionalInfo |
Informazioni aggiuntive sull'errore. |
|
code |
string |
Codice di errore. |
details |
Dettagli dell'errore. |
|
message |
string |
Messaggio di errore. |
target |
string |
Destinazione dell'errore. |
ErrorResponse
Risposta di errore
Nome | Tipo | Descrizione |
---|---|---|
error |
Oggetto error. |
LongRunningOperationResult
Modello di risposta per un'API operations di Long-Running.
Nome | Tipo | Descrizione |
---|---|---|
created |
string |
Timestamp creato. |
error |
Dettagli dell'errore. |
|
operationId |
string |
ID per questa operazione a esecuzione prolungata. |
status |
Stato della richiesta. |
|
warning |
Dettagli dell'errore. |
LroStatus
Stato della richiesta.
Nome | Tipo | Descrizione |
---|---|---|
Failed |
string |
La richiesta ha uno o più errori. |
NotStarted |
string |
La richiesta non ha ancora avviato l'elaborazione. |
Running |
string |
La richiesta ha avviato l'elaborazione. |
Succeeded |
string |
La richiesta è stata completata correttamente. |