Share via


Data - Upload

Verwenden Sie, um Dateninhalte in ein Azure Maps-Konto hochzuladen.

Hinweis

Einstellung des Azure Maps-Datendiensts

Der Azure Maps-Datendienst (v1 und v2) ist jetzt veraltet und wird am 16.09.2024 eingestellt. Um Dienstunterbrechungen zu vermeiden, müssen alle Aufrufe des Datendiensts aktualisiert werden, um den Azure Maps Datenregistrierungsdienst bis zum 16.09.24 zu verwenden. Weitere Informationen finden Sie unter So erstellen Sie eine Datenregistrierung.

Die Data Upload API ist eine HTTP-AnforderungPOST, die es dem Aufrufer ermöglicht, Dateninhalte in den Azure Maps-Dienst hochzuladen. Sie können diese API in einem Szenario wie dem Hochladen einer Sammlung von Geofences im GeoJSONFormat zur Verwendung in unserem Azure Maps Geofencing Service verwenden.

Wichtig

Durch die Verwendung dieses Features stimmen Sie den Rechtlichen Bestimmungen für die Vorschau zu. Weitere Details finden Sie in der Vorschau der zusätzlichen Bedingungen .

Upload-Anforderung übermitteln

Um Ihre Inhalte hochzuladen, verwenden Sie eine POST Anforderung. Der Anforderungstext enthält die hochzuladenden Daten. Der dataFormat Abfrageparameter enthält das Format für die Daten, der dataSharingLevel Abfrageparameter kann die Freigabeebene für die Daten enthalten. Der Content-Type Header wird auf den Inhaltstyp der Daten festgelegt.

Um beispielsweise eine Sammlung von Geofences im GeoJSON Format hochzuladen, legen Sie den Anforderungstext auf den Geofenceinhalt fest. Legen Sie den dataFormat Abfrageparameter auf geojson fest, und legen Sie den Content-Type Header auf einen der folgenden Medientypen fest:

  • application/json
  • application/vnd.geo+json
  • application/octet-stream

Im Folgenden finden Sie einen Beispielanforderungstext zum Hochladen eines einfachen Geofence, der als Kreisgeometrie mit einem Mittelpunkt und einem Radius dargestellt wird. Das folgende Beispiel ist in GeoJSON:

{
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "geometry": {
            "type": "Point",
            "coordinates": [-122.126986, 47.639754]
        },
        "properties": {
            "geometryId": "001",
            "radius": 500
        }
    }]
}

Die Datenupload-API führt einen Vorgang mit langer Ausführungsdauer aus.

Grenzwerte für den Datenupload

Bitte beachten Sie, dass derzeit für jedes Azure Maps Konto ein Datenspeicherlimit gilt. Sobald das Speicherlimit erreicht ist, geben alle neuen Upload-API-Aufrufe eine 409 Conflict HTTP-Fehlerantwort zurück. Sie können immer die Datenlösch-API verwenden, um alte/nicht verwendete Inhalte zu löschen und Speicherplatz für neue Uploads zu erstellen.

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}

URI-Parameter

Name In Erforderlich Typ Beschreibung
geography
path True

string

Dieser Parameter gibt an, wo sich die Azure Maps Creator-Ressource befindet. Gültige Werte sind wir und eu.

api-version
query True

string

Versionsnummer der Azure Maps API.

dataFormat
query True

DataFormat

Datenformat des hochgeladenen Inhalts.

description
query

string

Die Beschreibung, die für den Upload angegeben werden soll.

Anforderungsheader

Media Types: "application/json", "application/octet-stream"

Name Erforderlich Typ Beschreibung
x-ms-client-id

string

Gibt an, welches Konto für die Verwendung in Verbindung mit dem Microsoft Entra ID Sicherheitsmodell vorgesehen ist. Es stellt eine eindeutige ID für das Azure Maps-Konto dar und kann von der konto-API auf Azure Maps Verwaltungsebene abgerufen werden. Anleitungen zur Verwendung Microsoft Entra ID Sicherheit in Azure Maps finden Sie in den folgenden Artikeln.

Anforderungstext

Media Types: "application/json", "application/octet-stream"

Name Typ Beschreibung
UploadContent

object

Der hochzuladende Inhalt.

Antworten

Name Typ Beschreibung
200 OK

LongRunningOperationResult

Der Vorgang wird ausgeführt oder abgeschlossen. Wenn der Vorgang erfolgreich war, verwenden Sie den Resource-Location-Header, um den Pfad zum Ergebnis abzurufen.

Headers

Resource-Location: string

202 Accepted

Anforderung akzeptiert: Die Anforderung wurde zur Verarbeitung akzeptiert. Verwenden Sie die URL im Operation-Location Header, um status zu erhalten.

Headers

Operation-Location: string

Other Status Codes

ErrorResponse

Das Datenspeicherlimit wird für das Azure Maps-Konto erreicht. Sie können immer die Datenlösch-API verwenden, um alte/nicht verwendete Inhalte zu löschen und Speicherplatz für neue Uploads zu erstellen.

Other Status Codes

ErrorResponse

Ein unerwarteter Fehler ist aufgetreten.

Sicherheit

AADToken

Dies sind die Microsoft Entra OAuth 2.0 Flows. Wenn sie mit der rollenbasierten Zugriffssteuerung in Azure gekoppelt ist, kann sie verwendet werden, um den Zugriff auf Azure Maps REST-APIs zu steuern. Rollenbasierte Zugriffssteuerungen in Azure werden verwendet, um den Zugriff auf ein oder mehrere Azure Maps Ressourcenkonto oder Unterressourcen festzulegen. Jedem Benutzer, jeder Gruppe oder jedem Dienstprinzipal kann Zugriff über eine integrierte Rolle oder eine benutzerdefinierte Rolle gewährt werden, die aus einer oder mehreren Berechtigungen für Azure Maps REST-APIs besteht.

Zum Implementieren von Szenarien empfiehlt es sich, Authentifizierungskonzepte anzuzeigen. Zusammenfassend bietet diese Sicherheitsdefinition eine Lösung zum Modellieren von Anwendungen über Objekte, die auf bestimmte APIs und Bereiche zugreifen können.

Hinweise

  • Diese Sicherheitsdefinition erfordert die Verwendung des x-ms-client-id Headers, um anzugeben, auf welche Azure Maps Ressource die Anwendung Zugriff anfordert. Dies kann über die Kartenverwaltungs-API abgerufen werden.

Der Authorization URL ist spezifisch für die öffentliche Azure-Cloud-instance. Sovereign Clouds verfügen über eindeutige Autorisierungs-URLs und Microsoft Entra ID Konfigurationen. * Die rollenbasierte Zugriffssteuerung in Azure wird über die Azure-Verwaltungsebene über Azure-Portal, PowerShell, CLI, Azure SDKs oder REST-APIs konfiguriert. * Die Verwendung des Azure Maps Web SDK ermöglicht die konfigurationsbasierte Einrichtung einer Anwendung für mehrere Anwendungsfälle.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Beschreibung
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Dies ist ein gemeinsam genutzter Schlüssel, der bereitgestellt wird, wenn Sie ein Azure Maps-Konto im Azure-Portal oder mithilfe von PowerShell, der CLI, Azure SDKs oder der REST-API Create.

Mit diesem Schlüssel kann jede Anwendung auf die gesamte REST-API zugreifen. Mit anderen Worten, dieser Schlüssel kann als master Schlüssel in dem Konto verwendet werden, in dem er ausgestellt wird.

Für öffentlich zugängliche Anwendungen wird empfohlen, den Ansatz vertraulicher Clientanwendungen zu verwenden, um auf Azure Maps REST-APIs zuzugreifen, damit Ihr Schlüssel sicher gespeichert werden kann.

Type: apiKey
In: query

SAS Token

Hierbei handelt es sich um ein Shared Access Signature Token, das aus dem Sas-Listenvorgang auf der Azure Maps-Ressource über die Azure-Verwaltungsebene über Azure-Portal, PowerShell, CLI, Azure SDKs oder REST-APIs erstellt wird.

Mit diesem Token ist jede Anwendung autorisiert, mit rollenbasierten Zugriffssteuerungen in Azure auf den Ablauf, die Rate und die Region(en) der Verwendung für das jeweilige Token zuzugreifen. Mit anderen Worten, das SAS-Token kann verwendet werden, um Anwendungen zu ermöglichen, den Zugriff auf eine sicherere Weise als der freigegebene Schlüssel zu steuern.

Für öffentlich zugängliche Anwendungen empfiehlt es sich, eine bestimmte Liste der zulässigen Ursprünge für die Zuordnungskontoressource zu konfigurieren, um den Renderingmissbrauch zu begrenzen und das SAS-Token regelmäßig zu erneuern.

Type: apiKey
In: header

Beispiele

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."
  }
}

Definitionen

Name Beschreibung
DataFormat

Datenformat des hochgeladenen Inhalts.

ErrorAdditionalInfo

Zusätzliche Informationen zum Ressourcenverwaltungsfehler.

ErrorDetail

Die Fehlerdetails.

ErrorResponse

Fehlerantwort

LongRunningOperationResult

Das Antwortmodell für eine Long-Running Operations-API.

LroStatus

Der status Zustand der Anforderung.

DataFormat

Datenformat des hochgeladenen Inhalts.

Name Typ Beschreibung
dwgzippackage

string

ZIP-Paket mit DWG-Datei.

geojson

string

GeoJSON ist ein JSON-basiertes Geodatenaustauschformat.

zip

string

Komprimiertes Datenformat.

ErrorAdditionalInfo

Zusätzliche Informationen zum Ressourcenverwaltungsfehler.

Name Typ Beschreibung
info

object

Zusätzliche Informationen.

type

string

Typ der zusätzlichen Informationen.

ErrorDetail

Die Fehlerdetails.

Name Typ Beschreibung
additionalInfo

ErrorAdditionalInfo[]

Die zusätzlichen Fehlerinformationen.

code

string

Der Fehlercode.

details

ErrorDetail[]

Die Fehlerdetails.

message

string

Die Fehlermeldung.

target

string

Das Fehlerziel.

ErrorResponse

Fehlerantwort

Name Typ Beschreibung
error

ErrorDetail

Das Fehlerobjekt.

LongRunningOperationResult

Das Antwortmodell für eine Long-Running Operations-API.

Name Typ Beschreibung
created

string

Der erstellte Zeitstempel.

error

ErrorDetail

Die Fehlerdetails.

operationId

string

Die ID für diesen Vorgang mit langer Ausführungsdauer.

status

LroStatus

Der status Zustand der Anforderung.

warning

ErrorDetail

Die Fehlerdetails.

LroStatus

Der status Zustand der Anforderung.

Name Typ Beschreibung
Failed

string

Die Anforderung weist mindestens einen Fehler auf.

NotStarted

string

Die Verarbeitung der Anforderung wurde noch nicht gestartet.

Running

string

Die Anforderung hat mit der Verarbeitung begonnen.

Succeeded

string

Die Anforderung wurde erfolgreich abgeschlossen.