Generate Cost Details Report - Create Operation

Essa API é a substituição de todas as APIs de Detalhes de Uso da versão anterior. Solicite a geração de um relatório de detalhes de custo para o intervalo de datas fornecido, o período de cobrança (somente clientes corporativos) ou a ID da fatura de forma assíncrona em um determinado escopo. A chamada inicial para solicitar um relatório retornará um 202 com um cabeçalho 'Location' e 'Retry-After'. O cabeçalho 'Location' fornecerá o ponto de extremidade a ser sondado para obter o resultado da geração de relatório. O 'Retry-After' fornece a duração a aguardar antes da sondagem para o relatório gerado. Uma chamada para sondar a operação de relatório fornecerá uma resposta 202 com um cabeçalho 'Location' se a operação ainda estiver em andamento. Depois que a operação de geração de relatório for concluída, o ponto de extremidade de sondagem fornecerá uma resposta 200, juntamente com detalhes sobre os blob(s) de relatório que estão disponíveis para download. Os detalhes sobre os arquivos disponíveis para download estarão disponíveis no corpo da resposta de sondagem. Para entender os campos de detalhes de custo (anteriormente conhecidos como detalhes de uso) encontrados em arquivos , consulte 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

Parâmetros de URI

Nome Em Obrigatório Tipo Description
scope
path True

string

A ID de recurso do ARM para assinatura, conta de cobrança ou outros escopos de cobrança. Atualmente, não há suporte para Grupo de Recursos e Grupo de Gerenciamento. Para obter detalhes, consulte https://aka.ms/costmgmt/scopes.

api-version
query True

string

A versão da API a ser usada para esta operação.

Corpo da solicitação

Nome Tipo Description
billingPeriod

string

Esse parâmetro só pode ser usado por clientes de Contrato Enterprise. Use o formato YearMonth(por exemplo, 202008). Esse parâmetro não pode ser usado junto com os parâmetros invoiceId ou timePeriod. Se um parâmetro timePeriod, invoiceId ou billingPeriod não for fornecido no corpo da solicitação, a API retornará o custo do mês atual.

invoiceId

string

Esse parâmetro só pode ser usado por clientes de Contrato de Cliente da Microsoft. Além disso, ele só pode ser usado no escopo do Perfil de Cobrança ou do Cliente. Esse parâmetro não pode ser usado junto com os parâmetros billingPeriod ou timePeriod. Se um parâmetro timePeriod, invoiceId ou billingPeriod não for fornecido no corpo da solicitação, a API retornará o custo do mês atual.

metric

CostDetailsMetricType

O tipo do relatório detalhado. Por padrão, ActualCost é fornecido

timePeriod

CostDetailsTimePeriod

O intervalo de datas específico dos detalhes de custo solicitados para o relatório. Esse parâmetro não pode ser usado junto com os parâmetros invoiceId ou billingPeriod. Se um parâmetro timePeriod, invoiceId ou billingPeriod não for fornecido no corpo da solicitação, a API retornará o custo do mês atual. A API só permite que os dados sejam extraídos por um mês ou menos e não mais de 13 meses. Se nenhum timePeriod ou billingPeriod ou invoiceId for fornecido, a API usará como padrão o período de tempo de mês aberto

Respostas

Nome Tipo Description
200 OK

CostDetailsOperationResults

Processamento de solicitação concluído.

202 Accepted

Aceita. A solicitação será processada. Use o cabeçalho Local para marcar o status.

Headers

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

Sem Conteúdo. A solicitação foi bem-sucedida, mas não retornou nenhum resultado.

Other Status Codes

GenerateCostDetailsReportErrorResponse

Resposta de erro que descreve por que a operação falhou.

Segurança

azure_auth

Fluxo OAuth2 do Azure Active Directory.

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

Scopes

Nome Description
user_impersonation representar sua conta de usuário

Exemplos

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

Definições

Nome Description
BlobInfo

As informações de blob geradas por essa operação.

CostDetailsDataFormat

O formato de dados do relatório

CostDetailsMetricType

O tipo do relatório detalhado. Por padrão, ActualCost é fornecido

CostDetailsOperationResults

O resultado da operação de execução prolongada para a API de detalhes de custo.

CostDetailsStatusType

O status da operação de detalhes de custo

CostDetailsTimePeriod

A data de início e término para efetuar pull de dados para o relatório detalhado de custo. A API só permite que os dados sejam extraídos por um mês ou menos e não mais de 13 meses.

ErrorDetails

Os detalhes do erro.

GenerateCostDetailsReportErrorResponse

A resposta de erro indica que o serviço não é capaz de processar a solicitação de entrada. O motivo é fornecido na mensagem de erro.

Algumas respostas de erro:

  • 400 Solicitação inválida – Conteúdo de solicitação inválido. A carga de solicitação fornecida não está em um formato json ou teve um membro inválido não aceito no conteúdo da solicitação.

  • 400 Solicitação Inválida – conteúdo de solicitação inválido: só pode ter timePeriod ou invoiceId ou billingPeriod. A API só permite que os dados sejam extraídos para timePeriod ou invoiceId ou billingPeriod. O cliente deve fornecer apenas um desses parâmetros.

  • 400 Solicitação Inválida – a data de início deve ser após . A API permite que os dados sejam extraídos somente daqui a 13 meses.

  • 400 Solicitação Inválida – o intervalo máximo de datas permitido é de 1 mês. A API só permite que os dados sejam extraídos por um mês ou menos.

  • 429 TooManyRequests – A solicitação é limitada. Tente novamente depois de aguardar o tempo especificado no cabeçalho "retry-after".

  • 503 ServiceUnavailable – O serviço está temporariamente indisponível. Repita depois de aguardar o tempo especificado no cabeçalho "Retry-After".

GenerateCostDetailsReportRequestDefinition

A definição de um relatório detalhado de custo.

BlobInfo

As informações de blob geradas por essa operação.

Nome Tipo Description
blobLink

string

Link para o blob para baixar o arquivo.

byteCount

integer

Bytes no blob.

CostDetailsDataFormat

O formato de dados do relatório

Nome Tipo Description
Csv

string

Formato de dados Csv.

CostDetailsMetricType

O tipo do relatório detalhado. Por padrão, ActualCost é fornecido

Nome Tipo Description
ActualCost

string

Dados de custo real.

AmortizedCost

string

Dados de custo amortizados.

CostDetailsOperationResults

O resultado da operação de execução prolongada para a API de detalhes de custo.

Nome Tipo Description
error

ErrorDetails

Os detalhes do erro.

id

string

A ID da operação de execução prolongada.

manifest.blobCount

integer

O número total de blobs.

manifest.blobs

BlobInfo[]

Lista de informações de blob geradas por essa operação.

manifest.byteCount

integer

O número total de bytes em todos os blobs.

manifest.compressData

boolean

São os dados em formato compactado.

manifest.dataFormat

CostDetailsDataFormat

O formato de dados do relatório

manifest.manifestVersion

string

A versão do Manifesto.

manifest.requestContext.requestBody

GenerateCostDetailsReportRequestDefinition

O corpo da carga de solicitação fornecido na chamada Detalhes do Custo

manifest.requestContext.requestScope

string

O escopo da solicitação.

name

string

O nome da operação de execução prolongada.

status

CostDetailsStatusType

O status da operação de detalhes de custo

type

string

O tipo da operação de execução longa.

validTill

string

A hora em que a URL do relatório se torna inválida/expira em UTC, por exemplo, 2020-12-08T05:55:59.4394737Z.

CostDetailsStatusType

O status da operação de detalhes de custo

Nome Tipo Description
Completed

string

A operação foi concluída.

Failed

string

Falha na operação.

NoDataFound

string

A operação é Concluída e nenhum dado de custo encontrado.

CostDetailsTimePeriod

A data de início e término para efetuar pull de dados para o relatório detalhado de custo. A API só permite que os dados sejam extraídos por um mês ou menos e não mais de 13 meses.

Nome Tipo Description
end

string

A data de término para a qual efetuar pull de dados. formato de exemplo 2020-03-15

start

string

A data de início da qual extrair dados. formato de exemplo 2020-03-15

ErrorDetails

Os detalhes do erro.

Nome Tipo Description
code

string

Código do erro.

message

string

Mensagem de erro indicando por que a operação falhou.

GenerateCostDetailsReportErrorResponse

A resposta de erro indica que o serviço não é capaz de processar a solicitação de entrada. O motivo é fornecido na mensagem de erro.

Algumas respostas de erro:

  • 400 Solicitação inválida – Conteúdo de solicitação inválido. A carga de solicitação fornecida não está em um formato json ou teve um membro inválido não aceito no conteúdo da solicitação.

  • 400 Solicitação Inválida – conteúdo de solicitação inválido: só pode ter timePeriod ou invoiceId ou billingPeriod. A API só permite que os dados sejam extraídos para timePeriod ou invoiceId ou billingPeriod. O cliente deve fornecer apenas um desses parâmetros.

  • 400 Solicitação Inválida – a data de início deve ser após . A API permite que os dados sejam extraídos somente daqui a 13 meses.

  • 400 Solicitação Inválida – o intervalo máximo de datas permitido é de 1 mês. A API só permite que os dados sejam extraídos por um mês ou menos.

  • 429 TooManyRequests – A solicitação é limitada. Tente novamente depois de aguardar o tempo especificado no cabeçalho "retry-after".

  • 503 ServiceUnavailable – O serviço está temporariamente indisponível. Repita depois de aguardar o tempo especificado no cabeçalho "Retry-After".

Nome Tipo Description
error

ErrorDetails

Os detalhes do erro.

GenerateCostDetailsReportRequestDefinition

A definição de um relatório detalhado de custo.

Nome Tipo Description
billingPeriod

string

Esse parâmetro só pode ser usado por clientes de Contrato Enterprise. Use o formato YearMonth(por exemplo, 202008). Esse parâmetro não pode ser usado junto com os parâmetros invoiceId ou timePeriod. Se um parâmetro timePeriod, invoiceId ou billingPeriod não for fornecido no corpo da solicitação, a API retornará o custo do mês atual.

invoiceId

string

Esse parâmetro só pode ser usado por clientes de Contrato de Cliente da Microsoft. Além disso, ele só pode ser usado no escopo do Perfil de Cobrança ou do Cliente. Esse parâmetro não pode ser usado junto com os parâmetros billingPeriod ou timePeriod. Se um parâmetro timePeriod, invoiceId ou billingPeriod não for fornecido no corpo da solicitação, a API retornará o custo do mês atual.

metric

CostDetailsMetricType

O tipo do relatório detalhado. Por padrão, ActualCost é fornecido

timePeriod

CostDetailsTimePeriod

O intervalo de datas específico dos detalhes de custo solicitados para o relatório. Esse parâmetro não pode ser usado junto com os parâmetros invoiceId ou billingPeriod. Se um parâmetro timePeriod, invoiceId ou billingPeriod não for fornecido no corpo da solicitação, a API retornará o custo do mês atual. A API só permite que os dados sejam extraídos por um mês ou menos e não mais de 13 meses. Se nenhum timePeriod ou billingPeriod ou invoiceId for fornecido, a API usará como padrão o período de tempo de mês aberto