AWS SDK Version 4 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Container for the parameters to the DescribeVolumes operation. Describes the specified EBS volumes or all of your EBS volumes.

If you are describing a long list of volumes, we recommend that you paginate the output to make the list more manageable. For more information, see Pagination.

For more information about EBS volumes, see Amazon EBS volumes in the Amazon EBS User Guide.

We strongly recommend using only paginated requests. Unpaginated requests are susceptible to throttling and timeouts.

The order of the elements in the response, including those within nested structures, might vary. Applications should not assume the elements appear in a particular order.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonWebServiceRequest
    Amazon.EC2.AmazonEC2Request
      Amazon.EC2.Model.DescribeVolumesRequest

Namespace: Amazon.EC2.Model
Assembly: AWSSDK.EC2.dll
Version: 3.x.y.z

Syntax

C#
public class DescribeVolumesRequest : AmazonEC2Request
         IAmazonWebServiceRequest

The DescribeVolumesRequest type exposes the following members

Constructors

NameDescription
Public Method DescribeVolumesRequest()

Empty constructor used to set properties independently even when a simple constructor is available

Public Method DescribeVolumesRequest(List<String>)

Instantiates DescribeVolumesRequest with the parameterized properties

Properties

NameTypeDescription
Public Property DryRun System.Nullable<System.Boolean>

Gets and sets the property DryRun.

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 DryRunOperation. Otherwise, it is UnauthorizedOperation.

Public Property Filters System.Collections.Generic.List<Amazon.EC2.Model.Filter>

Gets and sets the property Filters.

The filters.

  • attachment.attach-time - The time stamp when the attachment initiated.

  • attachment.delete-on-termination - Whether the volume is deleted on instance termination.

  • attachment.device - The device name specified in the block device mapping (for example, /dev/sda1).

  • attachment.instance-id - The ID of the instance the volume is attached to.

  • attachment.status - The attachment state (attaching | attached | detaching).

  • availability-zone - The Availability Zone in which the volume was created.

  • create-time - The time stamp when the volume was created.

  • encrypted - Indicates whether the volume is encrypted (true | false)

  • fast-restored - Indicates whether the volume was created from a snapshot that is enabled for fast snapshot restore (true | false).

  • multi-attach-enabled - Indicates whether the volume is enabled for Multi-Attach (true | false)

  • operator.managed - A Boolean that indicates whether this is a managed volume.

  • operator.principal - The principal that manages the volume. Only valid for managed volumes, where managed is true.

  • size - The size of the volume, in GiB.

  • snapshot-id - The snapshot from which the volume was created.

  • status - The state of the volume (creating | available | in-use | deleting | deleted | error).

  • tag: - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • volume-id - The volume ID.

  • volume-type - The Amazon EBS volume type (gp2 | gp3 | io1 | io2 | st1 | sc1| standard)

Starting with version 4 of the SDK this property will default to null. If no data for this property is returned from the service the property will also be null. This was changed to improve performance and allow the SDK and caller to distinguish between a property not set or a property being empty to clear out a value. To retain the previous SDK behavior set the AWSConfigs.InitializeCollections static property to true.

Public Property MaxResults System.Nullable<System.Int32>

Gets and sets the property MaxResults.

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

Public Property NextToken System.String

Gets and sets the property NextToken.

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

Public Property VolumeIds System.Collections.Generic.List<System.String>

Gets and sets the property VolumeIds.

The volume IDs. If not specified, then all volumes are included in the response.

Starting with version 4 of the SDK this property will default to null. If no data for this property is returned from the service the property will also be null. This was changed to improve performance and allow the SDK and caller to distinguish between a property not set or a property being empty to clear out a value. To retain the previous SDK behavior set the AWSConfigs.InitializeCollections static property to true.

Examples

This example describes all of your volumes in the default region.

To describe all volumes


var client = new AmazonEC2Client();
var response = client.DescribeVolumes(new DescribeVolumesRequest 
{
});

string nextToken = response.NextToken;
List<Volume> volumes = response.Volumes;

            

This example describes all volumes that are both attached to the instance with the ID i-1234567890abcdef0 and set to delete when the instance terminates.

To describe volumes that are attached to a specific instance


var client = new AmazonEC2Client();
var response = client.DescribeVolumes(new DescribeVolumesRequest 
{
    Filters = new List<Filter> {
        new Filter {
            Name = "attachment.instance-id",
            Values = new List<string> {
                "i-1234567890abcdef0"
            }
        },
        new Filter {
            Name = "attachment.delete-on-termination",
            Values = new List<string> {
                "true"
            }
        }
    }
});

List<Volume> volumes = response.Volumes;

            

Version Information

.NET:
Supported in: 8.0 and newer, Core 3.1

.NET Standard:
Supported in: 2.0

.NET Framework:
Supported in: 4.7.2 and newer