AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Implementation for accessing Backup 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.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonServiceClient
    Amazon.Backup.AmazonBackupClient

Namespace: Amazon.Backup
Assembly: AWSSDK.Backup.dll
Version: 3.x.y.z

Syntax

C#
public class AmazonBackupClient : AmazonServiceClient
         IAmazonBackup, IAmazonService, IDisposable

The AmazonBackupClient type exposes the following members

Constructors

NameDescription
Public Method AmazonBackupClient()

Constructs AmazonBackupClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.



    
        
    

             

Public Method AmazonBackupClient(RegionEndpoint)

Constructs AmazonBackupClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.



    
        
    

             

Public Method AmazonBackupClient(AmazonBackupConfig)

Constructs AmazonBackupClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.



    
        
    

             

Public Method AmazonBackupClient(AWSCredentials)

Constructs AmazonBackupClient with AWS Credentials

Public Method AmazonBackupClient(AWSCredentials, RegionEndpoint)

Constructs AmazonBackupClient with AWS Credentials

Public Method AmazonBackupClient(AWSCredentials, AmazonBackupConfig)

Constructs AmazonBackupClient with AWS Credentials and an AmazonBackupClient Configuration object.

Public Method AmazonBackupClient(string, string)

Constructs AmazonBackupClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonBackupClient(string, string, RegionEndpoint)

Constructs AmazonBackupClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonBackupClient(string, string, AmazonBackupConfig)

Constructs AmazonBackupClient with AWS Access Key ID, AWS Secret Key and an AmazonBackupClient Configuration object.

Public Method AmazonBackupClient(string, string, string)

Constructs AmazonBackupClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonBackupClient(string, string, string, RegionEndpoint)

Constructs AmazonBackupClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonBackupClient(string, string, string, AmazonBackupConfig)

Constructs AmazonBackupClient with AWS Access Key ID, AWS Secret Key and an AmazonBackupClient Configuration object.

Properties

NameTypeDescription
Public Property Config Amazon.Runtime.IClientConfig Inherited from Amazon.Runtime.AmazonServiceClient.

Methods

Note:

Asynchronous operations (methods ending with Async) in the table below are for .NET 4.5 or higher. For .NET 3.5 the SDK follows the standard naming convention of BeginMethodName and EndMethodName to indicate asynchronous operations - these method pairs are not shown in the table below.

NameDescription
Public Method CreateBackupPlan(CreateBackupPlanRequest)

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.

Public Method CreateBackupPlanAsync(CreateBackupPlanRequest, CancellationToken)

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.

Public Method CreateBackupSelection(CreateBackupSelectionRequest)

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.

Public Method CreateBackupSelectionAsync(CreateBackupSelectionRequest, CancellationToken)

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.

Public Method CreateBackupVault(CreateBackupVaultRequest)

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.

Public Method CreateBackupVaultAsync(CreateBackupVaultRequest, CancellationToken)

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.

Public Method DeleteBackupPlan(DeleteBackupPlanRequest)

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.

Public Method DeleteBackupPlanAsync(DeleteBackupPlanRequest, CancellationToken)

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.

Public Method DeleteBackupSelection(DeleteBackupSelectionRequest)

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

Public Method DeleteBackupSelectionAsync(DeleteBackupSelectionRequest, CancellationToken)

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

Public Method DeleteBackupVault(DeleteBackupVaultRequest)

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

Public Method DeleteBackupVaultAccessPolicy(DeleteBackupVaultAccessPolicyRequest)

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

Public Method DeleteBackupVaultAccessPolicyAsync(DeleteBackupVaultAccessPolicyRequest, CancellationToken)

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

Public Method DeleteBackupVaultAsync(DeleteBackupVaultRequest, CancellationToken)

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

Public Method DeleteBackupVaultNotifications(DeleteBackupVaultNotificationsRequest)

Deletes event notifications for the specified backup vault.

Public Method DeleteBackupVaultNotificationsAsync(DeleteBackupVaultNotificationsRequest, CancellationToken)

Deletes event notifications for the specified backup vault.

Public Method DeleteRecoveryPoint(DeleteRecoveryPointRequest)

Deletes the recovery point specified by a recovery point ID.

Public Method DeleteRecoveryPointAsync(DeleteRecoveryPointRequest, CancellationToken)

Deletes the recovery point specified by a recovery point ID.

Public Method DescribeBackupJob(DescribeBackupJobRequest)

Returns metadata associated with creating a backup of a resource.

Public Method DescribeBackupJobAsync(DescribeBackupJobRequest, CancellationToken)

Returns metadata associated with creating a backup of a resource.

Public Method DescribeBackupVault(DescribeBackupVaultRequest)

Returns metadata about a backup vault specified by its name.

Public Method DescribeBackupVaultAsync(DescribeBackupVaultRequest, CancellationToken)

Returns metadata about a backup vault specified by its name.

Public Method DescribeCopyJob(DescribeCopyJobRequest)

Returns metadata associated with creating a copy of a resource.

Public Method DescribeCopyJobAsync(DescribeCopyJobRequest, CancellationToken)

Returns metadata associated with creating a copy of a resource.

Public Method DescribeProtectedResource(DescribeProtectedResourceRequest)

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.

Public Method DescribeProtectedResourceAsync(DescribeProtectedResourceRequest, CancellationToken)

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.

Public Method DescribeRecoveryPoint(DescribeRecoveryPointRequest)

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

Public Method DescribeRecoveryPointAsync(DescribeRecoveryPointRequest, CancellationToken)

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

Public Method DescribeRestoreJob(DescribeRestoreJobRequest)

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

Public Method DescribeRestoreJobAsync(DescribeRestoreJobRequest, CancellationToken)

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

Public Method Dispose() Inherited from Amazon.Runtime.AmazonServiceClient.
Public Method ExportBackupPlanTemplate(ExportBackupPlanTemplateRequest)

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

Public Method ExportBackupPlanTemplateAsync(ExportBackupPlanTemplateRequest, CancellationToken)

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

Public Method GetBackupPlan(GetBackupPlanRequest)

Returns the body of a backup plan in JSON format, in addition to plan metadata.

Public Method GetBackupPlanAsync(GetBackupPlanRequest, CancellationToken)

Returns the body of a backup plan in JSON format, in addition to plan metadata.

Public Method GetBackupPlanFromJSON(GetBackupPlanFromJSONRequest)

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

Public Method GetBackupPlanFromJSONAsync(GetBackupPlanFromJSONRequest, CancellationToken)

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

Public Method GetBackupPlanFromTemplate(GetBackupPlanFromTemplateRequest)

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

Public Method GetBackupPlanFromTemplateAsync(GetBackupPlanFromTemplateRequest, CancellationToken)

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

Public Method GetBackupSelection(GetBackupSelectionRequest)

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

Public Method GetBackupSelectionAsync(GetBackupSelectionRequest, CancellationToken)

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

Public Method GetBackupVaultAccessPolicy(GetBackupVaultAccessPolicyRequest)

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

Public Method GetBackupVaultAccessPolicyAsync(GetBackupVaultAccessPolicyRequest, CancellationToken)

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

Public Method GetBackupVaultNotifications(GetBackupVaultNotificationsRequest)

Returns event notifications for the specified backup vault.

Public Method GetBackupVaultNotificationsAsync(GetBackupVaultNotificationsRequest, CancellationToken)

Returns event notifications for the specified backup vault.

Public Method GetRecoveryPointRestoreMetadata(GetRecoveryPointRestoreMetadataRequest)

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

Public Method GetRecoveryPointRestoreMetadataAsync(GetRecoveryPointRestoreMetadataRequest, CancellationToken)

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

Public Method GetSupportedResourceTypes(GetSupportedResourceTypesRequest)

Returns the AWS resource types supported by AWS Backup.

Public Method GetSupportedResourceTypesAsync(GetSupportedResourceTypesRequest, CancellationToken)

Returns the AWS resource types supported by AWS Backup.

Public Method ListBackupJobs(ListBackupJobsRequest)

Returns metadata about your backup jobs.

Public Method ListBackupJobsAsync(ListBackupJobsRequest, CancellationToken)

Returns metadata about your backup jobs.

Public Method ListBackupPlans(ListBackupPlansRequest)

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.

Public Method ListBackupPlansAsync(ListBackupPlansRequest, CancellationToken)

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.

Public Method ListBackupPlanTemplates(ListBackupPlanTemplatesRequest)

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

Public Method ListBackupPlanTemplatesAsync(ListBackupPlanTemplatesRequest, CancellationToken)

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

Public Method ListBackupPlanVersions(ListBackupPlanVersionsRequest)

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

Public Method ListBackupPlanVersionsAsync(ListBackupPlanVersionsRequest, CancellationToken)

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

Public Method ListBackupSelections(ListBackupSelectionsRequest)

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

Public Method ListBackupSelectionsAsync(ListBackupSelectionsRequest, CancellationToken)

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

Public Method ListBackupVaults(ListBackupVaultsRequest)

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

Public Method ListBackupVaultsAsync(ListBackupVaultsRequest, CancellationToken)

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

Public Method ListCopyJobs(ListCopyJobsRequest)

Returns metadata about your copy jobs.

Public Method ListCopyJobsAsync(ListCopyJobsRequest, CancellationToken)

Returns metadata about your copy jobs.

Public Method ListProtectedResources(ListProtectedResourcesRequest)

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.

Public Method ListProtectedResourcesAsync(ListProtectedResourcesRequest, CancellationToken)

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.

Public Method ListRecoveryPointsByBackupVault(ListRecoveryPointsByBackupVaultRequest)

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

Public Method ListRecoveryPointsByBackupVaultAsync(ListRecoveryPointsByBackupVaultRequest, CancellationToken)

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

Public Method ListRecoveryPointsByResource(ListRecoveryPointsByResourceRequest)

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

Public Method ListRecoveryPointsByResourceAsync(ListRecoveryPointsByResourceRequest, CancellationToken)

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

Public Method ListRestoreJobs(ListRestoreJobsRequest)

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

Public Method ListRestoreJobsAsync(ListRestoreJobsRequest, CancellationToken)

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

Public Method ListTags(ListTagsRequest)

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

Public Method ListTagsAsync(ListTagsRequest, CancellationToken)

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

Public Method PutBackupVaultAccessPolicy(PutBackupVaultAccessPolicyRequest)

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.

Public Method PutBackupVaultAccessPolicyAsync(PutBackupVaultAccessPolicyRequest, CancellationToken)

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.

Public Method PutBackupVaultNotifications(PutBackupVaultNotificationsRequest)

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

Public Method PutBackupVaultNotificationsAsync(PutBackupVaultNotificationsRequest, CancellationToken)

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

Public Method StartBackupJob(StartBackupJobRequest)

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

Public Method StartBackupJobAsync(StartBackupJobRequest, CancellationToken)

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

Public Method StartCopyJob(StartCopyJobRequest)

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

Public Method StartCopyJobAsync(StartCopyJobRequest, CancellationToken)

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

Public Method StartRestoreJob(StartRestoreJobRequest)

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.

Public Method StartRestoreJobAsync(StartRestoreJobRequest, CancellationToken)

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.

Public Method StopBackupJob(StopBackupJobRequest)

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

Public Method StopBackupJobAsync(StopBackupJobRequest, CancellationToken)

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

Public Method TagResource(TagResourceRequest)

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

Public Method TagResourceAsync(TagResourceRequest, CancellationToken)

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

Public Method UntagResource(UntagResourceRequest)

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

Public Method UntagResourceAsync(UntagResourceRequest, CancellationToken)

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

Public Method UpdateBackupPlan(UpdateBackupPlanRequest)

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.

Public Method UpdateBackupPlanAsync(UpdateBackupPlanRequest, CancellationToken)

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.

Public Method UpdateRecoveryPointLifecycle(UpdateRecoveryPointLifecycleRequest)

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.

Public Method UpdateRecoveryPointLifecycleAsync(UpdateRecoveryPointLifecycleRequest, CancellationToken)

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.

Events

NameDescription
Event AfterResponseEvent Inherited from Amazon.Runtime.AmazonServiceClient.
Event BeforeRequestEvent Inherited from Amazon.Runtime.AmazonServiceClient.
Event ExceptionEvent Inherited from Amazon.Runtime.AmazonServiceClient.

Version Information

.NET Standard:
Supported in: 1.3

.NET Framework:
Supported in: 4.5, 4.0, 3.5

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms