# WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing for info on making contributions: # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE require 'seahorse/client/plugins/content_length.rb' require 'aws-sdk-core/plugins/credentials_configuration.rb' require 'aws-sdk-core/plugins/logging.rb' require 'aws-sdk-core/plugins/param_converter.rb' require 'aws-sdk-core/plugins/param_validator.rb' require 'aws-sdk-core/plugins/user_agent.rb' require 'aws-sdk-core/plugins/helpful_socket_errors.rb' require 'aws-sdk-core/plugins/retry_errors.rb' require 'aws-sdk-core/plugins/global_configuration.rb' require 'aws-sdk-core/plugins/regional_endpoint.rb' require 'aws-sdk-core/plugins/response_paging.rb' require 'aws-sdk-core/plugins/stub_responses.rb' require 'aws-sdk-core/plugins/idempotency_token.rb' require 'aws-sdk-core/plugins/signature_v4.rb' require 'aws-sdk-core/plugins/protocols/json_rpc.rb' Aws::Plugins::GlobalConfiguration.add_identifier(:lightsail) module Aws module Lightsail class Client < Seahorse::Client::Base include Aws::ClientStubs @identifier = :lightsail set_api(ClientApi::API) add_plugin(Seahorse::Client::Plugins::ContentLength) add_plugin(Aws::Plugins::CredentialsConfiguration) add_plugin(Aws::Plugins::Logging) add_plugin(Aws::Plugins::ParamConverter) add_plugin(Aws::Plugins::ParamValidator) add_plugin(Aws::Plugins::UserAgent) add_plugin(Aws::Plugins::HelpfulSocketErrors) add_plugin(Aws::Plugins::RetryErrors) add_plugin(Aws::Plugins::GlobalConfiguration) add_plugin(Aws::Plugins::RegionalEndpoint) add_plugin(Aws::Plugins::ResponsePaging) add_plugin(Aws::Plugins::StubResponses) add_plugin(Aws::Plugins::IdempotencyToken) add_plugin(Aws::Plugins::SignatureV4) add_plugin(Aws::Plugins::Protocols::JsonRpc) # @option options [required, Aws::CredentialProvider] :credentials # Your AWS credentials. This can be an instance of any one of the # following classes: # # * `Aws::Credentials` - Used for configuring static, non-refreshing # credentials. # # * `Aws::InstanceProfileCredentials` - Used for loading credentials # from an EC2 IMDS on an EC2 instance. # # * `Aws::SharedCredentials` - Used for loading credentials from a # shared file, such as `~/.aws/config`. # # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role. # # When `:credentials` are not configured directly, the following # locations will be searched for credentials: # # * `Aws.config[:credentials]` # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options. # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'] # * `~/.aws/credentials` # * `~/.aws/config` # * EC2 IMDS instance profile - When used by default, the timeouts are # very aggressive. Construct and pass an instance of # `Aws::InstanceProfileCredentails` to enable retries and extended # timeouts. # @option options [required, String] :region # The AWS region to connect to. The configured `:region` is # used to determine the service `:endpoint`. When not passed, # a default `:region` is search for in the following locations: # # * `Aws.config[:region]` # * `ENV['AWS_REGION']` # * `ENV['AMAZON_REGION']` # * `ENV['AWS_DEFAULT_REGION']` # * `~/.aws/credentials` # * `~/.aws/config` # @option options [String] :access_key_id # @option options [Boolean] :convert_params (true) # When `true`, an attempt is made to coerce request parameters into # the required types. # @option options [String] :endpoint # The client endpoint is normally constructed from the `:region` # option. You should only configure an `:endpoint` when connecting # to test endpoints. This should be avalid HTTP(S) URI. # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default) # The log formatter. # @option options [Symbol] :log_level (:info) # The log level to send messages to the `:logger` at. # @option options [Logger] :logger # The Logger instance to send log messages to. If this option # is not set, logging will be disabled. # @option options [String] :profile ("default") # Used when loading credentials from the shared credentials file # at HOME/.aws/credentials. When not specified, 'default' is used. # @option options [Integer] :retry_limit (3) # The maximum number of times to retry failed requests. Only # ~ 500 level server errors and certain ~ 400 level client errors # are retried. Generally, these are throttling errors, data # checksum errors, networking errors, timeout errors and auth # errors from expired credentials. # @option options [String] :secret_access_key # @option options [String] :session_token # @option options [Boolean] :simple_json (false) # Disables request parameter conversion, validation, and formatting. # Also disable response data type conversions. This option is useful # when you want to ensure the highest level of performance by # avoiding overhead of walking request parameters and response data # structures. # # When `:simple_json` is enabled, the request parameters hash must # be formatted exactly as the DynamoDB API expects. # @option options [Boolean] :stub_responses (false) # Causes the client to return stubbed responses. By default # fake responses are generated and returned. You can specify # the response data to return or errors to raise by calling # {ClientStubs#stub_responses}. See {ClientStubs} for more information. # # ** Please note ** When response stubbing is enabled, no HTTP # requests are made, and retries are disabled. # @option options [Boolean] :validate_params (true) # When `true`, request parameters are validated before # sending the request. def initialize(*args) super end # @!group API Operations # Allocates a static IP address. # @option params [required, String] :static_ip_name # The name of the static IP address. # @return [Types::AllocateStaticIpResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::AllocateStaticIpResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.allocate_static_ip({ # static_ip_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload allocate_static_ip(params = {}) # @param [Hash] params ({}) def allocate_static_ip(params = {}, options = {}) req = build_request(:allocate_static_ip, params) req.send_request(options) end # Attaches a static IP address to a specific Amazon Lightsail instance. # @option params [required, String] :static_ip_name # The name of the static IP. # @option params [required, String] :instance_name # The instance name to which you want to attach the static IP address. # @return [Types::AttachStaticIpResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::AttachStaticIpResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.attach_static_ip({ # static_ip_name: "ResourceName", # required # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload attach_static_ip(params = {}) # @param [Hash] params ({}) def attach_static_ip(params = {}, options = {}) req = build_request(:attach_static_ip, params) req.send_request(options) end # Closes the public ports on a specific Amazon Lightsail instance. # @option params [required, Types::PortInfo] :port_info # Information about the public port you are trying to close. # @option params [required, String] :instance_name # The name of the instance on which you're attempting to close the # public ports. # @return [Types::CloseInstancePublicPortsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CloseInstancePublicPortsResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.close_instance_public_ports({ # port_info: { # required # from_port: 1, # to_port: 1, # protocol: "tcp", # accepts tcp, all, udp # }, # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload close_instance_public_ports(params = {}) # @param [Hash] params ({}) def close_instance_public_ports(params = {}, options = {}) req = build_request(:close_instance_public_ports, params) req.send_request(options) end # Creates a domain resource for the specified domain (e.g., # example.com). # @option params [required, String] :domain_name # The domain name to manage (e.g., `example.com`). # # You cannot register a new domain name using Lightsail. You must # register a domain name using Amazon Route 53 or another domain name # registrar. If you have already registered your domain, you can enter # its name in this parameter to manage the DNS records for that domain. # # # @return [Types::CreateDomainResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateDomainResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.create_domain({ # domain_name: "DomainName", # required # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload create_domain(params = {}) # @param [Hash] params ({}) def create_domain(params = {}, options = {}) req = build_request(:create_domain, params) req.send_request(options) end # Creates one of the following entry records associated with the domain: # A record, CNAME record, TXT record, or MX record. # @option params [required, String] :domain_name # The domain name (e.g., `example.com`) for which you want to create the # domain entry. # @option params [required, Types::DomainEntry] :domain_entry # An array of key-value pairs containing information about the domain # entry request. # @return [Types::CreateDomainEntryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateDomainEntryResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.create_domain_entry({ # domain_name: "DomainName", # required # domain_entry: { # required # id: "NonEmptyString", # name: "DomainName", # target: "string", # type: "DomainEntryType", # options: { # "DomainEntryOptionsKeys" => "string", # }, # }, # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload create_domain_entry(params = {}) # @param [Hash] params ({}) def create_domain_entry(params = {}, options = {}) req = build_request(:create_domain_entry, params) req.send_request(options) end # Creates a snapshot of a specific virtual private server, or # *instance*. You can use a snapshot to create a new instance that is # based on that snapshot. # @option params [required, String] :instance_snapshot_name # The name for your new snapshot. # @option params [required, String] :instance_name # The Lightsail instance on which to base your snapshot. # @return [Types::CreateInstanceSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateInstanceSnapshotResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.create_instance_snapshot({ # instance_snapshot_name: "ResourceName", # required # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload create_instance_snapshot(params = {}) # @param [Hash] params ({}) def create_instance_snapshot(params = {}, options = {}) req = build_request(:create_instance_snapshot, params) req.send_request(options) end # Creates one or more Amazon Lightsail virtual private servers, or # *instances*. # @option params [required, Array] :instance_names # The names to use for your new Lightsail instances. Separate multiple # values using quotation marks and commas, for example: # `["MyFirstInstance","MySecondInstance"]` # @option params [required, String] :availability_zone # The Availability Zone in which to create your instance. Use the # following format: `us-east-1a` (case sensitive). # @option params [String] :custom_image_name # The name for your custom image. # @option params [required, String] :blueprint_id # The ID for a virtual private server image (e.g., `app_wordpress_4_4` # or `app_lamp_7_0`). Use the get blueprints operation to return a list # of available images (or *blueprints*). # @option params [required, String] :bundle_id # The bundle of specification information for your virtual private # server (or *instance*), including the pricing plan (e.g., # `micro_1_0`). # @option params [String] :user_data # A launch script you can create that configures a server with # additional user data. For example, you might want to run `apt-get –y # update`. # # Depending on the machine image you choose, the command to get software # on your instance varies. Amazon Linux and CentOS use `yum`, Debian and # Ubuntu use `apt-get`, and FreeBSD uses `pkg`. For a complete list, see # the [Dev Guide][1]. # # # # # # [1]: http://lightsail.aws.amazon.com/ls/docs/getting-started/articles/pre-installed-apps # @option params [String] :key_pair_name # The name of your key pair. # @return [Types::CreateInstancesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateInstancesResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.create_instances({ # instance_names: ["string"], # required # availability_zone: "string", # required # custom_image_name: "ResourceName", # blueprint_id: "NonEmptyString", # required # bundle_id: "NonEmptyString", # required # user_data: "string", # key_pair_name: "ResourceName", # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload create_instances(params = {}) # @param [Hash] params ({}) def create_instances(params = {}, options = {}) req = build_request(:create_instances, params) req.send_request(options) end # Uses a specific snapshot as a blueprint for creating one or more new # instances that are based on that identical configuration. # @option params [required, Array] :instance_names # The names for your new instances. # @option params [required, String] :availability_zone # The Availability Zone where you want to create your instances. Use the # following formatting: `us-east-1a` (case sensitive). # @option params [required, String] :instance_snapshot_name # The name of the instance snapshot on which you are basing your new # instances. Use the get instance snapshots operation to return # information about your existing snapshots. # @option params [required, String] :bundle_id # The bundle of specification information for your virtual private # server (or *instance*), including the pricing plan (e.g., # `micro_1_0`). # @option params [String] :user_data # You can create a launch script that configures a server with # additional user data. For example, `apt-get –y update`. # # Depending on the machine image you choose, the command to get software # on your instance varies. Amazon Linux and CentOS use `yum`, Debian and # Ubuntu use `apt-get`, and FreeBSD uses `pkg`. For a complete list, see # the [Dev Guide][1]. # # # # # # [1]: http://lightsail.aws.amazon.com/ls/docs/getting-started/articles/pre-installed-apps # @option params [String] :key_pair_name # The name for your key pair. # @return [Types::CreateInstancesFromSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateInstancesFromSnapshotResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.create_instances_from_snapshot({ # instance_names: ["string"], # required # availability_zone: "string", # required # instance_snapshot_name: "ResourceName", # required # bundle_id: "NonEmptyString", # required # user_data: "string", # key_pair_name: "ResourceName", # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload create_instances_from_snapshot(params = {}) # @param [Hash] params ({}) def create_instances_from_snapshot(params = {}, options = {}) req = build_request(:create_instances_from_snapshot, params) req.send_request(options) end # Creates sn SSH key pair. # @option params [required, String] :key_pair_name # The name for your new key pair. # @return [Types::CreateKeyPairResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateKeyPairResult#key_pair #keyPair} => Types::KeyPair # * {Types::CreateKeyPairResult#public_key_base_64 #publicKeyBase64} => String # * {Types::CreateKeyPairResult#private_key_base_64 #privateKeyBase64} => String # * {Types::CreateKeyPairResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.create_key_pair({ # key_pair_name: "ResourceName", # required # }) # # @example Response structure # resp.key_pair.name #=> String # resp.key_pair.arn #=> String # resp.key_pair.support_code #=> String # resp.key_pair.created_at #=> Time # resp.key_pair.location.availability_zone #=> String # resp.key_pair.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.key_pair.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.key_pair.fingerprint #=> String # resp.public_key_base_64 #=> String # resp.private_key_base_64 #=> String # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload create_key_pair(params = {}) # @param [Hash] params ({}) def create_key_pair(params = {}, options = {}) req = build_request(:create_key_pair, params) req.send_request(options) end # Deletes the specified domain recordset and all of its domain records. # @option params [required, String] :domain_name # The specific domain name to delete. # @return [Types::DeleteDomainResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DeleteDomainResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.delete_domain({ # domain_name: "DomainName", # required # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload delete_domain(params = {}) # @param [Hash] params ({}) def delete_domain(params = {}, options = {}) req = build_request(:delete_domain, params) req.send_request(options) end # Deletes a specific domain entry. # @option params [required, String] :domain_name # The name of the domain entry to delete. # @option params [required, Types::DomainEntry] :domain_entry # An array of key-value pairs containing information about your domain # entries. # @return [Types::DeleteDomainEntryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DeleteDomainEntryResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.delete_domain_entry({ # domain_name: "DomainName", # required # domain_entry: { # required # id: "NonEmptyString", # name: "DomainName", # target: "string", # type: "DomainEntryType", # options: { # "DomainEntryOptionsKeys" => "string", # }, # }, # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload delete_domain_entry(params = {}) # @param [Hash] params ({}) def delete_domain_entry(params = {}, options = {}) req = build_request(:delete_domain_entry, params) req.send_request(options) end # Deletes a specific Amazon Lightsail virtual private server, or # *instance*. # @option params [required, String] :instance_name # The name of the instance to delete. # @return [Types::DeleteInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DeleteInstanceResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.delete_instance({ # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload delete_instance(params = {}) # @param [Hash] params ({}) def delete_instance(params = {}, options = {}) req = build_request(:delete_instance, params) req.send_request(options) end # Deletes a specific snapshot of a virtual private server (or # *instance*). # @option params [required, String] :instance_snapshot_name # The name of the snapshot to delete. # @return [Types::DeleteInstanceSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DeleteInstanceSnapshotResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.delete_instance_snapshot({ # instance_snapshot_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload delete_instance_snapshot(params = {}) # @param [Hash] params ({}) def delete_instance_snapshot(params = {}, options = {}) req = build_request(:delete_instance_snapshot, params) req.send_request(options) end # Deletes a specific SSH key pair. # @option params [required, String] :key_pair_name # The name of the key pair to delete. # @return [Types::DeleteKeyPairResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DeleteKeyPairResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.delete_key_pair({ # key_pair_name: "ResourceName", # required # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload delete_key_pair(params = {}) # @param [Hash] params ({}) def delete_key_pair(params = {}, options = {}) req = build_request(:delete_key_pair, params) req.send_request(options) end # Detaches a static IP from the Amazon Lightsail instance to which it is # attached. # @option params [required, String] :static_ip_name # The name of the static IP to detach from the instance. # @return [Types::DetachStaticIpResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DetachStaticIpResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.detach_static_ip({ # static_ip_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload detach_static_ip(params = {}) # @param [Hash] params ({}) def detach_static_ip(params = {}, options = {}) req = build_request(:detach_static_ip, params) req.send_request(options) end # Downloads the default SSH key pair from the user's account. # @return [Types::DownloadDefaultKeyPairResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DownloadDefaultKeyPairResult#public_key_base_64 #publicKeyBase64} => String # * {Types::DownloadDefaultKeyPairResult#private_key_base_64 #privateKeyBase64} => String # # @example Request syntax with placeholder values # resp = client.download_default_key_pair() # # @example Response structure # resp.public_key_base_64 #=> String # resp.private_key_base_64 #=> String # @overload download_default_key_pair(params = {}) # @param [Hash] params ({}) def download_default_key_pair(params = {}, options = {}) req = build_request(:download_default_key_pair, params) req.send_request(options) end # Returns the names of all active (not deleted) resources. # @option params [String] :page_token # A token used for paginating results from your get active names # request. # @return [Types::GetActiveNamesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetActiveNamesResult#active_names #activeNames} => Array<String> # * {Types::GetActiveNamesResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_active_names({ # page_token: "string", # }) # # @example Response structure # resp.active_names #=> Array # resp.active_names[0] #=> String # resp.next_page_token #=> String # @overload get_active_names(params = {}) # @param [Hash] params ({}) def get_active_names(params = {}, options = {}) req = build_request(:get_active_names, params) req.send_request(options) end # Returns the list of available instance images, or *blueprints*. You # can use a blueprint to create a new virtual private server already # running a specific operating system, as well as a preinstalled app or # development stack. The software each instance is running depends on # the blueprint image you choose. # @option params [Boolean] :include_inactive # A Boolean value indicating whether to include inactive results in your # request. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # blueprints request. # @return [Types::GetBlueprintsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetBlueprintsResult#blueprints #blueprints} => Array<Types::Blueprint> # * {Types::GetBlueprintsResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_blueprints({ # include_inactive: false, # page_token: "string", # }) # # @example Response structure # resp.blueprints #=> Array # resp.blueprints[0].blueprint_id #=> String # resp.blueprints[0].name #=> String # resp.blueprints[0].group #=> String # resp.blueprints[0].type #=> String, one of "os", "app" # resp.blueprints[0].description #=> String # resp.blueprints[0].is_active #=> Boolean # resp.blueprints[0].min_power #=> Integer # resp.blueprints[0].version #=> String # resp.blueprints[0].version_code #=> String # resp.blueprints[0].product_url #=> String # resp.blueprints[0].license_url #=> String # resp.next_page_token #=> String # @overload get_blueprints(params = {}) # @param [Hash] params ({}) def get_blueprints(params = {}, options = {}) req = build_request(:get_blueprints, params) req.send_request(options) end # Returns the list of bundles that are available for purchase. A bundle # describes the specs for your virtual private server (or *instance*). # @option params [Boolean] :include_inactive # A Boolean value that indicates whether to include inactive bundle # results in your request. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # bundles request. # @return [Types::GetBundlesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetBundlesResult#bundles #bundles} => Array<Types::Bundle> # * {Types::GetBundlesResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_bundles({ # include_inactive: false, # page_token: "string", # }) # # @example Response structure # resp.bundles #=> Array # resp.bundles[0].price #=> Float # resp.bundles[0].cpu_count #=> Integer # resp.bundles[0].disk_size_in_gb #=> Integer # resp.bundles[0].bundle_id #=> String # resp.bundles[0].instance_type #=> String # resp.bundles[0].is_active #=> Boolean # resp.bundles[0].name #=> String # resp.bundles[0].power #=> Integer # resp.bundles[0].ram_size_in_gb #=> Float # resp.bundles[0].transfer_per_month_in_gb #=> Integer # resp.next_page_token #=> String # @overload get_bundles(params = {}) # @param [Hash] params ({}) def get_bundles(params = {}, options = {}) req = build_request(:get_bundles, params) req.send_request(options) end # Returns information about a specific domain recordset. # @option params [required, String] :domain_name # The domain name for which your want to return information about. # @return [Types::GetDomainResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetDomainResult#domain #domain} => Types::Domain # # @example Request syntax with placeholder values # resp = client.get_domain({ # domain_name: "DomainName", # required # }) # # @example Response structure # resp.domain.name #=> String # resp.domain.arn #=> String # resp.domain.support_code #=> String # resp.domain.created_at #=> Time # resp.domain.location.availability_zone #=> String # resp.domain.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.domain.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.domain.domain_entries #=> Array # resp.domain.domain_entries[0].id #=> String # resp.domain.domain_entries[0].name #=> String # resp.domain.domain_entries[0].target #=> String # resp.domain.domain_entries[0].type #=> String # resp.domain.domain_entries[0].options #=> Hash # resp.domain.domain_entries[0].options["DomainEntryOptionsKeys"] #=> String # @overload get_domain(params = {}) # @param [Hash] params ({}) def get_domain(params = {}, options = {}) req = build_request(:get_domain, params) req.send_request(options) end # Returns a list of all domains in the user's account. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # domains request. # @return [Types::GetDomainsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetDomainsResult#domains #domains} => Array<Types::Domain> # * {Types::GetDomainsResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_domains({ # page_token: "string", # }) # # @example Response structure # resp.domains #=> Array # resp.domains[0].name #=> String # resp.domains[0].arn #=> String # resp.domains[0].support_code #=> String # resp.domains[0].created_at #=> Time # resp.domains[0].location.availability_zone #=> String # resp.domains[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.domains[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.domains[0].domain_entries #=> Array # resp.domains[0].domain_entries[0].id #=> String # resp.domains[0].domain_entries[0].name #=> String # resp.domains[0].domain_entries[0].target #=> String # resp.domains[0].domain_entries[0].type #=> String # resp.domains[0].domain_entries[0].options #=> Hash # resp.domains[0].domain_entries[0].options["DomainEntryOptionsKeys"] #=> String # resp.next_page_token #=> String # @overload get_domains(params = {}) # @param [Hash] params ({}) def get_domains(params = {}, options = {}) req = build_request(:get_domains, params) req.send_request(options) end # Returns information about a specific Amazon Lightsail instance, which # is a virtual private server. # @option params [required, String] :instance_name # The name of the instance. # @return [Types::GetInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstanceResult#instance #instance} => Types::Instance # # @example Request syntax with placeholder values # resp = client.get_instance({ # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.instance.name #=> String # resp.instance.arn #=> String # resp.instance.support_code #=> String # resp.instance.created_at #=> Time # resp.instance.location.availability_zone #=> String # resp.instance.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.instance.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.instance.blueprint_id #=> String # resp.instance.blueprint_name #=> String # resp.instance.bundle_id #=> String # resp.instance.is_static_ip #=> Boolean # resp.instance.private_ip_address #=> String # resp.instance.public_ip_address #=> String # resp.instance.ipv6_address #=> String # resp.instance.hardware.cpu_count #=> Integer # resp.instance.hardware.disks #=> Array # resp.instance.hardware.disks[0].name #=> String # resp.instance.hardware.disks[0].arn #=> String # resp.instance.hardware.disks[0].support_code #=> String # resp.instance.hardware.disks[0].created_at #=> Time # resp.instance.hardware.disks[0].location.availability_zone #=> String # resp.instance.hardware.disks[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.instance.hardware.disks[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.instance.hardware.disks[0].size_in_gb #=> Integer # resp.instance.hardware.disks[0].gb_in_use #=> Integer # resp.instance.hardware.disks[0].is_system_disk #=> Boolean # resp.instance.hardware.disks[0].iops #=> Integer # resp.instance.hardware.disks[0].path #=> String # resp.instance.hardware.disks[0].attached_to #=> String # resp.instance.hardware.disks[0].is_attached #=> Boolean # resp.instance.hardware.disks[0].attachment_state #=> String # resp.instance.hardware.ram_size_in_gb #=> Float # resp.instance.networking.monthly_transfer.gb_per_month_allocated #=> Integer # resp.instance.networking.ports #=> Array # resp.instance.networking.ports[0].from_port #=> Integer # resp.instance.networking.ports[0].to_port #=> Integer # resp.instance.networking.ports[0].protocol #=> String, one of "tcp", "all", "udp" # resp.instance.networking.ports[0].access_from #=> String # resp.instance.networking.ports[0].access_type #=> String, one of "Public", "Private" # resp.instance.networking.ports[0].common_name #=> String # resp.instance.networking.ports[0].access_direction #=> String, one of "inbound", "outbound" # resp.instance.state.code #=> Integer # resp.instance.state.name #=> String # resp.instance.username #=> String # resp.instance.ssh_key_name #=> String # @overload get_instance(params = {}) # @param [Hash] params ({}) def get_instance(params = {}, options = {}) req = build_request(:get_instance, params) req.send_request(options) end # Returns temporary SSH keys you can use to connect to a specific # virtual private server, or *instance*. # @option params [required, String] :instance_name # The name of the instance to access. # @option params [String] :protocol # The protocol to use to connect to your instance. Defaults to `ssh`. # @return [Types::GetInstanceAccessDetailsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstanceAccessDetailsResult#access_details #accessDetails} => Types::InstanceAccessDetails # # @example Request syntax with placeholder values # resp = client.get_instance_access_details({ # instance_name: "ResourceName", # required # protocol: "ssh", # accepts ssh, rdp # }) # # @example Response structure # resp.access_details.cert_key #=> String # resp.access_details.expires_at #=> Time # resp.access_details.ip_address #=> String # resp.access_details.password #=> String # resp.access_details.private_key #=> String # resp.access_details.protocol #=> String, one of "ssh", "rdp" # resp.access_details.instance_name #=> String # resp.access_details.username #=> String # @overload get_instance_access_details(params = {}) # @param [Hash] params ({}) def get_instance_access_details(params = {}, options = {}) req = build_request(:get_instance_access_details, params) req.send_request(options) end # Returns the data points for the specified Amazon Lightsail instance # metric, given an instance name. # @option params [required, String] :instance_name # The name of the instance for which you want to get metrics data. # @option params [required, String] :metric_name # The metric name to get data about. # @option params [required, Integer] :period # The time period for which you are requesting data. # @option params [required, Time,DateTime,Date,Integer,String] :start_time # The start time of the time period. # @option params [required, Time,DateTime,Date,Integer,String] :end_time # The end time of the time period. # @option params [required, String] :unit # The unit. The list of valid values is below. # @option params [required, Array] :statistics # The instance statistics. # @return [Types::GetInstanceMetricDataResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstanceMetricDataResult#metric_name #metricName} => String # * {Types::GetInstanceMetricDataResult#metric_data #metricData} => Array<Types::MetricDatapoint> # # @example Request syntax with placeholder values # resp = client.get_instance_metric_data({ # instance_name: "ResourceName", # required # metric_name: "CPUUtilization", # required, accepts CPUUtilization, NetworkIn, NetworkOut, StatusCheckFailed, StatusCheckFailed_Instance, StatusCheckFailed_System # period: 1, # required # start_time: Time.now, # required # end_time: Time.now, # required # unit: "Seconds", # required, accepts Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, None # statistics: ["Minimum"], # required, accepts Minimum, Maximum, Sum, Average, SampleCount # }) # # @example Response structure # resp.metric_name #=> String, one of "CPUUtilization", "NetworkIn", "NetworkOut", "StatusCheckFailed", "StatusCheckFailed_Instance", "StatusCheckFailed_System" # resp.metric_data #=> Array # resp.metric_data[0].average #=> Float # resp.metric_data[0].maximum #=> Float # resp.metric_data[0].minimum #=> Float # resp.metric_data[0].sample_count #=> Float # resp.metric_data[0].sum #=> Float # resp.metric_data[0].timestamp #=> Time # resp.metric_data[0].unit #=> String, one of "Seconds", "Microseconds", "Milliseconds", "Bytes", "Kilobytes", "Megabytes", "Gigabytes", "Terabytes", "Bits", "Kilobits", "Megabits", "Gigabits", "Terabits", "Percent", "Count", "Bytes/Second", "Kilobytes/Second", "Megabytes/Second", "Gigabytes/Second", "Terabytes/Second", "Bits/Second", "Kilobits/Second", "Megabits/Second", "Gigabits/Second", "Terabits/Second", "Count/Second", "None" # @overload get_instance_metric_data(params = {}) # @param [Hash] params ({}) def get_instance_metric_data(params = {}, options = {}) req = build_request(:get_instance_metric_data, params) req.send_request(options) end # Returns the port states for a specific virtual private server, or # *instance*. # @option params [required, String] :instance_name # The name of the instance. # @return [Types::GetInstancePortStatesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstancePortStatesResult#port_states #portStates} => Array<String> # # @example Request syntax with placeholder values # resp = client.get_instance_port_states({ # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.port_states #=> Array # resp.port_states[0] #=> String, one of "open", "closed" # @overload get_instance_port_states(params = {}) # @param [Hash] params ({}) def get_instance_port_states(params = {}, options = {}) req = build_request(:get_instance_port_states, params) req.send_request(options) end # Returns information about a specific instance snapshot. # @option params [required, String] :instance_snapshot_name # The name of the snapshot for which you are requesting information. # @return [Types::GetInstanceSnapshotResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstanceSnapshotResult#instance_snapshot #instanceSnapshot} => Types::InstanceSnapshot # # @example Request syntax with placeholder values # resp = client.get_instance_snapshot({ # instance_snapshot_name: "ResourceName", # required # }) # # @example Response structure # resp.instance_snapshot.name #=> String # resp.instance_snapshot.arn #=> String # resp.instance_snapshot.support_code #=> String # resp.instance_snapshot.created_at #=> Time # resp.instance_snapshot.location.availability_zone #=> String # resp.instance_snapshot.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.instance_snapshot.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.instance_snapshot.state #=> String, one of "pending", "error", "available" # resp.instance_snapshot.progress #=> String # resp.instance_snapshot.from_instance_name #=> String # resp.instance_snapshot.from_instance_arn #=> String # resp.instance_snapshot.from_blueprint_id #=> String # resp.instance_snapshot.from_bundle_id #=> String # resp.instance_snapshot.size_in_gb #=> Integer # @overload get_instance_snapshot(params = {}) # @param [Hash] params ({}) def get_instance_snapshot(params = {}, options = {}) req = build_request(:get_instance_snapshot, params) req.send_request(options) end # Returns all instance snapshots for the user's account. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # instance snapshots request. # @return [Types::GetInstanceSnapshotsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstanceSnapshotsResult#instance_snapshots #instanceSnapshots} => Array<Types::InstanceSnapshot> # * {Types::GetInstanceSnapshotsResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_instance_snapshots({ # page_token: "string", # }) # # @example Response structure # resp.instance_snapshots #=> Array # resp.instance_snapshots[0].name #=> String # resp.instance_snapshots[0].arn #=> String # resp.instance_snapshots[0].support_code #=> String # resp.instance_snapshots[0].created_at #=> Time # resp.instance_snapshots[0].location.availability_zone #=> String # resp.instance_snapshots[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.instance_snapshots[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.instance_snapshots[0].state #=> String, one of "pending", "error", "available" # resp.instance_snapshots[0].progress #=> String # resp.instance_snapshots[0].from_instance_name #=> String # resp.instance_snapshots[0].from_instance_arn #=> String # resp.instance_snapshots[0].from_blueprint_id #=> String # resp.instance_snapshots[0].from_bundle_id #=> String # resp.instance_snapshots[0].size_in_gb #=> Integer # resp.next_page_token #=> String # @overload get_instance_snapshots(params = {}) # @param [Hash] params ({}) def get_instance_snapshots(params = {}, options = {}) req = build_request(:get_instance_snapshots, params) req.send_request(options) end # Returns the state of a specific instance. Works on one instance at a # time. # @option params [required, String] :instance_name # The name of the instance to get state information about. # @return [Types::GetInstanceStateResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstanceStateResult#state #state} => Types::InstanceState # # @example Request syntax with placeholder values # resp = client.get_instance_state({ # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.state.code #=> Integer # resp.state.name #=> String # @overload get_instance_state(params = {}) # @param [Hash] params ({}) def get_instance_state(params = {}, options = {}) req = build_request(:get_instance_state, params) req.send_request(options) end # Returns information about all Amazon Lightsail virtual private # servers, or *instances*. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # instances request. # @return [Types::GetInstancesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetInstancesResult#instances #instances} => Array<Types::Instance> # * {Types::GetInstancesResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_instances({ # page_token: "string", # }) # # @example Response structure # resp.instances #=> Array # resp.instances[0].name #=> String # resp.instances[0].arn #=> String # resp.instances[0].support_code #=> String # resp.instances[0].created_at #=> Time # resp.instances[0].location.availability_zone #=> String # resp.instances[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.instances[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.instances[0].blueprint_id #=> String # resp.instances[0].blueprint_name #=> String # resp.instances[0].bundle_id #=> String # resp.instances[0].is_static_ip #=> Boolean # resp.instances[0].private_ip_address #=> String # resp.instances[0].public_ip_address #=> String # resp.instances[0].ipv6_address #=> String # resp.instances[0].hardware.cpu_count #=> Integer # resp.instances[0].hardware.disks #=> Array # resp.instances[0].hardware.disks[0].name #=> String # resp.instances[0].hardware.disks[0].arn #=> String # resp.instances[0].hardware.disks[0].support_code #=> String # resp.instances[0].hardware.disks[0].created_at #=> Time # resp.instances[0].hardware.disks[0].location.availability_zone #=> String # resp.instances[0].hardware.disks[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.instances[0].hardware.disks[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.instances[0].hardware.disks[0].size_in_gb #=> Integer # resp.instances[0].hardware.disks[0].gb_in_use #=> Integer # resp.instances[0].hardware.disks[0].is_system_disk #=> Boolean # resp.instances[0].hardware.disks[0].iops #=> Integer # resp.instances[0].hardware.disks[0].path #=> String # resp.instances[0].hardware.disks[0].attached_to #=> String # resp.instances[0].hardware.disks[0].is_attached #=> Boolean # resp.instances[0].hardware.disks[0].attachment_state #=> String # resp.instances[0].hardware.ram_size_in_gb #=> Float # resp.instances[0].networking.monthly_transfer.gb_per_month_allocated #=> Integer # resp.instances[0].networking.ports #=> Array # resp.instances[0].networking.ports[0].from_port #=> Integer # resp.instances[0].networking.ports[0].to_port #=> Integer # resp.instances[0].networking.ports[0].protocol #=> String, one of "tcp", "all", "udp" # resp.instances[0].networking.ports[0].access_from #=> String # resp.instances[0].networking.ports[0].access_type #=> String, one of "Public", "Private" # resp.instances[0].networking.ports[0].common_name #=> String # resp.instances[0].networking.ports[0].access_direction #=> String, one of "inbound", "outbound" # resp.instances[0].state.code #=> Integer # resp.instances[0].state.name #=> String # resp.instances[0].username #=> String # resp.instances[0].ssh_key_name #=> String # resp.next_page_token #=> String # @overload get_instances(params = {}) # @param [Hash] params ({}) def get_instances(params = {}, options = {}) req = build_request(:get_instances, params) req.send_request(options) end # Returns information about a specific key pair. # @option params [required, String] :key_pair_name # The name of the key pair for which you are requesting information. # @return [Types::GetKeyPairResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetKeyPairResult#key_pair #keyPair} => Types::KeyPair # # @example Request syntax with placeholder values # resp = client.get_key_pair({ # key_pair_name: "ResourceName", # required # }) # # @example Response structure # resp.key_pair.name #=> String # resp.key_pair.arn #=> String # resp.key_pair.support_code #=> String # resp.key_pair.created_at #=> Time # resp.key_pair.location.availability_zone #=> String # resp.key_pair.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.key_pair.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.key_pair.fingerprint #=> String # @overload get_key_pair(params = {}) # @param [Hash] params ({}) def get_key_pair(params = {}, options = {}) req = build_request(:get_key_pair, params) req.send_request(options) end # Returns information about all key pairs in the user's account. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # key pairs request. # @return [Types::GetKeyPairsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetKeyPairsResult#key_pairs #keyPairs} => Array<Types::KeyPair> # * {Types::GetKeyPairsResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_key_pairs({ # page_token: "string", # }) # # @example Response structure # resp.key_pairs #=> Array # resp.key_pairs[0].name #=> String # resp.key_pairs[0].arn #=> String # resp.key_pairs[0].support_code #=> String # resp.key_pairs[0].created_at #=> Time # resp.key_pairs[0].location.availability_zone #=> String # resp.key_pairs[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.key_pairs[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.key_pairs[0].fingerprint #=> String # resp.next_page_token #=> String # @overload get_key_pairs(params = {}) # @param [Hash] params ({}) def get_key_pairs(params = {}, options = {}) req = build_request(:get_key_pairs, params) req.send_request(options) end # Returns information about a specific operation. Operations include # events such as when you create an instance, allocate a static IP, # attach a static IP, and so on. # @option params [required, String] :operation_id # A GUID used to identify the operation. # @return [Types::GetOperationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetOperationResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.get_operation({ # operation_id: "NonEmptyString", # required # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload get_operation(params = {}) # @param [Hash] params ({}) def get_operation(params = {}, options = {}) req = build_request(:get_operation, params) req.send_request(options) end # Returns information about all operations. # # Results are returned from oldest to newest, up to a maximum of 200. # Results can be paged by making each subsequent call to `GetOperations` # use the maximum (last) `statusChangedAt` value from the previous # request. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # operations request. # @return [Types::GetOperationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetOperationsResult#operations #operations} => Array<Types::Operation> # * {Types::GetOperationsResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_operations({ # page_token: "string", # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # resp.next_page_token #=> String # @overload get_operations(params = {}) # @param [Hash] params ({}) def get_operations(params = {}, options = {}) req = build_request(:get_operations, params) req.send_request(options) end # Gets operations for a specific resource (e.g., an instance or a static # IP). # @option params [required, String] :resource_name # The name of the resource for which you are requesting information. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # operations for resource request. # @return [Types::GetOperationsForResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetOperationsForResourceResult#operations #operations} => Array<Types::Operation> # * {Types::GetOperationsForResourceResult#next_page_count #nextPageCount} => String # # @example Request syntax with placeholder values # resp = client.get_operations_for_resource({ # resource_name: "ResourceName", # required # page_token: "string", # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # resp.next_page_count #=> String # @overload get_operations_for_resource(params = {}) # @param [Hash] params ({}) def get_operations_for_resource(params = {}, options = {}) req = build_request(:get_operations_for_resource, params) req.send_request(options) end # Returns a list of all valid regions for Amazon Lightsail. # @option params [Boolean] :include_availability_zones # A Boolean value indicating whether to also include Availability Zones # in your get regions request. Availability Zones are indicated with a # letter: e.g., `us-east-1a`. # @return [Types::GetRegionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetRegionsResult#regions #regions} => Array<Types::Region> # # @example Request syntax with placeholder values # resp = client.get_regions({ # include_availability_zones: false, # }) # # @example Response structure # resp.regions #=> Array # resp.regions[0].continent_code #=> String # resp.regions[0].description #=> String # resp.regions[0].display_name #=> String # resp.regions[0].name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.regions[0].availability_zones #=> Array # resp.regions[0].availability_zones[0].zone_name #=> String # resp.regions[0].availability_zones[0].state #=> String # @overload get_regions(params = {}) # @param [Hash] params ({}) def get_regions(params = {}, options = {}) req = build_request(:get_regions, params) req.send_request(options) end # Returns information about a specific static IP. # @option params [required, String] :static_ip_name # The name of the static IP in Lightsail. # @return [Types::GetStaticIpResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetStaticIpResult#static_ip #staticIp} => Types::StaticIp # # @example Request syntax with placeholder values # resp = client.get_static_ip({ # static_ip_name: "ResourceName", # required # }) # # @example Response structure # resp.static_ip.name #=> String # resp.static_ip.arn #=> String # resp.static_ip.support_code #=> String # resp.static_ip.created_at #=> Time # resp.static_ip.location.availability_zone #=> String # resp.static_ip.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.static_ip.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.static_ip.ip_address #=> String # resp.static_ip.attached_to #=> String # resp.static_ip.is_attached #=> Boolean # @overload get_static_ip(params = {}) # @param [Hash] params ({}) def get_static_ip(params = {}, options = {}) req = build_request(:get_static_ip, params) req.send_request(options) end # Returns information about all static IPs in the user's account. # @option params [String] :page_token # A token used for advancing to the next page of results from your get # static IPs request. # @return [Types::GetStaticIpsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetStaticIpsResult#static_ips #staticIps} => Array<Types::StaticIp> # * {Types::GetStaticIpsResult#next_page_token #nextPageToken} => String # # @example Request syntax with placeholder values # resp = client.get_static_ips({ # page_token: "string", # }) # # @example Response structure # resp.static_ips #=> Array # resp.static_ips[0].name #=> String # resp.static_ips[0].arn #=> String # resp.static_ips[0].support_code #=> String # resp.static_ips[0].created_at #=> Time # resp.static_ips[0].location.availability_zone #=> String # resp.static_ips[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.static_ips[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.static_ips[0].ip_address #=> String # resp.static_ips[0].attached_to #=> String # resp.static_ips[0].is_attached #=> Boolean # resp.next_page_token #=> String # @overload get_static_ips(params = {}) # @param [Hash] params ({}) def get_static_ips(params = {}, options = {}) req = build_request(:get_static_ips, params) req.send_request(options) end # Imports a public SSH key from a specific key pair. # @option params [required, String] :key_pair_name # The name of the key pair for which you want to import the public key. # @option params [required, String] :public_key_base_64 # A base64-encoded public key of the `ssh-rsa` type. # @return [Types::ImportKeyPairResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ImportKeyPairResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.import_key_pair({ # key_pair_name: "ResourceName", # required # public_key_base_64: "Base64", # required # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload import_key_pair(params = {}) # @param [Hash] params ({}) def import_key_pair(params = {}, options = {}) req = build_request(:import_key_pair, params) req.send_request(options) end # Returns a Boolean value indicating whether your Lightsail VPC is # peered. # @return [Types::IsVpcPeeredResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::IsVpcPeeredResult#is_peered #isPeered} => Boolean # # @example Request syntax with placeholder values # resp = client.is_vpc_peered() # # @example Response structure # resp.is_peered #=> Boolean # @overload is_vpc_peered(params = {}) # @param [Hash] params ({}) def is_vpc_peered(params = {}, options = {}) req = build_request(:is_vpc_peered, params) req.send_request(options) end # Adds public ports to an Amazon Lightsail instance. # @option params [required, Types::PortInfo] :port_info # An array of key-value pairs containing information about the port # mappings. # @option params [required, String] :instance_name # The name of the instance for which you want to open the public ports. # @return [Types::OpenInstancePublicPortsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::OpenInstancePublicPortsResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.open_instance_public_ports({ # port_info: { # required # from_port: 1, # to_port: 1, # protocol: "tcp", # accepts tcp, all, udp # }, # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload open_instance_public_ports(params = {}) # @param [Hash] params ({}) def open_instance_public_ports(params = {}, options = {}) req = build_request(:open_instance_public_ports, params) req.send_request(options) end # Tries to peer the Lightsail VPC with the user's default VPC. # @return [Types::PeerVpcResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::PeerVpcResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.peer_vpc() # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload peer_vpc(params = {}) # @param [Hash] params ({}) def peer_vpc(params = {}, options = {}) req = build_request(:peer_vpc, params) req.send_request(options) end # Restarts a specific instance. When your Amazon Lightsail instance is # finished rebooting, Lightsail assigns a new public IP address. To use # the same IP address after restarting, create a static IP address and # attach it to the instance. # @option params [required, String] :instance_name # The name of the instance to reboot. # @return [Types::RebootInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RebootInstanceResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.reboot_instance({ # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload reboot_instance(params = {}) # @param [Hash] params ({}) def reboot_instance(params = {}, options = {}) req = build_request(:reboot_instance, params) req.send_request(options) end # Deletes a specific static IP from your account. # @option params [required, String] :static_ip_name # The name of the static IP to delete. # @return [Types::ReleaseStaticIpResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ReleaseStaticIpResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.release_static_ip({ # static_ip_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload release_static_ip(params = {}) # @param [Hash] params ({}) def release_static_ip(params = {}, options = {}) req = build_request(:release_static_ip, params) req.send_request(options) end # Starts a specific Amazon Lightsail instance from a stopped state. To # restart an instance, use the reboot instance operation. # @option params [required, String] :instance_name # The name of the instance (a virtual private server) to start. # @return [Types::StartInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::StartInstanceResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.start_instance({ # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload start_instance(params = {}) # @param [Hash] params ({}) def start_instance(params = {}, options = {}) req = build_request(:start_instance, params) req.send_request(options) end # Stops a specific Amazon Lightsail instance that is currently running. # @option params [required, String] :instance_name # The name of the instance (a virtual private server) to stop. # @return [Types::StopInstanceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::StopInstanceResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.stop_instance({ # instance_name: "ResourceName", # required # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload stop_instance(params = {}) # @param [Hash] params ({}) def stop_instance(params = {}, options = {}) req = build_request(:stop_instance, params) req.send_request(options) end # Attempts to unpeer the Lightsail VPC from the user's default VPC. # @return [Types::UnpeerVpcResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UnpeerVpcResult#operation #operation} => Types::Operation # # @example Request syntax with placeholder values # resp = client.unpeer_vpc() # # @example Response structure # resp.operation.id #=> String # resp.operation.resource_name #=> String # resp.operation.resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operation.created_at #=> Time # resp.operation.location.availability_zone #=> String # resp.operation.location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operation.is_terminal #=> Boolean # resp.operation.operation_details #=> String # resp.operation.operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operation.status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operation.status_changed_at #=> Time # resp.operation.error_code #=> String # resp.operation.error_details #=> String # @overload unpeer_vpc(params = {}) # @param [Hash] params ({}) def unpeer_vpc(params = {}, options = {}) req = build_request(:unpeer_vpc, params) req.send_request(options) end # Updates a domain recordset after it is created. # @option params [required, String] :domain_name # The name of the domain recordset to update. # @option params [required, Types::DomainEntry] :domain_entry # An array of key-value pairs containing information about the domain # entry. # @return [Types::UpdateDomainEntryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UpdateDomainEntryResult#operations #operations} => Array<Types::Operation> # # @example Request syntax with placeholder values # resp = client.update_domain_entry({ # domain_name: "DomainName", # required # domain_entry: { # required # id: "NonEmptyString", # name: "DomainName", # target: "string", # type: "DomainEntryType", # options: { # "DomainEntryOptionsKeys" => "string", # }, # }, # }) # # @example Response structure # resp.operations #=> Array # resp.operations[0].id #=> String # resp.operations[0].resource_name #=> String # resp.operations[0].resource_type #=> String, one of "Instance", "StaticIp", "KeyPair", "InstanceSnapshot", "Domain", "PeeredVpc" # resp.operations[0].created_at #=> Time # resp.operations[0].location.availability_zone #=> String # resp.operations[0].location.region_name #=> String, one of "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "eu-central-1", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "ap-northeast-2" # resp.operations[0].is_terminal #=> Boolean # resp.operations[0].operation_details #=> String # resp.operations[0].operation_type #=> String, one of "DeleteInstance", "CreateInstance", "StopInstance", "StartInstance", "RebootInstance", "OpenInstancePublicPorts", "CloseInstancePublicPorts", "AllocateStaticIp", "ReleaseStaticIp", "AttachStaticIp", "DetachStaticIp", "UpdateDomainEntry", "DeleteDomainEntry", "CreateDomain", "DeleteDomain", "CreateInstanceSnapshot", "DeleteInstanceSnapshot", "CreateInstancesFromSnapshot" # resp.operations[0].status #=> String, one of "NotStarted", "Started", "Failed", "Completed" # resp.operations[0].status_changed_at #=> Time # resp.operations[0].error_code #=> String # resp.operations[0].error_details #=> String # @overload update_domain_entry(params = {}) # @param [Hash] params ({}) def update_domain_entry(params = {}, options = {}) req = build_request(:update_domain_entry, params) req.send_request(options) end # @!endgroup # @param params ({}) # @api private def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-lightsail' context[:gem_version] = '1.0.0.rc2' Seahorse::Client::Request.new(handlers, context) end # @api private # @deprecated def waiter_names [] end class << self # @api private attr_reader :identifier # @api private def errors_module Errors end end end end end