# aws-sdk-sns Amazon Simple Notification Service (Amazon SNS) is a web service that enables you to build distributed web-enabled applications. Applications can use Amazon SNS to easily push real-time notification messages to interested subscribers over multiple delivery protocols. For more information about this product see the [Amazon SNS product page](http://aws.amazon.com/sns/). For detailed information about Amazon SNS features and their associated API calls, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/). For information on the permissions you need to use this API, see [Identity and access management in Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-authentication-and-access-control.html) in the _Amazon SNS Developer Guide._ We also provide SDKs that enable you to access Amazon SNS from your preferred programming language. The SDKs contain functionality that automatically takes care of tasks such as: cryptographically signing your service requests, retrying requests, and handling error responses. For a list of available SDKs, go to [Tools for Amazon Web Services](http://aws.amazon.com/tools/). ## Getting Started > Examples are available for many services and operations, check out the > [examples folder in GitHub](https://github.com/awslabs/aws-sdk-rust/tree/main/examples). The SDK provides one crate per AWS service. You must add [Tokio](https://crates.io/crates/tokio) as a dependency within your Rust project to execute asynchronous code. To add `aws-sdk-sns` to your project, add the following to your **Cargo.toml** file: ```toml [dependencies] aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } aws-sdk-sns = "1.50.0" tokio = { version = "1", features = ["full"] } ``` Then in code, a client can be created with the following: ```rust,no_run use aws_sdk_sns as sns; #[::tokio::main] async fn main() -> Result<(), sns::Error> { let config = aws_config::load_from_env().await; let client = aws_sdk_sns::Client::new(&config); // ... make some calls with the client Ok(()) } ``` See the [client documentation](https://docs.rs/aws-sdk-sns/latest/aws_sdk_sns/client/struct.Client.html) 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](https://docs.aws.amazon.com/sdk-for-rust/latest/dg/welcome.html). Feel free to suggest additional sections for the guide by opening an issue and describing what you are trying to do. ## Getting Help * [GitHub discussions](https://github.com/awslabs/aws-sdk-rust/discussions) - For ideas, RFCs & general questions * [GitHub issues](https://github.com/awslabs/aws-sdk-rust/issues/new/choose) - For bug reports & feature requests * [Generated Docs (latest version)](https://awslabs.github.io/aws-sdk-rust/) * [Usage examples](https://github.com/awslabs/aws-sdk-rust/tree/main/examples) ## License This project is licensed under the Apache-2.0 License.