56 releases (12 stable)

1.13.0 Feb 9, 2024
1.9.0 Dec 21, 2023
1.3.0 Nov 27, 2023
0.39.0 Nov 21, 2023
0.0.0 May 7, 2021

#2328 in Network programming

Download history 96/week @ 2023-10-26 31/week @ 2023-11-02 24/week @ 2023-11-09 93/week @ 2023-11-16 187/week @ 2023-11-23 269/week @ 2023-11-30 70/week @ 2023-12-07 104/week @ 2023-12-14 175/week @ 2023-12-21 52/week @ 2023-12-28 10/week @ 2024-01-04 45/week @ 2024-01-11 62/week @ 2024-01-18 115/week @ 2024-01-25 120/week @ 2024-02-01 154/week @ 2024-02-08

455 downloads per month


55K SLoC


The Amazon WorkDocs API is designed for the following use cases:

  • File Migration: File migration applications are supported for users who want to migrate their files from an on-premises or off-premises file system or service. Users can insert files into a user directory structure, as well as allow for basic metadata changes, such as modifications to the permissions of files.
  • Security: Support security applications are supported for users who have additional security needs, such as antivirus or data loss prevention. The API actions, along with CloudTrail, allow these applications to detect when changes occur in Amazon WorkDocs. Then, the application can take the necessary actions and replace the target file. If the target file violates the policy, the application can also choose to email the user.
  • eDiscovery/Analytics: General administrative applications are supported, such as eDiscovery and analytics. These applications can choose to mimic or record the actions in an Amazon WorkDocs site, along with CloudTrail, to replicate data for eDiscovery, backup, or analytical applications.

All Amazon WorkDocs API actions are Amazon authenticated and certificate-signed. They not only require the use of the Amazon Web Services SDK, but also allow for the exclusive use of IAM users and roles to help facilitate access, trust, and permission policies. By creating a role and allowing an IAM user to access the Amazon WorkDocs site, the IAM user gains full administrative visibility into the entire Amazon WorkDocs site (or as set in the IAM policy). This includes, but is not limited to, the ability to modify file permissions and upload any file to any user. This allows developers to perform the three use cases above, as well as give users the ability to grant access on a selective basis using the IAM model.

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

aws-config = { version = "1.1.5", features = ["behavior-version-latest"] }
aws-sdk-workdocs = "1.13.0"
tokio = { version = "1", features = ["full"] }

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

use aws_sdk_workdocs as workdocs;

async fn main() -> Result<(), workdocs::Error> {
    let config = aws_config::load_from_env().await;
    let client = aws_sdk_workdocs::Client::new(&config);

    // ... make some calls with the client


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


This project is licensed under the Apache-2.0 License.


~258K SLoC