Generate Cost Details Report - Create Operation

此 API 是所有先前版本使用量詳細資料 API 的取代專案。 要求針對提供日期範圍、計費期間 (僅企業客戶) 或特定範圍的發票標識符異步產生成本詳細數據報告。 要求報表的初始呼叫會傳回具有 『Location』 和 『Retry-After』 標頭的 202。 'Location' 標頭會提供要輪詢的端點,以取得產生報表的結果。 'Retry-After' 提供輪詢所產生報表之前要等候的持續時間。 如果作業仍在進行中,輪詢報表作業的呼叫會提供具有 『Location』 標頭的 202 回應。 報表產生作業完成後,輪詢端點會提供 200 回應,以及可供下載之報表 Blob () 的詳細數據。 輪詢回應本文中將提供下載 () 檔案的詳細數據。 若要瞭解成本詳細數據 (先前稱為使用量詳細數據,) 檔案中找到的欄位,請參閱 https://learn.microsoft.com/en-us/azure/cost-management-billing/automate/understand-usage-details-fields

POST https://management.azure.com/{scope}/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

URI 參數

名稱 位於 必要 類型 Description
scope
path True

string

訂用帳戶、計費帳戶或其他計費範圍的 ARM 資源標識碼。目前不支援資源群組和管理群組。 如需詳細資訊,請參閱 https://aka.ms/costmgmt/scopes

api-version
query True

string

用於此作業的 API 版本。

要求本文

名稱 類型 Description
billingPeriod

string

此參數只能由 Enterprise 合約客戶使用。 使用 YearMonth (例如202008) 格式。 此參數不能與 invoiceId 或 timePeriod 參數一起使用。 如果未在要求本文中提供 timePeriod、invoiceId 或 billingPeriod 參數,API 會傳回當月的成本。

invoiceId

string

此參數只能由 Microsoft 客戶合約客戶使用。 此外,其只能用於帳單設定檔或客戶範圍。 此參數不能與 billingPeriod 或 timePeriod 參數一起使用。 如果未在要求本文中提供 timePeriod、invoiceId 或 billingPeriod 參數,API 會傳回當月的成本。

metric

CostDetailsMetricType

詳細報表的類型。 預設會提供 ActualCost

timePeriod

CostDetailsTimePeriod

針對報表要求的成本詳細數據特定日期範圍。 此參數不能與 invoiceId 或 billingPeriod 參數一起使用。 如果未在要求本文中提供 timePeriod、invoiceId 或 billingPeriod 參數,API 會傳回當月的成本。 API 只允許提取數據 1 個月或更少,且不超過 13 個月。 如果未提供 timePeriod 或 billingPeriod 或 invoiceId,API 會預設為開啟的月份時間週期

回應

名稱 類型 Description
200 OK

CostDetailsOperationResults

要求處理已完成。

202 Accepted

已接受。 將會處理要求。 使用 [位置] 標頭來檢查狀態。

Headers

  • Location: string
  • Retry-After: integer
204 No Content

無內容。 要求成功,但未傳回任何結果。

Other Status Codes

GenerateCostDetailsReportErrorResponse

描述作業失敗原因的錯誤回應。

安全性

azure_auth

Azure Active Directory OAuth2 Flow。

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

名稱 Description
user_impersonation 模擬您的用戶帳戶

範例

GenerateCostDetailsReportByBillingAccountEnterpriseAgreementCustomerAndBillingPeriod
GenerateCostDetailsReportByBillingProfileAndInvoiceId
GenerateCostDetailsReportByBillingProfileAndInvoiceIdAndCustomerId
GenerateCostDetailsReportByCustomerAndTimePeriod
GenerateCostDetailsReportByDepartmentsAndTimePeriod
GenerateCostDetailsReportByEnrollmentAccountsAndTimePeriod
GenerateCostDetailsReportBySubscriptionAndTimePeriod

GenerateCostDetailsReportByBillingAccountEnterpriseAgreementCustomerAndBillingPeriod

Sample Request

POST https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

{
  "metric": "ActualCost",
  "billingPeriod": "202205"
}

Sample Response

{
  "id": "providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Completed",
  "manifest": {
    "manifestVersion": "2023-11-01",
    "dataFormat": "Csv",
    "blobCount": 1,
    "byteCount": 32741,
    "compressData": false,
    "requestContext": {
      "requestScope": "providers/Microsoft.Billing/billingAccounts/12345",
      "requestBody": {
        "metric": "ActualCost",
        "billingPeriod": "202205"
      }
    },
    "blobs": [
      {
        "blobLink": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/00000/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd",
        "byteCount": 32741
      }
    ]
  },
  "validTill": "2022-05-10T08:08:46.1973252Z"
}
Location: https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01
Retry-After: 60

GenerateCostDetailsReportByBillingProfileAndInvoiceId

Sample Request

POST https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

{
  "metric": "ActualCost",
  "invoiceId": "M1234567"
}

Sample Response

{
  "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Completed",
  "manifest": {
    "manifestVersion": "2023-11-01",
    "dataFormat": "Csv",
    "blobCount": 1,
    "byteCount": 32741,
    "compressData": false,
    "requestContext": {
      "requestScope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579",
      "requestBody": {
        "metric": "ActualCost",
        "billingPeriod": "202205"
      }
    },
    "blobs": [
      {
        "blobLink": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/00000/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd",
        "byteCount": 32741
      }
    ]
  },
  "validTill": "2022-05-10T08:08:46.1973252Z"
}
Location: https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01
Retry-After: 60

GenerateCostDetailsReportByBillingProfileAndInvoiceIdAndCustomerId

Sample Request

POST https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

{
  "metric": "ActualCost",
  "invoiceId": "M1234567"
}

Sample Response

{
  "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Completed",
  "manifest": {
    "manifestVersion": "2023-11-01",
    "dataFormat": "Csv",
    "blobCount": 1,
    "byteCount": 32741,
    "compressData": false,
    "requestContext": {
      "requestScope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579",
      "requestBody": {
        "metric": "ActualCost",
        "billingPeriod": "202205"
      }
    },
    "blobs": [
      {
        "blobLink": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/00000/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd",
        "byteCount": 32741
      }
    ]
  },
  "validTill": "2022-05-10T08:08:46.1973252Z"
}
Location: https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01
Retry-After: 60

GenerateCostDetailsReportByCustomerAndTimePeriod

Sample Request

POST https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

{
  "metric": "ActualCost",
  "timePeriod": {
    "start": "2020-03-01",
    "end": "2020-03-15"
  }
}

Sample Response

{
  "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Completed",
  "manifest": {
    "manifestVersion": "2023-11-01",
    "dataFormat": "Csv",
    "blobCount": 1,
    "byteCount": 32741,
    "compressData": false,
    "requestContext": {
      "requestScope": "providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579",
      "requestBody": {
        "metric": "ActualCost",
        "timePeriod": {
          "start": "2020-03-01",
          "end": "2020-03-15"
        }
      }
    },
    "blobs": [
      {
        "blobLink": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/00000/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd",
        "byteCount": 32741
      }
    ]
  },
  "validTill": "2022-05-10T08:08:46.1973252Z"
}
Location: https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/customers/13579/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01
Retry-After: 60

GenerateCostDetailsReportByDepartmentsAndTimePeriod

Sample Request

POST https://management.azure.com/providers/Microsoft.Billing/departments/12345/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

{
  "metric": "ActualCost",
  "timePeriod": {
    "start": "2020-03-01",
    "end": "2020-03-15"
  }
}

Sample Response

{
  "id": "providers/Microsoft.Billing/departments/12345/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Completed",
  "manifest": {
    "manifestVersion": "2023-11-01",
    "dataFormat": "Csv",
    "blobCount": 1,
    "byteCount": 32741,
    "compressData": false,
    "requestContext": {
      "requestScope": "providers/Microsoft.Billing/departments/12345",
      "requestBody": {
        "metric": "ActualCost",
        "timePeriod": {
          "start": "2020-03-01",
          "end": "2020-03-15"
        }
      }
    },
    "blobs": [
      {
        "blobLink": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/00000/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd",
        "byteCount": 32741
      }
    ]
  },
  "validTill": "2022-05-10T08:08:46.1973252Z"
}
Location: https://management.azure.com/providers/Microsoft.Billing/departments/12345/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01
Retry-After: 60

GenerateCostDetailsReportByEnrollmentAccountsAndTimePeriod

Sample Request

POST https://management.azure.com/providers/Microsoft.Billing/enrollmentAccounts/1234/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

{
  "metric": "ActualCost",
  "timePeriod": {
    "start": "2020-03-01",
    "end": "2020-03-15"
  }
}

Sample Response

{
  "id": "providers/Microsoft.Billing/enrollmentAccounts/1234/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Completed",
  "manifest": {
    "manifestVersion": "2023-11-01",
    "dataFormat": "Csv",
    "blobCount": 1,
    "byteCount": 32741,
    "compressData": false,
    "requestContext": {
      "requestScope": "providers/Microsoft.Billing/enrollmentAccounts/1234",
      "requestBody": {
        "metric": "ActualCost",
        "timePeriod": {
          "start": "2020-03-01",
          "end": "2020-03-15"
        }
      }
    },
    "blobs": [
      {
        "blobLink": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/00000/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd",
        "byteCount": 32741
      }
    ]
  },
  "validTill": "2022-05-10T08:08:46.1973252Z"
}
Location: https://management.azure.com/providers/Microsoft.Billing/enrollmentAccounts/1234/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01
Retry-After: 60

GenerateCostDetailsReportBySubscriptionAndTimePeriod

Sample Request

POST https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-01

{
  "metric": "ActualCost",
  "timePeriod": {
    "start": "2020-03-01",
    "end": "2020-03-15"
  }
}

Sample Response

{
  "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Completed",
  "manifest": {
    "manifestVersion": "2023-11-01",
    "dataFormat": "Csv",
    "blobCount": 1,
    "byteCount": 32741,
    "compressData": false,
    "requestContext": {
      "requestScope": "subscriptions/00000000-0000-0000-0000-000000000000",
      "requestBody": {
        "metric": "ActualCost",
        "timePeriod": {
          "start": "2020-03-01",
          "end": "2020-03-15"
        }
      }
    },
    "blobs": [
      {
        "blobLink": "https://ccmreportstorageeastus.blob.core.windows.net/armreports/00000/00000000-0000-0000-0000-000000000000?sv=2020-05-31&sr=b&sig=abcd",
        "byteCount": 32741
      }
    ]
  },
  "validTill": "2022-05-10T08:08:46.1973252Z"
}
Location: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/costDetailsOperationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01
Retry-After: 60

定義

名稱 Description
BlobInfo

這項作業所產生的 Blob 資訊。

CostDetailsDataFormat

報表的數據格式

CostDetailsMetricType

詳細報表的類型。 預設會提供 ActualCost

CostDetailsOperationResults

成本詳細數據 Api 長時間執行的作業結果。

CostDetailsStatusType

成本詳細數據作業的狀態

CostDetailsTimePeriod

提取成本詳細報表數據的開始和結束日期。 API 只允許提取數據 1 個月或更少,且不超過 13 個月。

ErrorDetails

錯誤的詳細數據。

GenerateCostDetailsReportErrorResponse

錯誤回應表示服務無法處理傳入要求。 錯誤訊息中會提供原因。

某些錯誤回應:

  • 400 不正確的要求 - 無效的要求承載。 提供的要求承載不是 JSON 格式,或要求承載中不接受無效的成員。

  • 400 不正確的要求 - 無效的要求承載:只能有 timePeriod 或 invoiceId 或 billingPeriod。 API 只允許提取 timePeriod 或 invoiceId 或 billingPeriod 的數據。 客戶應該只提供其中一個參數。

  • 400 不正確的要求 - 開始日期必須在 之後。 API 只允許從現在起 13 個月內提取數據。

  • 400 不正確的要求 - 允許的日期範圍上限為 1 個月。 API 只允許提取 1 個月或更少的數據。

  • 429 TooManyRequests - 要求已節流。 等候「重試後」標頭中指定的時間後重試。

  • 503 ServiceUnavailable - 服務暫時無法使用。 請在等候「Retry-After」標頭中指定的時間之後重試。

GenerateCostDetailsReportRequestDefinition

成本詳細報表的定義。

BlobInfo

這項作業所產生的 Blob 資訊。

名稱 類型 Description
blobLink

string

連結至 Blob 以下載檔。

byteCount

integer

Blob 中的位元組。

CostDetailsDataFormat

報表的數據格式

名稱 類型 Description
Csv

string

Csv 數據格式。

CostDetailsMetricType

詳細報表的類型。 預設會提供 ActualCost

名稱 類型 Description
ActualCost

string

實際成本數據。

AmortizedCost

string

分攤成本數據。

CostDetailsOperationResults

成本詳細數據 Api 長時間執行的作業結果。

名稱 類型 Description
error

ErrorDetails

錯誤的詳細數據。

id

string

長時間執行作業的標識碼。

manifest.blobCount

integer

Blob 總數。

manifest.blobs

BlobInfo[]

這項作業所產生的 Blob 資訊清單。

manifest.byteCount

integer

所有 Blob 中的位元組總數。

manifest.compressData

boolean

這是壓縮格式的數據。

manifest.dataFormat

CostDetailsDataFormat

報表的數據格式

manifest.manifestVersion

string

指令清單版本。

manifest.requestContext.requestBody

GenerateCostDetailsReportRequestDefinition

成本詳細數據呼叫中提供的要求承載本文

manifest.requestContext.requestScope

string

要求的要求範圍。

name

string

長時間執行的作業名稱。

status

CostDetailsStatusType

成本詳細數據作業的狀態

type

string

長時間執行的作業類型。

validTill

string

報表 URL 在 UTC 中變成無效/到期的時間,例如 2020-12-08T05:55:59.4394737Z。

CostDetailsStatusType

成本詳細數據作業的狀態

名稱 類型 Description
Completed

string

作業已完成。

Failed

string

作業失敗。

NoDataFound

string

作業已完成,找不到任何成本數據。

CostDetailsTimePeriod

提取成本詳細報表數據的開始和結束日期。 API 只允許提取數據 1 個月或更少,且不超過 13 個月。

名稱 類型 Description
end

string

要提取數據的結束日期。範例格式 2020-03-15

start

string

要從中提取數據的開始日期。 範例格式 2020-03-15

ErrorDetails

錯誤的詳細數據。

名稱 類型 Description
code

string

錯誤碼。

message

string

錯誤訊息,指出作業失敗的原因。

GenerateCostDetailsReportErrorResponse

錯誤回應表示服務無法處理傳入要求。 錯誤訊息中會提供原因。

某些錯誤回應:

  • 400 不正確的要求 - 無效的要求承載。 提供的要求承載不是 JSON 格式,或要求承載中不接受無效的成員。

  • 400 不正確的要求 - 無效的要求承載:只能有 timePeriod 或 invoiceId 或 billingPeriod。 API 只允許提取 timePeriod 或 invoiceId 或 billingPeriod 的數據。 客戶應該只提供其中一個參數。

  • 400 不正確的要求 - 開始日期必須在 之後。 API 只允許從現在起 13 個月內提取數據。

  • 400 不正確的要求 - 允許的日期範圍上限為 1 個月。 API 只允許提取 1 個月或更少的數據。

  • 429 TooManyRequests - 要求已節流。 等候「重試後」標頭中指定的時間後重試。

  • 503 ServiceUnavailable - 服務暫時無法使用。 請在等候「Retry-After」標頭中指定的時間之後重試。

名稱 類型 Description
error

ErrorDetails

錯誤的詳細數據。

GenerateCostDetailsReportRequestDefinition

成本詳細報表的定義。

名稱 類型 Description
billingPeriod

string

此參數只能由 Enterprise 合約客戶使用。 使用 YearMonth (例如202008) 格式。 此參數不能與 invoiceId 或 timePeriod 參數一起使用。 如果未在要求本文中提供 timePeriod、invoiceId 或 billingPeriod 參數,API 會傳回當月的成本。

invoiceId

string

此參數只能由 Microsoft 客戶合約客戶使用。 此外,其只能用於帳單設定檔或客戶範圍。 此參數不能與 billingPeriod 或 timePeriod 參數一起使用。 如果未在要求本文中提供 timePeriod、invoiceId 或 billingPeriod 參數,API 會傳回當月的成本。

metric

CostDetailsMetricType

詳細報表的類型。 預設會提供 ActualCost

timePeriod

CostDetailsTimePeriod

針對報表要求的成本詳細數據特定日期範圍。 此參數不能與 invoiceId 或 billingPeriod 參數一起使用。 如果未在要求本文中提供 timePeriod、invoiceId 或 billingPeriod 參數,API 會傳回當月的成本。 API 只允許提取數據 1 個月或更少,且不超過 13 個月。 如果未提供 timePeriod 或 billingPeriod 或 invoiceId,API 會預設為開啟的月份時間週期