CreateBackupPlan - AWS Backup

CreateBackupPlan

Creates a backup plan using a backup plan name and backup rules. A backup plan is a document that contains information that AWS 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.

Request Syntax

PUT /backup/plans/ HTTP/1.1 Content-type: application/json { "BackupPlan": { "AdvancedBackupSettings": [ { "BackupOptions": { "string" : "string" }, "ResourceType": "string" } ], "BackupPlanName": "string", "Rules": [ { "CompletionWindowMinutes": number, "CopyActions": [ { "DestinationBackupVaultArn": "string", "Lifecycle": { "DeleteAfterDays": number, "MoveToColdStorageAfterDays": number, "OptInToArchiveForSupportedResources": boolean } } ], "EnableContinuousBackup": boolean, "IndexActions": [ { "ResourceTypes": [ "string" ] } ], "Lifecycle": { "DeleteAfterDays": number, "MoveToColdStorageAfterDays": number, "OptInToArchiveForSupportedResources": boolean }, "RecoveryPointTags": { "string" : "string" }, "RuleName": "string", "ScheduleExpression": "string", "ScheduleExpressionTimezone": "string", "StartWindowMinutes": number, "TargetBackupVaultName": "string" } ] }, "BackupPlanTags": { "string" : "string" }, "CreatorRequestId": "string" }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

BackupPlan

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

Type: BackupPlanInput object

Required: Yes

BackupPlanTags

The tags to assign to the backup plan.

Type: String to string map

Required: No

CreatorRequestId

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.

If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

Type: String

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "AdvancedBackupSettings": [ { "BackupOptions": { "string" : "string" }, "ResourceType": "string" } ], "BackupPlanArn": "string", "BackupPlanId": "string", "CreationDate": number, "VersionId": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

AdvancedBackupSettings

The settings for a resource type. This option is only available for Windows Volume Shadow Copy Service (VSS) backup jobs.

Type: Array of AdvancedBackupSetting objects

BackupPlanArn

An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50.

Type: String

BackupPlanId

The ID of the backup plan.

Type: String

CreationDate

The date and time that a backup plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

Type: Timestamp

VersionId

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

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors.

AlreadyExistsException

The required resource already exists.

HTTP Status Code: 400

InvalidParameterValueException

Indicates that something is wrong with a parameter's value. For example, the value is out of range.

HTTP Status Code: 400

LimitExceededException

A limit in the request has been exceeded; for example, a maximum number of items allowed in a request.

HTTP Status Code: 400

MissingParameterValueException

Indicates that a required parameter is missing.

HTTP Status Code: 400

ServiceUnavailableException

The request failed due to a temporary failure of the server.

HTTP Status Code: 500

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: