blob: a2b63d608f06aecdc4d2f440fb88be83444b46c5 [file] [log] [blame]
// Copyright 2018 Google Inc. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Code generated file. DO NOT EDIT.
// Package bigquery provides access to the BigQuery API.
//
// This package is DEPRECATED. Use package cloud.google.com/go/bigquery instead.
//
// See https://cloud.google.com/bigquery/
//
// Usage example:
//
// import "google.golang.org/api/bigquery/v2"
// ...
// bigqueryService, err := bigquery.New(oauthHttpClient)
package bigquery // import "google.golang.org/api/bigquery/v2"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
gensupport "google.golang.org/api/gensupport"
googleapi "google.golang.org/api/googleapi"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
const apiId = "bigquery:v2"
const apiName = "bigquery"
const apiVersion = "v2"
const basePath = "https://www.googleapis.com/bigquery/v2/"
// OAuth2 scopes used by this API.
const (
// View and manage your data in Google BigQuery
BigqueryScope = "https://www.googleapis.com/auth/bigquery"
// Insert data into Google BigQuery
BigqueryInsertdataScope = "https://www.googleapis.com/auth/bigquery.insertdata"
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
// View your data across Google Cloud Platform services
CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only"
// Manage your data and permissions in Google Cloud Storage
DevstorageFullControlScope = "https://www.googleapis.com/auth/devstorage.full_control"
// View your data in Google Cloud Storage
DevstorageReadOnlyScope = "https://www.googleapis.com/auth/devstorage.read_only"
// Manage your data in Google Cloud Storage
DevstorageReadWriteScope = "https://www.googleapis.com/auth/devstorage.read_write"
)
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.Datasets = NewDatasetsService(s)
s.Jobs = NewJobsService(s)
s.Projects = NewProjectsService(s)
s.Tabledata = NewTabledataService(s)
s.Tables = NewTablesService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Datasets *DatasetsService
Jobs *JobsService
Projects *ProjectsService
Tabledata *TabledataService
Tables *TablesService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewDatasetsService(s *Service) *DatasetsService {
rs := &DatasetsService{s: s}
return rs
}
type DatasetsService struct {
s *Service
}
func NewJobsService(s *Service) *JobsService {
rs := &JobsService{s: s}
return rs
}
type JobsService struct {
s *Service
}
func NewProjectsService(s *Service) *ProjectsService {
rs := &ProjectsService{s: s}
return rs
}
type ProjectsService struct {
s *Service
}
func NewTabledataService(s *Service) *TabledataService {
rs := &TabledataService{s: s}
return rs
}
type TabledataService struct {
s *Service
}
func NewTablesService(s *Service) *TablesService {
rs := &TablesService{s: s}
return rs
}
type TablesService struct {
s *Service
}
type BigQueryModelTraining struct {
// CurrentIteration: [Output-only, Beta] Index of current ML training
// iteration. Updated during create model query job to show job
// progress.
CurrentIteration int64 `json:"currentIteration,omitempty"`
// ExpectedTotalIterations: [Output-only, Beta] Expected number of
// iterations for the create model query job specified as num_iterations
// in the input query. The actual total number of iterations may be less
// than this number due to early stop.
ExpectedTotalIterations int64 `json:"expectedTotalIterations,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CurrentIteration") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CurrentIteration") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *BigQueryModelTraining) MarshalJSON() ([]byte, error) {
type NoMethod BigQueryModelTraining
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type BigtableColumn struct {
// Encoding: [Optional] The encoding of the values when the type is not
// STRING. Acceptable encoding values are: TEXT - indicates values are
// alphanumeric text strings. BINARY - indicates values are encoded
// using HBase Bytes.toBytes family of functions. 'encoding' can also be
// set at the column family level. However, the setting at this level
// takes precedence if 'encoding' is set at both levels.
Encoding string `json:"encoding,omitempty"`
// FieldName: [Optional] If the qualifier is not a valid BigQuery field
// identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid
// identifier must be provided as the column field name and is used as
// field name in queries.
FieldName string `json:"fieldName,omitempty"`
// OnlyReadLatest: [Optional] If this is set, only the latest version of
// value in this column are exposed. 'onlyReadLatest' can also be set at
// the column family level. However, the setting at this level takes
// precedence if 'onlyReadLatest' is set at both levels.
OnlyReadLatest bool `json:"onlyReadLatest,omitempty"`
// QualifierEncoded: [Required] Qualifier of the column. Columns in the
// parent column family that has this exact qualifier are exposed as .
// field. If the qualifier is valid UTF-8 string, it can be specified in
// the qualifier_string field. Otherwise, a base-64 encoded value must
// be set to qualifier_encoded. The column field name is the same as the
// column qualifier. However, if the qualifier is not a valid BigQuery
// field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid
// identifier must be provided as field_name.
QualifierEncoded string `json:"qualifierEncoded,omitempty"`
QualifierString string `json:"qualifierString,omitempty"`
// Type: [Optional] The type to convert the value in cells of this
// column. The values are expected to be encoded using HBase
// Bytes.toBytes function when using the BINARY encoding value.
// Following BigQuery types are allowed (case-sensitive) - BYTES STRING
// INTEGER FLOAT BOOLEAN Default type is BYTES. 'type' can also be set
// at the column family level. However, the setting at this level takes
// precedence if 'type' is set at both levels.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Encoding") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Encoding") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BigtableColumn) MarshalJSON() ([]byte, error) {
type NoMethod BigtableColumn
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type BigtableColumnFamily struct {
// Columns: [Optional] Lists of columns that should be exposed as
// individual fields as opposed to a list of (column name, value) pairs.
// All columns whose qualifier matches a qualifier in this list can be
// accessed as .. Other columns can be accessed as a list through
// .Column field.
Columns []*BigtableColumn `json:"columns,omitempty"`
// Encoding: [Optional] The encoding of the values when the type is not
// STRING. Acceptable encoding values are: TEXT - indicates values are
// alphanumeric text strings. BINARY - indicates values are encoded
// using HBase Bytes.toBytes family of functions. This can be overridden
// for a specific column by listing that column in 'columns' and
// specifying an encoding for it.
Encoding string `json:"encoding,omitempty"`
// FamilyId: Identifier of the column family.
FamilyId string `json:"familyId,omitempty"`
// OnlyReadLatest: [Optional] If this is set only the latest version of
// value are exposed for all columns in this column family. This can be
// overridden for a specific column by listing that column in 'columns'
// and specifying a different setting for that column.
OnlyReadLatest bool `json:"onlyReadLatest,omitempty"`
// Type: [Optional] The type to convert the value in cells of this
// column family. The values are expected to be encoded using HBase
// Bytes.toBytes function when using the BINARY encoding value.
// Following BigQuery types are allowed (case-sensitive) - BYTES STRING
// INTEGER FLOAT BOOLEAN Default type is BYTES. This can be overridden
// for a specific column by listing that column in 'columns' and
// specifying a type for it.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Columns") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Columns") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BigtableColumnFamily) MarshalJSON() ([]byte, error) {
type NoMethod BigtableColumnFamily
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type BigtableOptions struct {
// ColumnFamilies: [Optional] List of column families to expose in the
// table schema along with their types. This list restricts the column
// families that can be referenced in queries and specifies their value
// types. You can use this list to do type conversions - see the 'type'
// field for more details. If you leave this list empty, all column
// families are present in the table schema and their values are read as
// BYTES. During a query only the column families referenced in that
// query are read from Bigtable.
ColumnFamilies []*BigtableColumnFamily `json:"columnFamilies,omitempty"`
// IgnoreUnspecifiedColumnFamilies: [Optional] If field is true, then
// the column families that are not specified in columnFamilies list are
// not exposed in the table schema. Otherwise, they are read with BYTES
// type values. The default value is false.
IgnoreUnspecifiedColumnFamilies bool `json:"ignoreUnspecifiedColumnFamilies,omitempty"`
// ReadRowkeyAsString: [Optional] If field is true, then the rowkey
// column families will be read and converted to string. Otherwise they
// are read with BYTES type values and users need to manually cast them
// with CAST if necessary. The default value is false.
ReadRowkeyAsString bool `json:"readRowkeyAsString,omitempty"`
// ForceSendFields is a list of field names (e.g. "ColumnFamilies") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ColumnFamilies") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *BigtableOptions) MarshalJSON() ([]byte, error) {
type NoMethod BigtableOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Clustering struct {
// Fields: [Repeated] One or more fields on which data should be
// clustered. Only top-level, non-repeated, simple-type fields are
// supported. When you cluster a table using multiple columns, the order
// of columns you specify is important. The order of the specified
// columns determines the sort order of the data.
Fields []string `json:"fields,omitempty"`
// ForceSendFields is a list of field names (e.g. "Fields") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Fields") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Clustering) MarshalJSON() ([]byte, error) {
type NoMethod Clustering
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type CsvOptions struct {
// AllowJaggedRows: [Optional] Indicates if BigQuery should accept rows
// that are missing trailing optional columns. If true, BigQuery treats
// missing trailing columns as null values. If false, records with
// missing trailing columns are treated as bad records, and if there are
// too many bad records, an invalid error is returned in the job result.
// The default value is false.
AllowJaggedRows bool `json:"allowJaggedRows,omitempty"`
// AllowQuotedNewlines: [Optional] Indicates if BigQuery should allow
// quoted data sections that contain newline characters in a CSV file.
// The default value is false.
AllowQuotedNewlines bool `json:"allowQuotedNewlines,omitempty"`
// Encoding: [Optional] The character encoding of the data. The
// supported values are UTF-8 or ISO-8859-1. The default value is UTF-8.
// BigQuery decodes the data after the raw, binary data has been split
// using the values of the quote and fieldDelimiter properties.
Encoding string `json:"encoding,omitempty"`
// FieldDelimiter: [Optional] The separator for fields in a CSV file.
// BigQuery converts the string to ISO-8859-1 encoding, and then uses
// the first byte of the encoded string to split the data in its raw,
// binary state. BigQuery also supports the escape sequence "\t" to
// specify a tab separator. The default value is a comma (',').
FieldDelimiter string `json:"fieldDelimiter,omitempty"`
// Quote: [Optional] The value that is used to quote data sections in a
// CSV file. BigQuery converts the string to ISO-8859-1 encoding, and
// then uses the first byte of the encoded string to split the data in
// its raw, binary state. The default value is a double-quote ('"'). If
// your data does not contain quoted sections, set the property value to
// an empty string. If your data contains quoted newline characters, you
// must also set the allowQuotedNewlines property to true.
//
// Default: "
Quote *string `json:"quote,omitempty"`
// SkipLeadingRows: [Optional] The number of rows at the top of a CSV
// file that BigQuery will skip when reading the data. The default value
// is 0. This property is useful if you have header rows in the file
// that should be skipped.
SkipLeadingRows int64 `json:"skipLeadingRows,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "AllowJaggedRows") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AllowJaggedRows") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *CsvOptions) MarshalJSON() ([]byte, error) {
type NoMethod CsvOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Dataset struct {
// Access: [Optional] An array of objects that define dataset access for
// one or more entities. You can set this property when inserting or
// updating a dataset in order to control who is allowed to access the
// data. If unspecified at dataset creation time, BigQuery adds default
// dataset access for the following entities: access.specialGroup:
// projectReaders; access.role: READER; access.specialGroup:
// projectWriters; access.role: WRITER; access.specialGroup:
// projectOwners; access.role: OWNER; access.userByEmail: [dataset
// creator email]; access.role: OWNER;
Access []*DatasetAccess `json:"access,omitempty"`
// CreationTime: [Output-only] The time when this dataset was created,
// in milliseconds since the epoch.
CreationTime int64 `json:"creationTime,omitempty,string"`
// DatasetReference: [Required] A reference that identifies the dataset.
DatasetReference *DatasetReference `json:"datasetReference,omitempty"`
// DefaultPartitionExpirationMs: [Optional] The default partition
// expiration for all partitioned tables in the dataset, in
// milliseconds. Once this property is set, all newly-created
// partitioned tables in the dataset will have an expirationMs property
// in the timePartitioning settings set to this value, and changing the
// value will only affect new tables, not existing ones. The storage in
// a partition will have an expiration time of its partition time plus
// this value. Setting this property overrides the use of
// defaultTableExpirationMs for partitioned tables: only one of
// defaultTableExpirationMs and defaultPartitionExpirationMs will be
// used for any new partitioned table. If you provide an explicit
// timePartitioning.expirationMs when creating or updating a partitioned
// table, that value takes precedence over the default partition
// expiration time indicated by this property.
DefaultPartitionExpirationMs int64 `json:"defaultPartitionExpirationMs,omitempty,string"`
// DefaultTableExpirationMs: [Optional] The default lifetime of all
// tables in the dataset, in milliseconds. The minimum value is 3600000
// milliseconds (one hour). Once this property is set, all newly-created
// tables in the dataset will have an expirationTime property set to the
// creation time plus the value in this property, and changing the value
// will only affect new tables, not existing ones. When the
// expirationTime for a given table is reached, that table will be
// deleted automatically. If a table's expirationTime is modified or
// removed before the table expires, or if you provide an explicit
// expirationTime when creating a table, that value takes precedence
// over the default expiration time indicated by this property.
DefaultTableExpirationMs int64 `json:"defaultTableExpirationMs,omitempty,string"`
// Description: [Optional] A user-friendly description of the dataset.
Description string `json:"description,omitempty"`
// Etag: [Output-only] A hash of the resource.
Etag string `json:"etag,omitempty"`
// FriendlyName: [Optional] A descriptive name for the dataset.
FriendlyName string `json:"friendlyName,omitempty"`
// Id: [Output-only] The fully-qualified unique name of the dataset in
// the format projectId:datasetId. The dataset name without the project
// name is given in the datasetId field. When creating a new dataset,
// leave this field blank, and instead specify the datasetId field.
Id string `json:"id,omitempty"`
// Kind: [Output-only] The resource type.
Kind string `json:"kind,omitempty"`
// Labels: The labels associated with this dataset. You can use these to
// organize and group your datasets. You can set this property when
// inserting or updating a dataset. See Creating and Updating Dataset
// Labels for more information.
Labels map[string]string `json:"labels,omitempty"`
// LastModifiedTime: [Output-only] The date when this dataset or any of
// its tables was last modified, in milliseconds since the epoch.
LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"`
// Location: The geographic location where the dataset should reside.
// The default value is US. See details at
// https://cloud.google.com/bigquery/docs/dataset-locations.
Location string `json:"location,omitempty"`
// SelfLink: [Output-only] A URL that can be used to access the resource
// again. You can use this URL in Get or Update requests to the
// resource.
SelfLink string `json:"selfLink,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Access") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Access") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Dataset) MarshalJSON() ([]byte, error) {
type NoMethod Dataset
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DatasetAccess struct {
// Domain: [Pick one] A domain to grant access to. Any users signed in
// with the domain specified will be granted the specified access.
// Example: "example.com".
Domain string `json:"domain,omitempty"`
// GroupByEmail: [Pick one] An email address of a Google Group to grant
// access to.
GroupByEmail string `json:"groupByEmail,omitempty"`
// Role: [Required] Describes the rights granted to the user specified
// by the other member of the access object. The following string values
// are supported: READER, WRITER, OWNER.
Role string `json:"role,omitempty"`
// SpecialGroup: [Pick one] A special group to grant access to. Possible
// values include: projectOwners: Owners of the enclosing project.
// projectReaders: Readers of the enclosing project. projectWriters:
// Writers of the enclosing project. allAuthenticatedUsers: All
// authenticated BigQuery users.
SpecialGroup string `json:"specialGroup,omitempty"`
// UserByEmail: [Pick one] An email address of a user to grant access
// to. For example: fred@example.com.
UserByEmail string `json:"userByEmail,omitempty"`
// View: [Pick one] A view from a different dataset to grant access to.
// Queries executed against that view will have read access to tables in
// this dataset. The role field is not required when this field is set.
// If that view is updated by any user, access to the view needs to be
// granted again via an update operation.
View *TableReference `json:"view,omitempty"`
// ForceSendFields is a list of field names (e.g. "Domain") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Domain") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DatasetAccess) MarshalJSON() ([]byte, error) {
type NoMethod DatasetAccess
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DatasetList struct {
// Datasets: An array of the dataset resources in the project. Each
// resource contains basic information. For full information about a
// particular dataset resource, use the Datasets: get method. This
// property is omitted when there are no datasets in the project.
Datasets []*DatasetListDatasets `json:"datasets,omitempty"`
// Etag: A hash value of the results page. You can use this property to
// determine if the page has changed since the last request.
Etag string `json:"etag,omitempty"`
// Kind: The list type. This property always returns the value
// "bigquery#datasetList".
Kind string `json:"kind,omitempty"`
// NextPageToken: A token that can be used to request the next results
// page. This property is omitted on the final results page.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Datasets") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Datasets") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DatasetList) MarshalJSON() ([]byte, error) {
type NoMethod DatasetList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DatasetListDatasets struct {
// DatasetReference: The dataset reference. Use this property to access
// specific parts of the dataset's ID, such as project ID or dataset ID.
DatasetReference *DatasetReference `json:"datasetReference,omitempty"`
// FriendlyName: A descriptive name for the dataset, if one exists.
FriendlyName string `json:"friendlyName,omitempty"`
// Id: The fully-qualified, unique, opaque ID of the dataset.
Id string `json:"id,omitempty"`
// Kind: The resource type. This property always returns the value
// "bigquery#dataset".
Kind string `json:"kind,omitempty"`
// Labels: The labels associated with this dataset. You can use these to
// organize and group your datasets.
Labels map[string]string `json:"labels,omitempty"`
// Location: [Experimental] The geographic location where the data
// resides.
Location string `json:"location,omitempty"`
// ForceSendFields is a list of field names (e.g. "DatasetReference") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DatasetReference") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *DatasetListDatasets) MarshalJSON() ([]byte, error) {
type NoMethod DatasetListDatasets
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DatasetReference struct {
// DatasetId: [Required] A unique ID for this dataset, without the
// project name. The ID must contain only letters (a-z, A-Z), numbers
// (0-9), or underscores (_). The maximum length is 1,024 characters.
DatasetId string `json:"datasetId,omitempty"`
// ProjectId: [Optional] The ID of the project containing this dataset.
ProjectId string `json:"projectId,omitempty"`
// ForceSendFields is a list of field names (e.g. "DatasetId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DatasetId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DatasetReference) MarshalJSON() ([]byte, error) {
type NoMethod DatasetReference
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type DestinationTableProperties struct {
// Description: [Optional] The description for the destination table.
// This will only be used if the destination table is newly created. If
// the table already exists and a value different than the current
// description is provided, the job will fail.
Description string `json:"description,omitempty"`
// FriendlyName: [Optional] The friendly name for the destination table.
// This will only be used if the destination table is newly created. If
// the table already exists and a value different than the current
// friendly name is provided, the job will fail.
FriendlyName string `json:"friendlyName,omitempty"`
// ForceSendFields is a list of field names (e.g. "Description") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Description") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DestinationTableProperties) MarshalJSON() ([]byte, error) {
type NoMethod DestinationTableProperties
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type EncryptionConfiguration struct {
// KmsKeyName: [Optional] Describes the Cloud KMS encryption key that
// will be used to protect destination BigQuery table. The BigQuery
// Service Account associated with your project requires access to this
// encryption key.
KmsKeyName string `json:"kmsKeyName,omitempty"`
// ForceSendFields is a list of field names (e.g. "KmsKeyName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "KmsKeyName") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *EncryptionConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod EncryptionConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ErrorProto struct {
// DebugInfo: Debugging information. This property is internal to Google
// and should not be used.
DebugInfo string `json:"debugInfo,omitempty"`
// Location: Specifies where the error occurred, if present.
Location string `json:"location,omitempty"`
// Message: A human-readable description of the error.
Message string `json:"message,omitempty"`
// Reason: A short error code that summarizes the error.
Reason string `json:"reason,omitempty"`
// ForceSendFields is a list of field names (e.g. "DebugInfo") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DebugInfo") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ErrorProto) MarshalJSON() ([]byte, error) {
type NoMethod ErrorProto
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ExplainQueryStage struct {
// CompletedParallelInputs: Number of parallel input segments completed.
CompletedParallelInputs int64 `json:"completedParallelInputs,omitempty,string"`
// ComputeMsAvg: Milliseconds the average shard spent on CPU-bound
// tasks.
ComputeMsAvg int64 `json:"computeMsAvg,omitempty,string"`
// ComputeMsMax: Milliseconds the slowest shard spent on CPU-bound
// tasks.
ComputeMsMax int64 `json:"computeMsMax,omitempty,string"`
// ComputeRatioAvg: Relative amount of time the average shard spent on
// CPU-bound tasks.
ComputeRatioAvg float64 `json:"computeRatioAvg,omitempty"`
// ComputeRatioMax: Relative amount of time the slowest shard spent on
// CPU-bound tasks.
ComputeRatioMax float64 `json:"computeRatioMax,omitempty"`
// EndMs: Stage end time represented as milliseconds since epoch.
EndMs int64 `json:"endMs,omitempty,string"`
// Id: Unique ID for stage within plan.
Id int64 `json:"id,omitempty,string"`
// InputStages: IDs for stages that are inputs to this stage.
InputStages googleapi.Int64s `json:"inputStages,omitempty"`
// Name: Human-readable name for stage.
Name string `json:"name,omitempty"`
// ParallelInputs: Number of parallel input segments to be processed.
ParallelInputs int64 `json:"parallelInputs,omitempty,string"`
// ReadMsAvg: Milliseconds the average shard spent reading input.
ReadMsAvg int64 `json:"readMsAvg,omitempty,string"`
// ReadMsMax: Milliseconds the slowest shard spent reading input.
ReadMsMax int64 `json:"readMsMax,omitempty,string"`
// ReadRatioAvg: Relative amount of time the average shard spent reading
// input.
ReadRatioAvg float64 `json:"readRatioAvg,omitempty"`
// ReadRatioMax: Relative amount of time the slowest shard spent reading
// input.
ReadRatioMax float64 `json:"readRatioMax,omitempty"`
// RecordsRead: Number of records read into the stage.
RecordsRead int64 `json:"recordsRead,omitempty,string"`
// RecordsWritten: Number of records written by the stage.
RecordsWritten int64 `json:"recordsWritten,omitempty,string"`
// ShuffleOutputBytes: Total number of bytes written to shuffle.
ShuffleOutputBytes int64 `json:"shuffleOutputBytes,omitempty,string"`
// ShuffleOutputBytesSpilled: Total number of bytes written to shuffle
// and spilled to disk.
ShuffleOutputBytesSpilled int64 `json:"shuffleOutputBytesSpilled,omitempty,string"`
// StartMs: Stage start time represented as milliseconds since epoch.
StartMs int64 `json:"startMs,omitempty,string"`
// Status: Current status for the stage.
Status string `json:"status,omitempty"`
// Steps: List of operations within the stage in dependency order
// (approximately chronological).
Steps []*ExplainQueryStep `json:"steps,omitempty"`
// WaitMsAvg: Milliseconds the average shard spent waiting to be
// scheduled.
WaitMsAvg int64 `json:"waitMsAvg,omitempty,string"`
// WaitMsMax: Milliseconds the slowest shard spent waiting to be
// scheduled.
WaitMsMax int64 `json:"waitMsMax,omitempty,string"`
// WaitRatioAvg: Relative amount of time the average shard spent waiting
// to be scheduled.
WaitRatioAvg float64 `json:"waitRatioAvg,omitempty"`
// WaitRatioMax: Relative amount of time the slowest shard spent waiting
// to be scheduled.
WaitRatioMax float64 `json:"waitRatioMax,omitempty"`
// WriteMsAvg: Milliseconds the average shard spent on writing output.
WriteMsAvg int64 `json:"writeMsAvg,omitempty,string"`
// WriteMsMax: Milliseconds the slowest shard spent on writing output.
WriteMsMax int64 `json:"writeMsMax,omitempty,string"`
// WriteRatioAvg: Relative amount of time the average shard spent on
// writing output.
WriteRatioAvg float64 `json:"writeRatioAvg,omitempty"`
// WriteRatioMax: Relative amount of time the slowest shard spent on
// writing output.
WriteRatioMax float64 `json:"writeRatioMax,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "CompletedParallelInputs") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CompletedParallelInputs")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ExplainQueryStage) MarshalJSON() ([]byte, error) {
type NoMethod ExplainQueryStage
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *ExplainQueryStage) UnmarshalJSON(data []byte) error {
type NoMethod ExplainQueryStage
var s1 struct {
ComputeRatioAvg gensupport.JSONFloat64 `json:"computeRatioAvg"`
ComputeRatioMax gensupport.JSONFloat64 `json:"computeRatioMax"`
ReadRatioAvg gensupport.JSONFloat64 `json:"readRatioAvg"`
ReadRatioMax gensupport.JSONFloat64 `json:"readRatioMax"`
WaitRatioAvg gensupport.JSONFloat64 `json:"waitRatioAvg"`
WaitRatioMax gensupport.JSONFloat64 `json:"waitRatioMax"`
WriteRatioAvg gensupport.JSONFloat64 `json:"writeRatioAvg"`
WriteRatioMax gensupport.JSONFloat64 `json:"writeRatioMax"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.ComputeRatioAvg = float64(s1.ComputeRatioAvg)
s.ComputeRatioMax = float64(s1.ComputeRatioMax)
s.ReadRatioAvg = float64(s1.ReadRatioAvg)
s.ReadRatioMax = float64(s1.ReadRatioMax)
s.WaitRatioAvg = float64(s1.WaitRatioAvg)
s.WaitRatioMax = float64(s1.WaitRatioMax)
s.WriteRatioAvg = float64(s1.WriteRatioAvg)
s.WriteRatioMax = float64(s1.WriteRatioMax)
return nil
}
type ExplainQueryStep struct {
// Kind: Machine-readable operation type.
Kind string `json:"kind,omitempty"`
// Substeps: Human-readable stage descriptions.
Substeps []string `json:"substeps,omitempty"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ExplainQueryStep) MarshalJSON() ([]byte, error) {
type NoMethod ExplainQueryStep
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ExternalDataConfiguration struct {
// Autodetect: Try to detect schema and format options automatically.
// Any option specified explicitly will be honored.
Autodetect bool `json:"autodetect,omitempty"`
// BigtableOptions: [Optional] Additional options if sourceFormat is set
// to BIGTABLE.
BigtableOptions *BigtableOptions `json:"bigtableOptions,omitempty"`
// Compression: [Optional] The compression type of the data source.
// Possible values include GZIP and NONE. The default value is NONE.
// This setting is ignored for Google Cloud Bigtable, Google Cloud
// Datastore backups and Avro formats.
Compression string `json:"compression,omitempty"`
// CsvOptions: Additional properties to set if sourceFormat is set to
// CSV.
CsvOptions *CsvOptions `json:"csvOptions,omitempty"`
// GoogleSheetsOptions: [Optional] Additional options if sourceFormat is
// set to GOOGLE_SHEETS.
GoogleSheetsOptions *GoogleSheetsOptions `json:"googleSheetsOptions,omitempty"`
// IgnoreUnknownValues: [Optional] Indicates if BigQuery should allow
// extra values that are not represented in the table schema. If true,
// the extra values are ignored. If false, records with extra columns
// are treated as bad records, and if there are too many bad records, an
// invalid error is returned in the job result. The default value is
// false. The sourceFormat property determines what BigQuery treats as
// an extra value: CSV: Trailing columns JSON: Named values that don't
// match any column names Google Cloud Bigtable: This setting is
// ignored. Google Cloud Datastore backups: This setting is ignored.
// Avro: This setting is ignored.
IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"`
// MaxBadRecords: [Optional] The maximum number of bad records that
// BigQuery can ignore when reading data. If the number of bad records
// exceeds this value, an invalid error is returned in the job result.
// This is only valid for CSV, JSON, and Google Sheets. The default
// value is 0, which requires that all records are valid. This setting
// is ignored for Google Cloud Bigtable, Google Cloud Datastore backups
// and Avro formats.
MaxBadRecords int64 `json:"maxBadRecords,omitempty"`
// Schema: [Optional] The schema for the data. Schema is required for
// CSV and JSON formats. Schema is disallowed for Google Cloud Bigtable,
// Cloud Datastore backups, and Avro formats.
Schema *TableSchema `json:"schema,omitempty"`
// SourceFormat: [Required] The data format. For CSV files, specify
// "CSV". For Google sheets, specify "GOOGLE_SHEETS". For
// newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro
// files, specify "AVRO". For Google Cloud Datastore backups, specify
// "DATASTORE_BACKUP". [Beta] For Google Cloud Bigtable, specify
// "BIGTABLE".
SourceFormat string `json:"sourceFormat,omitempty"`
// SourceUris: [Required] The fully-qualified URIs that point to your
// data in Google Cloud. For Google Cloud Storage URIs: Each URI can
// contain one '*' wildcard character and it must come after the
// 'bucket' name. Size limits related to load jobs apply to external
// data sources. For Google Cloud Bigtable URIs: Exactly one URI can be
// specified and it has be a fully specified and valid HTTPS URL for a
// Google Cloud Bigtable table. For Google Cloud Datastore backups,
// exactly one URI can be specified. Also, the '*' wildcard character is
// not allowed.
SourceUris []string `json:"sourceUris,omitempty"`
// ForceSendFields is a list of field names (e.g. "Autodetect") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Autodetect") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ExternalDataConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod ExternalDataConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GetQueryResultsResponse struct {
// CacheHit: Whether the query result was fetched from the query cache.
CacheHit bool `json:"cacheHit,omitempty"`
// Errors: [Output-only] The first errors or warnings encountered during
// the running of the job. The final message includes the number of
// errors that caused the process to stop. Errors here do not
// necessarily mean that the job has completed or was unsuccessful.
Errors []*ErrorProto `json:"errors,omitempty"`
// Etag: A hash of this response.
Etag string `json:"etag,omitempty"`
// JobComplete: Whether the query has completed or not. If rows or
// totalRows are present, this will always be true. If this is false,
// totalRows will not be available.
JobComplete bool `json:"jobComplete,omitempty"`
// JobReference: Reference to the BigQuery Job that was created to run
// the query. This field will be present even if the original request
// timed out, in which case GetQueryResults can be used to read the
// results once the query has completed. Since this API only returns the
// first page of results, subsequent pages can be fetched via the same
// mechanism (GetQueryResults).
JobReference *JobReference `json:"jobReference,omitempty"`
// Kind: The resource type of the response.
Kind string `json:"kind,omitempty"`
// NumDmlAffectedRows: [Output-only] The number of rows affected by a
// DML statement. Present only for DML statements INSERT, UPDATE or
// DELETE.
NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"`
// PageToken: A token used for paging results.
PageToken string `json:"pageToken,omitempty"`
// Rows: An object with as many results as can be contained within the
// maximum permitted reply size. To get any additional rows, you can
// call GetQueryResults and specify the jobReference returned above.
// Present only when the query completes successfully.
Rows []*TableRow `json:"rows,omitempty"`
// Schema: The schema of the results. Present only when the query
// completes successfully.
Schema *TableSchema `json:"schema,omitempty"`
// TotalBytesProcessed: The total number of bytes processed for this
// query.
TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"`
// TotalRows: The total number of rows in the complete query result set,
// which can be more than the number of rows in this single page of
// results. Present only when the query completes successfully.
TotalRows uint64 `json:"totalRows,omitempty,string"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CacheHit") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CacheHit") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GetQueryResultsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetQueryResultsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GetServiceAccountResponse struct {
// Email: The service account email address.
Email string `json:"email,omitempty"`
// Kind: The resource type of the response.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Email") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Email") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GetServiceAccountResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetServiceAccountResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GoogleSheetsOptions struct {
// Range: [Beta] [Optional] Range of a sheet to query from. Only used
// when non-empty. Typical format: !:
Range string `json:"range,omitempty"`
// SkipLeadingRows: [Optional] The number of rows at the top of a sheet
// that BigQuery will skip when reading the data. The default value is
// 0. This property is useful if you have header rows that should be
// skipped. When autodetect is on, behavior is the following: *
// skipLeadingRows unspecified - Autodetect tries to detect headers in
// the first row. If they are not detected, the row is read as data.
// Otherwise data is read starting from the second row. *
// skipLeadingRows is 0 - Instructs autodetect that there are no headers
// and data should be read starting from the first row. *
// skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to
// detect headers in row N. If headers are not detected, row N is just
// skipped. Otherwise row N is used to extract column names for the
// detected schema.
SkipLeadingRows int64 `json:"skipLeadingRows,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "Range") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Range") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleSheetsOptions) MarshalJSON() ([]byte, error) {
type NoMethod GoogleSheetsOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type IterationResult struct {
// DurationMs: [Output-only, Beta] Time taken to run the training
// iteration in milliseconds.
DurationMs int64 `json:"durationMs,omitempty,string"`
// EvalLoss: [Output-only, Beta] Eval loss computed on the eval data at
// the end of the iteration. The eval loss is used for early stopping to
// avoid overfitting. No eval loss if eval_split_method option is
// specified as no_split or auto_split with input data size less than
// 500 rows.
EvalLoss float64 `json:"evalLoss,omitempty"`
// Index: [Output-only, Beta] Index of the ML training iteration,
// starting from zero for each training run.
Index int64 `json:"index,omitempty"`
// LearnRate: [Output-only, Beta] Learning rate used for this iteration,
// it varies for different training iterations if learn_rate_strategy
// option is not constant.
LearnRate float64 `json:"learnRate,omitempty"`
// TrainingLoss: [Output-only, Beta] Training loss computed on the
// training data at the end of the iteration. The training loss function
// is defined by model type.
TrainingLoss float64 `json:"trainingLoss,omitempty"`
// ForceSendFields is a list of field names (e.g. "DurationMs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DurationMs") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *IterationResult) MarshalJSON() ([]byte, error) {
type NoMethod IterationResult
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *IterationResult) UnmarshalJSON(data []byte) error {
type NoMethod IterationResult
var s1 struct {
EvalLoss gensupport.JSONFloat64 `json:"evalLoss"`
LearnRate gensupport.JSONFloat64 `json:"learnRate"`
TrainingLoss gensupport.JSONFloat64 `json:"trainingLoss"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.EvalLoss = float64(s1.EvalLoss)
s.LearnRate = float64(s1.LearnRate)
s.TrainingLoss = float64(s1.TrainingLoss)
return nil
}
type Job struct {
// Configuration: [Required] Describes the job configuration.
Configuration *JobConfiguration `json:"configuration,omitempty"`
// Etag: [Output-only] A hash of this resource.
Etag string `json:"etag,omitempty"`
// Id: [Output-only] Opaque ID field of the job
Id string `json:"id,omitempty"`
// JobReference: [Optional] Reference describing the unique-per-user
// name of the job.
JobReference *JobReference `json:"jobReference,omitempty"`
// Kind: [Output-only] The type of the resource.
Kind string `json:"kind,omitempty"`
// SelfLink: [Output-only] A URL that can be used to access this
// resource again.
SelfLink string `json:"selfLink,omitempty"`
// Statistics: [Output-only] Information about the job, including
// starting time and ending time of the job.
Statistics *JobStatistics `json:"statistics,omitempty"`
// Status: [Output-only] The status of this job. Examine this value when
// polling an asynchronous job to see if the job is complete.
Status *JobStatus `json:"status,omitempty"`
// UserEmail: [Output-only] Email address of the user who ran the job.
UserEmail string `json:"user_email,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Configuration") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Configuration") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Job) MarshalJSON() ([]byte, error) {
type NoMethod Job
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobCancelResponse struct {
// Job: The final state of the job.
Job *Job `json:"job,omitempty"`
// Kind: The resource type of the response.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Job") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Job") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobCancelResponse) MarshalJSON() ([]byte, error) {
type NoMethod JobCancelResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobConfiguration struct {
// Copy: [Pick one] Copies a table.
Copy *JobConfigurationTableCopy `json:"copy,omitempty"`
// DryRun: [Optional] If set, don't actually run this job. A valid query
// will return a mostly empty response with some processing statistics,
// while an invalid query will return the same error it would if it
// wasn't a dry run. Behavior of non-query jobs is undefined.
DryRun bool `json:"dryRun,omitempty"`
// Extract: [Pick one] Configures an extract job.
Extract *JobConfigurationExtract `json:"extract,omitempty"`
// JobTimeoutMs: [Optional] Job timeout in milliseconds. If this time
// limit is exceeded, BigQuery may attempt to terminate the job.
JobTimeoutMs int64 `json:"jobTimeoutMs,omitempty,string"`
// JobType: [Output-only] The type of the job. Can be QUERY, LOAD,
// EXTRACT, COPY or UNKNOWN.
JobType string `json:"jobType,omitempty"`
// Labels: The labels associated with this job. You can use these to
// organize and group your jobs. Label keys and values can be no longer
// than 63 characters, can only contain lowercase letters, numeric
// characters, underscores and dashes. International characters are
// allowed. Label values are optional. Label keys must start with a
// letter and each label in the list must have a different key.
Labels map[string]string `json:"labels,omitempty"`
// Load: [Pick one] Configures a load job.
Load *JobConfigurationLoad `json:"load,omitempty"`
// Query: [Pick one] Configures a query job.
Query *JobConfigurationQuery `json:"query,omitempty"`
// ForceSendFields is a list of field names (e.g. "Copy") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Copy") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobConfiguration) MarshalJSON() ([]byte, error) {
type NoMethod JobConfiguration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobConfigurationExtract struct {
// Compression: [Optional] The compression type to use for exported
// files. Possible values include GZIP, DEFLATE, SNAPPY, and NONE. The
// default value is NONE. DEFLATE and SNAPPY are only supported for
// Avro.
Compression string `json:"compression,omitempty"`
// DestinationFormat: [Optional] The exported file format. Possible
// values include CSV, NEWLINE_DELIMITED_JSON and AVRO. The default
// value is CSV. Tables with nested or repeated fields cannot be
// exported as CSV.
DestinationFormat string `json:"destinationFormat,omitempty"`
// DestinationUri: [Pick one] DEPRECATED: Use destinationUris instead,
// passing only one URI as necessary. The fully-qualified Google Cloud
// Storage URI where the extracted table should be written.
DestinationUri string `json:"destinationUri,omitempty"`
// DestinationUris: [Pick one] A list of fully-qualified Google Cloud
// Storage URIs where the extracted table should be written.
DestinationUris []string `json:"destinationUris,omitempty"`
// FieldDelimiter: [Optional] Delimiter to use between fields in the
// exported data. Default is ','
FieldDelimiter string `json:"fieldDelimiter,omitempty"`
// PrintHeader: [Optional] Whether to print out a header row in the
// results. Default is true.
//
// Default: true
PrintHeader *bool `json:"printHeader,omitempty"`
// SourceTable: [Required] A reference to the table being exported.
SourceTable *TableReference `json:"sourceTable,omitempty"`
// ForceSendFields is a list of field names (e.g. "Compression") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Compression") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobConfigurationExtract) MarshalJSON() ([]byte, error) {
type NoMethod JobConfigurationExtract
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobConfigurationLoad struct {
// AllowJaggedRows: [Optional] Accept rows that are missing trailing
// optional columns. The missing values are treated as nulls. If false,
// records with missing trailing columns are treated as bad records, and
// if there are too many bad records, an invalid error is returned in
// the job result. The default value is false. Only applicable to CSV,
// ignored for other formats.
AllowJaggedRows bool `json:"allowJaggedRows,omitempty"`
// AllowQuotedNewlines: Indicates if BigQuery should allow quoted data
// sections that contain newline characters in a CSV file. The default
// value is false.
AllowQuotedNewlines bool `json:"allowQuotedNewlines,omitempty"`
// Autodetect: [Optional] Indicates if we should automatically infer the
// options and schema for CSV and JSON sources.
Autodetect bool `json:"autodetect,omitempty"`
// Clustering: [Beta] Clustering specification for the destination
// table. Must be specified with time-based partitioning, data in the
// table will be first partitioned and subsequently clustered.
Clustering *Clustering `json:"clustering,omitempty"`
// CreateDisposition: [Optional] Specifies whether the job is allowed to
// create new tables. The following values are supported:
// CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the
// table. CREATE_NEVER: The table must already exist. If it does not, a
// 'notFound' error is returned in the job result. The default value is
// CREATE_IF_NEEDED. Creation, truncation and append actions occur as
// one atomic update upon job completion.
CreateDisposition string `json:"createDisposition,omitempty"`
// DestinationEncryptionConfiguration: Custom encryption configuration
// (e.g., Cloud KMS keys).
DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"`
// DestinationTable: [Required] The destination table to load the data
// into.
DestinationTable *TableReference `json:"destinationTable,omitempty"`
// DestinationTableProperties: [Beta] [Optional] Properties with which
// to create the destination table if it is new.
DestinationTableProperties *DestinationTableProperties `json:"destinationTableProperties,omitempty"`
// Encoding: [Optional] The character encoding of the data. The
// supported values are UTF-8 or ISO-8859-1. The default value is UTF-8.
// BigQuery decodes the data after the raw, binary data has been split
// using the values of the quote and fieldDelimiter properties.
Encoding string `json:"encoding,omitempty"`
// FieldDelimiter: [Optional] The separator for fields in a CSV file.
// The separator can be any ISO-8859-1 single-byte character. To use a
// character in the range 128-255, you must encode the character as
// UTF8. BigQuery converts the string to ISO-8859-1 encoding, and then
// uses the first byte of the encoded string to split the data in its
// raw, binary state. BigQuery also supports the escape sequence "\t" to
// specify a tab separator. The default value is a comma (',').
FieldDelimiter string `json:"fieldDelimiter,omitempty"`
// IgnoreUnknownValues: [Optional] Indicates if BigQuery should allow
// extra values that are not represented in the table schema. If true,
// the extra values are ignored. If false, records with extra columns
// are treated as bad records, and if there are too many bad records, an
// invalid error is returned in the job result. The default value is
// false. The sourceFormat property determines what BigQuery treats as
// an extra value: CSV: Trailing columns JSON: Named values that don't
// match any column names
IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"`
// MaxBadRecords: [Optional] The maximum number of bad records that
// BigQuery can ignore when running the job. If the number of bad
// records exceeds this value, an invalid error is returned in the job
// result. This is only valid for CSV and JSON. The default value is 0,
// which requires that all records are valid.
MaxBadRecords int64 `json:"maxBadRecords,omitempty"`
// NullMarker: [Optional] Specifies a string that represents a null
// value in a CSV file. For example, if you specify "\N", BigQuery
// interprets "\N" as a null value when loading a CSV file. The default
// value is the empty string. If you set this property to a custom
// value, BigQuery throws an error if an empty string is present for all
// data types except for STRING and BYTE. For STRING and BYTE columns,
// BigQuery interprets the empty string as an empty value.
NullMarker string `json:"nullMarker,omitempty"`
// ProjectionFields: If sourceFormat is set to "DATASTORE_BACKUP",
// indicates which entity properties to load into BigQuery from a Cloud
// Datastore backup. Property names are case sensitive and must be
// top-level properties. If no properties are specified, BigQuery loads
// all properties. If any named property isn't found in the Cloud
// Datastore backup, an invalid error is returned in the job result.
ProjectionFields []string `json:"projectionFields,omitempty"`
// Quote: [Optional] The value that is used to quote data sections in a
// CSV file. BigQuery converts the string to ISO-8859-1 encoding, and
// then uses the first byte of the encoded string to split the data in
// its raw, binary state. The default value is a double-quote ('"'). If
// your data does not contain quoted sections, set the property value to
// an empty string. If your data contains quoted newline characters, you
// must also set the allowQuotedNewlines property to true.
//
// Default: "
Quote *string `json:"quote,omitempty"`
// RangePartitioning: [Experimental] Range partitioning specification
// for this table. Only one of timePartitioning and rangePartitioning
// should be specified.
RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"`
// Schema: [Optional] The schema for the destination table. The schema
// can be omitted if the destination table already exists, or if you're
// loading data from Google Cloud Datastore.
Schema *TableSchema `json:"schema,omitempty"`
// SchemaInline: [Deprecated] The inline schema. For CSV schemas,
// specify as "Field1:Type1[,Field2:Type2]*". For example, "foo:STRING,
// bar:INTEGER, baz:FLOAT".
SchemaInline string `json:"schemaInline,omitempty"`
// SchemaInlineFormat: [Deprecated] The format of the schemaInline
// property.
SchemaInlineFormat string `json:"schemaInlineFormat,omitempty"`
// SchemaUpdateOptions: Allows the schema of the destination table to be
// updated as a side effect of the load job if a schema is autodetected
// or supplied in the job configuration. Schema update options are
// supported in two cases: when writeDisposition is WRITE_APPEND; when
// writeDisposition is WRITE_TRUNCATE and the destination table is a
// partition of a table, specified by partition decorators. For normal
// tables, WRITE_TRUNCATE will always overwrite the schema. One or more
// of the following values are specified: ALLOW_FIELD_ADDITION: allow
// adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow
// relaxing a required field in the original schema to nullable.
SchemaUpdateOptions []string `json:"schemaUpdateOptions,omitempty"`
// SkipLeadingRows: [Optional] The number of rows at the top of a CSV
// file that BigQuery will skip when loading the data. The default value
// is 0. This property is useful if you have header rows in the file
// that should be skipped.
SkipLeadingRows int64 `json:"skipLeadingRows,omitempty"`
// SourceFormat: [Optional] The format of the data files. For CSV files,
// specify "CSV". For datastore backups, specify "DATASTORE_BACKUP". For
// newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro,
// specify "AVRO". For parquet, specify "PARQUET". For orc, specify
// "ORC". The default value is CSV.
SourceFormat string `json:"sourceFormat,omitempty"`
// SourceUris: [Required] The fully-qualified URIs that point to your
// data in Google Cloud. For Google Cloud Storage URIs: Each URI can
// contain one '*' wildcard character and it must come after the
// 'bucket' name. Size limits related to load jobs apply to external
// data sources. For Google Cloud Bigtable URIs: Exactly one URI can be
// specified and it has be a fully specified and valid HTTPS URL for a
// Google Cloud Bigtable table. For Google Cloud Datastore backups:
// Exactly one URI can be specified. Also, the '*' wildcard character is
// not allowed.
SourceUris []string `json:"sourceUris,omitempty"`
// TimePartitioning: Time-based partitioning specification for the
// destination table. Only one of timePartitioning and rangePartitioning
// should be specified.
TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"`
// UseAvroLogicalTypes: [Optional] If sourceFormat is set to "AVRO",
// indicates whether to enable interpreting logical types into their
// corresponding types (ie. TIMESTAMP), instead of only using their raw
// types (ie. INTEGER).
UseAvroLogicalTypes bool `json:"useAvroLogicalTypes,omitempty"`
// WriteDisposition: [Optional] Specifies the action that occurs if the
// destination table already exists. The following values are supported:
// WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the
// table data. WRITE_APPEND: If the table already exists, BigQuery
// appends the data to the table. WRITE_EMPTY: If the table already
// exists and contains data, a 'duplicate' error is returned in the job
// result. The default value is WRITE_APPEND. Each action is atomic and
// only occurs if BigQuery is able to complete the job successfully.
// Creation, truncation and append actions occur as one atomic update
// upon job completion.
WriteDisposition string `json:"writeDisposition,omitempty"`
// ForceSendFields is a list of field names (e.g. "AllowJaggedRows") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AllowJaggedRows") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *JobConfigurationLoad) MarshalJSON() ([]byte, error) {
type NoMethod JobConfigurationLoad
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobConfigurationQuery struct {
// AllowLargeResults: [Optional] If true and query uses legacy SQL
// dialect, allows the query to produce arbitrarily large result tables
// at a slight cost in performance. Requires destinationTable to be set.
// For standard SQL queries, this flag is ignored and large results are
// always allowed. However, you must still set destinationTable when
// result size exceeds the allowed maximum response size.
AllowLargeResults bool `json:"allowLargeResults,omitempty"`
// Clustering: [Beta] Clustering specification for the destination
// table. Must be specified with time-based partitioning, data in the
// table will be first partitioned and subsequently clustered.
Clustering *Clustering `json:"clustering,omitempty"`
// CreateDisposition: [Optional] Specifies whether the job is allowed to
// create new tables. The following values are supported:
// CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the
// table. CREATE_NEVER: The table must already exist. If it does not, a
// 'notFound' error is returned in the job result. The default value is
// CREATE_IF_NEEDED. Creation, truncation and append actions occur as
// one atomic update upon job completion.
CreateDisposition string `json:"createDisposition,omitempty"`
// DefaultDataset: [Optional] Specifies the default dataset to use for
// unqualified table names in the query. Note that this does not alter
// behavior of unqualified dataset names.
DefaultDataset *DatasetReference `json:"defaultDataset,omitempty"`
// DestinationEncryptionConfiguration: Custom encryption configuration
// (e.g., Cloud KMS keys).
DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"`
// DestinationTable: [Optional] Describes the table where the query
// results should be stored. If not present, a new table will be created
// to store the results. This property must be set for large results
// that exceed the maximum response size.
DestinationTable *TableReference `json:"destinationTable,omitempty"`
// FlattenResults: [Optional] If true and query uses legacy SQL dialect,
// flattens all nested and repeated fields in the query results.
// allowLargeResults must be true if this is set to false. For standard
// SQL queries, this flag is ignored and results are never flattened.
//
// Default: true
FlattenResults *bool `json:"flattenResults,omitempty"`
// MaximumBillingTier: [Optional] Limits the billing tier for this job.
// Queries that have resource usage beyond this tier will fail (without
// incurring a charge). If unspecified, this will be set to your project
// default.
//
// Default: 1
MaximumBillingTier *int64 `json:"maximumBillingTier,omitempty"`
// MaximumBytesBilled: [Optional] Limits the bytes billed for this job.
// Queries that will have bytes billed beyond this limit will fail
// (without incurring a charge). If unspecified, this will be set to
// your project default.
MaximumBytesBilled int64 `json:"maximumBytesBilled,omitempty,string"`
// ParameterMode: Standard SQL only. Set to POSITIONAL to use positional
// (?) query parameters or to NAMED to use named (@myparam) query
// parameters in this query.
ParameterMode string `json:"parameterMode,omitempty"`
// PreserveNulls: [Deprecated] This property is deprecated.
PreserveNulls bool `json:"preserveNulls,omitempty"`
// Priority: [Optional] Specifies a priority for the query. Possible
// values include INTERACTIVE and BATCH. The default value is
// INTERACTIVE.
Priority string `json:"priority,omitempty"`
// Query: [Required] SQL query text to execute. The useLegacySql field
// can be used to indicate whether the query uses legacy SQL or standard
// SQL.
Query string `json:"query,omitempty"`
// QueryParameters: Query parameters for standard SQL queries.
QueryParameters []*QueryParameter `json:"queryParameters,omitempty"`
// RangePartitioning: [Experimental] Range partitioning specification
// for this table. Only one of timePartitioning and rangePartitioning
// should be specified.
RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"`
// SchemaUpdateOptions: Allows the schema of the destination table to be
// updated as a side effect of the query job. Schema update options are
// supported in two cases: when writeDisposition is WRITE_APPEND; when
// writeDisposition is WRITE_TRUNCATE and the destination table is a
// partition of a table, specified by partition decorators. For normal
// tables, WRITE_TRUNCATE will always overwrite the schema. One or more
// of the following values are specified: ALLOW_FIELD_ADDITION: allow
// adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow
// relaxing a required field in the original schema to nullable.
SchemaUpdateOptions []string `json:"schemaUpdateOptions,omitempty"`
// TableDefinitions: [Optional] If querying an external data source
// outside of BigQuery, describes the data format, location and other
// properties of the data source. By defining these properties, the data
// source can then be queried as if it were a standard BigQuery table.
TableDefinitions map[string]ExternalDataConfiguration `json:"tableDefinitions,omitempty"`
// TimePartitioning: Time-based partitioning specification for the
// destination table. Only one of timePartitioning and rangePartitioning
// should be specified.
TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"`
// UseLegacySql: Specifies whether to use BigQuery's legacy SQL dialect
// for this query. The default value is true. If set to false, the query
// will use BigQuery's standard SQL:
// https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is
// set to false, the value of flattenResults is ignored; query will be
// run as if flattenResults is false.
//
// Default: true
UseLegacySql *bool `json:"useLegacySql,omitempty"`
// UseQueryCache: [Optional] Whether to look for the result in the query
// cache. The query cache is a best-effort cache that will be flushed
// whenever tables in the query are modified. Moreover, the query cache
// is only available when a query does not have a destination table
// specified. The default value is true.
//
// Default: true
UseQueryCache *bool `json:"useQueryCache,omitempty"`
// UserDefinedFunctionResources: Describes user-defined function
// resources used in the query.
UserDefinedFunctionResources []*UserDefinedFunctionResource `json:"userDefinedFunctionResources,omitempty"`
// WriteDisposition: [Optional] Specifies the action that occurs if the
// destination table already exists. The following values are supported:
// WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the
// table data and uses the schema from the query result. WRITE_APPEND:
// If the table already exists, BigQuery appends the data to the table.
// WRITE_EMPTY: If the table already exists and contains data, a
// 'duplicate' error is returned in the job result. The default value is
// WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is
// able to complete the job successfully. Creation, truncation and
// append actions occur as one atomic update upon job completion.
WriteDisposition string `json:"writeDisposition,omitempty"`
// ForceSendFields is a list of field names (e.g. "AllowLargeResults")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AllowLargeResults") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *JobConfigurationQuery) MarshalJSON() ([]byte, error) {
type NoMethod JobConfigurationQuery
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobConfigurationTableCopy struct {
// CreateDisposition: [Optional] Specifies whether the job is allowed to
// create new tables. The following values are supported:
// CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the
// table. CREATE_NEVER: The table must already exist. If it does not, a
// 'notFound' error is returned in the job result. The default value is
// CREATE_IF_NEEDED. Creation, truncation and append actions occur as
// one atomic update upon job completion.
CreateDisposition string `json:"createDisposition,omitempty"`
// DestinationEncryptionConfiguration: Custom encryption configuration
// (e.g., Cloud KMS keys).
DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"`
// DestinationTable: [Required] The destination table
DestinationTable *TableReference `json:"destinationTable,omitempty"`
// SourceTable: [Pick one] Source table to copy.
SourceTable *TableReference `json:"sourceTable,omitempty"`
// SourceTables: [Pick one] Source tables to copy.
SourceTables []*TableReference `json:"sourceTables,omitempty"`
// WriteDisposition: [Optional] Specifies the action that occurs if the
// destination table already exists. The following values are supported:
// WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the
// table data. WRITE_APPEND: If the table already exists, BigQuery
// appends the data to the table. WRITE_EMPTY: If the table already
// exists and contains data, a 'duplicate' error is returned in the job
// result. The default value is WRITE_EMPTY. Each action is atomic and
// only occurs if BigQuery is able to complete the job successfully.
// Creation, truncation and append actions occur as one atomic update
// upon job completion.
WriteDisposition string `json:"writeDisposition,omitempty"`
// ForceSendFields is a list of field names (e.g. "CreateDisposition")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateDisposition") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *JobConfigurationTableCopy) MarshalJSON() ([]byte, error) {
type NoMethod JobConfigurationTableCopy
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobList struct {
// Etag: A hash of this page of results.
Etag string `json:"etag,omitempty"`
// Jobs: List of jobs that were requested.
Jobs []*JobListJobs `json:"jobs,omitempty"`
// Kind: The resource type of the response.
Kind string `json:"kind,omitempty"`
// NextPageToken: A token to request the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Etag") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Etag") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobList) MarshalJSON() ([]byte, error) {
type NoMethod JobList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobListJobs struct {
// Configuration: [Full-projection-only] Specifies the job
// configuration.
Configuration *JobConfiguration `json:"configuration,omitempty"`
// ErrorResult: A result object that will be present only if the job has
// failed.
ErrorResult *ErrorProto `json:"errorResult,omitempty"`
// Id: Unique opaque ID of the job.
Id string `json:"id,omitempty"`
// JobReference: Job reference uniquely identifying the job.
JobReference *JobReference `json:"jobReference,omitempty"`
// Kind: The resource type.
Kind string `json:"kind,omitempty"`
// State: Running state of the job. When the state is DONE, errorResult
// can be checked to determine whether the job succeeded or failed.
State string `json:"state,omitempty"`
// Statistics: [Output-only] Information about the job, including
// starting time and ending time of the job.
Statistics *JobStatistics `json:"statistics,omitempty"`
// Status: [Full-projection-only] Describes the state of the job.
Status *JobStatus `json:"status,omitempty"`
// UserEmail: [Full-projection-only] Email address of the user who ran
// the job.
UserEmail string `json:"user_email,omitempty"`
// ForceSendFields is a list of field names (e.g. "Configuration") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Configuration") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobListJobs) MarshalJSON() ([]byte, error) {
type NoMethod JobListJobs
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobReference struct {
// JobId: [Required] The ID of the job. The ID must contain only letters
// (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). The
// maximum length is 1,024 characters.
JobId string `json:"jobId,omitempty"`
// Location: The geographic location of the job. See details at
// https://cloud.google.com/bigquery/docs/locations#specifying_your_location.
Location string `json:"location,omitempty"`
// ProjectId: [Required] The ID of the project containing this job.
ProjectId string `json:"projectId,omitempty"`
// ForceSendFields is a list of field names (e.g. "JobId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "JobId") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobReference) MarshalJSON() ([]byte, error) {
type NoMethod JobReference
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobStatistics struct {
// CompletionRatio: [TrustedTester] [Output-only] Job progress (0.0 ->
// 1.0) for LOAD and EXTRACT jobs.
CompletionRatio float64 `json:"completionRatio,omitempty"`
// CreationTime: [Output-only] Creation time of this job, in
// milliseconds since the epoch. This field will be present on all jobs.
CreationTime int64 `json:"creationTime,omitempty,string"`
// EndTime: [Output-only] End time of this job, in milliseconds since
// the epoch. This field will be present whenever a job is in the DONE
// state.
EndTime int64 `json:"endTime,omitempty,string"`
// Extract: [Output-only] Statistics for an extract job.
Extract *JobStatistics4 `json:"extract,omitempty"`
// Load: [Output-only] Statistics for a load job.
Load *JobStatistics3 `json:"load,omitempty"`
// Query: [Output-only] Statistics for a query job.
Query *JobStatistics2 `json:"query,omitempty"`
// QuotaDeferments: [Output-only] Quotas which delayed this job's start
// time.
QuotaDeferments []string `json:"quotaDeferments,omitempty"`
// StartTime: [Output-only] Start time of this job, in milliseconds
// since the epoch. This field will be present when the job transitions
// from the PENDING state to either RUNNING or DONE.
StartTime int64 `json:"startTime,omitempty,string"`
// TotalBytesProcessed: [Output-only] [Deprecated] Use the bytes
// processed in the query statistics instead.
TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "CompletionRatio") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CompletionRatio") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *JobStatistics) MarshalJSON() ([]byte, error) {
type NoMethod JobStatistics
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *JobStatistics) UnmarshalJSON(data []byte) error {
type NoMethod JobStatistics
var s1 struct {
CompletionRatio gensupport.JSONFloat64 `json:"completionRatio"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.CompletionRatio = float64(s1.CompletionRatio)
return nil
}
type JobStatistics2 struct {
// BillingTier: [Output-only] Billing tier for the job.
BillingTier int64 `json:"billingTier,omitempty"`
// CacheHit: [Output-only] Whether the query result was fetched from the
// query cache.
CacheHit bool `json:"cacheHit,omitempty"`
// DdlOperationPerformed: The DDL operation performed, possibly
// dependent on the pre-existence of the DDL target. Possible values
// (new values might be added in the future): "CREATE": The query
// created the DDL target. "SKIP": No-op. Example cases: the query is
// CREATE TABLE IF NOT EXISTS while the table already exists, or the
// query is DROP TABLE IF EXISTS while the table does not exist.
// "REPLACE": The query replaced the DDL target. Example case: the query
// is CREATE OR REPLACE TABLE, and the table already exists. "DROP": The
// query deleted the DDL target.
DdlOperationPerformed string `json:"ddlOperationPerformed,omitempty"`
// DdlTargetTable: The DDL target table. Present only for CREATE/DROP
// TABLE/VIEW queries.
DdlTargetTable *TableReference `json:"ddlTargetTable,omitempty"`
// EstimatedBytesProcessed: [Output-only] The original estimate of bytes
// processed for the job.
EstimatedBytesProcessed int64 `json:"estimatedBytesProcessed,omitempty,string"`
// ModelTraining: [Output-only, Beta] Information about create model
// query job progress.
ModelTraining *BigQueryModelTraining `json:"modelTraining,omitempty"`
// ModelTrainingCurrentIteration: [Output-only, Beta] Deprecated; do not
// use.
ModelTrainingCurrentIteration int64 `json:"modelTrainingCurrentIteration,omitempty"`
// ModelTrainingExpectedTotalIteration: [Output-only, Beta] Deprecated;
// do not use.
ModelTrainingExpectedTotalIteration int64 `json:"modelTrainingExpectedTotalIteration,omitempty,string"`
// NumDmlAffectedRows: [Output-only] The number of rows affected by a
// DML statement. Present only for DML statements INSERT, UPDATE or
// DELETE.
NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"`
// QueryPlan: [Output-only] Describes execution plan for the query.
QueryPlan []*ExplainQueryStage `json:"queryPlan,omitempty"`
// ReferencedTables: [Output-only] Referenced tables for the job.
// Queries that reference more than 50 tables will not have a complete
// list.
ReferencedTables []*TableReference `json:"referencedTables,omitempty"`
// ReservationUsage: [Output-only] Job resource usage breakdown by
// reservation.
ReservationUsage []*JobStatistics2ReservationUsage `json:"reservationUsage,omitempty"`
// Schema: [Output-only] The schema of the results. Present only for
// successful dry run of non-legacy SQL queries.
Schema *TableSchema `json:"schema,omitempty"`
// StatementType: The type of query statement, if valid. Possible values
// (new values might be added in the future): "SELECT": SELECT query.
// "INSERT": INSERT query; see
// https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language "UPDATE": UPDATE query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language "DELETE": DELETE query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language "MERGE": MERGE query; see https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language "CREATE_TABLE": CREATE [OR REPLACE] TABLE without AS SELECT. "CREATE_TABLE_AS_SELECT": CREATE [OR REPLACE] TABLE ... AS SELECT ... "DROP_TABLE": DROP TABLE query. "CREATE_VIEW": CREATE [OR REPLACE] VIEW ... AS SELECT ... "DROP_VIEW": DROP VIEW
// query.
StatementType string `json:"statementType,omitempty"`
// Timeline: [Output-only] [Beta] Describes a timeline of job execution.
Timeline []*QueryTimelineSample `json:"timeline,omitempty"`
// TotalBytesBilled: [Output-only] Total bytes billed for the job.
TotalBytesBilled int64 `json:"totalBytesBilled,omitempty,string"`
// TotalBytesProcessed: [Output-only] Total bytes processed for the job.
TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"`
// TotalPartitionsProcessed: [Output-only] Total number of partitions
// processed from all partitioned tables referenced in the job.
TotalPartitionsProcessed int64 `json:"totalPartitionsProcessed,omitempty,string"`
// TotalSlotMs: [Output-only] Slot-milliseconds for the job.
TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"`
// UndeclaredQueryParameters: Standard SQL only: list of undeclared
// query parameters detected during a dry run validation.
UndeclaredQueryParameters []*QueryParameter `json:"undeclaredQueryParameters,omitempty"`
// ForceSendFields is a list of field names (e.g. "BillingTier") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BillingTier") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobStatistics2) MarshalJSON() ([]byte, error) {
type NoMethod JobStatistics2
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobStatistics2ReservationUsage struct {
// Name: [Output-only] Reservation name or "unreserved" for on-demand
// resources usage.
Name string `json:"name,omitempty"`
// SlotMs: [Output-only] Slot-milliseconds the job spent in the given
// reservation.
SlotMs int64 `json:"slotMs,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "Name") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobStatistics2ReservationUsage) MarshalJSON() ([]byte, error) {
type NoMethod JobStatistics2ReservationUsage
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobStatistics3 struct {
// BadRecords: [Output-only] The number of bad records encountered. Note
// that if the job has failed because of more bad records encountered
// than the maximum allowed in the load job configuration, then this
// number can be less than the total number of bad records present in
// the input data.
BadRecords int64 `json:"badRecords,omitempty,string"`
// InputFileBytes: [Output-only] Number of bytes of source data in a
// load job.
InputFileBytes int64 `json:"inputFileBytes,omitempty,string"`
// InputFiles: [Output-only] Number of source files in a load job.
InputFiles int64 `json:"inputFiles,omitempty,string"`
// OutputBytes: [Output-only] Size of the loaded data in bytes. Note
// that while a load job is in the running state, this value may change.
OutputBytes int64 `json:"outputBytes,omitempty,string"`
// OutputRows: [Output-only] Number of rows imported in a load job. Note
// that while an import job is in the running state, this value may
// change.
OutputRows int64 `json:"outputRows,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "BadRecords") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BadRecords") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobStatistics3) MarshalJSON() ([]byte, error) {
type NoMethod JobStatistics3
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobStatistics4 struct {
// DestinationUriFileCounts: [Output-only] Number of files per
// destination URI or URI pattern specified in the extract
// configuration. These values will be in the same order as the URIs
// specified in the 'destinationUris' field.
DestinationUriFileCounts googleapi.Int64s `json:"destinationUriFileCounts,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "DestinationUriFileCounts") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DestinationUriFileCounts")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *JobStatistics4) MarshalJSON() ([]byte, error) {
type NoMethod JobStatistics4
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JobStatus struct {
// ErrorResult: [Output-only] Final error result of the job. If present,
// indicates that the job has completed and was unsuccessful.
ErrorResult *ErrorProto `json:"errorResult,omitempty"`
// Errors: [Output-only] The first errors encountered during the running
// of the job. The final message includes the number of errors that
// caused the process to stop. Errors here do not necessarily mean that
// the job has completed or was unsuccessful.
Errors []*ErrorProto `json:"errors,omitempty"`
// State: [Output-only] Running state of the job.
State string `json:"state,omitempty"`
// ForceSendFields is a list of field names (e.g. "ErrorResult") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ErrorResult") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *JobStatus) MarshalJSON() ([]byte, error) {
type NoMethod JobStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type JsonValue interface{}
type ModelDefinition struct {
// ModelOptions: [Output-only, Beta] Model options used for the first
// training run. These options are immutable for subsequent training
// runs. Default values are used for any options not specified in the
// input query.
ModelOptions *ModelDefinitionModelOptions `json:"modelOptions,omitempty"`
// TrainingRuns: [Output-only, Beta] Information about ml training runs,
// each training run comprises of multiple iterations and there may be
// multiple training runs for the model if warm start is used or if a
// user decides to continue a previously cancelled query.
TrainingRuns []*TrainingRun `json:"trainingRuns,omitempty"`
// ForceSendFields is a list of field names (e.g. "ModelOptions") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ModelOptions") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ModelDefinition) MarshalJSON() ([]byte, error) {
type NoMethod ModelDefinition
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ModelDefinitionModelOptions: [Output-only, Beta] Model options used
// for the first training run. These options are immutable for
// subsequent training runs. Default values are used for any options not
// specified in the input query.
type ModelDefinitionModelOptions struct {
Labels []string `json:"labels,omitempty"`
LossType string `json:"lossType,omitempty"`
ModelType string `json:"modelType,omitempty"`
// ForceSendFields is a list of field names (e.g. "Labels") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Labels") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ModelDefinitionModelOptions) MarshalJSON() ([]byte, error) {
type NoMethod ModelDefinitionModelOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ProjectList struct {
// Etag: A hash of the page of results
Etag string `json:"etag,omitempty"`
// Kind: The type of list.
Kind string `json:"kind,omitempty"`
// NextPageToken: A token to request the next page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// Projects: Projects to which you have at least READ access.
Projects []*ProjectListProjects `json:"projects,omitempty"`
// TotalItems: The total number of projects in the list.
TotalItems int64 `json:"totalItems,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Etag") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Etag") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ProjectList) MarshalJSON() ([]byte, error) {
type NoMethod ProjectList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ProjectListProjects struct {
// FriendlyName: A descriptive name for this project.
FriendlyName string `json:"friendlyName,omitempty"`
// Id: An opaque ID of this project.
Id string `json:"id,omitempty"`
// Kind: The resource type.
Kind string `json:"kind,omitempty"`
// NumericId: The numeric ID of this project.
NumericId uint64 `json:"numericId,omitempty,string"`
// ProjectReference: A unique reference to this project.
ProjectReference *ProjectReference `json:"projectReference,omitempty"`
// ForceSendFields is a list of field names (e.g. "FriendlyName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FriendlyName") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ProjectListProjects) MarshalJSON() ([]byte, error) {
type NoMethod ProjectListProjects
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type ProjectReference struct {
// ProjectId: [Required] ID of the project. Can be either the numeric ID
// or the assigned ID of the project.
ProjectId string `json:"projectId,omitempty"`
// ForceSendFields is a list of field names (e.g. "ProjectId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ProjectId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ProjectReference) MarshalJSON() ([]byte, error) {
type NoMethod ProjectReference
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type QueryParameter struct {
// Name: [Optional] If unset, this is a positional parameter. Otherwise,
// should be unique within a query.
Name string `json:"name,omitempty"`
// ParameterType: [Required] The type of this parameter.
ParameterType *QueryParameterType `json:"parameterType,omitempty"`
// ParameterValue: [Required] The value of this parameter.
ParameterValue *QueryParameterValue `json:"parameterValue,omitempty"`
// ForceSendFields is a list of field names (e.g. "Name") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QueryParameter) MarshalJSON() ([]byte, error) {
type NoMethod QueryParameter
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type QueryParameterType struct {
// ArrayType: [Optional] The type of the array's elements, if this is an
// array.
ArrayType *QueryParameterType `json:"arrayType,omitempty"`
// StructTypes: [Optional] The types of the fields of this struct, in
// order, if this is a struct.
StructTypes []*QueryParameterTypeStructTypes `json:"structTypes,omitempty"`
// Type: [Required] The top level type of this field.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "ArrayType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ArrayType") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QueryParameterType) MarshalJSON() ([]byte, error) {
type NoMethod QueryParameterType
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type QueryParameterTypeStructTypes struct {
// Description: [Optional] Human-oriented description of the field.
Description string `json:"description,omitempty"`
// Name: [Optional] The name of this field.
Name string `json:"name,omitempty"`
// Type: [Required] The type of this field.
Type *QueryParameterType `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Description") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Description") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QueryParameterTypeStructTypes) MarshalJSON() ([]byte, error) {
type NoMethod QueryParameterTypeStructTypes
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type QueryParameterValue struct {
// ArrayValues: [Optional] The array values, if this is an array type.
ArrayValues []*QueryParameterValue `json:"arrayValues,omitempty"`
// StructValues: [Optional] The struct field values, in order of the
// struct type's declaration.
StructValues map[string]QueryParameterValue `json:"structValues,omitempty"`
// Value: [Optional] The value of this value, if a simple scalar type.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "ArrayValues") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ArrayValues") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QueryParameterValue) MarshalJSON() ([]byte, error) {
type NoMethod QueryParameterValue
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type QueryRequest struct {
// DefaultDataset: [Optional] Specifies the default datasetId and
// projectId to assume for any unqualified table names in the query. If
// not set, all table names in the query string must be qualified in the
// format 'datasetId.tableId'.
DefaultDataset *DatasetReference `json:"defaultDataset,omitempty"`
// DryRun: [Optional] If set to true, BigQuery doesn't run the job.
// Instead, if the query is valid, BigQuery returns statistics about the
// job such as how many bytes would be processed. If the query is
// invalid, an error returns. The default value is false.
DryRun bool `json:"dryRun,omitempty"`
// Kind: The resource type of the request.
Kind string `json:"kind,omitempty"`
// Location: The geographic location where the job should run. Required
// except for US and EU.
Location string `json:"location,omitempty"`
// MaxResults: [Optional] The maximum number of rows of data to return
// per page of results. Setting this flag to a small value such as 1000
// and then paging through results might improve reliability when the
// query result set is large. In addition to this limit, responses are
// also limited to 10 MB. By default, there is no maximum row count, and
// only the byte limit applies.
MaxResults int64 `json:"maxResults,omitempty"`
// ParameterMode: Standard SQL only. Set to POSITIONAL to use positional
// (?) query parameters or to NAMED to use named (@myparam) query
// parameters in this query.
ParameterMode string `json:"parameterMode,omitempty"`
// PreserveNulls: [Deprecated] This property is deprecated.
PreserveNulls bool `json:"preserveNulls,omitempty"`
// Query: [Required] A query string, following the BigQuery query
// syntax, of the query to execute. Example: "SELECT count(f1) FROM
// [myProjectId:myDatasetId.myTableId]".
Query string `json:"query,omitempty"`
// QueryParameters: Query parameters for Standard SQL queries.
QueryParameters []*QueryParameter `json:"queryParameters,omitempty"`
// TimeoutMs: [Optional] How long to wait for the query to complete, in
// milliseconds, before the request times out and returns. Note that
// this is only a timeout for the request, not the query. If the query
// takes longer to run than the timeout value, the call returns without
// any results and with the 'jobComplete' flag set to false. You can
// call GetQueryResults() to wait for the query to complete and read the
// results. The default value is 10000 milliseconds (10 seconds).
TimeoutMs int64 `json:"timeoutMs,omitempty"`
// UseLegacySql: Specifies whether to use BigQuery's legacy SQL dialect
// for this query. The default value is true. If set to false, the query
// will use BigQuery's standard SQL:
// https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is
// set to false, the value of flattenResults is ignored; query will be
// run as if flattenResults is false.
//
// Default: true
UseLegacySql *bool `json:"useLegacySql,omitempty"`
// UseQueryCache: [Optional] Whether to look for the result in the query
// cache. The query cache is a best-effort cache that will be flushed
// whenever tables in the query are modified. The default value is true.
//
// Default: true
UseQueryCache *bool `json:"useQueryCache,omitempty"`
// ForceSendFields is a list of field names (e.g. "DefaultDataset") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DefaultDataset") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *QueryRequest) MarshalJSON() ([]byte, error) {
type NoMethod QueryRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type QueryResponse struct {
// CacheHit: Whether the query result was fetched from the query cache.
CacheHit bool `json:"cacheHit,omitempty"`
// Errors: [Output-only] The first errors or warnings encountered during
// the running of the job. The final message includes the number of
// errors that caused the process to stop. Errors here do not
// necessarily mean that the job has completed or was unsuccessful.
Errors []*ErrorProto `json:"errors,omitempty"`
// JobComplete: Whether the query has completed or not. If rows or
// totalRows are present, this will always be true. If this is false,
// totalRows will not be available.
JobComplete bool `json:"jobComplete,omitempty"`
// JobReference: Reference to the Job that was created to run the query.
// This field will be present even if the original request timed out, in
// which case GetQueryResults can be used to read the results once the
// query has completed. Since this API only returns the first page of
// results, subsequent pages can be fetched via the same mechanism
// (GetQueryResults).
JobReference *JobReference `json:"jobReference,omitempty"`
// Kind: The resource type.
Kind string `json:"kind,omitempty"`
// NumDmlAffectedRows: [Output-only] The number of rows affected by a
// DML statement. Present only for DML statements INSERT, UPDATE or
// DELETE.
NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"`
// PageToken: A token used for paging results.
PageToken string `json:"pageToken,omitempty"`
// Rows: An object with as many results as can be contained within the
// maximum permitted reply size. To get any additional rows, you can
// call GetQueryResults and specify the jobReference returned above.
Rows []*TableRow `json:"rows,omitempty"`
// Schema: The schema of the results. Present only when the query
// completes successfully.
Schema *TableSchema `json:"schema,omitempty"`
// TotalBytesProcessed: The total number of bytes processed for this
// query. If this query was a dry run, this is the number of bytes that
// would be processed if the query were run.
TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"`
// TotalRows: The total number of rows in the complete query result set,
// which can be more than the number of rows in this single page of
// results.
TotalRows uint64 `json:"totalRows,omitempty,string"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CacheHit") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CacheHit") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QueryResponse) MarshalJSON() ([]byte, error) {
type NoMethod QueryResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type QueryTimelineSample struct {
// ActiveUnits: Total number of units currently being processed by
// workers. This does not correspond directly to slot usage. This is the
// largest value observed since the last sample.
ActiveUnits int64 `json:"activeUnits,omitempty,string"`
// CompletedUnits: Total parallel units of work completed by this query.
CompletedUnits int64 `json:"completedUnits,omitempty,string"`
// ElapsedMs: Milliseconds elapsed since the start of query execution.
ElapsedMs int64 `json:"elapsedMs,omitempty,string"`
// PendingUnits: Total parallel units of work remaining for the active
// stages.
PendingUnits int64 `json:"pendingUnits,omitempty,string"`
// TotalSlotMs: Cumulative slot-ms consumed by the query.
TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "ActiveUnits") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ActiveUnits") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *QueryTimelineSample) MarshalJSON() ([]byte, error) {
type NoMethod QueryTimelineSample
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type RangePartitioning struct {
// Field: [Experimental] [Required] The table is partitioned by this
// field. The field must be a top-level NULLABLE/REQUIRED field. The
// only supported type is INTEGER/INT64.
Field string `json:"field,omitempty"`
// Range: [Experimental] [Required] Defines the ranges for range
// partitioning.
Range *RangePartitioningRange `json:"range,omitempty"`
// ForceSendFields is a list of field names (e.g. "Field") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Field") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RangePartitioning) MarshalJSON() ([]byte, error) {
type NoMethod RangePartitioning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RangePartitioningRange: [Experimental] [Required] Defines the ranges
// for range partitioning.
type RangePartitioningRange struct {
// End: [Experimental] [Required] The end of range partitioning,
// exclusive.
End int64 `json:"end,omitempty,string"`
// Interval: [Experimental] [Required] The width of each interval.
Interval int64 `json:"interval,omitempty,string"`
// Start: [Experimental] [Required] The start of range partitioning,
// inclusive.
Start int64 `json:"start,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "End") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "End") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RangePartitioningRange) MarshalJSON() ([]byte, error) {
type NoMethod RangePartitioningRange
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Streamingbuffer struct {
// EstimatedBytes: [Output-only] A lower-bound estimate of the number of
// bytes currently in the streaming buffer.
EstimatedBytes uint64 `json:"estimatedBytes,omitempty,string"`
// EstimatedRows: [Output-only] A lower-bound estimate of the number of
// rows currently in the streaming buffer.
EstimatedRows uint64 `json:"estimatedRows,omitempty,string"`
// OldestEntryTime: [Output-only] Contains the timestamp of the oldest
// entry in the streaming buffer, in milliseconds since the epoch, if
// the streaming buffer is available.
OldestEntryTime uint64 `json:"oldestEntryTime,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "EstimatedBytes") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EstimatedBytes") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Streamingbuffer) MarshalJSON() ([]byte, error) {
type NoMethod Streamingbuffer
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type Table struct {
// Clustering: [Experimental] Clustering specification for the table.
// Must be specified with partitioning, data in the table will be first
// partitioned and subsequently clustered.
Clustering *Clustering `json:"clustering,omitempty"`
// CreationTime: [Output-only] The time when this table was created, in
// milliseconds since the epoch.
CreationTime int64 `json:"creationTime,omitempty,string"`
// Description: [Optional] A user-friendly description of this table.
Description string `json:"description,omitempty"`
// EncryptionConfiguration: Custom encryption configuration (e.g., Cloud
// KMS keys).
EncryptionConfiguration *EncryptionConfiguration `json:"encryptionConfiguration,omitempty"`
// Etag: [Output-only] A hash of the table metadata. Used to ensure
// there were no concurrent modifications to the resource when
// attempting an update. Not guaranteed to change when the table
// contents or the fields numRows, numBytes, numLongTermBytes or
// lastModifiedTime change.
Etag string `json:"etag,omitempty"`
// ExpirationTime: [Optional] The time when this table expires, in
// milliseconds since the epoch. If not present, the table will persist
// indefinitely. Expired tables will be deleted and their storage
// reclaimed. The defaultTableExpirationMs property of the encapsulating
// dataset can be used to set a default expirationTime on newly created
// tables.
ExpirationTime int64 `json:"expirationTime,omitempty,string"`
// ExternalDataConfiguration: [Optional] Describes the data format,
// location, and other properties of a table stored outside of BigQuery.
// By defining these properties, the data source can then be queried as
// if it were a standard BigQuery table.
ExternalDataConfiguration *ExternalDataConfiguration `json:"externalDataConfiguration,omitempty"`
// FriendlyName: [Optional] A descriptive name for this table.
FriendlyName string `json:"friendlyName,omitempty"`
// Id: [Output-only] An opaque ID uniquely identifying the table.
Id string `json:"id,omitempty"`
// Kind: [Output-only] The type of the resource.
Kind string `json:"kind,omitempty"`
// Labels: The labels associated with this table. You can use these to
// organize and group your tables. Label keys and values can be no
// longer than 63 characters, can only contain lowercase letters,
// numeric characters, underscores and dashes. International characters
// are allowed. Label values are optional. Label keys must start with a
// letter and each label in the list must have a different key.
Labels map[string]string `json:"labels,omitempty"`
// LastModifiedTime: [Output-only] The time when this table was last
// modified, in milliseconds since the epoch.
LastModifiedTime uint64 `json:"lastModifiedTime,omitempty,string"`
// Location: [Output-only] The geographic location where the table
// resides. This value is inherited from the dataset.
Location string `json:"location,omitempty"`
// Model: [Output-only, Beta] Present iff this table represents a ML
// model. Describes the training information for the model, and it is
// required to run 'PREDICT' queries.
Model *ModelDefinition `json:"model,omitempty"`
// NumBytes: [Output-only] The size of this table in bytes, excluding
// any data in the streaming buffer.
NumBytes int64 `json:"numBytes,omitempty,string"`
// NumLongTermBytes: [Output-only] The number of bytes in the table that
// are considered "long-term storage".
NumLongTermBytes int64 `json:"numLongTermBytes,omitempty,string"`
// NumPhysicalBytes: [Output-only] [Experimental] The physical size of
// this table in bytes, excluding any data in the streaming buffer. This
// includes compression and storage used for time travel.
NumPhysicalBytes int64 `json:"numPhysicalBytes,omitempty,string"`
// NumRows: [Output-only] The number of rows of data in this table,
// excluding any data in the streaming buffer.
NumRows uint64 `json:"numRows,omitempty,string"`
// RangePartitioning: [Experimental] Range partitioning specification
// for this table. Only one of timePartitioning and rangePartitioning
// should be specified.
RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"`
// RequirePartitionFilter: [Experimental] [Optional] If set to true,
// queries over this table require a partition filter that can be used
// for partition elimination to be specified.
RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"`
// Schema: [Optional] Describes the schema of this table.
Schema *TableSchema `json:"schema,omitempty"`
// SelfLink: [Output-only] A URL that can be used to access this
// resource again.
SelfLink string `json:"selfLink,omitempty"`
// StreamingBuffer: [Output-only] Contains information regarding this
// table's streaming buffer, if one is present. This field will be
// absent if the table is not being streamed to or if there is no data
// in the streaming buffer.
StreamingBuffer *Streamingbuffer `json:"streamingBuffer,omitempty"`
// TableReference: [Required] Reference describing the ID of this table.
TableReference *TableReference `json:"tableReference,omitempty"`
// TimePartitioning: Time-based partitioning specification for this
// table. Only one of timePartitioning and rangePartitioning should be
// specified.
TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"`
// Type: [Output-only] Describes the table type. The following values
// are supported: TABLE: A normal BigQuery table. VIEW: A virtual table
// defined by a SQL query. EXTERNAL: A table that references data stored
// in an external storage system, such as Google Cloud Storage. The
// default value is TABLE.
Type string `json:"type,omitempty"`
// View: [Optional] The view definition.
View *ViewDefinition `json:"view,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Clustering") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Clustering") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Table) MarshalJSON() ([]byte, error) {
type NoMethod Table
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type TableCell struct {
V interface{} `json:"v,omitempty"`
// ForceSendFields is a list of field names (e.g. "V") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "V") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *TableCell) MarshalJSON() ([]byte, error) {
type NoMethod TableCell
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type TableDataInsertAllRequest struct {
// IgnoreUnknownValues: [Optional] Accept rows that contain values that
// do not match the schema. The unknown values are ignored. Default is
// false, which treats unknown values as errors.
IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"`
// Kind: The resource type of the response.
Kind string `json:"kind,omitempty"`
// Rows: The rows to insert.
Rows []*TableDataInsertAllRequestRows `json:"rows,omitempty"`
// SkipInvalidRows: [Optional] Insert all valid rows of a request, even
// if invalid rows exist. The default value is false, which causes the
// entire request to fail if any invalid rows exist.
SkipInvalidRows bool `json:"skipInvalidRows,omitempty"`
// TemplateSuffix: [Experimental] If specified, treats the destination
// table as a base template, and inserts the rows into an instance table
// named "{destination}{templateSuffix}". BigQuery will manage creation
// of the instance table, using the schema of the base template table.
// See
// https://cloud.google.com/bigquery/streaming-data-into-bigquery#template-tables for considerations when working with templates
// tables.
TemplateSuffix string `json:"templateSuffix,omitempty"`
// ForceSendFields is a list of field names (e.g. "IgnoreUnknownValues")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "IgnoreUnknownValues") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *TableDataInsertAllRequest) MarshalJSON() ([]byte, error) {
type NoMethod TableDataInsertAllRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type TableDataInsertAllRequestRows struct {
// InsertId: [Optional] A unique ID for each row. BigQuery uses this
// property to detect duplicate insertion requests on a best-effort
// basis.
InsertId string `json:"insertId,omitempty"`
// Json: [Required] A JSON object that contains a row of data. The
// object's properties and values must match the destination table's
// schema.
Json map[string]JsonValue `json:"json,omitempty"`
// ForceSendFields is a list of field names (e.g. "InsertId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "InsertId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *TableDataInsertAllRequestRows) MarshalJSON() ([]byte, error) {
type NoMethod TableDataInsertAllRequestRows
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type TableDataInsertAllResponse struct {
// InsertErrors: An array of errors for rows that were not inserted.
InsertErrors []*TableDataInsertAllResponseInsertErrors `json:"insertErrors,omitempty"`
// Kind: The resource type of the response.
Kind string `json:"kind,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "InsertErrors") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "InsertErrors") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *TableDataInsertAllResponse) MarshalJSON() ([]byte, error) {
type NoMethod TableDataInsertAllResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}