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 GeoJSON
Format 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. |
data
|
query | True |
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 |
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 |
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 |
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.
- Weitere Informationen zu Microsoft Identity Platform finden Sie unter Microsoft Identity Platform Übersicht.
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 |
---|---|
Data |
Datenformat des hochgeladenen Inhalts. |
Error |
Zusätzliche Informationen zum Ressourcenverwaltungsfehler. |
Error |
Die Fehlerdetails. |
Error |
Fehlerantwort |
Long |
Das Antwortmodell für eine Long-Running Operations-API. |
Lro |
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 |
Die zusätzlichen Fehlerinformationen. |
|
code |
string |
Der Fehlercode. |
details |
Die Fehlerdetails. |
|
message |
string |
Die Fehlermeldung. |
target |
string |
Das Fehlerziel. |
ErrorResponse
Fehlerantwort
Name | Typ | Beschreibung |
---|---|---|
error |
Das Fehlerobjekt. |
LongRunningOperationResult
Das Antwortmodell für eine Long-Running Operations-API.
Name | Typ | Beschreibung |
---|---|---|
created |
string |
Der erstellte Zeitstempel. |
error |
Die Fehlerdetails. |
|
operationId |
string |
Die ID für diesen Vorgang mit langer Ausführungsdauer. |
status |
Der status Zustand der Anforderung. |
|
warning |
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. |