
com.amazonaws.services.backup.AWSBackup Maven / Gradle / Ivy
/*
* Copyright 2015-2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.backup;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.backup.model.*;
/**
* Interface for accessing AWS Backup.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.backup.AbstractAWSBackup} instead.
*
*
* AWS Backup
*
* AWS Backup is a unified backup service designed to protect AWS services and their associated data. AWS Backup
* simplifies the creation, migration, restoration, and deletion of backups, while also providing reporting and
* auditing.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AWSBackup {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "backup";
/**
*
* Backup plans are documents that contain information that AWS Backup uses to schedule tasks that create recovery
* points of resources.
*
*
* If you call CreateBackupPlan
with a plan that already exists, an AlreadyExistsException
* is returned.
*
*
* @param createBackupPlanRequest
* @return Result of the CreateBackupPlan operation returned by the service.
* @throws LimitExceededException
* A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.
* @throws AlreadyExistsException
* The required resource already exists.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.CreateBackupPlan
* @see AWS API
* Documentation
*/
CreateBackupPlanResult createBackupPlan(CreateBackupPlanRequest createBackupPlanRequest);
/**
*
* 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.
*
*
* @param createBackupSelectionRequest
* @return Result of the CreateBackupSelection operation returned by the service.
* @throws LimitExceededException
* A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.
* @throws AlreadyExistsException
* The required resource already exists.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.CreateBackupSelection
* @see AWS
* API Documentation
*/
CreateBackupSelectionResult createBackupSelection(CreateBackupSelectionRequest createBackupSelectionRequest);
/**
*
* 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.
*
*
*
* Sensitive data, such as passport numbers, should not be included the name of a backup vault.
*
*
*
* @param createBackupVaultRequest
* @return Result of the CreateBackupVault operation returned by the service.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws LimitExceededException
* A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.
* @throws AlreadyExistsException
* The required resource already exists.
* @sample AWSBackup.CreateBackupVault
* @see AWS API
* Documentation
*/
CreateBackupVaultResult createBackupVault(CreateBackupVaultRequest createBackupVaultRequest);
/**
*
* 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.
*
*
* @param deleteBackupPlanRequest
* @return Result of the DeleteBackupPlan operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws InvalidRequestException
* Indicates that something is wrong with the input to the request. For example, a parameter is of the wrong
* type.
* @sample AWSBackup.DeleteBackupPlan
* @see AWS API
* Documentation
*/
DeleteBackupPlanResult deleteBackupPlan(DeleteBackupPlanRequest deleteBackupPlanRequest);
/**
*
* Deletes the resource selection associated with a backup plan that is specified by the SelectionId
.
*
*
* @param deleteBackupSelectionRequest
* @return Result of the DeleteBackupSelection operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.DeleteBackupSelection
* @see AWS
* API Documentation
*/
DeleteBackupSelectionResult deleteBackupSelection(DeleteBackupSelectionRequest deleteBackupSelectionRequest);
/**
*
* Deletes the backup vault identified by its name. A vault can be deleted only if it is empty.
*
*
* @param deleteBackupVaultRequest
* @return Result of the DeleteBackupVault operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws InvalidRequestException
* Indicates that something is wrong with the input to the request. For example, a parameter is of the wrong
* type.
* @sample AWSBackup.DeleteBackupVault
* @see AWS API
* Documentation
*/
DeleteBackupVaultResult deleteBackupVault(DeleteBackupVaultRequest deleteBackupVaultRequest);
/**
*
* Deletes the policy document that manages permissions on a backup vault.
*
*
* @param deleteBackupVaultAccessPolicyRequest
* @return Result of the DeleteBackupVaultAccessPolicy operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.DeleteBackupVaultAccessPolicy
* @see AWS API Documentation
*/
DeleteBackupVaultAccessPolicyResult deleteBackupVaultAccessPolicy(DeleteBackupVaultAccessPolicyRequest deleteBackupVaultAccessPolicyRequest);
/**
*
* Deletes event notifications for the specified backup vault.
*
*
* @param deleteBackupVaultNotificationsRequest
* @return Result of the DeleteBackupVaultNotifications operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.DeleteBackupVaultNotifications
* @see AWS API Documentation
*/
DeleteBackupVaultNotificationsResult deleteBackupVaultNotifications(DeleteBackupVaultNotificationsRequest deleteBackupVaultNotificationsRequest);
/**
*
* Deletes the recovery point specified by a recovery point ID.
*
*
* @param deleteRecoveryPointRequest
* @return Result of the DeleteRecoveryPoint operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws InvalidRequestException
* Indicates that something is wrong with the input to the request. For example, a parameter is of the wrong
* type.
* @sample AWSBackup.DeleteRecoveryPoint
* @see AWS API
* Documentation
*/
DeleteRecoveryPointResult deleteRecoveryPoint(DeleteRecoveryPointRequest deleteRecoveryPointRequest);
/**
*
* Returns metadata associated with creating a backup of a resource.
*
*
* @param describeBackupJobRequest
* @return Result of the DescribeBackupJob operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws DependencyFailureException
* A dependent AWS service or resource returned an error to the AWS Backup service, and the action cannot be
* completed.
* @sample AWSBackup.DescribeBackupJob
* @see AWS API
* Documentation
*/
DescribeBackupJobResult describeBackupJob(DescribeBackupJobRequest describeBackupJobRequest);
/**
*
* Returns metadata about a backup vault specified by its name.
*
*
* @param describeBackupVaultRequest
* @return Result of the DescribeBackupVault operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.DescribeBackupVault
* @see AWS API
* Documentation
*/
DescribeBackupVaultResult describeBackupVault(DescribeBackupVaultRequest describeBackupVaultRequest);
/**
*
* Returns metadata associated with creating a copy of a resource.
*
*
* @param describeCopyJobRequest
* @return Result of the DescribeCopyJob operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.DescribeCopyJob
* @see AWS API
* Documentation
*/
DescribeCopyJobResult describeCopyJob(DescribeCopyJobRequest describeCopyJobRequest);
/**
*
* Returns information about a saved resource, including the last time it was backed-up, its Amazon Resource Name
* (ARN), and the AWS service type of the saved resource.
*
*
* @param describeProtectedResourceRequest
* @return Result of the DescribeProtectedResource operation returned by the service.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @sample AWSBackup.DescribeProtectedResource
* @see AWS API Documentation
*/
DescribeProtectedResourceResult describeProtectedResource(DescribeProtectedResourceRequest describeProtectedResourceRequest);
/**
*
* Returns metadata associated with a recovery point, including ID, status, encryption, and lifecycle.
*
*
* @param describeRecoveryPointRequest
* @return Result of the DescribeRecoveryPoint operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.DescribeRecoveryPoint
* @see AWS
* API Documentation
*/
DescribeRecoveryPointResult describeRecoveryPoint(DescribeRecoveryPointRequest describeRecoveryPointRequest);
/**
*
* Returns metadata associated with a restore job that is specified by a job ID.
*
*
* @param describeRestoreJobRequest
* @return Result of the DescribeRestoreJob operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws DependencyFailureException
* A dependent AWS service or resource returned an error to the AWS Backup service, and the action cannot be
* completed.
* @sample AWSBackup.DescribeRestoreJob
* @see AWS API
* Documentation
*/
DescribeRestoreJobResult describeRestoreJob(DescribeRestoreJobRequest describeRestoreJobRequest);
/**
*
* Returns the backup plan that is specified by the plan ID as a backup template.
*
*
* @param exportBackupPlanTemplateRequest
* @return Result of the ExportBackupPlanTemplate operation returned by the service.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @sample AWSBackup.ExportBackupPlanTemplate
* @see AWS API Documentation
*/
ExportBackupPlanTemplateResult exportBackupPlanTemplate(ExportBackupPlanTemplateRequest exportBackupPlanTemplateRequest);
/**
*
* Returns the body of a backup plan in JSON format, in addition to plan metadata.
*
*
* @param getBackupPlanRequest
* @return Result of the GetBackupPlan operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.GetBackupPlan
* @see AWS API
* Documentation
*/
GetBackupPlanResult getBackupPlan(GetBackupPlanRequest getBackupPlanRequest);
/**
*
* Returns a valid JSON document specifying a backup plan or an error.
*
*
* @param getBackupPlanFromJSONRequest
* @return Result of the GetBackupPlanFromJSON operation returned by the service.
* @throws LimitExceededException
* A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws InvalidRequestException
* Indicates that something is wrong with the input to the request. For example, a parameter is of the wrong
* type.
* @sample AWSBackup.GetBackupPlanFromJSON
* @see AWS
* API Documentation
*/
GetBackupPlanFromJSONResult getBackupPlanFromJSON(GetBackupPlanFromJSONRequest getBackupPlanFromJSONRequest);
/**
*
* Returns the template specified by its templateId
as a backup plan.
*
*
* @param getBackupPlanFromTemplateRequest
* @return Result of the GetBackupPlanFromTemplate operation returned by the service.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @sample AWSBackup.GetBackupPlanFromTemplate
* @see AWS API Documentation
*/
GetBackupPlanFromTemplateResult getBackupPlanFromTemplate(GetBackupPlanFromTemplateRequest getBackupPlanFromTemplateRequest);
/**
*
* Returns selection metadata and a document in JSON format that specifies a list of resources that are associated
* with a backup plan.
*
*
* @param getBackupSelectionRequest
* @return Result of the GetBackupSelection operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.GetBackupSelection
* @see AWS API
* Documentation
*/
GetBackupSelectionResult getBackupSelection(GetBackupSelectionRequest getBackupSelectionRequest);
/**
*
* Returns the access policy document that is associated with the named backup vault.
*
*
* @param getBackupVaultAccessPolicyRequest
* @return Result of the GetBackupVaultAccessPolicy operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.GetBackupVaultAccessPolicy
* @see AWS API Documentation
*/
GetBackupVaultAccessPolicyResult getBackupVaultAccessPolicy(GetBackupVaultAccessPolicyRequest getBackupVaultAccessPolicyRequest);
/**
*
* Returns event notifications for the specified backup vault.
*
*
* @param getBackupVaultNotificationsRequest
* @return Result of the GetBackupVaultNotifications operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.GetBackupVaultNotifications
* @see AWS API Documentation
*/
GetBackupVaultNotificationsResult getBackupVaultNotifications(GetBackupVaultNotificationsRequest getBackupVaultNotificationsRequest);
/**
*
* Returns a set of metadata key-value pairs that were used to create the backup.
*
*
* @param getRecoveryPointRestoreMetadataRequest
* @return Result of the GetRecoveryPointRestoreMetadata operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.GetRecoveryPointRestoreMetadata
* @see AWS API Documentation
*/
GetRecoveryPointRestoreMetadataResult getRecoveryPointRestoreMetadata(GetRecoveryPointRestoreMetadataRequest getRecoveryPointRestoreMetadataRequest);
/**
*
* Returns the AWS resource types supported by AWS Backup.
*
*
* @param getSupportedResourceTypesRequest
* @return Result of the GetSupportedResourceTypes operation returned by the service.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.GetSupportedResourceTypes
* @see AWS API Documentation
*/
GetSupportedResourceTypesResult getSupportedResourceTypes(GetSupportedResourceTypesRequest getSupportedResourceTypesRequest);
/**
*
* Returns metadata about your backup jobs.
*
*
* @param listBackupJobsRequest
* @return Result of the ListBackupJobs operation returned by the service.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws InvalidRequestException
* Indicates that something is wrong with the input to the request. For example, a parameter is of the wrong
* type.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListBackupJobs
* @see AWS API
* Documentation
*/
ListBackupJobsResult listBackupJobs(ListBackupJobsRequest listBackupJobsRequest);
/**
*
* Returns metadata of your saved backup plan templates, including the template ID, name, and the creation and
* deletion dates.
*
*
* @param listBackupPlanTemplatesRequest
* @return Result of the ListBackupPlanTemplates operation returned by the service.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @sample AWSBackup.ListBackupPlanTemplates
* @see AWS
* API Documentation
*/
ListBackupPlanTemplatesResult listBackupPlanTemplates(ListBackupPlanTemplatesRequest listBackupPlanTemplatesRequest);
/**
*
* Returns version metadata of your backup plans, including Amazon Resource Names (ARNs), backup plan IDs, creation
* and deletion dates, plan names, and version IDs.
*
*
* @param listBackupPlanVersionsRequest
* @return Result of the ListBackupPlanVersions operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListBackupPlanVersions
* @see AWS
* API Documentation
*/
ListBackupPlanVersionsResult listBackupPlanVersions(ListBackupPlanVersionsRequest listBackupPlanVersionsRequest);
/**
*
* Returns metadata of your saved backup plans, including Amazon Resource Names (ARNs), plan IDs, creation and
* deletion dates, version IDs, plan names, and creator request IDs.
*
*
* @param listBackupPlansRequest
* @return Result of the ListBackupPlans operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListBackupPlans
* @see AWS API
* Documentation
*/
ListBackupPlansResult listBackupPlans(ListBackupPlansRequest listBackupPlansRequest);
/**
*
* Returns an array containing metadata of the resources associated with the target backup plan.
*
*
* @param listBackupSelectionsRequest
* @return Result of the ListBackupSelections operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListBackupSelections
* @see AWS
* API Documentation
*/
ListBackupSelectionsResult listBackupSelections(ListBackupSelectionsRequest listBackupSelectionsRequest);
/**
*
* Returns a list of recovery point storage containers along with information about them.
*
*
* @param listBackupVaultsRequest
* @return Result of the ListBackupVaults operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListBackupVaults
* @see AWS API
* Documentation
*/
ListBackupVaultsResult listBackupVaults(ListBackupVaultsRequest listBackupVaultsRequest);
/**
*
* Returns metadata about your copy jobs.
*
*
* @param listCopyJobsRequest
* @return Result of the ListCopyJobs operation returned by the service.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListCopyJobs
* @see AWS API
* Documentation
*/
ListCopyJobsResult listCopyJobs(ListCopyJobsRequest listCopyJobsRequest);
/**
*
* Returns an array of resources successfully backed up by AWS Backup, including the time the resource was saved, an
* Amazon Resource Name (ARN) of the resource, and a resource type.
*
*
* @param listProtectedResourcesRequest
* @return Result of the ListProtectedResources operation returned by the service.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListProtectedResources
* @see AWS
* API Documentation
*/
ListProtectedResourcesResult listProtectedResources(ListProtectedResourcesRequest listProtectedResourcesRequest);
/**
*
* Returns detailed information about the recovery points stored in a backup vault.
*
*
* @param listRecoveryPointsByBackupVaultRequest
* @return Result of the ListRecoveryPointsByBackupVault operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListRecoveryPointsByBackupVault
* @see AWS API Documentation
*/
ListRecoveryPointsByBackupVaultResult listRecoveryPointsByBackupVault(ListRecoveryPointsByBackupVaultRequest listRecoveryPointsByBackupVaultRequest);
/**
*
* Returns detailed information about recovery points of the type specified by a resource Amazon Resource Name
* (ARN).
*
*
* @param listRecoveryPointsByResourceRequest
* @return Result of the ListRecoveryPointsByResource operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListRecoveryPointsByResource
* @see AWS API Documentation
*/
ListRecoveryPointsByResourceResult listRecoveryPointsByResource(ListRecoveryPointsByResourceRequest listRecoveryPointsByResourceRequest);
/**
*
* Returns a list of jobs that AWS Backup initiated to restore a saved resource, including metadata about the
* recovery process.
*
*
* @param listRestoreJobsRequest
* @return Result of the ListRestoreJobs operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListRestoreJobs
* @see AWS API
* Documentation
*/
ListRestoreJobsResult listRestoreJobs(ListRestoreJobsRequest listRestoreJobsRequest);
/**
*
* Returns a list of key-value pairs assigned to a target recovery point, backup plan, or backup vault.
*
*
* @param listTagsRequest
* @return Result of the ListTags operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.ListTags
* @see AWS API
* Documentation
*/
ListTagsResult listTags(ListTagsRequest listTagsRequest);
/**
*
* 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.
*
*
* @param putBackupVaultAccessPolicyRequest
* @return Result of the PutBackupVaultAccessPolicy operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.PutBackupVaultAccessPolicy
* @see AWS API Documentation
*/
PutBackupVaultAccessPolicyResult putBackupVaultAccessPolicy(PutBackupVaultAccessPolicyRequest putBackupVaultAccessPolicyRequest);
/**
*
* Turns on notifications on a backup vault for the specified topic and events.
*
*
* @param putBackupVaultNotificationsRequest
* @return Result of the PutBackupVaultNotifications operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.PutBackupVaultNotifications
* @see AWS API Documentation
*/
PutBackupVaultNotificationsResult putBackupVaultNotifications(PutBackupVaultNotificationsRequest putBackupVaultNotificationsRequest);
/**
*
* Starts a job to create a one-time backup of the specified resource.
*
*
* @param startBackupJobRequest
* @return Result of the StartBackupJob operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws LimitExceededException
* A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.
* @sample AWSBackup.StartBackupJob
* @see AWS API
* Documentation
*/
StartBackupJobResult startBackupJob(StartBackupJobRequest startBackupJobRequest);
/**
*
* Starts a job to create a one-time copy of the specified resource.
*
*
* @param startCopyJobRequest
* @return Result of the StartCopyJob operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws LimitExceededException
* A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.
* @sample AWSBackup.StartCopyJob
* @see AWS API
* Documentation
*/
StartCopyJobResult startCopyJob(StartCopyJobRequest startCopyJobRequest);
/**
*
* Recovers the saved resource identified by an Amazon Resource Name (ARN).
*
*
* If the resource ARN is included in the request, then the last complete backup of that resource is recovered. If
* the ARN of a recovery point is supplied, then that recovery point is restored.
*
*
* @param startRestoreJobRequest
* @return Result of the StartRestoreJob operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.StartRestoreJob
* @see AWS API
* Documentation
*/
StartRestoreJobResult startRestoreJob(StartRestoreJobRequest startRestoreJobRequest);
/**
*
* Attempts to cancel a job to create a one-time backup of a resource.
*
*
* @param stopBackupJobRequest
* @return Result of the StopBackupJob operation returned by the service.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws InvalidRequestException
* Indicates that something is wrong with the input to the request. For example, a parameter is of the wrong
* type.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.StopBackupJob
* @see AWS API
* Documentation
*/
StopBackupJobResult stopBackupJob(StopBackupJobRequest stopBackupJobRequest);
/**
*
* Assigns a set of key-value pairs to a recovery point, backup plan, or backup vault identified by an Amazon
* Resource Name (ARN).
*
*
* @param tagResourceRequest
* @return Result of the TagResource operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @throws LimitExceededException
* A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.
* @sample AWSBackup.TagResource
* @see AWS API
* Documentation
*/
TagResourceResult tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Removes a set of key-value pairs from a recovery point, backup plan, or backup vault identified by an Amazon
* Resource Name (ARN)
*
*
* @param untagResourceRequest
* @return Result of the UntagResource operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.UntagResource
* @see AWS API
* Documentation
*/
UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest);
/**
*
* Replaces the body of a saved backup plan identified by its backupPlanId
with the input document in
* JSON format. The new version is uniquely identified by a VersionId
.
*
*
* @param updateBackupPlanRequest
* @return Result of the UpdateBackupPlan operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.UpdateBackupPlan
* @see AWS API
* Documentation
*/
UpdateBackupPlanResult updateBackupPlan(UpdateBackupPlanRequest updateBackupPlanRequest);
/**
*
* Sets the transition lifecycle of a recovery point.
*
*
* The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. AWS 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.
*
*
* @param updateRecoveryPointLifecycleRequest
* @return Result of the UpdateRecoveryPointLifecycle operation returned by the service.
* @throws ResourceNotFoundException
* A resource that is required for the action doesn't exist.
* @throws InvalidParameterValueException
* Indicates that something is wrong with a parameter's value. For example, the value is out of range.
* @throws MissingParameterValueException
* Indicates that a required parameter is missing.
* @throws ServiceUnavailableException
* The request failed due to a temporary failure of the server.
* @sample AWSBackup.UpdateRecoveryPointLifecycle
* @see AWS API Documentation
*/
UpdateRecoveryPointLifecycleResult updateRecoveryPointLifecycle(UpdateRecoveryPointLifecycleRequest updateRecoveryPointLifecycleRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}