Data - Upload

Usare per caricare il contenuto dei dati in un account Mappe di Azure.

Nota

ritiro del servizio dati 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 del 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 GeoJSONformato, per l'uso nel servizio geofencing 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-TypedataFormat 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 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 Mappe di Azure Creator. I valori validi sono noi ed eu.

api-version
query True

string

Numero di versione dell'API Mappe di Azure.

dataFormat
query True

DataFormat

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 Microsoft Entra ID sicurezza 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

LongRunningOperationResult

L'operazione è in esecuzione o completa. Se l'operazione ha esito positivo, usare l'intestazione Resource-Location per ottenere il percorso del risultato.

Headers

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.

Headers

Operation-Location: string

Other Status Codes

ErrorResponse

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

ErrorResponse

Si è verificato un errore imprevisto.

Sicurezza

AADToken

Si tratta dei flussi OAuth 2.0 Microsoft Entra. Quando è associato al controllo degli accessi in base al ruolo di Azure, può essere usato per controllare l'accesso alle API REST Mappe di Azure. I controlli di accesso basati sul ruolo di Azure vengono usati per designare l'accesso a uno o più Mappe di Azure account delle risorse 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 Mappe di Azure API REST.

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 quale Mappe di Azure risorsa 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 hanno URL di autorizzazione univoci e configurazioni Microsoft Entra ID. * Il controllo degli accessi in base al ruolo di Azure viene configurato dal piano di gestione di Azure tramite portale di Azure, PowerShell, interfaccia della riga di comando, SDK di Azure o API REST. * L'utilizzo dell'SDK Web Mappe di Azure consente la configurazione basata sulla configurazione di un'applicazione per più casi d'uso.

Type: 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 Create un account Mappe di Azure nell'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 Mappe di Azure in modo che la chiave possa essere archiviata in modo sicuro.

Type: apiKey
In: query

SAS Token

Si tratta di un token di firma di accesso condiviso creato dall'operazione Elenco firma di accesso condiviso nella risorsa Mappe di Azure tramite il piano di gestione di Azure tramite portale di Azure, PowerShell, interfaccia della riga di comando, SDK di Azure o 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.

Type: 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
DataFormat

Formato dati del contenuto caricato.

ErrorAdditionalInfo

Informazioni aggiuntive sulla gestione delle risorse.

ErrorDetail

Dettagli dell'errore.

ErrorResponse

Risposta di errore

LongRunningOperationResult

Modello di risposta per un'API operations di Long-Running.

LroStatus

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

ErrorAdditionalInfo[]

Informazioni aggiuntive sull'errore.

code

string

Codice di errore.

details

ErrorDetail[]

Dettagli dell'errore.

message

string

Messaggio di errore.

target

string

Destinazione dell'errore.

ErrorResponse

Risposta di errore

Nome Tipo Descrizione
error

ErrorDetail

Oggetto error.

LongRunningOperationResult

Modello di risposta per un'API operations di Long-Running.

Nome Tipo Descrizione
created

string

Timestamp creato.

error

ErrorDetail

Dettagli dell'errore.

operationId

string

ID per questa operazione a esecuzione prolungata.

status

LroStatus

Stato della richiesta.

warning

ErrorDetail

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.