61 releases (17 stable)

new 1.18.0 Mar 26, 2024
1.15.0 Feb 27, 2024
1.9.0 Dec 21, 2023
1.3.0 Nov 27, 2023
0.0.0 May 7, 2021

#2397 in Network programming

Download history 17/week @ 2023-12-04 16/week @ 2023-12-11 12/week @ 2023-12-18 6/week @ 2024-01-08 15/week @ 2024-01-22 200/week @ 2024-02-19 164/week @ 2024-02-26 17/week @ 2024-03-04 239/week @ 2024-03-11 71/week @ 2024-03-18

495 downloads per month

Apache-2.0

1.5MB
20K SLoC

aws-sdk-cognitosync

Amazon Cognito Sync provides an AWS service and client library that enable cross-device syncing of application-related user data. High-level client libraries are available for both iOS and Android. You can use these libraries to persist data locally so that it's available even if the device is offline. Developer credentials don't need to be stored on the mobile device to access the service. You can use Amazon Cognito to obtain a normalized user ID and credentials. User data is persisted in a dataset that can store up to 1 MB of key-value pairs, and you can have up to 20 datasets per user identity.

With Amazon Cognito Sync, the data stored for each identity is accessible only to credentials assigned to that identity. In order to use the Cognito Sync service, you need to make API calls using credentials retrieved with Amazon Cognito Identity service.

If you want to use Cognito Sync in an Android or iOS application, you will probably want to make API calls via the AWS Mobile SDK. To learn more, see the Developer Guide for Android and the Developer Guide for iOS.

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-cognitosync to your project, add the following to your Cargo.toml file:

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

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

use aws_sdk_cognitosync as cognitosync;

#[::tokio::main]
async fn main() -> Result<(), cognitosync::Error> {
    let config = aws_config::load_from_env().await;
    let client = aws_sdk_cognitosync::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
~257K SLoC