Data - Upload
Utilize para carregar conteúdos de dados para uma conta Azure Maps.
Nota
Azure Maps Descontinuação do Serviço de dados
O serviço Azure Maps Dados (v1 e v2) foi preterido e será descontinuado a 16/09/24. Para evitar interrupções do serviço, todas as chamadas para o serviço de Dados terão de ser atualizadas para utilizar o serviço de Registo de Dados do Azure Maps até 16/09/24. Para obter mais informações, veja Como criar um registo de dados.
A Data Upload
API é um pedido HTTP POST
que permite ao autor da chamada carregar conteúdos de dados para o serviço Azure Maps.
Pode utilizar esta API num cenário como carregar uma coleção de Geofences em GeoJSON
formato, para utilização no nosso Serviço de Geofencing Azure Maps.
Importante
Ao utilizar esta funcionalidade, concorda com os termos legais de pré-visualização. Veja Os Termos Suplementares de Pré-visualização para obter detalhes adicionais.
Submeter Pedido de Carregamento
Para carregar o seu conteúdo, irá utilizar um POST
pedido. O corpo do pedido irá conter os dados a carregar. O dataFormat
parâmetro de consulta irá conter o formato dos dados. O dataSharingLevel
parâmetro de consulta pode conter o nível de partilha dos dados. O Content-Type
cabeçalho será definido para o tipo de conteúdo dos dados.
Por exemplo, para carregar uma coleção de geofências no GeoJSON
formato, defina o corpo do pedido para o conteúdo geofence. Defina o dataFormat
parâmetro de consulta como geojson e defina o Content-Type
cabeçalho como um dos seguintes tipos de multimédia:
application/json
application/vnd.geo+json
application/octet-stream
Eis um corpo de pedido de exemplo para carregar uma Geofence simples representada como geometria de círculo com um ponto central e um raio. O exemplo abaixo encontra-se em GeoJSON
:
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
A API de Carregamento de Dados executa uma operação de execução prolongada.
Limites de Carregamento de Dados
Tenha em atenção que, atualmente, cada conta Azure Maps tem um limite de armazenamento de dados. Assim que o limite de armazenamento for atingido, todas as novas chamadas à API de carregamento devolverão uma 409 Conflict
resposta de erro http. Pode sempre utilizar a API de Eliminação de Dados para eliminar conteúdo antigo/não utilizado e criar espaço para novos carregamentos.
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}
Parâmetros do URI
Name | Em | Necessário | Tipo | Description |
---|---|---|---|---|
geography
|
path | True |
string |
Este parâmetro especifica onde está localizado o recurso Azure Maps Creator. Os valores válidos somos nós e eu. |
api-version
|
query | True |
string |
Número da versão da API Azure Maps. |
data
|
query | True |
Formato de dados do conteúdo a ser carregado. |
|
description
|
query |
string |
A descrição a ser dada ao carregamento. |
Cabeçalho do Pedido
Media Types: "application/json", "application/octet-stream"
Name | Necessário | Tipo | Description |
---|---|---|---|
x-ms-client-id |
string |
Especifica a conta que se destina à utilização em conjunto com o modelo de segurança Microsoft Entra ID. Representa um ID exclusivo para a conta Azure Maps e pode ser obtido a partir da API de Conta do plano de gestão Azure Maps. Para utilizar Microsoft Entra ID segurança no Azure Maps veja os seguintes artigos para obter orientações. |
Corpo do Pedido
Media Types: "application/json", "application/octet-stream"
Name | Tipo | Description |
---|---|---|
UploadContent |
object |
O conteúdo a carregar. |
Respostas
Name | Tipo | Description |
---|---|---|
200 OK |
A operação está em execução ou concluída. Se a operação tiver sido bem-sucedida, utilize o cabeçalho Resource-Location para obter o caminho para o resultado. Headers Resource-Location: string |
|
202 Accepted |
Pedido Aceite: o pedido foi aceite para processamento. Utilize o URL no Cabeçalho do Operation-Location para obter o estado. Headers Operation-Location: string |
|
Other Status Codes |
O limite de armazenamento de dados é atingido na conta Azure Maps. Pode sempre utilizar a API de Eliminação de Dados para eliminar conteúdo antigo/não utilizado e criar espaço para novos carregamentos. |
|
Other Status Codes |
Ocorreu um erro inesperado. |
Segurança
AADToken
Estes são os fluxos Microsoft Entra OAuth 2.0. Quando emparelhado com o controlo de acesso baseado em funções do Azure, pode ser utilizado para controlar o acesso às APIs REST Azure Maps. Os controlos de acesso baseados em funções do Azure são utilizados para designar o acesso a uma ou mais Azure Maps conta de recursos ou sub-recursos. Qualquer utilizador, grupo ou principal de serviço pode ter acesso através de uma função incorporada ou de uma função personalizada composta por uma ou mais permissões para Azure Maps APIs REST.
Para implementar cenários, recomendamos que veja os conceitos de autenticação. Em resumo, esta definição de segurança fornece uma solução para modelar aplicações através de objetos com capacidade de controlo de acesso em APIs e âmbitos específicos.
Notas
- Esta definição de segurança requer a utilização do
x-ms-client-id
cabeçalho para indicar a que Azure Maps recurso a que a aplicação está a pedir acesso. Isto pode ser adquirido na API de gestão de Mapas .
O Authorization URL
é específico da instância da cloud pública do Azure. As clouds soberanas têm URLs de Autorização exclusivos e configurações de Microsoft Entra ID.
* O controlo de acesso baseado em funções do Azure está configurado a partir do plano de gestão do Azure através de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.
* A utilização do SDK Web Azure Maps permite a configuração baseada na configuração de uma aplicação para vários casos de utilização.
- Para obter mais informações sobre plataforma de identidades da Microsoft, consulte plataforma de identidades da Microsoft descrição geral.
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
Esta é uma chave partilhada que é aprovisionada quando Create uma conta Azure Maps no portal do Azure ou com o PowerShell, a CLI, os SDKs do Azure ou a API REST.
Com esta chave, qualquer aplicação pode aceder a toda a API REST. Por outras palavras, esta chave pode ser utilizada como uma chave mestra na conta na qual são emitidas.
Para aplicações expostas publicamente, a nossa recomendação é utilizar a abordagem de aplicações cliente confidenciais para aceder Azure Maps APIs REST para que a sua chave possa ser armazenada de forma segura.
Type:
apiKey
In:
query
SAS Token
Este é um token de assinatura de acesso partilhado criado a partir da operação List SAS no recurso de Azure Maps através do plano de gestão do Azure através de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.
Com este token, qualquer aplicação está autorizada a aceder com controlos de acesso baseados em funções do Azure e controlo detalhado para a expiração, taxa e regiões de utilização para o token específico. Por outras palavras, o Token de SAS pode ser utilizado para permitir que as aplicações controlem o acesso de uma forma mais segura do que a chave partilhada.
Para aplicações expostas publicamente, a nossa recomendação é configurar uma lista específica de origens permitidas no recurso da conta de Mapa para limitar o abuso de composição e renovar regularmente o Token de SAS.
Type:
apiKey
In:
header
Exemplos
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."
}
}
Definições
Name | Description |
---|---|
Data |
Formato de dados do conteúdo carregado. |
Error |
Informações adicionais sobre o erro de gestão de recursos. |
Error |
O detalhe do erro. |
Error |
Resposta a erros |
Long |
O modelo de resposta de uma API de Operações Long-Running. |
Lro |
O estado do pedido. |
DataFormat
Formato de dados do conteúdo carregado.
Name | Tipo | Description |
---|---|---|
dwgzippackage |
string |
Pacote ZIP que contém o ficheiro DWG. |
geojson |
string |
GeoJSON é um formato de intercâmbio de dados geoespacial baseado em JSON. |
zip |
string |
Formato de dados comprimido. |
ErrorAdditionalInfo
Informações adicionais sobre o erro de gestão de recursos.
Name | Tipo | Description |
---|---|---|
info |
object |
As informações adicionais. |
type |
string |
O tipo de informação adicional. |
ErrorDetail
O detalhe do erro.
Name | Tipo | Description |
---|---|---|
additionalInfo |
As informações adicionais do erro. |
|
code |
string |
O código de erro. |
details |
Os detalhes do erro. |
|
message |
string |
A mensagem de erro. |
target |
string |
O destino do erro. |
ErrorResponse
Resposta a erros
Name | Tipo | Description |
---|---|---|
error |
O objeto de erro. |
LongRunningOperationResult
O modelo de resposta de uma API de Operações Long-Running.
Name | Tipo | Description |
---|---|---|
created |
string |
O carimbo de data/hora criado. |
error |
O detalhe do erro. |
|
operationId |
string |
O ID desta operação de execução prolongada. |
status |
O estado do pedido. |
|
warning |
O detalhe do erro. |
LroStatus
O estado do pedido.
Name | Tipo | Description |
---|---|---|
Failed |
string |
O pedido tem uma ou mais falhas. |
NotStarted |
string |
O pedido ainda não começou a ser processado. |
Running |
string |
O pedido começou a ser processado. |
Succeeded |
string |
O pedido foi concluído com êxito. |