Data - Upload

Gunakan untuk mengunggah konten data ke akun Azure Maps.

Catatan

Azure Maps Penghentian layanan data

Layanan Azure Maps Data (v1 dan v2) sekarang tidak digunakan lagi dan akan dihentikan pada 16/9/24. Untuk menghindari gangguan layanan, semua panggilan ke layanan Data perlu diperbarui untuk menggunakan layanan Azure Maps Data Registry sebesar 16/9/24. Untuk informasi selengkapnya, lihat Cara membuat registri data.

Data Upload API adalah permintaan HTTP POST yang memungkinkan pemanggil mengunggah konten data ke layanan Azure Maps. Anda dapat menggunakan API ini dalam skenario seperti mengunggah kumpulan Geofences dalam GeoJSONformat, untuk digunakan dalam Azure Maps Geofencing Service kami.

Penting

Dengan menggunakan fitur ini, Anda menyetujui persyaratan hukum pratinjau. Lihat Persyaratan Tambahan Pratinjau untuk detail tambahan.

Kirim Permintaan Unggahan

Untuk mengunggah konten, Anda akan menggunakan POST permintaan. Isi permintaan akan berisi data yang akan diunggah. Parameter dataFormat kueri akan berisi format untuk data, dataSharingLevel parameter kueri dapat berisi tingkat berbagi untuk data. Header Content-Type akan diatur ke jenis konten data.

Misalnya, untuk mengunggah kumpulan geofence dalam GeoJSON format, atur isi permintaan ke konten geofence. dataFormat Atur parameter kueri ke geojson, dan atur Content-Type header ke salah satu jenis media berikut:

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

Berikut adalah isi permintaan sampel untuk mengunggah Geofence sederhana yang ditampilkan sebagai geometri lingkaran menggunakan titik tengah dan radius. Sampel di bawah ini ada di GeoJSON:

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

API Pengunggah Data melakukan operasi jangka panjang.

Batas Unggahan Data

Perlu diketahui bahwa saat ini setiap akun Azure Maps memiliki batas penyimpanan data. Setelah batas penyimpanan tercapai, semua panggilan API unggahan baru akan mengembalikan 409 Conflict respons kesalahan http. Anda selalu dapat menggunakan DATA Delete API untuk menghapus konten lama/tidak digunakan dan membuat ruang untuk unggahan baru.

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}

Parameter URI

Nama Dalam Diperlukan Jenis Deskripsi
geography
path True

string

Parameter ini menentukan lokasi sumber daya Azure Maps Creator. Nilai yang valid adalah kita dan Uni Eropa.

api-version
query True

string

Nomor versi API Azure Maps.

dataFormat
query True

DataFormat

Format data konten yang sedang diunggah.

description
query

string

Deskripsi yang akan diberikan pada unggahan.

Header Permintaan

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

Nama Diperlukan Jenis Deskripsi
x-ms-client-id

string

Menentukan akun mana yang ditujukan untuk penggunaan bersama dengan model keamanan Microsoft Entra ID. Ini mewakili ID unik untuk akun Azure Maps dan dapat diambil dari API Akun bidang manajemen Azure Maps. Untuk menggunakan keamanan Microsoft Entra ID di Azure Maps lihat artikel berikut untuk panduan.

Isi Permintaan

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

Nama Jenis Deskripsi
UploadContent

object

Konten yang akan diunggah.

Respons

Nama Jenis Deskripsi
200 OK

LongRunningOperationResult

Operasi sedang berjalan atau selesai. Jika operasi berhasil, gunakan header Resource-Location untuk mendapatkan jalur ke hasilnya.

Headers

Resource-Location: string

202 Accepted

Permintaan Diterima: Permintaan telah diterima untuk diproses. Silakan gunakan URL di Header Operation-Location untuk mendapatkan status.

Headers

Operation-Location: string

Other Status Codes

ErrorResponse

Batas penyimpanan data tercapai pada akun Azure Maps. Anda selalu dapat menggunakan DATA Delete API untuk menghapus konten lama/tidak digunakan dan membuat ruang untuk unggahan baru.

Other Status Codes

ErrorResponse

Terjadi kesalahan tak terduga.

Keamanan

AADToken

Ini adalah Alur OAuth 2.0 Microsoft Entra. Saat dipasangkan dengan kontrol akses berbasis peran Azure, kontrol akses tersebut dapat digunakan untuk mengontrol akses ke Azure Maps REST API. Kontrol akses berbasis peran Azure digunakan untuk menunjuk akses ke satu atau beberapa Azure Maps akun sumber daya atau sub-sumber daya. Setiap pengguna, grup, atau perwakilan layanan dapat diberikan akses melalui peran bawaan atau peran kustom yang terdiri dari satu atau beberapa izin untuk Azure Maps REST API.

Untuk menerapkan skenario, sebaiknya lihat konsep autentikasi. Singkatnya, definisi keamanan ini menyediakan solusi untuk memodelkan aplikasi melalui objek yang mampu mengontrol akses pada API dan cakupan tertentu.

Catatan

  • Definisi keamanan ini memerlukan penggunaan x-ms-client-id header untuk menunjukkan sumber daya Azure Maps mana yang diminta akses aplikasi. Ini dapat diperoleh dari API manajemen Maps .

Authorization URL khusus untuk instans cloud publik Azure. Sovereign cloud memiliki URL Otorisasi yang unik dan konfigurasi Microsoft Entra ID. * Kontrol akses berbasis peran Azure dikonfigurasi dari bidang manajemen Azure melalui portal Azure, PowerShell, CLI, Azure SDK, atau REST API. * Penggunaan Azure Maps Web SDK memungkinkan penyiapan berbasis konfigurasi aplikasi untuk beberapa kasus penggunaan.

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

Scopes

Nama Deskripsi
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Ini adalah kunci bersama yang disediakan saat Anda Create akun Azure Maps di portal Azure atau menggunakan PowerShell, CLI, Azure SDK, atau REST API.

Dengan kunci ini, aplikasi apa pun dapat mengakses semua REST API. Dengan kata lain, kunci ini dapat digunakan sebagai kunci master di akun tempat kunci tersebut dikeluarkan.

Untuk aplikasi yang diekspos secara publik, rekomendasi kami adalah menggunakan pendekatan aplikasi klien rahasia untuk mengakses Azure Maps REST API sehingga kunci Anda dapat disimpan dengan aman.

Type: apiKey
In: query

SAS Token

Ini adalah token tanda tangan akses bersama dibuat dari operasi Daftar SAS pada sumber daya Azure Maps melalui bidang manajemen Azure melalui portal Azure, PowerShell, CLI, Azure SDK, atau REST API.

Dengan token ini, aplikasi apa pun berwenang untuk mengakses dengan kontrol akses berbasis peran Azure dan kontrol halus ke kedaluwarsa, laju, dan wilayah penggunaan untuk token tertentu. Dengan kata lain, Token SAS dapat digunakan untuk memungkinkan aplikasi mengontrol akses dengan cara yang lebih aman daripada kunci bersama.

Untuk aplikasi yang diekspos secara publik, rekomendasi kami adalah mengonfigurasi daftar asal tertentu yang diizinkan di sumber daya akun Peta untuk membatasi penyalahgunaan penyalahgunaan dan memperbarui Token SAS secara teratur.

Type: apiKey
In: header

Contoh

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

Definisi

Nama Deskripsi
DataFormat

Format data konten yang diunggah.

ErrorAdditionalInfo

Info tambahan kesalahan manajemen sumber daya.

ErrorDetail

Detail kesalahan.

ErrorResponse

Respons kesalahan

LongRunningOperationResult

Model respons untuk API Operasi Long-Running.

LroStatus

Status permintaan.

DataFormat

Format data konten yang diunggah.

Nama Jenis Deskripsi
dwgzippackage

string

Paket ZIP yang berisi file DWG.

geojson

string

GeoJSON adalah format pertukaran data geospasial berbasis JSON.

zip

string

Format data terkompresi.

ErrorAdditionalInfo

Info tambahan kesalahan manajemen sumber daya.

Nama Jenis Deskripsi
info

object

Info tambahan.

type

string

Jenis info tambahan.

ErrorDetail

Detail kesalahan.

Nama Jenis Deskripsi
additionalInfo

ErrorAdditionalInfo[]

Info tambahan kesalahan.

code

string

Kode kesalahan.

details

ErrorDetail[]

Detail kesalahan.

message

string

Pesan kesalahan.

target

string

Target kesalahan.

ErrorResponse

Respons kesalahan

Nama Jenis Deskripsi
error

ErrorDetail

Objek kesalahan.

LongRunningOperationResult

Model respons untuk API Operasi Long-Running.

Nama Jenis Deskripsi
created

string

Tanda waktu yang dibuat.

error

ErrorDetail

Detail kesalahan.

operationId

string

Id untuk operasi jangka panjang ini.

status

LroStatus

Status permintaan.

warning

ErrorDetail

Detail kesalahan.

LroStatus

Status permintaan.

Nama Jenis Deskripsi
Failed

string

Permintaan memiliki satu atau beberapa kegagalan.

NotStarted

string

Permintaan belum mulai diproses.

Running

string

Permintaan telah mulai diproses.

Succeeded

string

Permintaan berhasil diselesaikan.