create_backup_selection

Backup.Client.create_backup_selection(**kwargs)

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

See also: AWS API Documentation

Request Syntax

response = client.create_backup_selection(
    BackupPlanId='string',
    BackupSelection={
        'SelectionName': 'string',
        'IamRoleArn': 'string',
        'Resources': [
            'string',
        ],
        'ListOfTags': [
            {
                'ConditionType': 'STRINGEQUALS',
                'ConditionKey': 'string',
                'ConditionValue': 'string'
            },
        ],
        'NotResources': [
            'string',
        ],
        'Conditions': {
            'StringEquals': [
                {
                    'ConditionKey': 'string',
                    'ConditionValue': 'string'
                },
            ],
            'StringNotEquals': [
                {
                    'ConditionKey': 'string',
                    'ConditionValue': 'string'
                },
            ],
            'StringLike': [
                {
                    'ConditionKey': 'string',
                    'ConditionValue': 'string'
                },
            ],
            'StringNotLike': [
                {
                    'ConditionKey': 'string',
                    'ConditionValue': 'string'
                },
            ]
        }
    },
    CreatorRequestId='string'
)
Parameters
  • BackupPlanId (string) --

    [REQUIRED]

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

  • BackupSelection (dict) --

    [REQUIRED]

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

    • SelectionName (string) -- [REQUIRED]

      The display name of a resource selection document. Must contain 1 to 50 alphanumeric or '-_.' characters.

    • IamRoleArn (string) -- [REQUIRED]

      The ARN of the IAM role that Backup uses to authenticate when backing up the target resource; for example, arn:aws:iam::123456789012:role/S3Access .

    • Resources (list) --

      A list of Amazon Resource Names (ARNs) to assign to a backup plan. The maximum number of ARNs is 500 without wildcards, or 30 ARNs with wildcards.

      If you need to assign many resources to a backup plan, consider a different resource selection strategy, such as assigning all resources of a resource type or refining your resource selection using tags.

      • (string) --
    • ListOfTags (list) --

      A list of conditions that you define to assign resources to your backup plans using tags. For example, "StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", "ConditionValue": "true" }, . Condition operators are case sensitive.

      ListOfTags differs from Conditions as follows:
      • When you specify more than one condition, you assign all resources that match AT LEAST ONE condition (using OR logic).
      • ListOfTags only supports StringEquals . Conditions supports StringEquals , StringLike , StringNotEquals , and StringNotLike .
      • (dict) --

        Contains an array of triplets made up of a condition type (such as StringEquals ), a key, and a value. Used to filter resources using their tags and assign them to a backup plan. Case sensitive.

        • ConditionType (string) -- [REQUIRED]

          An operation applied to a key-value pair used to assign resources to your backup plan. Condition only supports StringEquals . For more flexible assignment options, including StringLike and the ability to exclude resources from your backup plan, use Conditions (with an "s" on the end) for your BackupSelection.

        • ConditionKey (string) -- [REQUIRED]

          The key in a key-value pair. For example, in the tag Department: Accounting , Department is the key.

        • ConditionValue (string) -- [REQUIRED]

          The value in a key-value pair. For example, in the tag Department: Accounting , Accounting is the value.

    • NotResources (list) --

      A list of Amazon Resource Names (ARNs) to exclude from a backup plan. The maximum number of ARNs is 500 without wildcards, or 30 ARNs with wildcards.

      If you need to exclude many resources from a backup plan, consider a different resource selection strategy, such as assigning only one or a few resource types or refining your resource selection using tags.

      • (string) --
    • Conditions (dict) --

      A list of conditions that you define to assign resources to your backup plans using tags. For example, "StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", "ConditionValue": "true" }, . Condition operators are case sensitive.

      Conditions differs from ListOfTags as follows:
      • When you specify more than one condition, you only assign the resources that match ALL conditions (using AND logic).
      • Conditions supports StringEquals , StringLike , StringNotEquals , and StringNotLike . ListOfTags only supports StringEquals .
      • StringEquals (list) --

        Filters the values of your tagged resources for only those resources that you tagged with the same value. Also called "exact matching."

        • (dict) --

          Includes information about tags you define to assign tagged resources to a backup plan.

          • ConditionKey (string) --

            The key in a key-value pair. For example, in the tag Department: Accounting , Department is the key.

          • ConditionValue (string) --

            The value in a key-value pair. For example, in the tag Department: Accounting , Accounting is the value.

      • StringNotEquals (list) --

        Filters the values of your tagged resources for only those resources that you tagged that do not have the same value. Also called "negated matching."

        • (dict) --

          Includes information about tags you define to assign tagged resources to a backup plan.

          • ConditionKey (string) --

            The key in a key-value pair. For example, in the tag Department: Accounting , Department is the key.

          • ConditionValue (string) --

            The value in a key-value pair. For example, in the tag Department: Accounting , Accounting is the value.

      • StringLike (list) --

        Filters the values of your tagged resources for matching tag values with the use of a wildcard character (*) anywhere in the string. For example, "prod*" or "rod" matches the tag value "production".

        • (dict) --

          Includes information about tags you define to assign tagged resources to a backup plan.

          • ConditionKey (string) --

            The key in a key-value pair. For example, in the tag Department: Accounting , Department is the key.

          • ConditionValue (string) --

            The value in a key-value pair. For example, in the tag Department: Accounting , Accounting is the value.

      • StringNotLike (list) --

        Filters the values of your tagged resources for non-matching tag values with the use of a wildcard character (*) anywhere in the string.

        • (dict) --

          Includes information about tags you define to assign tagged resources to a backup plan.

          • ConditionKey (string) --

            The key in a key-value pair. For example, in the tag Department: Accounting , Department is the key.

          • ConditionValue (string) --

            The value in a key-value pair. For example, in the tag Department: Accounting , Accounting is the value.

  • CreatorRequestId (string) --

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

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

Return type

dict

Returns

Response Syntax

{
    'SelectionId': 'string',
    'BackupPlanId': 'string',
    'CreationDate': datetime(2015, 1, 1)
}

Response Structure

  • (dict) --

    • SelectionId (string) --

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

    • BackupPlanId (string) --

      Uniquely identifies a backup plan.

    • CreationDate (datetime) --

      The date and time a backup selection 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.

Exceptions

  • Backup.Client.exceptions.LimitExceededException
  • Backup.Client.exceptions.AlreadyExistsException
  • Backup.Client.exceptions.InvalidParameterValueException
  • Backup.Client.exceptions.MissingParameterValueException
  • Backup.Client.exceptions.ServiceUnavailableException