Class: Aws::Backup::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb

Overview

An API client for Backup. To construct a client, you need to configure a :region and :credentials.

client = Aws::Backup::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :credentials (required, Aws::CredentialProvider)

    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::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    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/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentails or Aws::ECSCredentials to enable retries and extended timeouts.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :endpoint (String)

    The client endpoint is normally constructed from the :region option. You should only configure an :endpoint when connecting to test or custom endpoints. This should be a valid HTTP(S) URI.

  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 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, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :secret_access_key (String)
  • :session_token (String)
  • :stub_responses (Boolean) — default: 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.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_open_timeout (Float) — default: 15

    The number of seconds to wait when opening a HTTP session before raising a Timeout::Error.

  • :http_read_timeout (Integer) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.



324
325
326
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 324

def initialize(*args)
  super
end

Instance Method Details

#create_backup_plan(params = {}) ⇒ Types::CreateBackupPlanOutput

Creates a backup plan using a backup plan name and backup rules. A backup plan is a document that contains information that Backup uses to schedule tasks that create recovery points for resources.

If you call CreateBackupPlan with a plan that already exists, you receive an AlreadyExistsException exception.

Examples:

Request syntax with placeholder values


resp = client.create_backup_plan({
  backup_plan: { # required
    backup_plan_name: "BackupPlanName", # required
    rules: [ # required
      {
        rule_name: "BackupRuleName", # required
        target_backup_vault_name: "BackupVaultName", # required
        schedule_expression: "CronExpression",
        start_window_minutes: 1,
        completion_window_minutes: 1,
        lifecycle: {
          move_to_cold_storage_after_days: 1,
          delete_after_days: 1,
        },
        recovery_point_tags: {
          "TagKey" => "TagValue",
        },
        copy_actions: [
          {
            lifecycle: {
              move_to_cold_storage_after_days: 1,
              delete_after_days: 1,
            },
            destination_backup_vault_arn: "ARN", # required
          },
        ],
        enable_continuous_backup: false,
      },
    ],
    advanced_backup_settings: [
      {
        resource_type: "ResourceType",
        backup_options: {
          "BackupOptionKey" => "BackupOptionValue",
        },
      },
    ],
  },
  backup_plan_tags: {
    "TagKey" => "TagValue",
  },
  creator_request_id: "string",
})

Response structure


resp.backup_plan_id #=> String
resp.backup_plan_arn #=> String
resp.creation_date #=> Time
resp.version_id #=> String
resp.advanced_backup_settings #=> Array
resp.advanced_backup_settings[0].resource_type #=> String
resp.advanced_backup_settings[0].backup_options #=> Hash
resp.advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan (required, Types::BackupPlanInput)

    Specifies the body of a backup plan. Includes a BackupPlanName and one or more sets of Rules.

  • :backup_plan_tags (Hash<String,String>)

    To help organize your resources, you can assign your own metadata to the resources that you create. Each tag is a key-value pair. The specified tags are assigned to all backups created with this plan.

  • :creator_request_id (String)

    Identifies the request and allows failed requests to be retried without the risk of running the operation twice. If the request includes a CreatorRequestId that matches an existing backup plan, that plan is returned. This parameter is optional.

Returns:

See Also:



421
422
423
424
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 421

def create_backup_plan(params = {}, options = {})
  req = build_request(:create_backup_plan, params)
  req.send_request(options)
end

#create_backup_selection(params = {}) ⇒ Types::CreateBackupSelectionOutput

Creates a JSON document that specifies a set of resources to assign to a backup plan. Resources can be included by specifying patterns for a ListOfTags and selected Resources.

For example, consider the following patterns:

  • Resources: "arn:aws:ec2:region:account-id:volume/volume-id"

  • ConditionKey:"department"

    ConditionValue:"finance"

    ConditionType:"StringEquals"

  • ConditionKey:"importance"

    ConditionValue:"critical"

    ConditionType:"StringEquals"

Using these patterns would back up all Amazon Elastic Block Store (Amazon EBS) volumes that are tagged as "department=finance", "importance=critical", in addition to an EBS volume with the specified volume ID.

Resources and conditions are additive in that all resources that match the pattern are selected. This shouldn't be confused with a logical AND, where all conditions must match. The matching patterns are logically put together using the OR operator. In other words, all patterns that match are selected for backup.

Examples:

Request syntax with placeholder values


resp = client.create_backup_selection({
  backup_plan_id: "string", # required
  backup_selection: { # required
    selection_name: "BackupSelectionName", # required
    iam_role_arn: "IAMRoleArn", # required
    resources: ["ARN"],
    list_of_tags: [
      {
        condition_type: "STRINGEQUALS", # required, accepts STRINGEQUALS
        condition_key: "ConditionKey", # required
        condition_value: "ConditionValue", # required
      },
    ],
  },
  creator_request_id: "string",
})

Response structure


resp.selection_id #=> String
resp.backup_plan_id #=> String
resp.creation_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies the backup plan to be associated with the selection of resources.

  • :backup_selection (required, Types::BackupSelection)

    Specifies the body of a request to assign a set of resources to a backup plan.

  • :creator_request_id (String)

    A unique string that identifies the request and allows failed requests to be retried without the risk of running the operation twice.

Returns:

See Also:



504
505
506
507
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 504

def create_backup_selection(params = {}, options = {})
  req = build_request(:create_backup_selection, params)
  req.send_request(options)
end

#create_backup_vault(params = {}) ⇒ Types::CreateBackupVaultOutput

Creates a logical container where backups are stored. A CreateBackupVault request includes a name, optionally one or more resource tags, an encryption key, and a request ID.

Do not include sensitive data, such as passport numbers, in the name of a backup vault.

Examples:

Request syntax with placeholder values


resp = client.create_backup_vault({
  backup_vault_name: "BackupVaultName", # required
  backup_vault_tags: {
    "TagKey" => "TagValue",
  },
  encryption_key_arn: "ARN",
  creator_request_id: "string",
})

Response structure


resp.backup_vault_name #=> String
resp.backup_vault_arn #=> String
resp.creation_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of letters, numbers, and hyphens.

  • :backup_vault_tags (Hash<String,String>)

    Metadata that you can assign to help organize the resources that you create. Each tag is a key-value pair.

  • :encryption_key_arn (String)

    The server-side encryption key that is used to protect your backups; for example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • :creator_request_id (String)

    A unique string that identifies the request and allows failed requests to be retried without the risk of running the operation twice.

Returns:

See Also:



564
565
566
567
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 564

def create_backup_vault(params = {}, options = {})
  req = build_request(:create_backup_vault, params)
  req.send_request(options)
end

#create_framework(params = {}) ⇒ Types::CreateFrameworkOutput

Creates a framework with one or more controls. A framework is a collection of controls that you can use to evaluate your backup practices. By using pre-built customizable controls to define your policies, you can evaluate whether your backup practices comply with your policies. To get insights into the compliance status of your frameworks, you can set up automatic daily reports.

Examples:

Request syntax with placeholder values


resp = client.create_framework({
  framework_name: "FrameworkName", # required
  framework_description: "FrameworkDescription",
  framework_controls: [ # required
    {
      control_name: "ControlName", # required
      control_input_parameters: [
        {
          parameter_name: "ParameterName",
          parameter_value: "ParameterValue",
        },
      ],
      control_scope: {
        compliance_resource_ids: ["string"],
        compliance_resource_types: ["ARN"],
        tags: {
          "string" => "string",
        },
      },
    },
  ],
  idempotency_token: "string",
  framework_tags: {
    "string" => "string",
  },
})

Response structure


resp.framework_name #=> String
resp.framework_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :framework_name (required, String)

    The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (_).

  • :framework_description (String)

    An optional description of the framework with a maximum of 1,024 characters.

  • :framework_controls (required, Array<Types::FrameworkControl>)

    A list of the controls that make up the framework. Each control in the list has a name, input parameters, and scope.

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to CreateFrameworkInput. Retrying a successful request with the same idempotency token results in a success message with no action taken.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :framework_tags (Hash<String,String>)

    Metadata that you can assign to help organize the frameworks that you create. Each tag is a key-value pair.

Returns:

See Also:



645
646
647
648
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 645

def create_framework(params = {}, options = {})
  req = build_request(:create_framework, params)
  req.send_request(options)
end

#create_report_plan(params = {}) ⇒ Types::CreateReportPlanOutput

Creates a report plan. A report plan is a document that contains information about the contents of the report and where Backup will deliver it.

If you call CreateReportPlan with a plan that already exists, you receive an AlreadyExistsException exception.

Examples:

Request syntax with placeholder values


resp = client.create_report_plan({
  report_plan_name: "ReportPlanName", # required
  report_plan_description: "ReportPlanDescription",
  report_delivery_channel: { # required
    s3_bucket_name: "string", # required
    s3_key_prefix: "string",
    formats: ["string"],
  },
  report_setting: { # required
    report_template: "string", # required
  },
  report_plan_tags: {
    "string" => "string",
  },
  idempotency_token: "string",
})

Response structure


resp.report_plan_name #=> String
resp.report_plan_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_plan_name (required, String)

    The unique name of the report plan. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (_).

  • :report_plan_description (String)

    An optional description of the report plan with a maximum of 1,024 characters.

  • :report_delivery_channel (required, Types::ReportDeliveryChannel)

    A structure that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports.

  • :report_setting (required, Types::ReportSetting)

    Identifies the report template for the report. Reports are built using a report template. The report templates are:

    BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT

  • :report_plan_tags (Hash<String,String>)

    Metadata that you can assign to help organize the frameworks that you create. Each tag is a key-value pair.

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to CreateReportPlanInput. Retrying a successful request with the same idempotency token results in a success message with no action taken.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



723
724
725
726
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 723

def create_report_plan(params = {}, options = {})
  req = build_request(:create_report_plan, params)
  req.send_request(options)
end

#delete_backup_plan(params = {}) ⇒ Types::DeleteBackupPlanOutput

Deletes a backup plan. A backup plan can only be deleted after all associated selections of resources have been deleted. Deleting a backup plan deletes the current version of a backup plan. Previous versions, if any, will still exist.

Examples:

Request syntax with placeholder values


resp = client.delete_backup_plan({
  backup_plan_id: "string", # required
})

Response structure


resp.backup_plan_id #=> String
resp.backup_plan_arn #=> String
resp.deletion_date #=> Time
resp.version_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

Returns:

See Also:



760
761
762
763
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 760

def delete_backup_plan(params = {}, options = {})
  req = build_request(:delete_backup_plan, params)
  req.send_request(options)
end

#delete_backup_selection(params = {}) ⇒ Struct

Deletes the resource selection associated with a backup plan that is specified by the SelectionId.

Examples:

Request syntax with placeholder values


resp = client.delete_backup_selection({
  backup_plan_id: "string", # required
  selection_id: "string", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

  • :selection_id (required, String)

    Uniquely identifies the body of a request to assign a set of resources to a backup plan.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



788
789
790
791
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 788

def delete_backup_selection(params = {}, options = {})
  req = build_request(:delete_backup_selection, params)
  req.send_request(options)
end

#delete_backup_vault(params = {}) ⇒ Struct

Deletes the backup vault identified by its name. A vault can be deleted only if it is empty.

Examples:

Request syntax with placeholder values


resp = client.delete_backup_vault({
  backup_vault_name: "string", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



814
815
816
817
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 814

def delete_backup_vault(params = {}, options = {})
  req = build_request(:delete_backup_vault, params)
  req.send_request(options)
end

#delete_backup_vault_access_policy(params = {}) ⇒ Struct

Deletes the policy document that manages permissions on a backup vault.

Examples:

Request syntax with placeholder values


resp = client.delete_backup_vault_access_policy({
  backup_vault_name: "BackupVaultName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



840
841
842
843
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 840

def delete_backup_vault_access_policy(params = {}, options = {})
  req = build_request(:delete_backup_vault_access_policy, params)
  req.send_request(options)
end

#delete_backup_vault_notifications(params = {}) ⇒ Struct

Deletes event notifications for the specified backup vault.

Examples:

Request syntax with placeholder values


resp = client.delete_backup_vault_notifications({
  backup_vault_name: "BackupVaultName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Region where they are created. They consist of lowercase letters, numbers, and hyphens.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



865
866
867
868
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 865

def delete_backup_vault_notifications(params = {}, options = {})
  req = build_request(:delete_backup_vault_notifications, params)
  req.send_request(options)
end

#delete_framework(params = {}) ⇒ Struct

Deletes the framework specified by a framework name.

Examples:

Request syntax with placeholder values


resp = client.delete_framework({
  framework_name: "FrameworkName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :framework_name (required, String)

    The unique name of a framework.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



887
888
889
890
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 887

def delete_framework(params = {}, options = {})
  req = build_request(:delete_framework, params)
  req.send_request(options)
end

#delete_recovery_point(params = {}) ⇒ Struct

Deletes the recovery point specified by a recovery point ID.

If the recovery point ID belongs to a continuous backup, calling this endpoint deletes the existing continuous backup and stops future continuous backup.

Examples:

Request syntax with placeholder values


resp = client.delete_recovery_point({
  backup_vault_name: "BackupVaultName", # required
  recovery_point_arn: "ARN", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :recovery_point_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



922
923
924
925
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 922

def delete_recovery_point(params = {}, options = {})
  req = build_request(:delete_recovery_point, params)
  req.send_request(options)
end

#delete_report_plan(params = {}) ⇒ Struct

Deletes the report plan specified by a report plan name.

Examples:

Request syntax with placeholder values


resp = client.delete_report_plan({
  report_plan_name: "ReportPlanName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_plan_name (required, String)

    The unique name of a report plan.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



944
945
946
947
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 944

def delete_report_plan(params = {}, options = {})
  req = build_request(:delete_report_plan, params)
  req.send_request(options)
end

#describe_backup_job(params = {}) ⇒ Types::DescribeBackupJobOutput

Returns backup job details for the specified BackupJobId.

Examples:

Request syntax with placeholder values


resp = client.describe_backup_job({
  backup_job_id: "string", # required
})

Response structure


resp. #=> String
resp.backup_job_id #=> String
resp.backup_vault_name #=> String
resp.backup_vault_arn #=> String
resp.recovery_point_arn #=> String
resp.resource_arn #=> String
resp.creation_date #=> Time
resp.completion_date #=> Time
resp.state #=> String, one of "CREATED", "PENDING", "RUNNING", "ABORTING", "ABORTED", "COMPLETED", "FAILED", "EXPIRED"
resp.status_message #=> String
resp.percent_done #=> String
resp.backup_size_in_bytes #=> Integer
resp.iam_role_arn #=> String
resp.created_by.backup_plan_id #=> String
resp.created_by.backup_plan_arn #=> String
resp.created_by.backup_plan_version #=> String
resp.created_by.backup_rule_id #=> String
resp.resource_type #=> String
resp.bytes_transferred #=> Integer
resp.expected_completion_date #=> Time
resp.start_by #=> Time
resp.backup_options #=> Hash
resp.backup_options["BackupOptionKey"] #=> String
resp.backup_type #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_job_id (required, String)

    Uniquely identifies a request to Backup to back up a resource.

Returns:

See Also:



1014
1015
1016
1017
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1014

def describe_backup_job(params = {}, options = {})
  req = build_request(:describe_backup_job, params)
  req.send_request(options)
end

#describe_backup_vault(params = {}) ⇒ Types::DescribeBackupVaultOutput

Returns metadata about a backup vault specified by its name.

Examples:

Request syntax with placeholder values


resp = client.describe_backup_vault({
  backup_vault_name: "string", # required
})

Response structure


resp.backup_vault_name #=> String
resp.backup_vault_arn #=> String
resp.encryption_key_arn #=> String
resp.creation_date #=> Time
resp.creator_request_id #=> String
resp.number_of_recovery_points #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

Returns:

See Also:



1055
1056
1057
1058
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1055

def describe_backup_vault(params = {}, options = {})
  req = build_request(:describe_backup_vault, params)
  req.send_request(options)
end

#describe_copy_job(params = {}) ⇒ Types::DescribeCopyJobOutput

Returns metadata associated with creating a copy of a resource.

Examples:

Request syntax with placeholder values


resp = client.describe_copy_job({
  copy_job_id: "string", # required
})

Response structure


resp.copy_job. #=> String
resp.copy_job.copy_job_id #=> String
resp.copy_job.source_backup_vault_arn #=> String
resp.copy_job.source_recovery_point_arn #=> String
resp.copy_job.destination_backup_vault_arn #=> String
resp.copy_job.destination_recovery_point_arn #=> String
resp.copy_job.resource_arn #=> String
resp.copy_job.creation_date #=> Time
resp.copy_job.completion_date #=> Time
resp.copy_job.state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED"
resp.copy_job.status_message #=> String
resp.copy_job.backup_size_in_bytes #=> Integer
resp.copy_job.iam_role_arn #=> String
resp.copy_job.created_by.backup_plan_id #=> String
resp.copy_job.created_by.backup_plan_arn #=> String
resp.copy_job.created_by.backup_plan_version #=> String
resp.copy_job.created_by.backup_rule_id #=> String
resp.copy_job.resource_type #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :copy_job_id (required, String)

    Uniquely identifies a copy job.

Returns:

See Also:



1100
1101
1102
1103
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1100

def describe_copy_job(params = {}, options = {})
  req = build_request(:describe_copy_job, params)
  req.send_request(options)
end

#describe_framework(params = {}) ⇒ Types::DescribeFrameworkOutput

Returns the framework details for the specified FrameworkName.

Examples:

Request syntax with placeholder values


resp = client.describe_framework({
  framework_name: "FrameworkName", # required
})

Response structure


resp.framework_name #=> String
resp.framework_arn #=> String
resp.framework_description #=> String
resp.framework_controls #=> Array
resp.framework_controls[0].control_name #=> String
resp.framework_controls[0].control_input_parameters #=> Array
resp.framework_controls[0].control_input_parameters[0].parameter_name #=> String
resp.framework_controls[0].control_input_parameters[0].parameter_value #=> String
resp.framework_controls[0].control_scope.compliance_resource_ids #=> Array
resp.framework_controls[0].control_scope.compliance_resource_ids[0] #=> String
resp.framework_controls[0].control_scope.compliance_resource_types #=> Array
resp.framework_controls[0].control_scope.compliance_resource_types[0] #=> String
resp.framework_controls[0].control_scope.tags #=> Hash
resp.framework_controls[0].control_scope.tags["string"] #=> String
resp.creation_time #=> Time
resp.deployment_status #=> String
resp.framework_status #=> String
resp.idempotency_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :framework_name (required, String)

    The unique name of a framework.

Returns:

See Also:



1152
1153
1154
1155
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1152

def describe_framework(params = {}, options = {})
  req = build_request(:describe_framework, params)
  req.send_request(options)
end

#describe_global_settings(params = {}) ⇒ Types::DescribeGlobalSettingsOutput

Describes whether the Amazon Web Services account is opted in to cross-account backup. Returns an error if the account is not a member of an Organizations organization. Example: describe-global-settings --region us-west-2

Examples:

Response structure


resp.global_settings #=> Hash
resp.global_settings["GlobalSettingsName"] #=> String
resp.last_update_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



1177
1178
1179
1180
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1177

def describe_global_settings(params = {}, options = {})
  req = build_request(:describe_global_settings, params)
  req.send_request(options)
end

#describe_protected_resource(params = {}) ⇒ Types::DescribeProtectedResourceOutput

Returns information about a saved resource, including the last time it was backed up, its Amazon Resource Name (ARN), and the Amazon Web Services service type of the saved resource.

Examples:

Request syntax with placeholder values


resp = client.describe_protected_resource({
  resource_arn: "ARN", # required
})

Response structure


resp.resource_arn #=> String
resp.resource_type #=> String
resp.last_backup_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

Returns:

See Also:



1212
1213
1214
1215
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1212

def describe_protected_resource(params = {}, options = {})
  req = build_request(:describe_protected_resource, params)
  req.send_request(options)
end

#describe_recovery_point(params = {}) ⇒ Types::DescribeRecoveryPointOutput

Returns metadata associated with a recovery point, including ID, status, encryption, and lifecycle.

Examples:

Request syntax with placeholder values


resp = client.describe_recovery_point({
  backup_vault_name: "BackupVaultName", # required
  recovery_point_arn: "ARN", # required
})

Response structure


resp.recovery_point_arn #=> String
resp.backup_vault_name #=> String
resp.backup_vault_arn #=> String
resp.source_backup_vault_arn #=> String
resp.resource_arn #=> String
resp.resource_type #=> String
resp.created_by.backup_plan_id #=> String
resp.created_by.backup_plan_arn #=> String
resp.created_by.backup_plan_version #=> String
resp.created_by.backup_rule_id #=> String
resp.iam_role_arn #=> String
resp.status #=> String, one of "COMPLETED", "PARTIAL", "DELETING", "EXPIRED"
resp.status_message #=> String
resp.creation_date #=> Time
resp.completion_date #=> Time
resp.backup_size_in_bytes #=> Integer
resp.calculated_lifecycle.move_to_cold_storage_at #=> Time
resp.calculated_lifecycle.delete_at #=> Time
resp.lifecycle.move_to_cold_storage_after_days #=> Integer
resp.lifecycle.delete_after_days #=> Integer
resp.encryption_key_arn #=> String
resp.is_encrypted #=> Boolean
resp.storage_class #=> String, one of "WARM", "COLD", "DELETED"
resp.last_restore_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :recovery_point_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

Returns:

See Also:



1291
1292
1293
1294
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1291

def describe_recovery_point(params = {}, options = {})
  req = build_request(:describe_recovery_point, params)
  req.send_request(options)
end

#describe_region_settings(params = {}) ⇒ Types::DescribeRegionSettingsOutput

Returns the current service opt-in settings for the Region. If service opt-in is enabled for a service, Backup tries to protect that service's resources in this Region, when the resource is included in an on-demand backup or scheduled backup plan. Otherwise, Backup does not try to protect that service's resources in this Region.

Examples:

Response structure


resp.resource_type_opt_in_preference #=> Hash
resp.resource_type_opt_in_preference["ResourceType"] #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



1315
1316
1317
1318
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1315

def describe_region_settings(params = {}, options = {})
  req = build_request(:describe_region_settings, params)
  req.send_request(options)
end

#describe_report_job(params = {}) ⇒ Types::DescribeReportJobOutput

Returns the details associated with creating a report as specified by its ReportJobId.

Examples:

Request syntax with placeholder values


resp = client.describe_report_job({
  report_job_id: "ReportJobId", # required
})

Response structure


resp.report_job.report_job_id #=> String
resp.report_job.report_plan_arn #=> String
resp.report_job.report_template #=> String
resp.report_job.creation_time #=> Time
resp.report_job.completion_time #=> Time
resp.report_job.status #=> String
resp.report_job.status_message #=> String
resp.report_job.report_destination.s3_bucket_name #=> String
resp.report_job.report_destination.s3_keys #=> Array
resp.report_job.report_destination.s3_keys[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_job_id (required, String)

    The identifier of the report job. A unique, randomly generated, Unicode, UTF-8 encoded string that is at most 1,024 bytes long. The report job ID cannot be edited.

Returns:

See Also:



1355
1356
1357
1358
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1355

def describe_report_job(params = {}, options = {})
  req = build_request(:describe_report_job, params)
  req.send_request(options)
end

#describe_report_plan(params = {}) ⇒ Types::DescribeReportPlanOutput

Returns a list of all report plans for an Amazon Web Services account and Amazon Web Services Region.

Examples:

Request syntax with placeholder values


resp = client.describe_report_plan({
  report_plan_name: "ReportPlanName", # required
})

Response structure


resp.report_plan.report_plan_arn #=> String
resp.report_plan.report_plan_name #=> String
resp.report_plan.report_plan_description #=> String
resp.report_plan.report_setting.report_template #=> String
resp.report_plan.report_delivery_channel.s3_bucket_name #=> String
resp.report_plan.report_delivery_channel.s3_key_prefix #=> String
resp.report_plan.report_delivery_channel.formats #=> Array
resp.report_plan.report_delivery_channel.formats[0] #=> String
resp.report_plan.deployment_status #=> String
resp.report_plan.creation_time #=> Time
resp.report_plan.last_attempted_execution_time #=> Time
resp.report_plan.last_successful_execution_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_plan_name (required, String)

    The unique name of a report plan.

Returns:

See Also:



1395
1396
1397
1398
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1395

def describe_report_plan(params = {}, options = {})
  req = build_request(:describe_report_plan, params)
  req.send_request(options)
end

#describe_restore_job(params = {}) ⇒ Types::DescribeRestoreJobOutput

Returns metadata associated with a restore job that is specified by a job ID.

Examples:

Request syntax with placeholder values


resp = client.describe_restore_job({
  restore_job_id: "RestoreJobId", # required
})

Response structure


resp. #=> String
resp.restore_job_id #=> String
resp.recovery_point_arn #=> String
resp.creation_date #=> Time
resp.completion_date #=> Time
resp.status #=> String, one of "PENDING", "RUNNING", "COMPLETED", "ABORTED", "FAILED"
resp.status_message #=> String
resp.percent_done #=> String
resp.backup_size_in_bytes #=> Integer
resp.iam_role_arn #=> String
resp.expected_completion_time_minutes #=> Integer
resp.created_resource_arn #=> String
resp.resource_type #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :restore_job_id (required, String)

    Uniquely identifies the job that restores a recovery point.

Returns:

See Also:



1448
1449
1450
1451
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1448

def describe_restore_job(params = {}, options = {})
  req = build_request(:describe_restore_job, params)
  req.send_request(options)
end

#disassociate_recovery_point(params = {}) ⇒ Struct

Deletes the specified continuous backup recovery point from Backup and releases control of that continuous backup to the source service, such as Amazon RDS. The source service will continue to create and retain continuous backups using the lifecycle that you specified in your original backup plan.

Does not support snapshot backup recovery points.

Examples:

Request syntax with placeholder values


resp = client.disassociate_recovery_point({
  backup_vault_name: "BackupVaultName", # required
  recovery_point_arn: "ARN", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The unique name of an Backup vault.

  • :recovery_point_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies an Backup recovery point.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1481
1482
1483
1484
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1481

def disassociate_recovery_point(params = {}, options = {})
  req = build_request(:disassociate_recovery_point, params)
  req.send_request(options)
end

#export_backup_plan_template(params = {}) ⇒ Types::ExportBackupPlanTemplateOutput

Returns the backup plan that is specified by the plan ID as a backup template.

Examples:

Request syntax with placeholder values


resp = client.export_backup_plan_template({
  backup_plan_id: "string", # required
})

Response structure


resp.backup_plan_template_json #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

Returns:

See Also:



1510
1511
1512
1513
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1510

def export_backup_plan_template(params = {}, options = {})
  req = build_request(:export_backup_plan_template, params)
  req.send_request(options)
end

#get_backup_plan(params = {}) ⇒ Types::GetBackupPlanOutput

Returns BackupPlan details for the specified BackupPlanId. The details are the body of a backup plan in JSON format, in addition to plan metadata.

Examples:

Request syntax with placeholder values


resp = client.get_backup_plan({
  backup_plan_id: "string", # required
  version_id: "string",
})

Response structure


resp.backup_plan.backup_plan_name #=> String
resp.backup_plan.rules #=> Array
resp.backup_plan.rules[0].rule_name #=> String
resp.backup_plan.rules[0].target_backup_vault_name #=> String
resp.backup_plan.rules[0].schedule_expression #=> String
resp.backup_plan.rules[0].start_window_minutes #=> Integer
resp.backup_plan.rules[0].completion_window_minutes #=> Integer
resp.backup_plan.rules[0].lifecycle.move_to_cold_storage_after_days #=> Integer
resp.backup_plan.rules[0].lifecycle.delete_after_days #=> Integer
resp.backup_plan.rules[0].recovery_point_tags #=> Hash
resp.backup_plan.rules[0].recovery_point_tags["TagKey"] #=> String
resp.backup_plan.rules[0].rule_id #=> String
resp.backup_plan.rules[0].copy_actions #=> Array
resp.backup_plan.rules[0].copy_actions[0].lifecycle.move_to_cold_storage_after_days #=> Integer
resp.backup_plan.rules[0].copy_actions[0].lifecycle.delete_after_days #=> Integer
resp.backup_plan.rules[0].copy_actions[0].destination_backup_vault_arn #=> String
resp.backup_plan.rules[0].enable_continuous_backup #=> Boolean
resp.backup_plan.advanced_backup_settings #=> Array
resp.backup_plan.advanced_backup_settings[0].resource_type #=> String
resp.backup_plan.advanced_backup_settings[0].backup_options #=> Hash
resp.backup_plan.advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String
resp.backup_plan_id #=> String
resp.backup_plan_arn #=> String
resp.version_id #=> String
resp.creator_request_id #=> String
resp.creation_date #=> Time
resp.deletion_date #=> Time
resp.last_execution_date #=> Time
resp.advanced_backup_settings #=> Array
resp.advanced_backup_settings[0].resource_type #=> String
resp.advanced_backup_settings[0].backup_options #=> Hash
resp.advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

  • :version_id (String)

    Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most 1,024 bytes long. Version IDs cannot be edited.

Returns:

See Also:



1584
1585
1586
1587
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1584

def get_backup_plan(params = {}, options = {})
  req = build_request(:get_backup_plan, params)
  req.send_request(options)
end

#get_backup_plan_from_json(params = {}) ⇒ Types::GetBackupPlanFromJSONOutput

Returns a valid JSON document specifying a backup plan or an error.

Examples:

Request syntax with placeholder values


resp = client.get_backup_plan_from_json({
  backup_plan_template_json: "string", # required
})

Response structure


resp.backup_plan.backup_plan_name #=> String
resp.backup_plan.rules #=> Array
resp.backup_plan.rules[0].rule_name #=> String
resp.backup_plan.rules[0].target_backup_vault_name #=> String
resp.backup_plan.rules[0].schedule_expression #=> String
resp.backup_plan.rules[0].start_window_minutes #=> Integer
resp.backup_plan.rules[0].completion_window_minutes #=> Integer
resp.backup_plan.rules[0].lifecycle.move_to_cold_storage_after_days #=> Integer
resp.backup_plan.rules[0].lifecycle.delete_after_days #=> Integer
resp.backup_plan.rules[0].recovery_point_tags #=> Hash
resp.backup_plan.rules[0].recovery_point_tags["TagKey"] #=> String
resp.backup_plan.rules[0].rule_id #=> String
resp.backup_plan.rules[0].copy_actions #=> Array
resp.backup_plan.rules[0].copy_actions[0].lifecycle.move_to_cold_storage_after_days #=> Integer
resp.backup_plan.rules[0].copy_actions[0].lifecycle.delete_after_days #=> Integer
resp.backup_plan.rules[0].copy_actions[0].destination_backup_vault_arn #=> String
resp.backup_plan.rules[0].enable_continuous_backup #=> Boolean
resp.backup_plan.advanced_backup_settings #=> Array
resp.backup_plan.advanced_backup_settings[0].resource_type #=> String
resp.backup_plan.advanced_backup_settings[0].backup_options #=> Hash
resp.backup_plan.advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_template_json (required, String)

    A customer-supplied backup plan document in JSON format.

Returns:

See Also:



1632
1633
1634
1635
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1632

def get_backup_plan_from_json(params = {}, options = {})
  req = build_request(:get_backup_plan_from_json, params)
  req.send_request(options)
end

#get_backup_plan_from_template(params = {}) ⇒ Types::GetBackupPlanFromTemplateOutput

Returns the template specified by its templateId as a backup plan.

Examples:

Request syntax with placeholder values


resp = client.get_backup_plan_from_template({
  backup_plan_template_id: "string", # required
})

Response structure


resp.backup_plan_document.backup_plan_name #=> String
resp.backup_plan_document.rules #=> Array
resp.backup_plan_document.rules[0].rule_name #=> String
resp.backup_plan_document.rules[0].target_backup_vault_name #=> String
resp.backup_plan_document.rules[0].schedule_expression #=> String
resp.backup_plan_document.rules[0].start_window_minutes #=> Integer
resp.backup_plan_document.rules[0].completion_window_minutes #=> Integer
resp.backup_plan_document.rules[0].lifecycle.move_to_cold_storage_after_days #=> Integer
resp.backup_plan_document.rules[0].lifecycle.delete_after_days #=> Integer
resp.backup_plan_document.rules[0].recovery_point_tags #=> Hash
resp.backup_plan_document.rules[0].recovery_point_tags["TagKey"] #=> String
resp.backup_plan_document.rules[0].rule_id #=> String
resp.backup_plan_document.rules[0].copy_actions #=> Array
resp.backup_plan_document.rules[0].copy_actions[0].lifecycle.move_to_cold_storage_after_days #=> Integer
resp.backup_plan_document.rules[0].copy_actions[0].lifecycle.delete_after_days #=> Integer
resp.backup_plan_document.rules[0].copy_actions[0].destination_backup_vault_arn #=> String
resp.backup_plan_document.rules[0].enable_continuous_backup #=> Boolean
resp.backup_plan_document.advanced_backup_settings #=> Array
resp.backup_plan_document.advanced_backup_settings[0].resource_type #=> String
resp.backup_plan_document.advanced_backup_settings[0].backup_options #=> Hash
resp.backup_plan_document.advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_template_id (required, String)

    Uniquely identifies a stored backup plan template.

Returns:

See Also:



1680
1681
1682
1683
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1680

def get_backup_plan_from_template(params = {}, options = {})
  req = build_request(:get_backup_plan_from_template, params)
  req.send_request(options)
end

#get_backup_selection(params = {}) ⇒ Types::GetBackupSelectionOutput

Returns selection metadata and a document in JSON format that specifies a list of resources that are associated with a backup plan.

Examples:

Request syntax with placeholder values


resp = client.get_backup_selection({
  backup_plan_id: "string", # required
  selection_id: "string", # required
})

Response structure


resp.backup_selection.selection_name #=> String
resp.backup_selection.iam_role_arn #=> String
resp.backup_selection.resources #=> Array
resp.backup_selection.resources[0] #=> String
resp.backup_selection.list_of_tags #=> Array
resp.backup_selection.list_of_tags[0].condition_type #=> String, one of "STRINGEQUALS"
resp.backup_selection.list_of_tags[0].condition_key #=> String
resp.backup_selection.list_of_tags[0].condition_value #=> String
resp.selection_id #=> String
resp.backup_plan_id #=> String
resp.creation_date #=> Time
resp.creator_request_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

  • :selection_id (required, String)

    Uniquely identifies the body of a request to assign a set of resources to a backup plan.

Returns:

See Also:



1729
1730
1731
1732
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1729

def get_backup_selection(params = {}, options = {})
  req = build_request(:get_backup_selection, params)
  req.send_request(options)
end

#get_backup_vault_access_policy(params = {}) ⇒ Types::GetBackupVaultAccessPolicyOutput

Returns the access policy document that is associated with the named backup vault.

Examples:

Request syntax with placeholder values


resp = client.get_backup_vault_access_policy({
  backup_vault_name: "BackupVaultName", # required
})

Response structure


resp.backup_vault_name #=> String
resp.backup_vault_arn #=> String
resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

Returns:

See Also:



1765
1766
1767
1768
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1765

def get_backup_vault_access_policy(params = {}, options = {})
  req = build_request(:get_backup_vault_access_policy, params)
  req.send_request(options)
end

#get_backup_vault_notifications(params = {}) ⇒ Types::GetBackupVaultNotificationsOutput

Returns event notifications for the specified backup vault.

Examples:

Request syntax with placeholder values


resp = client.get_backup_vault_notifications({
  backup_vault_name: "BackupVaultName", # required
})

Response structure


resp.backup_vault_name #=> String
resp.backup_vault_arn #=> String
resp.sns_topic_arn #=> String
resp.backup_vault_events #=> Array
resp.backup_vault_events[0] #=> String, one of "BACKUP_JOB_STARTED", "BACKUP_JOB_COMPLETED", "BACKUP_JOB_SUCCESSFUL", "BACKUP_JOB_FAILED", "BACKUP_JOB_EXPIRED", "RESTORE_JOB_STARTED", "RESTORE_JOB_COMPLETED", "RESTORE_JOB_SUCCESSFUL", "RESTORE_JOB_FAILED", "COPY_JOB_STARTED", "COPY_JOB_SUCCESSFUL", "COPY_JOB_FAILED", "RECOVERY_POINT_MODIFIED", "BACKUP_PLAN_CREATED", "BACKUP_PLAN_MODIFIED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

Returns:

See Also:



1803
1804
1805
1806
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1803

def get_backup_vault_notifications(params = {}, options = {})
  req = build_request(:get_backup_vault_notifications, params)
  req.send_request(options)
end

#get_recovery_point_restore_metadata(params = {}) ⇒ Types::GetRecoveryPointRestoreMetadataOutput

Returns a set of metadata key-value pairs that were used to create the backup.

Examples:

Request syntax with placeholder values


resp = client.({
  backup_vault_name: "BackupVaultName", # required
  recovery_point_arn: "ARN", # required
})

Response structure


resp.backup_vault_arn #=> String
resp.recovery_point_arn #=> String
resp. #=> Hash
resp.["MetadataKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :recovery_point_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

Returns:

See Also:



1846
1847
1848
1849
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1846

def (params = {}, options = {})
  req = build_request(:get_recovery_point_restore_metadata, params)
  req.send_request(options)
end

#get_supported_resource_types(params = {}) ⇒ Types::GetSupportedResourceTypesOutput

Returns the Amazon Web Services resource types supported by Backup.

Examples:

Response structure


resp.resource_types #=> Array
resp.resource_types[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



1866
1867
1868
1869
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1866

def get_supported_resource_types(params = {}, options = {})
  req = build_request(:get_supported_resource_types, params)
  req.send_request(options)
end

#list_backup_jobs(params = {}) ⇒ Types::ListBackupJobsOutput

Returns a list of existing backup jobs for an authenticated account for the last 30 days. For a longer period of time, consider using these monitoring tools.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_backup_jobs({
  next_token: "string",
  max_results: 1,
  by_resource_arn: "ARN",
  by_state: "CREATED", # accepts CREATED, PENDING, RUNNING, ABORTING, ABORTED, COMPLETED, FAILED, EXPIRED
  by_backup_vault_name: "BackupVaultName",
  by_created_before: Time.now,
  by_created_after: Time.now,
  by_resource_type: "ResourceType",
  by_account_id: "AccountId",
})

Response structure


resp.backup_jobs #=> Array
resp.backup_jobs[0]. #=> String
resp.backup_jobs[0].backup_job_id #=> String
resp.backup_jobs[0].backup_vault_name #=> String
resp.backup_jobs[0].backup_vault_arn #=> String
resp.backup_jobs[0].recovery_point_arn #=> String
resp.backup_jobs[0].resource_arn #=> String
resp.backup_jobs[0].creation_date #=> Time
resp.backup_jobs[0].completion_date #=> Time
resp.backup_jobs[0].state #=> String, one of "CREATED", "PENDING", "RUNNING", "ABORTING", "ABORTED", "COMPLETED", "FAILED", "EXPIRED"
resp.backup_jobs[0].status_message #=> String
resp.backup_jobs[0].percent_done #=> String
resp.backup_jobs[0].backup_size_in_bytes #=> Integer
resp.backup_jobs[0].iam_role_arn #=> String
resp.backup_jobs[0].created_by.backup_plan_id #=> String
resp.backup_jobs[0].created_by.backup_plan_arn #=> String
resp.backup_jobs[0].created_by.backup_plan_version #=> String
resp.backup_jobs[0].created_by.backup_rule_id #=> String
resp.backup_jobs[0].expected_completion_date #=> Time
resp.backup_jobs[0].start_by #=> Time
resp.backup_jobs[0].resource_type #=> String
resp.backup_jobs[0].bytes_transferred #=> Integer
resp.backup_jobs[0].backup_options #=> Hash
resp.backup_jobs[0].backup_options["BackupOptionKey"] #=> String
resp.backup_jobs[0].backup_type #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

  • :by_resource_arn (String)

    Returns only backup jobs that match the specified resource Amazon Resource Name (ARN).

  • :by_state (String)

    Returns only backup jobs that are in the specified state.

  • :by_backup_vault_name (String)

    Returns only backup jobs that will be stored in the specified backup vault. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :by_created_before (Time, DateTime, Date, Integer, String)

    Returns only backup jobs that were created before the specified date.

  • :by_created_after (Time, DateTime, Date, Integer, String)

    Returns only backup jobs that were created after the specified date.

  • :by_resource_type (String)

    Returns only backup jobs for the specified resources:

    • DynamoDB for Amazon DynamoDB

    • EBS for Amazon Elastic Block Store

    • EC2 for Amazon Elastic Compute Cloud

    • EFS for Amazon Elastic File System

    • RDS for Amazon Relational Database Service

    • Aurora for Amazon Aurora

    • Storage Gateway for Storage Gateway

  • :by_account_id (String)

    The account ID to list the jobs from. Returns only backup jobs associated with the specified account ID.

    If used from an Organizations management account, passing * returns all jobs across the organization.

Returns:

See Also:



1986
1987
1988
1989
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 1986

def list_backup_jobs(params = {}, options = {})
  req = build_request(:list_backup_jobs, params)
  req.send_request(options)
end

#list_backup_plan_templates(params = {}) ⇒ Types::ListBackupPlanTemplatesOutput

Returns metadata of your saved backup plan templates, including the template ID, name, and the creation and deletion dates.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_backup_plan_templates({
  next_token: "string",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.backup_plan_templates_list #=> Array
resp.backup_plan_templates_list[0].backup_plan_template_id #=> String
resp.backup_plan_templates_list[0].backup_plan_template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

Returns:

See Also:



2028
2029
2030
2031
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2028

def list_backup_plan_templates(params = {}, options = {})
  req = build_request(:list_backup_plan_templates, params)
  req.send_request(options)
end

#list_backup_plan_versions(params = {}) ⇒ Types::ListBackupPlanVersionsOutput

Returns version metadata of your backup plans, including Amazon Resource Names (ARNs), backup plan IDs, creation and deletion dates, plan names, and version IDs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_backup_plan_versions({
  backup_plan_id: "string", # required
  next_token: "string",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.backup_plan_versions_list #=> Array
resp.backup_plan_versions_list[0].backup_plan_arn #=> String
resp.backup_plan_versions_list[0].backup_plan_id #=> String
resp.backup_plan_versions_list[0].creation_date #=> Time
resp.backup_plan_versions_list[0].deletion_date #=> Time
resp.backup_plan_versions_list[0].version_id #=> String
resp.backup_plan_versions_list[0].backup_plan_name #=> String
resp.backup_plan_versions_list[0].creator_request_id #=> String
resp.backup_plan_versions_list[0].last_execution_date #=> Time
resp.backup_plan_versions_list[0].advanced_backup_settings #=> Array
resp.backup_plan_versions_list[0].advanced_backup_settings[0].resource_type #=> String
resp.backup_plan_versions_list[0].advanced_backup_settings[0].backup_options #=> Hash
resp.backup_plan_versions_list[0].advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

Returns:

See Also:



2085
2086
2087
2088
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2085

def list_backup_plan_versions(params = {}, options = {})
  req = build_request(:list_backup_plan_versions, params)
  req.send_request(options)
end

#list_backup_plans(params = {}) ⇒ Types::ListBackupPlansOutput

Returns a list of all active backup plans for an authenticated account. The list contains information such as Amazon Resource Names (ARNs), plan IDs, creation and deletion dates, version IDs, plan names, and creator request IDs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_backup_plans({
  next_token: "string",
  max_results: 1,
  include_deleted: false,
})

Response structure


resp.next_token #=> String
resp.backup_plans_list #=> Array
resp.backup_plans_list[0].backup_plan_arn #=> String
resp.backup_plans_list[0].backup_plan_id #=> String
resp.backup_plans_list[0].creation_date #=> Time
resp.backup_plans_list[0].deletion_date #=> Time
resp.backup_plans_list[0].version_id #=> String
resp.backup_plans_list[0].backup_plan_name #=> String
resp.backup_plans_list[0].creator_request_id #=> String
resp.backup_plans_list[0].last_execution_date #=> Time
resp.backup_plans_list[0].advanced_backup_settings #=> Array
resp.backup_plans_list[0].advanced_backup_settings[0].resource_type #=> String
resp.backup_plans_list[0].advanced_backup_settings[0].backup_options #=> Hash
resp.backup_plans_list[0].advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

  • :include_deleted (Boolean)

    A Boolean value with a default value of FALSE that returns deleted backup plans when set to TRUE.

Returns:

See Also:



2144
2145
2146
2147
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2144

def list_backup_plans(params = {}, options = {})
  req = build_request(:list_backup_plans, params)
  req.send_request(options)
end

#list_backup_selections(params = {}) ⇒ Types::ListBackupSelectionsOutput

Returns an array containing metadata of the resources associated with the target backup plan.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_backup_selections({
  backup_plan_id: "string", # required
  next_token: "string",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.backup_selections_list #=> Array
resp.backup_selections_list[0].selection_id #=> String
resp.backup_selections_list[0].selection_name #=> String
resp.backup_selections_list[0].backup_plan_id #=> String
resp.backup_selections_list[0].creation_date #=> Time
resp.backup_selections_list[0].creator_request_id #=> String
resp.backup_selections_list[0].iam_role_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

Returns:

See Also:



2194
2195
2196
2197
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2194

def list_backup_selections(params = {}, options = {})
  req = build_request(:list_backup_selections, params)
  req.send_request(options)
end

#list_backup_vaults(params = {}) ⇒ Types::ListBackupVaultsOutput

Returns a list of recovery point storage containers along with information about them.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_backup_vaults({
  next_token: "string",
  max_results: 1,
})

Response structure


resp.backup_vault_list #=> Array
resp.backup_vault_list[0].backup_vault_name #=> String
resp.backup_vault_list[0].backup_vault_arn #=> String
resp.backup_vault_list[0].creation_date #=> Time
resp.backup_vault_list[0].encryption_key_arn #=> String
resp.backup_vault_list[0].creator_request_id #=> String
resp.backup_vault_list[0].number_of_recovery_points #=> Integer
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

Returns:

See Also:



2240
2241
2242
2243
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2240

def list_backup_vaults(params = {}, options = {})
  req = build_request(:list_backup_vaults, params)
  req.send_request(options)
end

#list_copy_jobs(params = {}) ⇒ Types::ListCopyJobsOutput

Returns metadata about your copy jobs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_copy_jobs({
  next_token: "string",
  max_results: 1,
  by_resource_arn: "ARN",
  by_state: "CREATED", # accepts CREATED, RUNNING, COMPLETED, FAILED
  by_created_before: Time.now,
  by_created_after: Time.now,
  by_resource_type: "ResourceType",
  by_destination_vault_arn: "string",
  by_account_id: "AccountId",
})

Response structure


resp.copy_jobs #=> Array
resp.copy_jobs[0]. #=> String
resp.copy_jobs[0].copy_job_id #=> String
resp.copy_jobs[0].source_backup_vault_arn #=> String
resp.copy_jobs[0].source_recovery_point_arn #=> String
resp.copy_jobs[0].destination_backup_vault_arn #=> String
resp.copy_jobs[0].destination_recovery_point_arn #=> String
resp.copy_jobs[0].resource_arn #=> String
resp.copy_jobs[0].creation_date #=> Time
resp.copy_jobs[0].completion_date #=> Time
resp.copy_jobs[0].state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED"
resp.copy_jobs[0].status_message #=> String
resp.copy_jobs[0].backup_size_in_bytes #=> Integer
resp.copy_jobs[0].iam_role_arn #=> String
resp.copy_jobs[0].created_by.backup_plan_id #=> String
resp.copy_jobs[0].created_by.backup_plan_arn #=> String
resp.copy_jobs[0].created_by.backup_plan_version #=> String
resp.copy_jobs[0].created_by.backup_rule_id #=> String
resp.copy_jobs[0].resource_type #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

  • :by_resource_arn (String)

    Returns only copy jobs that match the specified resource Amazon Resource Name (ARN).

  • :by_state (String)

    Returns only copy jobs that are in the specified state.

  • :by_created_before (Time, DateTime, Date, Integer, String)

    Returns only copy jobs that were created before the specified date.

  • :by_created_after (Time, DateTime, Date, Integer, String)

    Returns only copy jobs that were created after the specified date.

  • :by_resource_type (String)

    Returns only backup jobs for the specified resources:

    • DynamoDB for Amazon DynamoDB

    • EBS for Amazon Elastic Block Store

    • EC2 for Amazon Elastic Compute Cloud

    • EFS for Amazon Elastic File System

    • RDS for Amazon Relational Database Service

    • Aurora for Amazon Aurora

    • Storage Gateway for Storage Gateway

  • :by_destination_vault_arn (String)

    An Amazon Resource Name (ARN) that uniquely identifies a source backup vault to copy from; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

  • :by_account_id (String)

    The account ID to list the jobs from. Returns only copy jobs associated with the specified account ID.

Returns:

See Also:



2343
2344
2345
2346
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2343

def list_copy_jobs(params = {}, options = {})
  req = build_request(:list_copy_jobs, params)
  req.send_request(options)
end

#list_frameworks(params = {}) ⇒ Types::ListFrameworksOutput

Returns a list of all frameworks for an Amazon Web Services account and Amazon Web Services Region.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_frameworks({
  max_results: 1,
  next_token: "string",
})

Response structure


resp.frameworks #=> Array
resp.frameworks[0].framework_name #=> String
resp.frameworks[0].framework_arn #=> String
resp.frameworks[0].framework_description #=> String
resp.frameworks[0].number_of_controls #=> Integer
resp.frameworks[0].creation_time #=> Time
resp.frameworks[0].deployment_status #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The number of desired results from 1 to 1000. Optional. If unspecified, the query will return 1 MB of data.

  • :next_token (String)

    An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

See Also:



2389
2390
2391
2392
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2389

def list_frameworks(params = {}, options = {})
  req = build_request(:list_frameworks, params)
  req.send_request(options)
end

#list_protected_resources(params = {}) ⇒ Types::ListProtectedResourcesOutput

Returns an array of resources successfully backed up by Backup, including the time the resource was saved, an Amazon Resource Name (ARN) of the resource, and a resource type.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_protected_resources({
  next_token: "string",
  max_results: 1,
})

Response structure


resp.results #=> Array
resp.results[0].resource_arn #=> String
resp.results[0].resource_type #=> String
resp.results[0].last_backup_time #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

Returns:

See Also:



2433
2434
2435
2436
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2433

def list_protected_resources(params = {}, options = {})
  req = build_request(:list_protected_resources, params)
  req.send_request(options)
end

#list_recovery_points_by_backup_vault(params = {}) ⇒ Types::ListRecoveryPointsByBackupVaultOutput

Returns detailed information about the recovery points stored in a backup vault.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_recovery_points_by_backup_vault({
  backup_vault_name: "BackupVaultName", # required
  next_token: "string",
  max_results: 1,
  by_resource_arn: "ARN",
  by_resource_type: "ResourceType",
  by_backup_plan_id: "string",
  by_created_before: Time.now,
  by_created_after: Time.now,
})

Response structure


resp.next_token #=> String
resp.recovery_points #=> Array
resp.recovery_points[0].recovery_point_arn #=> String
resp.recovery_points[0].backup_vault_name #=> String
resp.recovery_points[0].backup_vault_arn #=> String
resp.recovery_points[0].source_backup_vault_arn #=> String
resp.recovery_points[0].resource_arn #=> String
resp.recovery_points[0].resource_type #=> String
resp.recovery_points[0].created_by.backup_plan_id #=> String
resp.recovery_points[0].created_by.backup_plan_arn #=> String
resp.recovery_points[0].created_by.backup_plan_version #=> String
resp.recovery_points[0].created_by.backup_rule_id #=> String
resp.recovery_points[0].iam_role_arn #=> String
resp.recovery_points[0].status #=> String, one of "COMPLETED", "PARTIAL", "DELETING", "EXPIRED"
resp.recovery_points[0].status_message #=> String
resp.recovery_points[0].creation_date #=> Time
resp.recovery_points[0].completion_date #=> Time
resp.recovery_points[0].backup_size_in_bytes #=> Integer
resp.recovery_points[0].calculated_lifecycle.move_to_cold_storage_at #=> Time
resp.recovery_points[0].calculated_lifecycle.delete_at #=> Time
resp.recovery_points[0].lifecycle.move_to_cold_storage_after_days #=> Integer
resp.recovery_points[0].lifecycle.delete_after_days #=> Integer
resp.recovery_points[0].encryption_key_arn #=> String
resp.recovery_points[0].is_encrypted #=> Boolean
resp.recovery_points[0].last_restore_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

    Backup vault name might not be available when a supported service creates the backup.

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

  • :by_resource_arn (String)

    Returns only recovery points that match the specified resource Amazon Resource Name (ARN).

  • :by_resource_type (String)

    Returns only recovery points that match the specified resource type.

  • :by_backup_plan_id (String)

    Returns only recovery points that match the specified backup plan ID.

  • :by_created_before (Time, DateTime, Date, Integer, String)

    Returns only recovery points that were created before the specified timestamp.

  • :by_created_after (Time, DateTime, Date, Integer, String)

    Returns only recovery points that were created after the specified timestamp.

Returns:

See Also:



2531
2532
2533
2534
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2531

def list_recovery_points_by_backup_vault(params = {}, options = {})
  req = build_request(:list_recovery_points_by_backup_vault, params)
  req.send_request(options)
end

#list_recovery_points_by_resource(params = {}) ⇒ Types::ListRecoveryPointsByResourceOutput

Returns detailed information about all the recovery points of the type specified by a resource Amazon Resource Name (ARN).

For Amazon EFS and Amazon EC2, this action only lists recovery points created by Backup.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_recovery_points_by_resource({
  resource_arn: "ARN", # required
  next_token: "string",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.recovery_points #=> Array
resp.recovery_points[0].recovery_point_arn #=> String
resp.recovery_points[0].creation_date #=> Time
resp.recovery_points[0].status #=> String, one of "COMPLETED", "PARTIAL", "DELETING", "EXPIRED"
resp.recovery_points[0].status_message #=> String
resp.recovery_points[0].encryption_key_arn #=> String
resp.recovery_points[0].backup_size_bytes #=> Integer
resp.recovery_points[0].backup_vault_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    An ARN that uniquely identifies a resource. The format of the ARN depends on the resource type.

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

    Amazon RDS requires a value of at least 20.

Returns:

See Also:



2592
2593
2594
2595
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2592

def list_recovery_points_by_resource(params = {}, options = {})
  req = build_request(:list_recovery_points_by_resource, params)
  req.send_request(options)
end

#list_report_jobs(params = {}) ⇒ Types::ListReportJobsOutput

Returns details about your report jobs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_report_jobs({
  by_report_plan_name: "ReportPlanName",
  by_creation_before: Time.now,
  by_creation_after: Time.now,
  by_status: "string",
  max_results: 1,
  next_token: "string",
})

Response structure


resp.report_jobs #=> Array
resp.report_jobs[0].report_job_id #=> String
resp.report_jobs[0].report_plan_arn #=> String
resp.report_jobs[0].report_template #=> String
resp.report_jobs[0].creation_time #=> Time
resp.report_jobs[0].completion_time #=> Time
resp.report_jobs[0].status #=> String
resp.report_jobs[0].status_message #=> String
resp.report_jobs[0].report_destination.s3_bucket_name #=> String
resp.report_jobs[0].report_destination.s3_keys #=> Array
resp.report_jobs[0].report_destination.s3_keys[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :by_report_plan_name (String)

    Returns only report jobs with the specified report plan name.

  • :by_creation_before (Time, DateTime, Date, Integer, String)

    Returns only report jobs that were created before the date and time specified in Unix format and Coordinated Universal Time (UTC). For example, the value 1516925490 represents Friday, January 26, 2018 12:11:30 AM.

  • :by_creation_after (Time, DateTime, Date, Integer, String)

    Returns only report jobs that were created after the date and time specified in Unix format and Coordinated Universal Time (UTC). For example, the value 1516925490 represents Friday, January 26, 2018 12:11:30 AM.

  • :by_status (String)

    Returns only report jobs that are in the specified status. The statuses are:

    CREATED | RUNNING | COMPLETED | FAILED

  • :max_results (Integer)

    The number of desired results from 1 to 1000. Optional. If unspecified, the query will return 1 MB of data.

  • :next_token (String)

    An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

See Also:



2666
2667
2668
2669
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2666

def list_report_jobs(params = {}, options = {})
  req = build_request(:list_report_jobs, params)
  req.send_request(options)
end

#list_report_plans(params = {}) ⇒ Types::ListReportPlansOutput

Returns a list of your report plans. For detailed information about a single report plan, use DescribeReportPlan.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_report_plans({
  max_results: 1,
  next_token: "string",
})

Response structure


resp.report_plans #=> Array
resp.report_plans[0].report_plan_arn #=> String
resp.report_plans[0].report_plan_name #=> String
resp.report_plans[0].report_plan_description #=> String
resp.report_plans[0].report_setting.report_template #=> String
resp.report_plans[0].report_delivery_channel.s3_bucket_name #=> String
resp.report_plans[0].report_delivery_channel.s3_key_prefix #=> String
resp.report_plans[0].report_delivery_channel.formats #=> Array
resp.report_plans[0].report_delivery_channel.formats[0] #=> String
resp.report_plans[0].deployment_status #=> String
resp.report_plans[0].creation_time #=> Time
resp.report_plans[0].last_attempted_execution_time #=> Time
resp.report_plans[0].last_successful_execution_time #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The number of desired results from 1 to 1000. Optional. If unspecified, the query will return 1 MB of data.

  • :next_token (String)

    An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

Returns:

See Also:



2718
2719
2720
2721
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2718

def list_report_plans(params = {}, options = {})
  req = build_request(:list_report_plans, params)
  req.send_request(options)
end

#list_restore_jobs(params = {}) ⇒ Types::ListRestoreJobsOutput

Returns a list of jobs that Backup initiated to restore a saved resource, including details about the recovery process.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_restore_jobs({
  next_token: "string",
  max_results: 1,
  by_account_id: "AccountId",
  by_created_before: Time.now,
  by_created_after: Time.now,
  by_status: "PENDING", # accepts PENDING, RUNNING, COMPLETED, ABORTED, FAILED
})

Response structure


resp.restore_jobs #=> Array
resp.restore_jobs[0]. #=> String
resp.restore_jobs[0].restore_job_id #=> String
resp.restore_jobs[0].recovery_point_arn #=> String
resp.restore_jobs[0].creation_date #=> Time
resp.restore_jobs[0].completion_date #=> Time
resp.restore_jobs[0].status #=> String, one of "PENDING", "RUNNING", "COMPLETED", "ABORTED", "FAILED"
resp.restore_jobs[0].status_message #=> String
resp.restore_jobs[0].percent_done #=> String
resp.restore_jobs[0].backup_size_in_bytes #=> Integer
resp.restore_jobs[0].iam_role_arn #=> String
resp.restore_jobs[0].expected_completion_time_minutes #=> Integer
resp.restore_jobs[0].created_resource_arn #=> String
resp.restore_jobs[0].resource_type #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

  • :by_account_id (String)

    The account ID to list the jobs from. Returns only restore jobs associated with the specified account ID.

  • :by_created_before (Time, DateTime, Date, Integer, String)

    Returns only restore jobs that were created before the specified date.

  • :by_created_after (Time, DateTime, Date, Integer, String)

    Returns only restore jobs that were created after the specified date.

  • :by_status (String)

    Returns only restore jobs associated with the specified job status.

Returns:

See Also:



2788
2789
2790
2791
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2788

def list_restore_jobs(params = {}, options = {})
  req = build_request(:list_restore_jobs, params)
  req.send_request(options)
end

#list_tags(params = {}) ⇒ Types::ListTagsOutput

Returns a list of key-value pairs assigned to a target recovery point, backup plan, or backup vault.

ListTags are currently only supported with Amazon EFS backups.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_tags({
  resource_arn: "ARN", # required
  next_token: "string",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the type of resource. Valid targets for ListTags are recovery points, backup plans, and backup vaults.

  • :next_token (String)

    The next item following a partial list of returned items. For example, if a request is made to return maxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the next token.

  • :max_results (Integer)

    The maximum number of items to be returned.

Returns:

See Also:



2839
2840
2841
2842
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2839

def list_tags(params = {}, options = {})
  req = build_request(:list_tags, params)
  req.send_request(options)
end

#put_backup_vault_access_policy(params = {}) ⇒ Struct

Sets a resource-based policy that is used to manage access permissions on the target backup vault. Requires a backup vault name and an access policy document in JSON format.

Examples:

Request syntax with placeholder values


resp = client.put_backup_vault_access_policy({
  backup_vault_name: "BackupVaultName", # required
  policy: "IAMPolicy",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :policy (String)

    The backup vault access policy document in JSON format.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2870
2871
2872
2873
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2870

def put_backup_vault_access_policy(params = {}, options = {})
  req = build_request(:put_backup_vault_access_policy, params)
  req.send_request(options)
end

#put_backup_vault_notifications(params = {}) ⇒ Struct

Turns on notifications on a backup vault for the specified topic and events.

Examples:

Request syntax with placeholder values


resp = client.put_backup_vault_notifications({
  backup_vault_name: "BackupVaultName", # required
  sns_topic_arn: "ARN", # required
  backup_vault_events: ["BACKUP_JOB_STARTED"], # required, accepts BACKUP_JOB_STARTED, BACKUP_JOB_COMPLETED, BACKUP_JOB_SUCCESSFUL, BACKUP_JOB_FAILED, BACKUP_JOB_EXPIRED, RESTORE_JOB_STARTED, RESTORE_JOB_COMPLETED, RESTORE_JOB_SUCCESSFUL, RESTORE_JOB_FAILED, COPY_JOB_STARTED, COPY_JOB_SUCCESSFUL, COPY_JOB_FAILED, RECOVERY_POINT_MODIFIED, BACKUP_PLAN_CREATED, BACKUP_PLAN_MODIFIED
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :sns_topic_arn (required, String)

    The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s events; for example, arn:aws:sns:us-west-2:111122223333:MyVaultTopic.

  • :backup_vault_events (required, Array<String>)

    An array of events that indicate the status of jobs to back up resources to the backup vault.

    The following events are supported:

    BACKUP_JOB_STARTED, BACKUP_JOB_COMPLETED,

    COPY_JOB_STARTED, COPY_JOB_SUCCESSFUL, COPY_JOB_FAILED,

    RESTORE_JOB_STARTED, RESTORE_JOB_COMPLETED, and RECOVERY_POINT_MODIFIED.

    To find failed backup jobs, use BACKUP_JOB_COMPLETED and filter using event metadata.

    Other events in the following list are deprecated.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2923
2924
2925
2926
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 2923

def put_backup_vault_notifications(params = {}, options = {})
  req = build_request(:put_backup_vault_notifications, params)
  req.send_request(options)
end

#start_backup_job(params = {}) ⇒ Types::StartBackupJobOutput

Starts an on-demand backup job for the specified resource.

Examples:

Request syntax with placeholder values


resp = client.start_backup_job({
  backup_vault_name: "BackupVaultName", # required
  resource_arn: "ARN", # required
  iam_role_arn: "IAMRoleArn", # required
  idempotency_token: "string",
  start_window_minutes: 1,
  complete_window_minutes: 1,
  lifecycle: {
    move_to_cold_storage_after_days: 1,
    delete_after_days: 1,
  },
  recovery_point_tags: {
    "TagKey" => "TagValue",
  },
  backup_options: {
    "BackupOptionKey" => "BackupOptionValue",
  },
})

Response structure


resp.backup_job_id #=> String
resp.recovery_point_arn #=> String
resp.creation_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :resource_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

  • :iam_role_arn (required, String)

    Specifies the IAM role ARN used to create the target recovery point; for example, arn:aws:iam::123456789012:role/S3Access.

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to StartBackupJob. Retrying a successful request with the same idempotency token results in a success message with no action taken.

  • :start_window_minutes (Integer)

    A value in minutes after a backup is scheduled before a job will be canceled if it doesn't start successfully. This value is optional, and the default is 8 hours.

  • :complete_window_minutes (Integer)

    A value in minutes during which a successfully started backup must complete, or else AWS Backup will cancel the job. This value is optional. This value begins counting down from when the backup was scheduled. It does not add additional time for StartWindowMinutes, or if the backup started later than scheduled.

  • :lifecycle (Types::Lifecycle)

    The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. Backup will transition and expire backups automatically according to the lifecycle that you define.

    Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days. Therefore, the “expire after days” setting must be 90 days greater than the “transition to cold after days” setting. The “transition to cold after days” setting cannot be changed after a backup has been transitioned to cold.

    Only Amazon EFS file system backups can be transitioned to cold storage.

  • :recovery_point_tags (Hash<String,String>)

    To help organize your resources, you can assign your own metadata to the resources that you create. Each tag is a key-value pair.

  • :backup_options (Hash<String,String>)

    Specifies the backup option for a selected resource. This option is only available for Windows Volume Shadow Copy Service (VSS) backup jobs.

    Valid values: Set to "WindowsVSS":"enabled" to enable the WindowsVSS backup option and create a Windows VSS backup. Set to "WindowsVSS""disabled" to create a regular backup. The WindowsVSS option is not enabled by default.

Returns:

See Also:



3027
3028
3029
3030
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3027

def start_backup_job(params = {}, options = {})
  req = build_request(:start_backup_job, params)
  req.send_request(options)
end

#start_copy_job(params = {}) ⇒ Types::StartCopyJobOutput

Starts a job to create a one-time copy of the specified resource.

Does not support continuous backups.

Examples:

Request syntax with placeholder values


resp = client.start_copy_job({
  recovery_point_arn: "ARN", # required
  source_backup_vault_name: "BackupVaultName", # required
  destination_backup_vault_arn: "ARN", # required
  iam_role_arn: "IAMRoleArn", # required
  idempotency_token: "string",
  lifecycle: {
    move_to_cold_storage_after_days: 1,
    delete_after_days: 1,
  },
})

Response structure


resp.copy_job_id #=> String
resp.creation_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :recovery_point_arn (required, String)

    An ARN that uniquely identifies a recovery point to use for the copy job; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

  • :source_backup_vault_name (required, String)

    The name of a logical source container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :destination_backup_vault_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a destination backup vault to copy to; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

  • :iam_role_arn (required, String)

    Specifies the IAM role ARN used to copy the target recovery point; for example, arn:aws:iam::123456789012:role/S3Access.

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to StartCopyJob. Retrying a successful request with the same idempotency token results in a success message with no action taken.

  • :lifecycle (Types::Lifecycle)

    Contains an array of Transition objects specifying how long in days before a recovery point transitions to cold storage or is deleted.

    Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days. Therefore, on the console, the “expire after days” setting must be 90 days greater than the “transition to cold after days” setting. The “transition to cold after days” setting cannot be changed after a backup has been transitioned to cold.

    Only Amazon EFS file system backups can be transitioned to cold storage.

Returns:

See Also:



3103
3104
3105
3106
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3103

def start_copy_job(params = {}, options = {})
  req = build_request(:start_copy_job, params)
  req.send_request(options)
end

#start_report_job(params = {}) ⇒ Types::StartReportJobOutput

Starts an on-demand report job for the specified report plan.

Examples:

Request syntax with placeholder values


resp = client.start_report_job({
  report_plan_name: "ReportPlanName", # required
  idempotency_token: "string",
})

Response structure


resp.report_job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_plan_name (required, String)

    The unique name of a report plan.

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to StartReportJobInput. Retrying a successful request with the same idempotency token results in a success message with no action taken.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



3141
3142
3143
3144
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3141

def start_report_job(params = {}, options = {})
  req = build_request(:start_report_job, params)
  req.send_request(options)
end

#start_restore_job(params = {}) ⇒ Types::StartRestoreJobOutput

Recovers the saved resource identified by an Amazon Resource Name (ARN).

Examples:

Request syntax with placeholder values


resp = client.start_restore_job({
  recovery_point_arn: "ARN", # required
  metadata: { # required
    "MetadataKey" => "MetadataValue",
  },
  iam_role_arn: "IAMRoleArn", # required
  idempotency_token: "string",
  resource_type: "ResourceType",
})

Response structure


resp.restore_job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :recovery_point_arn (required, String)

    An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

  • :metadata (required, Hash<String,String>)

    A set of metadata key-value pairs. Contains information, such as a resource name, required to restore a recovery point.

    You can get configuration metadata about a resource at the time it was backed up by calling GetRecoveryPointRestoreMetadata. However, values in addition to those provided by GetRecoveryPointRestoreMetadata might be required to restore a resource. For example, you might need to provide a new resource name if the original already exists.

    You need to specify specific metadata to restore an Amazon Elastic File System (Amazon EFS) instance:

    • file-system-id: The ID of the Amazon EFS file system that is backed up by Backup. Returned in GetRecoveryPointRestoreMetadata.

    • Encrypted: A Boolean value that, if true, specifies that the file system is encrypted. If KmsKeyId is specified, Encrypted must be set to true.

    • KmsKeyId: Specifies the Amazon Web Services KMS key that is used to encrypt the restored file system. You can specify a key from another Amazon Web Services account provided that key it is properly shared with your account via Amazon Web Services KMS.

    • PerformanceMode: Specifies the throughput mode of the file system.

    • CreationToken: A user-supplied value that ensures the uniqueness (idempotency) of the request.

    • newFileSystem: A Boolean value that, if true, specifies that the recovery point is restored to a new Amazon EFS file system.

    • ItemsToRestore: An array of one to five strings where each string is a file path. Use ItemsToRestore to restore specific files or directories rather than the entire file system. This parameter is optional. For example, "itemsToRestore":"["/my.test"]".

  • :iam_role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role that Backup uses to create the target recovery point; for example, arn:aws:iam::123456789012:role/S3Access.

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to StartRestoreJob. Retrying a successful request with the same idempotency token results in a success message with no action taken.

  • :resource_type (String)

    Starts a job to restore a recovery point for one of the following resources:

    • DynamoDB for Amazon DynamoDB

    • EBS for Amazon Elastic Block Store

    • EC2 for Amazon Elastic Compute Cloud

    • EFS for Amazon Elastic File System

    • RDS for Amazon Relational Database Service

    • Aurora for Amazon Aurora

    • Storage Gateway for Storage Gateway

Returns:

See Also:



3246
3247
3248
3249
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3246

def start_restore_job(params = {}, options = {})
  req = build_request(:start_restore_job, params)
  req.send_request(options)
end

#stop_backup_job(params = {}) ⇒ Struct

Attempts to cancel a job to create a one-time backup of a resource.

Examples:

Request syntax with placeholder values


resp = client.stop_backup_job({
  backup_job_id: "string", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_job_id (required, String)

    Uniquely identifies a request to Backup to back up a resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3268
3269
3270
3271
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3268

def stop_backup_job(params = {}, options = {})
  req = build_request(:stop_backup_job, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Assigns a set of key-value pairs to a recovery point, backup plan, or backup vault identified by an Amazon Resource Name (ARN).

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "ARN", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    An ARN that uniquely identifies a resource. The format of the ARN depends on the type of the tagged resource.

  • :tags (required, Hash<String,String>)

    Key-value pairs that are used to help organize your resources. You can assign your own metadata to the resources you create.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3299
3300
3301
3302
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3299

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes a set of key-value pairs from a recovery point, backup plan, or backup vault identified by an Amazon Resource Name (ARN)

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "ARN", # required
  tag_key_list: ["string"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    An ARN that uniquely identifies a resource. The format of the ARN depends on the type of the tagged resource.

  • :tag_key_list (required, Array<String>)

    A list of keys to identify which key-value tags to remove from a resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3328
3329
3330
3331
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3328

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_backup_plan(params = {}) ⇒ Types::UpdateBackupPlanOutput

Updates an existing backup plan identified by its backupPlanId with the input document in JSON format. The new version is uniquely identified by a VersionId.

Examples:

Request syntax with placeholder values


resp = client.update_backup_plan({
  backup_plan_id: "string", # required
  backup_plan: { # required
    backup_plan_name: "BackupPlanName", # required
    rules: [ # required
      {
        rule_name: "BackupRuleName", # required
        target_backup_vault_name: "BackupVaultName", # required
        schedule_expression: "CronExpression",
        start_window_minutes: 1,
        completion_window_minutes: 1,
        lifecycle: {
          move_to_cold_storage_after_days: 1,
          delete_after_days: 1,
        },
        recovery_point_tags: {
          "TagKey" => "TagValue",
        },
        copy_actions: [
          {
            lifecycle: {
              move_to_cold_storage_after_days: 1,
              delete_after_days: 1,
            },
            destination_backup_vault_arn: "ARN", # required
          },
        ],
        enable_continuous_backup: false,
      },
    ],
    advanced_backup_settings: [
      {
        resource_type: "ResourceType",
        backup_options: {
          "BackupOptionKey" => "BackupOptionValue",
        },
      },
    ],
  },
})

Response structure


resp.backup_plan_id #=> String
resp.backup_plan_arn #=> String
resp.creation_date #=> Time
resp.version_id #=> String
resp.advanced_backup_settings #=> Array
resp.advanced_backup_settings[0].resource_type #=> String
resp.advanced_backup_settings[0].backup_options #=> Hash
resp.advanced_backup_settings[0].backup_options["BackupOptionKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_plan_id (required, String)

    Uniquely identifies a backup plan.

  • :backup_plan (required, Types::BackupPlanInput)

    Specifies the body of a backup plan. Includes a BackupPlanName and one or more sets of Rules.

Returns:

See Also:



3410
3411
3412
3413
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3410

def update_backup_plan(params = {}, options = {})
  req = build_request(:update_backup_plan, params)
  req.send_request(options)
end

#update_framework(params = {}) ⇒ Types::UpdateFrameworkOutput

Updates an existing framework identified by its FrameworkName with the input document in JSON format.

Examples:

Request syntax with placeholder values


resp = client.update_framework({
  framework_name: "FrameworkName", # required
  framework_description: "FrameworkDescription",
  framework_controls: [
    {
      control_name: "ControlName", # required
      control_input_parameters: [
        {
          parameter_name: "ParameterName",
          parameter_value: "ParameterValue",
        },
      ],
      control_scope: {
        compliance_resource_ids: ["string"],
        compliance_resource_types: ["ARN"],
        tags: {
          "string" => "string",
        },
      },
    },
  ],
  idempotency_token: "string",
})

Response structure


resp.framework_name #=> String
resp.framework_arn #=> String
resp.creation_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :framework_name (required, String)

    The unique name of a framework. This name is between 1 and 256 characters, starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (_).

  • :framework_description (String)

    An optional description of the framework with a maximum 1,024 characters.

  • :framework_controls (Array<Types::FrameworkControl>)

    A list of the controls that make up the framework. Each control in the list has a name, input parameters, and scope.

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to UpdateFrameworkInput. Retrying a successful request with the same idempotency token results in a success message with no action taken.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



3482
3483
3484
3485
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3482

def update_framework(params = {}, options = {})
  req = build_request(:update_framework, params)
  req.send_request(options)
end

#update_global_settings(params = {}) ⇒ Struct

Updates whether the Amazon Web Services account is opted in to cross-account backup. Returns an error if the account is not an Organizations management account. Use the DescribeGlobalSettings API to determine the current settings.

Examples:

Request syntax with placeholder values


resp = client.update_global_settings({
  global_settings: {
    "GlobalSettingsName" => "GlobalSettingsValue",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_settings (Hash<String,String>)

    A value for isCrossAccountBackupEnabled and a Region. Example: update-global-settings --global-settings isCrossAccountBackupEnabled=false --region us-west-2.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3511
3512
3513
3514
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3511

def update_global_settings(params = {}, options = {})
  req = build_request(:update_global_settings, params)
  req.send_request(options)
end

#update_recovery_point_lifecycle(params = {}) ⇒ Types::UpdateRecoveryPointLifecycleOutput

Sets the transition lifecycle of a recovery point.

The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. Backup transitions and expires backups automatically according to the lifecycle that you define.

Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days. Therefore, the “expire after days” setting must be 90 days greater than the “transition to cold after days” setting. The “transition to cold after days” setting cannot be changed after a backup has been transitioned to cold.

Only Amazon EFS file system backups can be transitioned to cold storage.

Does not support continuous backups.

Examples:

Request syntax with placeholder values


resp = client.update_recovery_point_lifecycle({
  backup_vault_name: "BackupVaultName", # required
  recovery_point_arn: "ARN", # required
  lifecycle: {
    move_to_cold_storage_after_days: 1,
    delete_after_days: 1,
  },
})

Response structure


resp.backup_vault_arn #=> String
resp.recovery_point_arn #=> String
resp.lifecycle.move_to_cold_storage_after_days #=> Integer
resp.lifecycle.delete_after_days #=> Integer
resp.calculated_lifecycle.move_to_cold_storage_at #=> Time
resp.calculated_lifecycle.delete_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :backup_vault_name (required, String)

    The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

  • :recovery_point_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

  • :lifecycle (Types::Lifecycle)

    The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. Backup transitions and expires backups automatically according to the lifecycle that you define.

    Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days. Therefore, the “expire after days” setting must be 90 days greater than the “transition to cold after days” setting. The “transition to cold after days” setting cannot be changed after a backup has been transitioned to cold.

Returns:

See Also:



3586
3587
3588
3589
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3586

def update_recovery_point_lifecycle(params = {}, options = {})
  req = build_request(:update_recovery_point_lifecycle, params)
  req.send_request(options)
end

#update_region_settings(params = {}) ⇒ Struct

Updates the current service opt-in settings for the Region. If service-opt-in is enabled for a service, Backup tries to protect that service's resources in this Region, when the resource is included in an on-demand backup or scheduled backup plan. Otherwise, Backup does not try to protect that service's resources in this Region. Use the DescribeRegionSettings API to determine the resource types that are supported.

Examples:

Request syntax with placeholder values


resp = client.update_region_settings({
  resource_type_opt_in_preference: {
    "ResourceType" => false,
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_type_opt_in_preference (Hash<String,Boolean>)

    Updates the list of services along with the opt-in preferences for the Region.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3617
3618
3619
3620
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3617

def update_region_settings(params = {}, options = {})
  req = build_request(:update_region_settings, params)
  req.send_request(options)
end

#update_report_plan(params = {}) ⇒ Types::UpdateReportPlanOutput

Updates an existing report plan identified by its ReportPlanName with the input document in JSON format.

Examples:

Request syntax with placeholder values


resp = client.update_report_plan({
  report_plan_name: "ReportPlanName", # required
  report_plan_description: "ReportPlanDescription",
  report_delivery_channel: {
    s3_bucket_name: "string", # required
    s3_key_prefix: "string",
    formats: ["string"],
  },
  report_setting: {
    report_template: "string", # required
  },
  idempotency_token: "string",
})

Response structure


resp.report_plan_name #=> String
resp.report_plan_arn #=> String
resp.creation_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_plan_name (required, String)

    The unique name of the report plan. This name is between 1 and 256 characters, starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (_).

  • :report_plan_description (String)

    An optional description of the report plan with a maximum 1,024 characters.

  • :report_delivery_channel (Types::ReportDeliveryChannel)

    A structure that contains information about where to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports.

  • :report_setting (Types::ReportSetting)

    Identifies the report template for the report. Reports are built using a report template. The report templates are:

    BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT

  • :idempotency_token (String)

    A customer-chosen string that you can use to distinguish between otherwise identical calls to UpdateReportPlanInput. Retrying a successful request with the same idempotency token results in a success message with no action taken.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



3686
3687
3688
3689
# File 'gems/aws-sdk-backup/lib/aws-sdk-backup/client.rb', line 3686

def update_report_plan(params = {}, options = {})
  req = build_request(:update_report_plan, params)
  req.send_request(options)
end