Data V2 - Upload
Область применения: см. ценовые категории.
API отправки данных позволяет вызывающей службе передавать содержимое данных в службу Azure Maps.
Этот API можно использовать в таком сценарии, как отправка коллекции геозон в GeoJSON формате, для использования в нашей службе геозон Azure Maps.
Важно!
Используя эту функцию, вы соглашаетесь с условиями предварительной версии юридических условий. Дополнительные сведения см. в дополнительных условиях предварительной версии .
Отправка запроса на отправку
Чтобы отправить содержимое, вы будете POST использовать запрос. Текст запроса будет содержать данные для отправки. Параметр dataFormat запроса будет содержать формат данных, dataSharingLevel параметр запроса может содержать уровень общего доступа для данных. Заголовок Content-Type будет иметь тип контента данных.
Например, чтобы отправить коллекцию геозон в GeoJSON формате, задайте текст запроса содержимому геозоны. dataFormat Задайте для параметра запроса значение geojson и задайте для заголовка Content-Type один из следующих типов мультимедиа:
application/jsonapplication/vnd.geo+jsonapplication/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
| Name | In | Required | Type | Description |
|---|---|---|---|---|
|
geography
|
path | True |
|
Этот параметр указывает, где находится ресурс создателя Azure Maps. Допустимые значения : мы и ес. |
|
api-version
|
query | True |
|
Номер версии API Azure Maps |
|
data
|
query | True |
Формат данных отправляемого содержимого. |
|
|
description
|
query |
|
Описание для отправки. |
Заголовок запроса
Media Types: "application/json", "application/octet-stream"
| Name | Required | Type | Description |
|---|---|---|---|
| x-ms-client-id |
|
Указывает, какая учетная запись предназначена для использования в сочетании с моделью безопасности Azure AD. Он представляет уникальный идентификатор для учетной записи Azure Maps и может быть получен из API учетной записи уровня управления Azure Maps. Инструкции по использованию Azure AD безопасности в Azure Maps см. в следующих статьях. |
Текст запроса
Media Types: "application/json", "application/octet-stream"
| Name | Type | Description |
|---|---|---|
| UploadContent |
|
Содержимое для отправки. |
Ответы
| Name | Type | Description |
|---|---|---|
| 200 OK |
Операция выполняется или завершается. Если операция прошла успешно, используйте заголовок Resource-Location для получения пути к результату. Headers
|
|
| 202 Accepted |
Запрос принят: запрос был принят для обработки. Чтобы получить состояние, используйте URL-адрес в заголовке Operation-Location. Headers
|
|
| Other Status Codes |
Ограничение хранилища данных достигается в учетной записи Azure Maps. API удаления данных всегда можно использовать для удаления старого или неиспользуемого содержимого и создания пространства для новых отправлений. |
|
| Other Status Codes |
Произошла непредвиденная ошибка. |
Безопасность
AADToken
Это потоки OAuth2 Azure Active Directory . При связывании с управлением доступом на основе ролей Azure можно использовать для управления доступом к Azure Maps REST API. Элементы управления доступом на основе ролей Azure используются для назначения доступа к одной или нескольким Azure Maps учетной записи ресурсов или вложенным ресурсам. Доступ к любому пользователю, группе или субъекту-службе можно предоставить через встроенную роль или пользовательскую роль, состоящую из одного или нескольких разрешений для Azure Maps REST API.
Для реализации сценариев рекомендуется просматривать основные понятия проверки подлинности. Таким образом, это определение безопасности предоставляет решение для моделирования приложений с помощью объектов, способных управлять доступом к определенным API и областям.
Примечания
- Это определение безопасности требует использования заголовка
x-ms-client-id, чтобы указать, к какой Azure Maps ресурсу приложение запрашивает доступ. Это можно получить из API управления картами.
Это Authorization URL зависит от экземпляра общедоступного облака Azure. Национальные облака имеют уникальные URL-адреса авторизации и конфигурации Azure Active Directory.
* Управление доступом на основе ролей Azure настраивается из плоскости управления Azure с помощью портал Azure, PowerShell, CLI, пакетов SDK Azure или REST API.
* Использование веб-пакета SDK для Azure Maps позволяет настроить приложение на основе конфигурации для нескольких вариантов использования.
- В настоящее время Azure Active Directory версии 1.0 или версии 2.0 поддерживает рабочие, учебные заведения и гости, но не поддерживает личные учетные записи.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
| Name | Description |
|---|---|
| https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Это общий ключ, подготовленный при создании ресурса Azure Maps через плоскость управления Azure с помощью портал Azure, PowerShell, CLI, пакетов SDK Azure или REST API.
С помощью этого ключа любой приложению разрешен доступ ко всем REST API. Другими словами, в настоящее время эти ключи можно рассматривать как главные ключи для учетной записи, для которой они выданы.
Для общедоступных приложений мы рекомендуем использовать доступ между серверами 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
Формат данных отправленного содержимого.
| Name | Type | Description |
|---|---|---|
| dwgzippackage |
|
ZIP-пакет, содержащий ФАЙЛ DWG. |
| geojson |
|
GeoJSON — это формат геопространственного обмена данными на основе JSON. |
| zip |
|
Сжатый формат данных. |
ErrorAdditionalInfo
Дополнительные сведения об ошибке управления ресурсами.
| Name | Type | Description |
|---|---|---|
| info |
|
Дополнительные сведения. |
| type |
|
Дополнительный тип сведений. |
ErrorDetail
Сведения об ошибке.
| Name | Type | Description |
|---|---|---|
| additionalInfo |
Дополнительные сведения об ошибке. |
|
| code |
|
Код ошибки. |
| details |
Сведения об ошибке. |
|
| message |
|
Сообщение об ошибке. |
| target |
|
Целевой объект ошибки. |
ErrorResponse
Сообщение об ошибке
| Name | Type | Description |
|---|---|---|
| error |
Объект ошибки. |
LongRunningOperationResult
Модель ответа для API операций Long-Running.
| Name | Type | Description |
|---|---|---|
| created |
|
Созданная метка времени. |
| error |
Сведения об ошибке. |
|
| operationId |
|
Идентификатор для этой длительной операции. |
| status |
Состояние запроса. |
|
| warning |
Сведения об ошибке. |
LroStatus
Состояние запроса.
| Name | Type | Description |
|---|---|---|
| Failed |
|
Запрос имеет один или несколько сбоев. |
| NotStarted |
|
Запрос еще не начал обработку. |
| Running |
|
Запрос начал обработку. |
| Succeeded |
|
Запрос успешно завершен. |