Amazon Macie 2

2021/01/29 - Amazon Macie 2 - 3 updated api methods

Changes  This release of the Amazon Macie API adds support for using object prefixes to refine the scope of a classification job.

CreateClassificationJob (updated) Link ¶
Changes (request)
{'s3JobDefinition': {'scoping': {'excludes': {'and': {'simpleScopeTerm': {'comparator': {'STARTS_WITH'},
                                                                          'key': {'OBJECT_KEY'}},
                                                      'tagScopeTerm': {'comparator': {'STARTS_WITH'}}}},
                                 'includes': {'and': {'simpleScopeTerm': {'comparator': {'STARTS_WITH'},
                                                                          'key': {'OBJECT_KEY'}},
                                                      'tagScopeTerm': {'comparator': {'STARTS_WITH'}}}}}}}

Creates and defines the settings for a classification job.

See also: AWS API Documentation

Request Syntax

client.create_classification_job(
    clientToken='string',
    customDataIdentifierIds=[
        'string',
    ],
    description='string',
    initialRun=True|False,
    jobType='ONE_TIME'|'SCHEDULED',
    name='string',
    s3JobDefinition={
        'bucketDefinitions': [
            {
                'accountId': 'string',
                'buckets': [
                    'string',
                ]
            },
        ],
        'scoping': {
            'excludes': {
                'and': [
                    {
                        'simpleScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'BUCKET_CREATION_DATE'|'OBJECT_EXTENSION'|'OBJECT_LAST_MODIFIED_DATE'|'OBJECT_SIZE'|'TAG'|'OBJECT_KEY',
                            'values': [
                                'string',
                            ]
                        },
                        'tagScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'string',
                            'tagValues': [
                                {
                                    'key': 'string',
                                    'value': 'string'
                                },
                            ],
                            'target': 'S3_OBJECT'
                        }
                    },
                ]
            },
            'includes': {
                'and': [
                    {
                        'simpleScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'BUCKET_CREATION_DATE'|'OBJECT_EXTENSION'|'OBJECT_LAST_MODIFIED_DATE'|'OBJECT_SIZE'|'TAG'|'OBJECT_KEY',
                            'values': [
                                'string',
                            ]
                        },
                        'tagScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'string',
                            'tagValues': [
                                {
                                    'key': 'string',
                                    'value': 'string'
                                },
                            ],
                            'target': 'S3_OBJECT'
                        }
                    },
                ]
            }
        }
    },
    samplingPercentage=123,
    scheduleFrequency={
        'dailySchedule': {}
        ,
        'monthlySchedule': {
            'dayOfMonth': 123
        },
        'weeklySchedule': {
            'dayOfWeek': 'SUNDAY'|'MONDAY'|'TUESDAY'|'WEDNESDAY'|'THURSDAY'|'FRIDAY'|'SATURDAY'
        }
    },
    tags={
        'string': 'string'
    }
)
type clientToken

string

param clientToken

[REQUIRED]

A unique, case-sensitive token that you provide to ensure the idempotency of the request.

This field is autopopulated if not provided.

type customDataIdentifierIds

list

param customDataIdentifierIds

The custom data identifiers to use for data analysis and classification.

  • (string) --

type description

string

param description

A custom description of the job. The description can contain as many as 200 characters.

type initialRun

boolean

param initialRun

Specifies whether to analyze all existing, eligible objects immediately after the job is created.

type jobType

string

param jobType

[REQUIRED]

The schedule for running the job. Valid values are:

  • ONE_TIME - Run the job only once. If you specify this value, don't specify a value for the scheduleFrequency property.

  • SCHEDULED - Run the job on a daily, weekly, or monthly basis. If you specify this value, use the scheduleFrequency property to define the recurrence pattern for the job.

type name

string

param name

[REQUIRED]

A custom name for the job. The name can contain as many as 500 characters.

type s3JobDefinition

dict

param s3JobDefinition

[REQUIRED]

The S3 buckets that contain the objects to analyze, and the scope of that analysis.

  • bucketDefinitions (list) --

    An array of objects, one for each AWS account that owns buckets to analyze. Each object specifies the account ID for an account and one or more buckets to analyze for the account.

    • (dict) --

      Specifies which AWS account owns the S3 buckets that a classification job analyzes, and the buckets to analyze for the account.

      • accountId (string) -- [REQUIRED]

        The unique identifier for the AWS account that owns the buckets.

      • buckets (list) -- [REQUIRED]

        An array that lists the names of the buckets.

        • (string) --

  • scoping (dict) --

    The property- and tag-based conditions that determine which objects to include or exclude from the analysis.

    • excludes (dict) --

      The property- or tag-based conditions that determine which objects to exclude from the analysis.

      • and (list) --

        An array of conditions, one for each condition that determines which objects to include or exclude from the job.

        • (dict) --

          Specifies a property- or tag-based condition that defines criteria for including or excluding objects from a classification job.

          • simpleScopeTerm (dict) --

            A property-based condition that defines a property, operator, and one or more values for including or excluding an object from the job.

            • comparator (string) --

              The operator to use in the condition. Valid operators for each supported property (key) are:

              • OBJECT_EXTENSION - EQ (equals) or NE (not equals)

              • OBJECT_KEY - STARTS_WITH

              • OBJECT_LAST_MODIFIED_DATE - Any operator except CONTAINS

              • OBJECT_SIZE - Any operator except CONTAINS

              • TAG - EQ (equals) or NE (not equals)

            • key (string) --

              The object property to use in the condition.

            • values (list) --

              An array that lists the values to use in the condition. If the value for the key property is OBJECT_EXTENSION or OBJECT_KEY, this array can specify multiple values and Amazon Macie uses an OR operator to join the values. Otherwise, this array can specify only one value.

              Valid values for each supported property (key) are:

              • OBJECT_EXTENSION - A string that represents the file name extension of an object. For example: docx or pdf

              • OBJECT_KEY - A string that represents the key prefix (folder name or path) of an object. For example: logs or awslogs/eventlogs. This value applies a condition to objects whose keys (names) begin with the specified value.

              • OBJECT_LAST_MODIFIED_DATE - The date and time (in UTC and extended ISO 8601 format) when an object was created or last changed, whichever is latest. For example: 2020-09-28T14:31:13Z

              • OBJECT_SIZE - An integer that represents the storage size (in bytes) of an object.

              • TAG - A string that represents a tag key for an object. For advanced options, use a TagScopeTerm object, instead of a SimpleScopeTerm object, to define a tag-based condition for the job.

              Macie doesn't support use of wildcard characters in values. Also, string values are case sensitive.

              • (string) --

          • tagScopeTerm (dict) --

            A tag-based condition that defines the operator and tag keys or tag key and value pairs for including or excluding an object from the job.

            • comparator (string) --

              The operator to use in the condition. Valid operators are EQ (equals) or NE (not equals).

            • key (string) --

              The tag key to use in the condition.

            • tagValues (list) --

              The tag keys or tag key and value pairs to use in the condition.

              • (dict) --

                Specifies a tag key or tag key and value pair to use in a tag-based condition for a classification job.

                • key (string) --

                  The value for the tag key to use in the condition.

                • value (string) --

                  The tag value, associated with the specified tag key (key), to use in the condition. To specify only a tag key for a condition, specify the tag key for the key property and set this value to an empty string.

            • target (string) --

              The type of object to apply the condition to.

    • includes (dict) --

      The property- or tag-based conditions that determine which objects to include in the analysis.

      • and (list) --

        An array of conditions, one for each condition that determines which objects to include or exclude from the job.

        • (dict) --

          Specifies a property- or tag-based condition that defines criteria for including or excluding objects from a classification job.

          • simpleScopeTerm (dict) --

            A property-based condition that defines a property, operator, and one or more values for including or excluding an object from the job.

            • comparator (string) --

              The operator to use in the condition. Valid operators for each supported property (key) are:

              • OBJECT_EXTENSION - EQ (equals) or NE (not equals)

              • OBJECT_KEY - STARTS_WITH

              • OBJECT_LAST_MODIFIED_DATE - Any operator except CONTAINS

              • OBJECT_SIZE - Any operator except CONTAINS

              • TAG - EQ (equals) or NE (not equals)

            • key (string) --

              The object property to use in the condition.

            • values (list) --

              An array that lists the values to use in the condition. If the value for the key property is OBJECT_EXTENSION or OBJECT_KEY, this array can specify multiple values and Amazon Macie uses an OR operator to join the values. Otherwise, this array can specify only one value.

              Valid values for each supported property (key) are:

              • OBJECT_EXTENSION - A string that represents the file name extension of an object. For example: docx or pdf

              • OBJECT_KEY - A string that represents the key prefix (folder name or path) of an object. For example: logs or awslogs/eventlogs. This value applies a condition to objects whose keys (names) begin with the specified value.

              • OBJECT_LAST_MODIFIED_DATE - The date and time (in UTC and extended ISO 8601 format) when an object was created or last changed, whichever is latest. For example: 2020-09-28T14:31:13Z

              • OBJECT_SIZE - An integer that represents the storage size (in bytes) of an object.

              • TAG - A string that represents a tag key for an object. For advanced options, use a TagScopeTerm object, instead of a SimpleScopeTerm object, to define a tag-based condition for the job.

              Macie doesn't support use of wildcard characters in values. Also, string values are case sensitive.

              • (string) --

          • tagScopeTerm (dict) --

            A tag-based condition that defines the operator and tag keys or tag key and value pairs for including or excluding an object from the job.

            • comparator (string) --

              The operator to use in the condition. Valid operators are EQ (equals) or NE (not equals).

            • key (string) --

              The tag key to use in the condition.

            • tagValues (list) --

              The tag keys or tag key and value pairs to use in the condition.

              • (dict) --

                Specifies a tag key or tag key and value pair to use in a tag-based condition for a classification job.

                • key (string) --

                  The value for the tag key to use in the condition.

                • value (string) --

                  The tag value, associated with the specified tag key (key), to use in the condition. To specify only a tag key for a condition, specify the tag key for the key property and set this value to an empty string.

            • target (string) --

              The type of object to apply the condition to.

type samplingPercentage

integer

param samplingPercentage

The sampling depth, as a percentage, to apply when processing objects. This value determines the percentage of eligible objects that the job analyzes. If this value is less than 100, Amazon Macie selects the objects to analyze at random, up to the specified percentage, and analyzes all the data in those objects.

type scheduleFrequency

dict

param scheduleFrequency

The recurrence pattern for running the job. To run the job only once, don't specify a value for this property and set the value for the jobType property to ONE_TIME.

  • dailySchedule (dict) --

    Specifies a daily recurrence pattern for running the job.

  • monthlySchedule (dict) --

    Specifies a monthly recurrence pattern for running the job.

    • dayOfMonth (integer) --

      The numeric day of the month when Amazon Macie runs the job. This value can be an integer from 1 through 31.

      If this value exceeds the number of days in a certain month, Macie runs the job on the last day of that month. For example, if this value is 31 and a month has only 30 days, Macie runs the job on day 30 of that month.

  • weeklySchedule (dict) --

    Specifies a weekly recurrence pattern for running the job.

    • dayOfWeek (string) --

      The day of the week when Amazon Macie runs the job.

type tags

dict

param tags

A map of key-value pairs that specifies the tags to associate with the job.

A job can have a maximum of 50 tags. Each tag consists of a tag key and an associated tag value. The maximum length of a tag key is 128 characters. The maximum length of a tag value is 256 characters.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'jobArn': 'string',
    'jobId': 'string'
}

Response Structure

  • (dict) --

    The request succeeded. The specified job was created.

    • jobArn (string) --

      The Amazon Resource Name (ARN) of the job.

    • jobId (string) --

      The unique identifier for the job.

DescribeClassificationJob (updated) Link ¶
Changes (response)
{'s3JobDefinition': {'scoping': {'excludes': {'and': {'simpleScopeTerm': {'comparator': {'STARTS_WITH'},
                                                                          'key': {'OBJECT_KEY'}},
                                                      'tagScopeTerm': {'comparator': {'STARTS_WITH'}}}},
                                 'includes': {'and': {'simpleScopeTerm': {'comparator': {'STARTS_WITH'},
                                                                          'key': {'OBJECT_KEY'}},
                                                      'tagScopeTerm': {'comparator': {'STARTS_WITH'}}}}}}}

Retrieves the status and settings for a classification job.

See also: AWS API Documentation

Request Syntax

client.describe_classification_job(
    jobId='string'
)
type jobId

string

param jobId

[REQUIRED]

The unique identifier for the classification job.

rtype

dict

returns

Response Syntax

{
    'clientToken': 'string',
    'createdAt': datetime(2015, 1, 1),
    'customDataIdentifierIds': [
        'string',
    ],
    'description': 'string',
    'initialRun': True|False,
    'jobArn': 'string',
    'jobId': 'string',
    'jobStatus': 'RUNNING'|'PAUSED'|'CANCELLED'|'COMPLETE'|'IDLE'|'USER_PAUSED',
    'jobType': 'ONE_TIME'|'SCHEDULED',
    'lastRunErrorStatus': {
        'code': 'NONE'|'ERROR'
    },
    'lastRunTime': datetime(2015, 1, 1),
    'name': 'string',
    's3JobDefinition': {
        'bucketDefinitions': [
            {
                'accountId': 'string',
                'buckets': [
                    'string',
                ]
            },
        ],
        'scoping': {
            'excludes': {
                'and': [
                    {
                        'simpleScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'BUCKET_CREATION_DATE'|'OBJECT_EXTENSION'|'OBJECT_LAST_MODIFIED_DATE'|'OBJECT_SIZE'|'TAG'|'OBJECT_KEY',
                            'values': [
                                'string',
                            ]
                        },
                        'tagScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'string',
                            'tagValues': [
                                {
                                    'key': 'string',
                                    'value': 'string'
                                },
                            ],
                            'target': 'S3_OBJECT'
                        }
                    },
                ]
            },
            'includes': {
                'and': [
                    {
                        'simpleScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'BUCKET_CREATION_DATE'|'OBJECT_EXTENSION'|'OBJECT_LAST_MODIFIED_DATE'|'OBJECT_SIZE'|'TAG'|'OBJECT_KEY',
                            'values': [
                                'string',
                            ]
                        },
                        'tagScopeTerm': {
                            'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                            'key': 'string',
                            'tagValues': [
                                {
                                    'key': 'string',
                                    'value': 'string'
                                },
                            ],
                            'target': 'S3_OBJECT'
                        }
                    },
                ]
            }
        }
    },
    'samplingPercentage': 123,
    'scheduleFrequency': {
        'dailySchedule': {},
        'monthlySchedule': {
            'dayOfMonth': 123
        },
        'weeklySchedule': {
            'dayOfWeek': 'SUNDAY'|'MONDAY'|'TUESDAY'|'WEDNESDAY'|'THURSDAY'|'FRIDAY'|'SATURDAY'
        }
    },
    'statistics': {
        'approximateNumberOfObjectsToProcess': 123.0,
        'numberOfRuns': 123.0
    },
    'tags': {
        'string': 'string'
    },
    'userPausedDetails': {
        'jobExpiresAt': datetime(2015, 1, 1),
        'jobImminentExpirationHealthEventArn': 'string',
        'jobPausedAt': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    The request succeeded.

    • clientToken (string) --

      The token that was provided to ensure the idempotency of the request to create the job.

    • createdAt (datetime) --

      The date and time, in UTC and extended ISO 8601 format, when the job was created.

    • customDataIdentifierIds (list) --

      The custom data identifiers that the job uses to analyze data.

      • (string) --

    • description (string) --

      The custom description of the job.

    • initialRun (boolean) --

      Specifies whether the job is configured to analyze all existing, eligible objects immediately after it's created.

    • jobArn (string) --

      The Amazon Resource Name (ARN) of the job.

    • jobId (string) --

      The unique identifier for the job.

    • jobStatus (string) --

      The current status of the job. Possible values are:

      • CANCELLED - You cancelled the job or, if it's a one-time job, you paused the job and didn't resume it within 30 days.

      • COMPLETE - For a one-time job, Amazon Macie finished processing the data specified for the job. This value doesn't apply to recurring jobs.

      • IDLE - For a recurring job, the previous scheduled run is complete and the next scheduled run is pending. This value doesn't apply to one-time jobs.

      • PAUSED - Amazon Macie started running the job but additional processing would exceed the monthly sensitive data discovery quota for your account or one or more member accounts that the job analyzes data for.

      • RUNNING - For a one-time job, the job is in progress. For a recurring job, a scheduled run is in progress.

      • USER_PAUSED - You paused the job. If you paused the job while it had a status of RUNNING and you don't resume it within 30 days of pausing it, the job or job run will expire and be cancelled, depending on the job's type. To check the expiration date, refer to the UserPausedDetails.jobExpiresAt property.

    • jobType (string) --

      The schedule for running the job. Possible values are:

      • ONE_TIME - The job runs only once.

      • SCHEDULED - The job runs on a daily, weekly, or monthly basis. The scheduleFrequency property indicates the recurrence pattern for the job.

    • lastRunErrorStatus (dict) --

      Specifies whether any account- or bucket-level access errors occurred when the job ran. For a recurring job, this value indicates the error status of the job's most recent run.

      • code (string) --

        Specifies whether any account- or bucket-level access errors occurred when the job ran. For a recurring job, this value indicates the error status of the job's most recent run. Possible values are:

        • ERROR - One or more errors occurred. Amazon Macie didn't process all the data specified for the job.

        • NONE - No errors occurred. Macie processed all the data specified for the job.

    • lastRunTime (datetime) --

      The date and time, in UTC and extended ISO 8601 format, when the job started. If the job is a recurring job, this value indicates when the most recent run started.

    • name (string) --

      The custom name of the job.

    • s3JobDefinition (dict) --

      The S3 buckets that the job is configured to analyze, and the scope of that analysis.

      • bucketDefinitions (list) --

        An array of objects, one for each AWS account that owns buckets to analyze. Each object specifies the account ID for an account and one or more buckets to analyze for the account.

        • (dict) --

          Specifies which AWS account owns the S3 buckets that a classification job analyzes, and the buckets to analyze for the account.

          • accountId (string) --

            The unique identifier for the AWS account that owns the buckets.

          • buckets (list) --

            An array that lists the names of the buckets.

            • (string) --

      • scoping (dict) --

        The property- and tag-based conditions that determine which objects to include or exclude from the analysis.

        • excludes (dict) --

          The property- or tag-based conditions that determine which objects to exclude from the analysis.

          • and (list) --

            An array of conditions, one for each condition that determines which objects to include or exclude from the job.

            • (dict) --

              Specifies a property- or tag-based condition that defines criteria for including or excluding objects from a classification job.

              • simpleScopeTerm (dict) --

                A property-based condition that defines a property, operator, and one or more values for including or excluding an object from the job.

                • comparator (string) --

                  The operator to use in the condition. Valid operators for each supported property (key) are:

                  • OBJECT_EXTENSION - EQ (equals) or NE (not equals)

                  • OBJECT_KEY - STARTS_WITH

                  • OBJECT_LAST_MODIFIED_DATE - Any operator except CONTAINS

                  • OBJECT_SIZE - Any operator except CONTAINS

                  • TAG - EQ (equals) or NE (not equals)

                • key (string) --

                  The object property to use in the condition.

                • values (list) --

                  An array that lists the values to use in the condition. If the value for the key property is OBJECT_EXTENSION or OBJECT_KEY, this array can specify multiple values and Amazon Macie uses an OR operator to join the values. Otherwise, this array can specify only one value.

                  Valid values for each supported property (key) are:

                  • OBJECT_EXTENSION - A string that represents the file name extension of an object. For example: docx or pdf

                  • OBJECT_KEY - A string that represents the key prefix (folder name or path) of an object. For example: logs or awslogs/eventlogs. This value applies a condition to objects whose keys (names) begin with the specified value.

                  • OBJECT_LAST_MODIFIED_DATE - The date and time (in UTC and extended ISO 8601 format) when an object was created or last changed, whichever is latest. For example: 2020-09-28T14:31:13Z

                  • OBJECT_SIZE - An integer that represents the storage size (in bytes) of an object.

                  • TAG - A string that represents a tag key for an object. For advanced options, use a TagScopeTerm object, instead of a SimpleScopeTerm object, to define a tag-based condition for the job.

                  Macie doesn't support use of wildcard characters in values. Also, string values are case sensitive.

                  • (string) --

              • tagScopeTerm (dict) --

                A tag-based condition that defines the operator and tag keys or tag key and value pairs for including or excluding an object from the job.

                • comparator (string) --

                  The operator to use in the condition. Valid operators are EQ (equals) or NE (not equals).

                • key (string) --

                  The tag key to use in the condition.

                • tagValues (list) --

                  The tag keys or tag key and value pairs to use in the condition.

                  • (dict) --

                    Specifies a tag key or tag key and value pair to use in a tag-based condition for a classification job.

                    • key (string) --

                      The value for the tag key to use in the condition.

                    • value (string) --

                      The tag value, associated with the specified tag key (key), to use in the condition. To specify only a tag key for a condition, specify the tag key for the key property and set this value to an empty string.

                • target (string) --

                  The type of object to apply the condition to.

        • includes (dict) --

          The property- or tag-based conditions that determine which objects to include in the analysis.

          • and (list) --

            An array of conditions, one for each condition that determines which objects to include or exclude from the job.

            • (dict) --

              Specifies a property- or tag-based condition that defines criteria for including or excluding objects from a classification job.

              • simpleScopeTerm (dict) --

                A property-based condition that defines a property, operator, and one or more values for including or excluding an object from the job.

                • comparator (string) --

                  The operator to use in the condition. Valid operators for each supported property (key) are:

                  • OBJECT_EXTENSION - EQ (equals) or NE (not equals)

                  • OBJECT_KEY - STARTS_WITH

                  • OBJECT_LAST_MODIFIED_DATE - Any operator except CONTAINS

                  • OBJECT_SIZE - Any operator except CONTAINS

                  • TAG - EQ (equals) or NE (not equals)

                • key (string) --

                  The object property to use in the condition.

                • values (list) --

                  An array that lists the values to use in the condition. If the value for the key property is OBJECT_EXTENSION or OBJECT_KEY, this array can specify multiple values and Amazon Macie uses an OR operator to join the values. Otherwise, this array can specify only one value.

                  Valid values for each supported property (key) are:

                  • OBJECT_EXTENSION - A string that represents the file name extension of an object. For example: docx or pdf

                  • OBJECT_KEY - A string that represents the key prefix (folder name or path) of an object. For example: logs or awslogs/eventlogs. This value applies a condition to objects whose keys (names) begin with the specified value.

                  • OBJECT_LAST_MODIFIED_DATE - The date and time (in UTC and extended ISO 8601 format) when an object was created or last changed, whichever is latest. For example: 2020-09-28T14:31:13Z

                  • OBJECT_SIZE - An integer that represents the storage size (in bytes) of an object.

                  • TAG - A string that represents a tag key for an object. For advanced options, use a TagScopeTerm object, instead of a SimpleScopeTerm object, to define a tag-based condition for the job.

                  Macie doesn't support use of wildcard characters in values. Also, string values are case sensitive.

                  • (string) --

              • tagScopeTerm (dict) --

                A tag-based condition that defines the operator and tag keys or tag key and value pairs for including or excluding an object from the job.

                • comparator (string) --

                  The operator to use in the condition. Valid operators are EQ (equals) or NE (not equals).

                • key (string) --

                  The tag key to use in the condition.

                • tagValues (list) --

                  The tag keys or tag key and value pairs to use in the condition.

                  • (dict) --

                    Specifies a tag key or tag key and value pair to use in a tag-based condition for a classification job.

                    • key (string) --

                      The value for the tag key to use in the condition.

                    • value (string) --

                      The tag value, associated with the specified tag key (key), to use in the condition. To specify only a tag key for a condition, specify the tag key for the key property and set this value to an empty string.

                • target (string) --

                  The type of object to apply the condition to.

    • samplingPercentage (integer) --

      The sampling depth, as a percentage, that determines the percentage of eligible objects that the job analyzes.

    • scheduleFrequency (dict) --

      The recurrence pattern for running the job. If the job is configured to run only once, this value is null.

      • dailySchedule (dict) --

        Specifies a daily recurrence pattern for running the job.

      • monthlySchedule (dict) --

        Specifies a monthly recurrence pattern for running the job.

        • dayOfMonth (integer) --

          The numeric day of the month when Amazon Macie runs the job. This value can be an integer from 1 through 31.

          If this value exceeds the number of days in a certain month, Macie runs the job on the last day of that month. For example, if this value is 31 and a month has only 30 days, Macie runs the job on day 30 of that month.

      • weeklySchedule (dict) --

        Specifies a weekly recurrence pattern for running the job.

        • dayOfWeek (string) --

          The day of the week when Amazon Macie runs the job.

    • statistics (dict) --

      The number of times that the job has run and processing statistics for the job's current run.

      • approximateNumberOfObjectsToProcess (float) --

        The approximate number of objects that the job has yet to process during its current run.

      • numberOfRuns (float) --

        The number of times that the job has run.

    • tags (dict) --

      A map of key-value pairs that specifies which tags (keys and values) are associated with the classification job.

      • (string) --

        • (string) --

    • userPausedDetails (dict) --

      If the current status of the job is USER_PAUSED, specifies when the job was paused and when the job or job run will expire and be cancelled if it isn't resumed. This value is present only if the value for jobStatus is USER_PAUSED.

      • jobExpiresAt (datetime) --

        The date and time, in UTC and extended ISO 8601 format, when the job or job run will expire and be cancelled if you don't resume it first.

      • jobImminentExpirationHealthEventArn (string) --

        The Amazon Resource Name (ARN) of the AWS Health event that Amazon Macie sent to notify you of the job or job run's pending expiration and cancellation. This value is null if a job has been paused for less than 23 days.

      • jobPausedAt (datetime) --

        The date and time, in UTC and extended ISO 8601 format, when you paused the job.

ListClassificationJobs (updated) Link ¶
Changes (request)
{'filterCriteria': {'excludes': {'comparator': {'STARTS_WITH'}},
                    'includes': {'comparator': {'STARTS_WITH'}}}}

Retrieves a subset of information about one or more classification jobs.

See also: AWS API Documentation

Request Syntax

client.list_classification_jobs(
    filterCriteria={
        'excludes': [
            {
                'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                'key': 'jobType'|'jobStatus'|'createdAt'|'name',
                'values': [
                    'string',
                ]
            },
        ],
        'includes': [
            {
                'comparator': 'EQ'|'GT'|'GTE'|'LT'|'LTE'|'NE'|'CONTAINS'|'STARTS_WITH',
                'key': 'jobType'|'jobStatus'|'createdAt'|'name',
                'values': [
                    'string',
                ]
            },
        ]
    },
    maxResults=123,
    nextToken='string',
    sortCriteria={
        'attributeName': 'createdAt'|'jobStatus'|'name'|'jobType',
        'orderBy': 'ASC'|'DESC'
    }
)
type filterCriteria

dict

param filterCriteria

The criteria to use to filter the results.

  • excludes (list) --

    An array of objects, one for each condition that determines which jobs to exclude from the results.

    • (dict) --

      Specifies a condition that filters the results of a request for information about classification jobs. Each condition consists of a property, an operator, and one or more values.

      • comparator (string) --

        The operator to use to filter the results.

      • key (string) --

        The property to use to filter the results.

      • values (list) --

        An array that lists one or more values to use to filter the results.

        • (string) --

  • includes (list) --

    An array of objects, one for each condition that determines which jobs to include in the results.

    • (dict) --

      Specifies a condition that filters the results of a request for information about classification jobs. Each condition consists of a property, an operator, and one or more values.

      • comparator (string) --

        The operator to use to filter the results.

      • key (string) --

        The property to use to filter the results.

      • values (list) --

        An array that lists one or more values to use to filter the results.

        • (string) --

type maxResults

integer

param maxResults

The maximum number of items to include in each page of the response.

type nextToken

string

param nextToken

The nextToken string that specifies which page of results to return in a paginated response.

type sortCriteria

dict

param sortCriteria

The criteria to use to sort the results.

  • attributeName (string) --

    The property to sort the results by.

  • orderBy (string) --

    The sort order to apply to the results, based on the value for the property specified by the attributeName property. Valid values are: ASC, sort the results in ascending order; and, DESC, sort the results in descending order.

rtype

dict

returns

Response Syntax

{
    'items': [
        {
            'bucketDefinitions': [
                {
                    'accountId': 'string',
                    'buckets': [
                        'string',
                    ]
                },
            ],
            'createdAt': datetime(2015, 1, 1),
            'jobId': 'string',
            'jobStatus': 'RUNNING'|'PAUSED'|'CANCELLED'|'COMPLETE'|'IDLE'|'USER_PAUSED',
            'jobType': 'ONE_TIME'|'SCHEDULED',
            'lastRunErrorStatus': {
                'code': 'NONE'|'ERROR'
            },
            'name': 'string',
            'userPausedDetails': {
                'jobExpiresAt': datetime(2015, 1, 1),
                'jobImminentExpirationHealthEventArn': 'string',
                'jobPausedAt': datetime(2015, 1, 1)
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    The request succeeded.

    • items (list) --

      An array of objects, one for each job that meets the filter criteria specified in the request.

      • (dict) --

        Provides information about a classification job, including the current status of the job.

        • bucketDefinitions (list) --

          The S3 buckets that the job is configured to analyze.

          • (dict) --

            Specifies which AWS account owns the S3 buckets that a classification job analyzes, and the buckets to analyze for the account.

            • accountId (string) --

              The unique identifier for the AWS account that owns the buckets.

            • buckets (list) --

              An array that lists the names of the buckets.

              • (string) --

        • createdAt (datetime) --

          The date and time, in UTC and extended ISO 8601 format, when the job was created.

        • jobId (string) --

          The unique identifier for the job.

        • jobStatus (string) --

          The current status of the job. Possible values are:

          • CANCELLED - You cancelled the job or, if it's a one-time job, you paused the job and didn't resume it within 30 days.

          • COMPLETE - For a one-time job, Amazon Macie finished processing the data specified for the job. This value doesn't apply to recurring jobs.

          • IDLE - For a recurring job, the previous scheduled run is complete and the next scheduled run is pending. This value doesn't apply to one-time jobs.

          • PAUSED - Amazon Macie started running the job but additional processing would exceed the monthly sensitive data discovery quota for your account or one or more member accounts that the job analyzes data for.

          • RUNNING - For a one-time job, the job is in progress. For a recurring job, a scheduled run is in progress.

          • USER_PAUSED - You paused the job. If you paused the job while it had a status of RUNNING and you don't resume it within 30 days of pausing it, the job or job run will expire and be cancelled, depending on the job's type. To check the expiration date, refer to the UserPausedDetails.jobExpiresAt property.

        • jobType (string) --

          The schedule for running the job. Possible values are:

          • ONE_TIME - The job runs only once.

          • SCHEDULED - The job runs on a daily, weekly, or monthly basis.

        • lastRunErrorStatus (dict) --

          Specifies whether any account- or bucket-level access errors occurred when the job ran. For a recurring job, this value indicates the error status of the job's most recent run.

          • code (string) --

            Specifies whether any account- or bucket-level access errors occurred when the job ran. For a recurring job, this value indicates the error status of the job's most recent run. Possible values are:

            • ERROR - One or more errors occurred. Amazon Macie didn't process all the data specified for the job.

            • NONE - No errors occurred. Macie processed all the data specified for the job.

        • name (string) --

          The custom name of the job.

        • userPausedDetails (dict) --

          If the current status of the job is USER_PAUSED, specifies when the job was paused and when the job or job run will expire and be cancelled if it isn't resumed. This value is present only if the value for jobStatus is USER_PAUSED.

          • jobExpiresAt (datetime) --

            The date and time, in UTC and extended ISO 8601 format, when the job or job run will expire and be cancelled if you don't resume it first.

          • jobImminentExpirationHealthEventArn (string) --

            The Amazon Resource Name (ARN) of the AWS Health event that Amazon Macie sent to notify you of the job or job run's pending expiration and cancellation. This value is null if a job has been paused for less than 23 days.

          • jobPausedAt (datetime) --

            The date and time, in UTC and extended ISO 8601 format, when you paused the job.

    • nextToken (string) --

      The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.