Data - Upload
Используйте для отправки содержимого данных в учетную запись Azure Maps.
Примечание
Прекращение поддержки службы данных Azure Maps
Служба данных Azure Maps (версии 1 и 2) устарела и будет прекращена 24.09.24. Чтобы избежать перебоев в работе службы, необходимо обновить все вызовы к службе данных для использования службы реестра данных Azure Maps до 24.09.09.24. Дополнительные сведения см. в статье Создание реестра данных.
Data Upload
API — это HTTP-запросPOST
, который позволяет вызывающей объекту отправлять содержимое данных в службу Azure Maps.
Этот API можно использовать в таком сценарии, как отправка коллекции геозон в GeoJSON
формате для использования в нашей службе геозон Azure Maps.
Важно!
Используя эту функцию, вы соглашаетесь с предварительными юридическими условиями. Дополнительные сведения см. в разделе Дополнительные условия предварительной версии .
Отправка запроса на отправку
Для отправки содержимого используйте POST
запрос. Текст запроса будет содержать данные для отправки. Параметр dataFormat
запроса будет содержать формат данных, параметр dataSharingLevel
запроса может содержать уровень общего доступа к данным. Для Content-Type
заголовка будет задан тип содержимого данных.
Например, чтобы отправить коллекцию геозон в GeoJSON
формате, задайте в тексте запроса содержимое геозоны. dataFormat
Задайте для параметра запроса значение geojson, а для заголовка Content-Type
— один из следующих типов носителей:
application/json
application/vnd.geo+json
application/octet-stream
Вот примерный текст запроса на отправку простой геозоны, которая представлена в виде круглого геометрического объекта с помощью координат центральной точки и радиуса. Пример ниже приведен в GeoJSON
:
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
API отправки данных выполняет длительную операцию.
Ограничения на передачу данных
Имейте в виду, что в настоящее время каждая учетная запись Azure Maps имеет ограничение на хранение данных. После достижения предельного объема хранилища все новые вызовы API отправки будут возвращать ответ об ошибке 409 Conflict
HTTP. Вы всегда можете использовать API удаления данных , чтобы удалить старое или неиспользуемое содержимое и создать пространство для новых отправлений.
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
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
geography
|
path | True |
string |
Этот параметр указывает, где находится ресурс Azure Maps Creator. Допустимые значения: us и eu. |
api-version
|
query | True |
string |
Номер версии API Azure Maps |
data
|
query | True |
Формат данных отправляемого содержимого. |
|
description
|
query |
string |
Описание, присваиваемого отправке. |
Заголовок запроса
Media Types: "application/json", "application/octet-stream"
Имя | Обязательно | Тип | Описание |
---|---|---|---|
x-ms-client-id |
string |
Указывает учетную запись, предназначенную для использования в сочетании с моделью безопасности Microsoft Entra ID. Он представляет уникальный идентификатор для учетной записи Azure Maps и может быть получен из API учетной записи уровня управления Azure Maps. Инструкции по использованию Microsoft Entra ID безопасности в Azure Maps см. в следующих статьях. |
Текст запроса
Media Types: "application/json", "application/octet-stream"
Имя | Тип | Описание |
---|---|---|
UploadContent |
object |
Содержимое для отправки. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 OK |
Операция выполняется или завершена. Если операция прошла успешно, используйте заголовок Resource-Location, чтобы получить путь к результату. Headers Resource-Location: string |
|
202 Accepted |
Запрос принят: запрос принят для обработки. Чтобы получить состояние, используйте URL-адрес в заголовке Operation-Location. Headers Operation-Location: string |
|
Other Status Codes |
Ограничение хранилища данных достигается в учетной записи Azure Maps. Вы всегда можете использовать API удаления данных , чтобы удалить старое или неиспользуемое содержимое и создать пространство для новых отправлений. |
|
Other Status Codes |
Произошла непредвиденная ошибка. |
Безопасность
AADToken
Это Microsoft Entra потоков OAuth 2.0. В сочетании с управлением доступом на основе ролей Azure его можно использовать для управления доступом к Azure Maps REST API. Элементы управления доступом на основе ролей Azure используются для назначения доступа к одной или нескольким учетным записям Azure Maps ресурсов или вложенным ресурсам. Любому пользователю, группе или субъекту-службе может быть предоставлен доступ через встроенную или пользовательскую роль, состоящую из одного или нескольких разрешений для Azure Maps REST API.
Для реализации сценариев рекомендуется ознакомиться с основными понятиями проверки подлинности. Таким образом, это определение безопасности предоставляет решение для моделирования приложений с помощью объектов, которые могут управлять доступом к определенным API и областям.
Примечания
- Это определение безопасности требует использования заголовка
x-ms-client-id
, чтобы указать, к какому Azure Maps ресурсу приложение запрашивает доступ. Его можно получить из API управления Картами .
объект Authorization URL
предназначен для экземпляра общедоступного облака Azure. Национальные облака имеют уникальные URL-адреса авторизации и конфигурации Microsoft Entra ID.
* Управление доступом на основе ролей Azure настраивается из плоскости управления Azure с помощью портал Azure, PowerShell, CLI, пакетов SDK для Azure или REST API.
* Использование веб-пакета SDK для Azure Maps позволяет настраивать приложение на основе конфигурации для нескольких вариантов использования.
- Дополнительные сведения о платформа удостоверений Майкрософт см. в платформа удостоверений Майкрософт обзоре.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Имя | Описание |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Это общий ключ, который подготавливается при создании учетной записи Azure Maps в портал Azure или с помощью PowerShell, CLI, пакетов AZURE SDK или REST API.
С помощью этого ключа любое приложение может получить доступ ко всем REST API. Иными словами, этот ключ можно использовать в качестве ключа master в учетной записи, в которую они выдаются.
Для общедоступных приложений мы рекомендуем использовать подход конфиденциальных клиентских приложений для доступа к Azure Maps REST API, чтобы ключ можно было безопасно хранить.
Type:
apiKey
In:
query
SAS Token
Этот маркер подписанного URL-адреса создается из операции List SAS в ресурсе Azure Maps через плоскость управления Azure с помощью портал Azure, PowerShell, CLI, пакетов SDK для Azure или REST API.
С помощью этого маркера любое приложение авторизовано для доступа с помощью элементов управления доступом на основе ролей Azure и точного контроля срока действия, скорости и регионов использования конкретного маркера. Иными словами, маркер SAS можно использовать, чтобы разрешить приложениям управлять доступом более безопасным способом, чем общий ключ.
Для общедоступных приложений мы рекомендуем настроить определенный список разрешенных источников в ресурсе учетной записи сопоставления , чтобы ограничить злоупотребление отрисовкой и регулярно обновлять маркер SAS.
Type:
apiKey
In:
header
Примеры
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."
}
}
Определения
Имя | Описание |
---|---|
Data |
Формат данных отправленного содержимого. |
Error |
Дополнительные сведения об ошибке управления ресурсами. |
Error |
Сведения об ошибке. |
Error |
Сообщение об ошибке |
Long |
Модель ответа для API операций Long-Running. |
Lro |
Состояние запроса. |
DataFormat
Формат данных отправленного содержимого.
Имя | Тип | Описание |
---|---|---|
dwgzippackage |
string |
ZIP-пакет, содержащий ФАЙЛ DWG. |
geojson |
string |
GeoJSON — это формат обмена геопространственных данных на основе JSON. |
zip |
string |
Сжатый формат данных. |
ErrorAdditionalInfo
Дополнительные сведения об ошибке управления ресурсами.
Имя | Тип | Описание |
---|---|---|
info |
object |
Дополнительные сведения. |
type |
string |
Тип дополнительных сведений. |
ErrorDetail
Сведения об ошибке.
Имя | Тип | Описание |
---|---|---|
additionalInfo |
Дополнительные сведения об ошибке. |
|
code |
string |
Код ошибки. |
details |
Сведения об ошибке. |
|
message |
string |
Сообщение об ошибке. |
target |
string |
Целевой объект ошибки. |
ErrorResponse
Сообщение об ошибке
Имя | Тип | Описание |
---|---|---|
error |
Объект error. |
LongRunningOperationResult
Модель ответа для API операций Long-Running.
Имя | Тип | Описание |
---|---|---|
created |
string |
Созданная метка времени. |
error |
Сведения об ошибке. |
|
operationId |
string |
Идентификатор для этой длительной операции. |
status |
Состояние запроса. |
|
warning |
Сведения об ошибке. |
LroStatus
Состояние запроса.
Имя | Тип | Описание |
---|---|---|
Failed |
string |
Запрос имеет один или несколько сбоев. |
NotStarted |
string |
Запрос еще не начал обработку. |
Running |
string |
Запрос начал обработку. |
Succeeded |
string |
Запрос успешно завершен. |