Поделиться через


Generate Cost Details Report - Create Operation

Этот API является заменой для всех ранее выпущенных API сведений об использовании. Запрос на создание отчета о затратах для заданного диапазона дат, периода выставления счетов (только корпоративные клиенты) или идентификатора счета асинхронно в определенной области. Первоначальный вызов запроса отчета вернет заголовок 202 с заголовком Location и Retry-After. Заголовок Location предоставит конечную точку для опроса, чтобы получить результат создания отчета. Значение Retry-After предоставляет длительность ожидания перед опросом созданного отчета. Вызов для опроса операции отчета предоставит ответ 202 с заголовком Location, если операция по-прежнему выполняется. После завершения операции создания отчета конечная точка опроса предоставит ответ 200 вместе с подробными сведениями о больших двоичных объектах отчета, доступных для скачивания. Сведения о файлах, доступных для скачивания, будут доступны в тексте ответа на опрос. Сведения о затратах (ранее известные как сведения об использовании) в файлах см. в разделе 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=2024-08-01

Параметры URI

Имя В Обязательно Тип Описание
scope
path True

string

Идентификатор ресурса ARM для подписки, учетной записи выставления счетов или других областей выставления счетов. В настоящее время группа ресурсов и группа управления не поддерживаются. Дополнительные сведения см. в https://aka.ms/costmgmt/scopes.

api-version
query True

string

Версия API, используемая для этой операции.

Текст запроса

Имя Тип Описание
billingPeriod

string

Этот параметр можно использовать только клиентами Соглашения Enterprise. Используйте формат YearMonth (например, 202008). Этот параметр нельзя использовать вместе с параметрами invoiceId или timePeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет стоимость текущего месяца.

invoiceId

string

Этот параметр можно использовать только клиентами клиентского соглашения Майкрософт. Кроме того, его можно использовать только в профиле выставления счетов или в области клиента. Этот параметр нельзя использовать вместе с параметрами billingPeriod или timePeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет стоимость текущего месяца.

metric

CostDetailsMetricType

Тип подробного отчета. По умолчанию предоставляется ActualCost

timePeriod

CostDetailsTimePeriod

Конкретный диапазон дат сведений о затратах, запрошенных для отчета. Этот параметр нельзя использовать вместе с параметрами invoiceId или billingPeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет стоимость текущего месяца. API позволяет извлекать данные только в течение 1 месяца или меньше и не старше 13 месяцев. Если параметр TIMEPeriod или billingPeriod или invoiceId не предоставляется API по умолчанию для периода открытого месяца

Ответы

Имя Тип Описание
200 OK

CostDetailsOperationResults

Обработка запроса завершена.

202 Accepted

Принятый. Запрос будет обработан. Используйте заголовок location для проверки состояния.

Заголовки

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

Нет содержимого. Запрос выполнен успешно, но не вернул результатов.

Other Status Codes

GenerateCostDetailsReportErrorResponse

Ответ на ошибку, описывающий причину сбоя операции.

Безопасность

azure_auth

Поток OAuth2 Azure Active Directory.

Тип: oauth2
Flow: implicit
URL-адрес авторизации: https://login.microsoftonline.com/common/oauth2/authorize

Области

Имя Описание
user_impersonation олицетворения учетной записи пользователя

Примеры

GenerateCostDetailsReportByBillingAccountEnterpriseAgreementCustomerAndBillingPeriod
GenerateCostDetailsReportByBillingProfileAndInvoiceId
GenerateCostDetailsReportByBillingProfileAndInvoiceIdAndCustomerId
GenerateCostDetailsReportByCustomerAndTimePeriod
GenerateCostDetailsReportByDepartmentsAndTimePeriod
GenerateCostDetailsReportByEnrollmentAccountsAndTimePeriod
GenerateCostDetailsReportBySubscriptionAndTimePeriod

GenerateCostDetailsReportByBillingAccountEnterpriseAgreementCustomerAndBillingPeriod

Образец запроса

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

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

Пример ответа

{
  "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": "2024-08-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=2024-08-01
Retry-After: 60

GenerateCostDetailsReportByBillingProfileAndInvoiceId

Образец запроса

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

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

Пример ответа

{
  "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": "2024-08-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=2024-08-01
Retry-After: 60

GenerateCostDetailsReportByBillingProfileAndInvoiceIdAndCustomerId

Образец запроса

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

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

Пример ответа

{
  "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": "2024-08-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=2024-08-01
Retry-After: 60

GenerateCostDetailsReportByCustomerAndTimePeriod

Образец запроса

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

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

Пример ответа

{
  "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": "2024-08-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=2024-08-01
Retry-After: 60

GenerateCostDetailsReportByDepartmentsAndTimePeriod

Образец запроса

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

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

Пример ответа

{
  "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": "2024-08-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=2024-08-01
Retry-After: 60

GenerateCostDetailsReportByEnrollmentAccountsAndTimePeriod

Образец запроса

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

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

Пример ответа

{
  "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": "2024-08-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=2024-08-01
Retry-After: 60

GenerateCostDetailsReportBySubscriptionAndTimePeriod

Образец запроса

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

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

Пример ответа

{
  "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": "2024-08-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=2024-08-01
Retry-After: 60

Определения

Имя Описание
BlobInfo

Данные большого двоичного объекта, созданные этой операцией.

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 — запрос регулируется. Повторите попытку после ожидания времени, указанного в заголовке retry-after.

  • 503 ServiceUnavailable — служба временно недоступна. Повторите попытку после ожидания времени, указанного в заголовке Retry-After.

GenerateCostDetailsReportRequestDefinition

Определение подробного отчета о затратах.

BlobInfo

Данные большого двоичного объекта, созданные этой операцией.

Имя Тип Описание
blobLink

string

Ссылка на большой двоичный объект для скачивания файла.

byteCount

integer

Байты в большом двоичном объекте.

CostDetailsDataFormat

Формат данных отчета

Имя Тип Описание
Csv

string

Формат данных CSV.

CostDetailsMetricType

Тип подробного отчета. По умолчанию предоставляется ActualCost

Имя Тип Описание
ActualCost

string

Фактические данные о затратах.

AmortizedCost

string

Амортизированные данные о затратах.

CostDetailsOperationResults

Результат длительной операции для API сведений о затратах.

Имя Тип Описание
error

ErrorDetails

Сведения об ошибке.

id

string

Идентификатор длительной операции.

manifest.blobCount

integer

Общее количество больших двоичных объектов.

manifest.blobs

BlobInfo[]

Список сведений о BLOB-объектах, созданных этой операцией.

manifest.byteCount

integer

Общее количество байтов во всех больших двоичных объектах.

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

Состояние операции сведений о затратах

Имя Тип Описание
Completed

string

Операция завершена.

Failed

string

Сбой операции.

NoDataFound

string

Операция завершена и не найдена данных о затратах.

CostDetailsTimePeriod

Дата начала и окончания извлечения данных для подробного отчета о затратах. API позволяет извлекать данные только в течение 1 месяца или меньше и не старше 13 месяцев.

Имя Тип Описание
end

string

Дата окончания извлечения данных. пример формата 2020-03-15

start

string

Дата начала извлечения данных. пример формата 2020-03-15

ErrorDetails

Сведения об ошибке.

Имя Тип Описание
code

string

Код ошибки.

message

string

Сообщение об ошибке, указывающее, почему операция завершилась ошибкой.

GenerateCostDetailsReportErrorResponse

Ответ на ошибку указывает, что служба не может обработать входящий запрос. Причина указана в сообщении об ошибке.

Некоторые ответы на ошибки:

  • 400 Недопустимый запрос — недопустимые полезные данные запроса. Полезные данные запроса не указаны в формате JSON или не приняли недопустимый член в полезных данных запроса.

  • 400 Недопустимый запрос — недопустимые полезные данные запроса: может иметь только timePeriod или invoiceId или billingPeriod. API позволяет извлекать данные только для timePeriod или invoiceId или billingPeriod. Клиент должен предоставить только один из этих параметров.

  • 400 Недопустимый запрос — дата начала должна быть после. API позволяет извлекать данные не старше 13 месяцев.

  • 400 Недопустимый запрос — максимальный допустимый диапазон дат составляет 1 месяц. API позволяет извлекать данные только в течение 1 месяца или меньше.

  • 429 TooManyRequests — запрос регулируется. Повторите попытку после ожидания времени, указанного в заголовке retry-after.

  • 503 ServiceUnavailable — служба временно недоступна. Повторите попытку после ожидания времени, указанного в заголовке Retry-After.

Имя Тип Описание
error

ErrorDetails

Сведения об ошибке.

GenerateCostDetailsReportRequestDefinition

Определение подробного отчета о затратах.

Имя Тип Описание
billingPeriod

string

Этот параметр можно использовать только клиентами Соглашения Enterprise. Используйте формат YearMonth (например, 202008). Этот параметр нельзя использовать вместе с параметрами invoiceId или timePeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет стоимость текущего месяца.

invoiceId

string

Этот параметр можно использовать только клиентами клиентского соглашения Майкрософт. Кроме того, его можно использовать только в профиле выставления счетов или в области клиента. Этот параметр нельзя использовать вместе с параметрами billingPeriod или timePeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет стоимость текущего месяца.

metric

CostDetailsMetricType

Тип подробного отчета. По умолчанию предоставляется ActualCost

timePeriod

CostDetailsTimePeriod

Конкретный диапазон дат сведений о затратах, запрошенных для отчета. Этот параметр нельзя использовать вместе с параметрами invoiceId или billingPeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет стоимость текущего месяца. API позволяет извлекать данные только в течение 1 месяца или меньше и не старше 13 месяцев. Если параметр TIMEPeriod или billingPeriod или invoiceId не предоставляется API по умолчанию для периода открытого месяца