com.azure.resourcemanager.costmanagement.models.Forecasts Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-resourcemanager-costmanagement Show documentation
Show all versions of azure-resourcemanager-costmanagement Show documentation
This package contains Microsoft Azure SDK for CostManagement Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. CostManagement management client provides access to CostManagement resources for Azure Enterprise Subscriptions. Package tag package-2022-10.
The newest version!
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.costmanagement.models;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
/** Resource collection API of Forecasts. */
public interface Forecasts {
/**
* Lists the forecast charges for scope defined.
*
* @param scope The scope associated with forecast operations. This includes '/subscriptions/{subscriptionId}/' for
* subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup
* scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department
* scope,
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}'
* for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for
* Management Group scope,
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for
* billingProfile scope,
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}'
* for invoiceSection scope, and
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for
* partners.
* @param parameters Parameters supplied to the CreateOrUpdate Forecast Config operation.
* @param filter May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or
* properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support
* 'ne', 'or', or 'not'.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return result of forecast along with {@link Response}.
*/
Response usageWithResponse(
String scope, ForecastDefinition parameters, String filter, Context context);
/**
* Lists the forecast charges for scope defined.
*
* @param scope The scope associated with forecast operations. This includes '/subscriptions/{subscriptionId}/' for
* subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup
* scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department
* scope,
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}'
* for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for
* Management Group scope,
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for
* billingProfile scope,
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}'
* for invoiceSection scope, and
* '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for
* partners.
* @param parameters Parameters supplied to the CreateOrUpdate Forecast Config operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return result of forecast.
*/
ForecastResult usage(String scope, ForecastDefinition parameters);
/**
* Lists the forecast charges for external cloud provider type defined.
*
* @param externalCloudProviderType The external cloud provider type associated with dimension/query operations.
* This includes 'externalSubscriptions' for linked account and 'externalBillingAccounts' for consolidated
* account.
* @param externalCloudProviderId This can be '{externalSubscriptionId}' for linked account or
* '{externalBillingAccountId}' for consolidated account used with dimension/query operations.
* @param parameters Parameters supplied to the CreateOrUpdate Forecast Config operation.
* @param filter May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or
* properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support
* 'ne', 'or', or 'not'.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return result of forecast along with {@link Response}.
*/
Response externalCloudProviderUsageWithResponse(
ExternalCloudProviderType externalCloudProviderType,
String externalCloudProviderId,
ForecastDefinition parameters,
String filter,
Context context);
/**
* Lists the forecast charges for external cloud provider type defined.
*
* @param externalCloudProviderType The external cloud provider type associated with dimension/query operations.
* This includes 'externalSubscriptions' for linked account and 'externalBillingAccounts' for consolidated
* account.
* @param externalCloudProviderId This can be '{externalSubscriptionId}' for linked account or
* '{externalBillingAccountId}' for consolidated account used with dimension/query operations.
* @param parameters Parameters supplied to the CreateOrUpdate Forecast Config operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return result of forecast.
*/
ForecastResult externalCloudProviderUsage(
ExternalCloudProviderType externalCloudProviderType,
String externalCloudProviderId,
ForecastDefinition parameters);
}