Class GenerateCostDetailsReportRequestDefinition

java.lang.Object
com.azure.resourcemanager.costmanagement.models.GenerateCostDetailsReportRequestDefinition

public final class GenerateCostDetailsReportRequestDefinition extends Object
The definition of a cost detailed report.
  • Constructor Details

    • GenerateCostDetailsReportRequestDefinition

      public GenerateCostDetailsReportRequestDefinition()
      Creates an instance of GenerateCostDetailsReportRequestDefinition class.
  • Method Details

    • metric

      public CostDetailsMetricType metric()
      Get the metric property: The type of the detailed report. By default ActualCost is provided.
      Returns:
      the metric value.
    • withMetric

      Set the metric property: The type of the detailed report. By default ActualCost is provided.
      Parameters:
      metric - the metric value to set.
      Returns:
      the GenerateCostDetailsReportRequestDefinition object itself.
    • timePeriod

      public CostDetailsTimePeriod timePeriod()
      Get the timePeriod property: The specific date range of cost details requested for the report. This parameter cannot be used alongside either the invoiceId or billingPeriod parameters. If a timePeriod, invoiceId or billingPeriod parameter is not provided in the request body the API will return the current month's cost. API only allows data to be pulled for 1 month or less and no older than 13 months. If no timePeriod or billingPeriod or invoiceId is provided the API defaults to the open month time period.
      Returns:
      the timePeriod value.
    • withTimePeriod

      Set the timePeriod property: The specific date range of cost details requested for the report. This parameter cannot be used alongside either the invoiceId or billingPeriod parameters. If a timePeriod, invoiceId or billingPeriod parameter is not provided in the request body the API will return the current month's cost. API only allows data to be pulled for 1 month or less and no older than 13 months. If no timePeriod or billingPeriod or invoiceId is provided the API defaults to the open month time period.
      Parameters:
      timePeriod - the timePeriod value to set.
      Returns:
      the GenerateCostDetailsReportRequestDefinition object itself.
    • billingPeriod

      public String billingPeriod()
      Get the billingPeriod property: This parameter can be used only by Enterprise Agreement customers. Use the YearMonth(e.g. 202008) format. This parameter cannot be used alongside either the invoiceId or timePeriod parameters. If a timePeriod, invoiceId or billingPeriod parameter is not provided in the request body the API will return the current month's cost.
      Returns:
      the billingPeriod value.
    • withBillingPeriod

      public GenerateCostDetailsReportRequestDefinition withBillingPeriod(String billingPeriod)
      Set the billingPeriod property: This parameter can be used only by Enterprise Agreement customers. Use the YearMonth(e.g. 202008) format. This parameter cannot be used alongside either the invoiceId or timePeriod parameters. If a timePeriod, invoiceId or billingPeriod parameter is not provided in the request body the API will return the current month's cost.
      Parameters:
      billingPeriod - the billingPeriod value to set.
      Returns:
      the GenerateCostDetailsReportRequestDefinition object itself.
    • invoiceId

      public String invoiceId()
      Get the invoiceId property: This parameter can only be used by Microsoft Customer Agreement customers. Additionally, it can only be used at the Billing Profile or Customer scope. This parameter cannot be used alongside either the billingPeriod or timePeriod parameters. If a timePeriod, invoiceId or billingPeriod parameter is not provided in the request body the API will return the current month's cost.
      Returns:
      the invoiceId value.
    • withInvoiceId

      public GenerateCostDetailsReportRequestDefinition withInvoiceId(String invoiceId)
      Set the invoiceId property: This parameter can only be used by Microsoft Customer Agreement customers. Additionally, it can only be used at the Billing Profile or Customer scope. This parameter cannot be used alongside either the billingPeriod or timePeriod parameters. If a timePeriod, invoiceId or billingPeriod parameter is not provided in the request body the API will return the current month's cost.
      Parameters:
      invoiceId - the invoiceId value to set.
      Returns:
      the GenerateCostDetailsReportRequestDefinition object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.