Cloud for Sustainability API (プレビュー) OData クエリの例

             無料試用版

重要

この機能の一部またはすべては、プレビュー リリースの一部として利用できます。 コンテンツおよび機能は変更される場合があります。

Open Data Protocol (OData) は、HTTP などのコア プロトコルに基づいて構築されたデータ アクセス プロトコルです。 Web 用の REST のような一般的に受け入れられている方法論を使用します。 さまざまなライブラリとツールを使用して、OData サービスを利用できます。

Microsoft Cloud for Sustainability API に基づいて独自の実装を構築するには、よくリクエストされるこれらのサンプル クエリの一部を確認できます。

クエリ サンプルを変更して、ターゲット環境で機能するようにします。

  • {serviceRoot} : https://api.mcfs.microsoft.com/api/v1.0/instances/{instanceId}

  • {instanceId} : : クエリする Cloud for Sustainability 環境の GUID (20aec369-f1c8-4814-a89d-4d449dd7e8a1など)。

  • {serviceRootM365} : {serviceRoot}/m365

  • {serviceRootAzure} : {serviceRoot}/enrollments/{enrollmentId}

  • {enrollmentId} : 登録 ID (別名: 課金アカウント ID)。 例: 12345678

  • {tenantId} : Microsoft 365 テナント ID。

注意

一部の API クエリには多くの結果が含まれ、複数のページに分割されます。 API は、ページごとに最大 1000 件の結果数を返します。 さらに結果がある場合、API は結果の次のページへの URL を含む @odata.nextLink プロパティを返します。

EnrollmentEmission エンティティ (Azure 排出量の場合)

請求先アカウント (登録とも呼ばれる) の排出データを表します。

プロパティ タイプ ノート/メモ
dateKey int32 yyyymmdd 形式の日付。dd は常に 01 です。
enrollmentId 文字列 請求先アカウント ID とも呼ばれます。
orgName 文字列 TP Name または Top Parent Name と同じです。
subscriptionId 文字列 サブスクリプションの ID です。
subscriptionName 文字列 サブスクリプションの名前です。
azureServiceName string Azure サービスの名前 (例:App Service)
subService string たとえば、Azure Storage や Azure Compute です。
azureRegionName 文字列 サービスが展開される Azure リージョンです。
スコープ 文字列 温室効果ガスの範囲 (スコープ 1、スコープ 2、スコープ 3など)。
scopeId int32 スコープの ID です。
totalEmissions 倍精度浮動小数点 記録の総排出量 (mtCO2e) です。

EnrollmentEmission エンティティのサンプル クエリ (Azure 排出量の場合)

クエリの種類
登録別排出 {serviceRootAzure}/排出
特定のフィールドを選択 {serviceRootAzure}/emissions?$select=enrollmentId,totalEmissions,scopeId
カウントを含める {serviceRootAzure}/emissions?$count=true
結果数を制限する {serviceRootAzure}/emissions?$top=100
ページ分割 {serviceRootAzure}/emissions?$skip=100&$top=50
スコープでフィルター {serviceRootAzure}/emissions?$filter=ScopeId eq 1
フィルタ―と集計 {serviceRootAzure}/emissions?$apply=filter(ScopeId eq 1)/aggregate($count as Count, totalEmissions with average as Average, totalEmissions with sum as Sum)
フィルターおよびグループ {serviceRootAzure}/emissions?$apply=filter(totalEmissions gt 0.05)/groupby((ScopeId), aggregate($count as Count))`

Microsoft365Emission エンティティ (Microsoft 365 排出量の場合)

次のアプリケーションに関連する Microsoft 365 データセンターの排出量を表します:

  • Exchange Online
  • SharePoint
  • OneDrive
  • Microsoft Teams
  • Word
  • Excel
  • PowerPoint
  • Outlook
プロパティ タイプ ノート/メモ
dateKey int32 yyyymmdd 形式の日付。dd は常に 01 です。
tenantId 文字列 テナントの ID です。
tenantName 文字列 テナントの名前です。
officeRegionName 文字列 Microsoft 365 データ センターの地域。
スコープ 文字列 温室効果ガスの範囲 (スコープ 1、スコープ 2、スコープ 3など)。
totalEmissions 倍精度浮動小数点 記録の総排出量 (mtCO2e) です。

Microsoft365Emission エンティティのサンプル クエリ (Microsoft 365 排出量の場合)

クエリの種類
テナントの排出量 {serviceRootM365}/tenantemissions
特定のフィールドを選択 {serviceRootM365}/emissions?$select=tenantId,totalEmissions,scope
カウントを含める {serviceRootM365}/tenantemissions?$count=true
結果数を制限する {serviceRootM365}/tenantemissions?$top=100
ページ分割 {serviceRootM365}/tenantemissions?$skip=100&$top=50
スコープでフィルター {serviceRootM365}/tenantemissions?$filter=Scope eq 'FILLMEIN'
フィルタ―と集計 {serviceRootserviceRootM365Azure}/tenantemissions?$apply=filter(scope eq 'FILLMEIN')/aggregate($count as Count, totalEmissions with average as Average, totalEmissions with sum as Sum)
フィルターおよびグループ {serviceRootM365}/tenantemissions?$apply=filter(totalEmissions gt 0.05)/groupby((Scope), aggregate($count as Count))`

EnrollmentUsage エンティティ (Azure 排出量の場合)

Microsoft Cloud リソースの計算された使用係数を表します。

プロパティ タイプ ノート/メモ
dateKey int32 yyyymmdd 形式の日付。dd は常に 01 です。
enrollmentId 文字列 請求先アカウント ID とも呼ばれます。
orgName 文字列 TP Name または Top Parent Name と同じです。
subscriptionId 文字列 サブスクリプションの ID です。
subscriptionName 文字列 サブスクリプションの名前です。
subService 文字列 たとえば、Azure Storage や Azure Compute です。
azureRegionName 文字列 サービスが展開される Azure リージョンです。
使用状況 倍精度浮動小数点 レコードの合計使用量です。 指定された地域におけるサービスの標準化された使用状況を表すため、単位はありません。

Microsoft の計算方法の詳細については、Microsoft Cloud for Sustainability API 計算方法 をご覧ください。|

EnrollmentUsage エンティティのサンプル クエリ

クエリの種類
すべての使用状況データ {serviceRootAzure}/usage
サブスクリプションあたりの月ごとの合計使用量 {serviceRootAzure}/usage?$apply=groupby((SubscriptionName,DateKey),aggregate(usage with sum as TotalUsage))&$orderby=SubscriptionName,DateKey

EnrollmentProjection エンティティ (Azure 排出量の場合)

過去 5 か月の移動平均に基づいた、暦年の残りの予測排出を表します。 年換算されたビジュアル化を対象としています。

プロパティ タイプ ノート/メモ
dateKey int32 yyyymmdd 形式の日付。dd は常に 01 です。
enrollmentId 文字列 請求先アカウント ID とも呼ばれます。
actualEmissions 倍精度浮動小数点 過去の日付 (mtCO2e) のみが含まれます。
projectedEmissions 倍精度浮動小数点 現在の年に利用可能な実際のデータ (mtCO2e) に基づく、過去 5 か月以内の 移動平均 に基づきます。
actualUsage 倍精度浮動小数点 過去の日付にのみ含まれます。
projectedUsage 倍精度浮動小数点 現在の年に利用可能な実際のデータに基づく、過去 5 か月以内の移動平均に基づきます。

EnrollmentProjection エンティティのサンプル クエリ (Azure 排出量の場合)

クエリの種類 注意
2022 年 7 月以降のプロジェクション {serviceRootAzure}/projections?$filter=dateKey gt 20220701
年間のすべてのプロジェクション {serviceRootAzure}/projections

重要

Microsoft Cloud for Sustainability API は現在プレビュー段階であり、変更される可能性があります。 Microsoft がデータの正確性と完全性を改善するにつれて、過去の排出の数値も更新される場合があります。

よくあるご質問

Microsoft は排出と使用量をどのように計算しますか?

Microsoft の計算方法の情報については、 Microsoft Cloud for Sustainability API 計算方法をご覧ください。

散布図とは何ですか?

API は一貫したページネーションのために rownum を使用します。 この値は変更される可能性があるため、アプリケーションがそれに依存するべきではありません。

登録 ID とは何ですか?

登録 ID は請求先アカウント ID を指します。 Azure portal で登録 ID と請求先アカウント ID を確認します。

ターゲット環境の認証トークンを取得するにはどうすればよいですか?

API には OAuth 認証トークンが必要です。 Microsoft 認証ライブラリ (MSAL) を使用することをお勧めします

現在の応答よりも多くの結果がある場合、API は @odata.nextLink プロパティを返します。 結果の次のページを取得するには、アプリでこの nextLink に対して別の GET を実行する必要があります。 最後のページには nextLink が含まれていません。 OData クライアント ライブラリを使用したページネーションの詳細については、この コード サンプル をご覧ください。