Azure Enterprise REST API

この記事では、Azure エンタープライズ登録で使用する REST API について説明します。 また、REST API に関する一般的な問題の解決方法についても説明します。

Consumption API と Usage API

Microsoft Enterprise Azure のお客様は、REST API を使用して使用状況と課金情報を取得できます。 ロール所有者 (エンタープライズ管理者、部署管理者、アカウント オーナー) は、Azure portal からキーを生成することによって、API へのアクセスを有効にする必要があります。 その後、登録番号とキーを提供されたユーザーは、API を使用してデータにアクセスできます。

利用可能な API

Balance and Summary - Balance and Summary API では、残高、新規購入、Azure Marketplace サービス料金、精算、および超過料金に関する情報の月次概要が提供されます。 詳細については、「Reporting APIs for Enterprise customers - Balance and Summary (Enterprise のお客様向けの Reporting API - Balance and Summary)」を参照してください。

Usage Details - Usage Detail API では、登録別の毎日の消費量の内訳と見積料金が提供されます。 この結果には、インスタンス、測定、および部署に関する情報も含まれています。 この API には、請求期間、または指定した開始日と終了日でクエリを実行できます。 詳細については、「Reporting APIs for Enterprise customers - Usage Details (Enterprise のお客様向けの Reporting API - Usage Details)」を参照してください。

Marketplace Store Charge - Marketplace Store Charge API では、指定された請求期間または開始日から終了日までの使用量に基づく Marketplace 料金の日別内訳が返されます。 詳細については、「Reporting APIs for Enterprise customers - Marketplace Store Charge (Enterprise のお客様向けの Reporting API - Marketplace Store Charge)」を参照してください。

Price sheet - Price Sheet API では、登録と請求期間に対する各測定に適用される課金率が提供されます。 詳細については、「Reporting APIs for Enterprise customers - Price Sheet (Enterprise のお客様向けの Reporting API - Price Sheet)」を参照してください。

Billing Periods - Billing Periods API では、登録の消費量データが記載された請求期間の一覧が逆時系列順に返されます。 各期間には、BalanceSummary、UsageDetails、Marktplace Charges および PriceSheet という 4 セットのデータの API ルートを示すプロパティが含まれています。 詳細については、「Reporting APIs for Enterprise customers - Billing Periods (Enterprise のお客様向けの Reporting API - Billing Periods)」を参照してください。

API キーの生成

ロール所有者は、Azure portal で次の手順を実行して、API データ アクセスを有効にできます。

  1. Azure portal にサインインします。
  2. [コストの管理と請求] を検索し、それを選択します。
  3. ナビゲーション メニューから [課金スコープ] を選択してから、操作する課金アカウントを選択します。
  4. 左側のナビゲーション メニューで、[使用量 + 請求金額] を選択します。
  5. [Manage API Access Keys](API アクセス キーの管理) を選択して、[Manage API Access Keys](API アクセス キーの管理) ウィンドウを開きます。
    Screenshot showing the Manage API Access Keys option.

[Manage API Access Keys](API アクセス キーの管理) ウィンドウでは、次のタスクを実行できます。

  • プライマリとセカンダリ アクセス キーを生成して表示する
  • アクセス キーの開始日と終了日を表示する
  • アクセス キーを無効にする

Note

  1. 加入契約管理者の場合は、加入契約レベルでは [使用量 + 請求金額] ブレードからのみキーを生成でき、アカウントと部署レベルでは生成できません。
  2. 部署所有者のみである場合は、部門レベル、およびアカウント所有者であるアカウント レベルでも生成できます。
  3. アカウント オーナーのみである場合は、アカウント レベルでのみキーを生成できます。

プライマリまたはセカンダリ API キーを生成する

  1. エンタープライズ管理者として Azure portal にサインインします。
  2. [コストの管理と請求] を選択します。
  3. ナビゲーション メニューから [課金スコープ] を選択してから、操作する課金アカウントを選択します。
  4. ナビゲーション メニューで、[使用量 + 請求金額] を選択します。
  5. [Manage API Access Keys](API アクセス キーの管理) を選択します。
  6. [生成] を選択してキーを生成します。
    Screenshot showing the Manage API Access Keys window.
  7. 展開記号を選択するか、[コピー] を選択して API アクセス キーを取得し、すぐに使用できるようにします。
    Screenshot showing the expand symbol and Copy option.

プライマリまたはセカンダリ API キーを再生成する

  1. エンタープライズ管理者として Azure portal にサインインします。
  2. [コストの管理と請求] を選択します。
  3. ナビゲーション メニューから [課金スコープ] を選択してから、操作する課金アカウントを選択します。
  4. ナビゲーション メニューで、[使用量 + 請求金額] を選択します。
  5. [Manage API Access Keys](API アクセス キーの管理) を選択します。
  6. [再生成] を選択してキーを再生成します。

プライマリまたはセカンダリ API キーを取り消す

  1. エンタープライズ管理者として Azure portal にサインインします。
  2. [コストの管理と請求] を検索して選択します。
  3. ナビゲーション メニューから [課金スコープ] を選択してから、操作する課金アカウントを選択します。
  4. ナビゲーション メニューで、[使用量 + 請求金額] を選択します。
  5. [Manage API Access Keys](API アクセス キーの管理) を選択します。
  6. [取り消し] を選択してキーを取り消します。

管理者以外に API アクセスを許可する

登録のエンタープライズ管理者ではないユーザーに API アクセス キーを付与するには、次の手順を実行します。

この手順によって、API アクセスがキー保有者に付与され、使用状況レポートのコスト情報と価格情報を表示できるようになります。

  1. 左側のナビゲーション ウィンドウで、[ポリシー] を選択します。
  2. [部門管理者は料金を表示できる] セクションで [オン] を選択し、[保存] を選択します。
  3. [アカウント所有者は料金を表示できる] セクションで [オン] を選択し、[保存] を選択します。
    Screenshot showing the Polices window where you change view charges options.

API にキーを渡す

認証と承認をそれぞれ呼び出すために API キーを渡します。 次のプロパティを HTTP ヘッダーに渡します。

要求ヘッダー キー Value
承認 次の形式で値を指定します:bearer {API_KEY}
例: bearer <APIKey>

Swagger

次の API 用の Swagger エンドポイントは、Enterprise Reporting v3 APIs で入手できます。 Swagger は API の検査に役立ちます。 Swagger を使用して、AutoRest または Swagger CodeGen を使用したクライアント SDK を生成します。 2014 年 5 月 1 日以降に利用可能なデータは、API を通じて入手できます。

API 応答コード

API を使用しているときに、応答の状態コードが表示されます。 次の表ではこれらについて説明します。

応答の状態コード Message 説明
200 [OK] エラーなし
401 権限がありません API キーが検出されない、正しくない、有効期限が切れている、など
404 使用不可 レポートのエンドポイントが見つからない
400 正しくない要求 無効なパラメーター - 日付範囲、EA 番号など。
500 サーバー エラー 要求の処理中に予期しないエラーが発生した

使用状況データと課金データの更新頻度

使用状況データ ファイルと課金データ ファイルは、現在の請求月に対して 24 時間ごとに更新されます。 ただし、最大で 3 日間のデータ待機時間が発生する可能性があります。 たとえば、月曜日に使用量が発生した場合、データ ファイルには木曜日までデータが表示されないことがあります。

Azure サービス カタログ

価格シートのダウンロードの一環として、Azure portal 内ですべての Azure サービスをダウンロードできます。 価格シートのダウンロードの詳細については、「マイクロソフト エンタープライズ契約の価格をダウンロードする」を参照してください。

CSV データ ファイルの詳細

ここでは、API レポートのプロパティについて説明します。

使用状況の概要

JSON 形式は CSV レポートから生成されます。 そのため、形式は概要の CSV 形式と同じになります。 列名が使用されるため、JSON 概要データを使用するときはデータ テーブルに逆シリアル化する必要があります。

CSV の列名 JSON の列名 JSON の新しい列 コメント
AccountOwnerId AccountOwnerLiveId AccountOwnerLiveId
アカウント名 AccountName AccountName
ServiceAdministratorId ServiceAdministratorLiveId ServiceAdministratorLiveId
SubscriptionId SubscriptionId SubscriptionId
SubscriptionGuid MOSPSubscriptionGuid SubscriptionGuid
サブスクリプション名 SubscriptionName SubscriptionName
Date Date Date サービス カタログ レポートが実行された日付を示します。 形式は、タイム スタンプのない日付文字列です。
Month
Product BillableItemName Product
Meter ID ResourceGUID MeterId
測定カテゴリ サービス MeterCategory サービスを検索する際に役立ちます。 複数の ServiceType を持つサービスに関連します。 例: Virtual Machines。
Meter Sub-Category ServiceType MeterSubCategory サービスの 2 番目の詳細レベルを提供します。 例: A1 VM (Windows 以外)。
Meter Region ServiceRegion MeterRegion サービスに必要な 3 番目の詳細レベル。 ResourceGUID のリージョン コンテキストを検索する際に役立ちます。
Meter Name ServiceResource MeterName サービスの名前。
Consumed Quantity ResourceQtyConsumed ConsumedQuantity
ResourceRate ResourceRate ResourceRate
ExtendedCost ExtendedCost ExtendedCost
Resource Location ServiceSubRegion ResourceLocation
Consumed Service ServiceInfo ConsumedService
インスタンス ID コンポーネント InstanceId
ServiceInfo1 ServiceInfo1 ServiceInfo1
ServiceInfo2 ServiceInfo2 ServiceInfo2
AdditionalInfo: AdditionalInfo: AdditionalInfo:
Tags タグ Tags
Store Service Identifier OrderNumber StoreServiceIdentifier
Department Name DepartmentName DepartmentName
Cost Center CostCenter CostCenter
計算単位 UnitOfMeasure UnitOfMeasure サンプル値: 時間、GB、イベント、プッシュ、ユニット、ユニット時間、MB、日割りユニット
ResourceGroup ResourceGroup ResourceGroup

Azure Marketplace レポート

CSV の列名 JSON の列名 JSON の新しい列
AccountOwnerId AccountOwnerId AccountOwnerId
アカウント名 AccountName AccountName
SubscriptionId SubscriptionId SubscriptionId
SubscriptionGuid SubscriptionGuid SubscriptionGuid
サブスクリプション名 SubscriptionName SubscriptionName
Date BillingCycle Date (日付文字列のみ。タイム スタンプなし)
Month
Meter ID MeterResourceId MeterId
発行元の名前 PublisherFriendlyName 発行元
プラン名 OfferFriendlyName OfferName
Plan Name PlanFriendlyName PlanName
Consumed Quantity BilledQty ConsumedQuantity
ResourceRate ResourceRate ResourceRate
ExtendedCost ExtendedCost ExtendedCost
計算単位 UnitOfMeasure UnitOfMeasure
インスタンス ID InstanceId InstanceId
追加情報 AdditionalInfo: AdditionalInfo:
Tags タグ Tags
Order Number OrderNumber OrderNumber
Department Name DepartmentNames DepartmentName
Cost Center CostCenters CostCenter
リソース グループ ResourceGroup ResourceGroup

Price Sheet

CSV の列名 JSON の列名 コメント
サービス サービス 価格に変更はありません
計算単位 UnitOfMeasure
Overage Part Number ConsumptionPartNumber
Overage Unit Price ConsumptionPrice
通貨コード CurrencyCode

API に関する一般的な問題

Azure Enterprise REST API を使用すると、次のような一般的な問題が発生する可能性があります。

適切な承認の種類がない API キーを使用しようとしている可能性があります。 API キーは次のユーザーによって生成されます。

  • エンタープライズ管理者
  • 部門管理者 (DA)
  • アカウント所有者 (AO)

EA 管理者によって生成されたキーを使用すると、その登録に関するすべての情報にアクセスできます。 読み取り専用の EA 管理者は API キーを生成できません。

DA または AO によって生成されたキーでは、残高、料金、価格シートの各情報にはアクセスできません。

API キーは 6 か月ごとに有効期限が切れます。 期限切れになった場合は、再生成する必要があります。

タイムアウト エラーが発生した場合は、タイムアウトしきい値の上限を増やすことで解決できます。

401 (未承認) 期限切れエラーが発生することがあります。 このエラーは、通常、期限切れのキーが原因で発生します。 キーの有効期限が切れている場合は、キーを再生成することができます。

選択した日付範囲に使用できる最新データがない場合、API 呼び出しから 400 および 404 (利用不可) エラーが返されることがあります。 たとえば、登録の転送が最近開始されたために、このエラーが発生することがあります。 特定の日付以降のデータは、新しい登録に格納されます。 それ以外に、新しい登録番号を使用して古い登録に存在する情報を取得しようとすると、エラーが発生することがあります。

次のステップ