This product is not supported for your selected
Datadog site. (
).
Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel,
n'hésitez pas à nous contacter.
gcp_storagetransfer_transfer_job
ancestors
Type: UNORDERED_LIST_STRING
creation_time
Type: TIMESTAMP
Provider name: creationTime
Description: Output only. The time that the transfer job was created.
deletion_time
Type: TIMESTAMP
Provider name: deletionTime
Description: Output only. The time that the transfer job was deleted.
description
Type: STRING
Provider name: description
Description: A description provided by the user for the job. Its max length is 1024 bytes when Unicode-encoded.
event_stream
Type: STRUCT
Provider name: eventStream
Description: Specifies the event stream for the transfer job for event-driven transfers. When EventStream is specified, the Schedule fields are ignored.
event_stream_expiration_time
Type: TIMESTAMP
Provider name: eventStreamExpirationTime
Description: Specifies the data and time at which Storage Transfer Service stops listening for events from this stream. After this time, any transfers in progress will complete, but no new transfers are initiated.
event_stream_start_time
Type: TIMESTAMP
Provider name: eventStreamStartTime
Description: Specifies the date and time that Storage Transfer Service starts listening for events from this stream. If no start time is specified or start time is in the past, Storage Transfer Service starts listening immediately.
name
Type: STRING
Provider name: name
Description: Required. Specifies a unique name of the resource such as AWS SQS ARN in the form ‘arn:aws:sqs:region:account_id:queue_name’, or Pub/Sub subscription resource name in the form ‘projects/{project}/subscriptions/{sub}’.
gcp_status
Type: STRING
Provider name: status
Description: Status of the job. This value MUST be specified for CreateTransferJobRequests
. Note: The effect of the new job status takes place during a subsequent job run. For example, if you change the job status from ENABLED to DISABLED, and an operation spawned by the transfer is running, the status change would not affect the current operation.
Possible values:
STATUS_UNSPECIFIED
- Zero is an illegal value.
ENABLED
- New transfers are performed based on the schedule.
DISABLED
- New transfers are not scheduled.
DELETED
- This is a soft delete state. After a transfer job is set to this state, the job and all the transfer executions are subject to garbage collection. Transfer jobs become eligible for garbage collection 30 days after their status is set to DELETED
.
labels
Type: UNORDERED_LIST_STRING
last_modification_time
Type: TIMESTAMP
Provider name: lastModificationTime
Description: Output only. The time that the transfer job was last modified.
latest_operation_name
Type: STRING
Provider name: latestOperationName
Description: The name of the most recently started TransferOperation of this JobConfig. Present if a TransferOperation has been created for this JobConfig.
logging_config
Type: STRUCT
Provider name: loggingConfig
Description: Logging configuration.
enable_onprem_gcs_transfer_logs
Type: BOOLEAN
Provider name: enableOnpremGcsTransferLogs
Description: For PosixFilesystem transfers, enables file system transfer logs instead of, or in addition to, Cloud Logging. This option ignores [LoggableAction] and [LoggableActionState]. If these are set, Cloud Logging will also be enabled for this transfer.
log_action_states
Type: UNORDERED_LIST_STRING
Provider name: logActionStates
Description: States in which log_actions
are logged. If empty, no logs are generated.
log_actions
Type: UNORDERED_LIST_STRING
Provider name: logActions
Description: Specifies the actions to be logged. If empty, no logs are generated.
name
Type: STRING
Provider name: name
Description: A unique name (within the transfer project) assigned when the job is created. If this field is empty in a CreateTransferJobRequest, Storage Transfer Service assigns a unique name. Otherwise, the specified name is used as the unique name for this job. If the specified name is in use by a job, the creation request fails with an ALREADY_EXISTS error. This name must start with "transferJobs/"
prefix and end with a letter or a number, and should be no more than 128 characters. For transfers involving PosixFilesystem, this name must start with transferJobs/OPI
specifically. For all other transfer types, this name must not start with transferJobs/OPI
. Non-PosixFilesystem example: "transferJobs/^(?!OPI)[A-Za-z0-9-._~]*[A-Za-z0-9]$"
PosixFilesystem example: "transferJobs/OPI^[A-Za-z0-9-._~]*[A-Za-z0-9]$"
Applications must not rely on the enforcement of naming requirements involving OPI. Invalid job names fail with an INVALID_ARGUMENT error.
notification_config
Type: STRUCT
Provider name: notificationConfig
Description: Notification configuration.
event_types
Type: UNORDERED_LIST_STRING
Provider name: eventTypes
Description: Event types for which a notification is desired. If empty, send notifications for all event types.
payload_format
Type: STRING
Provider name: payloadFormat
Description: Required. The desired format of the notification message payloads.
Possible values:
PAYLOAD_FORMAT_UNSPECIFIED
- Illegal value, to avoid allowing a default.
NONE
- No payload is included with the notification.
JSON
- TransferOperation
is formatted as a JSON response, in application/json.
pubsub_topic
Type: STRING
Provider name: pubsubTopic
Description: Required. The Topic.name
of the Pub/Sub topic to which to publish notifications. Must be of the format: projects/{project}/topics/{topic}
. Not matching this format results in an INVALID_ARGUMENT error.
organization_id
Type: STRING
parent
Type: STRING
project_id
Type: STRING
project_number
Type: STRING
replication_spec
Type: STRUCT
Provider name: replicationSpec
Description: Replication specification.
gcs_data_sink
Type: STRUCT
Provider name: gcsDataSink
Description: The Cloud Storage bucket to which to replicate objects.
bucket_name
Type: STRING
Provider name: bucketName
Description: Required. Cloud Storage bucket name. Must meet Bucket Name Requirements.
managed_folder_transfer_enabled
Type: BOOLEAN
Provider name: managedFolderTransferEnabled
Description: Preview. Enables the transfer of managed folders between Cloud Storage buckets. Set this option on the gcs_data_source. If set to true: - Managed folders in the source bucket are transferred to the destination bucket. - Managed folders in the destination bucket are overwritten. Other OVERWRITE options are not supported. See Transfer Cloud Storage managed folders.
path
Type: STRING
Provider name: path
Description: Root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’. The root path value must meet Object Name Requirements.
gcs_data_source
Type: STRUCT
Provider name: gcsDataSource
Description: The Cloud Storage bucket from which to replicate objects.
bucket_name
Type: STRING
Provider name: bucketName
Description: Required. Cloud Storage bucket name. Must meet Bucket Name Requirements.
managed_folder_transfer_enabled
Type: BOOLEAN
Provider name: managedFolderTransferEnabled
Description: Preview. Enables the transfer of managed folders between Cloud Storage buckets. Set this option on the gcs_data_source. If set to true: - Managed folders in the source bucket are transferred to the destination bucket. - Managed folders in the destination bucket are overwritten. Other OVERWRITE options are not supported. See Transfer Cloud Storage managed folders.
path
Type: STRING
Provider name: path
Description: Root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’. The root path value must meet Object Name Requirements.
object_conditions
Type: STRUCT
Provider name: objectConditions
Description: Object conditions that determine which objects are transferred. For replication jobs, only include_prefixes
and exclude_prefixes
are supported.
exclude_prefixes
Type: UNORDERED_LIST_STRING
Provider name: excludePrefixes
Description: If you specify exclude_prefixes
, Storage Transfer Service uses the items in the exclude_prefixes
array to determine which objects to exclude from a transfer. Objects must not start with one of the matching exclude_prefixes
for inclusion in a transfer. The following are requirements of exclude_prefixes
: * Each exclude-prefix can contain any sequence of Unicode characters, to a max length of 1024 bytes when UTF8-encoded, and must not contain Carriage Return or Line Feed characters. Wildcard matching and regular expression matching are not supported. * Each exclude-prefix must omit the leading slash. For example, to exclude the object s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the exclude-prefix as logs/y=2015/requests.gz
. * None of the exclude-prefix values can be empty, if specified. * Each exclude-prefix must exclude a distinct portion of the object namespace. No exclude-prefix may be a prefix of another exclude-prefix. * If include_prefixes is specified, then each exclude-prefix must start with the value of a path explicitly included by include_prefixes
. The max size of exclude_prefixes
is 1000. For more information, see Filtering objects from transfers.
include_prefixes
Type: UNORDERED_LIST_STRING
Provider name: includePrefixes
Description: If you specify include_prefixes
, Storage Transfer Service uses the items in the include_prefixes
array to determine which objects to include in a transfer. Objects must start with one of the matching include_prefixes
for inclusion in the transfer. If exclude_prefixes is specified, objects must not start with any of the exclude_prefixes
specified for inclusion in the transfer. The following are requirements of include_prefixes
: * Each include-prefix can contain any sequence of Unicode characters, to a max length of 1024 bytes when UTF8-encoded, and must not contain Carriage Return or Line Feed characters. Wildcard matching and regular expression matching are not supported. * Each include-prefix must omit the leading slash. For example, to include the object s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the include-prefix as logs/y=2015/requests.gz
. * None of the include-prefix values can be empty, if specified. * Each include-prefix must include a distinct portion of the object namespace. No include-prefix may be a prefix of another include-prefix. The max size of include_prefixes
is 1000. For more information, see Filtering objects from transfers.
last_modified_before
Type: TIMESTAMP
Provider name: lastModifiedBefore
Description: If specified, only objects with a “last modification time” before this timestamp and objects that don’t have a “last modification time” are transferred.
last_modified_since
Type: TIMESTAMP
Provider name: lastModifiedSince
Description: If specified, only objects with a “last modification time” on or after this timestamp and objects that don’t have a “last modification time” are transferred. The last_modified_since
and last_modified_before
fields can be used together for chunked data processing. For example, consider a script that processes each day’s worth of data at a time. For that you’d set each of the fields as follows: * last_modified_since
to the start of the day * last_modified_before
to the end of the day
max_time_elapsed_since_last_modification
Type: STRING
Provider name: maxTimeElapsedSinceLastModification
Description: Ensures that objects are not transferred if a specific maximum time has elapsed since the “last modification time”. When a TransferOperation begins, objects with a “last modification time” are transferred only if the elapsed time between the start_time of the TransferOperation
and the “last modification time” of the object is less than the value of max_time_elapsed_since_last_modification`. Objects that do not have a “last modification time” are also transferred.
min_time_elapsed_since_last_modification
Type: STRING
Provider name: minTimeElapsedSinceLastModification
Description: Ensures that objects are not transferred until a specific minimum time has elapsed after the “last modification time”. When a TransferOperation begins, objects with a “last modification time” are transferred only if the elapsed time between the start_time of the TransferOperation
and the “last modification time” of the object is equal to or greater than the value of min_time_elapsed_since_last_modification`. Objects that do not have a “last modification time” are also transferred.
transfer_options
Type: STRUCT
Provider name: transferOptions
Description: Specifies the metadata options to be applied during replication. Delete options are not supported. If a delete option is specified, the request fails with an INVALID_ARGUMENT error.
delete_objects_from_source_after_transfer
Type: BOOLEAN
Provider name: deleteObjectsFromSourceAfterTransfer
Description: Whether objects should be deleted from the source after they are transferred to the sink. Note: This option and delete_objects_unique_in_sink are mutually exclusive.
delete_objects_unique_in_sink
Type: BOOLEAN
Provider name: deleteObjectsUniqueInSink
Description: Whether objects that exist only in the sink should be deleted. Note: This option and delete_objects_from_source_after_transfer are mutually exclusive.
metadata_options
Type: STRUCT
Provider name: metadataOptions
Description: Represents the selected metadata options for a transfer job.
acl
Type: STRING
Provider name: acl
Description: Specifies how each object’s ACLs should be preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as ACL_DESTINATION_BUCKET_DEFAULT.
Possible values:
ACL_UNSPECIFIED
- ACL behavior is unspecified.
ACL_DESTINATION_BUCKET_DEFAULT
- Use the destination bucket’s default object ACLS, if applicable.
ACL_PRESERVE
- Preserve the object’s original ACLs. This requires the service account to have storage.objects.getIamPolicy
permission for the source object. Uniform bucket-level access must not be enabled on either the source or destination buckets.
gid
Type: STRING
Provider name: gid
Description: Specifies how each file’s POSIX group ID (GID) attribute should be handled by the transfer. By default, GID is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
GID_UNSPECIFIED
- GID behavior is unspecified.
GID_SKIP
- Do not preserve GID during a transfer job.
GID_NUMBER
- Preserve GID during a transfer job.
kms_key
Type: STRING
Provider name: kmsKey
Description: Specifies how each object’s Cloud KMS customer-managed encryption key (CMEK) is preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as KMS_KEY_DESTINATION_BUCKET_DEFAULT.
Possible values:
KMS_KEY_UNSPECIFIED
- KmsKey behavior is unspecified.
KMS_KEY_DESTINATION_BUCKET_DEFAULT
- Use the destination bucket’s default encryption settings.
KMS_KEY_PRESERVE
- Preserve the object’s original Cloud KMS customer-managed encryption key (CMEK) if present. Objects that do not use a Cloud KMS encryption key will be encrypted using the destination bucket’s encryption settings.
mode
Type: STRING
Provider name: mode
Description: Specifies how each file’s mode attribute should be handled by the transfer. By default, mode is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
MODE_UNSPECIFIED
- Mode behavior is unspecified.
MODE_SKIP
- Do not preserve mode during a transfer job.
MODE_PRESERVE
- Preserve mode during a transfer job.
storage_class
Type: STRING
Provider name: storageClass
Description: Specifies the storage class to set on objects being transferred to Google Cloud Storage buckets. If unspecified, the default behavior is the same as STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT.
Possible values:
STORAGE_CLASS_UNSPECIFIED
- Storage class behavior is unspecified.
STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT
- Use the destination bucket’s default storage class.
STORAGE_CLASS_PRESERVE
- Preserve the object’s original storage class. This is only supported for transfers from Google Cloud Storage buckets. REGIONAL and MULTI_REGIONAL storage classes will be mapped to STANDARD to ensure they can be written to the destination bucket.
STORAGE_CLASS_STANDARD
- Set the storage class to STANDARD.
STORAGE_CLASS_NEARLINE
- Set the storage class to NEARLINE.
STORAGE_CLASS_COLDLINE
- Set the storage class to COLDLINE.
STORAGE_CLASS_ARCHIVE
- Set the storage class to ARCHIVE.
symlink
Type: STRING
Provider name: symlink
Description: Specifies how symlinks should be handled by the transfer. By default, symlinks are not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
SYMLINK_UNSPECIFIED
- Symlink behavior is unspecified.
SYMLINK_SKIP
- Do not preserve symlinks during a transfer job.
SYMLINK_PRESERVE
- Preserve symlinks during a transfer job.
temporary_hold
Type: STRING
Provider name: temporaryHold
Description: Specifies how each object’s temporary hold status should be preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as TEMPORARY_HOLD_PRESERVE.
Possible values:
TEMPORARY_HOLD_UNSPECIFIED
- Temporary hold behavior is unspecified.
TEMPORARY_HOLD_SKIP
- Do not set a temporary hold on the destination object.
TEMPORARY_HOLD_PRESERVE
- Preserve the object’s original temporary hold status.
time_created
Type: STRING
Provider name: timeCreated
Description: Specifies how each object’s timeCreated
metadata is preserved for transfers. If unspecified, the default behavior is the same as TIME_CREATED_SKIP. This behavior is supported for transfers to Cloud Storage buckets from Cloud Storage, Amazon S3, S3-compatible storage, and Azure sources.
Possible values:
TIME_CREATED_UNSPECIFIED
- TimeCreated behavior is unspecified.
TIME_CREATED_SKIP
- Do not preserve the timeCreated
metadata from the source object.
TIME_CREATED_PRESERVE_AS_CUSTOM_TIME
- Preserves the source object’s timeCreated
or lastModified
metadata in the customTime
field in the destination object. Note that any value stored in the source object’s customTime
field will not be propagated to the destination object.
uid
Type: STRING
Provider name: uid
Description: Specifies how each file’s POSIX user ID (UID) attribute should be handled by the transfer. By default, UID is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
UID_UNSPECIFIED
- UID behavior is unspecified.
UID_SKIP
- Do not preserve UID during a transfer job.
UID_NUMBER
- Preserve UID during a transfer job.
overwrite_objects_already_existing_in_sink
Type: BOOLEAN
Provider name: overwriteObjectsAlreadyExistingInSink
Description: When to overwrite objects that already exist in the sink. The default is that only objects that are different from the source are overwritten. If true, all objects in the sink whose name matches an object in the source are overwritten with the source object.
overwrite_when
Type: STRING
Provider name: overwriteWhen
Description: When to overwrite objects that already exist in the sink. If not set, overwrite behavior is determined by overwrite_objects_already_existing_in_sink.
Possible values:
OVERWRITE_WHEN_UNSPECIFIED
- Overwrite behavior is unspecified.
DIFFERENT
- Overwrites destination objects with the source objects, only if the objects have the same name but different HTTP ETags or checksum values.
NEVER
- Never overwrites a destination object if a source object has the same name. In this case, the source object is not transferred.
ALWAYS
- Always overwrite the destination object with the source object, even if the HTTP Etags or checksum values are the same.
resource_name
Type: STRING
schedule
Type: STRUCT
Provider name: schedule
Description: Specifies schedule for the transfer job. This is an optional field. When the field is not set, the job never executes a transfer, unless you invoke RunTransferJob or update the job to have a non-empty schedule.
end_time_of_day
Type: STRUCT
Provider name: endTimeOfDay
Description: The time in UTC that no further transfer operations are scheduled. Combined with schedule_end_date, end_time_of_day
specifies the end date and time for starting new transfer operations. This field must be greater than or equal to the timestamp corresponding to the combination of schedule_start_date and start_time_of_day, and is subject to the following: * If end_time_of_day
is not set and schedule_end_date
is set, then a default value of 23:59:59
is used for end_time_of_day
. * If end_time_of_day
is set and schedule_end_date
is not set, then INVALID_ARGUMENT is returned.
hours
Type: INT32
Provider name: hours
Description: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value “24:00:00” for scenarios like business closing time.
minutes
Type: INT32
Provider name: minutes
Description: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
nanos
Type: INT32
Provider name: nanos
Description: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
seconds
Type: INT32
Provider name: seconds
Description: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
repeat_interval
Type: STRING
Provider name: repeatInterval
Description: Interval between the start of each scheduled TransferOperation. If unspecified, the default value is 24 hours. This value may not be less than 1 hour.
schedule_end_date
Type: STRUCT
Provider name: scheduleEndDate
Description: The last day a transfer runs. Date boundaries are determined relative to UTC time. A job runs once per 24 hours within the following guidelines: * If schedule_end_date
and schedule_start_date are the same and in the future relative to UTC, the transfer is executed only one time. * If schedule_end_date
is later than schedule_start_date
and schedule_end_date
is in the future relative to UTC, the job runs each day at start_time_of_day through schedule_end_date
.
day
Type: INT32
Provider name: day
Description: Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn’t significant.
month
Type: INT32
Provider name: month
Description: Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
year
Type: INT32
Provider name: year
Description: Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
schedule_start_date
Type: STRUCT
Provider name: scheduleStartDate
Description: Required. The start date of a transfer. Date boundaries are determined relative to UTC time. If schedule_start_date
and start_time_of_day are in the past relative to the job’s creation time, the transfer starts the day after you schedule the transfer request. Note: When starting jobs at or near midnight UTC it is possible that a job starts later than expected. For example, if you send an outbound request on June 1 one millisecond prior to midnight UTC and the Storage Transfer Service server receives the request on June 2, then it creates a TransferJob with schedule_start_date
set to June 2 and a start_time_of_day
set to midnight UTC. The first scheduled TransferOperation takes place on June 3 at midnight UTC.
day
Type: INT32
Provider name: day
Description: Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn’t significant.
month
Type: INT32
Provider name: month
Description: Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
year
Type: INT32
Provider name: year
Description: Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
start_time_of_day
Type: STRUCT
Provider name: startTimeOfDay
Description: The time in UTC that a transfer job is scheduled to run. Transfers may start later than this time. If start_time_of_day
is not specified: * One-time transfers run immediately. * Recurring transfers run immediately, and each day at midnight UTC, through schedule_end_date. If start_time_of_day
is specified: * One-time transfers run at the specified time. * Recurring transfers run at the specified time each day, through schedule_end_date
.
hours
Type: INT32
Provider name: hours
Description: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value “24:00:00” for scenarios like business closing time.
minutes
Type: INT32
Provider name: minutes
Description: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
nanos
Type: INT32
Provider name: nanos
Description: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
seconds
Type: INT32
Provider name: seconds
Description: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
service_account
Type: STRING
Provider name: serviceAccount
Description: Optional. The user-managed service account to which to delegate service agent permissions. You can grant Cloud Storage bucket permissions to this service account instead of to the Transfer Service service agent. Format is projects/-/serviceAccounts/ACCOUNT_EMAIL_OR_UNIQUEID
Either the service account email (SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
) or the unique ID (123456789012345678901
) are accepted in the string. The -
wildcard character is required; replacing it with a project ID is invalid. See https://cloud.google.com//storage-transfer/docs/delegate-service-agent-permissions for required permissions.
Type: UNORDERED_LIST_STRING
transfer_spec
Type: STRUCT
Provider name: transferSpec
Description: Transfer specification.
aws_s3_compatible_data_source
Type: STRUCT
Provider name: awsS3CompatibleDataSource
Description: Optional. An AWS S3 compatible data source.
bucket_name
Type: STRING
Provider name: bucketName
Description: Required. Specifies the name of the bucket.
endpoint
Type: STRING
Provider name: endpoint
Description: Required. Specifies the endpoint of the storage service.
path
Type: STRING
Provider name: path
Description: Specifies the root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’.
region
Type: STRING
Provider name: region
Description: Specifies the region to sign requests with. This can be left blank if requests should be signed with an empty region.
s3_metadata
Type: STRUCT
Provider name: s3Metadata
Description: A S3 compatible metadata.
auth_method
Type: STRING
Provider name: authMethod
Description: Specifies the authentication and authorization method used by the storage service. When not specified, Transfer Service will attempt to determine right auth method to use.
Possible values:
AUTH_METHOD_UNSPECIFIED
- AuthMethod is not specified.
AUTH_METHOD_AWS_SIGNATURE_V4
- Auth requests with AWS SigV4.
AUTH_METHOD_AWS_SIGNATURE_V2
- Auth requests with AWS SigV2.
list_api
Type: STRING
Provider name: listApi
Description: The Listing API to use for discovering objects. When not specified, Transfer Service will attempt to determine the right API to use.
Possible values:
LIST_API_UNSPECIFIED
- ListApi is not specified.
LIST_OBJECTS_V2
- Perform listing using ListObjectsV2 API.
LIST_OBJECTS
- Legacy ListObjects API.
protocol
Type: STRING
Provider name: protocol
Description: Specifies the network protocol of the agent. When not specified, the default value of NetworkProtocol NETWORK_PROTOCOL_HTTPS is used.
Possible values:
NETWORK_PROTOCOL_UNSPECIFIED
- NetworkProtocol is not specified.
NETWORK_PROTOCOL_HTTPS
- Perform requests using HTTPS.
NETWORK_PROTOCOL_HTTP
- Not recommended: This sends data in clear-text. This is only appropriate within a closed network or for publicly available data. Perform requests using HTTP.
request_model
Type: STRING
Provider name: requestModel
Description: Specifies the API request model used to call the storage service. When not specified, the default value of RequestModel REQUEST_MODEL_VIRTUAL_HOSTED_STYLE is used.
Possible values:
aws_s3_data_source
Type: STRUCT
Provider name: awsS3DataSource
Description: Optional. An AWS S3 data source.
aws_access_key
Type: STRUCT
Provider name: awsAccessKey
Description: Input only. AWS access key used to sign the API requests to the AWS S3 bucket. Permissions on the bucket must be granted to the access ID of the AWS access key. For information on our data retention policy for user credentials, see User credentials.
access_key_id
Type: STRING
Provider name: accessKeyId
Description: Required. AWS access key ID.
secret_access_key
Type: STRING
Provider name: secretAccessKey
Description: Required. AWS secret access key. This field is not returned in RPC responses.
bucket_name
Type: STRING
Provider name: bucketName
Description: Required. S3 Bucket name (see Creating a bucket).
cloudfront_domain
Type: STRING
Provider name: cloudfrontDomain
Description: Optional. The CloudFront distribution domain name pointing to this bucket, to use when fetching. See Transfer from S3 via CloudFront for more information. Format: https://{id}.cloudfront.net
or any valid custom domain. Must begin with https://
.
credentials_secret
Type: STRING
Provider name: credentialsSecret
Description: Optional. The Resource name of a secret in Secret Manager. AWS credentials must be stored in Secret Manager in JSON format: { “access_key_id”: “ACCESS_KEY_ID”, “secret_access_key”: “SECRET_ACCESS_KEY” } GoogleServiceAccount must be granted roles/secretmanager.secretAccessor
for the resource. See [Configure access to a source: Amazon S3] (https://cloud.google.com/storage-transfer/docs/source-amazon-s3#secret_manager) for more information. If credentials_secret
is specified, do not specify role_arn or aws_access_key. Format: projects/{project_number}/secrets/{secret_name}
managed_private_network
Type: BOOLEAN
Provider name: managedPrivateNetwork
Description: Egress bytes over a Google-managed private network. This network is shared between other users of Storage Transfer Service.
path
Type: STRING
Provider name: path
Description: Root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’.
role_arn
Type: STRING
Provider name: roleArn
Description: The Amazon Resource Name (ARN) of the role to support temporary credentials via AssumeRoleWithWebIdentity
. For more information about ARNs, see IAM ARNs. When a role ARN is provided, Transfer Service fetches temporary credentials for the session using a AssumeRoleWithWebIdentity
call for the provided role using the GoogleServiceAccount for this project.
azure_blob_storage_data_source
Type: STRUCT
Provider name: azureBlobStorageDataSource
Description: Optional. An Azure Blob Storage data source.
azure_credentials
Type: STRUCT
Provider name: azureCredentials
Description: Required. Input only. Credentials used to authenticate API requests to Azure. For information on our data retention policy for user credentials, see User credentials.
container
Type: STRING
Provider name: container
Description: Required. The container to transfer from the Azure Storage account.
credentials_secret
Type: STRING
Provider name: credentialsSecret
Description: Optional. The Resource name of a secret in Secret Manager. The Azure SAS token must be stored in Secret Manager in JSON format: { “sas_token” : “SAS_TOKEN” } GoogleServiceAccount must be granted roles/secretmanager.secretAccessor
for the resource. See [Configure access to a source: Microsoft Azure Blob Storage] (https://cloud.google.com/storage-transfer/docs/source-microsoft-azure#secret_manager) for more information. If credentials_secret
is specified, do not specify azure_credentials. Format: projects/{project_number}/secrets/{secret_name}
federated_identity_config
Type: STRUCT
Provider name: federatedIdentityConfig
Description: Optional. Federated identity config of a user registered Azure application. If federated_identity_config
is specified, do not specify azure_credentials or credentials_secret.
client_id
Type: STRING
Provider name: clientId
Description: Required. The client (application) ID of the application with federated credentials.
tenant_id
Type: STRING
Provider name: tenantId
Description: Required. The tenant (directory) ID of the application with federated credentials.
path
Type: STRING
Provider name: path
Description: Root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’.
storage_account
Type: STRING
Provider name: storageAccount
Description: Required. The name of the Azure Storage account.
gcs_data_sink
Type: STRUCT
Provider name: gcsDataSink
Description: Optional. A Cloud Storage data sink.
bucket_name
Type: STRING
Provider name: bucketName
Description: Required. Cloud Storage bucket name. Must meet Bucket Name Requirements.
managed_folder_transfer_enabled
Type: BOOLEAN
Provider name: managedFolderTransferEnabled
Description: Preview. Enables the transfer of managed folders between Cloud Storage buckets. Set this option on the gcs_data_source. If set to true: - Managed folders in the source bucket are transferred to the destination bucket. - Managed folders in the destination bucket are overwritten. Other OVERWRITE options are not supported. See Transfer Cloud Storage managed folders.
path
Type: STRING
Provider name: path
Description: Root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’. The root path value must meet Object Name Requirements.
gcs_data_source
Type: STRUCT
Provider name: gcsDataSource
Description: Optional. A Cloud Storage data source.
bucket_name
Type: STRING
Provider name: bucketName
Description: Required. Cloud Storage bucket name. Must meet Bucket Name Requirements.
managed_folder_transfer_enabled
Type: BOOLEAN
Provider name: managedFolderTransferEnabled
Description: Preview. Enables the transfer of managed folders between Cloud Storage buckets. Set this option on the gcs_data_source. If set to true: - Managed folders in the source bucket are transferred to the destination bucket. - Managed folders in the destination bucket are overwritten. Other OVERWRITE options are not supported. See Transfer Cloud Storage managed folders.
path
Type: STRING
Provider name: path
Description: Root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’. The root path value must meet Object Name Requirements.
gcs_intermediate_data_location
Type: STRUCT
Provider name: gcsIntermediateDataLocation
Description: For transfers between file systems, specifies a Cloud Storage bucket to be used as an intermediate location through which to transfer data. See Transfer data between file systems for more information.
bucket_name
Type: STRING
Provider name: bucketName
Description: Required. Cloud Storage bucket name. Must meet Bucket Name Requirements.
managed_folder_transfer_enabled
Type: BOOLEAN
Provider name: managedFolderTransferEnabled
Description: Preview. Enables the transfer of managed folders between Cloud Storage buckets. Set this option on the gcs_data_source. If set to true: - Managed folders in the source bucket are transferred to the destination bucket. - Managed folders in the destination bucket are overwritten. Other OVERWRITE options are not supported. See Transfer Cloud Storage managed folders.
path
Type: STRING
Provider name: path
Description: Root path to transfer objects. Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’. The root path value must meet Object Name Requirements.
hdfs_data_source
Type: STRUCT
Provider name: hdfsDataSource
Description: Optional. An HDFS cluster data source.
path
Type: STRING
Provider name: path
Description: Root path to transfer files.
http_data_source
Type: STRUCT
Provider name: httpDataSource
Description: Optional. An HTTP URL data source.
list_url
Type: STRING
Provider name: listUrl
Description: Required. The URL that points to the file that stores the object list entries. This file must allow public access. The URL is either an HTTP/HTTPS address (e.g. https://example.com/urllist.tsv
) or a Cloud Storage path (e.g. gs://my-bucket/urllist.tsv
).
object_conditions
Type: STRUCT
Provider name: objectConditions
Description: Only objects that satisfy these object conditions are included in the set of data source and data sink objects. Object conditions based on objects’ “last modification time” do not exclude objects in a data sink.
exclude_prefixes
Type: UNORDERED_LIST_STRING
Provider name: excludePrefixes
Description: If you specify exclude_prefixes
, Storage Transfer Service uses the items in the exclude_prefixes
array to determine which objects to exclude from a transfer. Objects must not start with one of the matching exclude_prefixes
for inclusion in a transfer. The following are requirements of exclude_prefixes
: * Each exclude-prefix can contain any sequence of Unicode characters, to a max length of 1024 bytes when UTF8-encoded, and must not contain Carriage Return or Line Feed characters. Wildcard matching and regular expression matching are not supported. * Each exclude-prefix must omit the leading slash. For example, to exclude the object s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the exclude-prefix as logs/y=2015/requests.gz
. * None of the exclude-prefix values can be empty, if specified. * Each exclude-prefix must exclude a distinct portion of the object namespace. No exclude-prefix may be a prefix of another exclude-prefix. * If include_prefixes is specified, then each exclude-prefix must start with the value of a path explicitly included by include_prefixes
. The max size of exclude_prefixes
is 1000. For more information, see Filtering objects from transfers.
include_prefixes
Type: UNORDERED_LIST_STRING
Provider name: includePrefixes
Description: If you specify include_prefixes
, Storage Transfer Service uses the items in the include_prefixes
array to determine which objects to include in a transfer. Objects must start with one of the matching include_prefixes
for inclusion in the transfer. If exclude_prefixes is specified, objects must not start with any of the exclude_prefixes
specified for inclusion in the transfer. The following are requirements of include_prefixes
: * Each include-prefix can contain any sequence of Unicode characters, to a max length of 1024 bytes when UTF8-encoded, and must not contain Carriage Return or Line Feed characters. Wildcard matching and regular expression matching are not supported. * Each include-prefix must omit the leading slash. For example, to include the object s3://my-aws-bucket/logs/y=2015/requests.gz
, specify the include-prefix as logs/y=2015/requests.gz
. * None of the include-prefix values can be empty, if specified. * Each include-prefix must include a distinct portion of the object namespace. No include-prefix may be a prefix of another include-prefix. The max size of include_prefixes
is 1000. For more information, see Filtering objects from transfers.
last_modified_before
Type: TIMESTAMP
Provider name: lastModifiedBefore
Description: If specified, only objects with a “last modification time” before this timestamp and objects that don’t have a “last modification time” are transferred.
last_modified_since
Type: TIMESTAMP
Provider name: lastModifiedSince
Description: If specified, only objects with a “last modification time” on or after this timestamp and objects that don’t have a “last modification time” are transferred. The last_modified_since
and last_modified_before
fields can be used together for chunked data processing. For example, consider a script that processes each day’s worth of data at a time. For that you’d set each of the fields as follows: * last_modified_since
to the start of the day * last_modified_before
to the end of the day
max_time_elapsed_since_last_modification
Type: STRING
Provider name: maxTimeElapsedSinceLastModification
Description: Ensures that objects are not transferred if a specific maximum time has elapsed since the “last modification time”. When a TransferOperation begins, objects with a “last modification time” are transferred only if the elapsed time between the start_time of the TransferOperation
and the “last modification time” of the object is less than the value of max_time_elapsed_since_last_modification`. Objects that do not have a “last modification time” are also transferred.
min_time_elapsed_since_last_modification
Type: STRING
Provider name: minTimeElapsedSinceLastModification
Description: Ensures that objects are not transferred until a specific minimum time has elapsed after the “last modification time”. When a TransferOperation begins, objects with a “last modification time” are transferred only if the elapsed time between the start_time of the TransferOperation
and the “last modification time” of the object is equal to or greater than the value of min_time_elapsed_since_last_modification`. Objects that do not have a “last modification time” are also transferred.
posix_data_sink
Type: STRUCT
Provider name: posixDataSink
Description: Optional. A POSIX Filesystem data sink.
root_directory
Type: STRING
Provider name: rootDirectory
Description: Root directory path to the filesystem.
posix_data_source
Type: STRUCT
Provider name: posixDataSource
Description: Optional. A POSIX Filesystem data source.
root_directory
Type: STRING
Provider name: rootDirectory
Description: Root directory path to the filesystem.
sink_agent_pool_name
Type: STRING
Provider name: sinkAgentPoolName
Description: Specifies the agent pool name associated with the posix data sink. When unspecified, the default name is used.
source_agent_pool_name
Type: STRING
Provider name: sourceAgentPoolName
Description: Specifies the agent pool name associated with the posix data source. When unspecified, the default name is used.
transfer_manifest
Type: STRUCT
Provider name: transferManifest
Description: A manifest file provides a list of objects to be transferred from the data source. This field points to the location of the manifest file. Otherwise, the entire source bucket is used. ObjectConditions still apply.
location
Type: STRING
Provider name: location
Description: Specifies the path to the manifest in Cloud Storage. The Google-managed service account for the transfer must have storage.objects.get
permission for this object. An example path is gs://bucket_name/path/manifest.csv
.
transfer_options
Type: STRUCT
Provider name: transferOptions
Description: If the option delete_objects_unique_in_sink is true
and time-based object conditions such as ’last modification time’ are specified, the request fails with an INVALID_ARGUMENT error.
delete_objects_from_source_after_transfer
Type: BOOLEAN
Provider name: deleteObjectsFromSourceAfterTransfer
Description: Whether objects should be deleted from the source after they are transferred to the sink. Note: This option and delete_objects_unique_in_sink are mutually exclusive.
delete_objects_unique_in_sink
Type: BOOLEAN
Provider name: deleteObjectsUniqueInSink
Description: Whether objects that exist only in the sink should be deleted. Note: This option and delete_objects_from_source_after_transfer are mutually exclusive.
metadata_options
Type: STRUCT
Provider name: metadataOptions
Description: Represents the selected metadata options for a transfer job.
acl
Type: STRING
Provider name: acl
Description: Specifies how each object’s ACLs should be preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as ACL_DESTINATION_BUCKET_DEFAULT.
Possible values:
ACL_UNSPECIFIED
- ACL behavior is unspecified.
ACL_DESTINATION_BUCKET_DEFAULT
- Use the destination bucket’s default object ACLS, if applicable.
ACL_PRESERVE
- Preserve the object’s original ACLs. This requires the service account to have storage.objects.getIamPolicy
permission for the source object. Uniform bucket-level access must not be enabled on either the source or destination buckets.
gid
Type: STRING
Provider name: gid
Description: Specifies how each file’s POSIX group ID (GID) attribute should be handled by the transfer. By default, GID is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
GID_UNSPECIFIED
- GID behavior is unspecified.
GID_SKIP
- Do not preserve GID during a transfer job.
GID_NUMBER
- Preserve GID during a transfer job.
kms_key
Type: STRING
Provider name: kmsKey
Description: Specifies how each object’s Cloud KMS customer-managed encryption key (CMEK) is preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as KMS_KEY_DESTINATION_BUCKET_DEFAULT.
Possible values:
KMS_KEY_UNSPECIFIED
- KmsKey behavior is unspecified.
KMS_KEY_DESTINATION_BUCKET_DEFAULT
- Use the destination bucket’s default encryption settings.
KMS_KEY_PRESERVE
- Preserve the object’s original Cloud KMS customer-managed encryption key (CMEK) if present. Objects that do not use a Cloud KMS encryption key will be encrypted using the destination bucket’s encryption settings.
mode
Type: STRING
Provider name: mode
Description: Specifies how each file’s mode attribute should be handled by the transfer. By default, mode is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
MODE_UNSPECIFIED
- Mode behavior is unspecified.
MODE_SKIP
- Do not preserve mode during a transfer job.
MODE_PRESERVE
- Preserve mode during a transfer job.
storage_class
Type: STRING
Provider name: storageClass
Description: Specifies the storage class to set on objects being transferred to Google Cloud Storage buckets. If unspecified, the default behavior is the same as STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT.
Possible values:
STORAGE_CLASS_UNSPECIFIED
- Storage class behavior is unspecified.
STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT
- Use the destination bucket’s default storage class.
STORAGE_CLASS_PRESERVE
- Preserve the object’s original storage class. This is only supported for transfers from Google Cloud Storage buckets. REGIONAL and MULTI_REGIONAL storage classes will be mapped to STANDARD to ensure they can be written to the destination bucket.
STORAGE_CLASS_STANDARD
- Set the storage class to STANDARD.
STORAGE_CLASS_NEARLINE
- Set the storage class to NEARLINE.
STORAGE_CLASS_COLDLINE
- Set the storage class to COLDLINE.
STORAGE_CLASS_ARCHIVE
- Set the storage class to ARCHIVE.
symlink
Type: STRING
Provider name: symlink
Description: Specifies how symlinks should be handled by the transfer. By default, symlinks are not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
SYMLINK_UNSPECIFIED
- Symlink behavior is unspecified.
SYMLINK_SKIP
- Do not preserve symlinks during a transfer job.
SYMLINK_PRESERVE
- Preserve symlinks during a transfer job.
temporary_hold
Type: STRING
Provider name: temporaryHold
Description: Specifies how each object’s temporary hold status should be preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as TEMPORARY_HOLD_PRESERVE.
Possible values:
TEMPORARY_HOLD_UNSPECIFIED
- Temporary hold behavior is unspecified.
TEMPORARY_HOLD_SKIP
- Do not set a temporary hold on the destination object.
TEMPORARY_HOLD_PRESERVE
- Preserve the object’s original temporary hold status.
time_created
Type: STRING
Provider name: timeCreated
Description: Specifies how each object’s timeCreated
metadata is preserved for transfers. If unspecified, the default behavior is the same as TIME_CREATED_SKIP. This behavior is supported for transfers to Cloud Storage buckets from Cloud Storage, Amazon S3, S3-compatible storage, and Azure sources.
Possible values:
TIME_CREATED_UNSPECIFIED
- TimeCreated behavior is unspecified.
TIME_CREATED_SKIP
- Do not preserve the timeCreated
metadata from the source object.
TIME_CREATED_PRESERVE_AS_CUSTOM_TIME
- Preserves the source object’s timeCreated
or lastModified
metadata in the customTime
field in the destination object. Note that any value stored in the source object’s customTime
field will not be propagated to the destination object.
uid
Type: STRING
Provider name: uid
Description: Specifies how each file’s POSIX user ID (UID) attribute should be handled by the transfer. By default, UID is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
Possible values:
UID_UNSPECIFIED
- UID behavior is unspecified.
UID_SKIP
- Do not preserve UID during a transfer job.
UID_NUMBER
- Preserve UID during a transfer job.
overwrite_objects_already_existing_in_sink
Type: BOOLEAN
Provider name: overwriteObjectsAlreadyExistingInSink
Description: When to overwrite objects that already exist in the sink. The default is that only objects that are different from the source are overwritten. If true, all objects in the sink whose name matches an object in the source are overwritten with the source object.
overwrite_when
Type: STRING
Provider name: overwriteWhen
Description: When to overwrite objects that already exist in the sink. If not set, overwrite behavior is determined by overwrite_objects_already_existing_in_sink.
Possible values:
OVERWRITE_WHEN_UNSPECIFIED
- Overwrite behavior is unspecified.
DIFFERENT
- Overwrites destination objects with the source objects, only if the objects have the same name but different HTTP ETags or checksum values.
NEVER
- Never overwrites a destination object if a source object has the same name. In this case, the source object is not transferred.
ALWAYS
- Always overwrite the destination object with the source object, even if the HTTP Etags or checksum values are the same.