1"""Generated message classes for bigquery version v2.
2
3A data platform for customers to create, manage, share and query data.
4"""
5# NOTE: This file is autogenerated and should not be edited by hand.
6
7from apitools.base.protorpclite import messages as _messages
8from apitools.base.py import encoding
9from apitools.base.py import extra_types
10
11
12package = 'bigquery'
13
14
15class BigqueryDatasetsDeleteRequest(_messages.Message):
16  """A BigqueryDatasetsDeleteRequest object.
17
18  Fields:
19    datasetId: Dataset ID of dataset being deleted
20    deleteContents: If True, delete all the tables in the dataset. If False
21      and the dataset contains tables, the request will fail. Default is False
22    projectId: Project ID of the dataset being deleted
23  """
24
25  datasetId = _messages.StringField(1, required=True)
26  deleteContents = _messages.BooleanField(2)
27  projectId = _messages.StringField(3, required=True)
28
29
30class BigqueryDatasetsDeleteResponse(_messages.Message):
31  """An empty BigqueryDatasetsDelete response."""
32
33
34class BigqueryDatasetsGetRequest(_messages.Message):
35  """A BigqueryDatasetsGetRequest object.
36
37  Fields:
38    datasetId: Dataset ID of the requested dataset
39    projectId: Project ID of the requested dataset
40  """
41
42  datasetId = _messages.StringField(1, required=True)
43  projectId = _messages.StringField(2, required=True)
44
45
46class BigqueryDatasetsInsertRequest(_messages.Message):
47  """A BigqueryDatasetsInsertRequest object.
48
49  Fields:
50    dataset: A Dataset resource to be passed as the request body.
51    projectId: Project ID of the new dataset
52  """
53
54  dataset = _messages.MessageField('Dataset', 1)
55  projectId = _messages.StringField(2, required=True)
56
57
58class BigqueryDatasetsListRequest(_messages.Message):
59  """A BigqueryDatasetsListRequest object.
60
61  Fields:
62    all: Whether to list all datasets, including hidden ones
63    filter: An expression for filtering the results of the request by label.
64      The syntax is "labels.[:]". Multiple filters can be ANDed together by
65      connecting with a space. Example: "labels.department:receiving
66      labels.active". See https://cloud.google.com/bigquery/docs/labeling-
67      datasets#filtering_datasets_using_labels for details.
68    maxResults: The maximum number of results to return
69    pageToken: Page token, returned by a previous call, to request the next
70      page of results
71    projectId: Project ID of the datasets to be listed
72  """
73
74  all = _messages.BooleanField(1)
75  filter = _messages.StringField(2)
76  maxResults = _messages.IntegerField(3, variant=_messages.Variant.UINT32)
77  pageToken = _messages.StringField(4)
78  projectId = _messages.StringField(5, required=True)
79
80
81class BigqueryDatasetsPatchRequest(_messages.Message):
82  """A BigqueryDatasetsPatchRequest object.
83
84  Fields:
85    dataset: A Dataset resource to be passed as the request body.
86    datasetId: Dataset ID of the dataset being updated
87    projectId: Project ID of the dataset being updated
88  """
89
90  dataset = _messages.MessageField('Dataset', 1)
91  datasetId = _messages.StringField(2, required=True)
92  projectId = _messages.StringField(3, required=True)
93
94
95class BigqueryDatasetsUpdateRequest(_messages.Message):
96  """A BigqueryDatasetsUpdateRequest object.
97
98  Fields:
99    dataset: A Dataset resource to be passed as the request body.
100    datasetId: Dataset ID of the dataset being updated
101    projectId: Project ID of the dataset being updated
102  """
103
104  dataset = _messages.MessageField('Dataset', 1)
105  datasetId = _messages.StringField(2, required=True)
106  projectId = _messages.StringField(3, required=True)
107
108
109class BigqueryJobsCancelRequest(_messages.Message):
110  """A BigqueryJobsCancelRequest object.
111
112  Fields:
113    jobId: [Required] Job ID of the job to cancel
114    projectId: [Required] Project ID of the job to cancel
115  """
116
117  jobId = _messages.StringField(1, required=True)
118  projectId = _messages.StringField(2, required=True)
119
120
121class BigqueryJobsGetQueryResultsRequest(_messages.Message):
122  """A BigqueryJobsGetQueryResultsRequest object.
123
124  Fields:
125    jobId: [Required] Job ID of the query job
126    maxResults: Maximum number of results to read
127    pageToken: Page token, returned by a previous call, to request the next
128      page of results
129    projectId: [Required] Project ID of the query job
130    startIndex: Zero-based index of the starting row
131    timeoutMs: How long to wait for the query to complete, in milliseconds,
132      before returning. Default is 10 seconds. If the timeout passes before
133      the job completes, the 'jobComplete' field in the response will be false
134  """
135
136  jobId = _messages.StringField(1, required=True)
137  maxResults = _messages.IntegerField(2, variant=_messages.Variant.UINT32)
138  pageToken = _messages.StringField(3)
139  projectId = _messages.StringField(4, required=True)
140  startIndex = _messages.IntegerField(5, variant=_messages.Variant.UINT64)
141  timeoutMs = _messages.IntegerField(6, variant=_messages.Variant.UINT32)
142
143
144class BigqueryJobsGetRequest(_messages.Message):
145  """A BigqueryJobsGetRequest object.
146
147  Fields:
148    jobId: [Required] Job ID of the requested job
149    projectId: [Required] Project ID of the requested job
150  """
151
152  jobId = _messages.StringField(1, required=True)
153  projectId = _messages.StringField(2, required=True)
154
155
156class BigqueryJobsInsertRequest(_messages.Message):
157  """A BigqueryJobsInsertRequest object.
158
159  Fields:
160    job: A Job resource to be passed as the request body.
161    projectId: Project ID of the project that will be billed for the job
162  """
163
164  job = _messages.MessageField('Job', 1)
165  projectId = _messages.StringField(2, required=True)
166
167
168class BigqueryJobsListRequest(_messages.Message):
169  """A BigqueryJobsListRequest object.
170
171  Enums:
172    ProjectionValueValuesEnum: Restrict information returned to a set of
173      selected fields
174    StateFilterValueValuesEnum: Filter for job state
175
176  Fields:
177    allUsers: Whether to display jobs owned by all users in the project.
178      Default false
179    maxResults: Maximum number of results to return
180    pageToken: Page token, returned by a previous call, to request the next
181      page of results
182    projectId: Project ID of the jobs to list
183    projection: Restrict information returned to a set of selected fields
184    stateFilter: Filter for job state
185  """
186
187  class ProjectionValueValuesEnum(_messages.Enum):
188    """Restrict information returned to a set of selected fields
189
190    Values:
191      full: Includes all job data
192      minimal: Does not include the job configuration
193    """
194    full = 0
195    minimal = 1
196
197  class StateFilterValueValuesEnum(_messages.Enum):
198    """Filter for job state
199
200    Values:
201      done: Finished jobs
202      pending: Pending jobs
203      running: Running jobs
204    """
205    done = 0
206    pending = 1
207    running = 2
208
209  allUsers = _messages.BooleanField(1)
210  maxResults = _messages.IntegerField(2, variant=_messages.Variant.UINT32)
211  pageToken = _messages.StringField(3)
212  projectId = _messages.StringField(4, required=True)
213  projection = _messages.EnumField('ProjectionValueValuesEnum', 5)
214  stateFilter = _messages.EnumField('StateFilterValueValuesEnum', 6, repeated=True)
215
216
217class BigqueryJobsQueryRequest(_messages.Message):
218  """A BigqueryJobsQueryRequest object.
219
220  Fields:
221    projectId: Project ID of the project billed for the query
222    queryRequest: A QueryRequest resource to be passed as the request body.
223  """
224
225  projectId = _messages.StringField(1, required=True)
226  queryRequest = _messages.MessageField('QueryRequest', 2)
227
228
229class BigqueryProjectsListRequest(_messages.Message):
230  """A BigqueryProjectsListRequest object.
231
232  Fields:
233    maxResults: Maximum number of results to return
234    pageToken: Page token, returned by a previous call, to request the next
235      page of results
236  """
237
238  maxResults = _messages.IntegerField(1, variant=_messages.Variant.UINT32)
239  pageToken = _messages.StringField(2)
240
241
242class BigqueryTabledataInsertAllRequest(_messages.Message):
243  """A BigqueryTabledataInsertAllRequest object.
244
245  Fields:
246    datasetId: Dataset ID of the destination table.
247    projectId: Project ID of the destination table.
248    tableDataInsertAllRequest: A TableDataInsertAllRequest resource to be
249      passed as the request body.
250    tableId: Table ID of the destination table.
251  """
252
253  datasetId = _messages.StringField(1, required=True)
254  projectId = _messages.StringField(2, required=True)
255  tableDataInsertAllRequest = _messages.MessageField('TableDataInsertAllRequest', 3)
256  tableId = _messages.StringField(4, required=True)
257
258
259class BigqueryTabledataListRequest(_messages.Message):
260  """A BigqueryTabledataListRequest object.
261
262  Fields:
263    datasetId: Dataset ID of the table to read
264    maxResults: Maximum number of results to return
265    pageToken: Page token, returned by a previous call, identifying the result
266      set
267    projectId: Project ID of the table to read
268    startIndex: Zero-based index of the starting row to read
269    tableId: Table ID of the table to read
270  """
271
272  datasetId = _messages.StringField(1, required=True)
273  maxResults = _messages.IntegerField(2, variant=_messages.Variant.UINT32)
274  pageToken = _messages.StringField(3)
275  projectId = _messages.StringField(4, required=True)
276  startIndex = _messages.IntegerField(5, variant=_messages.Variant.UINT64)
277  tableId = _messages.StringField(6, required=True)
278
279
280class BigqueryTablesDeleteRequest(_messages.Message):
281  """A BigqueryTablesDeleteRequest object.
282
283  Fields:
284    datasetId: Dataset ID of the table to delete
285    projectId: Project ID of the table to delete
286    tableId: Table ID of the table to delete
287  """
288
289  datasetId = _messages.StringField(1, required=True)
290  projectId = _messages.StringField(2, required=True)
291  tableId = _messages.StringField(3, required=True)
292
293
294class BigqueryTablesDeleteResponse(_messages.Message):
295  """An empty BigqueryTablesDelete response."""
296
297
298class BigqueryTablesGetRequest(_messages.Message):
299  """A BigqueryTablesGetRequest object.
300
301  Fields:
302    datasetId: Dataset ID of the requested table
303    projectId: Project ID of the requested table
304    tableId: Table ID of the requested table
305  """
306
307  datasetId = _messages.StringField(1, required=True)
308  projectId = _messages.StringField(2, required=True)
309  tableId = _messages.StringField(3, required=True)
310
311
312class BigqueryTablesInsertRequest(_messages.Message):
313  """A BigqueryTablesInsertRequest object.
314
315  Fields:
316    datasetId: Dataset ID of the new table
317    projectId: Project ID of the new table
318    table: A Table resource to be passed as the request body.
319  """
320
321  datasetId = _messages.StringField(1, required=True)
322  projectId = _messages.StringField(2, required=True)
323  table = _messages.MessageField('Table', 3)
324
325
326class BigqueryTablesListRequest(_messages.Message):
327  """A BigqueryTablesListRequest object.
328
329  Fields:
330    datasetId: Dataset ID of the tables to list
331    maxResults: Maximum number of results to return
332    pageToken: Page token, returned by a previous call, to request the next
333      page of results
334    projectId: Project ID of the tables to list
335  """
336
337  datasetId = _messages.StringField(1, required=True)
338  maxResults = _messages.IntegerField(2, variant=_messages.Variant.UINT32)
339  pageToken = _messages.StringField(3)
340  projectId = _messages.StringField(4, required=True)
341
342
343class BigqueryTablesPatchRequest(_messages.Message):
344  """A BigqueryTablesPatchRequest object.
345
346  Fields:
347    datasetId: Dataset ID of the table to update
348    projectId: Project ID of the table to update
349    table: A Table resource to be passed as the request body.
350    tableId: Table ID of the table to update
351  """
352
353  datasetId = _messages.StringField(1, required=True)
354  projectId = _messages.StringField(2, required=True)
355  table = _messages.MessageField('Table', 3)
356  tableId = _messages.StringField(4, required=True)
357
358
359class BigqueryTablesUpdateRequest(_messages.Message):
360  """A BigqueryTablesUpdateRequest object.
361
362  Fields:
363    datasetId: Dataset ID of the table to update
364    projectId: Project ID of the table to update
365    table: A Table resource to be passed as the request body.
366    tableId: Table ID of the table to update
367  """
368
369  datasetId = _messages.StringField(1, required=True)
370  projectId = _messages.StringField(2, required=True)
371  table = _messages.MessageField('Table', 3)
372  tableId = _messages.StringField(4, required=True)
373
374
375class BigtableColumn(_messages.Message):
376  """A BigtableColumn object.
377
378  Fields:
379    encoding: [Optional] The encoding of the values when the type is not
380      STRING. Acceptable encoding values are: TEXT - indicates values are
381      alphanumeric text strings. BINARY - indicates values are encoded using
382      HBase Bytes.toBytes family of functions. 'encoding' can also be set at
383      the column family level. However, the setting at this level takes
384      precedence if 'encoding' is set at both levels.
385    fieldName: [Optional] If the qualifier is not a valid BigQuery field
386      identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier
387      must be provided as the column field name and is used as field name in
388      queries.
389    onlyReadLatest: [Optional] If this is set, only the latest version of
390      value in this column are exposed. 'onlyReadLatest' can also be set at
391      the column family level. However, the setting at this level takes
392      precedence if 'onlyReadLatest' is set at both levels.
393    qualifierEncoded: [Required] Qualifier of the column. Columns in the
394      parent column family that has this exact qualifier are exposed as .
395      field. If the qualifier is valid UTF-8 string, it can be specified in
396      the qualifier_string field. Otherwise, a base-64 encoded value must be
397      set to qualifier_encoded. The column field name is the same as the
398      column qualifier. However, if the qualifier is not a valid BigQuery
399      field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid
400      identifier must be provided as field_name.
401    qualifierString: A string attribute.
402    type: [Optional] The type to convert the value in cells of this column.
403      The values are expected to be encoded using HBase Bytes.toBytes function
404      when using the BINARY encoding value. Following BigQuery types are
405      allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default
406      type is BYTES. 'type' can also be set at the column family level.
407      However, the setting at this level takes precedence if 'type' is set at
408      both levels.
409  """
410
411  encoding = _messages.StringField(1)
412  fieldName = _messages.StringField(2)
413  onlyReadLatest = _messages.BooleanField(3)
414  qualifierEncoded = _messages.BytesField(4)
415  qualifierString = _messages.StringField(5)
416  type = _messages.StringField(6)
417
418
419class BigtableColumnFamily(_messages.Message):
420  """A BigtableColumnFamily object.
421
422  Fields:
423    columns: [Optional] Lists of columns that should be exposed as individual
424      fields as opposed to a list of (column name, value) pairs. All columns
425      whose qualifier matches a qualifier in this list can be accessed as ..
426      Other columns can be accessed as a list through .Column field.
427    encoding: [Optional] The encoding of the values when the type is not
428      STRING. Acceptable encoding values are: TEXT - indicates values are
429      alphanumeric text strings. BINARY - indicates values are encoded using
430      HBase Bytes.toBytes family of functions. This can be overridden for a
431      specific column by listing that column in 'columns' and specifying an
432      encoding for it.
433    familyId: Identifier of the column family.
434    onlyReadLatest: [Optional] If this is set only the latest version of value
435      are exposed for all columns in this column family. This can be
436      overridden for a specific column by listing that column in 'columns' and
437      specifying a different setting for that column.
438    type: [Optional] The type to convert the value in cells of this column
439      family. The values are expected to be encoded using HBase Bytes.toBytes
440      function when using the BINARY encoding value. Following BigQuery types
441      are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN
442      Default type is BYTES. This can be overridden for a specific column by
443      listing that column in 'columns' and specifying a type for it.
444  """
445
446  columns = _messages.MessageField('BigtableColumn', 1, repeated=True)
447  encoding = _messages.StringField(2)
448  familyId = _messages.StringField(3)
449  onlyReadLatest = _messages.BooleanField(4)
450  type = _messages.StringField(5)
451
452
453class BigtableOptions(_messages.Message):
454  """A BigtableOptions object.
455
456  Fields:
457    columnFamilies: [Optional] List of column families to expose in the table
458      schema along with their types. This list restricts the column families
459      that can be referenced in queries and specifies their value types. You
460      can use this list to do type conversions - see the 'type' field for more
461      details. If you leave this list empty, all column families are present
462      in the table schema and their values are read as BYTES. During a query
463      only the column families referenced in that query are read from
464      Bigtable.
465    ignoreUnspecifiedColumnFamilies: [Optional] If field is true, then the
466      column families that are not specified in columnFamilies list are not
467      exposed in the table schema. Otherwise, they are read with BYTES type
468      values. The default value is false.
469    readRowkeyAsString: [Optional] If field is true, then the rowkey column
470      families will be read and converted to string. Otherwise they are read
471      with BYTES type values and users need to manually cast them with CAST if
472      necessary. The default value is false.
473  """
474
475  columnFamilies = _messages.MessageField('BigtableColumnFamily', 1, repeated=True)
476  ignoreUnspecifiedColumnFamilies = _messages.BooleanField(2)
477  readRowkeyAsString = _messages.BooleanField(3)
478
479
480class CsvOptions(_messages.Message):
481  """A CsvOptions object.
482
483  Fields:
484    allowJaggedRows: [Optional] Indicates if BigQuery should accept rows that
485      are missing trailing optional columns. If true, BigQuery treats missing
486      trailing columns as null values. If false, records with missing trailing
487      columns are treated as bad records, and if there are too many bad
488      records, an invalid error is returned in the job result. The default
489      value is false.
490    allowQuotedNewlines: [Optional] Indicates if BigQuery should allow quoted
491      data sections that contain newline characters in a CSV file. The default
492      value is false.
493    encoding: [Optional] The character encoding of the data. The supported
494      values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery
495      decodes the data after the raw, binary data has been split using the
496      values of the quote and fieldDelimiter properties.
497    fieldDelimiter: [Optional] The separator for fields in a CSV file.
498      BigQuery converts the string to ISO-8859-1 encoding, and then uses the
499      first byte of the encoded string to split the data in its raw, binary
500      state. BigQuery also supports the escape sequence "\t" to specify a tab
501      separator. The default value is a comma (',').
502    quote: [Optional] The value that is used to quote data sections in a CSV
503      file. BigQuery converts the string to ISO-8859-1 encoding, and then uses
504      the first byte of the encoded string to split the data in its raw,
505      binary state. The default value is a double-quote ('"'). If your data
506      does not contain quoted sections, set the property value to an empty
507      string. If your data contains quoted newline characters, you must also
508      set the allowQuotedNewlines property to true.
509    skipLeadingRows: [Optional] The number of rows at the top of a CSV file
510      that BigQuery will skip when reading the data. The default value is 0.
511      This property is useful if you have header rows in the file that should
512      be skipped.
513  """
514
515  allowJaggedRows = _messages.BooleanField(1)
516  allowQuotedNewlines = _messages.BooleanField(2)
517  encoding = _messages.StringField(3)
518  fieldDelimiter = _messages.StringField(4)
519  quote = _messages.StringField(5, default=u'"')
520  skipLeadingRows = _messages.IntegerField(6)
521
522
523class Dataset(_messages.Message):
524  """A Dataset object.
525
526  Messages:
527    AccessValueListEntry: A AccessValueListEntry object.
528    LabelsValue: [Experimental] The labels associated with this dataset. You
529      can use these to organize and group your datasets. You can set this
530      property when inserting or updating a dataset. Label keys and values can
531      be no longer than 63 characters, can only contain letters, numeric
532      characters, underscores and dashes. International characters are
533      allowed. Label values are optional. Label keys must start with a letter
534      and must be unique within a dataset. Both keys and values are
535      additionally constrained to be <= 128 bytes in size.
536
537  Fields:
538    access: [Optional] An array of objects that define dataset access for one
539      or more entities. You can set this property when inserting or updating a
540      dataset in order to control who is allowed to access the data. If
541      unspecified at dataset creation time, BigQuery adds default dataset
542      access for the following entities: access.specialGroup: projectReaders;
543      access.role: READER; access.specialGroup: projectWriters; access.role:
544      WRITER; access.specialGroup: projectOwners; access.role: OWNER;
545      access.userByEmail: [dataset creator email]; access.role: OWNER;
546    creationTime: [Output-only] The time when this dataset was created, in
547      milliseconds since the epoch.
548    datasetReference: [Required] A reference that identifies the dataset.
549    defaultTableExpirationMs: [Optional] The default lifetime of all tables in
550      the dataset, in milliseconds. The minimum value is 3600000 milliseconds
551      (one hour). Once this property is set, all newly-created tables in the
552      dataset will have an expirationTime property set to the creation time
553      plus the value in this property, and changing the value will only affect
554      new tables, not existing ones. When the expirationTime for a given table
555      is reached, that table will be deleted automatically. If a table's
556      expirationTime is modified or removed before the table expires, or if
557      you provide an explicit expirationTime when creating a table, that value
558      takes precedence over the default expiration time indicated by this
559      property.
560    description: [Optional] A user-friendly description of the dataset.
561    etag: [Output-only] A hash of the resource.
562    friendlyName: [Optional] A descriptive name for the dataset.
563    id: [Output-only] The fully-qualified unique name of the dataset in the
564      format projectId:datasetId. The dataset name without the project name is
565      given in the datasetId field. When creating a new dataset, leave this
566      field blank, and instead specify the datasetId field.
567    kind: [Output-only] The resource type.
568    labels: [Experimental] The labels associated with this dataset. You can
569      use these to organize and group your datasets. You can set this property
570      when inserting or updating a dataset. Label keys and values can be no
571      longer than 63 characters, can only contain letters, numeric characters,
572      underscores and dashes. International characters are allowed. Label
573      values are optional. Label keys must start with a letter and must be
574      unique within a dataset. Both keys and values are additionally
575      constrained to be <= 128 bytes in size.
576    lastModifiedTime: [Output-only] The date when this dataset or any of its
577      tables was last modified, in milliseconds since the epoch.
578    location: [Experimental] The geographic location where the dataset should
579      reside. Possible values include EU and US. The default value is US.
580    selfLink: [Output-only] A URL that can be used to access the resource
581      again. You can use this URL in Get or Update requests to the resource.
582  """
583
584  class AccessValueListEntry(_messages.Message):
585    """A AccessValueListEntry object.
586
587    Fields:
588      domain: [Pick one] A domain to grant access to. Any users signed in with
589        the domain specified will be granted the specified access. Example:
590        "example.com".
591      groupByEmail: [Pick one] An email address of a Google Group to grant
592        access to.
593      role: [Required] Describes the rights granted to the user specified by
594        the other member of the access object. The following string values are
595        supported: READER, WRITER, OWNER.
596      specialGroup: [Pick one] A special group to grant access to. Possible
597        values include: projectOwners: Owners of the enclosing project.
598        projectReaders: Readers of the enclosing project. projectWriters:
599        Writers of the enclosing project. allAuthenticatedUsers: All
600        authenticated BigQuery users.
601      userByEmail: [Pick one] An email address of a user to grant access to.
602        For example: fred@example.com.
603      view: [Pick one] A view from a different dataset to grant access to.
604        Queries executed against that view will have read access to tables in
605        this dataset. The role field is not required when this field is set.
606        If that view is updated by any user, access to the view needs to be
607        granted again via an update operation.
608    """
609
610    domain = _messages.StringField(1)
611    groupByEmail = _messages.StringField(2)
612    role = _messages.StringField(3)
613    specialGroup = _messages.StringField(4)
614    userByEmail = _messages.StringField(5)
615    view = _messages.MessageField('TableReference', 6)
616
617  @encoding.MapUnrecognizedFields('additionalProperties')
618  class LabelsValue(_messages.Message):
619    """[Experimental] The labels associated with this dataset. You can use
620    these to organize and group your datasets. You can set this property when
621    inserting or updating a dataset. Label keys and values can be no longer
622    than 63 characters, can only contain letters, numeric characters,
623    underscores and dashes. International characters are allowed. Label values
624    are optional. Label keys must start with a letter and must be unique
625    within a dataset. Both keys and values are additionally constrained to be
626    <= 128 bytes in size.
627
628    Messages:
629      AdditionalProperty: An additional property for a LabelsValue object.
630
631    Fields:
632      additionalProperties: Additional properties of type LabelsValue
633    """
634
635    class AdditionalProperty(_messages.Message):
636      """An additional property for a LabelsValue object.
637
638      Fields:
639        key: Name of the additional property.
640        value: A string attribute.
641      """
642
643      key = _messages.StringField(1)
644      value = _messages.StringField(2)
645
646    additionalProperties = _messages.MessageField('AdditionalProperty', 1, repeated=True)
647
648  access = _messages.MessageField('AccessValueListEntry', 1, repeated=True)
649  creationTime = _messages.IntegerField(2)
650  datasetReference = _messages.MessageField('DatasetReference', 3)
651  defaultTableExpirationMs = _messages.IntegerField(4)
652  description = _messages.StringField(5)
653  etag = _messages.StringField(6)
654  friendlyName = _messages.StringField(7)
655  id = _messages.StringField(8)
656  kind = _messages.StringField(9, default=u'bigquery#dataset')
657  labels = _messages.MessageField('LabelsValue', 10)
658  lastModifiedTime = _messages.IntegerField(11)
659  location = _messages.StringField(12)
660  selfLink = _messages.StringField(13)
661
662
663class DatasetList(_messages.Message):
664  """A DatasetList object.
665
666  Messages:
667    DatasetsValueListEntry: A DatasetsValueListEntry object.
668
669  Fields:
670    datasets: An array of the dataset resources in the project. Each resource
671      contains basic information. For full information about a particular
672      dataset resource, use the Datasets: get method. This property is omitted
673      when there are no datasets in the project.
674    etag: A hash value of the results page. You can use this property to
675      determine if the page has changed since the last request.
676    kind: The list type. This property always returns the value
677      "bigquery#datasetList".
678    nextPageToken: A token that can be used to request the next results page.
679      This property is omitted on the final results page.
680  """
681
682  class DatasetsValueListEntry(_messages.Message):
683    """A DatasetsValueListEntry object.
684
685    Messages:
686      LabelsValue: [Experimental] The labels associated with this dataset. You
687        can use these to organize and group your datasets.
688
689    Fields:
690      datasetReference: The dataset reference. Use this property to access
691        specific parts of the dataset's ID, such as project ID or dataset ID.
692      friendlyName: A descriptive name for the dataset, if one exists.
693      id: The fully-qualified, unique, opaque ID of the dataset.
694      kind: The resource type. This property always returns the value
695        "bigquery#dataset".
696      labels: [Experimental] The labels associated with this dataset. You can
697        use these to organize and group your datasets.
698    """
699
700    @encoding.MapUnrecognizedFields('additionalProperties')
701    class LabelsValue(_messages.Message):
702      """[Experimental] The labels associated with this dataset. You can use
703      these to organize and group your datasets.
704
705      Messages:
706        AdditionalProperty: An additional property for a LabelsValue object.
707
708      Fields:
709        additionalProperties: Additional properties of type LabelsValue
710      """
711
712      class AdditionalProperty(_messages.Message):
713        """An additional property for a LabelsValue object.
714
715        Fields:
716          key: Name of the additional property.
717          value: A string attribute.
718        """
719
720        key = _messages.StringField(1)
721        value = _messages.StringField(2)
722
723      additionalProperties = _messages.MessageField('AdditionalProperty', 1, repeated=True)
724
725    datasetReference = _messages.MessageField('DatasetReference', 1)
726    friendlyName = _messages.StringField(2)
727    id = _messages.StringField(3)
728    kind = _messages.StringField(4, default=u'bigquery#dataset')
729    labels = _messages.MessageField('LabelsValue', 5)
730
731  datasets = _messages.MessageField('DatasetsValueListEntry', 1, repeated=True)
732  etag = _messages.StringField(2)
733  kind = _messages.StringField(3, default=u'bigquery#datasetList')
734  nextPageToken = _messages.StringField(4)
735
736
737class DatasetReference(_messages.Message):
738  """A DatasetReference object.
739
740  Fields:
741    datasetId: [Required] A unique ID for this dataset, without the project
742      name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or
743      underscores (_). The maximum length is 1,024 characters.
744    projectId: [Optional] The ID of the project containing this dataset.
745  """
746
747  datasetId = _messages.StringField(1)
748  projectId = _messages.StringField(2)
749
750
751class ErrorProto(_messages.Message):
752  """A ErrorProto object.
753
754  Fields:
755    debugInfo: Debugging information. This property is internal to Google and
756      should not be used.
757    location: Specifies where the error occurred, if present.
758    message: A human-readable description of the error.
759    reason: A short error code that summarizes the error.
760  """
761
762  debugInfo = _messages.StringField(1)
763  location = _messages.StringField(2)
764  message = _messages.StringField(3)
765  reason = _messages.StringField(4)
766
767
768class ExplainQueryStage(_messages.Message):
769  """A ExplainQueryStage object.
770
771  Fields:
772    computeRatioAvg: Relative amount of time the average shard spent on CPU-
773      bound tasks.
774    computeRatioMax: Relative amount of time the slowest shard spent on CPU-
775      bound tasks.
776    id: Unique ID for stage within plan.
777    name: Human-readable name for stage.
778    readRatioAvg: Relative amount of time the average shard spent reading
779      input.
780    readRatioMax: Relative amount of time the slowest shard spent reading
781      input.
782    recordsRead: Number of records read into the stage.
783    recordsWritten: Number of records written by the stage.
784    steps: List of operations within the stage in dependency order
785      (approximately chronological).
786    waitRatioAvg: Relative amount of time the average shard spent waiting to
787      be scheduled.
788    waitRatioMax: Relative amount of time the slowest shard spent waiting to
789      be scheduled.
790    writeRatioAvg: Relative amount of time the average shard spent on writing
791      output.
792    writeRatioMax: Relative amount of time the slowest shard spent on writing
793      output.
794  """
795
796  computeRatioAvg = _messages.FloatField(1)
797  computeRatioMax = _messages.FloatField(2)
798  id = _messages.IntegerField(3)
799  name = _messages.StringField(4)
800  readRatioAvg = _messages.FloatField(5)
801  readRatioMax = _messages.FloatField(6)
802  recordsRead = _messages.IntegerField(7)
803  recordsWritten = _messages.IntegerField(8)
804  steps = _messages.MessageField('ExplainQueryStep', 9, repeated=True)
805  waitRatioAvg = _messages.FloatField(10)
806  waitRatioMax = _messages.FloatField(11)
807  writeRatioAvg = _messages.FloatField(12)
808  writeRatioMax = _messages.FloatField(13)
809
810
811class ExplainQueryStep(_messages.Message):
812  """A ExplainQueryStep object.
813
814  Fields:
815    kind: Machine-readable operation type.
816    substeps: Human-readable stage descriptions.
817  """
818
819  kind = _messages.StringField(1)
820  substeps = _messages.StringField(2, repeated=True)
821
822
823class ExternalDataConfiguration(_messages.Message):
824  """A ExternalDataConfiguration object.
825
826  Fields:
827    autodetect: [Experimental] Try to detect schema and format options
828      automatically. Any option specified explicitly will be honored.
829    bigtableOptions: [Optional] Additional options if sourceFormat is set to
830      BIGTABLE.
831    compression: [Optional] The compression type of the data source. Possible
832      values include GZIP and NONE. The default value is NONE. This setting is
833      ignored for Google Cloud Bigtable, Google Cloud Datastore backups and
834      Avro formats.
835    csvOptions: Additional properties to set if sourceFormat is set to CSV.
836    googleSheetsOptions: [Optional] Additional options if sourceFormat is set
837      to GOOGLE_SHEETS.
838    ignoreUnknownValues: [Optional] Indicates if BigQuery should allow extra
839      values that are not represented in the table schema. If true, the extra
840      values are ignored. If false, records with extra columns are treated as
841      bad records, and if there are too many bad records, an invalid error is
842      returned in the job result. The default value is false. The sourceFormat
843      property determines what BigQuery treats as an extra value: CSV:
844      Trailing columns JSON: Named values that don't match any column names
845      Google Cloud Bigtable: This setting is ignored. Google Cloud Datastore
846      backups: This setting is ignored. Avro: This setting is ignored.
847    maxBadRecords: [Optional] The maximum number of bad records that BigQuery
848      can ignore when reading data. If the number of bad records exceeds this
849      value, an invalid error is returned in the job result. The default value
850      is 0, which requires that all records are valid. This setting is ignored
851      for Google Cloud Bigtable, Google Cloud Datastore backups and Avro
852      formats.
853    schema: [Optional] The schema for the data. Schema is required for CSV and
854      JSON formats. Schema is disallowed for Google Cloud Bigtable, Cloud
855      Datastore backups, and Avro formats.
856    sourceFormat: [Required] The data format. For CSV files, specify "CSV".
857      For Google sheets, specify "GOOGLE_SHEETS". For newline-delimited JSON,
858      specify "NEWLINE_DELIMITED_JSON". For Avro files, specify "AVRO". For
859      Google Cloud Datastore backups, specify "DATASTORE_BACKUP".
860      [Experimental] For Google Cloud Bigtable, specify "BIGTABLE". Please
861      note that reading from Google Cloud Bigtable is experimental and has to
862      be enabled for your project. Please contact Google Cloud Support to
863      enable this for your project.
864    sourceUris: [Required] The fully-qualified URIs that point to your data in
865      Google Cloud. For Google Cloud Storage URIs: Each URI can contain one
866      '*' wildcard character and it must come after the 'bucket' name. Size
867      limits related to load jobs apply to external data sources. For Google
868      Cloud Bigtable URIs: Exactly one URI can be specified and it has be a
869      fully specified and valid HTTPS URL for a Google Cloud Bigtable table.
870      For Google Cloud Datastore backups, exactly one URI can be specified,
871      and it must end with '.backup_info'. Also, the '*' wildcard character is
872      not allowed.
873  """
874
875  autodetect = _messages.BooleanField(1)
876  bigtableOptions = _messages.MessageField('BigtableOptions', 2)
877  compression = _messages.StringField(3)
878  csvOptions = _messages.MessageField('CsvOptions', 4)
879  googleSheetsOptions = _messages.MessageField('GoogleSheetsOptions', 5)
880  ignoreUnknownValues = _messages.BooleanField(6)
881  maxBadRecords = _messages.IntegerField(7, variant=_messages.Variant.INT32)
882  schema = _messages.MessageField('TableSchema', 8)
883  sourceFormat = _messages.StringField(9)
884  sourceUris = _messages.StringField(10, repeated=True)
885
886
887class GetQueryResultsResponse(_messages.Message):
888  """A GetQueryResultsResponse object.
889
890  Fields:
891    cacheHit: Whether the query result was fetched from the query cache.
892    errors: [Output-only] All errors and warnings encountered during the
893      running of the job. Errors here do not necessarily mean that the job has
894      completed or was unsuccessful.
895    etag: A hash of this response.
896    jobComplete: Whether the query has completed or not. If rows or totalRows
897      are present, this will always be true. If this is false, totalRows will
898      not be available.
899    jobReference: Reference to the BigQuery Job that was created to run the
900      query. This field will be present even if the original request timed
901      out, in which case GetQueryResults can be used to read the results once
902      the query has completed. Since this API only returns the first page of
903      results, subsequent pages can be fetched via the same mechanism
904      (GetQueryResults).
905    kind: The resource type of the response.
906    numDmlAffectedRows: [Output-only, Experimental] The number of rows
907      affected by a DML statement. Present only for DML statements INSERT,
908      UPDATE or DELETE.
909    pageToken: A token used for paging results.
910    rows: An object with as many results as can be contained within the
911      maximum permitted reply size. To get any additional rows, you can call
912      GetQueryResults and specify the jobReference returned above. Present
913      only when the query completes successfully.
914    schema: The schema of the results. Present only when the query completes
915      successfully.
916    totalBytesProcessed: The total number of bytes processed for this query.
917    totalRows: The total number of rows in the complete query result set,
918      which can be more than the number of rows in this single page of
919      results. Present only when the query completes successfully.
920  """
921
922  cacheHit = _messages.BooleanField(1)
923  errors = _messages.MessageField('ErrorProto', 2, repeated=True)
924  etag = _messages.StringField(3)
925  jobComplete = _messages.BooleanField(4)
926  jobReference = _messages.MessageField('JobReference', 5)
927  kind = _messages.StringField(6, default=u'bigquery#getQueryResultsResponse')
928  numDmlAffectedRows = _messages.IntegerField(7)
929  pageToken = _messages.StringField(8)
930  rows = _messages.MessageField('TableRow', 9, repeated=True)
931  schema = _messages.MessageField('TableSchema', 10)
932  totalBytesProcessed = _messages.IntegerField(11)
933  totalRows = _messages.IntegerField(12, variant=_messages.Variant.UINT64)
934
935
936class GoogleSheetsOptions(_messages.Message):
937  """A GoogleSheetsOptions object.
938
939  Fields:
940    skipLeadingRows: [Optional] The number of rows at the top of a sheet that
941      BigQuery will skip when reading the data. The default value is 0. This
942      property is useful if you have header rows that should be skipped. When
943      autodetect is on, behavior is the following: * skipLeadingRows
944      unspecified - Autodetect tries to detect headers in the first row. If
945      they are not detected, the row is read as data. Otherwise data is read
946      starting from the second row. * skipLeadingRows is 0 - Instructs
947      autodetect that there are no headers and data should be read starting
948      from the first row. * skipLeadingRows = N > 0 - Autodetect skips N-1
949      rows and tries to detect headers in row N. If headers are not detected,
950      row N is just skipped. Otherwise row N is used to extract column names
951      for the detected schema.
952  """
953
954  skipLeadingRows = _messages.IntegerField(1)
955
956
957class Job(_messages.Message):
958  """A Job object.
959
960  Fields:
961    configuration: [Required] Describes the job configuration.
962    etag: [Output-only] A hash of this resource.
963    id: [Output-only] Opaque ID field of the job
964    jobReference: [Optional] Reference describing the unique-per-user name of
965      the job.
966    kind: [Output-only] The type of the resource.
967    selfLink: [Output-only] A URL that can be used to access this resource
968      again.
969    statistics: [Output-only] Information about the job, including starting
970      time and ending time of the job.
971    status: [Output-only] The status of this job. Examine this value when
972      polling an asynchronous job to see if the job is complete.
973    user_email: [Output-only] Email address of the user who ran the job.
974  """
975
976  configuration = _messages.MessageField('JobConfiguration', 1)
977  etag = _messages.StringField(2)
978  id = _messages.StringField(3)
979  jobReference = _messages.MessageField('JobReference', 4)
980  kind = _messages.StringField(5, default=u'bigquery#job')
981  selfLink = _messages.StringField(6)
982  statistics = _messages.MessageField('JobStatistics', 7)
983  status = _messages.MessageField('JobStatus', 8)
984  user_email = _messages.StringField(9)
985
986
987class JobCancelResponse(_messages.Message):
988  """A JobCancelResponse object.
989
990  Fields:
991    job: The final state of the job.
992    kind: The resource type of the response.
993  """
994
995  job = _messages.MessageField('Job', 1)
996  kind = _messages.StringField(2, default=u'bigquery#jobCancelResponse')
997
998
999class JobConfiguration(_messages.Message):
1000  """A JobConfiguration object.
1001
1002  Fields:
1003    copy: [Pick one] Copies a table.
1004    dryRun: [Optional] If set, don't actually run this job. A valid query will
1005      return a mostly empty response with some processing statistics, while an
1006      invalid query will return the same error it would if it wasn't a dry
1007      run. Behavior of non-query jobs is undefined.
1008    extract: [Pick one] Configures an extract job.
1009    load: [Pick one] Configures a load job.
1010    query: [Pick one] Configures a query job.
1011  """
1012
1013  copy = _messages.MessageField('JobConfigurationTableCopy', 1)
1014  dryRun = _messages.BooleanField(2)
1015  extract = _messages.MessageField('JobConfigurationExtract', 3)
1016  load = _messages.MessageField('JobConfigurationLoad', 4)
1017  query = _messages.MessageField('JobConfigurationQuery', 5)
1018
1019
1020class JobConfigurationExtract(_messages.Message):
1021  """A JobConfigurationExtract object.
1022
1023  Fields:
1024    compression: [Optional] The compression type to use for exported files.
1025      Possible values include GZIP and NONE. The default value is NONE.
1026    destinationFormat: [Optional] The exported file format. Possible values
1027      include CSV, NEWLINE_DELIMITED_JSON and AVRO. The default value is CSV.
1028      Tables with nested or repeated fields cannot be exported as CSV.
1029    destinationUri: [Pick one] DEPRECATED: Use destinationUris instead,
1030      passing only one URI as necessary. The fully-qualified Google Cloud
1031      Storage URI where the extracted table should be written.
1032    destinationUris: [Pick one] A list of fully-qualified Google Cloud Storage
1033      URIs where the extracted table should be written.
1034    fieldDelimiter: [Optional] Delimiter to use between fields in the exported
1035      data. Default is ','
1036    printHeader: [Optional] Whether to print out a header row in the results.
1037      Default is true.
1038    sourceTable: [Required] A reference to the table being exported.
1039  """
1040
1041  compression = _messages.StringField(1)
1042  destinationFormat = _messages.StringField(2)
1043  destinationUri = _messages.StringField(3)
1044  destinationUris = _messages.StringField(4, repeated=True)
1045  fieldDelimiter = _messages.StringField(5)
1046  printHeader = _messages.BooleanField(6, default=True)
1047  sourceTable = _messages.MessageField('TableReference', 7)
1048
1049
1050class JobConfigurationLoad(_messages.Message):
1051  """A JobConfigurationLoad object.
1052
1053  Fields:
1054    allowJaggedRows: [Optional] Accept rows that are missing trailing optional
1055      columns. The missing values are treated as nulls. If false, records with
1056      missing trailing columns are treated as bad records, and if there are
1057      too many bad records, an invalid error is returned in the job result.
1058      The default value is false. Only applicable to CSV, ignored for other
1059      formats.
1060    allowQuotedNewlines: Indicates if BigQuery should allow quoted data
1061      sections that contain newline characters in a CSV file. The default
1062      value is false.
1063    autodetect: [Experimental] Indicates if we should automatically infer the
1064      options and schema for CSV and JSON sources.
1065    createDisposition: [Optional] Specifies whether the job is allowed to
1066      create new tables. The following values are supported: CREATE_IF_NEEDED:
1067      If the table does not exist, BigQuery creates the table. CREATE_NEVER:
1068      The table must already exist. If it does not, a 'notFound' error is
1069      returned in the job result. The default value is CREATE_IF_NEEDED.
1070      Creation, truncation and append actions occur as one atomic update upon
1071      job completion.
1072    destinationTable: [Required] The destination table to load the data into.
1073    encoding: [Optional] The character encoding of the data. The supported
1074      values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery
1075      decodes the data after the raw, binary data has been split using the
1076      values of the quote and fieldDelimiter properties.
1077    fieldDelimiter: [Optional] The separator for fields in a CSV file. The
1078      separator can be any ISO-8859-1 single-byte character. To use a
1079      character in the range 128-255, you must encode the character as UTF8.
1080      BigQuery converts the string to ISO-8859-1 encoding, and then uses the
1081      first byte of the encoded string to split the data in its raw, binary
1082      state. BigQuery also supports the escape sequence "\t" to specify a tab
1083      separator. The default value is a comma (',').
1084    ignoreUnknownValues: [Optional] Indicates if BigQuery should allow extra
1085      values that are not represented in the table schema. If true, the extra
1086      values are ignored. If false, records with extra columns are treated as
1087      bad records, and if there are too many bad records, an invalid error is
1088      returned in the job result. The default value is false. The sourceFormat
1089      property determines what BigQuery treats as an extra value: CSV:
1090      Trailing columns JSON: Named values that don't match any column names
1091    maxBadRecords: [Optional] The maximum number of bad records that BigQuery
1092      can ignore when running the job. If the number of bad records exceeds
1093      this value, an invalid error is returned in the job result. The default
1094      value is 0, which requires that all records are valid.
1095    projectionFields: [Experimental] If sourceFormat is set to
1096      "DATASTORE_BACKUP", indicates which entity properties to load into
1097      BigQuery from a Cloud Datastore backup. Property names are case
1098      sensitive and must be top-level properties. If no properties are
1099      specified, BigQuery loads all properties. If any named property isn't
1100      found in the Cloud Datastore backup, an invalid error is returned in the
1101      job result.
1102    quote: [Optional] The value that is used to quote data sections in a CSV
1103      file. BigQuery converts the string to ISO-8859-1 encoding, and then uses
1104      the first byte of the encoded string to split the data in its raw,
1105      binary state. The default value is a double-quote ('"'). If your data
1106      does not contain quoted sections, set the property value to an empty
1107      string. If your data contains quoted newline characters, you must also
1108      set the allowQuotedNewlines property to true.
1109    schema: [Optional] The schema for the destination table. The schema can be
1110      omitted if the destination table already exists, or if you're loading
1111      data from Google Cloud Datastore.
1112    schemaInline: [Deprecated] The inline schema. For CSV schemas, specify as
1113      "Field1:Type1[,Field2:Type2]*". For example, "foo:STRING, bar:INTEGER,
1114      baz:FLOAT".
1115    schemaInlineFormat: [Deprecated] The format of the schemaInline property.
1116    schemaUpdateOptions: [Experimental] Allows the schema of the desitination
1117      table to be updated as a side effect of the load job. Schema update
1118      options are supported in two cases: when writeDisposition is
1119      WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the
1120      destination table is a partition of a table, specified by partition
1121      decorators. For normal tables, WRITE_TRUNCATE will always overwrite the
1122      schema. One or more of the following values are specified:
1123      ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema.
1124      ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original
1125      schema to nullable.
1126    skipLeadingRows: [Optional] The number of rows at the top of a CSV file
1127      that BigQuery will skip when loading the data. The default value is 0.
1128      This property is useful if you have header rows in the file that should
1129      be skipped.
1130    sourceFormat: [Optional] The format of the data files. For CSV files,
1131      specify "CSV". For datastore backups, specify "DATASTORE_BACKUP". For
1132      newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro,
1133      specify "AVRO". The default value is CSV.
1134    sourceUris: [Required] The fully-qualified URIs that point to your data in
1135      Google Cloud Storage. Each URI can contain one '*' wildcard character
1136      and it must come after the 'bucket' name.
1137    writeDisposition: [Optional] Specifies the action that occurs if the
1138      destination table already exists. The following values are supported:
1139      WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the
1140      table data. WRITE_APPEND: If the table already exists, BigQuery appends
1141      the data to the table. WRITE_EMPTY: If the table already exists and
1142      contains data, a 'duplicate' error is returned in the job result. The
1143      default value is WRITE_APPEND. Each action is atomic and only occurs if
1144      BigQuery is able to complete the job successfully. Creation, truncation
1145      and append actions occur as one atomic update upon job completion.
1146  """
1147
1148  allowJaggedRows = _messages.BooleanField(1)
1149  allowQuotedNewlines = _messages.BooleanField(2)
1150  autodetect = _messages.BooleanField(3)
1151  createDisposition = _messages.StringField(4)
1152  destinationTable = _messages.MessageField('TableReference', 5)
1153  encoding = _messages.StringField(6)
1154  fieldDelimiter = _messages.StringField(7)
1155  ignoreUnknownValues = _messages.BooleanField(8)
1156  maxBadRecords = _messages.IntegerField(9, variant=_messages.Variant.INT32)
1157  projectionFields = _messages.StringField(10, repeated=True)
1158  quote = _messages.StringField(11, default=u'"')
1159  schema = _messages.MessageField('TableSchema', 12)
1160  schemaInline = _messages.StringField(13)
1161  schemaInlineFormat = _messages.StringField(14)
1162  schemaUpdateOptions = _messages.StringField(15, repeated=True)
1163  skipLeadingRows = _messages.IntegerField(16, variant=_messages.Variant.INT32)
1164  sourceFormat = _messages.StringField(17)
1165  sourceUris = _messages.StringField(18, repeated=True)
1166  writeDisposition = _messages.StringField(19)
1167
1168
1169class JobConfigurationQuery(_messages.Message):
1170  """A JobConfigurationQuery object.
1171
1172  Messages:
1173    TableDefinitionsValue: [Optional] If querying an external data source
1174      outside of BigQuery, describes the data format, location and other
1175      properties of the data source. By defining these properties, the data
1176      source can then be queried as if it were a standard BigQuery table.
1177
1178  Fields:
1179    allowLargeResults: If true, allows the query to produce arbitrarily large
1180      result tables at a slight cost in performance. Requires destinationTable
1181      to be set.
1182    createDisposition: [Optional] Specifies whether the job is allowed to
1183      create new tables. The following values are supported: CREATE_IF_NEEDED:
1184      If the table does not exist, BigQuery creates the table. CREATE_NEVER:
1185      The table must already exist. If it does not, a 'notFound' error is
1186      returned in the job result. The default value is CREATE_IF_NEEDED.
1187      Creation, truncation and append actions occur as one atomic update upon
1188      job completion.
1189    defaultDataset: [Optional] Specifies the default dataset to use for
1190      unqualified table names in the query.
1191    destinationTable: [Optional] Describes the table where the query results
1192      should be stored. If not present, a new table will be created to store
1193      the results.
1194    flattenResults: [Optional] Flattens all nested and repeated fields in the
1195      query results. The default value is true. allowLargeResults must be true
1196      if this is set to false.
1197    maximumBillingTier: [Optional] Limits the billing tier for this job.
1198      Queries that have resource usage beyond this tier will fail (without
1199      incurring a charge). If unspecified, this will be set to your project
1200      default.
1201    maximumBytesBilled: [Optional] Limits the bytes billed for this job.
1202      Queries that will have bytes billed beyond this limit will fail (without
1203      incurring a charge). If unspecified, this will be set to your project
1204      default.
1205    preserveNulls: [Deprecated] This property is deprecated.
1206    priority: [Optional] Specifies a priority for the query. Possible values
1207      include INTERACTIVE and BATCH. The default value is INTERACTIVE.
1208    query: [Required] BigQuery SQL query to execute.
1209    schemaUpdateOptions: [Experimental] Allows the schema of the desitination
1210      table to be updated as a side effect of the query job. Schema update
1211      options are supported in two cases: when writeDisposition is
1212      WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the
1213      destination table is a partition of a table, specified by partition
1214      decorators. For normal tables, WRITE_TRUNCATE will always overwrite the
1215      schema. One or more of the following values are specified:
1216      ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema.
1217      ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original
1218      schema to nullable.
1219    tableDefinitions: [Optional] If querying an external data source outside
1220      of BigQuery, describes the data format, location and other properties of
1221      the data source. By defining these properties, the data source can then
1222      be queried as if it were a standard BigQuery table.
1223    useLegacySql: [Experimental] Specifies whether to use BigQuery's legacy
1224      SQL dialect for this query. The default value is true. If set to false,
1225      the query will use BigQuery's standard SQL:
1226      https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is
1227      set to false, the values of allowLargeResults and flattenResults are
1228      ignored; query will be run as if allowLargeResults is true and
1229      flattenResults is false.
1230    useQueryCache: [Optional] Whether to look for the result in the query
1231      cache. The query cache is a best-effort cache that will be flushed
1232      whenever tables in the query are modified. Moreover, the query cache is
1233      only available when a query does not have a destination table specified.
1234      The default value is true.
1235    userDefinedFunctionResources: [Experimental] Describes user-defined
1236      function resources used in the query.
1237    writeDisposition: [Optional] Specifies the action that occurs if the
1238      destination table already exists. The following values are supported:
1239      WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the
1240      table data. WRITE_APPEND: If the table already exists, BigQuery appends
1241      the data to the table. WRITE_EMPTY: If the table already exists and
1242      contains data, a 'duplicate' error is returned in the job result. The
1243      default value is WRITE_EMPTY. Each action is atomic and only occurs if
1244      BigQuery is able to complete the job successfully. Creation, truncation
1245      and append actions occur as one atomic update upon job completion.
1246  """
1247
1248  @encoding.MapUnrecognizedFields('additionalProperties')
1249  class TableDefinitionsValue(_messages.Message):
1250    """[Optional] If querying an external data source outside of BigQuery,
1251    describes the data format, location and other properties of the data
1252    source. By defining these properties, the data source can then be queried
1253    as if it were a standard BigQuery table.
1254
1255    Messages:
1256      AdditionalProperty: An additional property for a TableDefinitionsValue
1257        object.
1258
1259    Fields:
1260      additionalProperties: Additional properties of type
1261        TableDefinitionsValue
1262    """
1263
1264    class AdditionalProperty(_messages.Message):
1265      """An additional property for a TableDefinitionsValue object.
1266
1267      Fields:
1268        key: Name of the additional property.
1269        value: A ExternalDataConfiguration attribute.
1270      """
1271
1272      key = _messages.StringField(1)
1273      value = _messages.MessageField('ExternalDataConfiguration', 2)
1274
1275    additionalProperties = _messages.MessageField('AdditionalProperty', 1, repeated=True)
1276
1277  allowLargeResults = _messages.BooleanField(1)
1278  createDisposition = _messages.StringField(2)
1279  defaultDataset = _messages.MessageField('DatasetReference', 3)
1280  destinationTable = _messages.MessageField('TableReference', 4)
1281  flattenResults = _messages.BooleanField(5, default=True)
1282  maximumBillingTier = _messages.IntegerField(6, variant=_messages.Variant.INT32, default=1)
1283  maximumBytesBilled = _messages.IntegerField(7)
1284  preserveNulls = _messages.BooleanField(8)
1285  priority = _messages.StringField(9)
1286  query = _messages.StringField(10)
1287  schemaUpdateOptions = _messages.StringField(11, repeated=True)
1288  tableDefinitions = _messages.MessageField('TableDefinitionsValue', 12)
1289  useLegacySql = _messages.BooleanField(13)
1290  useQueryCache = _messages.BooleanField(14, default=True)
1291  userDefinedFunctionResources = _messages.MessageField('UserDefinedFunctionResource', 15, repeated=True)
1292  writeDisposition = _messages.StringField(16)
1293
1294
1295class JobConfigurationTableCopy(_messages.Message):
1296  """A JobConfigurationTableCopy object.
1297
1298  Fields:
1299    createDisposition: [Optional] Specifies whether the job is allowed to
1300      create new tables. The following values are supported: CREATE_IF_NEEDED:
1301      If the table does not exist, BigQuery creates the table. CREATE_NEVER:
1302      The table must already exist. If it does not, a 'notFound' error is
1303      returned in the job result. The default value is CREATE_IF_NEEDED.
1304      Creation, truncation and append actions occur as one atomic update upon
1305      job completion.
1306    destinationTable: [Required] The destination table
1307    sourceTable: [Pick one] Source table to copy.
1308    sourceTables: [Pick one] Source tables to copy.
1309    writeDisposition: [Optional] Specifies the action that occurs if the
1310      destination table already exists. The following values are supported:
1311      WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the
1312      table data. WRITE_APPEND: If the table already exists, BigQuery appends
1313      the data to the table. WRITE_EMPTY: If the table already exists and
1314      contains data, a 'duplicate' error is returned in the job result. The
1315      default value is WRITE_EMPTY. Each action is atomic and only occurs if
1316      BigQuery is able to complete the job successfully. Creation, truncation
1317      and append actions occur as one atomic update upon job completion.
1318  """
1319
1320  createDisposition = _messages.StringField(1)
1321  destinationTable = _messages.MessageField('TableReference', 2)
1322  sourceTable = _messages.MessageField('TableReference', 3)
1323  sourceTables = _messages.MessageField('TableReference', 4, repeated=True)
1324  writeDisposition = _messages.StringField(5)
1325
1326
1327class JobList(_messages.Message):
1328  """A JobList object.
1329
1330  Messages:
1331    JobsValueListEntry: A JobsValueListEntry object.
1332
1333  Fields:
1334    etag: A hash of this page of results.
1335    jobs: List of jobs that were requested.
1336    kind: The resource type of the response.
1337    nextPageToken: A token to request the next page of results.
1338  """
1339
1340  class JobsValueListEntry(_messages.Message):
1341    """A JobsValueListEntry object.
1342
1343    Fields:
1344      configuration: [Full-projection-only] Specifies the job configuration.
1345      errorResult: A result object that will be present only if the job has
1346        failed.
1347      id: Unique opaque ID of the job.
1348      jobReference: Job reference uniquely identifying the job.
1349      kind: The resource type.
1350      state: Running state of the job. When the state is DONE, errorResult can
1351        be checked to determine whether the job succeeded or failed.
1352      statistics: [Output-only] Information about the job, including starting
1353        time and ending time of the job.
1354      status: [Full-projection-only] Describes the state of the job.
1355      user_email: [Full-projection-only] Email address of the user who ran the
1356        job.
1357    """
1358
1359    configuration = _messages.MessageField('JobConfiguration', 1)
1360    errorResult = _messages.MessageField('ErrorProto', 2)
1361    id = _messages.StringField(3)
1362    jobReference = _messages.MessageField('JobReference', 4)
1363    kind = _messages.StringField(5, default=u'bigquery#job')
1364    state = _messages.StringField(6)
1365    statistics = _messages.MessageField('JobStatistics', 7)
1366    status = _messages.MessageField('JobStatus', 8)
1367    user_email = _messages.StringField(9)
1368
1369  etag = _messages.StringField(1)
1370  jobs = _messages.MessageField('JobsValueListEntry', 2, repeated=True)
1371  kind = _messages.StringField(3, default=u'bigquery#jobList')
1372  nextPageToken = _messages.StringField(4)
1373
1374
1375class JobReference(_messages.Message):
1376  """A JobReference object.
1377
1378  Fields:
1379    jobId: [Required] The ID of the job. The ID must contain only letters
1380      (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). The maximum
1381      length is 1,024 characters.
1382    projectId: [Required] The ID of the project containing this job.
1383  """
1384
1385  jobId = _messages.StringField(1)
1386  projectId = _messages.StringField(2)
1387
1388
1389class JobStatistics(_messages.Message):
1390  """A JobStatistics object.
1391
1392  Fields:
1393    creationTime: [Output-only] Creation time of this job, in milliseconds
1394      since the epoch. This field will be present on all jobs.
1395    endTime: [Output-only] End time of this job, in milliseconds since the
1396      epoch. This field will be present whenever a job is in the DONE state.
1397    extract: [Output-only] Statistics for an extract job.
1398    load: [Output-only] Statistics for a load job.
1399    query: [Output-only] Statistics for a query job.
1400    startTime: [Output-only] Start time of this job, in milliseconds since the
1401      epoch. This field will be present when the job transitions from the
1402      PENDING state to either RUNNING or DONE.
1403    totalBytesProcessed: [Output-only] [Deprecated] Use the bytes processed in
1404      the query statistics instead.
1405  """
1406
1407  creationTime = _messages.IntegerField(1)
1408  endTime = _messages.IntegerField(2)
1409  extract = _messages.MessageField('JobStatistics4', 3)
1410  load = _messages.MessageField('JobStatistics3', 4)
1411  query = _messages.MessageField('JobStatistics2', 5)
1412  startTime = _messages.IntegerField(6)
1413  totalBytesProcessed = _messages.IntegerField(7)
1414
1415
1416class JobStatistics2(_messages.Message):
1417  """A JobStatistics2 object.
1418
1419  Fields:
1420    billingTier: [Output-only] Billing tier for the job.
1421    cacheHit: [Output-only] Whether the query result was fetched from the
1422      query cache.
1423    numDmlAffectedRows: [Output-only, Experimental] The number of rows
1424      affected by a DML statement. Present only for DML statements INSERT,
1425      UPDATE or DELETE.
1426    queryPlan: [Output-only, Experimental] Describes execution plan for the
1427      query.
1428    referencedTables: [Output-only, Experimental] Referenced tables for the
1429      job. Queries that reference more than 50 tables will not have a complete
1430      list.
1431    schema: [Output-only, Experimental] The schema of the results. Present
1432      only for successful dry run of non-legacy SQL queries.
1433    totalBytesBilled: [Output-only] Total bytes billed for the job.
1434    totalBytesProcessed: [Output-only] Total bytes processed for the job.
1435  """
1436
1437  billingTier = _messages.IntegerField(1, variant=_messages.Variant.INT32)
1438  cacheHit = _messages.BooleanField(2)
1439  numDmlAffectedRows = _messages.IntegerField(3)
1440  queryPlan = _messages.MessageField('ExplainQueryStage', 4, repeated=True)
1441  referencedTables = _messages.MessageField('TableReference', 5, repeated=True)
1442  schema = _messages.MessageField('TableSchema', 6)
1443  totalBytesBilled = _messages.IntegerField(7)
1444  totalBytesProcessed = _messages.IntegerField(8)
1445
1446
1447class JobStatistics3(_messages.Message):
1448  """A JobStatistics3 object.
1449
1450  Fields:
1451    inputFileBytes: [Output-only] Number of bytes of source data in a load
1452      job.
1453    inputFiles: [Output-only] Number of source files in a load job.
1454    outputBytes: [Output-only] Size of the loaded data in bytes. Note that
1455      while a load job is in the running state, this value may change.
1456    outputRows: [Output-only] Number of rows imported in a load job. Note that
1457      while an import job is in the running state, this value may change.
1458  """
1459
1460  inputFileBytes = _messages.IntegerField(1)
1461  inputFiles = _messages.IntegerField(2)
1462  outputBytes = _messages.IntegerField(3)
1463  outputRows = _messages.IntegerField(4)
1464
1465
1466class JobStatistics4(_messages.Message):
1467  """A JobStatistics4 object.
1468
1469  Fields:
1470    destinationUriFileCounts: [Output-only] Number of files per destination
1471      URI or URI pattern specified in the extract configuration. These values
1472      will be in the same order as the URIs specified in the 'destinationUris'
1473      field.
1474  """
1475
1476  destinationUriFileCounts = _messages.IntegerField(1, repeated=True)
1477
1478
1479class JobStatus(_messages.Message):
1480  """A JobStatus object.
1481
1482  Fields:
1483    errorResult: [Output-only] Final error result of the job. If present,
1484      indicates that the job has completed and was unsuccessful.
1485    errors: [Output-only] All errors encountered during the running of the
1486      job. Errors here do not necessarily mean that the job has completed or
1487      was unsuccessful.
1488    state: [Output-only] Running state of the job.
1489  """
1490
1491  errorResult = _messages.MessageField('ErrorProto', 1)
1492  errors = _messages.MessageField('ErrorProto', 2, repeated=True)
1493  state = _messages.StringField(3)
1494
1495
1496@encoding.MapUnrecognizedFields('additionalProperties')
1497class JsonObject(_messages.Message):
1498  """Represents a single JSON object.
1499
1500  Messages:
1501    AdditionalProperty: An additional property for a JsonObject object.
1502
1503  Fields:
1504    additionalProperties: Additional properties of type JsonObject
1505  """
1506
1507  class AdditionalProperty(_messages.Message):
1508    """An additional property for a JsonObject object.
1509
1510    Fields:
1511      key: Name of the additional property.
1512      value: A JsonValue attribute.
1513    """
1514
1515    key = _messages.StringField(1)
1516    value = _messages.MessageField('JsonValue', 2)
1517
1518  additionalProperties = _messages.MessageField('AdditionalProperty', 1, repeated=True)
1519
1520
1521JsonValue = extra_types.JsonValue
1522
1523
1524class ProjectList(_messages.Message):
1525  """A ProjectList object.
1526
1527  Messages:
1528    ProjectsValueListEntry: A ProjectsValueListEntry object.
1529
1530  Fields:
1531    etag: A hash of the page of results
1532    kind: The type of list.
1533    nextPageToken: A token to request the next page of results.
1534    projects: Projects to which you have at least READ access.
1535    totalItems: The total number of projects in the list.
1536  """
1537
1538  class ProjectsValueListEntry(_messages.Message):
1539    """A ProjectsValueListEntry object.
1540
1541    Fields:
1542      friendlyName: A descriptive name for this project.
1543      id: An opaque ID of this project.
1544      kind: The resource type.
1545      numericId: The numeric ID of this project.
1546      projectReference: A unique reference to this project.
1547    """
1548
1549    friendlyName = _messages.StringField(1)
1550    id = _messages.StringField(2)
1551    kind = _messages.StringField(3, default=u'bigquery#project')
1552    numericId = _messages.IntegerField(4, variant=_messages.Variant.UINT64)
1553    projectReference = _messages.MessageField('ProjectReference', 5)
1554
1555  etag = _messages.StringField(1)
1556  kind = _messages.StringField(2, default=u'bigquery#projectList')
1557  nextPageToken = _messages.StringField(3)
1558  projects = _messages.MessageField('ProjectsValueListEntry', 4, repeated=True)
1559  totalItems = _messages.IntegerField(5, variant=_messages.Variant.INT32)
1560
1561
1562class ProjectReference(_messages.Message):
1563  """A ProjectReference object.
1564
1565  Fields:
1566    projectId: [Required] ID of the project. Can be either the numeric ID or
1567      the assigned ID of the project.
1568  """
1569
1570  projectId = _messages.StringField(1)
1571
1572
1573class QueryRequest(_messages.Message):
1574  """A QueryRequest object.
1575
1576  Fields:
1577    defaultDataset: [Optional] Specifies the default datasetId and projectId
1578      to assume for any unqualified table names in the query. If not set, all
1579      table names in the query string must be qualified in the format
1580      'datasetId.tableId'.
1581    dryRun: [Optional] If set to true, BigQuery doesn't run the job. Instead,
1582      if the query is valid, BigQuery returns statistics about the job such as
1583      how many bytes would be processed. If the query is invalid, an error
1584      returns. The default value is false.
1585    kind: The resource type of the request.
1586    maxResults: [Optional] The maximum number of rows of data to return per
1587      page of results. Setting this flag to a small value such as 1000 and
1588      then paging through results might improve reliability when the query
1589      result set is large. In addition to this limit, responses are also
1590      limited to 10 MB. By default, there is no maximum row count, and only
1591      the byte limit applies.
1592    preserveNulls: [Deprecated] This property is deprecated.
1593    query: [Required] A query string, following the BigQuery query syntax, of
1594      the query to execute. Example: "SELECT count(f1) FROM
1595      [myProjectId:myDatasetId.myTableId]".
1596    timeoutMs: [Optional] How long to wait for the query to complete, in
1597      milliseconds, before the request times out and returns. Note that this
1598      is only a timeout for the request, not the query. If the query takes
1599      longer to run than the timeout value, the call returns without any
1600      results and with the 'jobComplete' flag set to false. You can call
1601      GetQueryResults() to wait for the query to complete and read the
1602      results. The default value is 10000 milliseconds (10 seconds).
1603    useLegacySql: [Experimental] Specifies whether to use BigQuery's legacy
1604      SQL dialect for this query. The default value is true. If set to false,
1605      the query will use BigQuery's standard SQL:
1606      https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is
1607      set to false, the values of allowLargeResults and flattenResults are
1608      ignored; query will be run as if allowLargeResults is true and
1609      flattenResults is false.
1610    useQueryCache: [Optional] Whether to look for the result in the query
1611      cache. The query cache is a best-effort cache that will be flushed
1612      whenever tables in the query are modified. The default value is true.
1613  """
1614
1615  defaultDataset = _messages.MessageField('DatasetReference', 1)
1616  dryRun = _messages.BooleanField(2)
1617  kind = _messages.StringField(3, default=u'bigquery#queryRequest')
1618  maxResults = _messages.IntegerField(4, variant=_messages.Variant.UINT32)
1619  preserveNulls = _messages.BooleanField(5)
1620  query = _messages.StringField(6)
1621  timeoutMs = _messages.IntegerField(7, variant=_messages.Variant.UINT32)
1622  useLegacySql = _messages.BooleanField(8)
1623  useQueryCache = _messages.BooleanField(9, default=True)
1624
1625
1626class QueryResponse(_messages.Message):
1627  """A QueryResponse object.
1628
1629  Fields:
1630    cacheHit: Whether the query result was fetched from the query cache.
1631    errors: [Output-only] All errors and warnings encountered during the
1632      running of the job. Errors here do not necessarily mean that the job has
1633      completed or was unsuccessful.
1634    jobComplete: Whether the query has completed or not. If rows or totalRows
1635      are present, this will always be true. If this is false, totalRows will
1636      not be available.
1637    jobReference: Reference to the Job that was created to run the query. This
1638      field will be present even if the original request timed out, in which
1639      case GetQueryResults can be used to read the results once the query has
1640      completed. Since this API only returns the first page of results,
1641      subsequent pages can be fetched via the same mechanism
1642      (GetQueryResults).
1643    kind: The resource type.
1644    numDmlAffectedRows: [Output-only, Experimental] The number of rows
1645      affected by a DML statement. Present only for DML statements INSERT,
1646      UPDATE or DELETE.
1647    pageToken: A token used for paging results.
1648    rows: An object with as many results as can be contained within the
1649      maximum permitted reply size. To get any additional rows, you can call
1650      GetQueryResults and specify the jobReference returned above.
1651    schema: The schema of the results. Present only when the query completes
1652      successfully.
1653    totalBytesProcessed: The total number of bytes processed for this query.
1654      If this query was a dry run, this is the number of bytes that would be
1655      processed if the query were run.
1656    totalRows: The total number of rows in the complete query result set,
1657      which can be more than the number of rows in this single page of
1658      results.
1659  """
1660
1661  cacheHit = _messages.BooleanField(1)
1662  errors = _messages.MessageField('ErrorProto', 2, repeated=True)
1663  jobComplete = _messages.BooleanField(3)
1664  jobReference = _messages.MessageField('JobReference', 4)
1665  kind = _messages.StringField(5, default=u'bigquery#queryResponse')
1666  numDmlAffectedRows = _messages.IntegerField(6)
1667  pageToken = _messages.StringField(7)
1668  rows = _messages.MessageField('TableRow', 8, repeated=True)
1669  schema = _messages.MessageField('TableSchema', 9)
1670  totalBytesProcessed = _messages.IntegerField(10)
1671  totalRows = _messages.IntegerField(11, variant=_messages.Variant.UINT64)
1672
1673
1674class StandardQueryParameters(_messages.Message):
1675  """Query parameters accepted by all methods.
1676
1677  Enums:
1678    AltValueValuesEnum: Data format for the response.
1679
1680  Fields:
1681    alt: Data format for the response.
1682    fields: Selector specifying which fields to include in a partial response.
1683    key: API key. Your API key identifies your project and provides you with
1684      API access, quota, and reports. Required unless you provide an OAuth 2.0
1685      token.
1686    oauth_token: OAuth 2.0 token for the current user.
1687    prettyPrint: Returns response with indentations and line breaks.
1688    quotaUser: Available to use for quota purposes for server-side
1689      applications. Can be any arbitrary string assigned to a user, but should
1690      not exceed 40 characters. Overrides userIp if both are provided.
1691    trace: A tracing token of the form "token:<tokenid>" to include in api
1692      requests.
1693    userIp: IP address of the site where the request originates. Use this if
1694      you want to enforce per-user limits.
1695  """
1696
1697  class AltValueValuesEnum(_messages.Enum):
1698    """Data format for the response.
1699
1700    Values:
1701      json: Responses with Content-Type of application/json
1702    """
1703    json = 0
1704
1705  alt = _messages.EnumField('AltValueValuesEnum', 1, default=u'json')
1706  fields = _messages.StringField(2)
1707  key = _messages.StringField(3)
1708  oauth_token = _messages.StringField(4)
1709  prettyPrint = _messages.BooleanField(5, default=True)
1710  quotaUser = _messages.StringField(6)
1711  trace = _messages.StringField(7)
1712  userIp = _messages.StringField(8)
1713
1714
1715class Streamingbuffer(_messages.Message):
1716  """A Streamingbuffer object.
1717
1718  Fields:
1719    estimatedBytes: [Output-only] A lower-bound estimate of the number of
1720      bytes currently in the streaming buffer.
1721    estimatedRows: [Output-only] A lower-bound estimate of the number of rows
1722      currently in the streaming buffer.
1723    oldestEntryTime: [Output-only] Contains the timestamp of the oldest entry
1724      in the streaming buffer, in milliseconds since the epoch, if the
1725      streaming buffer is available.
1726  """
1727
1728  estimatedBytes = _messages.IntegerField(1, variant=_messages.Variant.UINT64)
1729  estimatedRows = _messages.IntegerField(2, variant=_messages.Variant.UINT64)
1730  oldestEntryTime = _messages.IntegerField(3, variant=_messages.Variant.UINT64)
1731
1732
1733class Table(_messages.Message):
1734  """A Table object.
1735
1736  Fields:
1737    creationTime: [Output-only] The time when this table was created, in
1738      milliseconds since the epoch.
1739    description: [Optional] A user-friendly description of this table.
1740    etag: [Output-only] A hash of this resource.
1741    expirationTime: [Optional] The time when this table expires, in
1742      milliseconds since the epoch. If not present, the table will persist
1743      indefinitely. Expired tables will be deleted and their storage
1744      reclaimed.
1745    externalDataConfiguration: [Optional] Describes the data format, location,
1746      and other properties of a table stored outside of BigQuery. By defining
1747      these properties, the data source can then be queried as if it were a
1748      standard BigQuery table.
1749    friendlyName: [Optional] A descriptive name for this table.
1750    id: [Output-only] An opaque ID uniquely identifying the table.
1751    kind: [Output-only] The type of the resource.
1752    lastModifiedTime: [Output-only] The time when this table was last
1753      modified, in milliseconds since the epoch.
1754    location: [Output-only] The geographic location where the table resides.
1755      This value is inherited from the dataset.
1756    numBytes: [Output-only] The size of this table in bytes, excluding any
1757      data in the streaming buffer.
1758    numLongTermBytes: [Output-only] The number of bytes in the table that are
1759      considered "long-term storage".
1760    numRows: [Output-only] The number of rows of data in this table, excluding
1761      any data in the streaming buffer.
1762    schema: [Optional] Describes the schema of this table.
1763    selfLink: [Output-only] A URL that can be used to access this resource
1764      again.
1765    streamingBuffer: [Output-only] Contains information regarding this table's
1766      streaming buffer, if one is present. This field will be absent if the
1767      table is not being streamed to or if there is no data in the streaming
1768      buffer.
1769    tableReference: [Required] Reference describing the ID of this table.
1770    timePartitioning: [Experimental] If specified, configures time-based
1771      partitioning for this table.
1772    type: [Output-only] Describes the table type. The following values are
1773      supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined
1774      by a SQL query. EXTERNAL: A table that references data stored in an
1775      external storage system, such as Google Cloud Storage. The default value
1776      is TABLE.
1777    view: [Optional] The view definition.
1778  """
1779
1780  creationTime = _messages.IntegerField(1)
1781  description = _messages.StringField(2)
1782  etag = _messages.StringField(3)
1783  expirationTime = _messages.IntegerField(4)
1784  externalDataConfiguration = _messages.MessageField('ExternalDataConfiguration', 5)
1785  friendlyName = _messages.StringField(6)
1786  id = _messages.StringField(7)
1787  kind = _messages.StringField(8, default=u'bigquery#table')
1788  lastModifiedTime = _messages.IntegerField(9, variant=_messages.Variant.UINT64)
1789  location = _messages.StringField(10)
1790  numBytes = _messages.IntegerField(11)
1791  numLongTermBytes = _messages.IntegerField(12)
1792  numRows = _messages.IntegerField(13, variant=_messages.Variant.UINT64)
1793  schema = _messages.MessageField('TableSchema', 14)
1794  selfLink = _messages.StringField(15)
1795  streamingBuffer = _messages.MessageField('Streamingbuffer', 16)
1796  tableReference = _messages.MessageField('TableReference', 17)
1797  timePartitioning = _messages.MessageField('TimePartitioning', 18)
1798  type = _messages.StringField(19)
1799  view = _messages.MessageField('ViewDefinition', 20)
1800
1801
1802class TableCell(_messages.Message):
1803  """A TableCell object.
1804
1805  Fields:
1806    v: A extra_types.JsonValue attribute.
1807  """
1808
1809  v = _messages.MessageField('extra_types.JsonValue', 1)
1810
1811
1812class TableDataInsertAllRequest(_messages.Message):
1813  """A TableDataInsertAllRequest object.
1814
1815  Messages:
1816    RowsValueListEntry: A RowsValueListEntry object.
1817
1818  Fields:
1819    ignoreUnknownValues: [Optional] Accept rows that contain values that do
1820      not match the schema. The unknown values are ignored. Default is false,
1821      which treats unknown values as errors.
1822    kind: The resource type of the response.
1823    rows: The rows to insert.
1824    skipInvalidRows: [Optional] Insert all valid rows of a request, even if
1825      invalid rows exist. The default value is false, which causes the entire
1826      request to fail if any invalid rows exist.
1827    templateSuffix: [Experimental] If specified, treats the destination table
1828      as a base template, and inserts the rows into an instance table named
1829      "{destination}{templateSuffix}". BigQuery will manage creation of the
1830      instance table, using the schema of the base template table. See
1831      https://cloud.google.com/bigquery/streaming-data-into-bigquery#template-
1832      tables for considerations when working with templates tables.
1833  """
1834
1835  class RowsValueListEntry(_messages.Message):
1836    """A RowsValueListEntry object.
1837
1838    Fields:
1839      insertId: [Optional] A unique ID for each row. BigQuery uses this
1840        property to detect duplicate insertion requests on a best-effort
1841        basis.
1842      json: [Required] A JSON object that contains a row of data. The object's
1843        properties and values must match the destination table's schema.
1844    """
1845
1846    insertId = _messages.StringField(1)
1847    json = _messages.MessageField('JsonObject', 2)
1848
1849  ignoreUnknownValues = _messages.BooleanField(1)
1850  kind = _messages.StringField(2, default=u'bigquery#tableDataInsertAllRequest')
1851  rows = _messages.MessageField('RowsValueListEntry', 3, repeated=True)
1852  skipInvalidRows = _messages.BooleanField(4)
1853  templateSuffix = _messages.StringField(5)
1854
1855
1856class TableDataInsertAllResponse(_messages.Message):
1857  """A TableDataInsertAllResponse object.
1858
1859  Messages:
1860    InsertErrorsValueListEntry: A InsertErrorsValueListEntry object.
1861
1862  Fields:
1863    insertErrors: An array of errors for rows that were not inserted.
1864    kind: The resource type of the response.
1865  """
1866
1867  class InsertErrorsValueListEntry(_messages.Message):
1868    """A InsertErrorsValueListEntry object.
1869
1870    Fields:
1871      errors: Error information for the row indicated by the index property.
1872      index: The index of the row that error applies to.
1873    """
1874
1875    errors = _messages.MessageField('ErrorProto', 1, repeated=True)
1876    index = _messages.IntegerField(2, variant=_messages.Variant.UINT32)
1877
1878  insertErrors = _messages.MessageField('InsertErrorsValueListEntry', 1, repeated=True)
1879  kind = _messages.StringField(2, default=u'bigquery#tableDataInsertAllResponse')
1880
1881
1882class TableDataList(_messages.Message):
1883  """A TableDataList object.
1884
1885  Fields:
1886    etag: A hash of this page of results.
1887    kind: The resource type of the response.
1888    pageToken: A token used for paging results. Providing this token instead
1889      of the startIndex parameter can help you retrieve stable results when an
1890      underlying table is changing.
1891    rows: Rows of results.
1892    totalRows: The total number of rows in the complete table.
1893  """
1894
1895  etag = _messages.StringField(1)
1896  kind = _messages.StringField(2, default=u'bigquery#tableDataList')
1897  pageToken = _messages.StringField(3)
1898  rows = _messages.MessageField('TableRow', 4, repeated=True)
1899  totalRows = _messages.IntegerField(5)
1900
1901
1902class TableFieldSchema(_messages.Message):
1903  """A TableFieldSchema object.
1904
1905  Fields:
1906    description: [Optional] The field description. The maximum length is 16K
1907      characters.
1908    fields: [Optional] Describes the nested schema fields if the type property
1909      is set to RECORD.
1910    mode: [Optional] The field mode. Possible values include NULLABLE,
1911      REQUIRED and REPEATED. The default value is NULLABLE.
1912    name: [Required] The field name. The name must contain only letters (a-z,
1913      A-Z), numbers (0-9), or underscores (_), and must start with a letter or
1914      underscore. The maximum length is 128 characters.
1915    type: [Required] The field data type. Possible values include STRING,
1916      BYTES, INTEGER, FLOAT, BOOLEAN, TIMESTAMP or RECORD (where RECORD
1917      indicates that the field contains a nested schema).
1918  """
1919
1920  description = _messages.StringField(1)
1921  fields = _messages.MessageField('TableFieldSchema', 2, repeated=True)
1922  mode = _messages.StringField(3)
1923  name = _messages.StringField(4)
1924  type = _messages.StringField(5)
1925
1926
1927class TableList(_messages.Message):
1928  """A TableList object.
1929
1930  Messages:
1931    TablesValueListEntry: A TablesValueListEntry object.
1932
1933  Fields:
1934    etag: A hash of this page of results.
1935    kind: The type of list.
1936    nextPageToken: A token to request the next page of results.
1937    tables: Tables in the requested dataset.
1938    totalItems: The total number of tables in the dataset.
1939  """
1940
1941  class TablesValueListEntry(_messages.Message):
1942    """A TablesValueListEntry object.
1943
1944    Fields:
1945      friendlyName: The user-friendly name for this table.
1946      id: An opaque ID of the table
1947      kind: The resource type.
1948      tableReference: A reference uniquely identifying the table.
1949      type: The type of table. Possible values are: TABLE, VIEW.
1950    """
1951
1952    friendlyName = _messages.StringField(1)
1953    id = _messages.StringField(2)
1954    kind = _messages.StringField(3, default=u'bigquery#table')
1955    tableReference = _messages.MessageField('TableReference', 4)
1956    type = _messages.StringField(5)
1957
1958  etag = _messages.StringField(1)
1959  kind = _messages.StringField(2, default=u'bigquery#tableList')
1960  nextPageToken = _messages.StringField(3)
1961  tables = _messages.MessageField('TablesValueListEntry', 4, repeated=True)
1962  totalItems = _messages.IntegerField(5, variant=_messages.Variant.INT32)
1963
1964
1965class TableReference(_messages.Message):
1966  """A TableReference object.
1967
1968  Fields:
1969    datasetId: [Required] The ID of the dataset containing this table.
1970    projectId: [Required] The ID of the project containing this table.
1971    tableId: [Required] The ID of the table. The ID must contain only letters
1972      (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is
1973      1,024 characters.
1974  """
1975
1976  datasetId = _messages.StringField(1)
1977  projectId = _messages.StringField(2)
1978  tableId = _messages.StringField(3)
1979
1980
1981class TableRow(_messages.Message):
1982  """A TableRow object.
1983
1984  Fields:
1985    f: Represents a single row in the result set, consisting of one or more
1986      fields.
1987  """
1988
1989  f = _messages.MessageField('TableCell', 1, repeated=True)
1990
1991
1992class TableSchema(_messages.Message):
1993  """A TableSchema object.
1994
1995  Fields:
1996    fields: Describes the fields in a table.
1997  """
1998
1999  fields = _messages.MessageField('TableFieldSchema', 1, repeated=True)
2000
2001
2002class TimePartitioning(_messages.Message):
2003  """A TimePartitioning object.
2004
2005  Fields:
2006    expirationMs: [Optional] Number of milliseconds for which to keep the
2007      storage for a partition.
2008    type: [Required] The only type supported is DAY, which will generate one
2009      partition per day based on data loading time.
2010  """
2011
2012  expirationMs = _messages.IntegerField(1)
2013  type = _messages.StringField(2)
2014
2015
2016class UserDefinedFunctionResource(_messages.Message):
2017  """A UserDefinedFunctionResource object.
2018
2019  Fields:
2020    inlineCode: [Pick one] An inline resource that contains code for a user-
2021      defined function (UDF). Providing a inline code resource is equivalent
2022      to providing a URI for a file containing the same code.
2023    resourceUri: [Pick one] A code resource to load from a Google Cloud
2024      Storage URI (gs://bucket/path).
2025  """
2026
2027  inlineCode = _messages.StringField(1)
2028  resourceUri = _messages.StringField(2)
2029
2030
2031class ViewDefinition(_messages.Message):
2032  """A ViewDefinition object.
2033
2034  Fields:
2035    query: [Required] A query that BigQuery executes when the view is
2036      referenced.
2037    useLegacySql: [Experimental] Specifies whether to use BigQuery's legacy
2038      SQL for this view. The default value is true. If set to false, the view
2039      will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-
2040      reference/ Queries and views that reference this view must use the same
2041      flag value.
2042    userDefinedFunctionResources: [Experimental] Describes user-defined
2043      function resources used in the query.
2044  """
2045
2046  query = _messages.StringField(1)
2047  useLegacySql = _messages.BooleanField(2)
2048  userDefinedFunctionResources = _messages.MessageField('UserDefinedFunctionResource', 3, repeated=True)
2049
2050
2051