Data - Upload

Azure Maps アカウントにデータ コンテンツをアップロードするには、 を使用します。

注意

Azure Maps Data Service の廃止

Azure Maps Data Service (v1v2 の両方) は非推奨となり、2024 年 9 月 16 日に廃止されます。 サービスの中断を回避するには、データ サービスに対するすべての呼び出しを更新して、Azure Maps Data Registry サービスを 9/16/24 までに使用する必要があります。 詳細については、「データ レジストリの作成方法」を参照してください。

Data Upload API は、呼び出し元がデータ コンテンツを Azure Maps サービスにアップロードできるようにする HTTP POST 要求です。 この API は、Azure Maps Geofencing Service で使用するために、形式でGeoJSONジオフェンスのコレクションをアップロードするようなシナリオで使用できます。

重要

この機能を使用すると、プレビューの法的条件に同意したことになります。 詳細については、「 プレビュー補足条項 」を参照してください。

アップロード要求を送信する

コンテンツをアップロードするには、要求を POST 使用します。 要求本文には、アップロードするデータが含まれます。 dataFormatクエリ パラメーターにはデータdataSharingLevelの形式が含まれます。クエリ パラメーターにはデータの共有レベルを含めることができます。 ヘッダーは Content-Type 、データのコンテンツ タイプに設定されます。

たとえば、ジオフェンスのコレクションを形式で GeoJSON アップロードするには、要求本文をジオフェンス コンテンツに設定します。 クエリ パラメーターを dataFormatgeojson に設定し、ヘッダーを 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
        }
    }]
}

Data Upload API は、実行時間の長い操作を実行します。

データアップロードの制限

現在、すべてのAzure Maps アカウントにはデータ ストレージの制限があることに注意してください。 ストレージの制限に達すると、すべての新しいアップロード API 呼び出しで http エラー応答が 409 Conflict 返されます。 データ削除 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

Azure Maps API のバージョン番号。

dataFormat
query True

DataFormat

アップロードするコンテンツのデータ形式。

description
query

string

アップロードに指定する説明。

要求ヘッダー

Media Types: "application/json", "application/octet-stream"

名前 必須 説明
x-ms-client-id

string

Microsoft Entra ID セキュリティ モデルと組み合わせて使用するアカウントを指定します。 Azure Maps アカウントの一意の ID を表し、Azure Maps管理プレーン アカウント API から取得できます。 Azure MapsでMicrosoft Entra IDセキュリティを使用するには、次の記事を参照してください。

要求本文

Media Types: "application/json", "application/octet-stream"

名前 説明
UploadContent

object

アップロードするコンテンツ。

応答

名前 説明
200 OK

LongRunningOperationResult

操作が実行されているか完了しています。 操作が成功した場合は、Resource-Location ヘッダーを使用して結果へのパスを取得します。

Headers

Resource-Location: string

202 Accepted

[Request Accepted]\(要求の承諾\): 要求は処理のために受け入れ済みです。 状態を取得するには、Operation-Location ヘッダーの URL を使用してください。

Headers

Operation-Location: string

Other Status Codes

ErrorResponse

Azure Maps アカウントでデータ ストレージの制限に達しました。 データ削除 API を常に使用して、古いコンテンツまたは未使用のコンテンツを削除し、新しいアップロード用の領域を作成できます。

Other Status Codes

ErrorResponse

予期しないエラーが発生しました。

セキュリティ

AADToken

これらは OAuth 2.0 フロー Microsoft Entraです。 Azure ロールベースのアクセス制御と組み合わせて使用すると、Azure Maps REST API へのアクセスを制御できます。 Azure ロールベースのアクセス制御は、1 つ以上のAzure Mapsリソース アカウントまたはサブリソースへのアクセスを指定するために使用されます。 REST API に対する 1 つ以上のアクセス許可で構成される組み込みロールまたはカスタム ロールを使用して、任意のユーザー、グループ、またはサービス プリンシパルにアクセス権 Azure Mapsを付与できます。

シナリオを実装するには、 認証の概念を表示することをお勧めします。 要約すると、このセキュリティ定義は、特定の API とスコープに対するアクセス制御が可能なオブジェクトを使用してアプリケーションをモデル化するためのソリューションを提供します。

メモ

  • このセキュリティ定義では、 ヘッダーを使用して、x-ms-client-idアプリケーションがアクセスを要求しているリソースAzure Maps示す必要があります。 これは、 Maps 管理 API から取得できます。

Authorization URLは、Azure パブリック クラウド インスタンスに固有です。 ソブリン クラウドには、固有の承認 URL とMicrosoft Entra ID構成があります。 * Azure ロールベースのアクセス制御は、Azure portal、PowerShell、CLI、Azure SDK、または REST API を介して Azure 管理プレーンから構成されます。 * Azure Maps Web SDK を使用すると、複数のユース ケースに対してアプリケーションを構成ベースで設定できます。

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 portalでAzure Maps アカウントを作成するとき、または PowerShell、CLI、Azure SDK、または REST API を使用するときにプロビジョニングされる共有キーです。

このキーを使用すると、すべてのアプリケーションがすべての REST API にアクセスできます。 つまり、このキーは、発行されたアカウントのマスター キーとして使用できます。

公開されているアプリケーションの場合は、機密クライアント アプリケーションのアプローチを使用して、キーを安全に格納できるように、Azure Maps REST API にアクセスすることをお勧めします。

Type: apiKey
In: query

SAS Token

これは、Azure portal、PowerShell、CLI、Azure SDK、または REST API を介して、Azure 管理プレーンを介して、Azure Maps リソースの List SAS 操作から作成される共有アクセス署名トークンです。

このトークンを使用すると、すべてのアプリケーションが Azure ロールベースのアクセス制御を使用してアクセスし、特定のトークンに使用される有効期限、レート、およびリージョンをきめ細かく制御できます。 つまり、SAS トークンを使用して、アプリケーションが共有キーよりもセキュリティで保護された方法でアクセスを制御できるようにします。

公開されているアプリケーションの場合、 Map アカウント リソース で許可される配信元の特定の一覧を構成して、レンダリングの不正使用を制限し、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."
  }
}

定義

名前 説明
DataFormat

アップロードされたコンテンツのデータ形式。

ErrorAdditionalInfo

リソース管理エラーの追加情報。

ErrorDetail

エラーの詳細。

ErrorResponse

エラー応答

LongRunningOperationResult

Long-Running Operations API の応答モデル。

LroStatus

要求の状態。

DataFormat

アップロードされたコンテンツのデータ形式。

名前 説明
dwgzippackage

string

DWG ファイルを含む ZIP パッケージ。

geojson

string

GeoJSON は、JSON ベースの地理空間データ交換形式です。

zip

string

圧縮データ形式。

ErrorAdditionalInfo

リソース管理エラーの追加情報。

名前 説明
info

object

追加情報。

type

string

追加情報の種類。

ErrorDetail

エラーの詳細。

名前 説明
additionalInfo

ErrorAdditionalInfo[]

エラーの追加情報。

code

string

エラー コード。

details

ErrorDetail[]

エラーの詳細です。

message

string

エラー メッセージ。

target

string

エラーのターゲット。

ErrorResponse

エラー応答

名前 説明
error

ErrorDetail

error オブジェクト。

LongRunningOperationResult

Long-Running Operations API の応答モデル。

名前 説明
created

string

作成されたタイムスタンプ。

error

ErrorDetail

エラーの詳細。

operationId

string

この実行時間の長い操作の ID。

status

LroStatus

要求の状態。

warning

ErrorDetail

エラーの詳細。

LroStatus

要求の状態。

名前 説明
Failed

string

要求に 1 つ以上のエラーがあります。

NotStarted

string

要求はまだ処理を開始していません。

Running

string

要求が処理を開始しました。

Succeeded

string

要求が正常に完了しました。