aws_sdk_ec2/client/
modify_snapshot_attribute.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`ModifySnapshotAttribute`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`attribute(SnapshotAttributeName)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::attribute) / [`set_attribute(Option<SnapshotAttributeName>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_attribute):<br>required: **false**<br><p>The snapshot attribute to modify. Only volume creation permissions can be modified.</p><br>
7    ///   - [`create_volume_permission(CreateVolumePermissionModifications)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::create_volume_permission) / [`set_create_volume_permission(Option<CreateVolumePermissionModifications>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_create_volume_permission):<br>required: **false**<br><p>A JSON representation of the snapshot attribute modification.</p><br>
8    ///   - [`group_names(impl Into<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::group_names) / [`set_group_names(Option<Vec::<String>>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_group_names):<br>required: **false**<br><p>The group to modify for the snapshot.</p><br>
9    ///   - [`operation_type(OperationType)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::operation_type) / [`set_operation_type(Option<OperationType>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_operation_type):<br>required: **false**<br><p>The type of operation to perform to the attribute.</p><br>
10    ///   - [`snapshot_id(impl Into<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::snapshot_id) / [`set_snapshot_id(Option<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_snapshot_id):<br>required: **true**<br><p>The ID of the snapshot.</p><br>
11    ///   - [`user_ids(impl Into<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::user_ids) / [`set_user_ids(Option<Vec::<String>>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_user_ids):<br>required: **false**<br><p>The account ID to modify for the snapshot.</p><br>
12    ///   - [`dry_run(bool)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_dry_run):<br>required: **false**<br><p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
13    /// - On success, responds with [`ModifySnapshotAttributeOutput`](crate::operation::modify_snapshot_attribute::ModifySnapshotAttributeOutput)
14    /// - On failure, responds with [`SdkError<ModifySnapshotAttributeError>`](crate::operation::modify_snapshot_attribute::ModifySnapshotAttributeError)
15    pub fn modify_snapshot_attribute(&self) -> crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder {
16        crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::new(self.handle.clone())
17    }
18}