The following code examples show how to use EBS direct APIs with an AWS software development kit (SDK).
Use StartSnapshot
with an AWS SDK or CLI
The following code example shows how to use StartSnapshot
.
- SDK for Rust
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository
. async fn start(client: &Client, description: &str) -> Result<String, Error> { let snapshot = client .start_snapshot() .description(description) .encrypted(false) .volume_size(1) .send() .await?; Ok(snapshot.snapshot_id.unwrap()) }
-
For API details, see StartSnapshot
in AWS SDK for Rust API reference.
-
Use PutSnapshotBlock
with an AWS SDK or CLI
The following code example shows how to use PutSnapshotBlock
.
- SDK for Rust
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository
. async fn add_block( client: &Client, id: &str, idx: usize, block: Vec<u8>, checksum: &str, ) -> Result<(), Error> { client .put_snapshot_block() .snapshot_id(id) .block_index(idx as i32) .block_data(ByteStream::from(block)) .checksum(checksum) .checksum_algorithm(ChecksumAlgorithm::ChecksumAlgorithmSha256) .data_length(EBS_BLOCK_SIZE as i32) .send() .await?; Ok(()) }
-
For API details, see PutSnapshotBlock
in AWS SDK for Rust API reference.
-
Use CompleteSnapshot
with an AWS SDK or CLI
The following code example shows how to use CompleteSnapshot
.
- SDK for Rust
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository
. async fn finish(client: &Client, id: &str) -> Result<(), Error> { client .complete_snapshot() .changed_blocks_count(2) .snapshot_id(id) .send() .await?; println!("Snapshot ID {}", id); println!("The state is 'completed' when all of the modified blocks have been transferred to Amazon S3."); println!("Use the get-snapshot-state code example to get the state of the snapshot."); Ok(()) }
-
For API details, see CompleteSnapshot
in AWS SDK for Rust API reference.
-