/* * Copyright 2018-2023 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. */ package com.amazonaws.services.pricing; import javax.annotation.Generated; import com.amazonaws.services.pricing.model.*; /** * Interface for accessing AWS Pricing asynchronously. Each asynchronous method will return a Java Future object * representing the asynchronous operation; overloads which accept an {@code AsyncHandler} can be used to receive * notification when an asynchronous operation completes. *
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.pricing.AbstractAWSPricingAsync} instead. *
**
* The Amazon Web Services Price List API is a centralized and convenient way to programmatically query Amazon Web
* Services for services, products, and pricing information. The Amazon Web Services Price List uses standardized
* product attributes such as Location
, Storage Class
, and Operating System
, and
* provides prices at the SKU level. You can use the Amazon Web Services Price List to do the following:
*
* Build cost control and scenario planning tools *
** Reconcile billing data *
** Forecast future spend for budgeting purposes *
** Provide cost benefit analysis that compare your internal workloads with Amazon Web Services *
*
* Use GetServices
without a service code to retrieve the service codes for all Amazon Web Services, then
* GetServices
with a service code to retrieve the attribute names for that service. After you have the
* service code and attribute names, you can use GetAttributeValues
to see what values are available for an
* attribute. With the service code and an attribute name and value, you can use GetProducts
to find
* specific products that you're interested in, such as an AmazonEC2
instance, with a
* Provisioned IOPS
volumeType
.
*
* You can use the following endpoints for the Amazon Web Services Price List API: *
** https://api.pricing.us-east-1.amazonaws.com *
** https://api.pricing.ap-south-1.amazonaws.com *
*
* Returns the metadata for one service or a list of the metadata for all services. Use this without a service code
* to get the service codes for all services. Use it with a service code, such as AmazonEC2
, to get
* information specific to that service, such as the attribute names available for that service. For example, some
* of the attribute names available for EC2 are volumeType
, maxIopsVolume
,
* operation
, locationType
, and instanceCapacity10xlarge
.
*
* Returns the metadata for one service or a list of the metadata for all services. Use this without a service code
* to get the service codes for all services. Use it with a service code, such as AmazonEC2
, to get
* information specific to that service, such as the attribute names available for that service. For example, some
* of the attribute names available for EC2 are volumeType
, maxIopsVolume
,
* operation
, locationType
, and instanceCapacity10xlarge
.
*
* Returns a list of attribute values. Attributes are similar to the details in a Price List API offer file. For a * list of available attributes, see Offer File * Definitions in the Billing and Cost * Management User Guide. *
* * @param getAttributeValuesRequest * @return A Java Future containing the result of the GetAttributeValues operation returned by the service. * @sample AWSPricingAsync.GetAttributeValues * @see AWS API * Documentation */ java.util.concurrent.Future* Returns a list of attribute values. Attributes are similar to the details in a Price List API offer file. For a * list of available attributes, see Offer File * Definitions in the Billing and Cost * Management User Guide. *
* * @param getAttributeValuesRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetAttributeValues operation returned by the service. * @sample AWSPricingAsyncHandler.GetAttributeValues * @see AWS API * Documentation */ java.util.concurrent.Future* This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List * API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10). *
*
* This returns the URL that you can retrieve your Price List file from. This URL is based on the
* PriceListArn
and FileFormat
that you retrieve from the
* ListPriceLists
response.
*
* This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List * API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10). *
*
* This returns the URL that you can retrieve your Price List file from. This URL is based on the
* PriceListArn
and FileFormat
that you retrieve from the
* ListPriceLists
response.
*
* Returns a list of all products that match the filter criteria. *
* * @param getProductsRequest * @return A Java Future containing the result of the GetProducts operation returned by the service. * @sample AWSPricingAsync.GetProducts * @see AWS API * Documentation */ java.util.concurrent.Future* Returns a list of all products that match the filter criteria. *
* * @param getProductsRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetProducts operation returned by the service. * @sample AWSPricingAsyncHandler.GetProducts * @see AWS API * Documentation */ java.util.concurrent.Future* This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List * API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10). *
*
* This returns a list of Price List references that the requester if authorized to view, given a
* ServiceCode
, CurrencyCode
, and an EffectiveDate
. Use without a
* RegionCode
filter to list Price List references from all available Amazon Web Services Regions. Use
* with a RegionCode
filter to get the Price List reference that's specific to a specific Amazon Web
* Services Region. You can use the PriceListArn
from the response to get your preferred Price List
* files through the
* GetPriceListFileUrl
API.
*
* This feature is in preview release and is subject to change. Your use of Amazon Web Services Price List * API is subject to the Beta Service Participation terms of the Amazon Web Services Service Terms (Section 1.10). *
*
* This returns a list of Price List references that the requester if authorized to view, given a
* ServiceCode
, CurrencyCode
, and an EffectiveDate
. Use without a
* RegionCode
filter to list Price List references from all available Amazon Web Services Regions. Use
* with a RegionCode
filter to get the Price List reference that's specific to a specific Amazon Web
* Services Region. You can use the PriceListArn
from the response to get your preferred Price List
* files through the
* GetPriceListFileUrl
API.
*