Data V2 - Update
Область применения: см. ценовые категории.
API обновления данных позволяет вызывающей объекту обновлять ранее отправленное содержимое данных.
Этот API можно использовать в сценарии, например при добавлении или удалении геозон в существующую коллекцию геозон или из нее. Геозоны отправляются с помощью API отправки данных для использования в службе геозон Azure Maps.
Обратите внимание, что API обновления заменит и переопределит существующее содержимое данных.
Важно!
Используя эту функцию, вы соглашаетесь с предварительными юридическими условиями. Дополнительные сведения см. в дополнительных условиях предварительной версии .
Отправка запроса на обновление
Для обновления содержимого будет использоваться PUT запрос. Текст запроса будет содержать новые данные, которые заменят существующие данные. Заголовок Content-Type будет иметь тип контента данных, а путь будет содержать udid обновляемую информацию.
Например, чтобы обновить коллекцию геозон, которые ранее были отправлены с помощью API отправки, поместите новое содержимое геозоны в текст запроса. udid Задайте параметр в пути к udid данным, полученным ранее в ответе API отправки. И задайте для заголовка 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
}
}]
}
Ранее отправленная геозона имела радиус 100 м. Приведенный выше запрос обновит его до 500 млн.
API обновления данных выполняет длительный запрос.
Ограничения на обновление данных
Обратите внимание, что в настоящее время каждая учетная запись Azure Maps имеет ограничение на хранение данных.
После достижения ограничения хранилища все новые вызовы API отправки будут возвращать ответ на ошибку 409 Conflict HTTP.
API удаления данных всегда можно использовать для удаления старого или неиспользуемого содержимого и создания пространства для новых отправк.
PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=2.0
PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=2.0&description={description}
Параметры URI
| Name | In | Required | Type | Description |
|---|---|---|---|---|
|
geography
|
path | True |
|
Этот параметр указывает, где находится ресурс Azure Maps Creator. Допустимые значения: мы и eu. |
|
udid
|
path | True |
|
Уникальный идентификатор данных для содержимого. Он |
|
api-version
|
query | True |
|
Номер версии API Azure Maps |
|
description
|
query |
|
Описание для отправки. |
Заголовок запроса
| Name | Required | Type | Description |
|---|---|---|---|
| x-ms-client-id |
|
Указывает, какая учетная запись предназначена для использования в сочетании с моделью безопасности Azure AD. Он представляет уникальный идентификатор для учетной записи Azure Maps и может быть получен из API учетной записи уровня управления Azure Maps. Инструкции по использованию Azure AD безопасности в Azure Maps см. в следующих статьях. |
Текст запроса
| Name | Type | Description |
|---|---|---|
| UpdateContent |
|
Новое содержимое, которое обновит или заменит ранее отправленное содержимое. |
Ответы
| 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
Примеры
Update previously uploaded GeoJSON data containing geometries that represent a collection of geofences
Sample Request
PUT https://us.atlas.microsoft.com/mapData/25084fb7-307a-4720-8f91-7952a0b91012?api-version=2.0
{
"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/{operationId}?api-version=1.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."
}
}
Определения
|
Error |
Дополнительные сведения об ошибке управления ресурсами. |
|
Error |
Сведения об ошибке. |
|
Error |
Сообщение об ошибке |
|
Long |
Модель ответа для API операций Long-Running. |
|
Lro |
Состояние запроса. |
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 |
|
Запрос успешно завершен. |