Generate Cost Details Report - Create Operation
Этот API является заменой для всех ранее выпущенных API сведений об использовании. Запрос на создание отчета о затратах для заданного диапазона дат, периода выставления счетов (только корпоративные клиенты) или идентификатора счета в определенном область. Первоначальный вызов запроса отчета вернет 202 с заголовками Location и Retry-After. Заголовок Location предоставляет конечную точку для опроса для получения результата создания отчета. Параметр Retry-After предоставляет время ожидания перед опросом созданного отчета. Вызов для опроса операции отчета предоставит ответ 202 с заголовком Location, если операция еще выполняется. После завершения операции создания отчета конечная точка опроса предоставит ответ 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
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
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 |
Этот параметр могут использовать только участники Клиентского соглашения Microsoft. Кроме того, его можно использовать только в профиле выставления счетов или в области Клиента. Этот параметр нельзя использовать вместе с параметрами billingPeriod или timePeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет затраты за текущий месяц. |
metric |
Тип подробного отчета. По умолчанию предоставляется ActualCost |
|
timePeriod |
Конкретный диапазон дат сведений о затратах, запрошенных для отчета. Этот параметр нельзя использовать вместе с параметрами invoiceId или billingPeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет затраты за текущий месяц. API позволяет извлекать данные только за 1 месяц или меньше и не старше 13 месяцев. Если timePeriod или billingPeriod или invoiceId не указан, API по умолчанию использует период времени открытого месяца. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 OK |
Обработка запроса завершена. |
|
202 Accepted |
Принято. Запрос будет обработан. Используйте заголовок Location для проверка состояния. Заголовки
|
|
204 No Content |
Нет содержимого. Запрос выполнен успешно, но не вернул никаких результатов. |
|
Other Status Codes |
Ответ об ошибке, описывающий причину сбоя операции. |
Безопасность
azure_auth
Поток OAuth2 в Azure Active Directory.
Тип:
oauth2
Flow:
implicit
URL-адрес авторизации:
https://login.microsoftonline.com/common/oauth2/authorize
Области
Имя | Описание |
---|---|
user_impersonation | олицетворения учетной записи пользователя |
Примеры
GenerateCostDetailsReportByBillingAccountEnterpriseAgreementCustomerAndBillingPeriod
Образец запроса
POST https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345/providers/Microsoft.CostManagement/generateCostDetailsReport?api-version=2023-11-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": "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
Образец запроса
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"
}
Пример ответа
{
"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
Образец запроса
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"
}
Пример ответа
{
"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
Образец запроса
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"
}
}
Пример ответа
{
"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
Образец запроса
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"
}
}
Пример ответа
{
"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
Образец запроса
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"
}
}
Пример ответа
{
"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
Образец запроса
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"
}
}
Пример ответа
{
"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
Определения
Имя | Описание |
---|---|
Blob |
Сведения о большом двоичном объекте, созданном этой операцией. |
Cost |
Формат данных отчета |
Cost |
Тип подробного отчета. По умолчанию предоставляется ActualCost |
Cost |
Результат длительной операции для API сведений о затратах. |
Cost |
Состояние операции со сведениями о затратах |
Cost |
Дата начала и окончания извлечения данных для подробного отчета о затратах. API позволяет извлекать данные только за 1 месяц или меньше и не старше 13 месяцев. |
Error |
Сведения об ошибке. |
Generate |
Ответ об ошибке указывает, что служба не может обработать входящий запрос. Причина указана в сообщении об ошибке. Некоторые ответы об ошибках:
|
Generate |
Определение подробного отчета о затратах. |
BlobInfo
Сведения о большом двоичном объекте, созданном этой операцией.
Имя | Тип | Описание |
---|---|---|
blobLink |
string |
Ссылка на большой двоичный объект для скачивания. |
byteCount |
integer |
Байты в большом двоичном объекте. |
CostDetailsDataFormat
Формат данных отчета
Имя | Тип | Описание |
---|---|---|
Csv |
string |
Формат данных CSV. |
CostDetailsMetricType
Тип подробного отчета. По умолчанию предоставляется ActualCost
Имя | Тип | Описание |
---|---|---|
ActualCost |
string |
Фактические данные о затратах. |
AmortizedCost |
string |
Амортизированные данные о затратах. |
CostDetailsOperationResults
Результат длительной операции для API сведений о затратах.
Имя | Тип | Описание |
---|---|---|
error |
Сведения об ошибке. |
|
id |
string |
Идентификатор длительной операции. |
manifest.blobCount |
integer |
Общее количество BLOB-объектов. |
manifest.blobs |
Blob |
Список сведений о большом двоичном объекте, созданных этой операцией. |
manifest.byteCount |
integer |
Общее количество байтов во всех BLOB-объектах. |
manifest.compressData |
boolean |
Данные в сжатом формате. |
manifest.dataFormat |
Формат данных отчета |
|
manifest.manifestVersion |
string |
Версия манифеста. |
manifest.requestContext.requestBody |
Текст полезных данных запроса, указанный в вызове сведений о затратах |
|
manifest.requestContext.requestScope |
string |
Запрос область запроса. |
name |
string |
Имя длительно выполняемой операции. |
status |
Состояние операции со сведениями о затратах |
|
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 |
Конечная дата для извлечения данных. Пример формата 15.03.2020 |
start |
string |
Дата начала извлечения данных. Пример формата 15.03.2020 |
ErrorDetails
Сведения об ошибке.
Имя | Тип | Описание |
---|---|---|
code |
string |
Код ошибки. |
message |
string |
Сообщение об ошибке, указывающее, почему операция завершилась сбоем. |
GenerateCostDetailsReportErrorResponse
Ответ об ошибке указывает, что служба не может обработать входящий запрос. Причина указана в сообщении об ошибке.
Некоторые ответы об ошибках:
400 Недопустимый запрос — недопустимые полезные данные запроса. Предоставленные полезные данные запроса не имеют формата JSON или недопустимый член не принимается в полезных данных запроса.
400 Bad Request — недопустимые полезные данные запроса: может иметь только timePeriod, invoiceId или billingPeriod. API позволяет извлекать данные только для timePeriod, invoiceId или billingPeriod. Клиент должен указать только один из этих параметров.
400 Bad Request — дата начала должна быть после . API позволяет извлекать данные не старше 13 месяцев.
400 Bad Request — максимальный допустимый диапазон дат составляет 1 месяц. API позволяет извлекать данные только за 1 месяц или меньше.
429 TooManyRequests — запрос регулируется. Повторите попытку после ожидания времени, указанного в заголовке retry-after.
503 ServiceUnavailable — служба временно недоступна. Повторите попытку по окончании периода времени, указанного в заголовке Retry-After.
Имя | Тип | Описание |
---|---|---|
error |
Сведения об ошибке. |
GenerateCostDetailsReportRequestDefinition
Определение подробного отчета о затратах.
Имя | Тип | Описание |
---|---|---|
billingPeriod |
string |
Этот параметр могут использовать только участники Соглашения Enterprise. Используйте формат YearMonth (например, 202008). Этот параметр нельзя использовать вместе с параметрами invoiceId или timePeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет затраты за текущий месяц. |
invoiceId |
string |
Этот параметр могут использовать только участники Клиентского соглашения Microsoft. Кроме того, его можно использовать только в профиле выставления счетов или в области Клиента. Этот параметр нельзя использовать вместе с параметрами billingPeriod или timePeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет затраты за текущий месяц. |
metric |
Тип подробного отчета. По умолчанию предоставляется ActualCost |
|
timePeriod |
Конкретный диапазон дат сведений о затратах, запрошенных для отчета. Этот параметр нельзя использовать вместе с параметрами invoiceId или billingPeriod. Если параметр timePeriod, invoiceId или billingPeriod не указан в тексте запроса, API вернет затраты за текущий месяц. API позволяет извлекать данные только за 1 месяц или меньше и не старше 13 месяцев. Если timePeriod или billingPeriod или invoiceId не указан, API по умолчанию использует период времени открытого месяца. |