Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
A

aws-sdk-rust

> 编程语言
Open source

AWS SDK for the Rust Programming Language

3.3K stars0 likes0 views
WebsiteGitHub

About

AWS SDK for the Rust Programming Language

The AWS SDK for Rust

This repo contains the AWS SDK for Rust and its public roadmap.

The SDK is code generated from Smithy models that represent each AWS service. The code used to generate the SDK can be found in smithy-rs.

Getting Started with the SDK

Examples are available for many services and operations, check out the Rust examples in the aws-doc-sdk-examples repository.

For a step-by-step guide including several advanced use cases, check out the Developer Guide.

The SDK provides one crate per AWS service. You must add Tokio as a dependency within your Rust project to execute asynchronous code.

  1. Create a new Rust project: cargo new sdk-example

  2. Add dependencies to DynamoDB and Tokio to your Cargo.toml file:

    [dependencies]
    aws-config = { version= "1.12.0", features = ["behavior-version-latest"] }
    aws-sdk-dynamodb = "1.126.0"
    tokio = { version = "1", features = ["full"] }
    
  3. Provide your AWS credentials with the default credential provider chain, which currently looks in:

    • Environment variables: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and AWS_REGION
    • The default credentials files located in ~/.aws/config and ~/.aws/credentials (location can vary per platform)
    • Web Identity Token credentials from the environment or container (including EKS)
    • ECS Container Credentials (IAM roles for tasks)
    • EC2 Instance Metadata Service (IAM Roles attached to instance)
  4. Make a request using DynamoDB

use aws_sdk_dynamodb::{Client, Error};

#[tokio::main]
async fn main() -> Result<(), Error> {
    let shared_config = aws_config::load_from_env().await;
    let client = Client::new(&shared_config);
    let req = client.list_tables().limit(10);
    let resp = req.send().await?;
    println!("Current DynamoDB tables: {:?}", resp.table_names);
    Ok(())
}

Prerequisites

In order to use the SDK, you must already have Rust and Cargo installed. If you don't, these instructions describe how to install Rust and Cargo.

Using the SDK

Detailed usage instructions are available in the Developer Guide. Suggestions for additional sections or improvements for the guide are welcome. Please open an issue describing what you are trying to do.

Getting Help

  • Developer Guide
  • GitHub discussions - For ideas, RFCs & general questions
  • GitHub issues – For bug reports & feature requests
  • Generated Docs (latest version)
  • Usage examples

Feedback and Contributing

Feedback

The SDK uses GitHub Issues to track feature requests and issues with the SDK. In addition, we use GitHub Projects to provide users with a high level view of our roadmap and the features we're actively working on.

You can provide feedback or report a bug by submitting a GitHub issue. This is the preferred mechanism to give feedback so that other users can engage in the conversation, +1 issues, etc. Issues you open will be evaluated for our roadmap.

Contributing

If you are interested in contributing to the SDK, please take a look at CONTRIBUTING

Supported Rust Versions (MSRV)

The SDK currently requires a minimum of Rust 1.94.1, and is not guaranteed to build on compiler versions earlier than that. We keep the minimum compiler version two releases behind the latest stable release where possible (so if the latest stable were 1.55, we would support 1.53). Increases in minimum required Rust version will be called out in the Release Notes for new releases of the SDK.

Additional Resources

  • Design docs - Design documentation for the SDK lives in the design folder of smithy-rs.
  • Runtime / Handwritten code: The Rust Runtime code that underpins the SDK can be accessed here and here. This code is copied into this repo as part of code generation.
  • Code Examples
  • API reference documentation (rustdoc)

Security

See CONTRIBUTING for more information.

License

This project is licensed under the Apache-2.0 License.

Issues· 153 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Rustawsrust

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言