Data - Upload Preview
Permintaan Unggah memungkinkan pemanggil mengunggah konten data ke akun Azure Maps mereka.
Berlaku untuk: Tingkat harga S1.
API Unggah Data memungkinkan pemanggil mengunggah konten data ke layanan Azure Maps.
Anda dapat menggunakan API ini dalam skenario seperti mengunggah kumpulan Geofences dalam GeoJSON
format, untuk digunakan dalam Azure Maps Geofencing Service kami.
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.
Kirim Permintaan Unggahan
Untuk mengunggah konten, Anda akan menggunakan POST
permintaan. Isi permintaan akan berisi data yang akan diunggah. 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/upload?api-version=1.0&dataFormat={dataFormat}
POST https://{geography}.atlas.microsoft.com/mapData/upload?subscription-key={subscription-key}&api-version=1.0&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. Versi saat ini adalah 1.0 |
data
|
query | True |
Format data konten yang sedang diunggah. |
|
subscription-key
|
query |
string |
Salah satu kunci Azure Maps yang disediakan dari Akun Azure Maps. Silakan lihat artikel ini untuk detail tentang cara mengelola autentikasi. |
Header Permintaan
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
Nama | Jenis | Deskripsi |
---|---|---|
UploadContent |
object |
Konten yang akan diunggah. |
Respons
Nama | Jenis | Deskripsi |
---|---|---|
200 OK |
Pengunggahan data gagal. Konten yang diunggah tidak memenuhi semua pemeriksaan validasi. Isi respons berisi semua kesalahan yang ditemui. |
|
201 Created |
Sumber daya berhasil dibuat. Headers Location: string |
|
202 Accepted |
Hanya didukung untuk permintaan asinkron. Permintaan Diterima: Permintaan telah diterima untuk diproses. Silakan gunakan URL di Header Lokasi untuk mencoba kembali atau mengakses hasilnya. Headers Location: string |
|
400 Bad Request |
Permintaan buruk: satu atau beberapa parameter salah ditentukan atau saling eksklusif. |
|
401 Unauthorized |
Akses ditolak karena kunci langganan tidak valid atau token pembawa Microsoft Entra ID tidak valid. Pastikan untuk menyediakan kunci yang valid untuk langganan Azure aktif dan sumber daya Maps. Jika tidak, verifikasi header WWW-Authenticate untuk kode kesalahan dan deskripsi token pembawa Microsoft Entra ID yang disediakan. Headers WWW-Authenticate: string |
|
403 Forbidden |
Masalah izin, kapasitas, atau autentikasi. |
|
404 Not Found |
Tidak Ditemukan: sumber daya yang diminta tidak dapat ditemukan, tetapi mungkin tersedia lagi di masa mendatang. |
|
500 Internal Server Error |
Terjadi kesalahan saat memproses permintaan ini. Coba lagi nanti. |
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.
- Untuk informasi selengkapnya tentang platform identitas Microsoft, lihat gambaran umum platform identitas Microsoft.
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 Membuat 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/upload?subscription-key=[subscription-key]&api-version=1.0&dataFormat=geojson
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.126986,
47.639754
]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}
]
}
Sample Response
Location: https://atlas.microsoft.com/mapData/metadata/{udid}?api-version=1.0
Access-Control-Expose-Headers: Location
{
"operationId": "{operationId}",
"status": "Succeeded",
"created": "2020-01-02 1:02:03 AM +00:00",
"resourceLocation": "https://atlas.microsoft.com/mapData/metadata/{resourceId}?api-version=1.0"
}
operation-Location: https://atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0
Access-Control-Expose-Headers: Location
{
"error": {
"code": "400 Bad Request",
"message": "Upload request failed. Your data has been removed as we encountered the following problems with it: Map data is not a valid GeoJSON geometry."
}
}
{
"error": {
"code": "400 BadRequest",
"message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
}
}
{
"error": {
"code": "401 Unauthorized",
"message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription."
}
}
{
"error": {
"code": "403 Forbidden",
"message": "Permission, capacity, or authentication issues."
}
}
{
"error": {
"code": "404 NotFound",
"message": "Not Found: the requested resource could not be found, but it may be available again in the future."
}
}
{
"error": {
"code": "500 InternalServerError",
"message": "An error occurred while processing the request. Please try again later."
}
}
Definisi
Nama | Deskripsi |
---|---|
Long |
Model respons untuk API Operasi Long-Running. |
OData |
Objek ini dikembalikan ketika kesalahan terjadi di API Azure Maps. |
OData |
Objek respons ini dikembalikan ketika kesalahan terjadi di API Azure Maps. |
type |
Status permintaan. |
Upload |
Format data konten yang sedang diunggah. |
LongRunningOperationResult
Model respons untuk API Operasi Long-Running.
Nama | Jenis | Deskripsi |
---|---|---|
created |
string |
Tanda waktu yang dibuat. |
error |
Objek ini dikembalikan ketika kesalahan terjadi di API Azure Maps. |
|
operationId |
string |
Id untuk operasi jangka panjang ini. |
resourceLocation |
string |
URI lokasi untuk detail tentang sumber daya yang dibuat. Ini hanya disediakan ketika permintaan berhasil diselesaikan. |
status |
Status permintaan. |
|
warning |
Objek ini dikembalikan ketika kesalahan terjadi di API Azure Maps. |
ODataError
Objek ini dikembalikan ketika kesalahan terjadi di API Azure Maps.
Nama | Jenis | Deskripsi |
---|---|---|
code |
string |
Kode ODataError. |
details |
Objek ini dikembalikan ketika kesalahan terjadi di API Azure Maps. |
|
message |
string |
Jika tersedia, deskripsi kesalahan yang dapat dibaca manusia. |
target |
string |
Jika tersedia, target menyebabkan kesalahan. |
ODataErrorResponse
Objek respons ini dikembalikan ketika kesalahan terjadi di API Azure Maps.
Nama | Jenis | Deskripsi |
---|---|---|
error |
Objek ini dikembalikan ketika kesalahan terjadi di API Azure Maps. |
type
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. |
UploadDataFormat
Format data konten yang sedang diunggah.
Nama | Jenis | Deskripsi |
---|---|---|
geojson |
string |
GeoJSON adalah format pertukaran data geospasial berbasis JSON. |
zip |
string |
Format data terkompresi. |