NAME
Paws::S3Control::CreateJob - Arguments for method CreateJob on Paws::S3Control
DESCRIPTION
This class represents the parameters used for calling the method CreateJob on the AWS S3 Control service. Use the attributes of this class as arguments to method CreateJob.
You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateJob.
SYNOPSIS
my $s3-control = Paws->service('S3Control');
my $CreateJobResult = $s3 -control->CreateJob(
AccountId => 'MyAccountId',
ClientRequestToken => 'MyNonEmptyMaxLength64String',
Manifest => {
Location => {
ETag => 'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
ObjectArn => 'MyS3KeyArnString', # min: 1, max: 2000
ObjectVersionId =>
'MyS3ObjectVersionId', # min: 1, max: 2000; OPTIONAL
},
Spec => {
Format => 'S3BatchOperations_CSV_20180820'
, # values: S3BatchOperations_CSV_20180820, S3InventoryReport_CSV_20161130
Fields => [
'Ignore', ... # values: Ignore, Bucket, Key, VersionId
], # OPTIONAL
},
},
Operation => {
LambdaInvoke => {
FunctionArn => 'MyFunctionArnString', # min: 1, max: 1024; OPTIONAL
}, # OPTIONAL
S3DeleteObjectTagging => {
}, # OPTIONAL
S3InitiateRestoreObject => {
ExpirationInDays => 1, # OPTIONAL
GlacierJobTier => 'BULK', # values: BULK, STANDARD; OPTIONAL
}, # OPTIONAL
S3PutObjectAcl => {
AccessControlPolicy => {
AccessControlList => {
Owner => {
DisplayName =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
ID => 'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
},
Grants => [
{
Grantee => {
DisplayName =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
Identifier =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
TypeIdentifier =>
'id', # values: id, emailAddress, uri; OPTIONAL
}, # OPTIONAL
Permission => 'FULL_CONTROL'
, # values: FULL_CONTROL, READ, WRITE, READ_ACP, WRITE_ACP; OPTIONAL
},
...
], # OPTIONAL
}, # OPTIONAL
CannedAccessControlList => 'private'
, # values: private, public-read, public-read-write, aws-exec-read, authenticated-read, bucket-owner-read, bucket-owner-full-control; OPTIONAL
}, # OPTIONAL
}, # OPTIONAL
S3PutObjectCopy => {
AccessControlGrants => [
{
Grantee => {
DisplayName =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
Identifier =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
TypeIdentifier =>
'id', # values: id, emailAddress, uri; OPTIONAL
}, # OPTIONAL
Permission => 'FULL_CONTROL'
, # values: FULL_CONTROL, READ, WRITE, READ_ACP, WRITE_ACP; OPTIONAL
},
...
], # OPTIONAL
BucketKeyEnabled => 1, # OPTIONAL
CannedAccessControlList => 'private'
, # values: private, public-read, public-read-write, aws-exec-read, authenticated-read, bucket-owner-read, bucket-owner-full-control; OPTIONAL
MetadataDirective => 'COPY', # values: COPY, REPLACE; OPTIONAL
ModifiedSinceConstraint => '1970-01-01T01:00:00', # OPTIONAL
NewObjectMetadata => {
CacheControl => 'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
ContentDisposition =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
ContentEncoding =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
ContentLanguage =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
ContentLength => 1, # OPTIONAL
ContentMD5 => 'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
ContentType => 'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
HttpExpiresDate => '1970-01-01T01:00:00', # OPTIONAL
RequesterCharged => 1, # OPTIONAL
SSEAlgorithm => 'AES256', # values: AES256, KMS; OPTIONAL
UserMetadata => {
'MyNonEmptyMaxLength1024String' => 'MyMaxLength1024String'
, # key: min: 1, max: 1024, value: max: 1024
}, # max: 8192; OPTIONAL
}, # OPTIONAL
NewObjectTagging => [
{
Key => 'MyTagKeyString', # min: 1, max: 1024
Value => 'MyTagValueString', # max: 1024
},
...
], # OPTIONAL
ObjectLockLegalHoldStatus => 'OFF', # values: OFF, ON; OPTIONAL
ObjectLockMode =>
'COMPLIANCE', # values: COMPLIANCE, GOVERNANCE; OPTIONAL
ObjectLockRetainUntilDate => '1970-01-01T01:00:00', # OPTIONAL
RedirectLocation =>
'MyNonEmptyMaxLength2048String', # min: 1, max: 2048; OPTIONAL
RequesterPays => 1, # OPTIONAL
SSEAwsKmsKeyId => 'MyKmsKeyArnString', # min: 1, max: 2000; OPTIONAL
StorageClass => 'STANDARD'
, # values: STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE; OPTIONAL
TargetKeyPrefix =>
'MyNonEmptyMaxLength1024String', # min: 1, max: 1024
TargetResource => 'MyS3BucketArnString', # min: 1, max: 128; OPTIONAL
UnModifiedSinceConstraint => '1970-01-01T01:00:00', # OPTIONAL
}, # OPTIONAL
S3PutObjectLegalHold => {
LegalHold => {
Status => 'OFF', # values: OFF, ON; OPTIONAL
},
}, # OPTIONAL
S3PutObjectRetention => {
Retention => {
Mode => 'COMPLIANCE', # values: COMPLIANCE, GOVERNANCE; OPTIONAL
RetainUntilDate => '1970-01-01T01:00:00', # OPTIONAL
},
BypassGovernanceRetention => 1, # OPTIONAL
}, # OPTIONAL
S3PutObjectTagging => {
TagSet => [
{
Key => 'MyTagKeyString', # min: 1, max: 1024
Value => 'MyTagValueString', # max: 1024
},
...
], # OPTIONAL
}, # OPTIONAL
},
Priority => 1,
Report => {
Enabled => 1, # OPTIONAL
Bucket => 'MyS3BucketArnString', # min: 1, max: 128; OPTIONAL
Format => 'Report_CSV_20180820', # values: Report_CSV_20180820; OPTIONAL
Prefix => 'MyReportPrefixString', # min: 1, max: 512; OPTIONAL
ReportScope => 'AllTasks', # values: AllTasks, FailedTasksOnly; OPTIONAL
},
RoleArn => 'MyIAMRoleArn',
ConfirmationRequired => 1, # OPTIONAL
Description => 'MyNonEmptyMaxLength256String', # OPTIONAL
Tags => [
{
Key => 'MyTagKeyString', # min: 1, max: 1024
Value => 'MyTagValueString', # max: 1024
},
...
], # OPTIONAL
);
# Results:
my $JobId = $CreateJobResult->JobId;
# Returns a L<Paws::S3Control::CreateJobResult> object.
Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/s3-control/CreateJob
ATTRIBUTES
REQUIRED AccountId => Str
The AWS account ID that creates the job.
REQUIRED ClientRequestToken => Str
An idempotency token to ensure that you don't accidentally submit the same request twice. You can use any string up to the maximum length.
ConfirmationRequired => Bool
Indicates whether confirmation is required before Amazon S3 runs the job. Confirmation is only required for jobs created through the Amazon S3 console.
Description => Str
A description for this job. You can use any string within the permitted length. Descriptions don't need to be unique and can be used for multiple jobs.
REQUIRED Manifest => Paws::S3Control::JobManifest
Configuration parameters for the manifest.
REQUIRED Operation => Paws::S3Control::JobOperation
The action that you want this job to perform on every object listed in the manifest. For more information about the available actions, see Operations (https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-actions.html) in the Amazon S3 User Guide.
REQUIRED Priority => Int
The numerical priority for this job. Higher numbers indicate higher priority.
REQUIRED Report => Paws::S3Control::JobReport
Configuration parameters for the optional job-completion report.
REQUIRED RoleArn => Str
The Amazon Resource Name (ARN) for the AWS Identity and Access Management (IAM) role that Batch Operations will use to run this job's action on every object in the manifest.
Tags => ArrayRef[Paws::S3Control::S3Tag]
A set of tags to associate with the S3 Batch Operations job. This is an optional parameter.
SEE ALSO
This class forms part of Paws, documenting arguments for method CreateJob in Paws::S3Control
BUGS and CONTRIBUTIONS
The source code is located here: https://github.com/pplu/aws-sdk-perl
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues