google_securitycenter1/lib.rs
1// DO NOT EDIT !
2// This file was generated automatically from 'src/generator/templates/api/lib.rs.mako'
3// DO NOT EDIT !
4
5//! This documentation was generated from *Security Command Center* crate version *7.0.0+20251205*, where *20251205* is the exact revision of the *securitycenter:v1* schema built by the [mako](http://www.makotemplates.org/) code generator *v7.0.0*.
6//!
7//! Everything else about the *Security Command Center* *v1* API can be found at the
8//! [official documentation site](https://cloud.google.com/security-command-center).
9//! The original source code is [on github](https://github.com/Byron/google-apis-rs/tree/main/gen/securitycenter1).
10//! # Features
11//!
12//! Handle the following *Resources* with ease from the central [hub](SecurityCommandCenter) ...
13//!
14//! * [folders](api::Folder)
15//! * [*assets group*](api::FolderAssetGroupCall), [*assets list*](api::FolderAssetListCall), [*assets update security marks*](api::FolderAssetUpdateSecurityMarkCall), [*big query exports create*](api::FolderBigQueryExportCreateCall), [*big query exports delete*](api::FolderBigQueryExportDeleteCall), [*big query exports get*](api::FolderBigQueryExportGetCall), [*big query exports list*](api::FolderBigQueryExportListCall), [*big query exports patch*](api::FolderBigQueryExportPatchCall), [*event threat detection settings custom modules create*](api::FolderEventThreatDetectionSettingCustomModuleCreateCall), [*event threat detection settings custom modules delete*](api::FolderEventThreatDetectionSettingCustomModuleDeleteCall), [*event threat detection settings custom modules get*](api::FolderEventThreatDetectionSettingCustomModuleGetCall), [*event threat detection settings custom modules list*](api::FolderEventThreatDetectionSettingCustomModuleListCall), [*event threat detection settings custom modules list descendant*](api::FolderEventThreatDetectionSettingCustomModuleListDescendantCall), [*event threat detection settings custom modules patch*](api::FolderEventThreatDetectionSettingCustomModulePatchCall), [*event threat detection settings effective custom modules get*](api::FolderEventThreatDetectionSettingEffectiveCustomModuleGetCall), [*event threat detection settings effective custom modules list*](api::FolderEventThreatDetectionSettingEffectiveCustomModuleListCall), [*event threat detection settings validate custom module*](api::FolderEventThreatDetectionSettingValidateCustomModuleCall), [*findings bulk mute*](api::FolderFindingBulkMuteCall), [*locations mute configs delete*](api::FolderLocationMuteConfigDeleteCall), [*locations mute configs get*](api::FolderLocationMuteConfigGetCall), [*locations mute configs patch*](api::FolderLocationMuteConfigPatchCall), [*mute configs create*](api::FolderMuteConfigCreateCall), [*mute configs delete*](api::FolderMuteConfigDeleteCall), [*mute configs get*](api::FolderMuteConfigGetCall), [*mute configs list*](api::FolderMuteConfigListCall), [*mute configs patch*](api::FolderMuteConfigPatchCall), [*notification configs create*](api::FolderNotificationConfigCreateCall), [*notification configs delete*](api::FolderNotificationConfigDeleteCall), [*notification configs get*](api::FolderNotificationConfigGetCall), [*notification configs list*](api::FolderNotificationConfigListCall), [*notification configs patch*](api::FolderNotificationConfigPatchCall), [*security health analytics settings custom modules create*](api::FolderSecurityHealthAnalyticsSettingCustomModuleCreateCall), [*security health analytics settings custom modules delete*](api::FolderSecurityHealthAnalyticsSettingCustomModuleDeleteCall), [*security health analytics settings custom modules get*](api::FolderSecurityHealthAnalyticsSettingCustomModuleGetCall), [*security health analytics settings custom modules list*](api::FolderSecurityHealthAnalyticsSettingCustomModuleListCall), [*security health analytics settings custom modules list descendant*](api::FolderSecurityHealthAnalyticsSettingCustomModuleListDescendantCall), [*security health analytics settings custom modules patch*](api::FolderSecurityHealthAnalyticsSettingCustomModulePatchCall), [*security health analytics settings custom modules simulate*](api::FolderSecurityHealthAnalyticsSettingCustomModuleSimulateCall), [*security health analytics settings effective custom modules get*](api::FolderSecurityHealthAnalyticsSettingEffectiveCustomModuleGetCall), [*security health analytics settings effective custom modules list*](api::FolderSecurityHealthAnalyticsSettingEffectiveCustomModuleListCall), [*sources findings external systems patch*](api::FolderSourceFindingExternalSystemPatchCall), [*sources findings group*](api::FolderSourceFindingGroupCall), [*sources findings list*](api::FolderSourceFindingListCall), [*sources findings patch*](api::FolderSourceFindingPatchCall), [*sources findings set mute*](api::FolderSourceFindingSetMuteCall), [*sources findings set state*](api::FolderSourceFindingSetStateCall), [*sources findings update security marks*](api::FolderSourceFindingUpdateSecurityMarkCall) and [*sources list*](api::FolderSourceListCall)
16//! * organizations
17//! * [*assets group*](api::OrganizationAssetGroupCall), [*assets list*](api::OrganizationAssetListCall), [*assets run discovery*](api::OrganizationAssetRunDiscoveryCall), [*assets update security marks*](api::OrganizationAssetUpdateSecurityMarkCall), [*attack paths list*](api::OrganizationAttackPathListCall), [*big query exports create*](api::OrganizationBigQueryExportCreateCall), [*big query exports delete*](api::OrganizationBigQueryExportDeleteCall), [*big query exports get*](api::OrganizationBigQueryExportGetCall), [*big query exports list*](api::OrganizationBigQueryExportListCall), [*big query exports patch*](api::OrganizationBigQueryExportPatchCall), [*event threat detection settings custom modules create*](api::OrganizationEventThreatDetectionSettingCustomModuleCreateCall), [*event threat detection settings custom modules delete*](api::OrganizationEventThreatDetectionSettingCustomModuleDeleteCall), [*event threat detection settings custom modules get*](api::OrganizationEventThreatDetectionSettingCustomModuleGetCall), [*event threat detection settings custom modules list*](api::OrganizationEventThreatDetectionSettingCustomModuleListCall), [*event threat detection settings custom modules list descendant*](api::OrganizationEventThreatDetectionSettingCustomModuleListDescendantCall), [*event threat detection settings custom modules patch*](api::OrganizationEventThreatDetectionSettingCustomModulePatchCall), [*event threat detection settings effective custom modules get*](api::OrganizationEventThreatDetectionSettingEffectiveCustomModuleGetCall), [*event threat detection settings effective custom modules list*](api::OrganizationEventThreatDetectionSettingEffectiveCustomModuleListCall), [*event threat detection settings validate custom module*](api::OrganizationEventThreatDetectionSettingValidateCustomModuleCall), [*findings bulk mute*](api::OrganizationFindingBulkMuteCall), [*get organization settings*](api::OrganizationGetOrganizationSettingCall), [*locations mute configs delete*](api::OrganizationLocationMuteConfigDeleteCall), [*locations mute configs get*](api::OrganizationLocationMuteConfigGetCall), [*locations mute configs patch*](api::OrganizationLocationMuteConfigPatchCall), [*mute configs create*](api::OrganizationMuteConfigCreateCall), [*mute configs delete*](api::OrganizationMuteConfigDeleteCall), [*mute configs get*](api::OrganizationMuteConfigGetCall), [*mute configs list*](api::OrganizationMuteConfigListCall), [*mute configs patch*](api::OrganizationMuteConfigPatchCall), [*notification configs create*](api::OrganizationNotificationConfigCreateCall), [*notification configs delete*](api::OrganizationNotificationConfigDeleteCall), [*notification configs get*](api::OrganizationNotificationConfigGetCall), [*notification configs list*](api::OrganizationNotificationConfigListCall), [*notification configs patch*](api::OrganizationNotificationConfigPatchCall), [*operations cancel*](api::OrganizationOperationCancelCall), [*operations delete*](api::OrganizationOperationDeleteCall), [*operations get*](api::OrganizationOperationGetCall), [*operations list*](api::OrganizationOperationListCall), [*resource value configs batch create*](api::OrganizationResourceValueConfigBatchCreateCall), [*resource value configs delete*](api::OrganizationResourceValueConfigDeleteCall), [*resource value configs get*](api::OrganizationResourceValueConfigGetCall), [*resource value configs list*](api::OrganizationResourceValueConfigListCall), [*resource value configs patch*](api::OrganizationResourceValueConfigPatchCall), [*security health analytics settings custom modules create*](api::OrganizationSecurityHealthAnalyticsSettingCustomModuleCreateCall), [*security health analytics settings custom modules delete*](api::OrganizationSecurityHealthAnalyticsSettingCustomModuleDeleteCall), [*security health analytics settings custom modules get*](api::OrganizationSecurityHealthAnalyticsSettingCustomModuleGetCall), [*security health analytics settings custom modules list*](api::OrganizationSecurityHealthAnalyticsSettingCustomModuleListCall), [*security health analytics settings custom modules list descendant*](api::OrganizationSecurityHealthAnalyticsSettingCustomModuleListDescendantCall), [*security health analytics settings custom modules patch*](api::OrganizationSecurityHealthAnalyticsSettingCustomModulePatchCall), [*security health analytics settings custom modules simulate*](api::OrganizationSecurityHealthAnalyticsSettingCustomModuleSimulateCall), [*security health analytics settings effective custom modules get*](api::OrganizationSecurityHealthAnalyticsSettingEffectiveCustomModuleGetCall), [*security health analytics settings effective custom modules list*](api::OrganizationSecurityHealthAnalyticsSettingEffectiveCustomModuleListCall), [*simulations attack exposure results attack paths list*](api::OrganizationSimulationAttackExposureResultAttackPathListCall), [*simulations attack exposure results valued resources list*](api::OrganizationSimulationAttackExposureResultValuedResourceListCall), [*simulations attack paths list*](api::OrganizationSimulationAttackPathListCall), [*simulations get*](api::OrganizationSimulationGetCall), [*simulations valued resources attack paths list*](api::OrganizationSimulationValuedResourceAttackPathListCall), [*simulations valued resources get*](api::OrganizationSimulationValuedResourceGetCall), [*simulations valued resources list*](api::OrganizationSimulationValuedResourceListCall), [*sources create*](api::OrganizationSourceCreateCall), [*sources findings create*](api::OrganizationSourceFindingCreateCall), [*sources findings external systems patch*](api::OrganizationSourceFindingExternalSystemPatchCall), [*sources findings group*](api::OrganizationSourceFindingGroupCall), [*sources findings list*](api::OrganizationSourceFindingListCall), [*sources findings patch*](api::OrganizationSourceFindingPatchCall), [*sources findings set mute*](api::OrganizationSourceFindingSetMuteCall), [*sources findings set state*](api::OrganizationSourceFindingSetStateCall), [*sources findings update security marks*](api::OrganizationSourceFindingUpdateSecurityMarkCall), [*sources get*](api::OrganizationSourceGetCall), [*sources get iam policy*](api::OrganizationSourceGetIamPolicyCall), [*sources list*](api::OrganizationSourceListCall), [*sources patch*](api::OrganizationSourcePatchCall), [*sources set iam policy*](api::OrganizationSourceSetIamPolicyCall), [*sources test iam permissions*](api::OrganizationSourceTestIamPermissionCall), [*update organization settings*](api::OrganizationUpdateOrganizationSettingCall) and [*valued resources list*](api::OrganizationValuedResourceListCall)
18//! * projects
19//! * [*assets group*](api::ProjectAssetGroupCall), [*assets list*](api::ProjectAssetListCall), [*assets update security marks*](api::ProjectAssetUpdateSecurityMarkCall), [*big query exports create*](api::ProjectBigQueryExportCreateCall), [*big query exports delete*](api::ProjectBigQueryExportDeleteCall), [*big query exports get*](api::ProjectBigQueryExportGetCall), [*big query exports list*](api::ProjectBigQueryExportListCall), [*big query exports patch*](api::ProjectBigQueryExportPatchCall), [*event threat detection settings custom modules create*](api::ProjectEventThreatDetectionSettingCustomModuleCreateCall), [*event threat detection settings custom modules delete*](api::ProjectEventThreatDetectionSettingCustomModuleDeleteCall), [*event threat detection settings custom modules get*](api::ProjectEventThreatDetectionSettingCustomModuleGetCall), [*event threat detection settings custom modules list*](api::ProjectEventThreatDetectionSettingCustomModuleListCall), [*event threat detection settings custom modules list descendant*](api::ProjectEventThreatDetectionSettingCustomModuleListDescendantCall), [*event threat detection settings custom modules patch*](api::ProjectEventThreatDetectionSettingCustomModulePatchCall), [*event threat detection settings effective custom modules get*](api::ProjectEventThreatDetectionSettingEffectiveCustomModuleGetCall), [*event threat detection settings effective custom modules list*](api::ProjectEventThreatDetectionSettingEffectiveCustomModuleListCall), [*event threat detection settings validate custom module*](api::ProjectEventThreatDetectionSettingValidateCustomModuleCall), [*findings bulk mute*](api::ProjectFindingBulkMuteCall), [*locations mute configs delete*](api::ProjectLocationMuteConfigDeleteCall), [*locations mute configs get*](api::ProjectLocationMuteConfigGetCall), [*locations mute configs patch*](api::ProjectLocationMuteConfigPatchCall), [*mute configs create*](api::ProjectMuteConfigCreateCall), [*mute configs delete*](api::ProjectMuteConfigDeleteCall), [*mute configs get*](api::ProjectMuteConfigGetCall), [*mute configs list*](api::ProjectMuteConfigListCall), [*mute configs patch*](api::ProjectMuteConfigPatchCall), [*notification configs create*](api::ProjectNotificationConfigCreateCall), [*notification configs delete*](api::ProjectNotificationConfigDeleteCall), [*notification configs get*](api::ProjectNotificationConfigGetCall), [*notification configs list*](api::ProjectNotificationConfigListCall), [*notification configs patch*](api::ProjectNotificationConfigPatchCall), [*security health analytics settings custom modules create*](api::ProjectSecurityHealthAnalyticsSettingCustomModuleCreateCall), [*security health analytics settings custom modules delete*](api::ProjectSecurityHealthAnalyticsSettingCustomModuleDeleteCall), [*security health analytics settings custom modules get*](api::ProjectSecurityHealthAnalyticsSettingCustomModuleGetCall), [*security health analytics settings custom modules list*](api::ProjectSecurityHealthAnalyticsSettingCustomModuleListCall), [*security health analytics settings custom modules list descendant*](api::ProjectSecurityHealthAnalyticsSettingCustomModuleListDescendantCall), [*security health analytics settings custom modules patch*](api::ProjectSecurityHealthAnalyticsSettingCustomModulePatchCall), [*security health analytics settings custom modules simulate*](api::ProjectSecurityHealthAnalyticsSettingCustomModuleSimulateCall), [*security health analytics settings effective custom modules get*](api::ProjectSecurityHealthAnalyticsSettingEffectiveCustomModuleGetCall), [*security health analytics settings effective custom modules list*](api::ProjectSecurityHealthAnalyticsSettingEffectiveCustomModuleListCall), [*sources findings external systems patch*](api::ProjectSourceFindingExternalSystemPatchCall), [*sources findings group*](api::ProjectSourceFindingGroupCall), [*sources findings list*](api::ProjectSourceFindingListCall), [*sources findings patch*](api::ProjectSourceFindingPatchCall), [*sources findings set mute*](api::ProjectSourceFindingSetMuteCall), [*sources findings set state*](api::ProjectSourceFindingSetStateCall), [*sources findings update security marks*](api::ProjectSourceFindingUpdateSecurityMarkCall) and [*sources list*](api::ProjectSourceListCall)
20//!
21//!
22//!
23//!
24//! Not what you are looking for ? Find all other Google APIs in their Rust [documentation index](http://byron.github.io/google-apis-rs).
25//!
26//! # Structure of this Library
27//!
28//! The API is structured into the following primary items:
29//!
30//! * **[Hub](SecurityCommandCenter)**
31//! * a central object to maintain state and allow accessing all *Activities*
32//! * creates [*Method Builders*](common::MethodsBuilder) which in turn
33//! allow access to individual [*Call Builders*](common::CallBuilder)
34//! * **[Resources](common::Resource)**
35//! * primary types that you can apply *Activities* to
36//! * a collection of properties and *Parts*
37//! * **[Parts](common::Part)**
38//! * a collection of properties
39//! * never directly used in *Activities*
40//! * **[Activities](common::CallBuilder)**
41//! * operations to apply to *Resources*
42//!
43//! All *structures* are marked with applicable traits to further categorize them and ease browsing.
44//!
45//! Generally speaking, you can invoke *Activities* like this:
46//!
47//! ```Rust,ignore
48//! let r = hub.resource().activity(...).doit().await
49//! ```
50//!
51//! Or specifically ...
52//!
53//! ```ignore
54//! let r = hub.folders().assets_group(...).doit().await
55//! let r = hub.folders().assets_list(...).doit().await
56//! let r = hub.folders().assets_update_security_marks(...).doit().await
57//! let r = hub.folders().big_query_exports_create(...).doit().await
58//! let r = hub.folders().big_query_exports_delete(...).doit().await
59//! let r = hub.folders().big_query_exports_get(...).doit().await
60//! let r = hub.folders().big_query_exports_list(...).doit().await
61//! let r = hub.folders().big_query_exports_patch(...).doit().await
62//! let r = hub.folders().event_threat_detection_settings_custom_modules_create(...).doit().await
63//! let r = hub.folders().event_threat_detection_settings_custom_modules_delete(...).doit().await
64//! let r = hub.folders().event_threat_detection_settings_custom_modules_get(...).doit().await
65//! let r = hub.folders().event_threat_detection_settings_custom_modules_list(...).doit().await
66//! let r = hub.folders().event_threat_detection_settings_custom_modules_list_descendant(...).doit().await
67//! let r = hub.folders().event_threat_detection_settings_custom_modules_patch(...).doit().await
68//! let r = hub.folders().event_threat_detection_settings_effective_custom_modules_get(...).doit().await
69//! let r = hub.folders().event_threat_detection_settings_effective_custom_modules_list(...).doit().await
70//! let r = hub.folders().event_threat_detection_settings_validate_custom_module(...).doit().await
71//! let r = hub.folders().findings_bulk_mute(...).doit().await
72//! let r = hub.folders().locations_mute_configs_delete(...).doit().await
73//! let r = hub.folders().locations_mute_configs_get(...).doit().await
74//! let r = hub.folders().locations_mute_configs_patch(...).doit().await
75//! let r = hub.folders().mute_configs_create(...).doit().await
76//! let r = hub.folders().mute_configs_delete(...).doit().await
77//! let r = hub.folders().mute_configs_get(...).doit().await
78//! let r = hub.folders().mute_configs_list(...).doit().await
79//! let r = hub.folders().mute_configs_patch(...).doit().await
80//! let r = hub.folders().notification_configs_create(...).doit().await
81//! let r = hub.folders().notification_configs_delete(...).doit().await
82//! let r = hub.folders().notification_configs_get(...).doit().await
83//! let r = hub.folders().notification_configs_list(...).doit().await
84//! let r = hub.folders().notification_configs_patch(...).doit().await
85//! let r = hub.folders().security_health_analytics_settings_custom_modules_create(...).doit().await
86//! let r = hub.folders().security_health_analytics_settings_custom_modules_delete(...).doit().await
87//! let r = hub.folders().security_health_analytics_settings_custom_modules_get(...).doit().await
88//! let r = hub.folders().security_health_analytics_settings_custom_modules_list(...).doit().await
89//! let r = hub.folders().security_health_analytics_settings_custom_modules_list_descendant(...).doit().await
90//! let r = hub.folders().security_health_analytics_settings_custom_modules_patch(...).doit().await
91//! let r = hub.folders().security_health_analytics_settings_custom_modules_simulate(...).doit().await
92//! let r = hub.folders().security_health_analytics_settings_effective_custom_modules_get(...).doit().await
93//! let r = hub.folders().security_health_analytics_settings_effective_custom_modules_list(...).doit().await
94//! let r = hub.folders().sources_findings_external_systems_patch(...).doit().await
95//! let r = hub.folders().sources_findings_group(...).doit().await
96//! let r = hub.folders().sources_findings_list(...).doit().await
97//! let r = hub.folders().sources_findings_patch(...).doit().await
98//! let r = hub.folders().sources_findings_set_mute(...).doit().await
99//! let r = hub.folders().sources_findings_set_state(...).doit().await
100//! let r = hub.folders().sources_findings_update_security_marks(...).doit().await
101//! let r = hub.folders().sources_list(...).doit().await
102//! ```
103//!
104//! The `resource()` and `activity(...)` calls create [builders][builder-pattern]. The second one dealing with `Activities`
105//! supports various methods to configure the impending operation (not shown here). It is made such that all required arguments have to be
106//! specified right away (i.e. `(...)`), whereas all optional ones can be [build up][builder-pattern] as desired.
107//! The `doit()` method performs the actual communication with the server and returns the respective result.
108//!
109//! # Usage
110//!
111//! ## Setting up your Project
112//!
113//! To use this library, you would put the following lines into your `Cargo.toml` file:
114//!
115//! ```toml
116//! [dependencies]
117//! google-securitycenter1 = "*"
118//! serde = "1"
119//! serde_json = "1"
120//! ```
121//!
122//! ## A complete example
123//!
124//! ```test_harness,no_run
125//! extern crate hyper;
126//! extern crate hyper_rustls;
127//! extern crate google_securitycenter1 as securitycenter1;
128//! use securitycenter1::{Result, Error};
129//! # async fn dox() {
130//! use securitycenter1::{SecurityCommandCenter, FieldMask, hyper_rustls, hyper_util, yup_oauth2};
131//!
132//! // Get an ApplicationSecret instance by some means. It contains the `client_id` and
133//! // `client_secret`, among other things.
134//! let secret: yup_oauth2::ApplicationSecret = Default::default();
135//! // Instantiate the authenticator. It will choose a suitable authentication flow for you,
136//! // unless you replace `None` with the desired Flow.
137//! // Provide your own `AuthenticatorDelegate` to adjust the way it operates and get feedback about
138//! // what's going on. You probably want to bring in your own `TokenStorage` to persist tokens and
139//! // retrieve them from storage.
140//! let connector = hyper_rustls::HttpsConnectorBuilder::new()
141//! .with_native_roots()
142//! .unwrap()
143//! .https_only()
144//! .enable_http2()
145//! .build();
146//!
147//! let executor = hyper_util::rt::TokioExecutor::new();
148//! let auth = yup_oauth2::InstalledFlowAuthenticator::with_client(
149//! secret,
150//! yup_oauth2::InstalledFlowReturnMethod::HTTPRedirect,
151//! yup_oauth2::client::CustomHyperClientBuilder::from(
152//! hyper_util::client::legacy::Client::builder(executor).build(connector),
153//! ),
154//! ).build().await.unwrap();
155//!
156//! let client = hyper_util::client::legacy::Client::builder(
157//! hyper_util::rt::TokioExecutor::new()
158//! )
159//! .build(
160//! hyper_rustls::HttpsConnectorBuilder::new()
161//! .with_native_roots()
162//! .unwrap()
163//! .https_or_http()
164//! .enable_http2()
165//! .build()
166//! );
167//! let mut hub = SecurityCommandCenter::new(client, auth);
168//! // You can configure optional parameters by calling the respective setters at will, and
169//! // execute the final call using `doit()`.
170//! // Values shown here are possibly random and not representative !
171//! let result = hub.folders().assets_list("parent")
172//! .read_time(chrono::Utc::now())
173//! .page_token("sed")
174//! .page_size(-2)
175//! .order_by("takimata")
176//! .filter("amet.")
177//! .field_mask(FieldMask::new::<&str>(&[]))
178//! .compare_duration(chrono::Duration::seconds(6037203))
179//! .doit().await;
180//!
181//! match result {
182//! Err(e) => match e {
183//! // The Error enum provides details about what exactly happened.
184//! // You can also just use its `Debug`, `Display` or `Error` traits
185//! Error::HttpError(_)
186//! |Error::Io(_)
187//! |Error::MissingAPIKey
188//! |Error::MissingToken(_)
189//! |Error::Cancelled
190//! |Error::UploadSizeLimitExceeded(_, _)
191//! |Error::Failure(_)
192//! |Error::BadRequest(_)
193//! |Error::FieldClash(_)
194//! |Error::JsonDecodeError(_, _) => println!("{}", e),
195//! },
196//! Ok(res) => println!("Success: {:?}", res),
197//! }
198//! # }
199//! ```
200//! ## Handling Errors
201//!
202//! All errors produced by the system are provided either as [Result](common::Result) enumeration as return value of
203//! the doit() methods, or handed as possibly intermediate results to either the
204//! [Hub Delegate](common::Delegate), or the [Authenticator Delegate](https://docs.rs/yup-oauth2/*/yup_oauth2/trait.AuthenticatorDelegate.html).
205//!
206//! When delegates handle errors or intermediate values, they may have a chance to instruct the system to retry. This
207//! makes the system potentially resilient to all kinds of errors.
208//!
209//! ## Uploads and Downloads
210//! If a method supports downloads, the response body, which is part of the [Result](common::Result), should be
211//! read by you to obtain the media.
212//! If such a method also supports a [Response Result](common::ResponseResult), it will return that by default.
213//! You can see it as meta-data for the actual media. To trigger a media download, you will have to set up the builder by making
214//! this call: `.param("alt", "media")`.
215//!
216//! Methods supporting uploads can do so using up to 2 different protocols:
217//! *simple* and *resumable*. The distinctiveness of each is represented by customized
218//! `doit(...)` methods, which are then named `upload(...)` and `upload_resumable(...)` respectively.
219//!
220//! ## Customization and Callbacks
221//!
222//! You may alter the way an `doit()` method is called by providing a [delegate](common::Delegate) to the
223//! [Method Builder](common::CallBuilder) before making the final `doit()` call.
224//! Respective methods will be called to provide progress information, as well as determine whether the system should
225//! retry on failure.
226//!
227//! The [delegate trait](common::Delegate) is default-implemented, allowing you to customize it with minimal effort.
228//!
229//! ## Optional Parts in Server-Requests
230//!
231//! All structures provided by this library are made to be [encodable](common::RequestValue) and
232//! [decodable](common::ResponseResult) via *json*. Optionals are used to indicate that partial requests are responses
233//! are valid.
234//! Most optionals are are considered [Parts](common::Part) which are identifiable by name, which will be sent to
235//! the server to indicate either the set parts of the request or the desired parts in the response.
236//!
237//! ## Builder Arguments
238//!
239//! Using [method builders](common::CallBuilder), you are able to prepare an action call by repeatedly calling it's methods.
240//! These will always take a single argument, for which the following statements are true.
241//!
242//! * [PODs][wiki-pod] are handed by copy
243//! * strings are passed as `&str`
244//! * [request values](common::RequestValue) are moved
245//!
246//! Arguments will always be copied or cloned into the builder, to make them independent of their original life times.
247//!
248//! [wiki-pod]: http://en.wikipedia.org/wiki/Plain_old_data_structure
249//! [builder-pattern]: http://en.wikipedia.org/wiki/Builder_pattern
250//! [google-go-api]: https://github.com/google/google-api-go-client
251//!
252//! ## Cargo Features
253//!
254//! * `utoipa` - Add support for [utoipa](https://crates.io/crates/utoipa) and derive `utoipa::ToSchema` on all
255//! the types. You'll have to import and register the required types in `#[openapi(schemas(...))]`, otherwise the
256//! generated `openapi` spec would be invalid.
257//!
258//!
259//!
260
261// Unused attributes happen thanks to defined, but unused structures We don't
262// warn about this, as depending on the API, some data structures or facilities
263// are never used. Instead of pre-determining this, we just disable the lint.
264// It's manually tuned to not have any unused imports in fully featured APIs.
265// Same with unused_mut.
266#![allow(unused_imports, unused_mut, dead_code)]
267
268// DO NOT EDIT !
269// This file was generated automatically from 'src/generator/templates/api/lib.rs.mako'
270// DO NOT EDIT !
271
272pub extern crate hyper;
273pub extern crate hyper_rustls;
274pub extern crate hyper_util;
275#[cfg(feature = "yup-oauth2")]
276pub extern crate yup_oauth2;
277
278pub extern crate google_apis_common as common;
279pub use common::{Delegate, Error, FieldMask, Result};
280
281pub mod api;
282pub use api::SecurityCommandCenter;