/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the budgets-2016-10-20.normal.json service model.
*/
using System;
using System.Runtime.ExceptionServices;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Net;
using Amazon.Budgets.Model;
using Amazon.Budgets.Model.Internal.MarshallTransformations;
using Amazon.Budgets.Internal;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Auth;
using Amazon.Runtime.Internal.Transform;
namespace Amazon.Budgets
{
///
/// Implementation for accessing Budgets
///
/// Use the Amazon Web Services Budgets API to plan your service usage, service costs,
/// and instance reservations. This API reference provides descriptions, syntax, and usage
/// examples for each of the actions and data types for the Amazon Web Services Budgets
/// feature.
///
///
///
/// Budgets provide you with a way to see the following information:
///
/// -
///
/// How close your plan is to your budgeted amount or to the free tier limits
///
///
-
///
/// Your usage-to-date, including how much you've used of your Reserved Instances (RIs)
///
///
-
///
/// Your current estimated charges from Amazon Web Services, and how much your predicted
/// usage will accrue in charges by the end of the month
///
///
-
///
/// How much of your budget has been used
///
///
///
/// Amazon Web Services updates your budget status several times a day. Budgets track
/// your unblended costs, subscriptions, refunds, and RIs. You can create the following
/// types of budgets:
///
/// -
///
/// Cost budgets - Plan how much you want to spend on a service.
///
///
-
///
/// Usage budgets - Plan how much you want to use one or more services.
///
///
-
///
/// RI utilization budgets - Define a utilization threshold, and receive alerts
/// when your RI usage falls below that threshold. This lets you see if your RIs are unused
/// or under-utilized.
///
///
-
///
/// RI coverage budgets - Define a coverage threshold, and receive alerts when
/// the number of your instance hours that are covered by RIs fall below that threshold.
/// This lets you see how much of your instance usage is covered by a reservation.
///
///
///
/// Service Endpoint
///
///
///
/// The Amazon Web Services Budgets API provides the following endpoint:
///
/// -
///
/// https://budgets.amazonaws.com
///
///
///
/// For information about costs that are associated with the Amazon Web Services Budgets
/// API, see Amazon Web
/// Services Cost Management Pricing.
///
///
public partial class AmazonBudgetsClient : AmazonServiceClient, IAmazonBudgets
{
private static IServiceMetadata serviceMetadata = new AmazonBudgetsMetadata();
#region Constructors
///
/// Constructs AmazonBudgetsClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
public AmazonBudgetsClient()
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonBudgetsConfig()) { }
///
/// Constructs AmazonBudgetsClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The region to connect.
public AmazonBudgetsClient(RegionEndpoint region)
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonBudgetsConfig{RegionEndpoint = region}) { }
///
/// Constructs AmazonBudgetsClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The AmazonBudgetsClient Configuration Object
public AmazonBudgetsClient(AmazonBudgetsConfig config)
: base(FallbackCredentialsFactory.GetCredentials(config), config){}
///
/// Constructs AmazonBudgetsClient with AWS Credentials
///
/// AWS Credentials
public AmazonBudgetsClient(AWSCredentials credentials)
: this(credentials, new AmazonBudgetsConfig())
{
}
///
/// Constructs AmazonBudgetsClient with AWS Credentials
///
/// AWS Credentials
/// The region to connect.
public AmazonBudgetsClient(AWSCredentials credentials, RegionEndpoint region)
: this(credentials, new AmazonBudgetsConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonBudgetsClient with AWS Credentials and an
/// AmazonBudgetsClient Configuration object.
///
/// AWS Credentials
/// The AmazonBudgetsClient Configuration Object
public AmazonBudgetsClient(AWSCredentials credentials, AmazonBudgetsConfig clientConfig)
: base(credentials, clientConfig)
{
}
///
/// Constructs AmazonBudgetsClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
public AmazonBudgetsClient(string awsAccessKeyId, string awsSecretAccessKey)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonBudgetsConfig())
{
}
///
/// Constructs AmazonBudgetsClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The region to connect.
public AmazonBudgetsClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonBudgetsConfig() {RegionEndpoint=region})
{
}
///
/// Constructs AmazonBudgetsClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonBudgetsClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The AmazonBudgetsClient Configuration Object
public AmazonBudgetsClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonBudgetsConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, clientConfig)
{
}
///
/// Constructs AmazonBudgetsClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
public AmazonBudgetsClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonBudgetsConfig())
{
}
///
/// Constructs AmazonBudgetsClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The region to connect.
public AmazonBudgetsClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonBudgetsConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonBudgetsClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonBudgetsClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The AmazonBudgetsClient Configuration Object
public AmazonBudgetsClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonBudgetsConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig)
{
}
#endregion
#if AWS_ASYNC_ENUMERABLES_API
private IBudgetsPaginatorFactory _paginators;
///
/// Paginators for the service
///
public IBudgetsPaginatorFactory Paginators
{
get
{
if (this._paginators == null)
{
this._paginators = new BudgetsPaginatorFactory(this);
}
return this._paginators;
}
}
#endif
#region Overrides
///
/// Creates the signer for the service.
///
protected override AbstractAWSSigner CreateSigner()
{
return new AWS4Signer();
}
///
/// Customizes the runtime pipeline.
///
/// Runtime pipeline for the current client.
protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline)
{
pipeline.RemoveHandler();
pipeline.AddHandlerAfter(new AmazonBudgetsEndpointResolver());
}
///
/// Capture metadata for the service.
///
protected override IServiceMetadata ServiceMetadata
{
get
{
return serviceMetadata;
}
}
#endregion
#region Dispose
///
/// Disposes the service client.
///
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
}
#endregion
#region CreateBudget
internal virtual CreateBudgetResponse CreateBudget(CreateBudgetRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateBudgetResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a budget and, if included, notifications and subscribers.
///
///
///
/// Only one of BudgetLimit
or PlannedBudgetLimits
can be present
/// in the syntax at one time. Use the syntax that matches your case. The Request Syntax
/// section shows the BudgetLimit
syntax. For PlannedBudgetLimits
,
/// see the Examples
/// section.
///
///
///
/// Container for the necessary parameters to execute the CreateBudget service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateBudget service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// You've exceeded the notification or subscriber limit.
///
///
/// The budget name already exists. Budget names must be unique within an account.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for CreateBudget Operation
public virtual Task CreateBudgetAsync(CreateBudgetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateBudgetResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateBudgetAction
internal virtual CreateBudgetActionResponse CreateBudgetAction(CreateBudgetActionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateBudgetActionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a budget action.
///
/// Container for the necessary parameters to execute the CreateBudgetAction service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateBudgetAction service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// You've exceeded the notification or subscriber limit.
///
///
/// The budget name already exists. Budget names must be unique within an account.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for CreateBudgetAction Operation
public virtual Task CreateBudgetActionAsync(CreateBudgetActionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateBudgetActionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateNotification
internal virtual CreateNotificationResponse CreateNotification(CreateNotificationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateNotificationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a notification. You must create the budget before you create the associated
/// notification.
///
/// Container for the necessary parameters to execute the CreateNotification service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateNotification service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// You've exceeded the notification or subscriber limit.
///
///
/// The budget name already exists. Budget names must be unique within an account.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for CreateNotification Operation
public virtual Task CreateNotificationAsync(CreateNotificationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateNotificationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateSubscriber
internal virtual CreateSubscriberResponse CreateSubscriber(CreateSubscriberRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateSubscriberRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateSubscriberResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a subscriber. You must create the associated budget and notification before
/// you create the subscriber.
///
/// Container for the necessary parameters to execute the CreateSubscriber service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateSubscriber service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// You've exceeded the notification or subscriber limit.
///
///
/// The budget name already exists. Budget names must be unique within an account.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for CreateSubscriber Operation
public virtual Task CreateSubscriberAsync(CreateSubscriberRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateSubscriberRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateSubscriberResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteBudget
internal virtual DeleteBudgetResponse DeleteBudget(DeleteBudgetRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteBudgetResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a budget. You can delete your budget at any time.
///
///
///
/// Deleting a budget also deletes the notifications and subscribers that are associated
/// with that budget.
///
///
///
/// Container for the necessary parameters to execute the DeleteBudget service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteBudget service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DeleteBudget Operation
public virtual Task DeleteBudgetAsync(DeleteBudgetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteBudgetResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteBudgetAction
internal virtual DeleteBudgetActionResponse DeleteBudgetAction(DeleteBudgetActionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteBudgetActionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a budget action.
///
/// Container for the necessary parameters to execute the DeleteBudgetAction service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteBudgetAction service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The request was received and recognized by the server, but the server rejected that
/// particular method for the requested resource.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DeleteBudgetAction Operation
public virtual Task DeleteBudgetActionAsync(DeleteBudgetActionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteBudgetActionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteNotification
internal virtual DeleteNotificationResponse DeleteNotification(DeleteNotificationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteNotificationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a notification.
///
///
///
/// Deleting a notification also deletes the subscribers that are associated with the
/// notification.
///
///
///
/// Container for the necessary parameters to execute the DeleteNotification service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteNotification service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DeleteNotification Operation
public virtual Task DeleteNotificationAsync(DeleteNotificationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteNotificationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteSubscriber
internal virtual DeleteSubscriberResponse DeleteSubscriber(DeleteSubscriberRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteSubscriberRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteSubscriberResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a subscriber.
///
///
///
/// Deleting the last subscriber to a notification also deletes the notification.
///
///
///
/// Container for the necessary parameters to execute the DeleteSubscriber service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteSubscriber service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DeleteSubscriber Operation
public virtual Task DeleteSubscriberAsync(DeleteSubscriberRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteSubscriberRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteSubscriberResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudget
internal virtual DescribeBudgetResponse DescribeBudget(DescribeBudgetRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes a budget.
///
///
///
/// The Request Syntax section shows the BudgetLimit
syntax. For PlannedBudgetLimits
,
/// see the Examples
/// section.
///
///
///
/// Container for the necessary parameters to execute the DescribeBudget service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudget service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudget Operation
public virtual Task DescribeBudgetAsync(DescribeBudgetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudgetAction
internal virtual DescribeBudgetActionResponse DescribeBudgetAction(DescribeBudgetActionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes a budget action detail.
///
/// Container for the necessary parameters to execute the DescribeBudgetAction service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudgetAction service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudgetAction Operation
public virtual Task DescribeBudgetActionAsync(DescribeBudgetActionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudgetActionHistories
internal virtual DescribeBudgetActionHistoriesResponse DescribeBudgetActionHistories(DescribeBudgetActionHistoriesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionHistoriesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionHistoriesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes a budget action history detail.
///
/// Container for the necessary parameters to execute the DescribeBudgetActionHistories service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudgetActionHistories service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudgetActionHistories Operation
public virtual Task DescribeBudgetActionHistoriesAsync(DescribeBudgetActionHistoriesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionHistoriesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionHistoriesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudgetActionsForAccount
internal virtual DescribeBudgetActionsForAccountResponse DescribeBudgetActionsForAccount(DescribeBudgetActionsForAccountRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionsForAccountRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionsForAccountResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes all of the budget actions for an account.
///
/// Container for the necessary parameters to execute the DescribeBudgetActionsForAccount service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudgetActionsForAccount service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudgetActionsForAccount Operation
public virtual Task DescribeBudgetActionsForAccountAsync(DescribeBudgetActionsForAccountRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionsForAccountRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionsForAccountResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudgetActionsForBudget
internal virtual DescribeBudgetActionsForBudgetResponse DescribeBudgetActionsForBudget(DescribeBudgetActionsForBudgetRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionsForBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionsForBudgetResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes all of the budget actions for a budget.
///
/// Container for the necessary parameters to execute the DescribeBudgetActionsForBudget service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudgetActionsForBudget service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudgetActionsForBudget Operation
public virtual Task DescribeBudgetActionsForBudgetAsync(DescribeBudgetActionsForBudgetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetActionsForBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetActionsForBudgetResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudgetNotificationsForAccount
internal virtual DescribeBudgetNotificationsForAccountResponse DescribeBudgetNotificationsForAccount(DescribeBudgetNotificationsForAccountRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetNotificationsForAccountRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetNotificationsForAccountResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the budget names and notifications that are associated with an account.
///
/// Container for the necessary parameters to execute the DescribeBudgetNotificationsForAccount service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudgetNotificationsForAccount service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// The pagination token expired.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudgetNotificationsForAccount Operation
public virtual Task DescribeBudgetNotificationsForAccountAsync(DescribeBudgetNotificationsForAccountRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetNotificationsForAccountRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetNotificationsForAccountResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudgetPerformanceHistory
internal virtual DescribeBudgetPerformanceHistoryResponse DescribeBudgetPerformanceHistory(DescribeBudgetPerformanceHistoryRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetPerformanceHistoryRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetPerformanceHistoryResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes the history for DAILY
, MONTHLY
, and QUARTERLY
/// budgets. Budget history isn't available for ANNUAL
budgets.
///
/// Container for the necessary parameters to execute the DescribeBudgetPerformanceHistory service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudgetPerformanceHistory service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// The pagination token expired.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudgetPerformanceHistory Operation
public virtual Task DescribeBudgetPerformanceHistoryAsync(DescribeBudgetPerformanceHistoryRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetPerformanceHistoryRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetPerformanceHistoryResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeBudgets
internal virtual DescribeBudgetsResponse DescribeBudgets(DescribeBudgetsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetsRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the budgets that are associated with an account.
///
///
///
/// The Request Syntax section shows the BudgetLimit
syntax. For PlannedBudgetLimits
,
/// see the Examples
/// section.
///
///
///
/// Container for the necessary parameters to execute the DescribeBudgets service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeBudgets service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// The pagination token expired.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeBudgets Operation
public virtual Task DescribeBudgetsAsync(DescribeBudgetsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeBudgetsRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeBudgetsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeNotificationsForBudget
internal virtual DescribeNotificationsForBudgetResponse DescribeNotificationsForBudget(DescribeNotificationsForBudgetRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeNotificationsForBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeNotificationsForBudgetResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the notifications that are associated with a budget.
///
/// Container for the necessary parameters to execute the DescribeNotificationsForBudget service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeNotificationsForBudget service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// The pagination token expired.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeNotificationsForBudget Operation
public virtual Task DescribeNotificationsForBudgetAsync(DescribeNotificationsForBudgetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeNotificationsForBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeNotificationsForBudgetResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeSubscribersForNotification
internal virtual DescribeSubscribersForNotificationResponse DescribeSubscribersForNotification(DescribeSubscribersForNotificationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeSubscribersForNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeSubscribersForNotificationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the subscribers that are associated with a notification.
///
/// Container for the necessary parameters to execute the DescribeSubscribersForNotification service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeSubscribersForNotification service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// The pagination token expired.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// The pagination token is invalid.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for DescribeSubscribersForNotification Operation
public virtual Task DescribeSubscribersForNotificationAsync(DescribeSubscribersForNotificationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeSubscribersForNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeSubscribersForNotificationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ExecuteBudgetAction
internal virtual ExecuteBudgetActionResponse ExecuteBudgetAction(ExecuteBudgetActionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ExecuteBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = ExecuteBudgetActionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Executes a budget action.
///
/// Container for the necessary parameters to execute the ExecuteBudgetAction service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ExecuteBudgetAction service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The request was received and recognized by the server, but the server rejected that
/// particular method for the requested resource.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for ExecuteBudgetAction Operation
public virtual Task ExecuteBudgetActionAsync(ExecuteBudgetActionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ExecuteBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = ExecuteBudgetActionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateBudget
internal virtual UpdateBudgetResponse UpdateBudget(UpdateBudgetRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateBudgetResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates a budget. You can change every part of a budget except for the budgetName
/// and the calculatedSpend
. When you modify a budget, the calculatedSpend
/// drops to zero until Amazon Web Services has new usage data to use for forecasting.
///
///
///
/// Only one of BudgetLimit
or PlannedBudgetLimits
can be present
/// in the syntax at one time. Use the syntax that matches your case. The Request Syntax
/// section shows the BudgetLimit
syntax. For PlannedBudgetLimits
,
/// see the Examples
/// section.
///
///
///
/// Container for the necessary parameters to execute the UpdateBudget service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateBudget service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for UpdateBudget Operation
public virtual Task UpdateBudgetAsync(UpdateBudgetRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateBudgetRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateBudgetResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateBudgetAction
internal virtual UpdateBudgetActionResponse UpdateBudgetAction(UpdateBudgetActionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateBudgetActionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates a budget action.
///
/// Container for the necessary parameters to execute the UpdateBudgetAction service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateBudgetAction service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The request was received and recognized by the server, but the server rejected that
/// particular method for the requested resource.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for UpdateBudgetAction Operation
public virtual Task UpdateBudgetActionAsync(UpdateBudgetActionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateBudgetActionRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateBudgetActionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateNotification
internal virtual UpdateNotificationResponse UpdateNotification(UpdateNotificationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateNotificationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates a notification.
///
/// Container for the necessary parameters to execute the UpdateNotification service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateNotification service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// The budget name already exists. Budget names must be unique within an account.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for UpdateNotification Operation
public virtual Task UpdateNotificationAsync(UpdateNotificationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateNotificationRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateNotificationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateSubscriber
internal virtual UpdateSubscriberResponse UpdateSubscriber(UpdateSubscriberRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateSubscriberRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateSubscriberResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates a subscriber.
///
/// Container for the necessary parameters to execute the UpdateSubscriber service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateSubscriber service method, as returned by Budgets.
///
/// You are not authorized to use this operation with the given parameters.
///
///
/// The budget name already exists. Budget names must be unique within an account.
///
///
/// An error on the server occurred during the processing of your request. Try again later.
///
///
/// An error on the client occurred. Typically, the cause is an invalid input value.
///
///
/// We can’t locate the resource that you specified.
///
///
/// The number of API requests has exceeded the maximum allowed API request throttling
/// limit for the account.
///
/// REST API Reference for UpdateSubscriber Operation
public virtual Task UpdateSubscriberAsync(UpdateSubscriberRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateSubscriberRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateSubscriberResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
}
}