Data - Upload
Use para carregar conteúdo de dados em uma conta Azure Mapas.
Observação
Desativação do serviço Dados do Azure Mapas
O serviço Dados do Azure Mapas (v1 e v2) foi preterido e será desativado em 16/09/24. Para evitar interrupções de serviço, todas as chamadas ao Serviço de Dados precisarão ser atualizadas para usar o serviço de Registro de Dados do Azure Mapas até 16/09/24. Para obter mais informações, confira Como criar um registro de dados.
A Data Upload
API é uma solicitação HTTP POST
que permite que o chamador carregue conteúdo de dados para o serviço Azure Mapas.
Você pode usar essa API em um cenário como carregar uma coleção de Cercas Geográficas no GeoJSON
formato, para uso em nosso serviço de geofencing Azure Mapas.
Importante
Ao usar esse recurso, você concorda com os termos legais de visualização. Confira os Termos Complementares de Visualização para obter detalhes adicionais.
Enviar Solicitação de Carregamento
Para carregar seu conteúdo, você usará uma solicitação POST
. O corpo da solicitação conterá os dados a serem carregados. O dataFormat
parâmetro de consulta conterá o formato dos dados, o dataSharingLevel
parâmetro de consulta pode conter o nível de compartilhamento dos dados. O Content-Type
cabeçalho será definido como o tipo de conteúdo dos dados.
Por exemplo, para carregar uma coleção de cercas geográficas no GeoJSON
formato, defina o corpo da solicitação como o conteúdo de cerca geográfica. Defina o dataFormat
parâmetro de consulta como geojson e defina o Content-Type
cabeçalho como um dos seguintes tipos de mídia:
application/json
application/vnd.geo+json
application/octet-stream
Veja a seguir um corpo de solicitação de exemplo para carregar uma cerca geográfica simples representada como uma geometria de círculo usando um ponto central e um raio. O exemplo abaixo está 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
Lembre-se de que atualmente cada conta Azure Mapas tem um limite de armazenamento de dados. Depois que o limite de armazenamento for atingido, todas as novas chamadas à API de upload retornarão uma 409 Conflict
resposta de erro http. Você sempre pode usar a API de Exclusão de Dados para excluir conteúdo antigo/não utilizado e criar espaço para novos uploads.
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 de URI
Nome | Em | Obrigatório | Tipo | Description |
---|---|---|---|---|
geography
|
path | True |
string |
Esse parâmetro especifica onde o recurso criador de Azure Mapas está localizado. Os valores válidos são nós e eu. |
api-version
|
query | True |
string |
Número de versão da API de Mapas Azure. |
data
|
query | True |
Formato de dados do conteúdo que está sendo carregado. |
|
description
|
query |
string |
A descrição a ser dada ao upload. |
Cabeçalho da solicitação
Media Types: "application/json", "application/octet-stream"
Nome | Obrigatório | Tipo | Description |
---|---|---|---|
x-ms-client-id |
string |
Especifica qual conta destina-se ao uso em conjunto com o modelo de segurança Microsoft Entra ID. Ele representa uma ID exclusiva para a conta Azure Mapas e pode ser recuperado da API de Conta do plano de gerenciamento Azure Mapas. Para usar Microsoft Entra ID segurança no Azure Mapas consulte os artigos a seguir para obter diretrizes. |
Corpo da solicitação
Media Types: "application/json", "application/octet-stream"
Nome | Tipo | Description |
---|---|---|
UploadContent |
object |
O conteúdo a ser carregado. |
Respostas
Nome | Tipo | Description |
---|---|---|
200 OK |
A operação está em execução ou concluída. Se a operação tiver sido bem-sucedida, use o cabeçalho Resource-Location para obter o caminho para o resultado. Headers Resource-Location: string |
|
202 Accepted |
Solicitação Aceita: a solicitação foi aceita para processamento. Use a URL no cabeçalho Operation-Location para obter status. Headers Operation-Location: string |
|
Other Status Codes |
O limite de armazenamento de dados é atingido na conta de Azure Mapas. Você sempre pode usar a API de Exclusão de Dados para excluir conteúdo antigo/não utilizado e criar espaço para novos uploads. |
|
Other Status Codes |
Erro inesperado. |
Segurança
AADToken
Esses são os fluxos Microsoft Entra OAuth 2.0. Quando emparelhado com o controle de acesso baseado em função do Azure, ele pode ser usado para controlar o acesso às APIs REST Azure Mapas. Os controles de acesso baseados em função do Azure são usados para designar o acesso a uma ou mais Azure Mapas conta de recurso ou sub-recursos. Qualquer usuário, grupo ou entidade de serviço pode receber acesso por meio de uma função interna ou uma função personalizada composta por uma ou mais permissões para Azure Mapas APIs REST.
Para implementar cenários, recomendamos exibir conceitos de autenticação. Em resumo, essa definição de segurança fornece uma solução para modelar aplicativos por meio de objetos capazes de acessar o controle em APIs e escopos específicos.
Observações
- Essa definição de segurança requer o uso do
x-ms-client-id
cabeçalho para indicar a qual Azure Mapas recurso ao qual o aplicativo está solicitando acesso. Isso pode ser adquirido da API de gerenciamento de Mapas .
O Authorization URL
é específico para a instância de nuvem pública do Azure. As nuvens soberanas têm URLs de autorização exclusivas e configurações de Microsoft Entra ID.
* O controle de acesso baseado em função do Azure é configurado no plano de gerenciamento do Azure por meio de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.
* O uso do SDK da Web Azure Mapas permite a configuração baseada em configuração de um aplicativo para vários casos de uso.
- Para obter mais informações sobre plataforma de identidade da Microsoft, consulte visão geral plataforma de identidade da Microsoft.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nome | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Essa é uma chave compartilhada provisionada quando você Create uma conta Azure Mapas no portal do Azure ou usando o PowerShell, a CLI, os SDKs do Azure ou a API REST.
Com essa chave, qualquer aplicativo pode acessar toda a API REST. Em outras palavras, essa chave pode ser usada como uma chave master na conta em que elas são emitidas.
Para aplicativos expostos publicamente, nossa recomendação é usar a abordagem de aplicativos cliente confidenciais para acessar Azure Mapas APIs REST para que sua chave possa ser armazenada com segurança.
Type:
apiKey
In:
query
SAS Token
Esse é um token de assinatura de acesso compartilhado criado a partir da operação Listar SAS no recurso Azure Mapas por meio do plano de gerenciamento do Azure por meio de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.
Com esse token, qualquer aplicativo está autorizado a acessar com controles de acesso baseados em função do Azure e controle refinado à expiração, taxa e regiões de uso para o token específico. Em outras palavras, o Token SAS pode ser usado para permitir que os aplicativos controlem o acesso de maneira mais segura do que a chave compartilhada.
Para aplicativos expostos publicamente, nossa recomendação é configurar uma lista específica de origens permitidas no recurso de conta do Mapa para limitar o abuso de renderização e renovar regularmente o Token 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
Nome | Description |
---|---|
Data |
Formato de dados do conteúdo carregado. |
Error |
As informações adicionais do erro de gerenciamento de recursos. |
Error |
O detalhe do erro. |
Error |
Resposta de erro |
Long |
O modelo de resposta para uma API de operações de Long-Running. |
Lro |
O estado status da solicitação. |
DataFormat
Formato de dados do conteúdo carregado.
Nome | Tipo | Description |
---|---|---|
dwgzippackage |
string |
Pacote ZIP que contém o arquivo DWG. |
geojson |
string |
GeoJSON é um formato de intercâmbio de dados geoespacial baseado em JSON. |
zip |
string |
Formato de dados compactado. |
ErrorAdditionalInfo
As informações adicionais do erro de gerenciamento de recursos.
Nome | Tipo | Description |
---|---|---|
info |
object |
As informações adicionais. |
type |
string |
O tipo de informação adicional. |
ErrorDetail
O detalhe do erro.
Nome | 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 de erro
Nome | Tipo | Description |
---|---|---|
error |
O objeto de erro. |
LongRunningOperationResult
O modelo de resposta para uma API de operações de Long-Running.
Nome | Tipo | Description |
---|---|---|
created |
string |
O carimbo de data/hora criado. |
error |
O detalhe do erro. |
|
operationId |
string |
A ID desta operação de execução prolongada. |
status |
O estado status da solicitação. |
|
warning |
O detalhe do erro. |
LroStatus
O estado status da solicitação.
Nome | Tipo | Description |
---|---|---|
Failed |
string |
A solicitação tem uma ou mais falhas. |
NotStarted |
string |
A solicitação ainda não iniciou o processamento. |
Running |
string |
A solicitação iniciou o processamento. |
Succeeded |
string |
A solicitação foi concluída com êxito. |