1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
#![allow(deprecated)]
#![allow(clippy::module_inception)]
#![allow(clippy::upper_case_acronyms)]
#![allow(clippy::large_enum_variant)]
#![allow(clippy::wrong_self_convention)]
#![allow(clippy::should_implement_trait)]
#![allow(clippy::blacklisted_name)]
#![allow(clippy::vec_init_then_push)]
#![allow(clippy::type_complexity)]
#![allow(clippy::needless_return)]
#![allow(rustdoc::bare_urls)]
#![warn(missing_docs)]
//! <p>The WorkDocs API is designed for the following use cases:</p>
//! <ul>
//! <li>
//! <p>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.</p>
//! </li>
//! <li>
//! <p>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 AWS 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.</p>
//! </li>
//! <li>
//! <p>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 AWS CloudTrail, to
//! replicate data for eDiscovery, backup, or analytical applications.</p>
//! </li>
//! </ul>
//! <p>All Amazon WorkDocs API actions are Amazon authenticated and certificate-signed.
//! They not only require the use of the AWS 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.</p>
//! <note>
//! <p>The pricing for Amazon WorkDocs APIs varies depending on the API call type for these actions:</p>
//! <ul>
//! <li>
//! <p>
//! <code>READ  (Get*)</code>
//! </p>
//! </li>
//! <li>
//! <p>
//! <code>WRITE (Activate*, Add*, Create*, Deactivate*, Initiate*, Update*)</code>
//! </p>
//! </li>
//! <li>
//! <p>
//! <code>LIST (Describe*)</code>
//! </p>
//! </li>
//! <li>
//! <p>
//! <code>DELETE*, CANCEL</code>
//! </p>
//! </li>
//! </ul>
//! <p>For information about Amazon WorkDocs API pricing, see <a href="https://aws.amazon.com/workdocs/pricing/">Amazon WorkDocs Pricing</a>.</p>
//! </note>
//!
//! # Crate Organization
//!
//! The entry point for most customers will be [`Client`]. [`Client`] exposes one method for each API offered
//! by the service.
//!
//! Some APIs require complex or nested arguments. These exist in [`model`](crate::model).
//!
//! Lastly, errors that can be returned by the service are contained within [`error`]. [`Error`] defines a meta
//! error encompassing all possible errors that can be returned by the service.
//!
//! The other modules within this crate are not required for normal usage.

// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use error_meta::Error;

#[doc(inline)]
pub use config::Config;

/// Client and fluent builders for calling the service.
pub mod client;

/// Configuration for the service.
pub mod config;

/// Endpoint resolution functionality
pub mod endpoint;

/// All error types that operations can return. Documentation on these types is copied from the model.
pub mod error;

mod error_meta;

/// Input structures for operations. Documentation on these types is copied from the model.
pub mod input;

/// Data structures used by operation inputs/outputs. Documentation on these types is copied from the model.
pub mod model;

/// All operations that this crate can perform.
pub mod operation;

/// Output structures for operations. Documentation on these types is copied from the model.
pub mod output;

/// Data primitives referenced by other data types.
pub mod types;

mod http_serde;

pub mod middleware;

mod no_credentials;

mod operation_deser;

mod operation_ser;

/// Paginators for the service
pub mod paginator;

mod json_deser;

mod json_ser;

/// Generated accessors for nested fields
mod lens;

/// Endpoints standard library functions
mod endpoint_lib;

mod json_errors;

/// Crate version number.
pub static PKG_VERSION: &str = env!("CARGO_PKG_VERSION");
pub use aws_smithy_http::endpoint::Endpoint;
static API_METADATA: aws_http::user_agent::ApiMetadata =
    aws_http::user_agent::ApiMetadata::new("workdocs", PKG_VERSION);
pub use aws_credential_types::Credentials;
pub use aws_types::app_name::AppName;
pub use aws_types::region::Region;
#[doc(inline)]
pub use client::Client;