/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ec2-2016-11-15.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.EC2.Model { /// /// Container for the parameters to the DescribeInstances operation. /// Describes the specified instances or all instances. /// /// /// /// If you specify instance IDs, the output includes information for only the specified /// instances. If you specify filters, the output includes information for only those /// instances that meet the filter criteria. If you do not specify instance IDs or filters, /// the output includes information for all instances, which can affect performance. We /// recommend that you use pagination to ensure that the operation returns quickly and /// successfully. /// /// /// /// If you specify an instance ID that is not valid, an error is returned. If you specify /// an instance that you do not own, it is not included in the output. /// /// /// /// Recently terminated instances might appear in the returned results. This interval /// is usually less than one hour. /// /// /// /// If you describe instances in the rare case where an Availability Zone is experiencing /// a service disruption and you specify instance IDs that are in the affected zone, or /// do not specify any instance IDs at all, the call fails. If you describe instances /// and specify only instance IDs that are in an unaffected zone, the call works normally. /// /// public partial class DescribeInstancesRequest : AmazonEC2Request { private List _filters = new List(); private List _instanceIds = new List(); private int? _maxResults; private string _nextToken; /// /// Gets and sets the property Filters. /// /// The filters. /// ///
  • /// /// affinity - The affinity setting for an instance running on a Dedicated /// Host (default | host). /// ///
  • /// /// architecture - The instance architecture (i386 | x86_64 /// | arm64). /// ///
  • /// /// availability-zone - The Availability Zone of the instance. /// ///
  • /// /// block-device-mapping.attach-time - The attach time for an EBS volume /// mapped to the instance, for example, 2010-09-15T17:15:20.000Z. /// ///
  • /// /// block-device-mapping.delete-on-termination - A Boolean that indicates /// whether the EBS volume is deleted on instance termination. /// ///
  • /// /// block-device-mapping.device-name - The device name specified in the /// block device mapping (for example, /dev/sdh or xvdh). /// ///
  • /// /// block-device-mapping.status - The status for the EBS volume (attaching /// | attached | detaching | detached). /// ///
  • /// /// block-device-mapping.volume-id - The volume ID of the EBS volume. /// ///
  • /// /// capacity-reservation-id - The ID of the Capacity Reservation into which /// the instance was launched. /// ///
  • /// /// client-token - The idempotency token you provided when you launched /// the instance. /// ///
  • /// /// dns-name - The public DNS name of the instance. /// ///
  • /// /// hibernation-options.configured - A Boolean that indicates whether the /// instance is enabled for hibernation. A value of true means that the instance /// is enabled for hibernation. /// ///
  • /// /// host-id - The ID of the Dedicated Host on which the instance is running, /// if applicable. /// ///
  • /// /// hypervisor - The hypervisor type of the instance (ovm | /// xen). The value xen is used for both Xen and Nitro hypervisors. /// ///
  • /// /// iam-instance-profile.arn - The instance profile associated with the /// instance. Specified as an ARN. /// ///
  • /// /// image-id - The ID of the image used to launch the instance. /// ///
  • /// /// instance-id - The ID of the instance. /// ///
  • /// /// instance-lifecycle - Indicates whether this is a Spot Instance or a /// Scheduled Instance (spot | scheduled). /// ///
  • /// /// instance-state-code - The state of the instance, as a 16-bit unsigned /// integer. The high byte is used for internal purposes and should be ignored. The low /// byte is set based on the state represented. The valid values are: 0 (pending), 16 /// (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped). /// ///
  • /// /// instance-state-name - The state of the instance (pending /// | running | shutting-down | terminated | stopping /// | stopped). /// ///
  • /// /// instance-type - The type of instance (for example, t2.micro). /// ///
  • /// /// instance.group-id - The ID of the security group for the instance. /// ///
  • /// /// instance.group-name - The name of the security group for the instance. /// /// ///
  • /// /// ip-address - The public IPv4 address of the instance. /// ///
  • /// /// kernel-id - The kernel ID. /// ///
  • /// /// key-name - The name of the key pair used when the instance was launched. /// ///
  • /// /// launch-index - When launching multiple instances, this is the index /// for the instance in the launch group (for example, 0, 1, 2, and so on). /// ///
  • /// /// launch-time - The time when the instance was launched, in the ISO 8601 /// format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z. /// You can use a wildcard (*), for example, 2021-09-29T*, which /// matches an entire day. /// ///
  • /// /// metadata-options.http-tokens - The metadata request authorization state /// (optional | required) /// ///
  • /// /// metadata-options.http-put-response-hop-limit - The HTTP metadata request /// put response hop limit (integer, possible values 1 to 64) /// ///
  • /// /// metadata-options.http-endpoint - The status of access to the HTTP metadata /// endpoint on your instance (enabled | disabled) /// ///
  • /// /// metadata-options.instance-metadata-tags - The status of access to instance /// tags from the instance metadata (enabled | disabled) /// ///
  • /// /// monitoring-state - Indicates whether detailed monitoring is enabled /// (disabled | enabled). /// ///
  • /// /// network-interface.addresses.private-ip-address - The private IPv4 address /// associated with the network interface. /// ///
  • /// /// network-interface.addresses.primary - Specifies whether the IPv4 address /// of the network interface is the primary private IPv4 address. /// ///
  • /// /// network-interface.addresses.association.public-ip - The ID of the association /// of an Elastic IP address (IPv4) with a network interface. /// ///
  • /// /// network-interface.addresses.association.ip-owner-id - The owner ID of /// the private IPv4 address associated with the network interface. /// ///
  • /// /// network-interface.association.public-ip - The address of the Elastic /// IP address (IPv4) bound to the network interface. /// ///
  • /// /// network-interface.association.ip-owner-id - The owner of the Elastic /// IP address (IPv4) associated with the network interface. /// ///
  • /// /// network-interface.association.allocation-id - The allocation ID returned /// when you allocated the Elastic IP address (IPv4) for your network interface. /// ///
  • /// /// network-interface.association.association-id - The association ID returned /// when the network interface was associated with an IPv4 address. /// ///
  • /// /// network-interface.attachment.attachment-id - The ID of the interface /// attachment. /// ///
  • /// /// network-interface.attachment.instance-id - The ID of the instance to /// which the network interface is attached. /// ///
  • /// /// network-interface.attachment.instance-owner-id - The owner ID of the /// instance to which the network interface is attached. /// ///
  • /// /// network-interface.attachment.device-index - The device index to which /// the network interface is attached. /// ///
  • /// /// network-interface.attachment.status - The status of the attachment (attaching /// | attached | detaching | detached). /// ///
  • /// /// network-interface.attachment.attach-time - The time that the network /// interface was attached to an instance. /// ///
  • /// /// network-interface.attachment.delete-on-termination - Specifies whether /// the attachment is deleted when an instance is terminated. /// ///
  • /// /// network-interface.availability-zone - The Availability Zone for the /// network interface. /// ///
  • /// /// network-interface.description - The description of the network interface. /// ///
  • /// /// network-interface.group-id - The ID of a security group associated with /// the network interface. /// ///
  • /// /// network-interface.group-name - The name of a security group associated /// with the network interface. /// ///
  • /// /// network-interface.ipv6-addresses.ipv6-address - The IPv6 address associated /// with the network interface. /// ///
  • /// /// network-interface.mac-address - The MAC address of the network interface. /// ///
  • /// /// network-interface.network-interface-id - The ID of the network interface. /// ///
  • /// /// network-interface.owner-id - The ID of the owner of the network interface. /// ///
  • /// /// network-interface.private-dns-name - The private DNS name of the network /// interface. /// ///
  • /// /// network-interface.requester-id - The requester ID for the network interface. /// ///
  • /// /// network-interface.requester-managed - Indicates whether the network /// interface is being managed by Amazon Web Services. /// ///
  • /// /// network-interface.status - The status of the network interface (available) /// | in-use). /// ///
  • /// /// network-interface.source-dest-check - Whether the network interface /// performs source/destination checking. A value of true means that checking /// is enabled, and false means that checking is disabled. The value must /// be false for the network interface to perform network address translation /// (NAT) in your VPC. /// ///
  • /// /// network-interface.subnet-id - The ID of the subnet for the network interface. /// ///
  • /// /// network-interface.vpc-id - The ID of the VPC for the network interface. /// ///
  • /// /// outpost-arn - The Amazon Resource Name (ARN) of the Outpost. /// ///
  • /// /// owner-id - The Amazon Web Services account ID of the instance owner. /// ///
  • /// /// placement-group-name - The name of the placement group for the instance. /// ///
  • /// /// placement-partition-number - The partition in which the instance is /// located. /// ///
  • /// /// platform - The platform. To list only Windows instances, use windows. /// ///
  • /// /// private-dns-name - The private IPv4 DNS name of the instance. /// ///
  • /// /// private-ip-address - The private IPv4 address of the instance. /// ///
  • /// /// product-code - The product code associated with the AMI used to launch /// the instance. /// ///
  • /// /// product-code.type - The type of product code (devpay | /// marketplace). /// ///
  • /// /// ramdisk-id - The RAM disk ID. /// ///
  • /// /// reason - The reason for the current state of the instance (for example, /// shows "User Initiated [date]" when you stop or terminate the instance). Similar to /// the state-reason-code filter. /// ///
  • /// /// requester-id - The ID of the entity that launched the instance on your /// behalf (for example, Amazon Web Services Management Console, Auto Scaling, and so /// on). /// ///
  • /// /// reservation-id - The ID of the instance's reservation. A reservation /// ID is created any time you launch an instance. A reservation ID has a one-to-one relationship /// with an instance launch request, but can be associated with more than one instance /// if you launch multiple instances using the same launch request. For example, if you /// launch one instance, you get one reservation ID. If you launch ten instances using /// the same launch request, you also get one reservation ID. /// ///
  • /// /// root-device-name - The device name of the root device volume (for example, /// /dev/sda1). /// ///
  • /// /// root-device-type - The type of the root device volume (ebs /// | instance-store). /// ///
  • /// /// source-dest-check - Indicates whether the instance performs source/destination /// checking. A value of true means that checking is enabled, and false /// means that checking is disabled. The value must be false for the instance /// to perform network address translation (NAT) in your VPC. /// ///
  • /// /// spot-instance-request-id - The ID of the Spot Instance request. /// ///
  • /// /// state-reason-code - The reason code for the state change. /// ///
  • /// /// state-reason-message - A message that describes the state change. /// ///
  • /// /// subnet-id - The ID of the subnet for the instance. /// ///
  • /// /// tag:<key> - 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 that have a tag with a specific key, regardless of the tag value. /// ///
  • /// /// tenancy - The tenancy of an instance (dedicated | default /// | host). /// ///
  • /// /// virtualization-type - The virtualization type of the instance (paravirtual /// | hvm). /// ///
  • /// /// vpc-id - The ID of the VPC that the instance is running in. /// ///
///
public List Filters { get { return this._filters; } set { this._filters = value; } } // Check to see if Filters property is set internal bool IsSetFilters() { return this._filters != null && this._filters.Count > 0; } /// /// Gets and sets the property InstanceIds. /// /// The instance IDs. /// /// /// /// Default: Describes all your instances. /// /// public List InstanceIds { get { return this._instanceIds; } set { this._instanceIds = value; } } // Check to see if InstanceIds property is set internal bool IsSetInstanceIds() { return this._instanceIds != null && this._instanceIds.Count > 0; } /// /// 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. /// /// /// /// You cannot specify this parameter and the instance IDs parameter in the same request. /// /// public int MaxResults { get { return this._maxResults.GetValueOrDefault(); } set { this._maxResults = value; } } // Check to see if MaxResults property is set internal bool IsSetMaxResults() { return this._maxResults.HasValue; } /// /// 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 string NextToken { get { return this._nextToken; } set { this._nextToken = value; } } // Check to see if NextToken property is set internal bool IsSetNextToken() { return this._nextToken != null; } } }