63 releases (19 stable)

new 1.20.0 Mar 26, 2024
1.16.0 Feb 27, 2024
1.9.0 Dec 21, 2023
1.3.0 Nov 27, 2023
0.0.0 May 8, 2021

#2193 in Network programming

Download history 37/week @ 2023-12-07 59/week @ 2023-12-14 43/week @ 2023-12-21 18/week @ 2023-12-28 1/week @ 2024-01-04 44/week @ 2024-01-11 20/week @ 2024-01-18 23/week @ 2024-01-25 4/week @ 2024-02-01 38/week @ 2024-02-08 175/week @ 2024-02-15 274/week @ 2024-02-22 135/week @ 2024-02-29 110/week @ 2024-03-07 234/week @ 2024-03-14 263/week @ 2024-03-21

797 downloads per month
Used in 13 crates (3 directly)

Apache-2.0

610KB
9K SLoC

aws-sdk-pricing

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.

For more information, see Using the Amazon Web Services Price List API in the Billing User Guide.

Getting Started

Examples are available for many services and operations, check out the examples folder in GitHub.

The SDK provides one crate per AWS service. You must add Tokio as a dependency within your Rust project to execute asynchronous code. To add aws-sdk-pricing to your project, add the following to your Cargo.toml file:

[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
aws-sdk-pricing = "1.20.0"
tokio = { version = "1", features = ["full"] }

Then in code, a client can be created with the following:

use aws_sdk_pricing as pricing;

#[::tokio::main]
async fn main() -> Result<(), pricing::Error> {
    let config = aws_config::load_from_env().await;
    let client = aws_sdk_pricing::Client::new(&config);

    // ... make some calls with the client

    Ok(())
}

See the client documentation for information on what calls can be made, and the inputs and outputs for each of those calls.

Using the SDK

Until the SDK is released, we will be adding information about using the SDK to the Developer Guide. Feel free to suggest additional sections for the guide by opening an issue and describing what you are trying to do.

Getting Help

License

This project is licensed under the Apache-2.0 License.

Dependencies

~7–20MB
~258K SLoC