• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5  margin: 0;
6  padding: 0;
7  border: 0;
8  font-weight: inherit;
9  font-style: inherit;
10  font-size: 100%;
11  font-family: inherit;
12  vertical-align: baseline;
13}
14
15body {
16  font-size: 13px;
17  padding: 1em;
18}
19
20h1 {
21  font-size: 26px;
22  margin-bottom: 1em;
23}
24
25h2 {
26  font-size: 24px;
27  margin-bottom: 1em;
28}
29
30h3 {
31  font-size: 20px;
32  margin-bottom: 1em;
33  margin-top: 1em;
34}
35
36pre, code {
37  line-height: 1.5;
38  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42  margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46  font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50  border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54  margin-top: 0.5em;
55}
56
57.firstline {
58  margin-left: 2 em;
59}
60
61.method  {
62  margin-top: 1em;
63  border: solid 1px #CCC;
64  padding: 1em;
65  background: #EEE;
66}
67
68.details {
69  font-weight: bold;
70  font-size: 14px;
71}
72
73</style>
74
75<h1><a href="storagetransfer_v1.html">Storage Transfer API</a> . <a href="storagetransfer_v1.transferJobs.html">transferJobs</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78  <code><a href="#create">create(body, x__xgafv=None)</a></code></p>
79<p class="firstline">Creates a transfer job that runs periodically.</p>
80<p class="toc_element">
81  <code><a href="#get">get(jobName, projectId=None, x__xgafv=None)</a></code></p>
82<p class="firstline">Gets a transfer job.</p>
83<p class="toc_element">
84  <code><a href="#list">list(pageSize=None, pageToken=None, x__xgafv=None, filter=None)</a></code></p>
85<p class="firstline">Lists transfer jobs.</p>
86<p class="toc_element">
87  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
88<p class="firstline">Retrieves the next page of results.</p>
89<p class="toc_element">
90  <code><a href="#patch">patch(jobName, body, x__xgafv=None)</a></code></p>
91<p class="firstline">Updates a transfer job. Updating a job's transfer spec does not affect</p>
92<h3>Method Details</h3>
93<div class="method">
94    <code class="details" id="create">create(body, x__xgafv=None)</code>
95  <pre>Creates a transfer job that runs periodically.
96
97Args:
98  body: object, The request body. (required)
99    The object takes the form of:
100
101{ # This resource represents the configuration of a transfer job that runs
102      # periodically.
103    "transferSpec": { # Configuration for running a transfer. # Transfer specification.
104      "objectConditions": { # Conditions that determine which objects will be transferred. Applies only # Only objects that satisfy these object conditions are included in the set
105          # of data source and data sink objects.  Object conditions based on
106          # objects' `lastModificationTime` do not exclude objects in a data sink.
107          # to S3 and GCS objects.
108        "maxTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` on or after
109            # `NOW` - `maxTimeElapsedSinceLastModification` and objects that don't have
110            # a `lastModificationTime` are transferred.
111            #
112            # Note that, for each `TransferOperation` started by this `TransferJob`,
113            # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
114            # `lastModificationTime` refers to the time of the last change to the
115            # object's content or metadata - specifically, this would be the `updated`
116            # property of GCS objects and the `LastModified` field of S3 objects.
117        "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object
118            # conditions must have names that start with one of the `includePrefixes`
119            # and that do not start with any of the `excludePrefixes`. If
120            # `includePrefixes` is not specified, all objects except those that have
121            # names starting with one of the `excludePrefixes` must satisfy the object
122            # conditions.
123            #
124            # Requirements:
125            #
126            #   * Each include-prefix and exclude-prefix can contain any sequence of
127            #     Unicode characters, of max length 1024 bytes when UTF8-encoded, and
128            #     must not contain Carriage Return or Line Feed characters.  Wildcard
129            #     matching and regular expression matching are not supported.
130            #
131            #   * Each include-prefix and exclude-prefix must omit the leading slash.
132            #     For example, to include the `requests.gz` object in a transfer from
133            #     `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
134            #     prefix as `logs/y=2015/requests.gz`.
135            #
136            #   * None of the include-prefix or the exclude-prefix values can be empty,
137            #     if specified.
138            #
139            #   * Each include-prefix must include a distinct portion of the object
140            #     namespace, i.e., no include-prefix may be a prefix of another
141            #     include-prefix.
142            #
143            #   * Each exclude-prefix must exclude a distinct portion of the object
144            #     namespace, i.e., no exclude-prefix may be a prefix of another
145            #     exclude-prefix.
146            #
147            #   * If `includePrefixes` is specified, then each exclude-prefix must start
148            #     with the value of a path explicitly included by `includePrefixes`.
149            #
150            # The max size of `includePrefixes` is 1000.
151          "A String",
152        ],
153        "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for
154            # `includePrefixes`.
155            #
156            # The max size of `excludePrefixes` is 1000.
157          "A String",
158        ],
159        "minTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` before
160            # `NOW` - `minTimeElapsedSinceLastModification` and objects that don't have a
161            # `lastModificationTime` are transferred.
162            #
163            # Note that, for each `TransferOperation` started by this `TransferJob`,
164            # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
165            # `lastModificationTime` refers to the time of the last change to the
166            # object's content or metadata - specifically, this would be the `updated`
167            # property of GCS objects and the `LastModified` field of S3 objects.
168      },
169      "gcsDataSource": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data source.
170          # name and its `lastModificationTime` refers to the object's updated time,
171          # which changes when the content or the metadata of the object is updated.
172        "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
173            # [Bucket Name
174            # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
175      },
176      "httpDataSource": { # An HttpData resource specifies a list of objects on the web to be transferred # An HTTP URL data source.
177          # over HTTP.  The information of the objects to be transferred is contained in
178          # a file referenced by a URL. The first line in the file must be
179          # "TsvHttpData-1.0", which specifies the format of the file.  Subsequent lines
180          # specify the information of the list of objects, one object per list entry.
181          # Each entry has the following tab-delimited fields:
182          #
183          # * HTTP URL - The location of the object.
184          #
185          # * Length - The size of the object in bytes.
186          #
187          # * MD5 - The base64-encoded MD5 hash of the object.
188          #
189          # For an example of a valid TSV file, see
190          # [Transferring data from
191          # URLs](https://cloud.google.com/storage/transfer/create-url-list).
192          #
193          # When transferring data based on a URL list, keep the following in mind:
194          #
195          # * When an object located at `http(s)://hostname:port/<URL-path>` is
196          # transferred to a data sink, the name of the object at the data sink is
197          # `<hostname>/<URL-path>`.
198          #
199          # * If the specified size of an object does not match the actual size of the
200          # object fetched, the object will not be transferred.
201          #
202          # * If the specified MD5 does not match the MD5 computed from the transferred
203          # bytes, the object transfer will fail. For more information, see
204          # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
205          #
206          # * Ensure that each URL you specify is publicly accessible. For
207          # example, in Google Cloud Storage you can
208          # [share an object publicly]
209          # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
210          # a link to it.
211          #
212          # * Storage Transfer Service obeys `robots.txt` rules and requires the source
213          # HTTP server to support `Range` requests and to return a `Content-Length`
214          # header in each response.
215          #
216          # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
217          # to transfer.
218        "listUrl": "A String", # Required. The URL that points to the file that stores the object list
219            # entries. This file must allow public access.  Currently, only URLs with
220            # HTTP and HTTPS schemes are supported.
221      },
222      "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions
223          # based on objects' `lastModificationTime` are ignored and do not exclude
224          # objects in a data source or a data sink.
225          # to be performed on objects in a transfer.
226        "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed.
227        "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are
228            # transferred to the sink.  Note that this option and
229            # `deleteObjectsUniqueInSink` are mutually exclusive.
230        "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted.  Note that
231            # this option and `deleteObjectsFromSourceAfterTransfer` are mutually
232            # exclusive.
233      },
234      "gcsDataSink": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data sink.
235          # name and its `lastModificationTime` refers to the object's updated time,
236          # which changes when the content or the metadata of the object is updated.
237        "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
238            # [Bucket Name
239            # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
240      },
241      "awsS3DataSource": { # An AwsS3Data resource can be a data source, but not a data sink. # An AWS S3 data source.
242          # In an AwsS3Data resource, an object's name is the S3 object's key name.
243        "awsAccessKey": { # AWS access key (see # Required. AWS access key used to sign the API requests to the AWS S3
244            # bucket. Permissions on the bucket must be granted to the access ID of the
245            # AWS access key.
246            # [AWS Security
247            # Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).
248          "secretAccessKey": "A String", # Required. AWS secret access key. This field is not returned in RPC
249              # responses.
250          "accessKeyId": "A String", # Required. AWS access key ID.
251        },
252        "bucketName": "A String", # Required. S3 Bucket name (see
253            # [Creating a
254            # bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).
255      },
256    },
257    "status": "A String", # Status of the job. This value MUST be specified for
258        # `CreateTransferJobRequests`.
259        #
260        # NOTE: The effect of the new job status takes place during a subsequent job
261        # run. For example, if you change the job status from `ENABLED` to
262        # `DISABLED`, and an operation spawned by the transfer is running, the status
263        # change would not affect the current operation.
264    "deletionTime": "A String", # Output only. The time that the transfer job was deleted.
265    "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification.
266      "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.
267          # Transfers may start later than this time. If not specified, recurring and
268          # one-time transfers that are scheduled to run today will run immediately;
269          # recurring transfers that are scheduled to run on a future date will start
270          # at approximately midnight UTC on that date. Note that when configuring a
271          # transfer with the Cloud Platform Console, the transfer's start time in a
272          # day is specified in your local timezone.
273          # or are specified elsewhere. An API may choose to allow leap seconds. Related
274          # types are google.type.Date and `google.protobuf.Timestamp`.
275        "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
276            # to allow the value "24:00:00" for scenarios like business closing time.
277        "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
278        "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
279            # allow the value 60 if it allows leap-seconds.
280        "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
281      },
282      "scheduleStartDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # Required. The first day the recurring transfer is scheduled to run. If
283          # `scheduleStartDate` is in the past, the transfer will run for the first
284          # time on the following day.
285          # and time zone are either specified elsewhere or are not significant. The date
286          # is relative to the Proleptic Gregorian Calendar. This can represent:
287          #
288          # * A full date, with non-zero year, month and day values
289          # * A month and day value, with a zero year, e.g. an anniversary
290          # * A year on its own, with zero month and day values
291          # * A year and month value, with a zero day, e.g. a credit card expiration date
292          #
293          # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
294        "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
295            # month and day.
296        "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
297            # if specifying a year by itself or a year and month where the day is not
298            # significant.
299        "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
300            # a year.
301      },
302      "scheduleEndDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # The last day the recurring transfer will be run. If `scheduleEndDate`
303          # is the same as `scheduleStartDate`, the transfer will be executed only
304          # once.
305          # and time zone are either specified elsewhere or are not significant. The date
306          # is relative to the Proleptic Gregorian Calendar. This can represent:
307          #
308          # * A full date, with non-zero year, month and day values
309          # * A month and day value, with a zero year, e.g. an anniversary
310          # * A year on its own, with zero month and day values
311          # * A year and month value, with a zero day, e.g. a credit card expiration date
312          #
313          # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
314        "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
315            # month and day.
316        "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
317            # if specifying a year by itself or a year and month where the day is not
318            # significant.
319        "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
320            # a year.
321      },
322    },
323    "projectId": "A String", # The ID of the Google Cloud Platform Project that owns the job.
324    "lastModificationTime": "A String", # Output only. The time that the transfer job was last modified.
325    "creationTime": "A String", # Output only. The time that the transfer job was created.
326    "name": "A String", # A globally unique name assigned by Storage Transfer Service when the
327        # job is created. This field should be left empty in requests to create a new
328        # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
329        # error.
330    "description": "A String", # A description provided by the user for the job. Its max length is 1024
331        # bytes when Unicode-encoded.
332  }
333
334  x__xgafv: string, V1 error format.
335    Allowed values
336      1 - v1 error format
337      2 - v2 error format
338
339Returns:
340  An object of the form:
341
342    { # This resource represents the configuration of a transfer job that runs
343        # periodically.
344      "transferSpec": { # Configuration for running a transfer. # Transfer specification.
345        "objectConditions": { # Conditions that determine which objects will be transferred. Applies only # Only objects that satisfy these object conditions are included in the set
346            # of data source and data sink objects.  Object conditions based on
347            # objects' `lastModificationTime` do not exclude objects in a data sink.
348            # to S3 and GCS objects.
349          "maxTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` on or after
350              # `NOW` - `maxTimeElapsedSinceLastModification` and objects that don't have
351              # a `lastModificationTime` are transferred.
352              #
353              # Note that, for each `TransferOperation` started by this `TransferJob`,
354              # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
355              # `lastModificationTime` refers to the time of the last change to the
356              # object's content or metadata - specifically, this would be the `updated`
357              # property of GCS objects and the `LastModified` field of S3 objects.
358          "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object
359              # conditions must have names that start with one of the `includePrefixes`
360              # and that do not start with any of the `excludePrefixes`. If
361              # `includePrefixes` is not specified, all objects except those that have
362              # names starting with one of the `excludePrefixes` must satisfy the object
363              # conditions.
364              #
365              # Requirements:
366              #
367              #   * Each include-prefix and exclude-prefix can contain any sequence of
368              #     Unicode characters, of max length 1024 bytes when UTF8-encoded, and
369              #     must not contain Carriage Return or Line Feed characters.  Wildcard
370              #     matching and regular expression matching are not supported.
371              #
372              #   * Each include-prefix and exclude-prefix must omit the leading slash.
373              #     For example, to include the `requests.gz` object in a transfer from
374              #     `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
375              #     prefix as `logs/y=2015/requests.gz`.
376              #
377              #   * None of the include-prefix or the exclude-prefix values can be empty,
378              #     if specified.
379              #
380              #   * Each include-prefix must include a distinct portion of the object
381              #     namespace, i.e., no include-prefix may be a prefix of another
382              #     include-prefix.
383              #
384              #   * Each exclude-prefix must exclude a distinct portion of the object
385              #     namespace, i.e., no exclude-prefix may be a prefix of another
386              #     exclude-prefix.
387              #
388              #   * If `includePrefixes` is specified, then each exclude-prefix must start
389              #     with the value of a path explicitly included by `includePrefixes`.
390              #
391              # The max size of `includePrefixes` is 1000.
392            "A String",
393          ],
394          "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for
395              # `includePrefixes`.
396              #
397              # The max size of `excludePrefixes` is 1000.
398            "A String",
399          ],
400          "minTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` before
401              # `NOW` - `minTimeElapsedSinceLastModification` and objects that don't have a
402              # `lastModificationTime` are transferred.
403              #
404              # Note that, for each `TransferOperation` started by this `TransferJob`,
405              # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
406              # `lastModificationTime` refers to the time of the last change to the
407              # object's content or metadata - specifically, this would be the `updated`
408              # property of GCS objects and the `LastModified` field of S3 objects.
409        },
410        "gcsDataSource": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data source.
411            # name and its `lastModificationTime` refers to the object's updated time,
412            # which changes when the content or the metadata of the object is updated.
413          "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
414              # [Bucket Name
415              # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
416        },
417        "httpDataSource": { # An HttpData resource specifies a list of objects on the web to be transferred # An HTTP URL data source.
418            # over HTTP.  The information of the objects to be transferred is contained in
419            # a file referenced by a URL. The first line in the file must be
420            # "TsvHttpData-1.0", which specifies the format of the file.  Subsequent lines
421            # specify the information of the list of objects, one object per list entry.
422            # Each entry has the following tab-delimited fields:
423            #
424            # * HTTP URL - The location of the object.
425            #
426            # * Length - The size of the object in bytes.
427            #
428            # * MD5 - The base64-encoded MD5 hash of the object.
429            #
430            # For an example of a valid TSV file, see
431            # [Transferring data from
432            # URLs](https://cloud.google.com/storage/transfer/create-url-list).
433            #
434            # When transferring data based on a URL list, keep the following in mind:
435            #
436            # * When an object located at `http(s)://hostname:port/<URL-path>` is
437            # transferred to a data sink, the name of the object at the data sink is
438            # `<hostname>/<URL-path>`.
439            #
440            # * If the specified size of an object does not match the actual size of the
441            # object fetched, the object will not be transferred.
442            #
443            # * If the specified MD5 does not match the MD5 computed from the transferred
444            # bytes, the object transfer will fail. For more information, see
445            # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
446            #
447            # * Ensure that each URL you specify is publicly accessible. For
448            # example, in Google Cloud Storage you can
449            # [share an object publicly]
450            # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
451            # a link to it.
452            #
453            # * Storage Transfer Service obeys `robots.txt` rules and requires the source
454            # HTTP server to support `Range` requests and to return a `Content-Length`
455            # header in each response.
456            #
457            # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
458            # to transfer.
459          "listUrl": "A String", # Required. The URL that points to the file that stores the object list
460              # entries. This file must allow public access.  Currently, only URLs with
461              # HTTP and HTTPS schemes are supported.
462        },
463        "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions
464            # based on objects' `lastModificationTime` are ignored and do not exclude
465            # objects in a data source or a data sink.
466            # to be performed on objects in a transfer.
467          "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed.
468          "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are
469              # transferred to the sink.  Note that this option and
470              # `deleteObjectsUniqueInSink` are mutually exclusive.
471          "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted.  Note that
472              # this option and `deleteObjectsFromSourceAfterTransfer` are mutually
473              # exclusive.
474        },
475        "gcsDataSink": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data sink.
476            # name and its `lastModificationTime` refers to the object's updated time,
477            # which changes when the content or the metadata of the object is updated.
478          "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
479              # [Bucket Name
480              # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
481        },
482        "awsS3DataSource": { # An AwsS3Data resource can be a data source, but not a data sink. # An AWS S3 data source.
483            # In an AwsS3Data resource, an object's name is the S3 object's key name.
484          "awsAccessKey": { # AWS access key (see # Required. AWS access key used to sign the API requests to the AWS S3
485              # bucket. Permissions on the bucket must be granted to the access ID of the
486              # AWS access key.
487              # [AWS Security
488              # Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).
489            "secretAccessKey": "A String", # Required. AWS secret access key. This field is not returned in RPC
490                # responses.
491            "accessKeyId": "A String", # Required. AWS access key ID.
492          },
493          "bucketName": "A String", # Required. S3 Bucket name (see
494              # [Creating a
495              # bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).
496        },
497      },
498      "status": "A String", # Status of the job. This value MUST be specified for
499          # `CreateTransferJobRequests`.
500          #
501          # NOTE: The effect of the new job status takes place during a subsequent job
502          # run. For example, if you change the job status from `ENABLED` to
503          # `DISABLED`, and an operation spawned by the transfer is running, the status
504          # change would not affect the current operation.
505      "deletionTime": "A String", # Output only. The time that the transfer job was deleted.
506      "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification.
507        "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.
508            # Transfers may start later than this time. If not specified, recurring and
509            # one-time transfers that are scheduled to run today will run immediately;
510            # recurring transfers that are scheduled to run on a future date will start
511            # at approximately midnight UTC on that date. Note that when configuring a
512            # transfer with the Cloud Platform Console, the transfer's start time in a
513            # day is specified in your local timezone.
514            # or are specified elsewhere. An API may choose to allow leap seconds. Related
515            # types are google.type.Date and `google.protobuf.Timestamp`.
516          "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
517              # to allow the value "24:00:00" for scenarios like business closing time.
518          "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
519          "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
520              # allow the value 60 if it allows leap-seconds.
521          "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
522        },
523        "scheduleStartDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # Required. The first day the recurring transfer is scheduled to run. If
524            # `scheduleStartDate` is in the past, the transfer will run for the first
525            # time on the following day.
526            # and time zone are either specified elsewhere or are not significant. The date
527            # is relative to the Proleptic Gregorian Calendar. This can represent:
528            #
529            # * A full date, with non-zero year, month and day values
530            # * A month and day value, with a zero year, e.g. an anniversary
531            # * A year on its own, with zero month and day values
532            # * A year and month value, with a zero day, e.g. a credit card expiration date
533            #
534            # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
535          "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
536              # month and day.
537          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
538              # if specifying a year by itself or a year and month where the day is not
539              # significant.
540          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
541              # a year.
542        },
543        "scheduleEndDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # The last day the recurring transfer will be run. If `scheduleEndDate`
544            # is the same as `scheduleStartDate`, the transfer will be executed only
545            # once.
546            # and time zone are either specified elsewhere or are not significant. The date
547            # is relative to the Proleptic Gregorian Calendar. This can represent:
548            #
549            # * A full date, with non-zero year, month and day values
550            # * A month and day value, with a zero year, e.g. an anniversary
551            # * A year on its own, with zero month and day values
552            # * A year and month value, with a zero day, e.g. a credit card expiration date
553            #
554            # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
555          "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
556              # month and day.
557          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
558              # if specifying a year by itself or a year and month where the day is not
559              # significant.
560          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
561              # a year.
562        },
563      },
564      "projectId": "A String", # The ID of the Google Cloud Platform Project that owns the job.
565      "lastModificationTime": "A String", # Output only. The time that the transfer job was last modified.
566      "creationTime": "A String", # Output only. The time that the transfer job was created.
567      "name": "A String", # A globally unique name assigned by Storage Transfer Service when the
568          # job is created. This field should be left empty in requests to create a new
569          # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
570          # error.
571      "description": "A String", # A description provided by the user for the job. Its max length is 1024
572          # bytes when Unicode-encoded.
573    }</pre>
574</div>
575
576<div class="method">
577    <code class="details" id="get">get(jobName, projectId=None, x__xgafv=None)</code>
578  <pre>Gets a transfer job.
579
580Args:
581  jobName: string, Required. The job to get. (required)
582  projectId: string, Required. The ID of the Google Cloud Platform Console project that owns the
583job.
584  x__xgafv: string, V1 error format.
585    Allowed values
586      1 - v1 error format
587      2 - v2 error format
588
589Returns:
590  An object of the form:
591
592    { # This resource represents the configuration of a transfer job that runs
593        # periodically.
594      "transferSpec": { # Configuration for running a transfer. # Transfer specification.
595        "objectConditions": { # Conditions that determine which objects will be transferred. Applies only # Only objects that satisfy these object conditions are included in the set
596            # of data source and data sink objects.  Object conditions based on
597            # objects' `lastModificationTime` do not exclude objects in a data sink.
598            # to S3 and GCS objects.
599          "maxTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` on or after
600              # `NOW` - `maxTimeElapsedSinceLastModification` and objects that don't have
601              # a `lastModificationTime` are transferred.
602              #
603              # Note that, for each `TransferOperation` started by this `TransferJob`,
604              # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
605              # `lastModificationTime` refers to the time of the last change to the
606              # object's content or metadata - specifically, this would be the `updated`
607              # property of GCS objects and the `LastModified` field of S3 objects.
608          "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object
609              # conditions must have names that start with one of the `includePrefixes`
610              # and that do not start with any of the `excludePrefixes`. If
611              # `includePrefixes` is not specified, all objects except those that have
612              # names starting with one of the `excludePrefixes` must satisfy the object
613              # conditions.
614              #
615              # Requirements:
616              #
617              #   * Each include-prefix and exclude-prefix can contain any sequence of
618              #     Unicode characters, of max length 1024 bytes when UTF8-encoded, and
619              #     must not contain Carriage Return or Line Feed characters.  Wildcard
620              #     matching and regular expression matching are not supported.
621              #
622              #   * Each include-prefix and exclude-prefix must omit the leading slash.
623              #     For example, to include the `requests.gz` object in a transfer from
624              #     `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
625              #     prefix as `logs/y=2015/requests.gz`.
626              #
627              #   * None of the include-prefix or the exclude-prefix values can be empty,
628              #     if specified.
629              #
630              #   * Each include-prefix must include a distinct portion of the object
631              #     namespace, i.e., no include-prefix may be a prefix of another
632              #     include-prefix.
633              #
634              #   * Each exclude-prefix must exclude a distinct portion of the object
635              #     namespace, i.e., no exclude-prefix may be a prefix of another
636              #     exclude-prefix.
637              #
638              #   * If `includePrefixes` is specified, then each exclude-prefix must start
639              #     with the value of a path explicitly included by `includePrefixes`.
640              #
641              # The max size of `includePrefixes` is 1000.
642            "A String",
643          ],
644          "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for
645              # `includePrefixes`.
646              #
647              # The max size of `excludePrefixes` is 1000.
648            "A String",
649          ],
650          "minTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` before
651              # `NOW` - `minTimeElapsedSinceLastModification` and objects that don't have a
652              # `lastModificationTime` are transferred.
653              #
654              # Note that, for each `TransferOperation` started by this `TransferJob`,
655              # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
656              # `lastModificationTime` refers to the time of the last change to the
657              # object's content or metadata - specifically, this would be the `updated`
658              # property of GCS objects and the `LastModified` field of S3 objects.
659        },
660        "gcsDataSource": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data source.
661            # name and its `lastModificationTime` refers to the object's updated time,
662            # which changes when the content or the metadata of the object is updated.
663          "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
664              # [Bucket Name
665              # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
666        },
667        "httpDataSource": { # An HttpData resource specifies a list of objects on the web to be transferred # An HTTP URL data source.
668            # over HTTP.  The information of the objects to be transferred is contained in
669            # a file referenced by a URL. The first line in the file must be
670            # "TsvHttpData-1.0", which specifies the format of the file.  Subsequent lines
671            # specify the information of the list of objects, one object per list entry.
672            # Each entry has the following tab-delimited fields:
673            #
674            # * HTTP URL - The location of the object.
675            #
676            # * Length - The size of the object in bytes.
677            #
678            # * MD5 - The base64-encoded MD5 hash of the object.
679            #
680            # For an example of a valid TSV file, see
681            # [Transferring data from
682            # URLs](https://cloud.google.com/storage/transfer/create-url-list).
683            #
684            # When transferring data based on a URL list, keep the following in mind:
685            #
686            # * When an object located at `http(s)://hostname:port/<URL-path>` is
687            # transferred to a data sink, the name of the object at the data sink is
688            # `<hostname>/<URL-path>`.
689            #
690            # * If the specified size of an object does not match the actual size of the
691            # object fetched, the object will not be transferred.
692            #
693            # * If the specified MD5 does not match the MD5 computed from the transferred
694            # bytes, the object transfer will fail. For more information, see
695            # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
696            #
697            # * Ensure that each URL you specify is publicly accessible. For
698            # example, in Google Cloud Storage you can
699            # [share an object publicly]
700            # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
701            # a link to it.
702            #
703            # * Storage Transfer Service obeys `robots.txt` rules and requires the source
704            # HTTP server to support `Range` requests and to return a `Content-Length`
705            # header in each response.
706            #
707            # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
708            # to transfer.
709          "listUrl": "A String", # Required. The URL that points to the file that stores the object list
710              # entries. This file must allow public access.  Currently, only URLs with
711              # HTTP and HTTPS schemes are supported.
712        },
713        "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions
714            # based on objects' `lastModificationTime` are ignored and do not exclude
715            # objects in a data source or a data sink.
716            # to be performed on objects in a transfer.
717          "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed.
718          "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are
719              # transferred to the sink.  Note that this option and
720              # `deleteObjectsUniqueInSink` are mutually exclusive.
721          "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted.  Note that
722              # this option and `deleteObjectsFromSourceAfterTransfer` are mutually
723              # exclusive.
724        },
725        "gcsDataSink": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data sink.
726            # name and its `lastModificationTime` refers to the object's updated time,
727            # which changes when the content or the metadata of the object is updated.
728          "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
729              # [Bucket Name
730              # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
731        },
732        "awsS3DataSource": { # An AwsS3Data resource can be a data source, but not a data sink. # An AWS S3 data source.
733            # In an AwsS3Data resource, an object's name is the S3 object's key name.
734          "awsAccessKey": { # AWS access key (see # Required. AWS access key used to sign the API requests to the AWS S3
735              # bucket. Permissions on the bucket must be granted to the access ID of the
736              # AWS access key.
737              # [AWS Security
738              # Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).
739            "secretAccessKey": "A String", # Required. AWS secret access key. This field is not returned in RPC
740                # responses.
741            "accessKeyId": "A String", # Required. AWS access key ID.
742          },
743          "bucketName": "A String", # Required. S3 Bucket name (see
744              # [Creating a
745              # bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).
746        },
747      },
748      "status": "A String", # Status of the job. This value MUST be specified for
749          # `CreateTransferJobRequests`.
750          #
751          # NOTE: The effect of the new job status takes place during a subsequent job
752          # run. For example, if you change the job status from `ENABLED` to
753          # `DISABLED`, and an operation spawned by the transfer is running, the status
754          # change would not affect the current operation.
755      "deletionTime": "A String", # Output only. The time that the transfer job was deleted.
756      "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification.
757        "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.
758            # Transfers may start later than this time. If not specified, recurring and
759            # one-time transfers that are scheduled to run today will run immediately;
760            # recurring transfers that are scheduled to run on a future date will start
761            # at approximately midnight UTC on that date. Note that when configuring a
762            # transfer with the Cloud Platform Console, the transfer's start time in a
763            # day is specified in your local timezone.
764            # or are specified elsewhere. An API may choose to allow leap seconds. Related
765            # types are google.type.Date and `google.protobuf.Timestamp`.
766          "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
767              # to allow the value "24:00:00" for scenarios like business closing time.
768          "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
769          "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
770              # allow the value 60 if it allows leap-seconds.
771          "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
772        },
773        "scheduleStartDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # Required. The first day the recurring transfer is scheduled to run. If
774            # `scheduleStartDate` is in the past, the transfer will run for the first
775            # time on the following day.
776            # and time zone are either specified elsewhere or are not significant. The date
777            # is relative to the Proleptic Gregorian Calendar. This can represent:
778            #
779            # * A full date, with non-zero year, month and day values
780            # * A month and day value, with a zero year, e.g. an anniversary
781            # * A year on its own, with zero month and day values
782            # * A year and month value, with a zero day, e.g. a credit card expiration date
783            #
784            # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
785          "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
786              # month and day.
787          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
788              # if specifying a year by itself or a year and month where the day is not
789              # significant.
790          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
791              # a year.
792        },
793        "scheduleEndDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # The last day the recurring transfer will be run. If `scheduleEndDate`
794            # is the same as `scheduleStartDate`, the transfer will be executed only
795            # once.
796            # and time zone are either specified elsewhere or are not significant. The date
797            # is relative to the Proleptic Gregorian Calendar. This can represent:
798            #
799            # * A full date, with non-zero year, month and day values
800            # * A month and day value, with a zero year, e.g. an anniversary
801            # * A year on its own, with zero month and day values
802            # * A year and month value, with a zero day, e.g. a credit card expiration date
803            #
804            # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
805          "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
806              # month and day.
807          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
808              # if specifying a year by itself or a year and month where the day is not
809              # significant.
810          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
811              # a year.
812        },
813      },
814      "projectId": "A String", # The ID of the Google Cloud Platform Project that owns the job.
815      "lastModificationTime": "A String", # Output only. The time that the transfer job was last modified.
816      "creationTime": "A String", # Output only. The time that the transfer job was created.
817      "name": "A String", # A globally unique name assigned by Storage Transfer Service when the
818          # job is created. This field should be left empty in requests to create a new
819          # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
820          # error.
821      "description": "A String", # A description provided by the user for the job. Its max length is 1024
822          # bytes when Unicode-encoded.
823    }</pre>
824</div>
825
826<div class="method">
827    <code class="details" id="list">list(pageSize=None, pageToken=None, x__xgafv=None, filter=None)</code>
828  <pre>Lists transfer jobs.
829
830Args:
831  pageSize: integer, The list page size. The max allowed value is 256.
832  pageToken: string, The list page token.
833  x__xgafv: string, V1 error format.
834    Allowed values
835      1 - v1 error format
836      2 - v2 error format
837  filter: string, Required. A list of query parameters specified as JSON text in the form of:
838{"project_id":"my_project_id",
839 "job_names":["jobid1","jobid2",...],
840 "job_statuses":["status1","status2",...]}.
841Since `job_names` and `job_statuses` support multiple values, their values
842must be specified with array notation. `project_id` is required.
843`job_names` and `job_statuses` are optional.  The valid values for
844`job_statuses` are case-insensitive: `ENABLED`, `DISABLED`, and `DELETED`.
845
846Returns:
847  An object of the form:
848
849    { # Response from ListTransferJobs.
850    "nextPageToken": "A String", # The list next page token.
851    "transferJobs": [ # A list of transfer jobs.
852      { # This resource represents the configuration of a transfer job that runs
853            # periodically.
854          "transferSpec": { # Configuration for running a transfer. # Transfer specification.
855            "objectConditions": { # Conditions that determine which objects will be transferred. Applies only # Only objects that satisfy these object conditions are included in the set
856                # of data source and data sink objects.  Object conditions based on
857                # objects' `lastModificationTime` do not exclude objects in a data sink.
858                # to S3 and GCS objects.
859              "maxTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` on or after
860                  # `NOW` - `maxTimeElapsedSinceLastModification` and objects that don't have
861                  # a `lastModificationTime` are transferred.
862                  #
863                  # Note that, for each `TransferOperation` started by this `TransferJob`,
864                  # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
865                  # `lastModificationTime` refers to the time of the last change to the
866                  # object's content or metadata - specifically, this would be the `updated`
867                  # property of GCS objects and the `LastModified` field of S3 objects.
868              "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object
869                  # conditions must have names that start with one of the `includePrefixes`
870                  # and that do not start with any of the `excludePrefixes`. If
871                  # `includePrefixes` is not specified, all objects except those that have
872                  # names starting with one of the `excludePrefixes` must satisfy the object
873                  # conditions.
874                  #
875                  # Requirements:
876                  #
877                  #   * Each include-prefix and exclude-prefix can contain any sequence of
878                  #     Unicode characters, of max length 1024 bytes when UTF8-encoded, and
879                  #     must not contain Carriage Return or Line Feed characters.  Wildcard
880                  #     matching and regular expression matching are not supported.
881                  #
882                  #   * Each include-prefix and exclude-prefix must omit the leading slash.
883                  #     For example, to include the `requests.gz` object in a transfer from
884                  #     `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
885                  #     prefix as `logs/y=2015/requests.gz`.
886                  #
887                  #   * None of the include-prefix or the exclude-prefix values can be empty,
888                  #     if specified.
889                  #
890                  #   * Each include-prefix must include a distinct portion of the object
891                  #     namespace, i.e., no include-prefix may be a prefix of another
892                  #     include-prefix.
893                  #
894                  #   * Each exclude-prefix must exclude a distinct portion of the object
895                  #     namespace, i.e., no exclude-prefix may be a prefix of another
896                  #     exclude-prefix.
897                  #
898                  #   * If `includePrefixes` is specified, then each exclude-prefix must start
899                  #     with the value of a path explicitly included by `includePrefixes`.
900                  #
901                  # The max size of `includePrefixes` is 1000.
902                "A String",
903              ],
904              "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for
905                  # `includePrefixes`.
906                  #
907                  # The max size of `excludePrefixes` is 1000.
908                "A String",
909              ],
910              "minTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` before
911                  # `NOW` - `minTimeElapsedSinceLastModification` and objects that don't have a
912                  # `lastModificationTime` are transferred.
913                  #
914                  # Note that, for each `TransferOperation` started by this `TransferJob`,
915                  # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
916                  # `lastModificationTime` refers to the time of the last change to the
917                  # object's content or metadata - specifically, this would be the `updated`
918                  # property of GCS objects and the `LastModified` field of S3 objects.
919            },
920            "gcsDataSource": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data source.
921                # name and its `lastModificationTime` refers to the object's updated time,
922                # which changes when the content or the metadata of the object is updated.
923              "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
924                  # [Bucket Name
925                  # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
926            },
927            "httpDataSource": { # An HttpData resource specifies a list of objects on the web to be transferred # An HTTP URL data source.
928                # over HTTP.  The information of the objects to be transferred is contained in
929                # a file referenced by a URL. The first line in the file must be
930                # "TsvHttpData-1.0", which specifies the format of the file.  Subsequent lines
931                # specify the information of the list of objects, one object per list entry.
932                # Each entry has the following tab-delimited fields:
933                #
934                # * HTTP URL - The location of the object.
935                #
936                # * Length - The size of the object in bytes.
937                #
938                # * MD5 - The base64-encoded MD5 hash of the object.
939                #
940                # For an example of a valid TSV file, see
941                # [Transferring data from
942                # URLs](https://cloud.google.com/storage/transfer/create-url-list).
943                #
944                # When transferring data based on a URL list, keep the following in mind:
945                #
946                # * When an object located at `http(s)://hostname:port/<URL-path>` is
947                # transferred to a data sink, the name of the object at the data sink is
948                # `<hostname>/<URL-path>`.
949                #
950                # * If the specified size of an object does not match the actual size of the
951                # object fetched, the object will not be transferred.
952                #
953                # * If the specified MD5 does not match the MD5 computed from the transferred
954                # bytes, the object transfer will fail. For more information, see
955                # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
956                #
957                # * Ensure that each URL you specify is publicly accessible. For
958                # example, in Google Cloud Storage you can
959                # [share an object publicly]
960                # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
961                # a link to it.
962                #
963                # * Storage Transfer Service obeys `robots.txt` rules and requires the source
964                # HTTP server to support `Range` requests and to return a `Content-Length`
965                # header in each response.
966                #
967                # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
968                # to transfer.
969              "listUrl": "A String", # Required. The URL that points to the file that stores the object list
970                  # entries. This file must allow public access.  Currently, only URLs with
971                  # HTTP and HTTPS schemes are supported.
972            },
973            "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions
974                # based on objects' `lastModificationTime` are ignored and do not exclude
975                # objects in a data source or a data sink.
976                # to be performed on objects in a transfer.
977              "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed.
978              "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are
979                  # transferred to the sink.  Note that this option and
980                  # `deleteObjectsUniqueInSink` are mutually exclusive.
981              "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted.  Note that
982                  # this option and `deleteObjectsFromSourceAfterTransfer` are mutually
983                  # exclusive.
984            },
985            "gcsDataSink": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data sink.
986                # name and its `lastModificationTime` refers to the object's updated time,
987                # which changes when the content or the metadata of the object is updated.
988              "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
989                  # [Bucket Name
990                  # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
991            },
992            "awsS3DataSource": { # An AwsS3Data resource can be a data source, but not a data sink. # An AWS S3 data source.
993                # In an AwsS3Data resource, an object's name is the S3 object's key name.
994              "awsAccessKey": { # AWS access key (see # Required. AWS access key used to sign the API requests to the AWS S3
995                  # bucket. Permissions on the bucket must be granted to the access ID of the
996                  # AWS access key.
997                  # [AWS Security
998                  # Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).
999                "secretAccessKey": "A String", # Required. AWS secret access key. This field is not returned in RPC
1000                    # responses.
1001                "accessKeyId": "A String", # Required. AWS access key ID.
1002              },
1003              "bucketName": "A String", # Required. S3 Bucket name (see
1004                  # [Creating a
1005                  # bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).
1006            },
1007          },
1008          "status": "A String", # Status of the job. This value MUST be specified for
1009              # `CreateTransferJobRequests`.
1010              #
1011              # NOTE: The effect of the new job status takes place during a subsequent job
1012              # run. For example, if you change the job status from `ENABLED` to
1013              # `DISABLED`, and an operation spawned by the transfer is running, the status
1014              # change would not affect the current operation.
1015          "deletionTime": "A String", # Output only. The time that the transfer job was deleted.
1016          "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification.
1017            "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.
1018                # Transfers may start later than this time. If not specified, recurring and
1019                # one-time transfers that are scheduled to run today will run immediately;
1020                # recurring transfers that are scheduled to run on a future date will start
1021                # at approximately midnight UTC on that date. Note that when configuring a
1022                # transfer with the Cloud Platform Console, the transfer's start time in a
1023                # day is specified in your local timezone.
1024                # or are specified elsewhere. An API may choose to allow leap seconds. Related
1025                # types are google.type.Date and `google.protobuf.Timestamp`.
1026              "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
1027                  # to allow the value "24:00:00" for scenarios like business closing time.
1028              "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1029              "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
1030                  # allow the value 60 if it allows leap-seconds.
1031              "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
1032            },
1033            "scheduleStartDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # Required. The first day the recurring transfer is scheduled to run. If
1034                # `scheduleStartDate` is in the past, the transfer will run for the first
1035                # time on the following day.
1036                # and time zone are either specified elsewhere or are not significant. The date
1037                # is relative to the Proleptic Gregorian Calendar. This can represent:
1038                #
1039                # * A full date, with non-zero year, month and day values
1040                # * A month and day value, with a zero year, e.g. an anniversary
1041                # * A year on its own, with zero month and day values
1042                # * A year and month value, with a zero day, e.g. a credit card expiration date
1043                #
1044                # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
1045              "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
1046                  # month and day.
1047              "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1048                  # if specifying a year by itself or a year and month where the day is not
1049                  # significant.
1050              "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1051                  # a year.
1052            },
1053            "scheduleEndDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # The last day the recurring transfer will be run. If `scheduleEndDate`
1054                # is the same as `scheduleStartDate`, the transfer will be executed only
1055                # once.
1056                # and time zone are either specified elsewhere or are not significant. The date
1057                # is relative to the Proleptic Gregorian Calendar. This can represent:
1058                #
1059                # * A full date, with non-zero year, month and day values
1060                # * A month and day value, with a zero year, e.g. an anniversary
1061                # * A year on its own, with zero month and day values
1062                # * A year and month value, with a zero day, e.g. a credit card expiration date
1063                #
1064                # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
1065              "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
1066                  # month and day.
1067              "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1068                  # if specifying a year by itself or a year and month where the day is not
1069                  # significant.
1070              "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1071                  # a year.
1072            },
1073          },
1074          "projectId": "A String", # The ID of the Google Cloud Platform Project that owns the job.
1075          "lastModificationTime": "A String", # Output only. The time that the transfer job was last modified.
1076          "creationTime": "A String", # Output only. The time that the transfer job was created.
1077          "name": "A String", # A globally unique name assigned by Storage Transfer Service when the
1078              # job is created. This field should be left empty in requests to create a new
1079              # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
1080              # error.
1081          "description": "A String", # A description provided by the user for the job. Its max length is 1024
1082              # bytes when Unicode-encoded.
1083        },
1084    ],
1085  }</pre>
1086</div>
1087
1088<div class="method">
1089    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
1090  <pre>Retrieves the next page of results.
1091
1092Args:
1093  previous_request: The request for the previous page. (required)
1094  previous_response: The response from the request for the previous page. (required)
1095
1096Returns:
1097  A request object that you can call 'execute()' on to request the next
1098  page. Returns None if there are no more items in the collection.
1099    </pre>
1100</div>
1101
1102<div class="method">
1103    <code class="details" id="patch">patch(jobName, body, x__xgafv=None)</code>
1104  <pre>Updates a transfer job. Updating a job's transfer spec does not affect
1105transfer operations that are running already. Updating the scheduling
1106of a job is not allowed.
1107
1108Args:
1109  jobName: string, Required. The name of job to update. (required)
1110  body: object, The request body. (required)
1111    The object takes the form of:
1112
1113{ # Request passed to UpdateTransferJob.
1114    "projectId": "A String", # Required. The ID of the Google Cloud Platform Console project that owns the
1115        # job.
1116    "updateTransferJobFieldMask": "A String", # The field mask of the fields in `transferJob` that are to be updated in
1117        # this request.  Fields in `transferJob` that can be updated are:
1118        # `description`, `transferSpec`, and `status`.  To update the `transferSpec`
1119        # of the job, a complete transfer specification has to be provided. An
1120        # incomplete specification which misses any required fields will be rejected
1121        # with the error `INVALID_ARGUMENT`.
1122    "transferJob": { # This resource represents the configuration of a transfer job that runs # Required. The job to update. `transferJob` is expected to specify only
1123        # three fields: `description`, `transferSpec`, and `status`.  An
1124        # UpdateTransferJobRequest that specifies other fields will be rejected with
1125        # an error `INVALID_ARGUMENT`.
1126          # periodically.
1127        "transferSpec": { # Configuration for running a transfer. # Transfer specification.
1128          "objectConditions": { # Conditions that determine which objects will be transferred. Applies only # Only objects that satisfy these object conditions are included in the set
1129              # of data source and data sink objects.  Object conditions based on
1130              # objects' `lastModificationTime` do not exclude objects in a data sink.
1131              # to S3 and GCS objects.
1132            "maxTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` on or after
1133                # `NOW` - `maxTimeElapsedSinceLastModification` and objects that don't have
1134                # a `lastModificationTime` are transferred.
1135                #
1136                # Note that, for each `TransferOperation` started by this `TransferJob`,
1137                # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
1138                # `lastModificationTime` refers to the time of the last change to the
1139                # object's content or metadata - specifically, this would be the `updated`
1140                # property of GCS objects and the `LastModified` field of S3 objects.
1141            "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object
1142                # conditions must have names that start with one of the `includePrefixes`
1143                # and that do not start with any of the `excludePrefixes`. If
1144                # `includePrefixes` is not specified, all objects except those that have
1145                # names starting with one of the `excludePrefixes` must satisfy the object
1146                # conditions.
1147                #
1148                # Requirements:
1149                #
1150                #   * Each include-prefix and exclude-prefix can contain any sequence of
1151                #     Unicode characters, of max length 1024 bytes when UTF8-encoded, and
1152                #     must not contain Carriage Return or Line Feed characters.  Wildcard
1153                #     matching and regular expression matching are not supported.
1154                #
1155                #   * Each include-prefix and exclude-prefix must omit the leading slash.
1156                #     For example, to include the `requests.gz` object in a transfer from
1157                #     `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
1158                #     prefix as `logs/y=2015/requests.gz`.
1159                #
1160                #   * None of the include-prefix or the exclude-prefix values can be empty,
1161                #     if specified.
1162                #
1163                #   * Each include-prefix must include a distinct portion of the object
1164                #     namespace, i.e., no include-prefix may be a prefix of another
1165                #     include-prefix.
1166                #
1167                #   * Each exclude-prefix must exclude a distinct portion of the object
1168                #     namespace, i.e., no exclude-prefix may be a prefix of another
1169                #     exclude-prefix.
1170                #
1171                #   * If `includePrefixes` is specified, then each exclude-prefix must start
1172                #     with the value of a path explicitly included by `includePrefixes`.
1173                #
1174                # The max size of `includePrefixes` is 1000.
1175              "A String",
1176            ],
1177            "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for
1178                # `includePrefixes`.
1179                #
1180                # The max size of `excludePrefixes` is 1000.
1181              "A String",
1182            ],
1183            "minTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` before
1184                # `NOW` - `minTimeElapsedSinceLastModification` and objects that don't have a
1185                # `lastModificationTime` are transferred.
1186                #
1187                # Note that, for each `TransferOperation` started by this `TransferJob`,
1188                # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
1189                # `lastModificationTime` refers to the time of the last change to the
1190                # object's content or metadata - specifically, this would be the `updated`
1191                # property of GCS objects and the `LastModified` field of S3 objects.
1192          },
1193          "gcsDataSource": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data source.
1194              # name and its `lastModificationTime` refers to the object's updated time,
1195              # which changes when the content or the metadata of the object is updated.
1196            "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
1197                # [Bucket Name
1198                # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
1199          },
1200          "httpDataSource": { # An HttpData resource specifies a list of objects on the web to be transferred # An HTTP URL data source.
1201              # over HTTP.  The information of the objects to be transferred is contained in
1202              # a file referenced by a URL. The first line in the file must be
1203              # "TsvHttpData-1.0", which specifies the format of the file.  Subsequent lines
1204              # specify the information of the list of objects, one object per list entry.
1205              # Each entry has the following tab-delimited fields:
1206              #
1207              # * HTTP URL - The location of the object.
1208              #
1209              # * Length - The size of the object in bytes.
1210              #
1211              # * MD5 - The base64-encoded MD5 hash of the object.
1212              #
1213              # For an example of a valid TSV file, see
1214              # [Transferring data from
1215              # URLs](https://cloud.google.com/storage/transfer/create-url-list).
1216              #
1217              # When transferring data based on a URL list, keep the following in mind:
1218              #
1219              # * When an object located at `http(s)://hostname:port/<URL-path>` is
1220              # transferred to a data sink, the name of the object at the data sink is
1221              # `<hostname>/<URL-path>`.
1222              #
1223              # * If the specified size of an object does not match the actual size of the
1224              # object fetched, the object will not be transferred.
1225              #
1226              # * If the specified MD5 does not match the MD5 computed from the transferred
1227              # bytes, the object transfer will fail. For more information, see
1228              # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
1229              #
1230              # * Ensure that each URL you specify is publicly accessible. For
1231              # example, in Google Cloud Storage you can
1232              # [share an object publicly]
1233              # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
1234              # a link to it.
1235              #
1236              # * Storage Transfer Service obeys `robots.txt` rules and requires the source
1237              # HTTP server to support `Range` requests and to return a `Content-Length`
1238              # header in each response.
1239              #
1240              # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
1241              # to transfer.
1242            "listUrl": "A String", # Required. The URL that points to the file that stores the object list
1243                # entries. This file must allow public access.  Currently, only URLs with
1244                # HTTP and HTTPS schemes are supported.
1245          },
1246          "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions
1247              # based on objects' `lastModificationTime` are ignored and do not exclude
1248              # objects in a data source or a data sink.
1249              # to be performed on objects in a transfer.
1250            "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed.
1251            "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are
1252                # transferred to the sink.  Note that this option and
1253                # `deleteObjectsUniqueInSink` are mutually exclusive.
1254            "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted.  Note that
1255                # this option and `deleteObjectsFromSourceAfterTransfer` are mutually
1256                # exclusive.
1257          },
1258          "gcsDataSink": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data sink.
1259              # name and its `lastModificationTime` refers to the object's updated time,
1260              # which changes when the content or the metadata of the object is updated.
1261            "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
1262                # [Bucket Name
1263                # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
1264          },
1265          "awsS3DataSource": { # An AwsS3Data resource can be a data source, but not a data sink. # An AWS S3 data source.
1266              # In an AwsS3Data resource, an object's name is the S3 object's key name.
1267            "awsAccessKey": { # AWS access key (see # Required. AWS access key used to sign the API requests to the AWS S3
1268                # bucket. Permissions on the bucket must be granted to the access ID of the
1269                # AWS access key.
1270                # [AWS Security
1271                # Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).
1272              "secretAccessKey": "A String", # Required. AWS secret access key. This field is not returned in RPC
1273                  # responses.
1274              "accessKeyId": "A String", # Required. AWS access key ID.
1275            },
1276            "bucketName": "A String", # Required. S3 Bucket name (see
1277                # [Creating a
1278                # bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).
1279          },
1280        },
1281        "status": "A String", # Status of the job. This value MUST be specified for
1282            # `CreateTransferJobRequests`.
1283            #
1284            # NOTE: The effect of the new job status takes place during a subsequent job
1285            # run. For example, if you change the job status from `ENABLED` to
1286            # `DISABLED`, and an operation spawned by the transfer is running, the status
1287            # change would not affect the current operation.
1288        "deletionTime": "A String", # Output only. The time that the transfer job was deleted.
1289        "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification.
1290          "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.
1291              # Transfers may start later than this time. If not specified, recurring and
1292              # one-time transfers that are scheduled to run today will run immediately;
1293              # recurring transfers that are scheduled to run on a future date will start
1294              # at approximately midnight UTC on that date. Note that when configuring a
1295              # transfer with the Cloud Platform Console, the transfer's start time in a
1296              # day is specified in your local timezone.
1297              # or are specified elsewhere. An API may choose to allow leap seconds. Related
1298              # types are google.type.Date and `google.protobuf.Timestamp`.
1299            "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
1300                # to allow the value "24:00:00" for scenarios like business closing time.
1301            "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1302            "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
1303                # allow the value 60 if it allows leap-seconds.
1304            "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
1305          },
1306          "scheduleStartDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # Required. The first day the recurring transfer is scheduled to run. If
1307              # `scheduleStartDate` is in the past, the transfer will run for the first
1308              # time on the following day.
1309              # and time zone are either specified elsewhere or are not significant. The date
1310              # is relative to the Proleptic Gregorian Calendar. This can represent:
1311              #
1312              # * A full date, with non-zero year, month and day values
1313              # * A month and day value, with a zero year, e.g. an anniversary
1314              # * A year on its own, with zero month and day values
1315              # * A year and month value, with a zero day, e.g. a credit card expiration date
1316              #
1317              # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
1318            "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
1319                # month and day.
1320            "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1321                # if specifying a year by itself or a year and month where the day is not
1322                # significant.
1323            "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1324                # a year.
1325          },
1326          "scheduleEndDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # The last day the recurring transfer will be run. If `scheduleEndDate`
1327              # is the same as `scheduleStartDate`, the transfer will be executed only
1328              # once.
1329              # and time zone are either specified elsewhere or are not significant. The date
1330              # is relative to the Proleptic Gregorian Calendar. This can represent:
1331              #
1332              # * A full date, with non-zero year, month and day values
1333              # * A month and day value, with a zero year, e.g. an anniversary
1334              # * A year on its own, with zero month and day values
1335              # * A year and month value, with a zero day, e.g. a credit card expiration date
1336              #
1337              # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
1338            "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
1339                # month and day.
1340            "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1341                # if specifying a year by itself or a year and month where the day is not
1342                # significant.
1343            "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1344                # a year.
1345          },
1346        },
1347        "projectId": "A String", # The ID of the Google Cloud Platform Project that owns the job.
1348        "lastModificationTime": "A String", # Output only. The time that the transfer job was last modified.
1349        "creationTime": "A String", # Output only. The time that the transfer job was created.
1350        "name": "A String", # A globally unique name assigned by Storage Transfer Service when the
1351            # job is created. This field should be left empty in requests to create a new
1352            # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
1353            # error.
1354        "description": "A String", # A description provided by the user for the job. Its max length is 1024
1355            # bytes when Unicode-encoded.
1356      },
1357  }
1358
1359  x__xgafv: string, V1 error format.
1360    Allowed values
1361      1 - v1 error format
1362      2 - v2 error format
1363
1364Returns:
1365  An object of the form:
1366
1367    { # This resource represents the configuration of a transfer job that runs
1368        # periodically.
1369      "transferSpec": { # Configuration for running a transfer. # Transfer specification.
1370        "objectConditions": { # Conditions that determine which objects will be transferred. Applies only # Only objects that satisfy these object conditions are included in the set
1371            # of data source and data sink objects.  Object conditions based on
1372            # objects' `lastModificationTime` do not exclude objects in a data sink.
1373            # to S3 and GCS objects.
1374          "maxTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` on or after
1375              # `NOW` - `maxTimeElapsedSinceLastModification` and objects that don't have
1376              # a `lastModificationTime` are transferred.
1377              #
1378              # Note that, for each `TransferOperation` started by this `TransferJob`,
1379              # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
1380              # `lastModificationTime` refers to the time of the last change to the
1381              # object's content or metadata - specifically, this would be the `updated`
1382              # property of GCS objects and the `LastModified` field of S3 objects.
1383          "includePrefixes": [ # If `includePrefixes` is specified, objects that satisfy the object
1384              # conditions must have names that start with one of the `includePrefixes`
1385              # and that do not start with any of the `excludePrefixes`. If
1386              # `includePrefixes` is not specified, all objects except those that have
1387              # names starting with one of the `excludePrefixes` must satisfy the object
1388              # conditions.
1389              #
1390              # Requirements:
1391              #
1392              #   * Each include-prefix and exclude-prefix can contain any sequence of
1393              #     Unicode characters, of max length 1024 bytes when UTF8-encoded, and
1394              #     must not contain Carriage Return or Line Feed characters.  Wildcard
1395              #     matching and regular expression matching are not supported.
1396              #
1397              #   * Each include-prefix and exclude-prefix must omit the leading slash.
1398              #     For example, to include the `requests.gz` object in a transfer from
1399              #     `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
1400              #     prefix as `logs/y=2015/requests.gz`.
1401              #
1402              #   * None of the include-prefix or the exclude-prefix values can be empty,
1403              #     if specified.
1404              #
1405              #   * Each include-prefix must include a distinct portion of the object
1406              #     namespace, i.e., no include-prefix may be a prefix of another
1407              #     include-prefix.
1408              #
1409              #   * Each exclude-prefix must exclude a distinct portion of the object
1410              #     namespace, i.e., no exclude-prefix may be a prefix of another
1411              #     exclude-prefix.
1412              #
1413              #   * If `includePrefixes` is specified, then each exclude-prefix must start
1414              #     with the value of a path explicitly included by `includePrefixes`.
1415              #
1416              # The max size of `includePrefixes` is 1000.
1417            "A String",
1418          ],
1419          "excludePrefixes": [ # `excludePrefixes` must follow the requirements described for
1420              # `includePrefixes`.
1421              #
1422              # The max size of `excludePrefixes` is 1000.
1423            "A String",
1424          ],
1425          "minTimeElapsedSinceLastModification": "A String", # If specified, only objects with a `lastModificationTime` before
1426              # `NOW` - `minTimeElapsedSinceLastModification` and objects that don't have a
1427              # `lastModificationTime` are transferred.
1428              #
1429              # Note that, for each `TransferOperation` started by this `TransferJob`,
1430              # `NOW` refers to the `start_time` of the 'TransferOperation`. Also,
1431              # `lastModificationTime` refers to the time of the last change to the
1432              # object's content or metadata - specifically, this would be the `updated`
1433              # property of GCS objects and the `LastModified` field of S3 objects.
1434        },
1435        "gcsDataSource": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data source.
1436            # name and its `lastModificationTime` refers to the object's updated time,
1437            # which changes when the content or the metadata of the object is updated.
1438          "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
1439              # [Bucket Name
1440              # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
1441        },
1442        "httpDataSource": { # An HttpData resource specifies a list of objects on the web to be transferred # An HTTP URL data source.
1443            # over HTTP.  The information of the objects to be transferred is contained in
1444            # a file referenced by a URL. The first line in the file must be
1445            # "TsvHttpData-1.0", which specifies the format of the file.  Subsequent lines
1446            # specify the information of the list of objects, one object per list entry.
1447            # Each entry has the following tab-delimited fields:
1448            #
1449            # * HTTP URL - The location of the object.
1450            #
1451            # * Length - The size of the object in bytes.
1452            #
1453            # * MD5 - The base64-encoded MD5 hash of the object.
1454            #
1455            # For an example of a valid TSV file, see
1456            # [Transferring data from
1457            # URLs](https://cloud.google.com/storage/transfer/create-url-list).
1458            #
1459            # When transferring data based on a URL list, keep the following in mind:
1460            #
1461            # * When an object located at `http(s)://hostname:port/<URL-path>` is
1462            # transferred to a data sink, the name of the object at the data sink is
1463            # `<hostname>/<URL-path>`.
1464            #
1465            # * If the specified size of an object does not match the actual size of the
1466            # object fetched, the object will not be transferred.
1467            #
1468            # * If the specified MD5 does not match the MD5 computed from the transferred
1469            # bytes, the object transfer will fail. For more information, see
1470            # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
1471            #
1472            # * Ensure that each URL you specify is publicly accessible. For
1473            # example, in Google Cloud Storage you can
1474            # [share an object publicly]
1475            # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
1476            # a link to it.
1477            #
1478            # * Storage Transfer Service obeys `robots.txt` rules and requires the source
1479            # HTTP server to support `Range` requests and to return a `Content-Length`
1480            # header in each response.
1481            #
1482            # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
1483            # to transfer.
1484          "listUrl": "A String", # Required. The URL that points to the file that stores the object list
1485              # entries. This file must allow public access.  Currently, only URLs with
1486              # HTTP and HTTPS schemes are supported.
1487        },
1488        "transferOptions": { # TransferOptions uses three boolean parameters to define the actions # If the option `deleteObjectsUniqueInSink` is `true`, object conditions
1489            # based on objects' `lastModificationTime` are ignored and do not exclude
1490            # objects in a data source or a data sink.
1491            # to be performed on objects in a transfer.
1492          "overwriteObjectsAlreadyExistingInSink": True or False, # Whether overwriting objects that already exist in the sink is allowed.
1493          "deleteObjectsFromSourceAfterTransfer": True or False, # Whether objects should be deleted from the source after they are
1494              # transferred to the sink.  Note that this option and
1495              # `deleteObjectsUniqueInSink` are mutually exclusive.
1496          "deleteObjectsUniqueInSink": True or False, # Whether objects that exist only in the sink should be deleted.  Note that
1497              # this option and `deleteObjectsFromSourceAfterTransfer` are mutually
1498              # exclusive.
1499        },
1500        "gcsDataSink": { # In a GcsData resource, an object's name is the Google Cloud Storage object's # A Google Cloud Storage data sink.
1501            # name and its `lastModificationTime` refers to the object's updated time,
1502            # which changes when the content or the metadata of the object is updated.
1503          "bucketName": "A String", # Required. Google Cloud Storage bucket name (see
1504              # [Bucket Name
1505              # Requirements](https://cloud.google.com/storage/docs/naming#requirements)).
1506        },
1507        "awsS3DataSource": { # An AwsS3Data resource can be a data source, but not a data sink. # An AWS S3 data source.
1508            # In an AwsS3Data resource, an object's name is the S3 object's key name.
1509          "awsAccessKey": { # AWS access key (see # Required. AWS access key used to sign the API requests to the AWS S3
1510              # bucket. Permissions on the bucket must be granted to the access ID of the
1511              # AWS access key.
1512              # [AWS Security
1513              # Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).
1514            "secretAccessKey": "A String", # Required. AWS secret access key. This field is not returned in RPC
1515                # responses.
1516            "accessKeyId": "A String", # Required. AWS access key ID.
1517          },
1518          "bucketName": "A String", # Required. S3 Bucket name (see
1519              # [Creating a
1520              # bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).
1521        },
1522      },
1523      "status": "A String", # Status of the job. This value MUST be specified for
1524          # `CreateTransferJobRequests`.
1525          #
1526          # NOTE: The effect of the new job status takes place during a subsequent job
1527          # run. For example, if you change the job status from `ENABLED` to
1528          # `DISABLED`, and an operation spawned by the transfer is running, the status
1529          # change would not affect the current operation.
1530      "deletionTime": "A String", # Output only. The time that the transfer job was deleted.
1531      "schedule": { # Transfers can be scheduled to recur or to run just once. # Schedule specification.
1532        "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.
1533            # Transfers may start later than this time. If not specified, recurring and
1534            # one-time transfers that are scheduled to run today will run immediately;
1535            # recurring transfers that are scheduled to run on a future date will start
1536            # at approximately midnight UTC on that date. Note that when configuring a
1537            # transfer with the Cloud Platform Console, the transfer's start time in a
1538            # day is specified in your local timezone.
1539            # or are specified elsewhere. An API may choose to allow leap seconds. Related
1540            # types are google.type.Date and `google.protobuf.Timestamp`.
1541          "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
1542              # to allow the value "24:00:00" for scenarios like business closing time.
1543          "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1544          "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
1545              # allow the value 60 if it allows leap-seconds.
1546          "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
1547        },
1548        "scheduleStartDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # Required. The first day the recurring transfer is scheduled to run. If
1549            # `scheduleStartDate` is in the past, the transfer will run for the first
1550            # time on the following day.
1551            # and time zone are either specified elsewhere or are not significant. The date
1552            # is relative to the Proleptic Gregorian Calendar. This can represent:
1553            #
1554            # * A full date, with non-zero year, month and day values
1555            # * A month and day value, with a zero year, e.g. an anniversary
1556            # * A year on its own, with zero month and day values
1557            # * A year and month value, with a zero day, e.g. a credit card expiration date
1558            #
1559            # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
1560          "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
1561              # month and day.
1562          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1563              # if specifying a year by itself or a year and month where the day is not
1564              # significant.
1565          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1566              # a year.
1567        },
1568        "scheduleEndDate": { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # The last day the recurring transfer will be run. If `scheduleEndDate`
1569            # is the same as `scheduleStartDate`, the transfer will be executed only
1570            # once.
1571            # and time zone are either specified elsewhere or are not significant. The date
1572            # is relative to the Proleptic Gregorian Calendar. This can represent:
1573            #
1574            # * A full date, with non-zero year, month and day values
1575            # * A month and day value, with a zero year, e.g. an anniversary
1576            # * A year on its own, with zero month and day values
1577            # * A year and month value, with a zero day, e.g. a credit card expiration date
1578            #
1579            # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
1580          "month": 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
1581              # month and day.
1582          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
1583              # if specifying a year by itself or a year and month where the day is not
1584              # significant.
1585          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
1586              # a year.
1587        },
1588      },
1589      "projectId": "A String", # The ID of the Google Cloud Platform Project that owns the job.
1590      "lastModificationTime": "A String", # Output only. The time that the transfer job was last modified.
1591      "creationTime": "A String", # Output only. The time that the transfer job was created.
1592      "name": "A String", # A globally unique name assigned by Storage Transfer Service when the
1593          # job is created. This field should be left empty in requests to create a new
1594          # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
1595          # error.
1596      "description": "A String", # A description provided by the user for the job. Its max length is 1024
1597          # bytes when Unicode-encoded.
1598    }</pre>
1599</div>
1600
1601</body></html>