ExAws v1.0.0-beta2 ExAws.EC2

Operations on AWS EC2

Summary

Types

Functions

Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name

Adds one or more egress rules to a security group for use with a VPC

Adds one or more ingress rules to a security group

Bundles an Amazon instance store-backed Windows instance. During bundling, only the root device volume (C:) is bundled. Data on other instance store volumes is not preserved

Cancels a bundling operation for an instance store-backed Windows instance

Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request

Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same region or from one region to another

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped

Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#8 private key

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance

Creates a subnet in an existing VPC

Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 10 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource

Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to

Creates a VPC with the specified CIDR block

Deletes the specified key pair, by removing the public key from Amazon EC2

Deletes the specified snapshot

Deletes the specified subnet

Deletes the specified set of tags from the specified set of resources

Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance)

Deletes the specified VPC

Deregisters the specified AMI. After you deregister an AMI, it can’t be used to launch new instances

Describes attributes of your AWS account

Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you’re currently using

Describes one or more of your bundling tasks

Describes the ID format settings for your resources on a per-region basis, for example, to view which resource types are enabled for longer IDs

Describes the specified attribute of the specified AMI. You can specify only one attribute at a time

Describes one or more of the images (AMIs, AKIs, and ARIs) available to you

Describes the specified attribute of the specified instance. You can specify only one attribute at a time

Describes the status of one or more instances. By default, only running instances are described, unless specified otherwise

Describes one or more of your instances

Describes one or more of your key pairs

Describes one or more regions that are currently available to you

Describes one or more of your security groups

Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time

Describes one or more of the EBS snapshots available to you

Describes one or more of your subnets

Describes one or more of the tags for your EC2 resources

Describes the specified attribute of the specified volume. You can specify only one attribute at a time

Describes the status of the specified volumes

Describes the specified EBS volumes

Describes the specified attribute of the specified VPC. You can specify only one attribute at a time

Describes one or more of your VPCs

Detaches an EBS volume from an instance

Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent

Gets the console output for the specified instance

Retrieves the encrypted administrator password for an instance running Windows

Imports the public key from an RSA key pair that you created with a third-party tool

Modifies the ID format for the specified resource on a per-region basis

Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time

Modifies the specified attribute of the specified instance. You can specify only one attribute at a time

Adds or removes permission settings for the specified snapshot

Modifies the specified attribute of the specified VPC

Enables monitoring for a running instance

Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances

Registers an AMI. When you’re creating an AMI, this is the final step you must complete before you can launch an instance from the AMI

Submits feedback about the status of an instance. The instance must be in the running state

Resets an attribute of an AMI to its default value

Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the SourceDestCheck, the instance can be either running or stopped

Resets permission settings for the specified snapshot

Removes one or more egress rules from a security group for EC2-VPC

Removes one or more ingress rules from a security group. The values that you specify in the revoke request (for example, ports) must match the existing rule’s values for the rule to be removed

Launches the speficied number of instance using an AMI

Starts an Amazon EBS-backed AMI that was previously stopped

Stops an Amazon EBS-backed AMI that was previously started

Shuts down one or more instances. Terminated instances remain visible after termination (for approximately one hour)

Disables monitoring for a running instance

Types

attach_volume_opts :: [{:dry_run, boolean}]
attribute_boolean_value :: value :: boolean
attribute_value :: value :: binary
attributes :: [:instance_type | :kernel | :ramdisk | :user_data | :disable_api_termination | :instance_initiated_shutdown_behavior | :root_device_name | :block_device_mapping | :product_codes | :source_dest_check | :group_set | :ebs_optimized | :sriov_net_support]
authorize_security_group_egress_opts :: [{:cidr_ip, binary} | {:dry_run, boolean} | {:from_port, integer} | {:group_name, binary} | [{:ip_permissions_1, [ip_permission]}, ...] | {:ip_protocol, binary} | {:source_security_group_name, binary} | {:source_security_group_owner_id, binary} | {:to_port, integer}]
authorize_security_group_ingress_opts :: [{:cidr_ip, binary} | {:dry_run, boolean} | {:from_port, integer} | {:group_id, binary} | {:group_name, binary} | [{:ip_permissions_1, [ip_permission]}, ...] | {:ip_protocol, binary} | {:source_security_group_name, binary} | {:source_security_group_owner_id, binary} | {:to_port, integer}]
availability_zone_states ::
  :available |
  :information |
  :impaired |
  :unavailable
block_device_mapping :: {device_name :: binary, ebs :: ebs_block_device, no_device :: binary, virtual_name :: binary}
bundle_instance_opts :: [{:dry_run, boolean}]
bundle_instance_states ::
  :pending |
  :waiting_for_shutdown |
  :bundling |
  :storing |
  :cancelling |
  :complete |
  :failed
cancel_bundle_task_opts :: [{:dry_run, boolean}]
copy_image_opts :: [client_token: binary, description: binary, dry_run: boolean, encrypted: boolean, kms_key_id: binary]
copy_snapshot_opts :: [description: :binary, destination_region: binary, dry_run: boolean, encrypted: boolean, kms_key_id: binary, presigned_url: binary]
create_image_opts :: [[{:block_device_mapping_1, block_device_mapping_list}, ...] | {:description, binary} | {:dry_run, boolean} | {:no_reboot, boolean}]
create_key_pair_opts :: [{:dry_run, boolean}]
create_security_group_opts :: [dry_run: boolean, vpc_id: binary]
create_snapshot_opts :: [description: binary, dry_run: boolean]
create_subnet_opts :: [availability_zone: binary, dry_run: boolean]
create_tags_opts :: [{:dry_run, boolean}]
create_volume_opts :: [dry_run: boolean, encrypted: boolean, iops: 100..20000, kms_key_id: binary, snapshot_id: binary, volume_type: :standard | :op1 | :gp2 | :sc1 | :st1]
create_volume_permission :: {group :: binary, user_id :: binary}
create_vpc_opts :: [dry_run: boolean, instance_tenancy: :default | :dedicated | :host]
datetime :: {calendar :: term, day :: term, hour :: term, millisecond :: term, minute :: term, month :: term, second :: term, timezone :: term, year :: term}
delete_key_pair_opts :: [{:dry_run, boolean}]
delete_snapshot_opts :: [{:dry_run, boolean} | {:snapshot_id}]
delete_subnet_opts :: [{:dry_run, boolean}]
delete_tags_opts :: [dry_run: boolean, tags: [{:tag_1, tag}, ...]]
delete_volume_opts :: [{:dry_run, boolean}]
delete_vpc_opts :: [{:dry_run, boolean}]
deregister_image_opts :: [{:dry_run, boolean}]
describe_account_attributes_opts :: [[{:attributes_name_1, [:supported_platforms | :default_vpc]}, ...] | {:dry_run, boolean}]
describe_availability_zones_filters :: message :: binary | region_name :: binary | state :: availability_zone_states | zone_name :: binary
describe_availability_zones_opts :: [{:dry_run, boolean} | [{:filter_1, describe_availability_zones_filters}, ...] | [{:zone_name_1, [binary]}, ...]]
describe_bundle_tasks_filters :: bundle_id :: binary | error_code :: binary | error_message :: binary | instance_id :: binary | progress :: binary | s3_bucket :: binary | s3_prefix :: binary | start_time :: binary | state :: bundle_instance_states | update_time :: binary
describe_bundle_tasks_opts :: [[{:bundle_id_1, [binary]}, ...] | {:dry_run, boolean} | [{:filter_1, describe_bundle_tasks_filters}, ...]]
describe_id_format_opts :: [{:resource, binary}]
describe_image_attribute_opts :: [{:dry_run, boolean}]
describe_images_filters :: architecture :: (:i386 | :x86_64) | block_device_mapping_delete_on_termination :: boolean | block_device_mapping_device_name :: binary | block_device_mapping_snapshot_id :: binary | block_device_mapping_volume_size :: integer | block_device_mapping_volume_type :: (:gp2 | :io1 | :st1 | :sc1 | :standard) | description :: binary | hypervisor :: (:ovm | :xen) | image_id :: binary | image_type :: (:machine | :kernel | :ramdisk) | is_public :: boolean | kernel_id :: binary | manifest_location :: binary | name :: binary | owner_alias :: binary | platform :: (binary | :windows) | product_code :: binary | product_code_type :: (:devpay | :marketplace) | ramdisk_id :: binary | root_device_name :: binary | root_device_type :: (:ebs | :instance_store) | state :: (:available | :pending | :failed) | state_reason_code :: binary | state_reason_message :: binary | tag :: tag_key <> tag_value | tag_key :: binary | tag_value :: binary | virtualization_type :: :paravirtual | :hvm
describe_images_opts :: [{:dry_run, boolean} | [{:executable_by_1, [binary]}, ...] | [{:filter_1, describe_images_filters}, ...] | [{:image_id_1, [binary]}, ...] | [{:owner_1, [binary]}, ...]]
describe_instance_attribute_opts :: [attribte: attributes, dry_run: boolean, intance_id: boolean]
describe_instance_status_filters :: availability_zone :: binary | event_code :: event_codes | event_description :: binary | event_not_after :: binary | event_not_before :: binary | instance_state_code :: integer | instance_state_name :: instance_state_names | instance_status_reachability :: (:passed | :failed | :initializing | :insufficient_data) | instance_status_status :: (:ok | :impaired | :initializing | :insufficient_data | :not_applicable) | system_status_reachability :: (:passed | :failed | :initializing | :insufficient_data) | system_status_status :: :ok | :impaired | :initializing | :insufficient_data | :not_applicable
describe_instance_status_opts :: [{:dry_run, boolean} | [{:filter_1, describe_instance_status_filters}, ...] | [{:instance_1, [binary]}, ...] | {:include_all_instances, boolean} | {:max_results, integer} | {:next_token, binary}]
describe_instances_filters :: affinity :: (:default | :host) | architecture :: (:i386 | :x86_64) | availability_zone :: binary | block_device_mapping_attach_time :: binary | block_device_mapping_delete_on_termination :: boolean | block_device_mapping_device_name :: binary | block_device_mapping_status :: (:attaching | :attached | :detaching | :detached) | block_device_mapping_volume_id :: binary | client_token :: binary | dns_name :: binary | group_id :: binary | group_name :: binary | host_id :: binary | hypervisor :: (:ovm | :xen) | iam_instance_profile_arn :: binary | image_id :: binary | instance_id :: binary | instance_lifecycle :: binary | instance_state_code :: integer | instance_state_name :: (:pending | :running | :shutting_down | :terminated | :stopping | :stopped) | instance_type :: binary | instance_group_id :: binary | instance_group_name :: binary | ip_address :: binary | kernel_id :: binary | key_name :: binary | launch_index :: (pos_integer | 0) | launch_time :: binary | monitoring_state :: (:disabled | :enabled) | owner_id :: binary | placement_group_name :: binary | platform :: (binary | :windows) | private_dns_name :: binary | private_ip_address :: binary | product_code :: binary | product_code_type :: (:devpay | :marketplace) | ramdisk_id :: binary | reason :: binary | requester_id :: binary | reservation_id :: binary | root_device_name :: binary | root_device_type :: binary | source_dest_check :: binary | spot_instance_request_id :: binary | state_reason_code :: binary | state_reason_message :: binary | subnet_id :: binary | tag :: tag_key <> tag_value | tag_key :: binary | tag_value :: binary | tenancy :: (:default | :default | :host) | virtualization_type :: (:paravirtual | :hvm) | vpc_id :: binary | network_interface_description :: binary | network_interface_subnet_id :: binary | network_interface_vpc_id :: binary | network_interface_network_interface_id :: binary | network_interface_owner_id :: binary | network_interface_availability_zone :: binary | network_interface_requester_id :: binary | network_interface_requester_managed :: binary | network_interface_status :: (:available | :in_use) | network_interface_mac_address :: binary | network_interface_private_dns_name :: binary | network_interface_source_dest_check :: binary | network_interface_group_id :: binary | network_interface_group_name :: binary | network_interface_attachment_attachment_id :: binary | network_interface_attachment_instance_id :: binary | network_interface_attachment_instance_owner_id :: binary | network_interface_addresses_private_ip_address :: binary | network_interface_attachment_device_index :: binary | network_interface_attachment_status :: (:attaching | :attached | :detaching | :detached) | network_interface_attachment_attach_time :: binary | network_interface_attachment_delete_on_termination :: boolean | network_interface_addresses_primary :: binary | network_interface_addresses_association_public_ip :: binary | network_interface_addresses_association_ip_owner_id :: binary | association_public_ip :: binary | association_allocation_id :: binary | association_association_id :: binary
describe_instances_opts :: [{:dry_run, boolean} | [{:filter_1, describe_instances_filters}, ...] | [{:instance_1, [binary]}, ...] | {:max_results, integer} | {:next_token, binary}]
describe_key_pairs_filters :: fingerprint :: binary | key_name :: binary
describe_key_pairs_opts :: [{:dry_run, boolean} | [{:filter_1, describe_key_pairs_filters}, ...] | [{:key_name_1, [binary]}, ...]]
describe_regions_filters :: endpoint :: binary | region_name :: binary
describe_regions_opts :: [{:dry_run, boolean} | [{:filter_1, describe_regions_filters}, ...] | [{:region_name_1, [binary]}, ...]]
describe_security_groups_filters :: description :: binary | egress_ip_permission_prefix_list_id :: binary | group_id :: binary | group_name :: binary | ip_permission_cidr :: binary | ip_permission_from_port :: pos_integer | ip_permission_group_id :: binary | ip_permission_protocol :: (:tcp | :udp | :icmp | integer) | ip_permission_to_port :: pos_integer | ip_permission_user_id :: binary | owner_id :: binary | tag_key :: binary | tag_value :: binary | vpc_id :: binary
describe_security_groups_opts :: [{:dry_run, boolean} | [{:filter_1, describe_security_groups_filters}, ...] | [{:group_id_1, [binary]}, ...] | [{:group_name_1, [binary]}, ...]]
describe_snapshot_attribute_opts :: [{:dry_run, boolean}]
describe_snapshots_filters :: description :: binary | owner_alias :: binary | owner_id :: binary | progress :: binary | snapshot_id :: binary | start_time :: binary | status :: (:pending | :completed | :error) | tag :: tag_key <> tag_value | tag_key :: binary | tag_value :: binary | volume_id :: binary | volume_size :: pos_integer
describe_snapshots_opts :: [{:dry_run, boolean} | [{:filter_1, describe_snapshots_filters}, ...] | {:max_results, integer} | {:next_token, binary} | [{:owner_1, [binary]}, ...] | [{:restorable_by_1, [binary]}, ...] | [{:snapshot_id_1, [binary]}, ...]]
describe_subnets_filters :: availability_zone :: binary | available_ip_address_count :: integer | cidr_block :: binary | default_for_az :: boolean | state :: (:pending | :available) | subnet_id :: binary | tag :: tag_key <> tag_value | tag_key :: binary | tag_value :: binary | vpc_id :: binary
describe_subnets_opts :: [{:dry_run, boolean} | [{:filter_1, describe_subnets_filters}, ...] | [{:subnet_id_1, [binary]}, ...]]
describe_tags_filters :: key :: binary | resource_id :: binary | resource_type :: resource_types | value :: binary
describe_tags_opts :: [{:dry_run, boolean} | [{:filter_1, describe_tags_filters}, ...] | {:max_results, integer} | {:next_token, binary}]
describe_volume_attribute_opts :: [attribute: :auto_enable_io | :product_codes, dry_run: boolean]
describe_volume_status_filters :: action_code :: binary | action_description :: binary | action_event_id :: binary | availability_zone :: binary | event_description :: binary | event_event_id :: binary | event_event_type :: binary | event_not_after :: binary | event_not_before :: binary | volume_status_details_name :: binary | volume_status_details_status :: binary | volume_status_status :: binary
describe_volume_status_opts :: [{:dry_run, boolean} | [{:filter_1, describe_volume_status_filters}, ...] | {:max_results, integer} | {:next_token, binary} | [{:volume_id_1, [binary]}, ...]]
describe_volumes_filters :: attachment_attach_time :: binary | attachment_delete_on_termination :: boolean | attachment_device :: binary | attacment_instance_id :: binary | attacment_status :: (:attaching | :attached | :detaching | :detached) | availability_zone :: binary | create_time :: binary | encrypted :: boolean | size :: pos_integer | snapshot_id :: binary | status :: (:created | :available | :in_use | :deleting | :deleted | :error) | tag :: tag_key <> tag_value | tag_key :: binary | tag_value :: binary | volume_id :: binary | volume_type :: :gp2 | :io1 | :st1 | :sc1 | :standard
describe_volumes_opts :: [{:dry_run, boolean} | [{:filter_1, describe_volumes_filters}, ...] | {:max_results, integer} | {:next_token, binary} | [{:volume_id_1, [binary]}, ...]]
describe_vpc_attribute_opts :: [{:dry_run, boolean}]
describe_vpcs_filters :: cidr :: binary | dhcp_options_id :: binary | is_default :: binary | state :: (:pending | :available) | tag :: tag_key <> tag_value | tag_key :: binary | tag_value :: binary | vpc_id :: binary
describe_vpcs_opts :: [{:dry_run, boolean} | [{:filter_1, describe_vpcs_filters}, ...] | [{:vpc_id_1, [binary]}, ...]]
detach_volume_opts :: [dry_run: boolean, device: binary, force: boolean, instance_id: binary]
ebs_block_device :: {delete_on_termination :: boolean, encrypted :: boolean, iops :: io1_volume_iops_range | gp2_volume_iops_range, snapshot_id :: binary, volume_size :: integer, volume_type :: :standard | :io1 | :gp2 | :sc1 | :st1}
ebs_instance_block_device_specification :: {delete_on_termination :: boolean, volume_id :: binary}
enable_volume_io_opts :: [{:dry_run, boolean}]
event_codes ::
  :instance_reboot |
  :system_reboot |
  :system_maintenance |
  :instance_retirement |
  :instance_stop
filter :: {name :: binary, value :: [binary]}
get_console_output_opts :: [{:dry_run, boolean}]
get_password_data_opts :: [{:dry_run, boolean}]
gp2_size_range :: 1..16384
gp2_volume_iops_range :: 100..10000
iam_instance_profile :: {arn :: binary, name :: binary}
import_key_pair_opts :: [{:dry_run, boolean}]
instance_block_device_mapping_specification :: {device_name :: binary, ebs :: ebs_instance_block_device_specification, no_device :: binary, virtual_name :: binary}
instance_network_interface_specification :: {associate_public_ip_address :: boolean, delete_on_termination :: boolean, description :: binary, device_index :: integer, security_group_id :: [binary], network_interface_id :: binary, private_ip_address :: binary, private_ip_address_set :: [private_ip_address_specification], secondary_private_ip_address_count :: integer, subnet_id :: binary}
instance_state_names ::
  :pending |
  :running |
  :shutting_down |
  :terminated |
  :stopping |
  :stopped
instance_types :: [:t1_micro | :m1_small | :m1_medium | :m1_large | :m1_xlarge | :m3_medium | :m3_large | :m3_xlarge | :m3_2xlarge | :m4_large | :m4_xlarge | :m4_2xlarge | :m4_4xlarge | :m4_10xlarge | :t2_nano | :t2_micro | :t2_small | :t2_medium | :t2_large | :m2_xlarge | :m2_2xlarge | :m2_4xlarge | :cr1_8xlarge | :i2_xlarge | :i2_2xlarge | :i2_4xlarge | :i2_8xlarge | :hi1_4xlarge | :hs1_8xlarge | :c1_medium | :c1_xlarge | :c3_large | :c3_xlarge | :c3_2xlarge | :c3_4xlarge | :c3_8xlarge | :c4_large | :c4_xlarge | :c4_2xlarge | :c4_4xlarge | :c4_8xlarge | :cc1_4xlarge | :cc2_8xlarge | :g2_2xlarge | :g2_8xlarge | :cg1_4xlarge | :r3_large | :r3_xlarge | :r3_2xlarge | :r3_4xlarge | :r3_8xlarge | :d2_xlarge | :d2_2xlarge | :d2_4xlarge | :d2_8xlarge]
io1_size_range :: 4..16384
io1_volume_iops_range :: 100..20000
ip_permission :: {from_port :: pos_integer, ip_protocol :: :tcp | :udp | :icmp | integer, ip_ranges :: ip_range, prefix_list_ids :: [prefix_list_id], to_port :: pos_integer, groups :: [user_id_group_pair]}
ip_range :: cidr_ip :: binary
launch_permission :: {group :: binary, user_id :: binary}
modify_image_attribute_opts :: [{:attribute, binary} | {:description, attribute_value} | {:dry_run, boolean} | {:launch_permission, launch_permission_modifications} | {:operation_type, :add | :remove} | [{:product_code_1, :add | :remove}, ...] | [{:user_group_1, [binary]}, ...] | {:value, binary}]
modify_instance_attribute_opts :: [{:attribute, attributes} | [{:block_device_mapping_1, [instance_block_device_mapping_specification]}, ...] | {:disable_api_termination, attribute_boolean_value} | {:dry_run, boolean} | {:ebs_optimized, attribute_boolean_value} | [{:group_id_1, [binary]}, ...] | {:instance_initiated_shutdown_behavior, attribute_value} | {:kernel, attribute_value} | {:ramdisk, attribute_value} | {:source_dest_check, attribute_boolean_value} | {:sriov_net_support, attribute_value} | {:user_data, attribute_value} | {:value, binary}]
modify_snapshot_attribute_opts :: [{:attribute, :product_codes | :create_volume_permission} | {:create_volume_permission, create_volume_permission_modifications} | {:dry_run, boolean} | [{:user_group_1, [binary]}, ...] | {:operation_type, :add | :remove} | [{:user_id_1, [binary]}, ...]]
modify_subnet_attribute_opts :: [{:map_public_ip_on_launch, attribute_boolean_value}]
modify_volume_attribute_opts :: [auto_enable_io: attribute_boolean_value, dry_run: boolean]
modify_vpc_attribute_opts :: [enable_dns_hostnames: attribute_boolean_value, enable_dns_support: attribute_boolean_value]
monitor_instances_opts :: [{:dry_run, boolean} | [{:instance_id_1, [binary]}, ...]]
placement :: {affinity :: binary, availability_zone :: binary, group_name :: binary, host_id :: binary, tenancy :: :default | :dedicated | :host}
prefix_list_id :: prefix_list_id :: binary
private_ip_address_specification :: {private_ip_address :: boolean, private_ip_address :: binary}
reason_code ::
  :instance_stuck_in_state |
  :unresponsive |
  :not_accepting_credentials |
  :password_not_available |
  :performance_network |
  :performance_instance_store |
  :perforamce_ebs_volume |
  :performance_other |
  :other
reboot_instances_opts :: [{:dry_run, boolean} | [{:instance_id_1, [binary]}, ...]]
register_image_opts :: [{:architecture, :i386 | :x86_64} | [{:block_device_mapping_1, block_device_mapping_list}, ...] | {:description, binary} | {:dry_run, boolean} | {:image_location, binary} | {:kernel_id, binary} | {:ram_disk_id, binary} | {:root_device_name, binary} | {:sriov_net_support, binary} | {:virtualization_type, binary}]
report_instance_status_opts :: [{:description, binary} | {:dry_run, boolean} | {:end_time, datetime} | [{:instance_id_1, [binary]}, ...] | [{:reason_code_1, reason_code}, ...] | {:start_time, datetime} | {:status, :ok | :impaired}]
reset_image_attribute_opts :: [{:dry_run, boolean}]
reset_instance_attribute_opts :: [{:dry_run, boolean}]
reset_snapshot_attribute_opts :: [{:dry_run, boolean}]
resource_types ::
  :customer_gateway |
  :dhcp_options |
  :image |
  :instance |
  :internet_gateway |
  :network_acl |
  :network_interface |
  :reserved_instance |
  :route_table |
  :security_group |
  :snapshot |
  :spot_instance_request |
  :subnet |
  :volume |
  :vpc |
  :vpn_connection |
  :vpn_gateway
revoke_security_group_egress_opts :: [{:cidr_ip, binary} | {:dry_run, boolean} | {:from_port, integer} | {:group_name, binary} | [{:ip_permissions_1, [ip_permission]}, ...] | {:ip_protocol, binary} | {:source_security_group_name, binary} | {:source_security_group_owner_id, binary} | {:to_port, integer}]
revoke_security_group_ingress_opts :: [{:cidr_ip, binary} | {:dry_run, boolean} | {:from_port, integer} | {:group_id, binary} | {:group_name, binary} | [{:ip_permissions_1, [ip_permission]}, ...] | {:ip_protocol, binary} | {:source_security_group_name, binary} | {:source_security_group_owner_id, binary} | {:to_port, integer}]
run_instances_monitoring_enabled :: enabled :: boolean
run_instances_opts :: [{:additional_info, binary} | [{:block_device_mapping_1, block_device_mapping_list}, ...] | {:client_token, binary} | {:disable_api_termination, boolean} | {:dry_run, boolean} | {:ebs_optimized, boolean} | {:iam_instance_profile, iam_instance_profile} | {:instance_initiated_shutdown_behavior, :stop | :terminate} | {:instance_type, instance_types} | {:kernel_id, binary} | {:key_name, binary} | {:monitoring, run_instances_monitoring_enabled} | [{:network_interface_1, [instance_network_interface_specification]}, ...] | {:placement, placement} | {:private_ip_address, binary} | {:ram_disk_id, binary} | [{:security_group_id_1, [binary]}, ...] | [{:security_group_1, [binary]}, ...] | {:user_data, binary}]
s3_storage :: {aws_access_key_id :: binary, bucket :: binary, prefix :: binary, upload_policy :: binary, upload_policy_signature :: Base.url_encode64(binary)}
sc1_size_range :: 500..16384
st1_size_range :: 500..16384
standard_size_range :: 1..1024
start_instances_opts :: [{:additional_info, binary} | {:dry_run, boolean} | [{:instance_id_1, [binary]}, ...]]
stop_instances_opts :: [{:dry_run, boolean} | {:force, boolean} | [{:instance_id_1, [binary]}, ...]]
tag :: {key :: binary, value :: binary}
terminate_instances_opts :: [{:dry_run, boolean} | [{:instance_id_1, [binary]}, ...]]
unmonitor_instances_opts :: [{:dry_run, boolean} | [{:instance_id_1, [binary]}, ...]]
user_id_group_pair :: {group_id :: binary, group_name :: binary, peering_status :: binary, user_id :: binary, vpc_id :: binary, vpc_peering_connection_id :: binary}

Functions

attach_volume(instance_id, volume_id, device, opts \\ [])

Specs

attach_volume(instance_id :: binary, volume_id :: binary, device :: binary, opts :: attach_volume_opts) :: ExAws.Operation.RestQuery.t

Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name.

authorize_security_group_egress(group_id, opts \\ [])

Specs

authorize_security_group_egress(group_id :: binary, opts :: authorize_security_group_egress_opts) :: ExAws.Operation.RestQuery.t

Adds one or more egress rules to a security group for use with a VPC.

authorize_security_group_ingress(opts \\ [])

Specs

authorize_security_group_ingress(opts :: authorize_security_group_ingress_opts) :: ExAws.Operation.RestQuery.t

Adds one or more ingress rules to a security group.

bundle_instance(instance_id, arg, opts \\ [])

Specs

bundle_instance(instance_id :: binary, s3_storage, opts :: bundle_instance_opts) :: ExAws.Operation.RestQuery.t

Bundles an Amazon instance store-backed Windows instance. During bundling, only the root device volume (C:) is bundled. Data on other instance store volumes is not preserved.

cancel_bundle_task(bundle_id, opts \\ [])

Specs

cancel_bundle_task(bundle_id :: binary, opts :: cancel_bundle_task_opts) :: ExAws.Operation.RestQuery.t

Cancels a bundling operation for an instance store-backed Windows instance.

copy_image(name, source_image_id, source_region, opts \\ [])

Specs

copy_image(name :: binary, source_image_id :: binary, source_region :: binary, opts :: copy_image_opts) :: ExAws.Operation.RestQuery.t

Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request.

copy_snapshot(source_snapshot_id, source_region, opts \\ [])

Specs

copy_snapshot(source_snapshot_id :: binary, source_region :: binary, opts :: copy_snapshot_opts) :: ExAws.Operation.RestQuery.t

Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same region or from one region to another.

create_image(instance_id, name, opts \\ [])

Specs

create_image(instance_id :: binary, name :: binary, opts :: create_image_opts) :: ExAws.Operation.RestQuery.t

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped.

create_key_pair(key_name, opts \\ [])

Specs

create_key_pair(key_name :: binary, opts :: create_key_pair_opts) :: ExAws.Operation.RestQuery.t

Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#8 private key.

create_security_group(group_name, group_description, opts \\ [])

Specs

create_security_group(group_name :: binary, group_description :: binary, opts :: create_security_group_opts) :: ExAws.Operation.RestQuery.t

Creates a security group.

create_snapshot(volume_id, opts \\ [])

Specs

create_snapshot(volume_id :: binary, opts :: create_snapshot_opts) :: ExAws.Operation.RestQuery.t

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance.

create_subnet(vpc_id, cidr_block, opts \\ [])

Specs

create_subnet(vpc_id :: binary, cidr_block :: binary, opts :: create_subnet_opts) :: ExAws.Operation.RestQuery.t

Creates a subnet in an existing VPC.

create_tags(resource_ids, tags, opts \\ [])

Specs

create_tags(resource_ids :: [binary], tags :: [tag], opts :: create_tags_opts) :: ExAws.Operation.RestQuery.t

Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 10 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource.

create_volume(availability_zone, size, opts \\ [])

Specs

create_volume(availability_zone :: binary, size :: available_size_ranges, opts :: create_volume_opts) :: ExAws.Operation.RestQuery.t

Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to.

create_vpc(cidr_block, opts \\ [])

Specs

create_vpc(cidr_block :: binary, opts :: create_vpc_opts) :: ExAws.Operation.RestQuery.t

Creates a VPC with the specified CIDR block.

delete_key_pair(key_name, opts \\ [])

Specs

delete_key_pair(key_name :: binary, opts :: delete_key_pair_opts) :: ExAws.Operation.RestQuery.t

Deletes the specified key pair, by removing the public key from Amazon EC2.

delete_snapshot(snapshot_id, opts \\ [])

Specs

delete_snapshot(snapshot_id :: binary, opts :: delete_snapshot_opts) :: ExAws.Operation.RestQuery.t

Deletes the specified snapshot.

delete_subnet(subnet_id, opts \\ [])

Specs

delete_subnet(subnet_id :: binary, opts :: delete_subnet_opts) :: ExAws.Operation.RestQuery.t

Deletes the specified subnet.

delete_tags(resource_ids, opts \\ [])

Specs

delete_tags(resource_ids :: [binary], opts :: delete_tags_opts) :: ExAws.Operation.RestQuery.t

Deletes the specified set of tags from the specified set of resources.

delete_volume(volume_id, opts \\ [])

Specs

delete_volume(volume_id :: binary, opts :: delete_volume_opts) :: ExAws.Operation.RestQuery.t

Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance).

delete_vpc(vpc_id, opts \\ [])

Specs

delete_vpc(vpc_id :: binary, opts :: delete_vpc_opts) :: ExAws.Operation.RestQuery.t

Deletes the specified VPC.

deregister_image(image_id, opts \\ [])

Specs

deregister_image(image_id :: binary, opts :: deregister_image_opts) :: ExAws.Operation.RestQuery.t

Deregisters the specified AMI. After you deregister an AMI, it can’t be used to launch new instances.

describe_account_attributes(opts \\ [])

Specs

describe_account_attributes(opts :: describe_account_attributes_opts) :: ExAws.Operation.RestQuery.t

Describes attributes of your AWS account.

describe_availability_zones(opts \\ [])

Specs

describe_availability_zones(opts :: describe_availability_zones_opts) :: ExAws.Operation.RestQuery.t

Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you’re currently using.

describe_bundle_tasks(opts \\ [])

Specs

describe_bundle_tasks(opts :: describe_bundle_tasks_opts) :: ExAws.Operation.RestQuery.t

Describes one or more of your bundling tasks.

describe_id_format(opts \\ [])

Specs

describe_id_format(opts :: describe_id_format_opts) :: ExAws.Operation.RestQuery.t

Describes the ID format settings for your resources on a per-region basis, for example, to view which resource types are enabled for longer IDs.

describe_image_attribute(image_id, attribute, opts \\ [])

Specs

describe_image_attribute(image_id :: binary, attribute :: binary, opts :: describe_image_attribute_opts) :: ExAws.Operation.RestQuery.t

Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.

describe_images(opts \\ [])

Specs

Describes one or more of the images (AMIs, AKIs, and ARIs) available to you.

describe_instance_attribute(instance_id, attribute, opts \\ [])

Specs

describe_instance_attribute(instance_id :: binary, attribute :: binary, opts :: describe_instance_attribute_opts) :: ExAws.Operation.RestQuery.t

Describes the specified attribute of the specified instance. You can specify only one attribute at a time.

describe_instance_status(opts \\ [])

Specs

describe_instance_status(opts :: describe_instance_status_opts) :: ExAws.Operation.RestQuery.t

Describes the status of one or more instances. By default, only running instances are described, unless specified otherwise.

describe_instances(opts \\ [])

Specs

describe_instances(opts :: describe_instances_opts) :: ExAws.Operation.RestQuery.t

Describes one or more of your instances.

describe_key_pairs(opts \\ [])

Specs

describe_key_pairs(opts :: describe_key_pairs_opts) :: ExAws.Operation.RestQuery.t

Describes one or more of your key pairs.

describe_regions(opts \\ [])

Specs

describe_regions(opts :: describe_regions_opts) :: ExAws.Operation.RestQuery.t

Describes one or more regions that are currently available to you.

describe_security_groups(opts \\ [])

Specs

describe_security_groups(opts :: describe_security_groups_opts) :: ExAws.Operation.RestQuery.t

Describes one or more of your security groups.

describe_snapshot_attribute(snapshot_id, attribute, opts \\ [])

Specs

describe_snapshot_attribute(snapshot_id :: binary, attribute :: binary, opts :: describe_snapshot_attribute_opts) :: ExAws.Operation.RestQuery.t

Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time.

describe_snapshots(opts \\ [])

Specs

describe_snapshots(opts :: describe_snapshots_opts) :: ExAws.Operation.RestQuery.t

Describes one or more of the EBS snapshots available to you.

describe_subnets(opts \\ [])

Specs

describe_subnets(opts :: describe_subnets_opts) :: ExAws.Operation.RestQuery.t

Describes one or more of your subnets.

describe_tags(opts \\ [])

Specs

Describes one or more of the tags for your EC2 resources.

describe_volume_attribute(volume_id, opts \\ [])

Specs

describe_volume_attribute(volume_id :: binary, opts :: describe_volume_attribute_opts) :: ExAws.Operation.RestQuery.t

Describes the specified attribute of the specified volume. You can specify only one attribute at a time.

describe_volume_status(opts \\ [])

Specs

describe_volume_status(opts :: describe_volume_status_opts) :: ExAws.Operation.RestQuery.t

Describes the status of the specified volumes.

describe_volumes(opts \\ [])

Specs

describe_volumes(opts :: describe_volumes_opts) :: ExAws.Operation.RestQuery.t

Describes the specified EBS volumes.

describe_vpc_attribute(vpc_id, attribute, opts \\ [])

Specs

describe_vpc_attribute(vpc_id :: binary, attribute :: binary, opts :: describe_vpc_attribute_opts) :: ExAws.Operation.RestQuery.t

Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

describe_vpcs(opts \\ [])

Specs

Describes one or more of your VPCs.

detach_volume(volume_id, opts \\ [])

Specs

detach_volume(volume_id :: binary, opts :: detach_volume_opts) :: ExAws.Operation.RestQuery.t

Detaches an EBS volume from an instance.

enable_volume_io(volume_id, opts \\ [])

Specs

enable_volume_io(volume_id :: binary, opts :: enable_volume_io_opts) :: ExAws.Operation.RestQuery.t

Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.

get_console_output(instance_id, opts \\ [])

Specs

get_console_output(instance_id :: binary, opts :: get_console_output_opts) :: ExAws.Operation.RestQuery.t

Gets the console output for the specified instance.

get_password_data(instance_id, opts \\ [])

Specs

get_password_data(instance_id :: binary, opts :: get_password_data_opts) :: ExAws.Operation.RestQuery.t

Retrieves the encrypted administrator password for an instance running Windows.

import_key_pair(key_name, public_key_material, opts \\ [])

Specs

import_key_pair(key_name :: binary, public_key_material :: binary, opts :: import_key_pair_opts) :: ExAws.Operation.RestQuery.t

Imports the public key from an RSA key pair that you created with a third-party tool.

modify_id_format(resource, use_long_ids)

Specs

modify_id_format(resource :: binary, use_long_ids :: boolean) :: ExAws.Operation.RestQuery.t

Modifies the ID format for the specified resource on a per-region basis.

modify_image_attribute(image_id, opts \\ [])

Specs

modify_image_attribute(image_id :: binary, opts :: modify_image_attribute_opts) :: ExAws.Operation.RestQuery.t

Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time.

modify_instance_attribute(instance_id, opts \\ [])

Specs

modify_instance_attribute(instance_id :: binary, opts :: modify_instance_attribute_opts) :: ExAws.Operation.RestQuery.t

Modifies the specified attribute of the specified instance. You can specify only one attribute at a time.

modify_snapshot_attribute(snapshot_id, opts \\ [])

Specs

modify_snapshot_attribute(snapshot_id :: binary, opts :: modify_snapshot_attribute_opts) :: ExAws.Operation.RestQuery.t

Adds or removes permission settings for the specified snapshot.

modify_subnet_attribute(subnet_id, opts \\ [])

Specs

modify_subnet_attribute(subnet_id :: binary, opts :: modify_subnet_attribute_opts) :: ExAws.Operation.RestQuery.t

Modifies a subnet attribute.

modify_volume_attribute(volume_id, opts \\ [])

Specs

modify_volume_attribute(volume_id :: binary, opts :: modify_volume_attribute_opts) :: ExAws.Operation.RestQuery.t

Modifies a volume attribute.

modify_vpc_attribute(vpc_id, opts \\ [])

Specs

modify_vpc_attribute(vpc_id :: binary, opts :: modify_vpc_attribute_opts) :: ExAws.Operation.RestQuery.t

Modifies the specified attribute of the specified VPC.

monitor_instances(instance_ids, opts \\ [])

Specs

monitor_instances(instance_ids :: [binary], opts :: monitor_instances_opts) :: ExAws.Operation.RestQuery.t

Enables monitoring for a running instance.

reboot_instances(instance_ids, opts \\ [])

Specs

reboot_instances(instance_ids :: [binary], opts :: reboot_instances_opts) :: ExAws.Operation.RestQuery.t

Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances.

register_image(name, opts \\ [])

Specs

register_image(name :: binary, opts :: register_image_opts) :: ExAws.Operation.RestQuery.t

Registers an AMI. When you’re creating an AMI, this is the final step you must complete before you can launch an instance from the AMI.

report_instance_status(instance_ids, status, opts \\ [])

Specs

report_instance_status(instance_ids :: [binary], status :: binary, opts :: report_instance_status_opts) :: ExAws.Operation.RestQuery.t

Submits feedback about the status of an instance. The instance must be in the running state.

reset_image_attribute(image_id, attribute, opts \\ [])

Specs

reset_image_attribute(image_id :: binary, attribute :: binary, opts :: reset_image_attribute_opts) :: ExAws.Operation.RestQuery.t

Resets an attribute of an AMI to its default value.

reset_instance_attribute(instance_id, attribute, opts \\ [])

Specs

reset_instance_attribute(instance_id :: binary, attribute :: binary, opts :: reset_instance_attribute_opts) :: ExAws.Operation.RestQuery.t

Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the SourceDestCheck, the instance can be either running or stopped.

reset_snapshot_attribute(snapshot_id, attribute, opts \\ [])

Specs

reset_snapshot_attribute(snapshot_id :: binary, attribute :: binary, opts :: reset_snapshot_attribute_opts) :: ExAws.Operation.RestQuery.t

Resets permission settings for the specified snapshot.

revoke_security_group_egress(group_id, opts \\ [])

Specs

revoke_security_group_egress(group_id :: binary, opts :: revoke_security_group_egress_opts) :: ExAws.Operation.RestQuery.t

Removes one or more egress rules from a security group for EC2-VPC.

revoke_security_group_ingress(opts \\ [])

Specs

revoke_security_group_ingress(opts :: revoke_security_group_ingress_opts) :: ExAws.Operation.RestQuery.t

Removes one or more ingress rules from a security group. The values that you specify in the revoke request (for example, ports) must match the existing rule’s values for the rule to be removed.

run_instances(image_id, max, min, opts \\ [])

Specs

run_instances(image_id :: binary, max :: pos_integer, min :: pos_integer, opts :: run_instances_opts) :: ExAws.Operation.RestQuery.t

Launches the speficied number of instance using an AMI.

start_instances(instance_ids, opts \\ [])

Specs

start_instances(instance_ids :: [binary], opts :: start_instances_opts) :: ExAws.Operation.RestQuery.t

Starts an Amazon EBS-backed AMI that was previously stopped.

stop_instances(instance_ids, opts \\ [])

Specs

stop_instances(instance_ids :: [binary], opts :: stop_instances_opts) :: ExAws.Operation.RestQuery.t

Stops an Amazon EBS-backed AMI that was previously started.

terminate_instances(instance_ids, opts \\ [])

Specs

terminate_instances(instance_ids :: [binary], opts :: terminate_instances_opts) :: ExAws.Operation.RestQuery.t

Shuts down one or more instances. Terminated instances remain visible after termination (for approximately one hour).

unmonitor_instances(instance_ids, opts \\ [])

Specs

unmonitor_instances(instance_ids :: [binary], opts :: unmonitor_instances_opts) :: ExAws.Operation.RestQuery.t

Disables monitoring for a running instance.