Creates a transfer job that runs periodically.
get(jobName, projectId=None, x__xgafv=None)
Gets a transfer job.
list(pageSize=None, filter=None, pageToken=None, x__xgafv=None)
Lists transfer jobs.
list_next(previous_request, previous_response)
Retrieves the next page of results.
patch(jobName, body, x__xgafv=None)
Updates a transfer job. Updating a job's transfer spec does not affect
create(body, x__xgafv=None)
Creates a transfer job that runs periodically. Args: body: object, The request body. (required) The object takes the form of: { # This resource represents the configuration of a transfer job that runs # periodically. "transferSpec": { # Configuration for running a transfer. # Transfer specification. # Required. "objectConditions": { # Conditions that determine which objects will be transferred. # Only objects that satisfy these object conditions are included in the set # of data source and data sink objects. Object conditions based on # objects' `lastModificationTime` do not exclude objects in a data sink. "maxTimeElapsedSinceLastModification": "A String", # `maxTimeElapsedSinceLastModification` is the complement to # `minTimeElapsedSinceLastModification`. "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object # conditions must have names that start with one of the `includePrefixes` # and that do not start with any of the `excludePrefixes`. If `includePrefixes` # is not specified, all objects except those that have names starting with # one of the `excludePrefixes` must satisfy the object conditions. # # Requirements: # # * Each include-prefix and exclude-prefix can contain any sequence of # Unicode characters, of max length 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 and exclude-prefix must omit the leading slash. # For example, to include the `requests.gz` object in a transfer from # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include # prefix as `logs/y=2015/requests.gz`. # # * None of the include-prefix or the exclude-prefix values can be empty, # if specified. # # * Each include-prefix must include a distinct portion of the object # namespace, i.e., no include-prefix may be a prefix of another # include-prefix. # # * Each exclude-prefix must exclude a distinct portion of the object # namespace, i.e., no exclude-prefix may be a prefix of another # exclude-prefix. # # * If `includePrefixes` is specified, then each exclude-prefix must start # with the value of a path explicitly included by `includePrefixes`. # # The max size of `includePrefixes` is 1000. "A String", ], "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for # `includePrefixes`. # # The max size of `excludePrefixes` is 1000. "A String", ], "minTimeElapsedSinceLastModification": "A String", # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value # and `maxTimeElapsedSinceLastModification` takes the maximum possible # value of Duration. Objects that satisfy the object conditions # must either have a `lastModificationTime` greater or equal to # `NOW` - `maxTimeElapsedSinceLastModification` and less than # `NOW` - `minTimeElapsedSinceLastModification`, or not have a # `lastModificationTime`. }, "gcsDataSource": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data source. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "httpDataSource": { # An HttpData specifies a list of objects on the web to be transferred over # An HTTP URL data source. # HTTP. The information of the objects to be transferred is contained in a # file referenced by a URL. The first line in the file must be # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines # specify the information of the list of objects, one object per list entry. # Each entry has the following tab-delimited fields: # # * HTTP URL - The location of the object. # # * Length - The size of the object in bytes. # # * MD5 - The base64-encoded MD5 hash of the object. # # For an example of a valid TSV file, see # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls) # # When transferring data based on a URL list, keep the following in mind: # # * When an object located at `http(s)://hostname:port/` is transferred # to a data sink, the name of the object at the data sink is # ` / `. # # * If the specified size of an object does not match the actual size of the # object fetched, the object will not be transferred. # # * If the specified MD5 does not match the MD5 computed from the transferred # bytes, the object transfer will fail. For more information, see # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5) # # * Ensure that each URL you specify is publicly accessible. For # example, in Google Cloud Storage you can # [share an object publicly] # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get # a link to it. # # * Storage Transfer Service obeys `robots.txt` rules and requires the source # HTTP server to support `Range` requests and to return a `Content-Length` # header in each response. # # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects # to transfer. "listUrl": "A String", # The URL that points to the file that stores the object list entries. # This file must allow public access. Currently, only URLs with HTTP and # HTTPS schemes are supported. # Required. }, "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions # based on objects' `lastModificationTime` are ignored and do not exclude # objects in a data source or a data sink. # to be performed on objects in a transfer. "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed. "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are # transferred to the sink. "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted. }, "gcsDataSink": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data sink. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "awsS3DataSource": { # An AwsS3Data can be a data source, but not a data sink. # An AWS S3 data source. # In an AwsS3Data, an object's name is the S3 object's key name. "awsAccessKey": { # AWS access key (see # 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. # Required. # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)). "secretAccessKey": "A String", # AWS secret access key. This field is not returned in RPC responses. # Required. "accessKeyId": "A String", # AWS access key ID. # Required. }, "bucketName": "A String", # S3 Bucket name (see # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)). # Required. }, }, "status": "A String", # 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. "deletionTime": "A String", # This field cannot be changed by user requests. "description": "A String", # A description provided by the user for the job. Its max length is 1024 # bytes when Unicode-encoded. "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification. # Required. "scheduleStartDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The first day the recurring transfer is scheduled to run. If # `scheduleStartDate` is in the past, the transfer will run for the first # time on the following day. # Required. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, "startTimeOfDay": { # Represents a time of day. The date and time zone are either not significant # The time in UTC at which the transfer will be scheduled to start in a day. # Transfers may start later than this time. If not specified, recurring and # one-time transfers that are scheduled to run today will run immediately; # recurring transfers that are scheduled to run on a future date will start # at approximately midnight UTC on that date. Note that when configuring a # transfer with the Cloud Platform Console, the transfer's start time in a # day is specified in your local timezone. # or are specified elsewhere. An API may choose to allow leap seconds. Related # types are google.type.Date and `google.protobuf.Timestamp`. "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose # to allow the value "24:00:00" for scenarios like business closing time. "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may # allow the value 60 if it allows leap-seconds. "minutes": 42, # Minutes of hour of day. Must be from 0 to 59. }, "scheduleEndDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The last day the recurring transfer will be run. If `scheduleEndDate` # is the same as `scheduleStartDate`, the transfer will be executed only # once. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, }, "projectId": "A String", # The ID of the Google Cloud Platform Console project that owns the job. # Required. "lastModificationTime": "A String", # This field cannot be changed by user requests. "creationTime": "A String", # This field cannot be changed by user requests. "name": "A String", # A globally unique name assigned by Storage Transfer Service when the # job is created. This field should be left empty in requests to create a new # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT` # error. } x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # This resource represents the configuration of a transfer job that runs # periodically. "transferSpec": { # Configuration for running a transfer. # Transfer specification. # Required. "objectConditions": { # Conditions that determine which objects will be transferred. # Only objects that satisfy these object conditions are included in the set # of data source and data sink objects. Object conditions based on # objects' `lastModificationTime` do not exclude objects in a data sink. "maxTimeElapsedSinceLastModification": "A String", # `maxTimeElapsedSinceLastModification` is the complement to # `minTimeElapsedSinceLastModification`. "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object # conditions must have names that start with one of the `includePrefixes` # and that do not start with any of the `excludePrefixes`. If `includePrefixes` # is not specified, all objects except those that have names starting with # one of the `excludePrefixes` must satisfy the object conditions. # # Requirements: # # * Each include-prefix and exclude-prefix can contain any sequence of # Unicode characters, of max length 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 and exclude-prefix must omit the leading slash. # For example, to include the `requests.gz` object in a transfer from # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include # prefix as `logs/y=2015/requests.gz`. # # * None of the include-prefix or the exclude-prefix values can be empty, # if specified. # # * Each include-prefix must include a distinct portion of the object # namespace, i.e., no include-prefix may be a prefix of another # include-prefix. # # * Each exclude-prefix must exclude a distinct portion of the object # namespace, i.e., no exclude-prefix may be a prefix of another # exclude-prefix. # # * If `includePrefixes` is specified, then each exclude-prefix must start # with the value of a path explicitly included by `includePrefixes`. # # The max size of `includePrefixes` is 1000. "A String", ], "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for # `includePrefixes`. # # The max size of `excludePrefixes` is 1000. "A String", ], "minTimeElapsedSinceLastModification": "A String", # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value # and `maxTimeElapsedSinceLastModification` takes the maximum possible # value of Duration. Objects that satisfy the object conditions # must either have a `lastModificationTime` greater or equal to # `NOW` - `maxTimeElapsedSinceLastModification` and less than # `NOW` - `minTimeElapsedSinceLastModification`, or not have a # `lastModificationTime`. }, "gcsDataSource": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data source. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "httpDataSource": { # An HttpData specifies a list of objects on the web to be transferred over # An HTTP URL data source. # HTTP. The information of the objects to be transferred is contained in a # file referenced by a URL. The first line in the file must be # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines # specify the information of the list of objects, one object per list entry. # Each entry has the following tab-delimited fields: # # * HTTP URL - The location of the object. # # * Length - The size of the object in bytes. # # * MD5 - The base64-encoded MD5 hash of the object. # # For an example of a valid TSV file, see # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls) # # When transferring data based on a URL list, keep the following in mind: # # * When an object located at `http(s)://hostname:port/ ` is transferred # to a data sink, the name of the object at the data sink is # ` / `. # # * If the specified size of an object does not match the actual size of the # object fetched, the object will not be transferred. # # * If the specified MD5 does not match the MD5 computed from the transferred # bytes, the object transfer will fail. For more information, see # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5) # # * Ensure that each URL you specify is publicly accessible. For # example, in Google Cloud Storage you can # [share an object publicly] # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get # a link to it. # # * Storage Transfer Service obeys `robots.txt` rules and requires the source # HTTP server to support `Range` requests and to return a `Content-Length` # header in each response. # # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects # to transfer. "listUrl": "A String", # The URL that points to the file that stores the object list entries. # This file must allow public access. Currently, only URLs with HTTP and # HTTPS schemes are supported. # Required. }, "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions # based on objects' `lastModificationTime` are ignored and do not exclude # objects in a data source or a data sink. # to be performed on objects in a transfer. "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed. "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are # transferred to the sink. "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted. }, "gcsDataSink": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data sink. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "awsS3DataSource": { # An AwsS3Data can be a data source, but not a data sink. # An AWS S3 data source. # In an AwsS3Data, an object's name is the S3 object's key name. "awsAccessKey": { # AWS access key (see # 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. # Required. # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)). "secretAccessKey": "A String", # AWS secret access key. This field is not returned in RPC responses. # Required. "accessKeyId": "A String", # AWS access key ID. # Required. }, "bucketName": "A String", # S3 Bucket name (see # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)). # Required. }, }, "status": "A String", # 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. "deletionTime": "A String", # This field cannot be changed by user requests. "description": "A String", # A description provided by the user for the job. Its max length is 1024 # bytes when Unicode-encoded. "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification. # Required. "scheduleStartDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The first day the recurring transfer is scheduled to run. If # `scheduleStartDate` is in the past, the transfer will run for the first # time on the following day. # Required. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, "startTimeOfDay": { # Represents a time of day. The date and time zone are either not significant # The time in UTC at which the transfer will be scheduled to start in a day. # Transfers may start later than this time. If not specified, recurring and # one-time transfers that are scheduled to run today will run immediately; # recurring transfers that are scheduled to run on a future date will start # at approximately midnight UTC on that date. Note that when configuring a # transfer with the Cloud Platform Console, the transfer's start time in a # day is specified in your local timezone. # or are specified elsewhere. An API may choose to allow leap seconds. Related # types are google.type.Date and `google.protobuf.Timestamp`. "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose # to allow the value "24:00:00" for scenarios like business closing time. "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may # allow the value 60 if it allows leap-seconds. "minutes": 42, # Minutes of hour of day. Must be from 0 to 59. }, "scheduleEndDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The last day the recurring transfer will be run. If `scheduleEndDate` # is the same as `scheduleStartDate`, the transfer will be executed only # once. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, }, "projectId": "A String", # The ID of the Google Cloud Platform Console project that owns the job. # Required. "lastModificationTime": "A String", # This field cannot be changed by user requests. "creationTime": "A String", # This field cannot be changed by user requests. "name": "A String", # A globally unique name assigned by Storage Transfer Service when the # job is created. This field should be left empty in requests to create a new # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT` # error. }
get(jobName, projectId=None, x__xgafv=None)
Gets a transfer job. Args: jobName: string, The job to get. Required. (required) projectId: string, The ID of the Google Cloud Platform Console project that owns the job. Required. x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # This resource represents the configuration of a transfer job that runs # periodically. "transferSpec": { # Configuration for running a transfer. # Transfer specification. # Required. "objectConditions": { # Conditions that determine which objects will be transferred. # Only objects that satisfy these object conditions are included in the set # of data source and data sink objects. Object conditions based on # objects' `lastModificationTime` do not exclude objects in a data sink. "maxTimeElapsedSinceLastModification": "A String", # `maxTimeElapsedSinceLastModification` is the complement to # `minTimeElapsedSinceLastModification`. "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object # conditions must have names that start with one of the `includePrefixes` # and that do not start with any of the `excludePrefixes`. If `includePrefixes` # is not specified, all objects except those that have names starting with # one of the `excludePrefixes` must satisfy the object conditions. # # Requirements: # # * Each include-prefix and exclude-prefix can contain any sequence of # Unicode characters, of max length 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 and exclude-prefix must omit the leading slash. # For example, to include the `requests.gz` object in a transfer from # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include # prefix as `logs/y=2015/requests.gz`. # # * None of the include-prefix or the exclude-prefix values can be empty, # if specified. # # * Each include-prefix must include a distinct portion of the object # namespace, i.e., no include-prefix may be a prefix of another # include-prefix. # # * Each exclude-prefix must exclude a distinct portion of the object # namespace, i.e., no exclude-prefix may be a prefix of another # exclude-prefix. # # * If `includePrefixes` is specified, then each exclude-prefix must start # with the value of a path explicitly included by `includePrefixes`. # # The max size of `includePrefixes` is 1000. "A String", ], "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for # `includePrefixes`. # # The max size of `excludePrefixes` is 1000. "A String", ], "minTimeElapsedSinceLastModification": "A String", # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value # and `maxTimeElapsedSinceLastModification` takes the maximum possible # value of Duration. Objects that satisfy the object conditions # must either have a `lastModificationTime` greater or equal to # `NOW` - `maxTimeElapsedSinceLastModification` and less than # `NOW` - `minTimeElapsedSinceLastModification`, or not have a # `lastModificationTime`. }, "gcsDataSource": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data source. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "httpDataSource": { # An HttpData specifies a list of objects on the web to be transferred over # An HTTP URL data source. # HTTP. The information of the objects to be transferred is contained in a # file referenced by a URL. The first line in the file must be # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines # specify the information of the list of objects, one object per list entry. # Each entry has the following tab-delimited fields: # # * HTTP URL - The location of the object. # # * Length - The size of the object in bytes. # # * MD5 - The base64-encoded MD5 hash of the object. # # For an example of a valid TSV file, see # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls) # # When transferring data based on a URL list, keep the following in mind: # # * When an object located at `http(s)://hostname:port/` is transferred # to a data sink, the name of the object at the data sink is # ` / `. # # * If the specified size of an object does not match the actual size of the # object fetched, the object will not be transferred. # # * If the specified MD5 does not match the MD5 computed from the transferred # bytes, the object transfer will fail. For more information, see # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5) # # * Ensure that each URL you specify is publicly accessible. For # example, in Google Cloud Storage you can # [share an object publicly] # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get # a link to it. # # * Storage Transfer Service obeys `robots.txt` rules and requires the source # HTTP server to support `Range` requests and to return a `Content-Length` # header in each response. # # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects # to transfer. "listUrl": "A String", # The URL that points to the file that stores the object list entries. # This file must allow public access. Currently, only URLs with HTTP and # HTTPS schemes are supported. # Required. }, "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions # based on objects' `lastModificationTime` are ignored and do not exclude # objects in a data source or a data sink. # to be performed on objects in a transfer. "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed. "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are # transferred to the sink. "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted. }, "gcsDataSink": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data sink. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "awsS3DataSource": { # An AwsS3Data can be a data source, but not a data sink. # An AWS S3 data source. # In an AwsS3Data, an object's name is the S3 object's key name. "awsAccessKey": { # AWS access key (see # 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. # Required. # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)). "secretAccessKey": "A String", # AWS secret access key. This field is not returned in RPC responses. # Required. "accessKeyId": "A String", # AWS access key ID. # Required. }, "bucketName": "A String", # S3 Bucket name (see # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)). # Required. }, }, "status": "A String", # 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. "deletionTime": "A String", # This field cannot be changed by user requests. "description": "A String", # A description provided by the user for the job. Its max length is 1024 # bytes when Unicode-encoded. "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification. # Required. "scheduleStartDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The first day the recurring transfer is scheduled to run. If # `scheduleStartDate` is in the past, the transfer will run for the first # time on the following day. # Required. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, "startTimeOfDay": { # Represents a time of day. The date and time zone are either not significant # The time in UTC at which the transfer will be scheduled to start in a day. # Transfers may start later than this time. If not specified, recurring and # one-time transfers that are scheduled to run today will run immediately; # recurring transfers that are scheduled to run on a future date will start # at approximately midnight UTC on that date. Note that when configuring a # transfer with the Cloud Platform Console, the transfer's start time in a # day is specified in your local timezone. # or are specified elsewhere. An API may choose to allow leap seconds. Related # types are google.type.Date and `google.protobuf.Timestamp`. "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose # to allow the value "24:00:00" for scenarios like business closing time. "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may # allow the value 60 if it allows leap-seconds. "minutes": 42, # Minutes of hour of day. Must be from 0 to 59. }, "scheduleEndDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The last day the recurring transfer will be run. If `scheduleEndDate` # is the same as `scheduleStartDate`, the transfer will be executed only # once. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, }, "projectId": "A String", # The ID of the Google Cloud Platform Console project that owns the job. # Required. "lastModificationTime": "A String", # This field cannot be changed by user requests. "creationTime": "A String", # This field cannot be changed by user requests. "name": "A String", # A globally unique name assigned by Storage Transfer Service when the # job is created. This field should be left empty in requests to create a new # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT` # error. }
list(pageSize=None, filter=None, pageToken=None, x__xgafv=None)
Lists transfer jobs. Args: pageSize: integer, The list page size. The max allowed value is 256. filter: string, A list of query parameters specified as JSON text in the form of {"project_id":"my_project_id", "job_names":["jobid1","jobid2",...], "job_statuses":["status1","status2",...]}. Since `job_names` and `job_statuses` support multiple values, their values must be specified with array notation. `project_id` is required. `job_names` and `job_statuses` are optional. The valid values for `job_statuses` are case-insensitive: `ENABLED`, `DISABLED`, and `DELETED`. pageToken: string, The list page token. x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # Response from ListTransferJobs. "nextPageToken": "A String", # The list next page token. "transferJobs": [ # A list of transfer jobs. { # This resource represents the configuration of a transfer job that runs # periodically. "transferSpec": { # Configuration for running a transfer. # Transfer specification. # Required. "objectConditions": { # Conditions that determine which objects will be transferred. # Only objects that satisfy these object conditions are included in the set # of data source and data sink objects. Object conditions based on # objects' `lastModificationTime` do not exclude objects in a data sink. "maxTimeElapsedSinceLastModification": "A String", # `maxTimeElapsedSinceLastModification` is the complement to # `minTimeElapsedSinceLastModification`. "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object # conditions must have names that start with one of the `includePrefixes` # and that do not start with any of the `excludePrefixes`. If `includePrefixes` # is not specified, all objects except those that have names starting with # one of the `excludePrefixes` must satisfy the object conditions. # # Requirements: # # * Each include-prefix and exclude-prefix can contain any sequence of # Unicode characters, of max length 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 and exclude-prefix must omit the leading slash. # For example, to include the `requests.gz` object in a transfer from # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include # prefix as `logs/y=2015/requests.gz`. # # * None of the include-prefix or the exclude-prefix values can be empty, # if specified. # # * Each include-prefix must include a distinct portion of the object # namespace, i.e., no include-prefix may be a prefix of another # include-prefix. # # * Each exclude-prefix must exclude a distinct portion of the object # namespace, i.e., no exclude-prefix may be a prefix of another # exclude-prefix. # # * If `includePrefixes` is specified, then each exclude-prefix must start # with the value of a path explicitly included by `includePrefixes`. # # The max size of `includePrefixes` is 1000. "A String", ], "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for # `includePrefixes`. # # The max size of `excludePrefixes` is 1000. "A String", ], "minTimeElapsedSinceLastModification": "A String", # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value # and `maxTimeElapsedSinceLastModification` takes the maximum possible # value of Duration. Objects that satisfy the object conditions # must either have a `lastModificationTime` greater or equal to # `NOW` - `maxTimeElapsedSinceLastModification` and less than # `NOW` - `minTimeElapsedSinceLastModification`, or not have a # `lastModificationTime`. }, "gcsDataSource": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data source. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "httpDataSource": { # An HttpData specifies a list of objects on the web to be transferred over # An HTTP URL data source. # HTTP. The information of the objects to be transferred is contained in a # file referenced by a URL. The first line in the file must be # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines # specify the information of the list of objects, one object per list entry. # Each entry has the following tab-delimited fields: # # * HTTP URL - The location of the object. # # * Length - The size of the object in bytes. # # * MD5 - The base64-encoded MD5 hash of the object. # # For an example of a valid TSV file, see # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls) # # When transferring data based on a URL list, keep the following in mind: # # * When an object located at `http(s)://hostname:port/` is transferred # to a data sink, the name of the object at the data sink is # ` / `. # # * If the specified size of an object does not match the actual size of the # object fetched, the object will not be transferred. # # * If the specified MD5 does not match the MD5 computed from the transferred # bytes, the object transfer will fail. For more information, see # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5) # # * Ensure that each URL you specify is publicly accessible. For # example, in Google Cloud Storage you can # [share an object publicly] # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get # a link to it. # # * Storage Transfer Service obeys `robots.txt` rules and requires the source # HTTP server to support `Range` requests and to return a `Content-Length` # header in each response. # # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects # to transfer. "listUrl": "A String", # The URL that points to the file that stores the object list entries. # This file must allow public access. Currently, only URLs with HTTP and # HTTPS schemes are supported. # Required. }, "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions # based on objects' `lastModificationTime` are ignored and do not exclude # objects in a data source or a data sink. # to be performed on objects in a transfer. "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed. "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are # transferred to the sink. "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted. }, "gcsDataSink": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data sink. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "awsS3DataSource": { # An AwsS3Data can be a data source, but not a data sink. # An AWS S3 data source. # In an AwsS3Data, an object's name is the S3 object's key name. "awsAccessKey": { # AWS access key (see # 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. # Required. # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)). "secretAccessKey": "A String", # AWS secret access key. This field is not returned in RPC responses. # Required. "accessKeyId": "A String", # AWS access key ID. # Required. }, "bucketName": "A String", # S3 Bucket name (see # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)). # Required. }, }, "status": "A String", # 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. "deletionTime": "A String", # This field cannot be changed by user requests. "description": "A String", # A description provided by the user for the job. Its max length is 1024 # bytes when Unicode-encoded. "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification. # Required. "scheduleStartDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The first day the recurring transfer is scheduled to run. If # `scheduleStartDate` is in the past, the transfer will run for the first # time on the following day. # Required. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, "startTimeOfDay": { # Represents a time of day. The date and time zone are either not significant # The time in UTC at which the transfer will be scheduled to start in a day. # Transfers may start later than this time. If not specified, recurring and # one-time transfers that are scheduled to run today will run immediately; # recurring transfers that are scheduled to run on a future date will start # at approximately midnight UTC on that date. Note that when configuring a # transfer with the Cloud Platform Console, the transfer's start time in a # day is specified in your local timezone. # or are specified elsewhere. An API may choose to allow leap seconds. Related # types are google.type.Date and `google.protobuf.Timestamp`. "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose # to allow the value "24:00:00" for scenarios like business closing time. "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may # allow the value 60 if it allows leap-seconds. "minutes": 42, # Minutes of hour of day. Must be from 0 to 59. }, "scheduleEndDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The last day the recurring transfer will be run. If `scheduleEndDate` # is the same as `scheduleStartDate`, the transfer will be executed only # once. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, }, "projectId": "A String", # The ID of the Google Cloud Platform Console project that owns the job. # Required. "lastModificationTime": "A String", # This field cannot be changed by user requests. "creationTime": "A String", # This field cannot be changed by user requests. "name": "A String", # A globally unique name assigned by Storage Transfer Service when the # job is created. This field should be left empty in requests to create a new # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT` # error. }, ], }
list_next(previous_request, previous_response)
Retrieves the next page of results. Args: previous_request: The request for the previous page. (required) previous_response: The response from the request for the previous page. (required) Returns: A request object that you can call 'execute()' on to request the next page. Returns None if there are no more items in the collection.
patch(jobName, body, x__xgafv=None)
Updates a transfer job. Updating a job's transfer spec does not affect transfer operations that are running already. Updating the scheduling of a job is not allowed. Args: jobName: string, The name of job to update. Required. (required) body: object, The request body. (required) The object takes the form of: { # Request passed to UpdateTransferJob. "projectId": "A String", # The ID of the Google Cloud Platform Console project that owns the job. # Required. "updateTransferJobFieldMask": "A String", # The field mask of the fields in `transferJob` that are to be updated in # this request. Fields in `transferJob` that can be updated are: # `description`, `transferSpec`, and `status`. To update the `transferSpec` # of the job, a complete transfer specification has to be provided. An # incomplete specification which misses any required fields will be rejected # with the error `INVALID_ARGUMENT`. "transferJob": { # This resource represents the configuration of a transfer job that runs # The job to update. # Required. # periodically. "transferSpec": { # Configuration for running a transfer. # Transfer specification. # Required. "objectConditions": { # Conditions that determine which objects will be transferred. # Only objects that satisfy these object conditions are included in the set # of data source and data sink objects. Object conditions based on # objects' `lastModificationTime` do not exclude objects in a data sink. "maxTimeElapsedSinceLastModification": "A String", # `maxTimeElapsedSinceLastModification` is the complement to # `minTimeElapsedSinceLastModification`. "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object # conditions must have names that start with one of the `includePrefixes` # and that do not start with any of the `excludePrefixes`. If `includePrefixes` # is not specified, all objects except those that have names starting with # one of the `excludePrefixes` must satisfy the object conditions. # # Requirements: # # * Each include-prefix and exclude-prefix can contain any sequence of # Unicode characters, of max length 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 and exclude-prefix must omit the leading slash. # For example, to include the `requests.gz` object in a transfer from # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include # prefix as `logs/y=2015/requests.gz`. # # * None of the include-prefix or the exclude-prefix values can be empty, # if specified. # # * Each include-prefix must include a distinct portion of the object # namespace, i.e., no include-prefix may be a prefix of another # include-prefix. # # * Each exclude-prefix must exclude a distinct portion of the object # namespace, i.e., no exclude-prefix may be a prefix of another # exclude-prefix. # # * If `includePrefixes` is specified, then each exclude-prefix must start # with the value of a path explicitly included by `includePrefixes`. # # The max size of `includePrefixes` is 1000. "A String", ], "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for # `includePrefixes`. # # The max size of `excludePrefixes` is 1000. "A String", ], "minTimeElapsedSinceLastModification": "A String", # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value # and `maxTimeElapsedSinceLastModification` takes the maximum possible # value of Duration. Objects that satisfy the object conditions # must either have a `lastModificationTime` greater or equal to # `NOW` - `maxTimeElapsedSinceLastModification` and less than # `NOW` - `minTimeElapsedSinceLastModification`, or not have a # `lastModificationTime`. }, "gcsDataSource": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data source. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "httpDataSource": { # An HttpData specifies a list of objects on the web to be transferred over # An HTTP URL data source. # HTTP. The information of the objects to be transferred is contained in a # file referenced by a URL. The first line in the file must be # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines # specify the information of the list of objects, one object per list entry. # Each entry has the following tab-delimited fields: # # * HTTP URL - The location of the object. # # * Length - The size of the object in bytes. # # * MD5 - The base64-encoded MD5 hash of the object. # # For an example of a valid TSV file, see # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls) # # When transferring data based on a URL list, keep the following in mind: # # * When an object located at `http(s)://hostname:port/` is transferred # to a data sink, the name of the object at the data sink is # ` / `. # # * If the specified size of an object does not match the actual size of the # object fetched, the object will not be transferred. # # * If the specified MD5 does not match the MD5 computed from the transferred # bytes, the object transfer will fail. For more information, see # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5) # # * Ensure that each URL you specify is publicly accessible. For # example, in Google Cloud Storage you can # [share an object publicly] # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get # a link to it. # # * Storage Transfer Service obeys `robots.txt` rules and requires the source # HTTP server to support `Range` requests and to return a `Content-Length` # header in each response. # # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects # to transfer. "listUrl": "A String", # The URL that points to the file that stores the object list entries. # This file must allow public access. Currently, only URLs with HTTP and # HTTPS schemes are supported. # Required. }, "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions # based on objects' `lastModificationTime` are ignored and do not exclude # objects in a data source or a data sink. # to be performed on objects in a transfer. "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed. "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are # transferred to the sink. "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted. }, "gcsDataSink": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data sink. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "awsS3DataSource": { # An AwsS3Data can be a data source, but not a data sink. # An AWS S3 data source. # In an AwsS3Data, an object's name is the S3 object's key name. "awsAccessKey": { # AWS access key (see # 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. # Required. # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)). "secretAccessKey": "A String", # AWS secret access key. This field is not returned in RPC responses. # Required. "accessKeyId": "A String", # AWS access key ID. # Required. }, "bucketName": "A String", # S3 Bucket name (see # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)). # Required. }, }, "status": "A String", # 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. "deletionTime": "A String", # This field cannot be changed by user requests. "description": "A String", # A description provided by the user for the job. Its max length is 1024 # bytes when Unicode-encoded. "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification. # Required. "scheduleStartDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The first day the recurring transfer is scheduled to run. If # `scheduleStartDate` is in the past, the transfer will run for the first # time on the following day. # Required. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, "startTimeOfDay": { # Represents a time of day. The date and time zone are either not significant # The time in UTC at which the transfer will be scheduled to start in a day. # Transfers may start later than this time. If not specified, recurring and # one-time transfers that are scheduled to run today will run immediately; # recurring transfers that are scheduled to run on a future date will start # at approximately midnight UTC on that date. Note that when configuring a # transfer with the Cloud Platform Console, the transfer's start time in a # day is specified in your local timezone. # or are specified elsewhere. An API may choose to allow leap seconds. Related # types are google.type.Date and `google.protobuf.Timestamp`. "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose # to allow the value "24:00:00" for scenarios like business closing time. "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may # allow the value 60 if it allows leap-seconds. "minutes": 42, # Minutes of hour of day. Must be from 0 to 59. }, "scheduleEndDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The last day the recurring transfer will be run. If `scheduleEndDate` # is the same as `scheduleStartDate`, the transfer will be executed only # once. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, }, "projectId": "A String", # The ID of the Google Cloud Platform Console project that owns the job. # Required. "lastModificationTime": "A String", # This field cannot be changed by user requests. "creationTime": "A String", # This field cannot be changed by user requests. "name": "A String", # A globally unique name assigned by Storage Transfer Service when the # job is created. This field should be left empty in requests to create a new # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT` # error. }, } x__xgafv: string, V1 error format. Allowed values 1 - v1 error format 2 - v2 error format Returns: An object of the form: { # This resource represents the configuration of a transfer job that runs # periodically. "transferSpec": { # Configuration for running a transfer. # Transfer specification. # Required. "objectConditions": { # Conditions that determine which objects will be transferred. # Only objects that satisfy these object conditions are included in the set # of data source and data sink objects. Object conditions based on # objects' `lastModificationTime` do not exclude objects in a data sink. "maxTimeElapsedSinceLastModification": "A String", # `maxTimeElapsedSinceLastModification` is the complement to # `minTimeElapsedSinceLastModification`. "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object # conditions must have names that start with one of the `includePrefixes` # and that do not start with any of the `excludePrefixes`. If `includePrefixes` # is not specified, all objects except those that have names starting with # one of the `excludePrefixes` must satisfy the object conditions. # # Requirements: # # * Each include-prefix and exclude-prefix can contain any sequence of # Unicode characters, of max length 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 and exclude-prefix must omit the leading slash. # For example, to include the `requests.gz` object in a transfer from # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include # prefix as `logs/y=2015/requests.gz`. # # * None of the include-prefix or the exclude-prefix values can be empty, # if specified. # # * Each include-prefix must include a distinct portion of the object # namespace, i.e., no include-prefix may be a prefix of another # include-prefix. # # * Each exclude-prefix must exclude a distinct portion of the object # namespace, i.e., no exclude-prefix may be a prefix of another # exclude-prefix. # # * If `includePrefixes` is specified, then each exclude-prefix must start # with the value of a path explicitly included by `includePrefixes`. # # The max size of `includePrefixes` is 1000. "A String", ], "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for # `includePrefixes`. # # The max size of `excludePrefixes` is 1000. "A String", ], "minTimeElapsedSinceLastModification": "A String", # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value # and `maxTimeElapsedSinceLastModification` takes the maximum possible # value of Duration. Objects that satisfy the object conditions # must either have a `lastModificationTime` greater or equal to # `NOW` - `maxTimeElapsedSinceLastModification` and less than # `NOW` - `minTimeElapsedSinceLastModification`, or not have a # `lastModificationTime`. }, "gcsDataSource": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data source. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "httpDataSource": { # An HttpData specifies a list of objects on the web to be transferred over # An HTTP URL data source. # HTTP. The information of the objects to be transferred is contained in a # file referenced by a URL. The first line in the file must be # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines # specify the information of the list of objects, one object per list entry. # Each entry has the following tab-delimited fields: # # * HTTP URL - The location of the object. # # * Length - The size of the object in bytes. # # * MD5 - The base64-encoded MD5 hash of the object. # # For an example of a valid TSV file, see # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls) # # When transferring data based on a URL list, keep the following in mind: # # * When an object located at `http(s)://hostname:port/ ` is transferred # to a data sink, the name of the object at the data sink is # ` / `. # # * If the specified size of an object does not match the actual size of the # object fetched, the object will not be transferred. # # * If the specified MD5 does not match the MD5 computed from the transferred # bytes, the object transfer will fail. For more information, see # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5) # # * Ensure that each URL you specify is publicly accessible. For # example, in Google Cloud Storage you can # [share an object publicly] # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get # a link to it. # # * Storage Transfer Service obeys `robots.txt` rules and requires the source # HTTP server to support `Range` requests and to return a `Content-Length` # header in each response. # # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects # to transfer. "listUrl": "A String", # The URL that points to the file that stores the object list entries. # This file must allow public access. Currently, only URLs with HTTP and # HTTPS schemes are supported. # Required. }, "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions # based on objects' `lastModificationTime` are ignored and do not exclude # objects in a data source or a data sink. # to be performed on objects in a transfer. "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed. "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are # transferred to the sink. "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted. }, "gcsDataSink": { # In a GcsData, an object's name is the Google Cloud Storage object's name and # A Google Cloud Storage data sink. # its `lastModificationTime` refers to the object's updated time, which changes # when the content or the metadata of the object is updated. "bucketName": "A String", # Google Cloud Storage bucket name (see # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). # Required. }, "awsS3DataSource": { # An AwsS3Data can be a data source, but not a data sink. # An AWS S3 data source. # In an AwsS3Data, an object's name is the S3 object's key name. "awsAccessKey": { # AWS access key (see # 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. # Required. # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)). "secretAccessKey": "A String", # AWS secret access key. This field is not returned in RPC responses. # Required. "accessKeyId": "A String", # AWS access key ID. # Required. }, "bucketName": "A String", # S3 Bucket name (see # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)). # Required. }, }, "status": "A String", # 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. "deletionTime": "A String", # This field cannot be changed by user requests. "description": "A String", # A description provided by the user for the job. Its max length is 1024 # bytes when Unicode-encoded. "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification. # Required. "scheduleStartDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The first day the recurring transfer is scheduled to run. If # `scheduleStartDate` is in the past, the transfer will run for the first # time on the following day. # Required. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, "startTimeOfDay": { # Represents a time of day. The date and time zone are either not significant # The time in UTC at which the transfer will be scheduled to start in a day. # Transfers may start later than this time. If not specified, recurring and # one-time transfers that are scheduled to run today will run immediately; # recurring transfers that are scheduled to run on a future date will start # at approximately midnight UTC on that date. Note that when configuring a # transfer with the Cloud Platform Console, the transfer's start time in a # day is specified in your local timezone. # or are specified elsewhere. An API may choose to allow leap seconds. Related # types are google.type.Date and `google.protobuf.Timestamp`. "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose # to allow the value "24:00:00" for scenarios like business closing time. "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may # allow the value 60 if it allows leap-seconds. "minutes": 42, # Minutes of hour of day. Must be from 0 to 59. }, "scheduleEndDate": { # Represents a whole calendar date, e.g. date of birth. The time of day and # The last day the recurring transfer will be run. If `scheduleEndDate` # is the same as `scheduleStartDate`, the transfer will be executed only # once. # time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. The day may be 0 to # represent a year and month where the day is not significant, e.g. credit card # expiration date. The year may be 0 to represent a month and day independent # of year, e.g. anniversary date. Related types are google.type.TimeOfDay # and `google.protobuf.Timestamp`. "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without # a year. "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 # if specifying a year/month where the day is not significant. "month": 42, # Month of year. Must be from 1 to 12. }, }, "projectId": "A String", # The ID of the Google Cloud Platform Console project that owns the job. # Required. "lastModificationTime": "A String", # This field cannot be changed by user requests. "creationTime": "A String", # This field cannot be changed by user requests. "name": "A String", # A globally unique name assigned by Storage Transfer Service when the # job is created. This field should be left empty in requests to create a new # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT` # error. }