BackupClient

Backup

Backup is a unified backup service designed to protect Amazon Web Services services and their associated data. Backup simplifies the creation, migration, restoration, and deletion of backups, while also providing reporting and auditing.

Installation

NPM
npm install @aws-sdk/client-backup
Yarn
yarn add @aws-sdk/client-backup
pnpm
pnpm add @aws-sdk/client-backup

BackupClient Operations

Command
Summary
CancelLegalHoldCommand

Removes the specified legal hold on a recovery point. This action can only be performed by a user with sufficient permissions.

CreateBackupPlanCommand

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.

CreateBackupSelectionCommand

Creates a JSON document that specifies a set of resources to assign to a backup plan. For examples, see Assigning resources programmatically .

CreateBackupVaultCommand

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.

CreateFrameworkCommand

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 and which resources are not yet in compliance.

CreateLegalHoldCommand

Creates a legal hold on a recovery point (backup). A legal hold is a restraint on altering or deleting a backup until an authorized user cancels the legal hold. Any actions to delete or disassociate a recovery point will fail with an error if one or more active legal holds are on the recovery point.

CreateLogicallyAirGappedBackupVaultCommand

Creates a logical container to where backups may be copied.

This request includes a name, the Region, the maximum number of retention days, the minimum number of retention days, and optionally can include tags and a creator request ID.

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

CreateReportPlanCommand

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.

CreateRestoreTestingPlanCommand

Creates a restore testing plan.

The first of two steps to create a restore testing plan. After this request is successful, finish the procedure using CreateRestoreTestingSelection.

CreateRestoreTestingSelectionCommand

This request can be sent after CreateRestoreTestingPlan request returns successfully. This is the second part of creating a resource testing plan, and it must be completed sequentially.

This consists of RestoreTestingSelectionName, ProtectedResourceType, and one of the following:

  • ProtectedResourceArns

  • ProtectedResourceConditions

Each protected resource type can have one single value.

A restore testing selection can include a wildcard value ("*") for ProtectedResourceArns along with ProtectedResourceConditions. Alternatively, you can include up to 30 specific protected resource ARNs in ProtectedResourceArns.

Cannot select by both protected resource types AND specific ARNs. Request will fail if both are included.

DeleteBackupPlanCommand

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.

DeleteBackupSelectionCommand

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

DeleteBackupVaultAccessPolicyCommand

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

DeleteBackupVaultCommand

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

DeleteBackupVaultLockConfigurationCommand

Deletes Backup Vault Lock from a backup vault specified by a backup vault name.

If the Vault Lock configuration is immutable, then you cannot delete Vault Lock using API operations, and you will receive an InvalidRequestException if you attempt to do so. For more information, see Vault Lock  in the Backup Developer Guide.

DeleteBackupVaultNotificationsCommand

Deletes event notifications for the specified backup vault.

DeleteFrameworkCommand

Deletes the framework specified by a framework name.

DeleteRecoveryPointCommand

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.

When an IAM role's permissions are insufficient to call this API, the service sends back an HTTP 200 response with an empty HTTP body, but the recovery point is not deleted. Instead, it enters an EXPIRED state.

EXPIRED recovery points can be deleted with this API once the IAM role has the iam:CreateServiceLinkedRole action. To learn more about adding this role, see Troubleshooting manual deletions .

If the user or role is deleted or the permission within the role is removed, the deletion will not be successful and will enter an EXPIRED state.

DeleteReportPlanCommand

Deletes the report plan specified by a report plan name.

DeleteRestoreTestingPlanCommand

This request deletes the specified restore testing plan.

Deletion can only successfully occur if all associated restore testing selections are deleted first.

DeleteRestoreTestingSelectionCommand

Input the Restore Testing Plan name and Restore Testing Selection name.

All testing selections associated with a restore testing plan must be deleted before the restore testing plan can be deleted.

DescribeBackupJobCommand

Returns backup job details for the specified BackupJobId.

DescribeBackupVaultCommand

Returns metadata about a backup vault specified by its name.

DescribeCopyJobCommand

Returns metadata associated with creating a copy of a resource.

DescribeFrameworkCommand

Returns the framework details for the specified FrameworkName.

DescribeGlobalSettingsCommand

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

DescribeProtectedResourceCommand

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.

DescribeRecoveryPointCommand

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

DescribeRegionSettingsCommand

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.

DescribeReportJobCommand

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

DescribeReportPlanCommand

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

DescribeRestoreJobCommand

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

DisassociateRecoveryPointCommand

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.

DisassociateRecoveryPointFromParentCommand

This action to a specific child (nested) recovery point removes the relationship between the specified recovery point and its parent (composite) recovery point.

ExportBackupPlanTemplateCommand

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

GetBackupPlanCommand

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

GetBackupPlanFromJSONCommand

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

GetBackupPlanFromTemplateCommand

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

GetBackupSelectionCommand

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

GetBackupVaultAccessPolicyCommand

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

GetBackupVaultNotificationsCommand

Returns event notifications for the specified backup vault.

GetLegalHoldCommand

This action returns details for a specified legal hold. The details are the body of a legal hold in JSON format, in addition to metadata.

GetRecoveryPointIndexDetailsCommand

This operation returns the metadata and details specific to the backup index associated with the specified recovery point.

GetRecoveryPointRestoreMetadataCommand

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

GetRestoreJobMetadataCommand

This request returns the metadata for the specified restore job.

GetRestoreTestingInferredMetadataCommand

This request returns the minimal required set of metadata needed to start a restore job with secure default settings. BackupVaultName and RecoveryPointArn are required parameters. BackupVaultAccountId is an optional parameter.

GetRestoreTestingPlanCommand

Returns RestoreTestingPlan details for the specified RestoreTestingPlanName. The details are the body of a restore testing plan in JSON format, in addition to plan metadata.

GetRestoreTestingSelectionCommand

Returns RestoreTestingSelection, which displays resources and elements of the restore testing plan.

GetSupportedResourceTypesCommand

Returns the Amazon Web Services resource types supported by Backup.

ListBackupJobSummariesCommand

This is a request for a summary of backup jobs created or running within the most recent 30 days. You can include parameters AccountID, State, ResourceType, MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results.

This request returns a summary that contains Region, Account, State, ResourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

ListBackupJobsCommand

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 .

ListBackupPlanTemplatesCommand

Lists the backup plan templates.

ListBackupPlanVersionsCommand

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

ListBackupPlansCommand

Lists the active backup plans for the account.

ListBackupSelectionsCommand

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

ListBackupVaultsCommand

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

ListCopyJobSummariesCommand

This request obtains a list of copy jobs created or running within the the most recent 30 days. You can include parameters AccountID, State, ResourceType, MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results.

This request returns a summary that contains Region, Account, State, RestourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

ListCopyJobsCommand

Returns metadata about your copy jobs.

ListFrameworksCommand

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

ListIndexedRecoveryPointsCommand

This operation returns a list of recovery points that have an associated index, belonging to the specified account.

Optional parameters you can include are: MaxResults; NextToken; SourceResourceArns; CreatedBefore; CreatedAfter; and ResourceType.

ListLegalHoldsCommand

This action returns metadata about active and previous legal holds.

ListProtectedResourcesByBackupVaultCommand

This request lists the protected resources corresponding to each backup vault.

ListProtectedResourcesCommand

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.

ListRecoveryPointsByBackupVaultCommand

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

ListRecoveryPointsByLegalHoldCommand

This action returns recovery point ARNs (Amazon Resource Names) of the specified legal hold.

ListRecoveryPointsByResourceCommand

The information about 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.

ListReportJobsCommand

Returns details about your report jobs.

ListReportPlansCommand

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

ListRestoreJobSummariesCommand

This request obtains a summary of restore jobs created or running within the the most recent 30 days. You can include parameters AccountID, State, ResourceType, AggregationPeriod, MaxResults, or NextToken to filter results.

This request returns a summary that contains Region, Account, State, RestourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

ListRestoreJobsByProtectedResourceCommand

This returns restore jobs that contain the specified protected resource.

You must include ResourceArn. You can optionally include NextToken, ByStatus, MaxResults, ByRecoveryPointCreationDateAfter , and ByRecoveryPointCreationDateBefore.

ListRestoreJobsCommand

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

ListRestoreTestingPlansCommand

Returns a list of restore testing plans.

ListRestoreTestingSelectionsCommand

Returns a list of restore testing selections. Can be filtered by MaxResults and RestoreTestingPlanName.

ListTagsCommand

Returns the tags assigned to the resource, such as a target recovery point, backup plan, or backup vault.

PutBackupVaultAccessPolicyCommand

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.

PutBackupVaultLockConfigurationCommand

Applies Backup Vault Lock to a backup vault, preventing attempts to delete any recovery point stored in or created in a backup vault. Vault Lock also prevents attempts to update the lifecycle policy that controls the retention period of any recovery point currently stored in a backup vault. If specified, Vault Lock enforces a minimum and maximum retention period for future backup and copy jobs that target a backup vault.

Backup Vault Lock has been assessed by Cohasset Associates for use in environments that are subject to SEC 17a-4, CFTC, and FINRA regulations. For more information about how Backup Vault Lock relates to these regulations, see the Cohasset Associates Compliance Assessment. 

For more information, see Backup Vault Lock .

PutBackupVaultNotificationsCommand

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

PutRestoreValidationResultCommand

This request allows you to send your independent self-run restore test validation results. RestoreJobId and ValidationStatus are required. Optionally, you can input a ValidationStatusMessage.

StartBackupJobCommand

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

StartCopyJobCommand

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

Does not support continuous backups.

StartReportJobCommand

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

StartRestoreJobCommand

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

StopBackupJobCommand

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

This action is not supported for the following services: Amazon FSx for Windows File Server, Amazon FSx for Lustre, Amazon FSx for NetApp ONTAP, Amazon FSx for OpenZFS, Amazon DocumentDB (with MongoDB compatibility), Amazon RDS, Amazon Aurora, and Amazon Neptune.

TagResourceCommand

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

This API is supported for recovery points for resource types including Aurora, Amazon DocumentDB. Amazon EBS, Amazon FSx, Neptune, and Amazon RDS.

UntagResourceCommand

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

This API is not supported for recovery points for resource types including Aurora, Amazon DocumentDB. Amazon EBS, Amazon FSx, Neptune, and Amazon RDS.

UpdateBackupPlanCommand

Updates the specified backup plan. The new version is uniquely identified by its ID.

UpdateFrameworkCommand

Updates the specified framework.

UpdateGlobalSettingsCommand

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.

UpdateRecoveryPointIndexSettingsCommand

This operation updates the settings of a recovery point index.

Required: BackupVaultName, RecoveryPointArn, and IAMRoleArn

UpdateRecoveryPointLifecycleCommand

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.

Resource types that can transition to cold storage are listed in the Feature availability by resource  table. Backup ignores this expression for other resource types.

Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days. Therefore, the “retention” 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.

If your lifecycle currently uses the parameters DeleteAfterDays and MoveToColdStorageAfterDays, include these parameters and their values when you call this operation. Not including them may result in your plan updating with null values.

This operation does not support continuous backups.

UpdateRegionSettingsCommand

Updates the current service opt-in settings for the Region.

Use the DescribeRegionSettings API to determine the resource types that are supported.

UpdateReportPlanCommand

Updates the specified report plan.

UpdateRestoreTestingPlanCommand

This request will send changes to your specified restore testing plan. RestoreTestingPlanName cannot be updated after it is created.

RecoveryPointSelection can contain:

  • Algorithm

  • ExcludeVaults

  • IncludeVaults

  • RecoveryPointTypes

  • SelectionWindowDays

UpdateRestoreTestingSelectionCommand

Updates the specified restore testing selection.

Most elements except the RestoreTestingSelectionName can be updated with this request.

You can use either protected resource ARNs or conditions, but not both.

BackupClient Configuration

Parameter
Type
Description
defaultsMode
Optional
DefaultsMode | Provider<DefaultsMode>
The @smithy/smithy-client#DefaultsMode that will be used to determine how certain default configuration options are resolved in the SDK.
disableHostPrefix
Optional
boolean
Disable dynamically changing the endpoint of the client based on the hostPrefix trait of an operation.
extensions
Optional
RuntimeExtension[]
Optional extensions
logger
Optional
Logger
Optional logger for logging debug/info/warn/error.
maxAttempts
Optional
number | Provider<number>
Value for how many times a request will be made at most in case of retry.
profile
Optional
string
Setting a client profile is similar to setting a value for the AWS_PROFILE environment variable. Setting a profile on a client in code only affects the single client instance, unlike AWS_PROFILE.When set, and only for environments where an AWS configuration file exists, fields configurable by this file will be retrieved from the specified profile within that file. Conflicting code configuration and environment variables will still have higher priority.For client credential resolution that involves checking the AWS configuration file, the client's profile (this value) will be used unless a different profile is set in the credential provider options.
region
Optional
string | Provider<string>
The AWS region to which this client will send requests
requestHandler
Optional
__HttpHandlerUserInput
The HTTP handler to use or its constructor options. Fetch in browser and Https in Nodejs.
retryMode
Optional
string | Provider<string>
Specifies which retry algorithm to use.
useDualstackEndpoint
Optional
boolean | Provider<boolean>
Enables IPv6/IPv4 dualstack endpoint.
useFipsEndpoint
Optional
boolean | Provider<boolean>
Enables FIPS compatible endpoints.
Additional config fields are described in the full configuration type: BackupClientConfig