1// Copyright 2020 Google LLC. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// Code generated file. DO NOT EDIT. 6 7// Package bigquery provides access to the BigQuery API. 8// 9// This package is DEPRECATED. Use package cloud.google.com/go/bigquery instead. 10// 11// For product documentation, see: https://cloud.google.com/bigquery/ 12// 13// Creating a client 14// 15// Usage example: 16// 17// import "google.golang.org/api/bigquery/v2" 18// ... 19// ctx := context.Background() 20// bigqueryService, err := bigquery.NewService(ctx) 21// 22// In this example, Google Application Default Credentials are used for authentication. 23// 24// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 25// 26// Other authentication options 27// 28// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes: 29// 30// bigqueryService, err := bigquery.NewService(ctx, option.WithScopes(bigquery.DevstorageReadWriteScope)) 31// 32// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: 33// 34// bigqueryService, err := bigquery.NewService(ctx, option.WithAPIKey("AIza...")) 35// 36// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: 37// 38// config := &oauth2.Config{...} 39// // ... 40// token, err := config.Exchange(ctx, ...) 41// bigqueryService, err := bigquery.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 42// 43// See https://godoc.org/google.golang.org/api/option/ for details on options. 44package bigquery // import "google.golang.org/api/bigquery/v2" 45 46import ( 47 "bytes" 48 "context" 49 "encoding/json" 50 "errors" 51 "fmt" 52 "io" 53 "net/http" 54 "net/url" 55 "strconv" 56 "strings" 57 58 googleapi "google.golang.org/api/googleapi" 59 gensupport "google.golang.org/api/internal/gensupport" 60 option "google.golang.org/api/option" 61 internaloption "google.golang.org/api/option/internaloption" 62 htransport "google.golang.org/api/transport/http" 63) 64 65// Always reference these packages, just in case the auto-generated code 66// below doesn't. 67var _ = bytes.NewBuffer 68var _ = strconv.Itoa 69var _ = fmt.Sprintf 70var _ = json.NewDecoder 71var _ = io.Copy 72var _ = url.Parse 73var _ = gensupport.MarshalJSON 74var _ = googleapi.Version 75var _ = errors.New 76var _ = strings.Replace 77var _ = context.Canceled 78var _ = internaloption.WithDefaultEndpoint 79 80const apiId = "bigquery:v2" 81const apiName = "bigquery" 82const apiVersion = "v2" 83const basePath = "https://bigquery.googleapis.com/bigquery/v2/" 84const mtlsBasePath = "https://bigquery.mtls.googleapis.com/bigquery/v2/" 85 86// OAuth2 scopes used by this API. 87const ( 88 // View and manage your data in Google BigQuery 89 BigqueryScope = "https://www.googleapis.com/auth/bigquery" 90 91 // Insert data into Google BigQuery 92 BigqueryInsertdataScope = "https://www.googleapis.com/auth/bigquery.insertdata" 93 94 // View your data in Google BigQuery 95 BigqueryReadonlyScope = "https://www.googleapis.com/auth/bigquery.readonly" 96 97 // View and manage your data across Google Cloud Platform services 98 CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" 99 100 // View your data across Google Cloud Platform services 101 CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" 102 103 // Manage your data and permissions in Google Cloud Storage 104 DevstorageFullControlScope = "https://www.googleapis.com/auth/devstorage.full_control" 105 106 // View your data in Google Cloud Storage 107 DevstorageReadOnlyScope = "https://www.googleapis.com/auth/devstorage.read_only" 108 109 // Manage your data in Google Cloud Storage 110 DevstorageReadWriteScope = "https://www.googleapis.com/auth/devstorage.read_write" 111) 112 113// NewService creates a new Service. 114func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 115 scopesOption := option.WithScopes( 116 "https://www.googleapis.com/auth/bigquery", 117 "https://www.googleapis.com/auth/bigquery.insertdata", 118 "https://www.googleapis.com/auth/bigquery.readonly", 119 "https://www.googleapis.com/auth/cloud-platform", 120 "https://www.googleapis.com/auth/cloud-platform.read-only", 121 "https://www.googleapis.com/auth/devstorage.full_control", 122 "https://www.googleapis.com/auth/devstorage.read_only", 123 "https://www.googleapis.com/auth/devstorage.read_write", 124 ) 125 // NOTE: prepend, so we don't override user-specified scopes. 126 opts = append([]option.ClientOption{scopesOption}, opts...) 127 opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) 128 opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) 129 client, endpoint, err := htransport.NewClient(ctx, opts...) 130 if err != nil { 131 return nil, err 132 } 133 s, err := New(client) 134 if err != nil { 135 return nil, err 136 } 137 if endpoint != "" { 138 s.BasePath = endpoint 139 } 140 return s, nil 141} 142 143// New creates a new Service. It uses the provided http.Client for requests. 144// 145// Deprecated: please use NewService instead. 146// To provide a custom HTTP client, use option.WithHTTPClient. 147// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 148func New(client *http.Client) (*Service, error) { 149 if client == nil { 150 return nil, errors.New("client is nil") 151 } 152 s := &Service{client: client, BasePath: basePath} 153 s.Datasets = NewDatasetsService(s) 154 s.Jobs = NewJobsService(s) 155 s.Models = NewModelsService(s) 156 s.Projects = NewProjectsService(s) 157 s.Routines = NewRoutinesService(s) 158 s.RowAccessPolicies = NewRowAccessPoliciesService(s) 159 s.Tabledata = NewTabledataService(s) 160 s.Tables = NewTablesService(s) 161 return s, nil 162} 163 164type Service struct { 165 client *http.Client 166 BasePath string // API endpoint base URL 167 UserAgent string // optional additional User-Agent fragment 168 169 Datasets *DatasetsService 170 171 Jobs *JobsService 172 173 Models *ModelsService 174 175 Projects *ProjectsService 176 177 Routines *RoutinesService 178 179 RowAccessPolicies *RowAccessPoliciesService 180 181 Tabledata *TabledataService 182 183 Tables *TablesService 184} 185 186func (s *Service) userAgent() string { 187 if s.UserAgent == "" { 188 return googleapi.UserAgent 189 } 190 return googleapi.UserAgent + " " + s.UserAgent 191} 192 193func NewDatasetsService(s *Service) *DatasetsService { 194 rs := &DatasetsService{s: s} 195 return rs 196} 197 198type DatasetsService struct { 199 s *Service 200} 201 202func NewJobsService(s *Service) *JobsService { 203 rs := &JobsService{s: s} 204 return rs 205} 206 207type JobsService struct { 208 s *Service 209} 210 211func NewModelsService(s *Service) *ModelsService { 212 rs := &ModelsService{s: s} 213 return rs 214} 215 216type ModelsService struct { 217 s *Service 218} 219 220func NewProjectsService(s *Service) *ProjectsService { 221 rs := &ProjectsService{s: s} 222 return rs 223} 224 225type ProjectsService struct { 226 s *Service 227} 228 229func NewRoutinesService(s *Service) *RoutinesService { 230 rs := &RoutinesService{s: s} 231 return rs 232} 233 234type RoutinesService struct { 235 s *Service 236} 237 238func NewRowAccessPoliciesService(s *Service) *RowAccessPoliciesService { 239 rs := &RowAccessPoliciesService{s: s} 240 return rs 241} 242 243type RowAccessPoliciesService struct { 244 s *Service 245} 246 247func NewTabledataService(s *Service) *TabledataService { 248 rs := &TabledataService{s: s} 249 return rs 250} 251 252type TabledataService struct { 253 s *Service 254} 255 256func NewTablesService(s *Service) *TablesService { 257 rs := &TablesService{s: s} 258 return rs 259} 260 261type TablesService struct { 262 s *Service 263} 264 265// AggregateClassificationMetrics: Aggregate metrics for 266// classification/classifier models. For multi-class models, the metrics 267// are either macro-averaged or micro-averaged. When macro-averaged, the 268// metrics are calculated for each label and then an unweighted average 269// is taken of those values. When micro-averaged, the metric is 270// calculated globally by counting the total number of correctly 271// predicted rows. 272type AggregateClassificationMetrics struct { 273 // Accuracy: Accuracy is the fraction of predictions given the correct 274 // label. For multiclass this is a micro-averaged metric. 275 Accuracy float64 `json:"accuracy,omitempty"` 276 277 // F1Score: The F1 score is an average of recall and precision. For 278 // multiclass this is a macro-averaged metric. 279 F1Score float64 `json:"f1Score,omitempty"` 280 281 // LogLoss: Logarithmic Loss. For multiclass this is a macro-averaged 282 // metric. 283 LogLoss float64 `json:"logLoss,omitempty"` 284 285 // Precision: Precision is the fraction of actual positive predictions 286 // that had positive actual labels. For multiclass this is a 287 // macro-averaged metric treating each class as a binary classifier. 288 Precision float64 `json:"precision,omitempty"` 289 290 // Recall: Recall is the fraction of actual positive labels that were 291 // given a positive prediction. For multiclass this is a macro-averaged 292 // metric. 293 Recall float64 `json:"recall,omitempty"` 294 295 // RocAuc: Area Under a ROC Curve. For multiclass this is a 296 // macro-averaged metric. 297 RocAuc float64 `json:"rocAuc,omitempty"` 298 299 // Threshold: Threshold at which the metrics are computed. For binary 300 // classification models this is the positive class threshold. For 301 // multi-class classfication models this is the confidence threshold. 302 Threshold float64 `json:"threshold,omitempty"` 303 304 // ForceSendFields is a list of field names (e.g. "Accuracy") to 305 // unconditionally include in API requests. By default, fields with 306 // empty values are omitted from API requests. However, any non-pointer, 307 // non-interface field appearing in ForceSendFields will be sent to the 308 // server regardless of whether the field is empty or not. This may be 309 // used to include empty fields in Patch requests. 310 ForceSendFields []string `json:"-"` 311 312 // NullFields is a list of field names (e.g. "Accuracy") to include in 313 // API requests with the JSON null value. By default, fields with empty 314 // values are omitted from API requests. However, any field with an 315 // empty value appearing in NullFields will be sent to the server as 316 // null. It is an error if a field in this list has a non-empty value. 317 // This may be used to include null fields in Patch requests. 318 NullFields []string `json:"-"` 319} 320 321func (s *AggregateClassificationMetrics) MarshalJSON() ([]byte, error) { 322 type NoMethod AggregateClassificationMetrics 323 raw := NoMethod(*s) 324 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 325} 326 327func (s *AggregateClassificationMetrics) UnmarshalJSON(data []byte) error { 328 type NoMethod AggregateClassificationMetrics 329 var s1 struct { 330 Accuracy gensupport.JSONFloat64 `json:"accuracy"` 331 F1Score gensupport.JSONFloat64 `json:"f1Score"` 332 LogLoss gensupport.JSONFloat64 `json:"logLoss"` 333 Precision gensupport.JSONFloat64 `json:"precision"` 334 Recall gensupport.JSONFloat64 `json:"recall"` 335 RocAuc gensupport.JSONFloat64 `json:"rocAuc"` 336 Threshold gensupport.JSONFloat64 `json:"threshold"` 337 *NoMethod 338 } 339 s1.NoMethod = (*NoMethod)(s) 340 if err := json.Unmarshal(data, &s1); err != nil { 341 return err 342 } 343 s.Accuracy = float64(s1.Accuracy) 344 s.F1Score = float64(s1.F1Score) 345 s.LogLoss = float64(s1.LogLoss) 346 s.Precision = float64(s1.Precision) 347 s.Recall = float64(s1.Recall) 348 s.RocAuc = float64(s1.RocAuc) 349 s.Threshold = float64(s1.Threshold) 350 return nil 351} 352 353// Argument: Input/output argument of a function or a stored procedure. 354type Argument struct { 355 // ArgumentKind: Optional. Defaults to FIXED_TYPE. 356 // 357 // Possible values: 358 // "ARGUMENT_KIND_UNSPECIFIED" 359 // "FIXED_TYPE" - The argument is a variable with fully specified 360 // type, which can be a struct or an array, but not a table. 361 // "ANY_TYPE" - The argument is any type, including struct or array, 362 // but not a table. To be added: FIXED_TABLE, ANY_TABLE 363 ArgumentKind string `json:"argumentKind,omitempty"` 364 365 // DataType: Required unless argument_kind = ANY_TYPE. 366 DataType *StandardSqlDataType `json:"dataType,omitempty"` 367 368 // Mode: Optional. Specifies whether the argument is input or output. 369 // Can be set for procedures only. 370 // 371 // Possible values: 372 // "MODE_UNSPECIFIED" 373 // "IN" - The argument is input-only. 374 // "OUT" - The argument is output-only. 375 // "INOUT" - The argument is both an input and an output. 376 Mode string `json:"mode,omitempty"` 377 378 // Name: Optional. The name of this argument. Can be absent for function 379 // return argument. 380 Name string `json:"name,omitempty"` 381 382 // ForceSendFields is a list of field names (e.g. "ArgumentKind") to 383 // unconditionally include in API requests. By default, fields with 384 // empty values are omitted from API requests. However, any non-pointer, 385 // non-interface field appearing in ForceSendFields will be sent to the 386 // server regardless of whether the field is empty or not. This may be 387 // used to include empty fields in Patch requests. 388 ForceSendFields []string `json:"-"` 389 390 // NullFields is a list of field names (e.g. "ArgumentKind") to include 391 // in API requests with the JSON null value. By default, fields with 392 // empty values are omitted from API requests. However, any field with 393 // an empty value appearing in NullFields will be sent to the server as 394 // null. It is an error if a field in this list has a non-empty value. 395 // This may be used to include null fields in Patch requests. 396 NullFields []string `json:"-"` 397} 398 399func (s *Argument) MarshalJSON() ([]byte, error) { 400 type NoMethod Argument 401 raw := NoMethod(*s) 402 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 403} 404 405// ArimaCoefficients: Arima coefficients. 406type ArimaCoefficients struct { 407 // AutoRegressiveCoefficients: Auto-regressive coefficients, an array of 408 // double. 409 AutoRegressiveCoefficients []float64 `json:"autoRegressiveCoefficients,omitempty"` 410 411 // InterceptCoefficient: Intercept coefficient, just a double not an 412 // array. 413 InterceptCoefficient float64 `json:"interceptCoefficient,omitempty"` 414 415 // MovingAverageCoefficients: Moving-average coefficients, an array of 416 // double. 417 MovingAverageCoefficients []float64 `json:"movingAverageCoefficients,omitempty"` 418 419 // ForceSendFields is a list of field names (e.g. 420 // "AutoRegressiveCoefficients") to unconditionally include in API 421 // requests. By default, fields with empty values are omitted from API 422 // requests. However, any non-pointer, non-interface field appearing in 423 // ForceSendFields will be sent to the server regardless of whether the 424 // field is empty or not. This may be used to include empty fields in 425 // Patch requests. 426 ForceSendFields []string `json:"-"` 427 428 // NullFields is a list of field names (e.g. 429 // "AutoRegressiveCoefficients") to include in API requests with the 430 // JSON null value. By default, fields with empty values are omitted 431 // from API requests. However, any field with an empty value appearing 432 // in NullFields will be sent to the server as null. It is an error if a 433 // field in this list has a non-empty value. This may be used to include 434 // null fields in Patch requests. 435 NullFields []string `json:"-"` 436} 437 438func (s *ArimaCoefficients) MarshalJSON() ([]byte, error) { 439 type NoMethod ArimaCoefficients 440 raw := NoMethod(*s) 441 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 442} 443 444func (s *ArimaCoefficients) UnmarshalJSON(data []byte) error { 445 type NoMethod ArimaCoefficients 446 var s1 struct { 447 InterceptCoefficient gensupport.JSONFloat64 `json:"interceptCoefficient"` 448 *NoMethod 449 } 450 s1.NoMethod = (*NoMethod)(s) 451 if err := json.Unmarshal(data, &s1); err != nil { 452 return err 453 } 454 s.InterceptCoefficient = float64(s1.InterceptCoefficient) 455 return nil 456} 457 458// ArimaFittingMetrics: ARIMA model fitting metrics. 459type ArimaFittingMetrics struct { 460 // Aic: AIC. 461 Aic float64 `json:"aic,omitempty"` 462 463 // LogLikelihood: Log-likelihood. 464 LogLikelihood float64 `json:"logLikelihood,omitempty"` 465 466 // Variance: Variance. 467 Variance float64 `json:"variance,omitempty"` 468 469 // ForceSendFields is a list of field names (e.g. "Aic") to 470 // unconditionally include in API requests. By default, fields with 471 // empty values are omitted from API requests. However, any non-pointer, 472 // non-interface field appearing in ForceSendFields will be sent to the 473 // server regardless of whether the field is empty or not. This may be 474 // used to include empty fields in Patch requests. 475 ForceSendFields []string `json:"-"` 476 477 // NullFields is a list of field names (e.g. "Aic") to include in API 478 // requests with the JSON null value. By default, fields with empty 479 // values are omitted from API requests. However, any field with an 480 // empty value appearing in NullFields will be sent to the server as 481 // null. It is an error if a field in this list has a non-empty value. 482 // This may be used to include null fields in Patch requests. 483 NullFields []string `json:"-"` 484} 485 486func (s *ArimaFittingMetrics) MarshalJSON() ([]byte, error) { 487 type NoMethod ArimaFittingMetrics 488 raw := NoMethod(*s) 489 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 490} 491 492func (s *ArimaFittingMetrics) UnmarshalJSON(data []byte) error { 493 type NoMethod ArimaFittingMetrics 494 var s1 struct { 495 Aic gensupport.JSONFloat64 `json:"aic"` 496 LogLikelihood gensupport.JSONFloat64 `json:"logLikelihood"` 497 Variance gensupport.JSONFloat64 `json:"variance"` 498 *NoMethod 499 } 500 s1.NoMethod = (*NoMethod)(s) 501 if err := json.Unmarshal(data, &s1); err != nil { 502 return err 503 } 504 s.Aic = float64(s1.Aic) 505 s.LogLikelihood = float64(s1.LogLikelihood) 506 s.Variance = float64(s1.Variance) 507 return nil 508} 509 510// ArimaForecastingMetrics: Model evaluation metrics for ARIMA 511// forecasting models. 512type ArimaForecastingMetrics struct { 513 // ArimaFittingMetrics: Arima model fitting metrics. 514 ArimaFittingMetrics []*ArimaFittingMetrics `json:"arimaFittingMetrics,omitempty"` 515 516 // ArimaSingleModelForecastingMetrics: Repeated as there can be many 517 // metric sets (one for each model) in auto-arima and the large-scale 518 // case. 519 ArimaSingleModelForecastingMetrics []*ArimaSingleModelForecastingMetrics `json:"arimaSingleModelForecastingMetrics,omitempty"` 520 521 // HasDrift: Whether Arima model fitted with drift or not. It is always 522 // false when d is not 1. 523 HasDrift []bool `json:"hasDrift,omitempty"` 524 525 // NonSeasonalOrder: Non-seasonal order. 526 NonSeasonalOrder []*ArimaOrder `json:"nonSeasonalOrder,omitempty"` 527 528 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 529 // are supported for one time series. 530 // 531 // Possible values: 532 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 533 // "NO_SEASONALITY" - No seasonality 534 // "DAILY" - Daily period, 24 hours. 535 // "WEEKLY" - Weekly period, 7 days. 536 // "MONTHLY" - Monthly period, 30 days or irregular. 537 // "QUARTERLY" - Quarterly period, 90 days or irregular. 538 // "YEARLY" - Yearly period, 365 days or irregular. 539 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 540 541 // TimeSeriesId: Id to differentiate different time series for the 542 // large-scale case. 543 TimeSeriesId []string `json:"timeSeriesId,omitempty"` 544 545 // ForceSendFields is a list of field names (e.g. "ArimaFittingMetrics") 546 // to unconditionally include in API requests. By default, fields with 547 // empty values are omitted from API requests. However, any non-pointer, 548 // non-interface field appearing in ForceSendFields will be sent to the 549 // server regardless of whether the field is empty or not. This may be 550 // used to include empty fields in Patch requests. 551 ForceSendFields []string `json:"-"` 552 553 // NullFields is a list of field names (e.g. "ArimaFittingMetrics") to 554 // include in API requests with the JSON null value. By default, fields 555 // with empty values are omitted from API requests. However, any field 556 // with an empty value appearing in NullFields will be sent to the 557 // server as null. It is an error if a field in this list has a 558 // non-empty value. This may be used to include null fields in Patch 559 // requests. 560 NullFields []string `json:"-"` 561} 562 563func (s *ArimaForecastingMetrics) MarshalJSON() ([]byte, error) { 564 type NoMethod ArimaForecastingMetrics 565 raw := NoMethod(*s) 566 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 567} 568 569// ArimaModelInfo: Arima model information. 570type ArimaModelInfo struct { 571 // ArimaCoefficients: Arima coefficients. 572 ArimaCoefficients *ArimaCoefficients `json:"arimaCoefficients,omitempty"` 573 574 // ArimaFittingMetrics: Arima fitting metrics. 575 ArimaFittingMetrics *ArimaFittingMetrics `json:"arimaFittingMetrics,omitempty"` 576 577 // HasDrift: Whether Arima model fitted with drift or not. It is always 578 // false when d is not 1. 579 HasDrift bool `json:"hasDrift,omitempty"` 580 581 // NonSeasonalOrder: Non-seasonal order. 582 NonSeasonalOrder *ArimaOrder `json:"nonSeasonalOrder,omitempty"` 583 584 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 585 // are supported for one time series. 586 // 587 // Possible values: 588 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 589 // "NO_SEASONALITY" - No seasonality 590 // "DAILY" - Daily period, 24 hours. 591 // "WEEKLY" - Weekly period, 7 days. 592 // "MONTHLY" - Monthly period, 30 days or irregular. 593 // "QUARTERLY" - Quarterly period, 90 days or irregular. 594 // "YEARLY" - Yearly period, 365 days or irregular. 595 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 596 597 // TimeSeriesId: The id to indicate different time series. 598 TimeSeriesId string `json:"timeSeriesId,omitempty"` 599 600 // ForceSendFields is a list of field names (e.g. "ArimaCoefficients") 601 // to unconditionally include in API requests. By default, fields with 602 // empty values are omitted from API requests. However, any non-pointer, 603 // non-interface field appearing in ForceSendFields will be sent to the 604 // server regardless of whether the field is empty or not. This may be 605 // used to include empty fields in Patch requests. 606 ForceSendFields []string `json:"-"` 607 608 // NullFields is a list of field names (e.g. "ArimaCoefficients") to 609 // include in API requests with the JSON null value. By default, fields 610 // with empty values are omitted from API requests. However, any field 611 // with an empty value appearing in NullFields will be sent to the 612 // server as null. It is an error if a field in this list has a 613 // non-empty value. This may be used to include null fields in Patch 614 // requests. 615 NullFields []string `json:"-"` 616} 617 618func (s *ArimaModelInfo) MarshalJSON() ([]byte, error) { 619 type NoMethod ArimaModelInfo 620 raw := NoMethod(*s) 621 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 622} 623 624// ArimaOrder: Arima order, can be used for both non-seasonal and 625// seasonal parts. 626type ArimaOrder struct { 627 // D: Order of the differencing part. 628 D int64 `json:"d,omitempty,string"` 629 630 // P: Order of the autoregressive part. 631 P int64 `json:"p,omitempty,string"` 632 633 // Q: Order of the moving-average part. 634 Q int64 `json:"q,omitempty,string"` 635 636 // ForceSendFields is a list of field names (e.g. "D") to 637 // unconditionally include in API requests. By default, fields with 638 // empty values are omitted from API requests. However, any non-pointer, 639 // non-interface field appearing in ForceSendFields will be sent to the 640 // server regardless of whether the field is empty or not. This may be 641 // used to include empty fields in Patch requests. 642 ForceSendFields []string `json:"-"` 643 644 // NullFields is a list of field names (e.g. "D") to include in API 645 // requests with the JSON null value. By default, fields with empty 646 // values are omitted from API requests. However, any field with an 647 // empty value appearing in NullFields will be sent to the server as 648 // null. It is an error if a field in this list has a non-empty value. 649 // This may be used to include null fields in Patch requests. 650 NullFields []string `json:"-"` 651} 652 653func (s *ArimaOrder) MarshalJSON() ([]byte, error) { 654 type NoMethod ArimaOrder 655 raw := NoMethod(*s) 656 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 657} 658 659// ArimaResult: (Auto-)arima fitting result. Wrap everything in 660// ArimaResult for easier refactoring if we want to use model-specific 661// iteration results. 662type ArimaResult struct { 663 // ArimaModelInfo: This message is repeated because there are multiple 664 // arima models fitted in auto-arima. For non-auto-arima model, its size 665 // is one. 666 ArimaModelInfo []*ArimaModelInfo `json:"arimaModelInfo,omitempty"` 667 668 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 669 // are supported for one time series. 670 // 671 // Possible values: 672 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 673 // "NO_SEASONALITY" - No seasonality 674 // "DAILY" - Daily period, 24 hours. 675 // "WEEKLY" - Weekly period, 7 days. 676 // "MONTHLY" - Monthly period, 30 days or irregular. 677 // "QUARTERLY" - Quarterly period, 90 days or irregular. 678 // "YEARLY" - Yearly period, 365 days or irregular. 679 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 680 681 // ForceSendFields is a list of field names (e.g. "ArimaModelInfo") to 682 // unconditionally include in API requests. By default, fields with 683 // empty values are omitted from API requests. However, any non-pointer, 684 // non-interface field appearing in ForceSendFields will be sent to the 685 // server regardless of whether the field is empty or not. This may be 686 // used to include empty fields in Patch requests. 687 ForceSendFields []string `json:"-"` 688 689 // NullFields is a list of field names (e.g. "ArimaModelInfo") to 690 // include in API requests with the JSON null value. By default, fields 691 // with empty values are omitted from API requests. However, any field 692 // with an empty value appearing in NullFields will be sent to the 693 // server as null. It is an error if a field in this list has a 694 // non-empty value. This may be used to include null fields in Patch 695 // requests. 696 NullFields []string `json:"-"` 697} 698 699func (s *ArimaResult) MarshalJSON() ([]byte, error) { 700 type NoMethod ArimaResult 701 raw := NoMethod(*s) 702 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 703} 704 705// ArimaSingleModelForecastingMetrics: Model evaluation metrics for a 706// single ARIMA forecasting model. 707type ArimaSingleModelForecastingMetrics struct { 708 // ArimaFittingMetrics: Arima fitting metrics. 709 ArimaFittingMetrics *ArimaFittingMetrics `json:"arimaFittingMetrics,omitempty"` 710 711 // HasDrift: Is arima model fitted with drift or not. It is always false 712 // when d is not 1. 713 HasDrift bool `json:"hasDrift,omitempty"` 714 715 // NonSeasonalOrder: Non-seasonal order. 716 NonSeasonalOrder *ArimaOrder `json:"nonSeasonalOrder,omitempty"` 717 718 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 719 // are supported for one time series. 720 // 721 // Possible values: 722 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 723 // "NO_SEASONALITY" - No seasonality 724 // "DAILY" - Daily period, 24 hours. 725 // "WEEKLY" - Weekly period, 7 days. 726 // "MONTHLY" - Monthly period, 30 days or irregular. 727 // "QUARTERLY" - Quarterly period, 90 days or irregular. 728 // "YEARLY" - Yearly period, 365 days or irregular. 729 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 730 731 // TimeSeriesId: The id to indicate different time series. 732 TimeSeriesId string `json:"timeSeriesId,omitempty"` 733 734 // ForceSendFields is a list of field names (e.g. "ArimaFittingMetrics") 735 // to unconditionally include in API requests. By default, fields with 736 // empty values are omitted from API requests. However, any non-pointer, 737 // non-interface field appearing in ForceSendFields will be sent to the 738 // server regardless of whether the field is empty or not. This may be 739 // used to include empty fields in Patch requests. 740 ForceSendFields []string `json:"-"` 741 742 // NullFields is a list of field names (e.g. "ArimaFittingMetrics") to 743 // include in API requests with the JSON null value. By default, fields 744 // with empty values are omitted from API requests. However, any field 745 // with an empty value appearing in NullFields will be sent to the 746 // server as null. It is an error if a field in this list has a 747 // non-empty value. This may be used to include null fields in Patch 748 // requests. 749 NullFields []string `json:"-"` 750} 751 752func (s *ArimaSingleModelForecastingMetrics) MarshalJSON() ([]byte, error) { 753 type NoMethod ArimaSingleModelForecastingMetrics 754 raw := NoMethod(*s) 755 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 756} 757 758// AuditConfig: Specifies the audit configuration for a service. The 759// configuration determines which permission types are logged, and what 760// identities, if any, are exempted from logging. An AuditConfig must 761// have one or more AuditLogConfigs. If there are AuditConfigs for both 762// `allServices` and a specific service, the union of the two 763// AuditConfigs is used for that service: the log_types specified in 764// each AuditConfig are enabled, and the exempted_members in each 765// AuditLogConfig are exempted. Example Policy with multiple 766// AuditConfigs: { "audit_configs": [ { "service": "allServices", 767// "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": 768// [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { 769// "log_type": "ADMIN_READ" } ] }, { "service": 770// "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type": 771// "DATA_READ" }, { "log_type": "DATA_WRITE", "exempted_members": [ 772// "user:aliya@example.com" ] } ] } ] } For sampleservice, this policy 773// enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts 774// jose@example.com from DATA_READ logging, and aliya@example.com from 775// DATA_WRITE logging. 776type AuditConfig struct { 777 // AuditLogConfigs: The configuration for logging of each type of 778 // permission. 779 AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` 780 781 // Service: Specifies a service that will be enabled for audit logging. 782 // For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. 783 // `allServices` is a special value that covers all services. 784 Service string `json:"service,omitempty"` 785 786 // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to 787 // unconditionally include in API requests. By default, fields with 788 // empty values are omitted from API requests. However, any non-pointer, 789 // non-interface field appearing in ForceSendFields will be sent to the 790 // server regardless of whether the field is empty or not. This may be 791 // used to include empty fields in Patch requests. 792 ForceSendFields []string `json:"-"` 793 794 // NullFields is a list of field names (e.g. "AuditLogConfigs") to 795 // include in API requests with the JSON null value. By default, fields 796 // with empty values are omitted from API requests. However, any field 797 // with an empty value appearing in NullFields will be sent to the 798 // server as null. It is an error if a field in this list has a 799 // non-empty value. This may be used to include null fields in Patch 800 // requests. 801 NullFields []string `json:"-"` 802} 803 804func (s *AuditConfig) MarshalJSON() ([]byte, error) { 805 type NoMethod AuditConfig 806 raw := NoMethod(*s) 807 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 808} 809 810// AuditLogConfig: Provides the configuration for logging a type of 811// permissions. Example: { "audit_log_configs": [ { "log_type": 812// "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, { 813// "log_type": "DATA_WRITE" } ] } This enables 'DATA_READ' and 814// 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ 815// logging. 816type AuditLogConfig struct { 817 // ExemptedMembers: Specifies the identities that do not cause logging 818 // for this type of permission. Follows the same format of 819 // Binding.members. 820 ExemptedMembers []string `json:"exemptedMembers,omitempty"` 821 822 // LogType: The log type that this config enables. 823 // 824 // Possible values: 825 // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. 826 // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy 827 // "DATA_WRITE" - Data writes. Example: CloudSQL Users create 828 // "DATA_READ" - Data reads. Example: CloudSQL Users list 829 LogType string `json:"logType,omitempty"` 830 831 // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to 832 // unconditionally include in API requests. By default, fields with 833 // empty values are omitted from API requests. However, any non-pointer, 834 // non-interface field appearing in ForceSendFields will be sent to the 835 // server regardless of whether the field is empty or not. This may be 836 // used to include empty fields in Patch requests. 837 ForceSendFields []string `json:"-"` 838 839 // NullFields is a list of field names (e.g. "ExemptedMembers") to 840 // include in API requests with the JSON null value. By default, fields 841 // with empty values are omitted from API requests. However, any field 842 // with an empty value appearing in NullFields will be sent to the 843 // server as null. It is an error if a field in this list has a 844 // non-empty value. This may be used to include null fields in Patch 845 // requests. 846 NullFields []string `json:"-"` 847} 848 849func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { 850 type NoMethod AuditLogConfig 851 raw := NoMethod(*s) 852 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 853} 854 855type BigQueryModelTraining struct { 856 // CurrentIteration: [Output-only, Beta] Index of current ML training 857 // iteration. Updated during create model query job to show job 858 // progress. 859 CurrentIteration int64 `json:"currentIteration,omitempty"` 860 861 // ExpectedTotalIterations: [Output-only, Beta] Expected number of 862 // iterations for the create model query job specified as num_iterations 863 // in the input query. The actual total number of iterations may be less 864 // than this number due to early stop. 865 ExpectedTotalIterations int64 `json:"expectedTotalIterations,omitempty,string"` 866 867 // ForceSendFields is a list of field names (e.g. "CurrentIteration") to 868 // unconditionally include in API requests. By default, fields with 869 // empty values are omitted from API requests. However, any non-pointer, 870 // non-interface field appearing in ForceSendFields will be sent to the 871 // server regardless of whether the field is empty or not. This may be 872 // used to include empty fields in Patch requests. 873 ForceSendFields []string `json:"-"` 874 875 // NullFields is a list of field names (e.g. "CurrentIteration") to 876 // include in API requests with the JSON null value. By default, fields 877 // with empty values are omitted from API requests. However, any field 878 // with an empty value appearing in NullFields will be sent to the 879 // server as null. It is an error if a field in this list has a 880 // non-empty value. This may be used to include null fields in Patch 881 // requests. 882 NullFields []string `json:"-"` 883} 884 885func (s *BigQueryModelTraining) MarshalJSON() ([]byte, error) { 886 type NoMethod BigQueryModelTraining 887 raw := NoMethod(*s) 888 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 889} 890 891type BigtableColumn struct { 892 // Encoding: [Optional] The encoding of the values when the type is not 893 // STRING. Acceptable encoding values are: TEXT - indicates values are 894 // alphanumeric text strings. BINARY - indicates values are encoded 895 // using HBase Bytes.toBytes family of functions. 'encoding' can also be 896 // set at the column family level. However, the setting at this level 897 // takes precedence if 'encoding' is set at both levels. 898 Encoding string `json:"encoding,omitempty"` 899 900 // FieldName: [Optional] If the qualifier is not a valid BigQuery field 901 // identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid 902 // identifier must be provided as the column field name and is used as 903 // field name in queries. 904 FieldName string `json:"fieldName,omitempty"` 905 906 // OnlyReadLatest: [Optional] If this is set, only the latest version of 907 // value in this column are exposed. 'onlyReadLatest' can also be set at 908 // the column family level. However, the setting at this level takes 909 // precedence if 'onlyReadLatest' is set at both levels. 910 OnlyReadLatest bool `json:"onlyReadLatest,omitempty"` 911 912 // QualifierEncoded: [Required] Qualifier of the column. Columns in the 913 // parent column family that has this exact qualifier are exposed as . 914 // field. If the qualifier is valid UTF-8 string, it can be specified in 915 // the qualifier_string field. Otherwise, a base-64 encoded value must 916 // be set to qualifier_encoded. The column field name is the same as the 917 // column qualifier. However, if the qualifier is not a valid BigQuery 918 // field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid 919 // identifier must be provided as field_name. 920 QualifierEncoded string `json:"qualifierEncoded,omitempty"` 921 922 QualifierString string `json:"qualifierString,omitempty"` 923 924 // Type: [Optional] The type to convert the value in cells of this 925 // column. The values are expected to be encoded using HBase 926 // Bytes.toBytes function when using the BINARY encoding value. 927 // Following BigQuery types are allowed (case-sensitive) - BYTES STRING 928 // INTEGER FLOAT BOOLEAN Default type is BYTES. 'type' can also be set 929 // at the column family level. However, the setting at this level takes 930 // precedence if 'type' is set at both levels. 931 Type string `json:"type,omitempty"` 932 933 // ForceSendFields is a list of field names (e.g. "Encoding") to 934 // unconditionally include in API requests. By default, fields with 935 // empty values are omitted from API requests. However, any non-pointer, 936 // non-interface field appearing in ForceSendFields will be sent to the 937 // server regardless of whether the field is empty or not. This may be 938 // used to include empty fields in Patch requests. 939 ForceSendFields []string `json:"-"` 940 941 // NullFields is a list of field names (e.g. "Encoding") to include in 942 // API requests with the JSON null value. By default, fields with empty 943 // values are omitted from API requests. However, any field with an 944 // empty value appearing in NullFields will be sent to the server as 945 // null. It is an error if a field in this list has a non-empty value. 946 // This may be used to include null fields in Patch requests. 947 NullFields []string `json:"-"` 948} 949 950func (s *BigtableColumn) MarshalJSON() ([]byte, error) { 951 type NoMethod BigtableColumn 952 raw := NoMethod(*s) 953 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 954} 955 956type BigtableColumnFamily struct { 957 // Columns: [Optional] Lists of columns that should be exposed as 958 // individual fields as opposed to a list of (column name, value) pairs. 959 // All columns whose qualifier matches a qualifier in this list can be 960 // accessed as .. Other columns can be accessed as a list through 961 // .Column field. 962 Columns []*BigtableColumn `json:"columns,omitempty"` 963 964 // Encoding: [Optional] The encoding of the values when the type is not 965 // STRING. Acceptable encoding values are: TEXT - indicates values are 966 // alphanumeric text strings. BINARY - indicates values are encoded 967 // using HBase Bytes.toBytes family of functions. This can be overridden 968 // for a specific column by listing that column in 'columns' and 969 // specifying an encoding for it. 970 Encoding string `json:"encoding,omitempty"` 971 972 // FamilyId: Identifier of the column family. 973 FamilyId string `json:"familyId,omitempty"` 974 975 // OnlyReadLatest: [Optional] If this is set only the latest version of 976 // value are exposed for all columns in this column family. This can be 977 // overridden for a specific column by listing that column in 'columns' 978 // and specifying a different setting for that column. 979 OnlyReadLatest bool `json:"onlyReadLatest,omitempty"` 980 981 // Type: [Optional] The type to convert the value in cells of this 982 // column family. The values are expected to be encoded using HBase 983 // Bytes.toBytes function when using the BINARY encoding value. 984 // Following BigQuery types are allowed (case-sensitive) - BYTES STRING 985 // INTEGER FLOAT BOOLEAN Default type is BYTES. This can be overridden 986 // for a specific column by listing that column in 'columns' and 987 // specifying a type for it. 988 Type string `json:"type,omitempty"` 989 990 // ForceSendFields is a list of field names (e.g. "Columns") to 991 // unconditionally include in API requests. By default, fields with 992 // empty values are omitted from API requests. However, any non-pointer, 993 // non-interface field appearing in ForceSendFields will be sent to the 994 // server regardless of whether the field is empty or not. This may be 995 // used to include empty fields in Patch requests. 996 ForceSendFields []string `json:"-"` 997 998 // NullFields is a list of field names (e.g. "Columns") to include in 999 // API requests with the JSON null value. By default, fields with empty 1000 // values are omitted from API requests. However, any field with an 1001 // empty value appearing in NullFields will be sent to the server as 1002 // null. It is an error if a field in this list has a non-empty value. 1003 // This may be used to include null fields in Patch requests. 1004 NullFields []string `json:"-"` 1005} 1006 1007func (s *BigtableColumnFamily) MarshalJSON() ([]byte, error) { 1008 type NoMethod BigtableColumnFamily 1009 raw := NoMethod(*s) 1010 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1011} 1012 1013type BigtableOptions struct { 1014 // ColumnFamilies: [Optional] List of column families to expose in the 1015 // table schema along with their types. This list restricts the column 1016 // families that can be referenced in queries and specifies their value 1017 // types. You can use this list to do type conversions - see the 'type' 1018 // field for more details. If you leave this list empty, all column 1019 // families are present in the table schema and their values are read as 1020 // BYTES. During a query only the column families referenced in that 1021 // query are read from Bigtable. 1022 ColumnFamilies []*BigtableColumnFamily `json:"columnFamilies,omitempty"` 1023 1024 // IgnoreUnspecifiedColumnFamilies: [Optional] If field is true, then 1025 // the column families that are not specified in columnFamilies list are 1026 // not exposed in the table schema. Otherwise, they are read with BYTES 1027 // type values. The default value is false. 1028 IgnoreUnspecifiedColumnFamilies bool `json:"ignoreUnspecifiedColumnFamilies,omitempty"` 1029 1030 // ReadRowkeyAsString: [Optional] If field is true, then the rowkey 1031 // column families will be read and converted to string. Otherwise they 1032 // are read with BYTES type values and users need to manually cast them 1033 // with CAST if necessary. The default value is false. 1034 ReadRowkeyAsString bool `json:"readRowkeyAsString,omitempty"` 1035 1036 // ForceSendFields is a list of field names (e.g. "ColumnFamilies") to 1037 // unconditionally include in API requests. By default, fields with 1038 // empty values are omitted from API requests. However, any non-pointer, 1039 // non-interface field appearing in ForceSendFields will be sent to the 1040 // server regardless of whether the field is empty or not. This may be 1041 // used to include empty fields in Patch requests. 1042 ForceSendFields []string `json:"-"` 1043 1044 // NullFields is a list of field names (e.g. "ColumnFamilies") to 1045 // include in API requests with the JSON null value. By default, fields 1046 // with empty values are omitted from API requests. However, any field 1047 // with an empty value appearing in NullFields will be sent to the 1048 // server as null. It is an error if a field in this list has a 1049 // non-empty value. This may be used to include null fields in Patch 1050 // requests. 1051 NullFields []string `json:"-"` 1052} 1053 1054func (s *BigtableOptions) MarshalJSON() ([]byte, error) { 1055 type NoMethod BigtableOptions 1056 raw := NoMethod(*s) 1057 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1058} 1059 1060// BinaryClassificationMetrics: Evaluation metrics for binary 1061// classification/classifier models. 1062type BinaryClassificationMetrics struct { 1063 // AggregateClassificationMetrics: Aggregate classification metrics. 1064 AggregateClassificationMetrics *AggregateClassificationMetrics `json:"aggregateClassificationMetrics,omitempty"` 1065 1066 // BinaryConfusionMatrixList: Binary confusion matrix at multiple 1067 // thresholds. 1068 BinaryConfusionMatrixList []*BinaryConfusionMatrix `json:"binaryConfusionMatrixList,omitempty"` 1069 1070 // NegativeLabel: Label representing the negative class. 1071 NegativeLabel string `json:"negativeLabel,omitempty"` 1072 1073 // PositiveLabel: Label representing the positive class. 1074 PositiveLabel string `json:"positiveLabel,omitempty"` 1075 1076 // ForceSendFields is a list of field names (e.g. 1077 // "AggregateClassificationMetrics") to unconditionally include in API 1078 // requests. By default, fields with empty values are omitted from API 1079 // requests. However, any non-pointer, non-interface field appearing in 1080 // ForceSendFields will be sent to the server regardless of whether the 1081 // field is empty or not. This may be used to include empty fields in 1082 // Patch requests. 1083 ForceSendFields []string `json:"-"` 1084 1085 // NullFields is a list of field names (e.g. 1086 // "AggregateClassificationMetrics") to include in API requests with the 1087 // JSON null value. By default, fields with empty values are omitted 1088 // from API requests. However, any field with an empty value appearing 1089 // in NullFields will be sent to the server as null. It is an error if a 1090 // field in this list has a non-empty value. This may be used to include 1091 // null fields in Patch requests. 1092 NullFields []string `json:"-"` 1093} 1094 1095func (s *BinaryClassificationMetrics) MarshalJSON() ([]byte, error) { 1096 type NoMethod BinaryClassificationMetrics 1097 raw := NoMethod(*s) 1098 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1099} 1100 1101// BinaryConfusionMatrix: Confusion matrix for binary classification 1102// models. 1103type BinaryConfusionMatrix struct { 1104 // Accuracy: The fraction of predictions given the correct label. 1105 Accuracy float64 `json:"accuracy,omitempty"` 1106 1107 // F1Score: The equally weighted average of recall and precision. 1108 F1Score float64 `json:"f1Score,omitempty"` 1109 1110 // FalseNegatives: Number of false samples predicted as false. 1111 FalseNegatives int64 `json:"falseNegatives,omitempty,string"` 1112 1113 // FalsePositives: Number of false samples predicted as true. 1114 FalsePositives int64 `json:"falsePositives,omitempty,string"` 1115 1116 // PositiveClassThreshold: Threshold value used when computing each of 1117 // the following metric. 1118 PositiveClassThreshold float64 `json:"positiveClassThreshold,omitempty"` 1119 1120 // Precision: The fraction of actual positive predictions that had 1121 // positive actual labels. 1122 Precision float64 `json:"precision,omitempty"` 1123 1124 // Recall: The fraction of actual positive labels that were given a 1125 // positive prediction. 1126 Recall float64 `json:"recall,omitempty"` 1127 1128 // TrueNegatives: Number of true samples predicted as false. 1129 TrueNegatives int64 `json:"trueNegatives,omitempty,string"` 1130 1131 // TruePositives: Number of true samples predicted as true. 1132 TruePositives int64 `json:"truePositives,omitempty,string"` 1133 1134 // ForceSendFields is a list of field names (e.g. "Accuracy") to 1135 // unconditionally include in API requests. By default, fields with 1136 // empty values are omitted from API requests. However, any non-pointer, 1137 // non-interface field appearing in ForceSendFields will be sent to the 1138 // server regardless of whether the field is empty or not. This may be 1139 // used to include empty fields in Patch requests. 1140 ForceSendFields []string `json:"-"` 1141 1142 // NullFields is a list of field names (e.g. "Accuracy") to include in 1143 // API requests with the JSON null value. By default, fields with empty 1144 // values are omitted from API requests. However, any field with an 1145 // empty value appearing in NullFields will be sent to the server as 1146 // null. It is an error if a field in this list has a non-empty value. 1147 // This may be used to include null fields in Patch requests. 1148 NullFields []string `json:"-"` 1149} 1150 1151func (s *BinaryConfusionMatrix) MarshalJSON() ([]byte, error) { 1152 type NoMethod BinaryConfusionMatrix 1153 raw := NoMethod(*s) 1154 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1155} 1156 1157func (s *BinaryConfusionMatrix) UnmarshalJSON(data []byte) error { 1158 type NoMethod BinaryConfusionMatrix 1159 var s1 struct { 1160 Accuracy gensupport.JSONFloat64 `json:"accuracy"` 1161 F1Score gensupport.JSONFloat64 `json:"f1Score"` 1162 PositiveClassThreshold gensupport.JSONFloat64 `json:"positiveClassThreshold"` 1163 Precision gensupport.JSONFloat64 `json:"precision"` 1164 Recall gensupport.JSONFloat64 `json:"recall"` 1165 *NoMethod 1166 } 1167 s1.NoMethod = (*NoMethod)(s) 1168 if err := json.Unmarshal(data, &s1); err != nil { 1169 return err 1170 } 1171 s.Accuracy = float64(s1.Accuracy) 1172 s.F1Score = float64(s1.F1Score) 1173 s.PositiveClassThreshold = float64(s1.PositiveClassThreshold) 1174 s.Precision = float64(s1.Precision) 1175 s.Recall = float64(s1.Recall) 1176 return nil 1177} 1178 1179// Binding: Associates `members` with a `role`. 1180type Binding struct { 1181 BindingId string `json:"bindingId,omitempty"` 1182 1183 // Condition: The condition that is associated with this binding. If the 1184 // condition evaluates to `true`, then this binding applies to the 1185 // current request. If the condition evaluates to `false`, then this 1186 // binding does not apply to the current request. However, a different 1187 // role binding might grant the same role to one or more of the members 1188 // in this binding. To learn which resources support conditions in their 1189 // IAM policies, see the [IAM 1190 // documentation](https://cloud.google.com/iam/help/conditions/resource-p 1191 // olicies). 1192 Condition *Expr `json:"condition,omitempty"` 1193 1194 // Members: Specifies the identities requesting access for a Cloud 1195 // Platform resource. `members` can have the following values: * 1196 // `allUsers`: A special identifier that represents anyone who is on the 1197 // internet; with or without a Google account. * 1198 // `allAuthenticatedUsers`: A special identifier that represents anyone 1199 // who is authenticated with a Google account or a service account. * 1200 // `user:{emailid}`: An email address that represents a specific Google 1201 // account. For example, `alice@example.com` . * 1202 // `serviceAccount:{emailid}`: An email address that represents a 1203 // service account. For example, 1204 // `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An 1205 // email address that represents a Google group. For example, 1206 // `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An 1207 // email address (plus unique identifier) representing a user that has 1208 // been recently deleted. For example, 1209 // `alice@example.com?uid=123456789012345678901`. If the user is 1210 // recovered, this value reverts to `user:{emailid}` and the recovered 1211 // user retains the role in the binding. * 1212 // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address 1213 // (plus unique identifier) representing a service account that has been 1214 // recently deleted. For example, 1215 // `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. 1216 // If the service account is undeleted, this value reverts to 1217 // `serviceAccount:{emailid}` and the undeleted service account retains 1218 // the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: 1219 // An email address (plus unique identifier) representing a Google group 1220 // that has been recently deleted. For example, 1221 // `admins@example.com?uid=123456789012345678901`. If the group is 1222 // recovered, this value reverts to `group:{emailid}` and the recovered 1223 // group retains the role in the binding. * `domain:{domain}`: The G 1224 // Suite domain (primary) that represents all the users of that domain. 1225 // For example, `google.com` or `example.com`. 1226 Members []string `json:"members,omitempty"` 1227 1228 // Role: Role that is assigned to `members`. For example, 1229 // `roles/viewer`, `roles/editor`, or `roles/owner`. 1230 Role string `json:"role,omitempty"` 1231 1232 // ForceSendFields is a list of field names (e.g. "BindingId") to 1233 // unconditionally include in API requests. By default, fields with 1234 // empty values are omitted from API requests. However, any non-pointer, 1235 // non-interface field appearing in ForceSendFields will be sent to the 1236 // server regardless of whether the field is empty or not. This may be 1237 // used to include empty fields in Patch requests. 1238 ForceSendFields []string `json:"-"` 1239 1240 // NullFields is a list of field names (e.g. "BindingId") to include in 1241 // API requests with the JSON null value. By default, fields with empty 1242 // values are omitted from API requests. However, any field with an 1243 // empty value appearing in NullFields will be sent to the server as 1244 // null. It is an error if a field in this list has a non-empty value. 1245 // This may be used to include null fields in Patch requests. 1246 NullFields []string `json:"-"` 1247} 1248 1249func (s *Binding) MarshalJSON() ([]byte, error) { 1250 type NoMethod Binding 1251 raw := NoMethod(*s) 1252 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1253} 1254 1255type BqmlIterationResult struct { 1256 // DurationMs: [Output-only, Beta] Time taken to run the training 1257 // iteration in milliseconds. 1258 DurationMs int64 `json:"durationMs,omitempty,string"` 1259 1260 // EvalLoss: [Output-only, Beta] Eval loss computed on the eval data at 1261 // the end of the iteration. The eval loss is used for early stopping to 1262 // avoid overfitting. No eval loss if eval_split_method option is 1263 // specified as no_split or auto_split with input data size less than 1264 // 500 rows. 1265 EvalLoss float64 `json:"evalLoss,omitempty"` 1266 1267 // Index: [Output-only, Beta] Index of the ML training iteration, 1268 // starting from zero for each training run. 1269 Index int64 `json:"index,omitempty"` 1270 1271 // LearnRate: [Output-only, Beta] Learning rate used for this iteration, 1272 // it varies for different training iterations if learn_rate_strategy 1273 // option is not constant. 1274 LearnRate float64 `json:"learnRate,omitempty"` 1275 1276 // TrainingLoss: [Output-only, Beta] Training loss computed on the 1277 // training data at the end of the iteration. The training loss function 1278 // is defined by model type. 1279 TrainingLoss float64 `json:"trainingLoss,omitempty"` 1280 1281 // ForceSendFields is a list of field names (e.g. "DurationMs") to 1282 // unconditionally include in API requests. By default, fields with 1283 // empty values are omitted from API requests. However, any non-pointer, 1284 // non-interface field appearing in ForceSendFields will be sent to the 1285 // server regardless of whether the field is empty or not. This may be 1286 // used to include empty fields in Patch requests. 1287 ForceSendFields []string `json:"-"` 1288 1289 // NullFields is a list of field names (e.g. "DurationMs") to include in 1290 // API requests with the JSON null value. By default, fields with empty 1291 // values are omitted from API requests. However, any field with an 1292 // empty value appearing in NullFields will be sent to the server as 1293 // null. It is an error if a field in this list has a non-empty value. 1294 // This may be used to include null fields in Patch requests. 1295 NullFields []string `json:"-"` 1296} 1297 1298func (s *BqmlIterationResult) MarshalJSON() ([]byte, error) { 1299 type NoMethod BqmlIterationResult 1300 raw := NoMethod(*s) 1301 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1302} 1303 1304func (s *BqmlIterationResult) UnmarshalJSON(data []byte) error { 1305 type NoMethod BqmlIterationResult 1306 var s1 struct { 1307 EvalLoss gensupport.JSONFloat64 `json:"evalLoss"` 1308 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 1309 TrainingLoss gensupport.JSONFloat64 `json:"trainingLoss"` 1310 *NoMethod 1311 } 1312 s1.NoMethod = (*NoMethod)(s) 1313 if err := json.Unmarshal(data, &s1); err != nil { 1314 return err 1315 } 1316 s.EvalLoss = float64(s1.EvalLoss) 1317 s.LearnRate = float64(s1.LearnRate) 1318 s.TrainingLoss = float64(s1.TrainingLoss) 1319 return nil 1320} 1321 1322type BqmlTrainingRun struct { 1323 // IterationResults: [Output-only, Beta] List of each iteration results. 1324 IterationResults []*BqmlIterationResult `json:"iterationResults,omitempty"` 1325 1326 // StartTime: [Output-only, Beta] Training run start time in 1327 // milliseconds since the epoch. 1328 StartTime string `json:"startTime,omitempty"` 1329 1330 // State: [Output-only, Beta] Different state applicable for a training 1331 // run. IN PROGRESS: Training run is in progress. FAILED: Training run 1332 // ended due to a non-retryable failure. SUCCEEDED: Training run 1333 // successfully completed. CANCELLED: Training run cancelled by the 1334 // user. 1335 State string `json:"state,omitempty"` 1336 1337 // TrainingOptions: [Output-only, Beta] Training options used by this 1338 // training run. These options are mutable for subsequent training runs. 1339 // Default values are explicitly stored for options not specified in the 1340 // input query of the first training run. For subsequent training runs, 1341 // any option not explicitly specified in the input query will be copied 1342 // from the previous training run. 1343 TrainingOptions *BqmlTrainingRunTrainingOptions `json:"trainingOptions,omitempty"` 1344 1345 // ForceSendFields is a list of field names (e.g. "IterationResults") to 1346 // unconditionally include in API requests. By default, fields with 1347 // empty values are omitted from API requests. However, any non-pointer, 1348 // non-interface field appearing in ForceSendFields will be sent to the 1349 // server regardless of whether the field is empty or not. This may be 1350 // used to include empty fields in Patch requests. 1351 ForceSendFields []string `json:"-"` 1352 1353 // NullFields is a list of field names (e.g. "IterationResults") to 1354 // include in API requests with the JSON null value. By default, fields 1355 // with empty values are omitted from API requests. However, any field 1356 // with an empty value appearing in NullFields will be sent to the 1357 // server as null. It is an error if a field in this list has a 1358 // non-empty value. This may be used to include null fields in Patch 1359 // requests. 1360 NullFields []string `json:"-"` 1361} 1362 1363func (s *BqmlTrainingRun) MarshalJSON() ([]byte, error) { 1364 type NoMethod BqmlTrainingRun 1365 raw := NoMethod(*s) 1366 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1367} 1368 1369// BqmlTrainingRunTrainingOptions: [Output-only, Beta] Training options 1370// used by this training run. These options are mutable for subsequent 1371// training runs. Default values are explicitly stored for options not 1372// specified in the input query of the first training run. For 1373// subsequent training runs, any option not explicitly specified in the 1374// input query will be copied from the previous training run. 1375type BqmlTrainingRunTrainingOptions struct { 1376 EarlyStop bool `json:"earlyStop,omitempty"` 1377 1378 L1Reg float64 `json:"l1Reg,omitempty"` 1379 1380 L2Reg float64 `json:"l2Reg,omitempty"` 1381 1382 LearnRate float64 `json:"learnRate,omitempty"` 1383 1384 LearnRateStrategy string `json:"learnRateStrategy,omitempty"` 1385 1386 LineSearchInitLearnRate float64 `json:"lineSearchInitLearnRate,omitempty"` 1387 1388 MaxIteration int64 `json:"maxIteration,omitempty,string"` 1389 1390 MinRelProgress float64 `json:"minRelProgress,omitempty"` 1391 1392 WarmStart bool `json:"warmStart,omitempty"` 1393 1394 // ForceSendFields is a list of field names (e.g. "EarlyStop") to 1395 // unconditionally include in API requests. By default, fields with 1396 // empty values are omitted from API requests. However, any non-pointer, 1397 // non-interface field appearing in ForceSendFields will be sent to the 1398 // server regardless of whether the field is empty or not. This may be 1399 // used to include empty fields in Patch requests. 1400 ForceSendFields []string `json:"-"` 1401 1402 // NullFields is a list of field names (e.g. "EarlyStop") to include in 1403 // API requests with the JSON null value. By default, fields with empty 1404 // values are omitted from API requests. However, any field with an 1405 // empty value appearing in NullFields will be sent to the server as 1406 // null. It is an error if a field in this list has a non-empty value. 1407 // This may be used to include null fields in Patch requests. 1408 NullFields []string `json:"-"` 1409} 1410 1411func (s *BqmlTrainingRunTrainingOptions) MarshalJSON() ([]byte, error) { 1412 type NoMethod BqmlTrainingRunTrainingOptions 1413 raw := NoMethod(*s) 1414 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1415} 1416 1417func (s *BqmlTrainingRunTrainingOptions) UnmarshalJSON(data []byte) error { 1418 type NoMethod BqmlTrainingRunTrainingOptions 1419 var s1 struct { 1420 L1Reg gensupport.JSONFloat64 `json:"l1Reg"` 1421 L2Reg gensupport.JSONFloat64 `json:"l2Reg"` 1422 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 1423 LineSearchInitLearnRate gensupport.JSONFloat64 `json:"lineSearchInitLearnRate"` 1424 MinRelProgress gensupport.JSONFloat64 `json:"minRelProgress"` 1425 *NoMethod 1426 } 1427 s1.NoMethod = (*NoMethod)(s) 1428 if err := json.Unmarshal(data, &s1); err != nil { 1429 return err 1430 } 1431 s.L1Reg = float64(s1.L1Reg) 1432 s.L2Reg = float64(s1.L2Reg) 1433 s.LearnRate = float64(s1.LearnRate) 1434 s.LineSearchInitLearnRate = float64(s1.LineSearchInitLearnRate) 1435 s.MinRelProgress = float64(s1.MinRelProgress) 1436 return nil 1437} 1438 1439// CategoricalValue: Representative value of a categorical feature. 1440type CategoricalValue struct { 1441 // CategoryCounts: Counts of all categories for the categorical feature. 1442 // If there are more than ten categories, we return top ten (by count) 1443 // and return one more CategoryCount with category "_OTHER_" and count 1444 // as aggregate counts of remaining categories. 1445 CategoryCounts []*CategoryCount `json:"categoryCounts,omitempty"` 1446 1447 // ForceSendFields is a list of field names (e.g. "CategoryCounts") to 1448 // unconditionally include in API requests. By default, fields with 1449 // empty values are omitted from API requests. However, any non-pointer, 1450 // non-interface field appearing in ForceSendFields will be sent to the 1451 // server regardless of whether the field is empty or not. This may be 1452 // used to include empty fields in Patch requests. 1453 ForceSendFields []string `json:"-"` 1454 1455 // NullFields is a list of field names (e.g. "CategoryCounts") to 1456 // include in API requests with the JSON null value. By default, fields 1457 // with empty values are omitted from API requests. However, any field 1458 // with an empty value appearing in NullFields will be sent to the 1459 // server as null. It is an error if a field in this list has a 1460 // non-empty value. This may be used to include null fields in Patch 1461 // requests. 1462 NullFields []string `json:"-"` 1463} 1464 1465func (s *CategoricalValue) MarshalJSON() ([]byte, error) { 1466 type NoMethod CategoricalValue 1467 raw := NoMethod(*s) 1468 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1469} 1470 1471// CategoryCount: Represents the count of a single category within the 1472// cluster. 1473type CategoryCount struct { 1474 // Category: The name of category. 1475 Category string `json:"category,omitempty"` 1476 1477 // Count: The count of training samples matching the category within the 1478 // cluster. 1479 Count int64 `json:"count,omitempty,string"` 1480 1481 // ForceSendFields is a list of field names (e.g. "Category") to 1482 // unconditionally include in API requests. By default, fields with 1483 // empty values are omitted from API requests. However, any non-pointer, 1484 // non-interface field appearing in ForceSendFields will be sent to the 1485 // server regardless of whether the field is empty or not. This may be 1486 // used to include empty fields in Patch requests. 1487 ForceSendFields []string `json:"-"` 1488 1489 // NullFields is a list of field names (e.g. "Category") to include in 1490 // API requests with the JSON null value. By default, fields with empty 1491 // values are omitted from API requests. However, any field with an 1492 // empty value appearing in NullFields will be sent to the server as 1493 // null. It is an error if a field in this list has a non-empty value. 1494 // This may be used to include null fields in Patch requests. 1495 NullFields []string `json:"-"` 1496} 1497 1498func (s *CategoryCount) MarshalJSON() ([]byte, error) { 1499 type NoMethod CategoryCount 1500 raw := NoMethod(*s) 1501 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1502} 1503 1504// Cluster: Message containing the information about one cluster. 1505type Cluster struct { 1506 // CentroidId: Centroid id. 1507 CentroidId int64 `json:"centroidId,omitempty,string"` 1508 1509 // Count: Count of training data rows that were assigned to this 1510 // cluster. 1511 Count int64 `json:"count,omitempty,string"` 1512 1513 // FeatureValues: Values of highly variant features for this cluster. 1514 FeatureValues []*FeatureValue `json:"featureValues,omitempty"` 1515 1516 // ForceSendFields is a list of field names (e.g. "CentroidId") to 1517 // unconditionally include in API requests. By default, fields with 1518 // empty values are omitted from API requests. However, any non-pointer, 1519 // non-interface field appearing in ForceSendFields will be sent to the 1520 // server regardless of whether the field is empty or not. This may be 1521 // used to include empty fields in Patch requests. 1522 ForceSendFields []string `json:"-"` 1523 1524 // NullFields is a list of field names (e.g. "CentroidId") to include in 1525 // API requests with the JSON null value. By default, fields with empty 1526 // values are omitted from API requests. However, any field with an 1527 // empty value appearing in NullFields will be sent to the server as 1528 // null. It is an error if a field in this list has a non-empty value. 1529 // This may be used to include null fields in Patch requests. 1530 NullFields []string `json:"-"` 1531} 1532 1533func (s *Cluster) MarshalJSON() ([]byte, error) { 1534 type NoMethod Cluster 1535 raw := NoMethod(*s) 1536 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1537} 1538 1539// ClusterInfo: Information about a single cluster for clustering model. 1540type ClusterInfo struct { 1541 // CentroidId: Centroid id. 1542 CentroidId int64 `json:"centroidId,omitempty,string"` 1543 1544 // ClusterRadius: Cluster radius, the average distance from centroid to 1545 // each point assigned to the cluster. 1546 ClusterRadius float64 `json:"clusterRadius,omitempty"` 1547 1548 // ClusterSize: Cluster size, the total number of points assigned to the 1549 // cluster. 1550 ClusterSize int64 `json:"clusterSize,omitempty,string"` 1551 1552 // ForceSendFields is a list of field names (e.g. "CentroidId") to 1553 // unconditionally include in API requests. By default, fields with 1554 // empty values are omitted from API requests. However, any non-pointer, 1555 // non-interface field appearing in ForceSendFields will be sent to the 1556 // server regardless of whether the field is empty or not. This may be 1557 // used to include empty fields in Patch requests. 1558 ForceSendFields []string `json:"-"` 1559 1560 // NullFields is a list of field names (e.g. "CentroidId") to include in 1561 // API requests with the JSON null value. By default, fields with empty 1562 // values are omitted from API requests. However, any field with an 1563 // empty value appearing in NullFields will be sent to the server as 1564 // null. It is an error if a field in this list has a non-empty value. 1565 // This may be used to include null fields in Patch requests. 1566 NullFields []string `json:"-"` 1567} 1568 1569func (s *ClusterInfo) MarshalJSON() ([]byte, error) { 1570 type NoMethod ClusterInfo 1571 raw := NoMethod(*s) 1572 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1573} 1574 1575func (s *ClusterInfo) UnmarshalJSON(data []byte) error { 1576 type NoMethod ClusterInfo 1577 var s1 struct { 1578 ClusterRadius gensupport.JSONFloat64 `json:"clusterRadius"` 1579 *NoMethod 1580 } 1581 s1.NoMethod = (*NoMethod)(s) 1582 if err := json.Unmarshal(data, &s1); err != nil { 1583 return err 1584 } 1585 s.ClusterRadius = float64(s1.ClusterRadius) 1586 return nil 1587} 1588 1589type Clustering struct { 1590 // Fields: [Repeated] One or more fields on which data should be 1591 // clustered. Only top-level, non-repeated, simple-type fields are 1592 // supported. When you cluster a table using multiple columns, the order 1593 // of columns you specify is important. The order of the specified 1594 // columns determines the sort order of the data. 1595 Fields []string `json:"fields,omitempty"` 1596 1597 // ForceSendFields is a list of field names (e.g. "Fields") to 1598 // unconditionally include in API requests. By default, fields with 1599 // empty values are omitted from API requests. However, any non-pointer, 1600 // non-interface field appearing in ForceSendFields will be sent to the 1601 // server regardless of whether the field is empty or not. This may be 1602 // used to include empty fields in Patch requests. 1603 ForceSendFields []string `json:"-"` 1604 1605 // NullFields is a list of field names (e.g. "Fields") to include in API 1606 // requests with the JSON null value. By default, fields with empty 1607 // values are omitted from API requests. However, any field with an 1608 // empty value appearing in NullFields will be sent to the server as 1609 // null. It is an error if a field in this list has a non-empty value. 1610 // This may be used to include null fields in Patch requests. 1611 NullFields []string `json:"-"` 1612} 1613 1614func (s *Clustering) MarshalJSON() ([]byte, error) { 1615 type NoMethod Clustering 1616 raw := NoMethod(*s) 1617 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1618} 1619 1620// ClusteringMetrics: Evaluation metrics for clustering models. 1621type ClusteringMetrics struct { 1622 // Clusters: [Beta] Information for all clusters. 1623 Clusters []*Cluster `json:"clusters,omitempty"` 1624 1625 // DaviesBouldinIndex: Davies-Bouldin index. 1626 DaviesBouldinIndex float64 `json:"daviesBouldinIndex,omitempty"` 1627 1628 // MeanSquaredDistance: Mean of squared distances between each sample to 1629 // its cluster centroid. 1630 MeanSquaredDistance float64 `json:"meanSquaredDistance,omitempty"` 1631 1632 // ForceSendFields is a list of field names (e.g. "Clusters") to 1633 // unconditionally include in API requests. By default, fields with 1634 // empty values are omitted from API requests. However, any non-pointer, 1635 // non-interface field appearing in ForceSendFields will be sent to the 1636 // server regardless of whether the field is empty or not. This may be 1637 // used to include empty fields in Patch requests. 1638 ForceSendFields []string `json:"-"` 1639 1640 // NullFields is a list of field names (e.g. "Clusters") to include in 1641 // API requests with the JSON null value. By default, fields with empty 1642 // values are omitted from API requests. However, any field with an 1643 // empty value appearing in NullFields will be sent to the server as 1644 // null. It is an error if a field in this list has a non-empty value. 1645 // This may be used to include null fields in Patch requests. 1646 NullFields []string `json:"-"` 1647} 1648 1649func (s *ClusteringMetrics) MarshalJSON() ([]byte, error) { 1650 type NoMethod ClusteringMetrics 1651 raw := NoMethod(*s) 1652 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1653} 1654 1655func (s *ClusteringMetrics) UnmarshalJSON(data []byte) error { 1656 type NoMethod ClusteringMetrics 1657 var s1 struct { 1658 DaviesBouldinIndex gensupport.JSONFloat64 `json:"daviesBouldinIndex"` 1659 MeanSquaredDistance gensupport.JSONFloat64 `json:"meanSquaredDistance"` 1660 *NoMethod 1661 } 1662 s1.NoMethod = (*NoMethod)(s) 1663 if err := json.Unmarshal(data, &s1); err != nil { 1664 return err 1665 } 1666 s.DaviesBouldinIndex = float64(s1.DaviesBouldinIndex) 1667 s.MeanSquaredDistance = float64(s1.MeanSquaredDistance) 1668 return nil 1669} 1670 1671// ConfusionMatrix: Confusion matrix for multi-class classification 1672// models. 1673type ConfusionMatrix struct { 1674 // ConfidenceThreshold: Confidence threshold used when computing the 1675 // entries of the confusion matrix. 1676 ConfidenceThreshold float64 `json:"confidenceThreshold,omitempty"` 1677 1678 // Rows: One row per actual label. 1679 Rows []*Row `json:"rows,omitempty"` 1680 1681 // ForceSendFields is a list of field names (e.g. "ConfidenceThreshold") 1682 // to unconditionally include in API requests. By default, fields with 1683 // empty values are omitted from API requests. However, any non-pointer, 1684 // non-interface field appearing in ForceSendFields will be sent to the 1685 // server regardless of whether the field is empty or not. This may be 1686 // used to include empty fields in Patch requests. 1687 ForceSendFields []string `json:"-"` 1688 1689 // NullFields is a list of field names (e.g. "ConfidenceThreshold") to 1690 // include in API requests with the JSON null value. By default, fields 1691 // with empty values are omitted from API requests. However, any field 1692 // with an empty value appearing in NullFields will be sent to the 1693 // server as null. It is an error if a field in this list has a 1694 // non-empty value. This may be used to include null fields in Patch 1695 // requests. 1696 NullFields []string `json:"-"` 1697} 1698 1699func (s *ConfusionMatrix) MarshalJSON() ([]byte, error) { 1700 type NoMethod ConfusionMatrix 1701 raw := NoMethod(*s) 1702 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1703} 1704 1705func (s *ConfusionMatrix) UnmarshalJSON(data []byte) error { 1706 type NoMethod ConfusionMatrix 1707 var s1 struct { 1708 ConfidenceThreshold gensupport.JSONFloat64 `json:"confidenceThreshold"` 1709 *NoMethod 1710 } 1711 s1.NoMethod = (*NoMethod)(s) 1712 if err := json.Unmarshal(data, &s1); err != nil { 1713 return err 1714 } 1715 s.ConfidenceThreshold = float64(s1.ConfidenceThreshold) 1716 return nil 1717} 1718 1719type ConnectionProperty struct { 1720 // Key: [Required] Name of the connection property to set. 1721 Key string `json:"key,omitempty"` 1722 1723 // Value: [Required] Value of the connection property. 1724 Value string `json:"value,omitempty"` 1725 1726 // ForceSendFields is a list of field names (e.g. "Key") to 1727 // unconditionally include in API requests. By default, fields with 1728 // empty values are omitted from API requests. However, any non-pointer, 1729 // non-interface field appearing in ForceSendFields will be sent to the 1730 // server regardless of whether the field is empty or not. This may be 1731 // used to include empty fields in Patch requests. 1732 ForceSendFields []string `json:"-"` 1733 1734 // NullFields is a list of field names (e.g. "Key") to include in API 1735 // requests with the JSON null value. By default, fields with empty 1736 // values are omitted from API requests. However, any field with an 1737 // empty value appearing in NullFields will be sent to the server as 1738 // null. It is an error if a field in this list has a non-empty value. 1739 // This may be used to include null fields in Patch requests. 1740 NullFields []string `json:"-"` 1741} 1742 1743func (s *ConnectionProperty) MarshalJSON() ([]byte, error) { 1744 type NoMethod ConnectionProperty 1745 raw := NoMethod(*s) 1746 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1747} 1748 1749type CsvOptions struct { 1750 // AllowJaggedRows: [Optional] Indicates if BigQuery should accept rows 1751 // that are missing trailing optional columns. If true, BigQuery treats 1752 // missing trailing columns as null values. If false, records with 1753 // missing trailing columns are treated as bad records, and if there are 1754 // too many bad records, an invalid error is returned in the job result. 1755 // The default value is false. 1756 AllowJaggedRows bool `json:"allowJaggedRows,omitempty"` 1757 1758 // AllowQuotedNewlines: [Optional] Indicates if BigQuery should allow 1759 // quoted data sections that contain newline characters in a CSV file. 1760 // The default value is false. 1761 AllowQuotedNewlines bool `json:"allowQuotedNewlines,omitempty"` 1762 1763 // Encoding: [Optional] The character encoding of the data. The 1764 // supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. 1765 // BigQuery decodes the data after the raw, binary data has been split 1766 // using the values of the quote and fieldDelimiter properties. 1767 Encoding string `json:"encoding,omitempty"` 1768 1769 // FieldDelimiter: [Optional] The separator for fields in a CSV file. 1770 // BigQuery converts the string to ISO-8859-1 encoding, and then uses 1771 // the first byte of the encoded string to split the data in its raw, 1772 // binary state. BigQuery also supports the escape sequence "\t" to 1773 // specify a tab separator. The default value is a comma (','). 1774 FieldDelimiter string `json:"fieldDelimiter,omitempty"` 1775 1776 // Quote: [Optional] The value that is used to quote data sections in a 1777 // CSV file. BigQuery converts the string to ISO-8859-1 encoding, and 1778 // then uses the first byte of the encoded string to split the data in 1779 // its raw, binary state. The default value is a double-quote ('"'). If 1780 // your data does not contain quoted sections, set the property value to 1781 // an empty string. If your data contains quoted newline characters, you 1782 // must also set the allowQuotedNewlines property to true. 1783 // 1784 // Default: " 1785 Quote *string `json:"quote,omitempty"` 1786 1787 // SkipLeadingRows: [Optional] The number of rows at the top of a CSV 1788 // file that BigQuery will skip when reading the data. The default value 1789 // is 0. This property is useful if you have header rows in the file 1790 // that should be skipped. When autodetect is on, the behavior is the 1791 // following: * skipLeadingRows unspecified - Autodetect tries to detect 1792 // headers in the first row. If they are not detected, the row is read 1793 // as data. Otherwise data is read starting from the second row. * 1794 // skipLeadingRows is 0 - Instructs autodetect that there are no headers 1795 // and data should be read starting from the first row. * 1796 // skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to 1797 // detect headers in row N. If headers are not detected, row N is just 1798 // skipped. Otherwise row N is used to extract column names for the 1799 // detected schema. 1800 SkipLeadingRows int64 `json:"skipLeadingRows,omitempty,string"` 1801 1802 // ForceSendFields is a list of field names (e.g. "AllowJaggedRows") to 1803 // unconditionally include in API requests. By default, fields with 1804 // empty values are omitted from API requests. However, any non-pointer, 1805 // non-interface field appearing in ForceSendFields will be sent to the 1806 // server regardless of whether the field is empty or not. This may be 1807 // used to include empty fields in Patch requests. 1808 ForceSendFields []string `json:"-"` 1809 1810 // NullFields is a list of field names (e.g. "AllowJaggedRows") to 1811 // include in API requests with the JSON null value. By default, fields 1812 // with empty values are omitted from API requests. However, any field 1813 // with an empty value appearing in NullFields will be sent to the 1814 // server as null. It is an error if a field in this list has a 1815 // non-empty value. This may be used to include null fields in Patch 1816 // requests. 1817 NullFields []string `json:"-"` 1818} 1819 1820func (s *CsvOptions) MarshalJSON() ([]byte, error) { 1821 type NoMethod CsvOptions 1822 raw := NoMethod(*s) 1823 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1824} 1825 1826// DataSplitResult: Data split result. This contains references to the 1827// training and evaluation data tables that were used to train the 1828// model. 1829type DataSplitResult struct { 1830 // EvaluationTable: Table reference of the evaluation data after split. 1831 EvaluationTable *TableReference `json:"evaluationTable,omitempty"` 1832 1833 // TrainingTable: Table reference of the training data after split. 1834 TrainingTable *TableReference `json:"trainingTable,omitempty"` 1835 1836 // ForceSendFields is a list of field names (e.g. "EvaluationTable") to 1837 // unconditionally include in API requests. By default, fields with 1838 // empty values are omitted from API requests. However, any non-pointer, 1839 // non-interface field appearing in ForceSendFields will be sent to the 1840 // server regardless of whether the field is empty or not. This may be 1841 // used to include empty fields in Patch requests. 1842 ForceSendFields []string `json:"-"` 1843 1844 // NullFields is a list of field names (e.g. "EvaluationTable") to 1845 // include in API requests with the JSON null value. By default, fields 1846 // with empty values are omitted from API requests. However, any field 1847 // with an empty value appearing in NullFields will be sent to the 1848 // server as null. It is an error if a field in this list has a 1849 // non-empty value. This may be used to include null fields in Patch 1850 // requests. 1851 NullFields []string `json:"-"` 1852} 1853 1854func (s *DataSplitResult) MarshalJSON() ([]byte, error) { 1855 type NoMethod DataSplitResult 1856 raw := NoMethod(*s) 1857 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1858} 1859 1860type Dataset struct { 1861 // Access: [Optional] An array of objects that define dataset access for 1862 // one or more entities. You can set this property when inserting or 1863 // updating a dataset in order to control who is allowed to access the 1864 // data. If unspecified at dataset creation time, BigQuery adds default 1865 // dataset access for the following entities: access.specialGroup: 1866 // projectReaders; access.role: READER; access.specialGroup: 1867 // projectWriters; access.role: WRITER; access.specialGroup: 1868 // projectOwners; access.role: OWNER; access.userByEmail: [dataset 1869 // creator email]; access.role: OWNER; 1870 Access []*DatasetAccess `json:"access,omitempty"` 1871 1872 // CreationTime: [Output-only] The time when this dataset was created, 1873 // in milliseconds since the epoch. 1874 CreationTime int64 `json:"creationTime,omitempty,string"` 1875 1876 // DatasetReference: [Required] A reference that identifies the dataset. 1877 DatasetReference *DatasetReference `json:"datasetReference,omitempty"` 1878 1879 DefaultEncryptionConfiguration *EncryptionConfiguration `json:"defaultEncryptionConfiguration,omitempty"` 1880 1881 // DefaultPartitionExpirationMs: [Optional] The default partition 1882 // expiration for all partitioned tables in the dataset, in 1883 // milliseconds. Once this property is set, all newly-created 1884 // partitioned tables in the dataset will have an expirationMs property 1885 // in the timePartitioning settings set to this value, and changing the 1886 // value will only affect new tables, not existing ones. The storage in 1887 // a partition will have an expiration time of its partition time plus 1888 // this value. Setting this property overrides the use of 1889 // defaultTableExpirationMs for partitioned tables: only one of 1890 // defaultTableExpirationMs and defaultPartitionExpirationMs will be 1891 // used for any new partitioned table. If you provide an explicit 1892 // timePartitioning.expirationMs when creating or updating a partitioned 1893 // table, that value takes precedence over the default partition 1894 // expiration time indicated by this property. 1895 DefaultPartitionExpirationMs int64 `json:"defaultPartitionExpirationMs,omitempty,string"` 1896 1897 // DefaultTableExpirationMs: [Optional] The default lifetime of all 1898 // tables in the dataset, in milliseconds. The minimum value is 3600000 1899 // milliseconds (one hour). Once this property is set, all newly-created 1900 // tables in the dataset will have an expirationTime property set to the 1901 // creation time plus the value in this property, and changing the value 1902 // will only affect new tables, not existing ones. When the 1903 // expirationTime for a given table is reached, that table will be 1904 // deleted automatically. If a table's expirationTime is modified or 1905 // removed before the table expires, or if you provide an explicit 1906 // expirationTime when creating a table, that value takes precedence 1907 // over the default expiration time indicated by this property. 1908 DefaultTableExpirationMs int64 `json:"defaultTableExpirationMs,omitempty,string"` 1909 1910 // Description: [Optional] A user-friendly description of the dataset. 1911 Description string `json:"description,omitempty"` 1912 1913 // Etag: [Output-only] A hash of the resource. 1914 Etag string `json:"etag,omitempty"` 1915 1916 // FriendlyName: [Optional] A descriptive name for the dataset. 1917 FriendlyName string `json:"friendlyName,omitempty"` 1918 1919 // Id: [Output-only] The fully-qualified unique name of the dataset in 1920 // the format projectId:datasetId. The dataset name without the project 1921 // name is given in the datasetId field. When creating a new dataset, 1922 // leave this field blank, and instead specify the datasetId field. 1923 Id string `json:"id,omitempty"` 1924 1925 // Kind: [Output-only] The resource type. 1926 Kind string `json:"kind,omitempty"` 1927 1928 // Labels: The labels associated with this dataset. You can use these to 1929 // organize and group your datasets. You can set this property when 1930 // inserting or updating a dataset. See Creating and Updating Dataset 1931 // Labels for more information. 1932 Labels map[string]string `json:"labels,omitempty"` 1933 1934 // LastModifiedTime: [Output-only] The date when this dataset or any of 1935 // its tables was last modified, in milliseconds since the epoch. 1936 LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"` 1937 1938 // Location: The geographic location where the dataset should reside. 1939 // The default value is US. See details at 1940 // https://cloud.google.com/bigquery/docs/locations. 1941 Location string `json:"location,omitempty"` 1942 1943 // SatisfiesPZS: [Output-only] Reserved for future use. 1944 SatisfiesPZS bool `json:"satisfiesPZS,omitempty"` 1945 1946 // SelfLink: [Output-only] A URL that can be used to access the resource 1947 // again. You can use this URL in Get or Update requests to the 1948 // resource. 1949 SelfLink string `json:"selfLink,omitempty"` 1950 1951 // ServerResponse contains the HTTP response code and headers from the 1952 // server. 1953 googleapi.ServerResponse `json:"-"` 1954 1955 // ForceSendFields is a list of field names (e.g. "Access") to 1956 // unconditionally include in API requests. By default, fields with 1957 // empty values are omitted from API requests. However, any non-pointer, 1958 // non-interface field appearing in ForceSendFields will be sent to the 1959 // server regardless of whether the field is empty or not. This may be 1960 // used to include empty fields in Patch requests. 1961 ForceSendFields []string `json:"-"` 1962 1963 // NullFields is a list of field names (e.g. "Access") to include in API 1964 // requests with the JSON null value. By default, fields with empty 1965 // values are omitted from API requests. However, any field with an 1966 // empty value appearing in NullFields will be sent to the server as 1967 // null. It is an error if a field in this list has a non-empty value. 1968 // This may be used to include null fields in Patch requests. 1969 NullFields []string `json:"-"` 1970} 1971 1972func (s *Dataset) MarshalJSON() ([]byte, error) { 1973 type NoMethod Dataset 1974 raw := NoMethod(*s) 1975 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1976} 1977 1978type DatasetAccess struct { 1979 // Domain: [Pick one] A domain to grant access to. Any users signed in 1980 // with the domain specified will be granted the specified access. 1981 // Example: "example.com". Maps to IAM policy member "domain:DOMAIN". 1982 Domain string `json:"domain,omitempty"` 1983 1984 // GroupByEmail: [Pick one] An email address of a Google Group to grant 1985 // access to. Maps to IAM policy member "group:GROUP". 1986 GroupByEmail string `json:"groupByEmail,omitempty"` 1987 1988 // IamMember: [Pick one] Some other type of member that appears in the 1989 // IAM Policy but isn't a user, group, domain, or special group. 1990 IamMember string `json:"iamMember,omitempty"` 1991 1992 // Role: [Required] An IAM role ID that should be granted to the user, 1993 // group, or domain specified in this access entry. The following legacy 1994 // mappings will be applied: OWNER roles/bigquery.dataOwner WRITER 1995 // roles/bigquery.dataEditor READER roles/bigquery.dataViewer This 1996 // field will accept any of the above formats, but will return only the 1997 // legacy format. For example, if you set this field to 1998 // "roles/bigquery.dataOwner", it will be returned back as "OWNER". 1999 Role string `json:"role,omitempty"` 2000 2001 // Routine: [Pick one] A routine from a different dataset to grant 2002 // access to. Queries executed against that routine will have read 2003 // access to views/tables/routines in this dataset. Only UDF is 2004 // supported for now. The role field is not required when this field is 2005 // set. If that routine is updated by any user, access to the routine 2006 // needs to be granted again via an update operation. 2007 Routine *RoutineReference `json:"routine,omitempty"` 2008 2009 // SpecialGroup: [Pick one] A special group to grant access to. Possible 2010 // values include: projectOwners: Owners of the enclosing project. 2011 // projectReaders: Readers of the enclosing project. projectWriters: 2012 // Writers of the enclosing project. allAuthenticatedUsers: All 2013 // authenticated BigQuery users. Maps to similarly-named IAM members. 2014 SpecialGroup string `json:"specialGroup,omitempty"` 2015 2016 // UserByEmail: [Pick one] An email address of a user to grant access 2017 // to. For example: fred@example.com. Maps to IAM policy member 2018 // "user:EMAIL" or "serviceAccount:EMAIL". 2019 UserByEmail string `json:"userByEmail,omitempty"` 2020 2021 // View: [Pick one] A view from a different dataset to grant access to. 2022 // Queries executed against that view will have read access to tables in 2023 // this dataset. The role field is not required when this field is set. 2024 // If that view is updated by any user, access to the view needs to be 2025 // granted again via an update operation. 2026 View *TableReference `json:"view,omitempty"` 2027 2028 // ForceSendFields is a list of field names (e.g. "Domain") to 2029 // unconditionally include in API requests. By default, fields with 2030 // empty values are omitted from API requests. However, any non-pointer, 2031 // non-interface field appearing in ForceSendFields will be sent to the 2032 // server regardless of whether the field is empty or not. This may be 2033 // used to include empty fields in Patch requests. 2034 ForceSendFields []string `json:"-"` 2035 2036 // NullFields is a list of field names (e.g. "Domain") to include in API 2037 // requests with the JSON null value. By default, fields with empty 2038 // values are omitted from API requests. However, any field with an 2039 // empty value appearing in NullFields will be sent to the server as 2040 // null. It is an error if a field in this list has a non-empty value. 2041 // This may be used to include null fields in Patch requests. 2042 NullFields []string `json:"-"` 2043} 2044 2045func (s *DatasetAccess) MarshalJSON() ([]byte, error) { 2046 type NoMethod DatasetAccess 2047 raw := NoMethod(*s) 2048 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2049} 2050 2051type DatasetList struct { 2052 // Datasets: An array of the dataset resources in the project. Each 2053 // resource contains basic information. For full information about a 2054 // particular dataset resource, use the Datasets: get method. This 2055 // property is omitted when there are no datasets in the project. 2056 Datasets []*DatasetListDatasets `json:"datasets,omitempty"` 2057 2058 // Etag: A hash value of the results page. You can use this property to 2059 // determine if the page has changed since the last request. 2060 Etag string `json:"etag,omitempty"` 2061 2062 // Kind: The list type. This property always returns the value 2063 // "bigquery#datasetList". 2064 Kind string `json:"kind,omitempty"` 2065 2066 // NextPageToken: A token that can be used to request the next results 2067 // page. This property is omitted on the final results page. 2068 NextPageToken string `json:"nextPageToken,omitempty"` 2069 2070 // ServerResponse contains the HTTP response code and headers from the 2071 // server. 2072 googleapi.ServerResponse `json:"-"` 2073 2074 // ForceSendFields is a list of field names (e.g. "Datasets") to 2075 // unconditionally include in API requests. By default, fields with 2076 // empty values are omitted from API requests. However, any non-pointer, 2077 // non-interface field appearing in ForceSendFields will be sent to the 2078 // server regardless of whether the field is empty or not. This may be 2079 // used to include empty fields in Patch requests. 2080 ForceSendFields []string `json:"-"` 2081 2082 // NullFields is a list of field names (e.g. "Datasets") to include in 2083 // API requests with the JSON null value. By default, fields with empty 2084 // values are omitted from API requests. However, any field with an 2085 // empty value appearing in NullFields will be sent to the server as 2086 // null. It is an error if a field in this list has a non-empty value. 2087 // This may be used to include null fields in Patch requests. 2088 NullFields []string `json:"-"` 2089} 2090 2091func (s *DatasetList) MarshalJSON() ([]byte, error) { 2092 type NoMethod DatasetList 2093 raw := NoMethod(*s) 2094 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2095} 2096 2097type DatasetListDatasets struct { 2098 // DatasetReference: The dataset reference. Use this property to access 2099 // specific parts of the dataset's ID, such as project ID or dataset ID. 2100 DatasetReference *DatasetReference `json:"datasetReference,omitempty"` 2101 2102 // FriendlyName: A descriptive name for the dataset, if one exists. 2103 FriendlyName string `json:"friendlyName,omitempty"` 2104 2105 // Id: The fully-qualified, unique, opaque ID of the dataset. 2106 Id string `json:"id,omitempty"` 2107 2108 // Kind: The resource type. This property always returns the value 2109 // "bigquery#dataset". 2110 Kind string `json:"kind,omitempty"` 2111 2112 // Labels: The labels associated with this dataset. You can use these to 2113 // organize and group your datasets. 2114 Labels map[string]string `json:"labels,omitempty"` 2115 2116 // Location: The geographic location where the data resides. 2117 Location string `json:"location,omitempty"` 2118 2119 // ForceSendFields is a list of field names (e.g. "DatasetReference") to 2120 // unconditionally include in API requests. By default, fields with 2121 // empty values are omitted from API requests. However, any non-pointer, 2122 // non-interface field appearing in ForceSendFields will be sent to the 2123 // server regardless of whether the field is empty or not. This may be 2124 // used to include empty fields in Patch requests. 2125 ForceSendFields []string `json:"-"` 2126 2127 // NullFields is a list of field names (e.g. "DatasetReference") to 2128 // include in API requests with the JSON null value. By default, fields 2129 // with empty values are omitted from API requests. However, any field 2130 // with an empty value appearing in NullFields will be sent to the 2131 // server as null. It is an error if a field in this list has a 2132 // non-empty value. This may be used to include null fields in Patch 2133 // requests. 2134 NullFields []string `json:"-"` 2135} 2136 2137func (s *DatasetListDatasets) MarshalJSON() ([]byte, error) { 2138 type NoMethod DatasetListDatasets 2139 raw := NoMethod(*s) 2140 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2141} 2142 2143type DatasetReference struct { 2144 // DatasetId: [Required] A unique ID for this dataset, without the 2145 // project name. The ID must contain only letters (a-z, A-Z), numbers 2146 // (0-9), or underscores (_). The maximum length is 1,024 characters. 2147 DatasetId string `json:"datasetId,omitempty"` 2148 2149 // ProjectId: [Optional] The ID of the project containing this dataset. 2150 ProjectId string `json:"projectId,omitempty"` 2151 2152 // ForceSendFields is a list of field names (e.g. "DatasetId") to 2153 // unconditionally include in API requests. By default, fields with 2154 // empty values are omitted from API requests. However, any non-pointer, 2155 // non-interface field appearing in ForceSendFields will be sent to the 2156 // server regardless of whether the field is empty or not. This may be 2157 // used to include empty fields in Patch requests. 2158 ForceSendFields []string `json:"-"` 2159 2160 // NullFields is a list of field names (e.g. "DatasetId") to include in 2161 // API requests with the JSON null value. By default, fields with empty 2162 // values are omitted from API requests. However, any field with an 2163 // empty value appearing in NullFields will be sent to the server as 2164 // null. It is an error if a field in this list has a non-empty value. 2165 // This may be used to include null fields in Patch requests. 2166 NullFields []string `json:"-"` 2167} 2168 2169func (s *DatasetReference) MarshalJSON() ([]byte, error) { 2170 type NoMethod DatasetReference 2171 raw := NoMethod(*s) 2172 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2173} 2174 2175type DestinationTableProperties struct { 2176 // Description: [Optional] The description for the destination table. 2177 // This will only be used if the destination table is newly created. If 2178 // the table already exists and a value different than the current 2179 // description is provided, the job will fail. 2180 Description string `json:"description,omitempty"` 2181 2182 // FriendlyName: [Optional] The friendly name for the destination table. 2183 // This will only be used if the destination table is newly created. If 2184 // the table already exists and a value different than the current 2185 // friendly name is provided, the job will fail. 2186 FriendlyName string `json:"friendlyName,omitempty"` 2187 2188 // Labels: [Optional] The labels associated with this table. You can use 2189 // these to organize and group your tables. This will only be used if 2190 // the destination table is newly created. If the table already exists 2191 // and labels are different than the current labels are provided, the 2192 // job will fail. 2193 Labels map[string]string `json:"labels,omitempty"` 2194 2195 // ForceSendFields is a list of field names (e.g. "Description") to 2196 // unconditionally include in API requests. By default, fields with 2197 // empty values are omitted from API requests. However, any non-pointer, 2198 // non-interface field appearing in ForceSendFields will be sent to the 2199 // server regardless of whether the field is empty or not. This may be 2200 // used to include empty fields in Patch requests. 2201 ForceSendFields []string `json:"-"` 2202 2203 // NullFields is a list of field names (e.g. "Description") to include 2204 // in API requests with the JSON null value. By default, fields with 2205 // empty values are omitted from API requests. However, any field with 2206 // an empty value appearing in NullFields will be sent to the server as 2207 // null. It is an error if a field in this list has a non-empty value. 2208 // This may be used to include null fields in Patch requests. 2209 NullFields []string `json:"-"` 2210} 2211 2212func (s *DestinationTableProperties) MarshalJSON() ([]byte, error) { 2213 type NoMethod DestinationTableProperties 2214 raw := NoMethod(*s) 2215 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2216} 2217 2218type EncryptionConfiguration struct { 2219 // KmsKeyName: [Optional] Describes the Cloud KMS encryption key that 2220 // will be used to protect destination BigQuery table. The BigQuery 2221 // Service Account associated with your project requires access to this 2222 // encryption key. 2223 KmsKeyName string `json:"kmsKeyName,omitempty"` 2224 2225 // ForceSendFields is a list of field names (e.g. "KmsKeyName") to 2226 // unconditionally include in API requests. By default, fields with 2227 // empty values are omitted from API requests. However, any non-pointer, 2228 // non-interface field appearing in ForceSendFields will be sent to the 2229 // server regardless of whether the field is empty or not. This may be 2230 // used to include empty fields in Patch requests. 2231 ForceSendFields []string `json:"-"` 2232 2233 // NullFields is a list of field names (e.g. "KmsKeyName") to include in 2234 // API requests with the JSON null value. By default, fields with empty 2235 // values are omitted from API requests. However, any field with an 2236 // empty value appearing in NullFields will be sent to the server as 2237 // null. It is an error if a field in this list has a non-empty value. 2238 // This may be used to include null fields in Patch requests. 2239 NullFields []string `json:"-"` 2240} 2241 2242func (s *EncryptionConfiguration) MarshalJSON() ([]byte, error) { 2243 type NoMethod EncryptionConfiguration 2244 raw := NoMethod(*s) 2245 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2246} 2247 2248// Entry: A single entry in the confusion matrix. 2249type Entry struct { 2250 // ItemCount: Number of items being predicted as this label. 2251 ItemCount int64 `json:"itemCount,omitempty,string"` 2252 2253 // PredictedLabel: The predicted label. For confidence_threshold > 0, we 2254 // will also add an entry indicating the number of items under the 2255 // confidence threshold. 2256 PredictedLabel string `json:"predictedLabel,omitempty"` 2257 2258 // ForceSendFields is a list of field names (e.g. "ItemCount") to 2259 // unconditionally include in API requests. By default, fields with 2260 // empty values are omitted from API requests. However, any non-pointer, 2261 // non-interface field appearing in ForceSendFields will be sent to the 2262 // server regardless of whether the field is empty or not. This may be 2263 // used to include empty fields in Patch requests. 2264 ForceSendFields []string `json:"-"` 2265 2266 // NullFields is a list of field names (e.g. "ItemCount") to include in 2267 // API requests with the JSON null value. By default, fields with empty 2268 // values are omitted from API requests. However, any field with an 2269 // empty value appearing in NullFields will be sent to the server as 2270 // null. It is an error if a field in this list has a non-empty value. 2271 // This may be used to include null fields in Patch requests. 2272 NullFields []string `json:"-"` 2273} 2274 2275func (s *Entry) MarshalJSON() ([]byte, error) { 2276 type NoMethod Entry 2277 raw := NoMethod(*s) 2278 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2279} 2280 2281type ErrorProto struct { 2282 // DebugInfo: Debugging information. This property is internal to Google 2283 // and should not be used. 2284 DebugInfo string `json:"debugInfo,omitempty"` 2285 2286 // Location: Specifies where the error occurred, if present. 2287 Location string `json:"location,omitempty"` 2288 2289 // Message: A human-readable description of the error. 2290 Message string `json:"message,omitempty"` 2291 2292 // Reason: A short error code that summarizes the error. 2293 Reason string `json:"reason,omitempty"` 2294 2295 // ForceSendFields is a list of field names (e.g. "DebugInfo") to 2296 // unconditionally include in API requests. By default, fields with 2297 // empty values are omitted from API requests. However, any non-pointer, 2298 // non-interface field appearing in ForceSendFields will be sent to the 2299 // server regardless of whether the field is empty or not. This may be 2300 // used to include empty fields in Patch requests. 2301 ForceSendFields []string `json:"-"` 2302 2303 // NullFields is a list of field names (e.g. "DebugInfo") to include in 2304 // API requests with the JSON null value. By default, fields with empty 2305 // values are omitted from API requests. However, any field with an 2306 // empty value appearing in NullFields will be sent to the server as 2307 // null. It is an error if a field in this list has a non-empty value. 2308 // This may be used to include null fields in Patch requests. 2309 NullFields []string `json:"-"` 2310} 2311 2312func (s *ErrorProto) MarshalJSON() ([]byte, error) { 2313 type NoMethod ErrorProto 2314 raw := NoMethod(*s) 2315 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2316} 2317 2318// EvaluationMetrics: Evaluation metrics of a model. These are either 2319// computed on all training data or just the eval data based on whether 2320// eval data was used during training. These are not present for 2321// imported models. 2322type EvaluationMetrics struct { 2323 // ArimaForecastingMetrics: Populated for ARIMA models. 2324 ArimaForecastingMetrics *ArimaForecastingMetrics `json:"arimaForecastingMetrics,omitempty"` 2325 2326 // BinaryClassificationMetrics: Populated for binary 2327 // classification/classifier models. 2328 BinaryClassificationMetrics *BinaryClassificationMetrics `json:"binaryClassificationMetrics,omitempty"` 2329 2330 // ClusteringMetrics: Populated for clustering models. 2331 ClusteringMetrics *ClusteringMetrics `json:"clusteringMetrics,omitempty"` 2332 2333 // MultiClassClassificationMetrics: Populated for multi-class 2334 // classification/classifier models. 2335 MultiClassClassificationMetrics *MultiClassClassificationMetrics `json:"multiClassClassificationMetrics,omitempty"` 2336 2337 // RankingMetrics: Populated for implicit feedback type matrix 2338 // factorization models. 2339 RankingMetrics *RankingMetrics `json:"rankingMetrics,omitempty"` 2340 2341 // RegressionMetrics: Populated for regression models and explicit 2342 // feedback type matrix factorization models. 2343 RegressionMetrics *RegressionMetrics `json:"regressionMetrics,omitempty"` 2344 2345 // ForceSendFields is a list of field names (e.g. 2346 // "ArimaForecastingMetrics") to unconditionally include in API 2347 // requests. By default, fields with empty values are omitted from API 2348 // requests. However, any non-pointer, non-interface field appearing in 2349 // ForceSendFields will be sent to the server regardless of whether the 2350 // field is empty or not. This may be used to include empty fields in 2351 // Patch requests. 2352 ForceSendFields []string `json:"-"` 2353 2354 // NullFields is a list of field names (e.g. "ArimaForecastingMetrics") 2355 // to include in API requests with the JSON null value. By default, 2356 // fields with empty values are omitted from API requests. However, any 2357 // field with an empty value appearing in NullFields will be sent to the 2358 // server as null. It is an error if a field in this list has a 2359 // non-empty value. This may be used to include null fields in Patch 2360 // requests. 2361 NullFields []string `json:"-"` 2362} 2363 2364func (s *EvaluationMetrics) MarshalJSON() ([]byte, error) { 2365 type NoMethod EvaluationMetrics 2366 raw := NoMethod(*s) 2367 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2368} 2369 2370type ExplainQueryStage struct { 2371 // CompletedParallelInputs: Number of parallel input segments completed. 2372 CompletedParallelInputs int64 `json:"completedParallelInputs,omitempty,string"` 2373 2374 // ComputeMsAvg: Milliseconds the average shard spent on CPU-bound 2375 // tasks. 2376 ComputeMsAvg int64 `json:"computeMsAvg,omitempty,string"` 2377 2378 // ComputeMsMax: Milliseconds the slowest shard spent on CPU-bound 2379 // tasks. 2380 ComputeMsMax int64 `json:"computeMsMax,omitempty,string"` 2381 2382 // ComputeRatioAvg: Relative amount of time the average shard spent on 2383 // CPU-bound tasks. 2384 ComputeRatioAvg float64 `json:"computeRatioAvg,omitempty"` 2385 2386 // ComputeRatioMax: Relative amount of time the slowest shard spent on 2387 // CPU-bound tasks. 2388 ComputeRatioMax float64 `json:"computeRatioMax,omitempty"` 2389 2390 // EndMs: Stage end time represented as milliseconds since epoch. 2391 EndMs int64 `json:"endMs,omitempty,string"` 2392 2393 // Id: Unique ID for stage within plan. 2394 Id int64 `json:"id,omitempty,string"` 2395 2396 // InputStages: IDs for stages that are inputs to this stage. 2397 InputStages googleapi.Int64s `json:"inputStages,omitempty"` 2398 2399 // Name: Human-readable name for stage. 2400 Name string `json:"name,omitempty"` 2401 2402 // ParallelInputs: Number of parallel input segments to be processed. 2403 ParallelInputs int64 `json:"parallelInputs,omitempty,string"` 2404 2405 // ReadMsAvg: Milliseconds the average shard spent reading input. 2406 ReadMsAvg int64 `json:"readMsAvg,omitempty,string"` 2407 2408 // ReadMsMax: Milliseconds the slowest shard spent reading input. 2409 ReadMsMax int64 `json:"readMsMax,omitempty,string"` 2410 2411 // ReadRatioAvg: Relative amount of time the average shard spent reading 2412 // input. 2413 ReadRatioAvg float64 `json:"readRatioAvg,omitempty"` 2414 2415 // ReadRatioMax: Relative amount of time the slowest shard spent reading 2416 // input. 2417 ReadRatioMax float64 `json:"readRatioMax,omitempty"` 2418 2419 // RecordsRead: Number of records read into the stage. 2420 RecordsRead int64 `json:"recordsRead,omitempty,string"` 2421 2422 // RecordsWritten: Number of records written by the stage. 2423 RecordsWritten int64 `json:"recordsWritten,omitempty,string"` 2424 2425 // ShuffleOutputBytes: Total number of bytes written to shuffle. 2426 ShuffleOutputBytes int64 `json:"shuffleOutputBytes,omitempty,string"` 2427 2428 // ShuffleOutputBytesSpilled: Total number of bytes written to shuffle 2429 // and spilled to disk. 2430 ShuffleOutputBytesSpilled int64 `json:"shuffleOutputBytesSpilled,omitempty,string"` 2431 2432 // SlotMs: Slot-milliseconds used by the stage. 2433 SlotMs int64 `json:"slotMs,omitempty,string"` 2434 2435 // StartMs: Stage start time represented as milliseconds since epoch. 2436 StartMs int64 `json:"startMs,omitempty,string"` 2437 2438 // Status: Current status for the stage. 2439 Status string `json:"status,omitempty"` 2440 2441 // Steps: List of operations within the stage in dependency order 2442 // (approximately chronological). 2443 Steps []*ExplainQueryStep `json:"steps,omitempty"` 2444 2445 // WaitMsAvg: Milliseconds the average shard spent waiting to be 2446 // scheduled. 2447 WaitMsAvg int64 `json:"waitMsAvg,omitempty,string"` 2448 2449 // WaitMsMax: Milliseconds the slowest shard spent waiting to be 2450 // scheduled. 2451 WaitMsMax int64 `json:"waitMsMax,omitempty,string"` 2452 2453 // WaitRatioAvg: Relative amount of time the average shard spent waiting 2454 // to be scheduled. 2455 WaitRatioAvg float64 `json:"waitRatioAvg,omitempty"` 2456 2457 // WaitRatioMax: Relative amount of time the slowest shard spent waiting 2458 // to be scheduled. 2459 WaitRatioMax float64 `json:"waitRatioMax,omitempty"` 2460 2461 // WriteMsAvg: Milliseconds the average shard spent on writing output. 2462 WriteMsAvg int64 `json:"writeMsAvg,omitempty,string"` 2463 2464 // WriteMsMax: Milliseconds the slowest shard spent on writing output. 2465 WriteMsMax int64 `json:"writeMsMax,omitempty,string"` 2466 2467 // WriteRatioAvg: Relative amount of time the average shard spent on 2468 // writing output. 2469 WriteRatioAvg float64 `json:"writeRatioAvg,omitempty"` 2470 2471 // WriteRatioMax: Relative amount of time the slowest shard spent on 2472 // writing output. 2473 WriteRatioMax float64 `json:"writeRatioMax,omitempty"` 2474 2475 // ForceSendFields is a list of field names (e.g. 2476 // "CompletedParallelInputs") to unconditionally include in API 2477 // requests. By default, fields with empty values are omitted from API 2478 // requests. However, any non-pointer, non-interface field appearing in 2479 // ForceSendFields will be sent to the server regardless of whether the 2480 // field is empty or not. This may be used to include empty fields in 2481 // Patch requests. 2482 ForceSendFields []string `json:"-"` 2483 2484 // NullFields is a list of field names (e.g. "CompletedParallelInputs") 2485 // to include in API requests with the JSON null value. By default, 2486 // fields with empty values are omitted from API requests. However, any 2487 // field with an empty value appearing in NullFields will be sent to the 2488 // server as null. It is an error if a field in this list has a 2489 // non-empty value. This may be used to include null fields in Patch 2490 // requests. 2491 NullFields []string `json:"-"` 2492} 2493 2494func (s *ExplainQueryStage) MarshalJSON() ([]byte, error) { 2495 type NoMethod ExplainQueryStage 2496 raw := NoMethod(*s) 2497 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2498} 2499 2500func (s *ExplainQueryStage) UnmarshalJSON(data []byte) error { 2501 type NoMethod ExplainQueryStage 2502 var s1 struct { 2503 ComputeRatioAvg gensupport.JSONFloat64 `json:"computeRatioAvg"` 2504 ComputeRatioMax gensupport.JSONFloat64 `json:"computeRatioMax"` 2505 ReadRatioAvg gensupport.JSONFloat64 `json:"readRatioAvg"` 2506 ReadRatioMax gensupport.JSONFloat64 `json:"readRatioMax"` 2507 WaitRatioAvg gensupport.JSONFloat64 `json:"waitRatioAvg"` 2508 WaitRatioMax gensupport.JSONFloat64 `json:"waitRatioMax"` 2509 WriteRatioAvg gensupport.JSONFloat64 `json:"writeRatioAvg"` 2510 WriteRatioMax gensupport.JSONFloat64 `json:"writeRatioMax"` 2511 *NoMethod 2512 } 2513 s1.NoMethod = (*NoMethod)(s) 2514 if err := json.Unmarshal(data, &s1); err != nil { 2515 return err 2516 } 2517 s.ComputeRatioAvg = float64(s1.ComputeRatioAvg) 2518 s.ComputeRatioMax = float64(s1.ComputeRatioMax) 2519 s.ReadRatioAvg = float64(s1.ReadRatioAvg) 2520 s.ReadRatioMax = float64(s1.ReadRatioMax) 2521 s.WaitRatioAvg = float64(s1.WaitRatioAvg) 2522 s.WaitRatioMax = float64(s1.WaitRatioMax) 2523 s.WriteRatioAvg = float64(s1.WriteRatioAvg) 2524 s.WriteRatioMax = float64(s1.WriteRatioMax) 2525 return nil 2526} 2527 2528type ExplainQueryStep struct { 2529 // Kind: Machine-readable operation type. 2530 Kind string `json:"kind,omitempty"` 2531 2532 // Substeps: Human-readable stage descriptions. 2533 Substeps []string `json:"substeps,omitempty"` 2534 2535 // ForceSendFields is a list of field names (e.g. "Kind") to 2536 // unconditionally include in API requests. By default, fields with 2537 // empty values are omitted from API requests. However, any non-pointer, 2538 // non-interface field appearing in ForceSendFields will be sent to the 2539 // server regardless of whether the field is empty or not. This may be 2540 // used to include empty fields in Patch requests. 2541 ForceSendFields []string `json:"-"` 2542 2543 // NullFields is a list of field names (e.g. "Kind") to include in API 2544 // requests with the JSON null value. By default, fields with empty 2545 // values are omitted from API requests. However, any field with an 2546 // empty value appearing in NullFields will be sent to the server as 2547 // null. It is an error if a field in this list has a non-empty value. 2548 // This may be used to include null fields in Patch requests. 2549 NullFields []string `json:"-"` 2550} 2551 2552func (s *ExplainQueryStep) MarshalJSON() ([]byte, error) { 2553 type NoMethod ExplainQueryStep 2554 raw := NoMethod(*s) 2555 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2556} 2557 2558// Explanation: Explanation for a single feature. 2559type Explanation struct { 2560 // Attribution: Attribution of feature. 2561 Attribution float64 `json:"attribution,omitempty"` 2562 2563 // FeatureName: Full name of the feature. For non-numerical features, 2564 // will be formatted like .. Overall size of feature name will always be 2565 // truncated to first 120 characters. 2566 FeatureName string `json:"featureName,omitempty"` 2567 2568 // ForceSendFields is a list of field names (e.g. "Attribution") to 2569 // unconditionally include in API requests. By default, fields with 2570 // empty values are omitted from API requests. However, any non-pointer, 2571 // non-interface field appearing in ForceSendFields will be sent to the 2572 // server regardless of whether the field is empty or not. This may be 2573 // used to include empty fields in Patch requests. 2574 ForceSendFields []string `json:"-"` 2575 2576 // NullFields is a list of field names (e.g. "Attribution") to include 2577 // in API requests with the JSON null value. By default, fields with 2578 // empty values are omitted from API requests. However, any field with 2579 // an empty value appearing in NullFields will be sent to the server as 2580 // null. It is an error if a field in this list has a non-empty value. 2581 // This may be used to include null fields in Patch requests. 2582 NullFields []string `json:"-"` 2583} 2584 2585func (s *Explanation) MarshalJSON() ([]byte, error) { 2586 type NoMethod Explanation 2587 raw := NoMethod(*s) 2588 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2589} 2590 2591func (s *Explanation) UnmarshalJSON(data []byte) error { 2592 type NoMethod Explanation 2593 var s1 struct { 2594 Attribution gensupport.JSONFloat64 `json:"attribution"` 2595 *NoMethod 2596 } 2597 s1.NoMethod = (*NoMethod)(s) 2598 if err := json.Unmarshal(data, &s1); err != nil { 2599 return err 2600 } 2601 s.Attribution = float64(s1.Attribution) 2602 return nil 2603} 2604 2605// Expr: Represents a textual expression in the Common Expression 2606// Language (CEL) syntax. CEL is a C-like expression language. The 2607// syntax and semantics of CEL are documented at 2608// https://github.com/google/cel-spec. Example (Comparison): title: 2609// "Summary size limit" description: "Determines if a summary is less 2610// than 100 chars" expression: "document.summary.size() < 100" Example 2611// (Equality): title: "Requestor is owner" description: "Determines if 2612// requestor is the document owner" expression: "document.owner == 2613// request.auth.claims.email" Example (Logic): title: "Public documents" 2614// description: "Determine whether the document should be publicly 2615// visible" expression: "document.type != 'private' && document.type != 2616// 'internal'" Example (Data Manipulation): title: "Notification string" 2617// description: "Create a notification string with a timestamp." 2618// expression: "'New message received at ' + 2619// string(document.create_time)" The exact variables and functions that 2620// may be referenced within an expression are determined by the service 2621// that evaluates it. See the service documentation for additional 2622// information. 2623type Expr struct { 2624 // Description: Optional. Description of the expression. This is a 2625 // longer text which describes the expression, e.g. when hovered over it 2626 // in a UI. 2627 Description string `json:"description,omitempty"` 2628 2629 // Expression: Textual representation of an expression in Common 2630 // Expression Language syntax. 2631 Expression string `json:"expression,omitempty"` 2632 2633 // Location: Optional. String indicating the location of the expression 2634 // for error reporting, e.g. a file name and a position in the file. 2635 Location string `json:"location,omitempty"` 2636 2637 // Title: Optional. Title for the expression, i.e. a short string 2638 // describing its purpose. This can be used e.g. in UIs which allow to 2639 // enter the expression. 2640 Title string `json:"title,omitempty"` 2641 2642 // ForceSendFields is a list of field names (e.g. "Description") to 2643 // unconditionally include in API requests. By default, fields with 2644 // empty values are omitted from API requests. However, any non-pointer, 2645 // non-interface field appearing in ForceSendFields will be sent to the 2646 // server regardless of whether the field is empty or not. This may be 2647 // used to include empty fields in Patch requests. 2648 ForceSendFields []string `json:"-"` 2649 2650 // NullFields is a list of field names (e.g. "Description") to include 2651 // in API requests with the JSON null value. By default, fields with 2652 // empty values are omitted from API requests. However, any field with 2653 // an empty value appearing in NullFields will be sent to the server as 2654 // null. It is an error if a field in this list has a non-empty value. 2655 // This may be used to include null fields in Patch requests. 2656 NullFields []string `json:"-"` 2657} 2658 2659func (s *Expr) MarshalJSON() ([]byte, error) { 2660 type NoMethod Expr 2661 raw := NoMethod(*s) 2662 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2663} 2664 2665type ExternalDataConfiguration struct { 2666 // Autodetect: Try to detect schema and format options automatically. 2667 // Any option specified explicitly will be honored. 2668 Autodetect bool `json:"autodetect,omitempty"` 2669 2670 // BigtableOptions: [Optional] Additional options if sourceFormat is set 2671 // to BIGTABLE. 2672 BigtableOptions *BigtableOptions `json:"bigtableOptions,omitempty"` 2673 2674 // Compression: [Optional] The compression type of the data source. 2675 // Possible values include GZIP and NONE. The default value is NONE. 2676 // This setting is ignored for Google Cloud Bigtable, Google Cloud 2677 // Datastore backups and Avro formats. 2678 Compression string `json:"compression,omitempty"` 2679 2680 // ConnectionId: [Optional, Trusted Tester] Connection for external data 2681 // source. 2682 ConnectionId string `json:"connectionId,omitempty"` 2683 2684 // CsvOptions: Additional properties to set if sourceFormat is set to 2685 // CSV. 2686 CsvOptions *CsvOptions `json:"csvOptions,omitempty"` 2687 2688 // GoogleSheetsOptions: [Optional] Additional options if sourceFormat is 2689 // set to GOOGLE_SHEETS. 2690 GoogleSheetsOptions *GoogleSheetsOptions `json:"googleSheetsOptions,omitempty"` 2691 2692 // HivePartitioningOptions: [Optional, Trusted Tester] Options to 2693 // configure hive partitioning support. 2694 HivePartitioningOptions *HivePartitioningOptions `json:"hivePartitioningOptions,omitempty"` 2695 2696 // IgnoreUnknownValues: [Optional] Indicates if BigQuery should allow 2697 // extra values that are not represented in the table schema. If true, 2698 // the extra values are ignored. If false, records with extra columns 2699 // are treated as bad records, and if there are too many bad records, an 2700 // invalid error is returned in the job result. The default value is 2701 // false. The sourceFormat property determines what BigQuery treats as 2702 // an extra value: CSV: Trailing columns JSON: Named values that don't 2703 // match any column names Google Cloud Bigtable: This setting is 2704 // ignored. Google Cloud Datastore backups: This setting is ignored. 2705 // Avro: This setting is ignored. 2706 IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"` 2707 2708 // MaxBadRecords: [Optional] The maximum number of bad records that 2709 // BigQuery can ignore when reading data. If the number of bad records 2710 // exceeds this value, an invalid error is returned in the job result. 2711 // This is only valid for CSV, JSON, and Google Sheets. The default 2712 // value is 0, which requires that all records are valid. This setting 2713 // is ignored for Google Cloud Bigtable, Google Cloud Datastore backups 2714 // and Avro formats. 2715 MaxBadRecords int64 `json:"maxBadRecords,omitempty"` 2716 2717 // Schema: [Optional] The schema for the data. Schema is required for 2718 // CSV and JSON formats. Schema is disallowed for Google Cloud Bigtable, 2719 // Cloud Datastore backups, and Avro formats. 2720 Schema *TableSchema `json:"schema,omitempty"` 2721 2722 // SourceFormat: [Required] The data format. For CSV files, specify 2723 // "CSV". For Google sheets, specify "GOOGLE_SHEETS". For 2724 // newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro 2725 // files, specify "AVRO". For Google Cloud Datastore backups, specify 2726 // "DATASTORE_BACKUP". [Beta] For Google Cloud Bigtable, specify 2727 // "BIGTABLE". 2728 SourceFormat string `json:"sourceFormat,omitempty"` 2729 2730 // SourceUris: [Required] The fully-qualified URIs that point to your 2731 // data in Google Cloud. For Google Cloud Storage URIs: Each URI can 2732 // contain one '*' wildcard character and it must come after the 2733 // 'bucket' name. Size limits related to load jobs apply to external 2734 // data sources. For Google Cloud Bigtable URIs: Exactly one URI can be 2735 // specified and it has be a fully specified and valid HTTPS URL for a 2736 // Google Cloud Bigtable table. For Google Cloud Datastore backups, 2737 // exactly one URI can be specified. Also, the '*' wildcard character is 2738 // not allowed. 2739 SourceUris []string `json:"sourceUris,omitempty"` 2740 2741 // ForceSendFields is a list of field names (e.g. "Autodetect") to 2742 // unconditionally include in API requests. By default, fields with 2743 // empty values are omitted from API requests. However, any non-pointer, 2744 // non-interface field appearing in ForceSendFields will be sent to the 2745 // server regardless of whether the field is empty or not. This may be 2746 // used to include empty fields in Patch requests. 2747 ForceSendFields []string `json:"-"` 2748 2749 // NullFields is a list of field names (e.g. "Autodetect") to include in 2750 // API requests with the JSON null value. By default, fields with empty 2751 // values are omitted from API requests. However, any field with an 2752 // empty value appearing in NullFields will be sent to the server as 2753 // null. It is an error if a field in this list has a non-empty value. 2754 // This may be used to include null fields in Patch requests. 2755 NullFields []string `json:"-"` 2756} 2757 2758func (s *ExternalDataConfiguration) MarshalJSON() ([]byte, error) { 2759 type NoMethod ExternalDataConfiguration 2760 raw := NoMethod(*s) 2761 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2762} 2763 2764// FeatureValue: Representative value of a single feature within the 2765// cluster. 2766type FeatureValue struct { 2767 // CategoricalValue: The categorical feature value. 2768 CategoricalValue *CategoricalValue `json:"categoricalValue,omitempty"` 2769 2770 // FeatureColumn: The feature column name. 2771 FeatureColumn string `json:"featureColumn,omitempty"` 2772 2773 // NumericalValue: The numerical feature value. This is the centroid 2774 // value for this feature. 2775 NumericalValue float64 `json:"numericalValue,omitempty"` 2776 2777 // ForceSendFields is a list of field names (e.g. "CategoricalValue") to 2778 // unconditionally include in API requests. By default, fields with 2779 // empty values are omitted from API requests. However, any non-pointer, 2780 // non-interface field appearing in ForceSendFields will be sent to the 2781 // server regardless of whether the field is empty or not. This may be 2782 // used to include empty fields in Patch requests. 2783 ForceSendFields []string `json:"-"` 2784 2785 // NullFields is a list of field names (e.g. "CategoricalValue") to 2786 // include in API requests with the JSON null value. By default, fields 2787 // with empty values are omitted from API requests. However, any field 2788 // with an empty value appearing in NullFields will be sent to the 2789 // server as null. It is an error if a field in this list has a 2790 // non-empty value. This may be used to include null fields in Patch 2791 // requests. 2792 NullFields []string `json:"-"` 2793} 2794 2795func (s *FeatureValue) MarshalJSON() ([]byte, error) { 2796 type NoMethod FeatureValue 2797 raw := NoMethod(*s) 2798 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2799} 2800 2801func (s *FeatureValue) UnmarshalJSON(data []byte) error { 2802 type NoMethod FeatureValue 2803 var s1 struct { 2804 NumericalValue gensupport.JSONFloat64 `json:"numericalValue"` 2805 *NoMethod 2806 } 2807 s1.NoMethod = (*NoMethod)(s) 2808 if err := json.Unmarshal(data, &s1); err != nil { 2809 return err 2810 } 2811 s.NumericalValue = float64(s1.NumericalValue) 2812 return nil 2813} 2814 2815// GetIamPolicyRequest: Request message for `GetIamPolicy` method. 2816type GetIamPolicyRequest struct { 2817 // Options: OPTIONAL: A `GetPolicyOptions` object for specifying options 2818 // to `GetIamPolicy`. 2819 Options *GetPolicyOptions `json:"options,omitempty"` 2820 2821 // ForceSendFields is a list of field names (e.g. "Options") to 2822 // unconditionally include in API requests. By default, fields with 2823 // empty values are omitted from API requests. However, any non-pointer, 2824 // non-interface field appearing in ForceSendFields will be sent to the 2825 // server regardless of whether the field is empty or not. This may be 2826 // used to include empty fields in Patch requests. 2827 ForceSendFields []string `json:"-"` 2828 2829 // NullFields is a list of field names (e.g. "Options") to include in 2830 // API requests with the JSON null value. By default, fields with empty 2831 // values are omitted from API requests. However, any field with an 2832 // empty value appearing in NullFields will be sent to the server as 2833 // null. It is an error if a field in this list has a non-empty value. 2834 // This may be used to include null fields in Patch requests. 2835 NullFields []string `json:"-"` 2836} 2837 2838func (s *GetIamPolicyRequest) MarshalJSON() ([]byte, error) { 2839 type NoMethod GetIamPolicyRequest 2840 raw := NoMethod(*s) 2841 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2842} 2843 2844// GetPolicyOptions: Encapsulates settings provided to GetIamPolicy. 2845type GetPolicyOptions struct { 2846 // RequestedPolicyVersion: Optional. The policy format version to be 2847 // returned. Valid values are 0, 1, and 3. Requests specifying an 2848 // invalid value will be rejected. Requests for policies with any 2849 // conditional bindings must specify version 3. Policies without any 2850 // conditional bindings may specify any valid value or leave the field 2851 // unset. To learn which resources support conditions in their IAM 2852 // policies, see the [IAM 2853 // documentation](https://cloud.google.com/iam/help/conditions/resource-p 2854 // olicies). 2855 RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"` 2856 2857 // ForceSendFields is a list of field names (e.g. 2858 // "RequestedPolicyVersion") to unconditionally include in API requests. 2859 // By default, fields with empty values are omitted from API requests. 2860 // However, any non-pointer, non-interface field appearing in 2861 // ForceSendFields will be sent to the server regardless of whether the 2862 // field is empty or not. This may be used to include empty fields in 2863 // Patch requests. 2864 ForceSendFields []string `json:"-"` 2865 2866 // NullFields is a list of field names (e.g. "RequestedPolicyVersion") 2867 // to include in API requests with the JSON null value. By default, 2868 // fields with empty values are omitted from API requests. However, any 2869 // field with an empty value appearing in NullFields will be sent to the 2870 // server as null. It is an error if a field in this list has a 2871 // non-empty value. This may be used to include null fields in Patch 2872 // requests. 2873 NullFields []string `json:"-"` 2874} 2875 2876func (s *GetPolicyOptions) MarshalJSON() ([]byte, error) { 2877 type NoMethod GetPolicyOptions 2878 raw := NoMethod(*s) 2879 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2880} 2881 2882type GetQueryResultsResponse struct { 2883 // CacheHit: Whether the query result was fetched from the query cache. 2884 CacheHit bool `json:"cacheHit,omitempty"` 2885 2886 // Errors: [Output-only] The first errors or warnings encountered during 2887 // the running of the job. The final message includes the number of 2888 // errors that caused the process to stop. Errors here do not 2889 // necessarily mean that the job has completed or was unsuccessful. 2890 Errors []*ErrorProto `json:"errors,omitempty"` 2891 2892 // Etag: A hash of this response. 2893 Etag string `json:"etag,omitempty"` 2894 2895 // JobComplete: Whether the query has completed or not. If rows or 2896 // totalRows are present, this will always be true. If this is false, 2897 // totalRows will not be available. 2898 JobComplete bool `json:"jobComplete,omitempty"` 2899 2900 // JobReference: Reference to the BigQuery Job that was created to run 2901 // the query. This field will be present even if the original request 2902 // timed out, in which case GetQueryResults can be used to read the 2903 // results once the query has completed. Since this API only returns the 2904 // first page of results, subsequent pages can be fetched via the same 2905 // mechanism (GetQueryResults). 2906 JobReference *JobReference `json:"jobReference,omitempty"` 2907 2908 // Kind: The resource type of the response. 2909 Kind string `json:"kind,omitempty"` 2910 2911 // NumDmlAffectedRows: [Output-only] The number of rows affected by a 2912 // DML statement. Present only for DML statements INSERT, UPDATE or 2913 // DELETE. 2914 NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"` 2915 2916 // PageToken: A token used for paging results. 2917 PageToken string `json:"pageToken,omitempty"` 2918 2919 // Rows: An object with as many results as can be contained within the 2920 // maximum permitted reply size. To get any additional rows, you can 2921 // call GetQueryResults and specify the jobReference returned above. 2922 // Present only when the query completes successfully. 2923 Rows []*TableRow `json:"rows,omitempty"` 2924 2925 // Schema: The schema of the results. Present only when the query 2926 // completes successfully. 2927 Schema *TableSchema `json:"schema,omitempty"` 2928 2929 // TotalBytesProcessed: The total number of bytes processed for this 2930 // query. 2931 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 2932 2933 // TotalRows: The total number of rows in the complete query result set, 2934 // which can be more than the number of rows in this single page of 2935 // results. Present only when the query completes successfully. 2936 TotalRows uint64 `json:"totalRows,omitempty,string"` 2937 2938 // ServerResponse contains the HTTP response code and headers from the 2939 // server. 2940 googleapi.ServerResponse `json:"-"` 2941 2942 // ForceSendFields is a list of field names (e.g. "CacheHit") to 2943 // unconditionally include in API requests. By default, fields with 2944 // empty values are omitted from API requests. However, any non-pointer, 2945 // non-interface field appearing in ForceSendFields will be sent to the 2946 // server regardless of whether the field is empty or not. This may be 2947 // used to include empty fields in Patch requests. 2948 ForceSendFields []string `json:"-"` 2949 2950 // NullFields is a list of field names (e.g. "CacheHit") to include in 2951 // API requests with the JSON null value. By default, fields with empty 2952 // values are omitted from API requests. However, any field with an 2953 // empty value appearing in NullFields will be sent to the server as 2954 // null. It is an error if a field in this list has a non-empty value. 2955 // This may be used to include null fields in Patch requests. 2956 NullFields []string `json:"-"` 2957} 2958 2959func (s *GetQueryResultsResponse) MarshalJSON() ([]byte, error) { 2960 type NoMethod GetQueryResultsResponse 2961 raw := NoMethod(*s) 2962 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2963} 2964 2965type GetServiceAccountResponse struct { 2966 // Email: The service account email address. 2967 Email string `json:"email,omitempty"` 2968 2969 // Kind: The resource type of the response. 2970 Kind string `json:"kind,omitempty"` 2971 2972 // ServerResponse contains the HTTP response code and headers from the 2973 // server. 2974 googleapi.ServerResponse `json:"-"` 2975 2976 // ForceSendFields is a list of field names (e.g. "Email") to 2977 // unconditionally include in API requests. By default, fields with 2978 // empty values are omitted from API requests. However, any non-pointer, 2979 // non-interface field appearing in ForceSendFields will be sent to the 2980 // server regardless of whether the field is empty or not. This may be 2981 // used to include empty fields in Patch requests. 2982 ForceSendFields []string `json:"-"` 2983 2984 // NullFields is a list of field names (e.g. "Email") to include in API 2985 // requests with the JSON null value. By default, fields with empty 2986 // values are omitted from API requests. However, any field with an 2987 // empty value appearing in NullFields will be sent to the server as 2988 // null. It is an error if a field in this list has a non-empty value. 2989 // This may be used to include null fields in Patch requests. 2990 NullFields []string `json:"-"` 2991} 2992 2993func (s *GetServiceAccountResponse) MarshalJSON() ([]byte, error) { 2994 type NoMethod GetServiceAccountResponse 2995 raw := NoMethod(*s) 2996 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2997} 2998 2999// GlobalExplanation: Global explanations containing the top most 3000// important features after training. 3001type GlobalExplanation struct { 3002 // ClassLabel: Class label for this set of global explanations. Will be 3003 // empty/null for binary logistic and linear regression models. Sorted 3004 // alphabetically in descending order. 3005 ClassLabel string `json:"classLabel,omitempty"` 3006 3007 // Explanations: A list of the top global explanations. Sorted by 3008 // absolute value of attribution in descending order. 3009 Explanations []*Explanation `json:"explanations,omitempty"` 3010 3011 // ForceSendFields is a list of field names (e.g. "ClassLabel") to 3012 // unconditionally include in API requests. By default, fields with 3013 // empty values are omitted from API requests. However, any non-pointer, 3014 // non-interface field appearing in ForceSendFields will be sent to the 3015 // server regardless of whether the field is empty or not. This may be 3016 // used to include empty fields in Patch requests. 3017 ForceSendFields []string `json:"-"` 3018 3019 // NullFields is a list of field names (e.g. "ClassLabel") to include in 3020 // API requests with the JSON null value. By default, fields with empty 3021 // values are omitted from API requests. However, any field with an 3022 // empty value appearing in NullFields will be sent to the server as 3023 // null. It is an error if a field in this list has a non-empty value. 3024 // This may be used to include null fields in Patch requests. 3025 NullFields []string `json:"-"` 3026} 3027 3028func (s *GlobalExplanation) MarshalJSON() ([]byte, error) { 3029 type NoMethod GlobalExplanation 3030 raw := NoMethod(*s) 3031 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3032} 3033 3034type GoogleSheetsOptions struct { 3035 // Range: [Optional] Range of a sheet to query from. Only used when 3036 // non-empty. Typical format: 3037 // sheet_name!top_left_cell_id:bottom_right_cell_id For example: 3038 // sheet1!A1:B20 3039 Range string `json:"range,omitempty"` 3040 3041 // SkipLeadingRows: [Optional] The number of rows at the top of a sheet 3042 // that BigQuery will skip when reading the data. The default value is 3043 // 0. This property is useful if you have header rows that should be 3044 // skipped. When autodetect is on, behavior is the following: * 3045 // skipLeadingRows unspecified - Autodetect tries to detect headers in 3046 // the first row. If they are not detected, the row is read as data. 3047 // Otherwise data is read starting from the second row. * 3048 // skipLeadingRows is 0 - Instructs autodetect that there are no headers 3049 // and data should be read starting from the first row. * 3050 // skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to 3051 // detect headers in row N. If headers are not detected, row N is just 3052 // skipped. Otherwise row N is used to extract column names for the 3053 // detected schema. 3054 SkipLeadingRows int64 `json:"skipLeadingRows,omitempty,string"` 3055 3056 // ForceSendFields is a list of field names (e.g. "Range") to 3057 // unconditionally include in API requests. By default, fields with 3058 // empty values are omitted from API requests. However, any non-pointer, 3059 // non-interface field appearing in ForceSendFields will be sent to the 3060 // server regardless of whether the field is empty or not. This may be 3061 // used to include empty fields in Patch requests. 3062 ForceSendFields []string `json:"-"` 3063 3064 // NullFields is a list of field names (e.g. "Range") to include in API 3065 // requests with the JSON null value. By default, fields with empty 3066 // values are omitted from API requests. However, any field with an 3067 // empty value appearing in NullFields will be sent to the server as 3068 // null. It is an error if a field in this list has a non-empty value. 3069 // This may be used to include null fields in Patch requests. 3070 NullFields []string `json:"-"` 3071} 3072 3073func (s *GoogleSheetsOptions) MarshalJSON() ([]byte, error) { 3074 type NoMethod GoogleSheetsOptions 3075 raw := NoMethod(*s) 3076 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3077} 3078 3079type HivePartitioningOptions struct { 3080 // Mode: [Optional] When set, what mode of hive partitioning to use when 3081 // reading data. The following modes are supported. (1) AUTO: 3082 // automatically infer partition key name(s) and type(s). (2) STRINGS: 3083 // automatically infer partition key name(s). All types are interpreted 3084 // as strings. (3) CUSTOM: partition key schema is encoded in the source 3085 // URI prefix. Not all storage formats support hive partitioning. 3086 // Requesting hive partitioning on an unsupported format will lead to an 3087 // error. Currently supported types include: AVRO, CSV, JSON, ORC and 3088 // Parquet. 3089 Mode string `json:"mode,omitempty"` 3090 3091 // RequirePartitionFilter: [Optional] If set to true, queries over this 3092 // table require a partition filter that can be used for partition 3093 // elimination to be specified. Note that this field should only be true 3094 // when creating a permanent external table or querying a temporary 3095 // external table. Hive-partitioned loads with requirePartitionFilter 3096 // explicitly set to true will fail. 3097 RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"` 3098 3099 // SourceUriPrefix: [Optional] When hive partition detection is 3100 // requested, a common prefix for all source uris should be supplied. 3101 // The prefix must end immediately before the partition key encoding 3102 // begins. For example, consider files following this data layout. 3103 // gs://bucket/path_to_table/dt=2019-01-01/country=BR/id=7/file.avro 3104 // gs://bucket/path_to_table/dt=2018-12-31/country=CA/id=3/file.avro 3105 // When hive partitioning is requested with either AUTO or STRINGS 3106 // detection, the common prefix can be either of 3107 // gs://bucket/path_to_table or gs://bucket/path_to_table/ (trailing 3108 // slash does not matter). 3109 SourceUriPrefix string `json:"sourceUriPrefix,omitempty"` 3110 3111 // ForceSendFields is a list of field names (e.g. "Mode") to 3112 // unconditionally include in API requests. By default, fields with 3113 // empty values are omitted from API requests. However, any non-pointer, 3114 // non-interface field appearing in ForceSendFields will be sent to the 3115 // server regardless of whether the field is empty or not. This may be 3116 // used to include empty fields in Patch requests. 3117 ForceSendFields []string `json:"-"` 3118 3119 // NullFields is a list of field names (e.g. "Mode") to include in API 3120 // requests with the JSON null value. By default, fields with empty 3121 // values are omitted from API requests. However, any field with an 3122 // empty value appearing in NullFields will be sent to the server as 3123 // null. It is an error if a field in this list has a non-empty value. 3124 // This may be used to include null fields in Patch requests. 3125 NullFields []string `json:"-"` 3126} 3127 3128func (s *HivePartitioningOptions) MarshalJSON() ([]byte, error) { 3129 type NoMethod HivePartitioningOptions 3130 raw := NoMethod(*s) 3131 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3132} 3133 3134// IterationResult: Information about a single iteration of the training 3135// run. 3136type IterationResult struct { 3137 ArimaResult *ArimaResult `json:"arimaResult,omitempty"` 3138 3139 // ClusterInfos: Information about top clusters for clustering models. 3140 ClusterInfos []*ClusterInfo `json:"clusterInfos,omitempty"` 3141 3142 // DurationMs: Time taken to run the iteration in milliseconds. 3143 DurationMs int64 `json:"durationMs,omitempty,string"` 3144 3145 // EvalLoss: Loss computed on the eval data at the end of iteration. 3146 EvalLoss float64 `json:"evalLoss,omitempty"` 3147 3148 // Index: Index of the iteration, 0 based. 3149 Index int64 `json:"index,omitempty"` 3150 3151 // LearnRate: Learn rate used for this iteration. 3152 LearnRate float64 `json:"learnRate,omitempty"` 3153 3154 // TrainingLoss: Loss computed on the training data at the end of 3155 // iteration. 3156 TrainingLoss float64 `json:"trainingLoss,omitempty"` 3157 3158 // ForceSendFields is a list of field names (e.g. "ArimaResult") to 3159 // unconditionally include in API requests. By default, fields with 3160 // empty values are omitted from API requests. However, any non-pointer, 3161 // non-interface field appearing in ForceSendFields will be sent to the 3162 // server regardless of whether the field is empty or not. This may be 3163 // used to include empty fields in Patch requests. 3164 ForceSendFields []string `json:"-"` 3165 3166 // NullFields is a list of field names (e.g. "ArimaResult") to include 3167 // in API requests with the JSON null value. By default, fields with 3168 // empty values are omitted from API requests. However, any field with 3169 // an empty value appearing in NullFields will be sent to the server as 3170 // null. It is an error if a field in this list has a non-empty value. 3171 // This may be used to include null fields in Patch requests. 3172 NullFields []string `json:"-"` 3173} 3174 3175func (s *IterationResult) MarshalJSON() ([]byte, error) { 3176 type NoMethod IterationResult 3177 raw := NoMethod(*s) 3178 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3179} 3180 3181func (s *IterationResult) UnmarshalJSON(data []byte) error { 3182 type NoMethod IterationResult 3183 var s1 struct { 3184 EvalLoss gensupport.JSONFloat64 `json:"evalLoss"` 3185 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 3186 TrainingLoss gensupport.JSONFloat64 `json:"trainingLoss"` 3187 *NoMethod 3188 } 3189 s1.NoMethod = (*NoMethod)(s) 3190 if err := json.Unmarshal(data, &s1); err != nil { 3191 return err 3192 } 3193 s.EvalLoss = float64(s1.EvalLoss) 3194 s.LearnRate = float64(s1.LearnRate) 3195 s.TrainingLoss = float64(s1.TrainingLoss) 3196 return nil 3197} 3198 3199type Job struct { 3200 // Configuration: [Required] Describes the job configuration. 3201 Configuration *JobConfiguration `json:"configuration,omitempty"` 3202 3203 // Etag: [Output-only] A hash of this resource. 3204 Etag string `json:"etag,omitempty"` 3205 3206 // Id: [Output-only] Opaque ID field of the job 3207 Id string `json:"id,omitempty"` 3208 3209 // JobReference: [Optional] Reference describing the unique-per-user 3210 // name of the job. 3211 JobReference *JobReference `json:"jobReference,omitempty"` 3212 3213 // Kind: [Output-only] The type of the resource. 3214 Kind string `json:"kind,omitempty"` 3215 3216 // SelfLink: [Output-only] A URL that can be used to access this 3217 // resource again. 3218 SelfLink string `json:"selfLink,omitempty"` 3219 3220 // Statistics: [Output-only] Information about the job, including 3221 // starting time and ending time of the job. 3222 Statistics *JobStatistics `json:"statistics,omitempty"` 3223 3224 // Status: [Output-only] The status of this job. Examine this value when 3225 // polling an asynchronous job to see if the job is complete. 3226 Status *JobStatus `json:"status,omitempty"` 3227 3228 // UserEmail: [Output-only] Email address of the user who ran the job. 3229 UserEmail string `json:"user_email,omitempty"` 3230 3231 // ServerResponse contains the HTTP response code and headers from the 3232 // server. 3233 googleapi.ServerResponse `json:"-"` 3234 3235 // ForceSendFields is a list of field names (e.g. "Configuration") to 3236 // unconditionally include in API requests. By default, fields with 3237 // empty values are omitted from API requests. However, any non-pointer, 3238 // non-interface field appearing in ForceSendFields will be sent to the 3239 // server regardless of whether the field is empty or not. This may be 3240 // used to include empty fields in Patch requests. 3241 ForceSendFields []string `json:"-"` 3242 3243 // NullFields is a list of field names (e.g. "Configuration") to include 3244 // in API requests with the JSON null value. By default, fields with 3245 // empty values are omitted from API requests. However, any field with 3246 // an empty value appearing in NullFields will be sent to the server as 3247 // null. It is an error if a field in this list has a non-empty value. 3248 // This may be used to include null fields in Patch requests. 3249 NullFields []string `json:"-"` 3250} 3251 3252func (s *Job) MarshalJSON() ([]byte, error) { 3253 type NoMethod Job 3254 raw := NoMethod(*s) 3255 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3256} 3257 3258type JobCancelResponse struct { 3259 // Job: The final state of the job. 3260 Job *Job `json:"job,omitempty"` 3261 3262 // Kind: The resource type of the response. 3263 Kind string `json:"kind,omitempty"` 3264 3265 // ServerResponse contains the HTTP response code and headers from the 3266 // server. 3267 googleapi.ServerResponse `json:"-"` 3268 3269 // ForceSendFields is a list of field names (e.g. "Job") to 3270 // unconditionally include in API requests. By default, fields with 3271 // empty values are omitted from API requests. However, any non-pointer, 3272 // non-interface field appearing in ForceSendFields will be sent to the 3273 // server regardless of whether the field is empty or not. This may be 3274 // used to include empty fields in Patch requests. 3275 ForceSendFields []string `json:"-"` 3276 3277 // NullFields is a list of field names (e.g. "Job") to include in API 3278 // requests with the JSON null value. By default, fields with empty 3279 // values are omitted from API requests. However, any field with an 3280 // empty value appearing in NullFields will be sent to the server as 3281 // null. It is an error if a field in this list has a non-empty value. 3282 // This may be used to include null fields in Patch requests. 3283 NullFields []string `json:"-"` 3284} 3285 3286func (s *JobCancelResponse) MarshalJSON() ([]byte, error) { 3287 type NoMethod JobCancelResponse 3288 raw := NoMethod(*s) 3289 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3290} 3291 3292type JobConfiguration struct { 3293 // Copy: [Pick one] Copies a table. 3294 Copy *JobConfigurationTableCopy `json:"copy,omitempty"` 3295 3296 // DryRun: [Optional] If set, don't actually run this job. A valid query 3297 // will return a mostly empty response with some processing statistics, 3298 // while an invalid query will return the same error it would if it 3299 // wasn't a dry run. Behavior of non-query jobs is undefined. 3300 DryRun bool `json:"dryRun,omitempty"` 3301 3302 // Extract: [Pick one] Configures an extract job. 3303 Extract *JobConfigurationExtract `json:"extract,omitempty"` 3304 3305 // JobTimeoutMs: [Optional] Job timeout in milliseconds. If this time 3306 // limit is exceeded, BigQuery may attempt to terminate the job. 3307 JobTimeoutMs int64 `json:"jobTimeoutMs,omitempty,string"` 3308 3309 // JobType: [Output-only] The type of the job. Can be QUERY, LOAD, 3310 // EXTRACT, COPY or UNKNOWN. 3311 JobType string `json:"jobType,omitempty"` 3312 3313 // Labels: The labels associated with this job. You can use these to 3314 // organize and group your jobs. Label keys and values can be no longer 3315 // than 63 characters, can only contain lowercase letters, numeric 3316 // characters, underscores and dashes. International characters are 3317 // allowed. Label values are optional. Label keys must start with a 3318 // letter and each label in the list must have a different key. 3319 Labels map[string]string `json:"labels,omitempty"` 3320 3321 // Load: [Pick one] Configures a load job. 3322 Load *JobConfigurationLoad `json:"load,omitempty"` 3323 3324 // Query: [Pick one] Configures a query job. 3325 Query *JobConfigurationQuery `json:"query,omitempty"` 3326 3327 // ForceSendFields is a list of field names (e.g. "Copy") to 3328 // unconditionally include in API requests. By default, fields with 3329 // empty values are omitted from API requests. However, any non-pointer, 3330 // non-interface field appearing in ForceSendFields will be sent to the 3331 // server regardless of whether the field is empty or not. This may be 3332 // used to include empty fields in Patch requests. 3333 ForceSendFields []string `json:"-"` 3334 3335 // NullFields is a list of field names (e.g. "Copy") to include in API 3336 // requests with the JSON null value. By default, fields with empty 3337 // values are omitted from API requests. However, any field with an 3338 // empty value appearing in NullFields will be sent to the server as 3339 // null. It is an error if a field in this list has a non-empty value. 3340 // This may be used to include null fields in Patch requests. 3341 NullFields []string `json:"-"` 3342} 3343 3344func (s *JobConfiguration) MarshalJSON() ([]byte, error) { 3345 type NoMethod JobConfiguration 3346 raw := NoMethod(*s) 3347 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3348} 3349 3350type JobConfigurationExtract struct { 3351 // Compression: [Optional] The compression type to use for exported 3352 // files. Possible values include GZIP, DEFLATE, SNAPPY, and NONE. The 3353 // default value is NONE. DEFLATE and SNAPPY are only supported for 3354 // Avro. Not applicable when extracting models. 3355 Compression string `json:"compression,omitempty"` 3356 3357 // DestinationFormat: [Optional] The exported file format. Possible 3358 // values include CSV, NEWLINE_DELIMITED_JSON, PARQUET or AVRO for 3359 // tables and ML_TF_SAVED_MODEL or ML_XGBOOST_BOOSTER for models. The 3360 // default value for tables is CSV. Tables with nested or repeated 3361 // fields cannot be exported as CSV. The default value for models is 3362 // ML_TF_SAVED_MODEL. 3363 DestinationFormat string `json:"destinationFormat,omitempty"` 3364 3365 // DestinationUri: [Pick one] DEPRECATED: Use destinationUris instead, 3366 // passing only one URI as necessary. The fully-qualified Google Cloud 3367 // Storage URI where the extracted table should be written. 3368 DestinationUri string `json:"destinationUri,omitempty"` 3369 3370 // DestinationUris: [Pick one] A list of fully-qualified Google Cloud 3371 // Storage URIs where the extracted table should be written. 3372 DestinationUris []string `json:"destinationUris,omitempty"` 3373 3374 // FieldDelimiter: [Optional] Delimiter to use between fields in the 3375 // exported data. Default is ','. Not applicable when extracting models. 3376 FieldDelimiter string `json:"fieldDelimiter,omitempty"` 3377 3378 // PrintHeader: [Optional] Whether to print out a header row in the 3379 // results. Default is true. Not applicable when extracting models. 3380 // 3381 // Default: true 3382 PrintHeader *bool `json:"printHeader,omitempty"` 3383 3384 // SourceModel: A reference to the model being exported. 3385 SourceModel *ModelReference `json:"sourceModel,omitempty"` 3386 3387 // SourceTable: A reference to the table being exported. 3388 SourceTable *TableReference `json:"sourceTable,omitempty"` 3389 3390 // UseAvroLogicalTypes: [Optional] If destinationFormat is set to 3391 // "AVRO", this flag indicates whether to enable extracting applicable 3392 // column types (such as TIMESTAMP) to their corresponding AVRO logical 3393 // types (timestamp-micros), instead of only using their raw types 3394 // (avro-long). Not applicable when extracting models. 3395 UseAvroLogicalTypes bool `json:"useAvroLogicalTypes,omitempty"` 3396 3397 // ForceSendFields is a list of field names (e.g. "Compression") to 3398 // unconditionally include in API requests. By default, fields with 3399 // empty values are omitted from API requests. However, any non-pointer, 3400 // non-interface field appearing in ForceSendFields will be sent to the 3401 // server regardless of whether the field is empty or not. This may be 3402 // used to include empty fields in Patch requests. 3403 ForceSendFields []string `json:"-"` 3404 3405 // NullFields is a list of field names (e.g. "Compression") to include 3406 // in API requests with the JSON null value. By default, fields with 3407 // empty values are omitted from API requests. However, any field with 3408 // an empty value appearing in NullFields will be sent to the server as 3409 // null. It is an error if a field in this list has a non-empty value. 3410 // This may be used to include null fields in Patch requests. 3411 NullFields []string `json:"-"` 3412} 3413 3414func (s *JobConfigurationExtract) MarshalJSON() ([]byte, error) { 3415 type NoMethod JobConfigurationExtract 3416 raw := NoMethod(*s) 3417 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3418} 3419 3420type JobConfigurationLoad struct { 3421 // AllowJaggedRows: [Optional] Accept rows that are missing trailing 3422 // optional columns. The missing values are treated as nulls. If false, 3423 // records with missing trailing columns are treated as bad records, and 3424 // if there are too many bad records, an invalid error is returned in 3425 // the job result. The default value is false. Only applicable to CSV, 3426 // ignored for other formats. 3427 AllowJaggedRows bool `json:"allowJaggedRows,omitempty"` 3428 3429 // AllowQuotedNewlines: Indicates if BigQuery should allow quoted data 3430 // sections that contain newline characters in a CSV file. The default 3431 // value is false. 3432 AllowQuotedNewlines bool `json:"allowQuotedNewlines,omitempty"` 3433 3434 // Autodetect: [Optional] Indicates if we should automatically infer the 3435 // options and schema for CSV and JSON sources. 3436 Autodetect bool `json:"autodetect,omitempty"` 3437 3438 // Clustering: [Beta] Clustering specification for the destination 3439 // table. Must be specified with time-based partitioning, data in the 3440 // table will be first partitioned and subsequently clustered. 3441 Clustering *Clustering `json:"clustering,omitempty"` 3442 3443 // CreateDisposition: [Optional] Specifies whether the job is allowed to 3444 // create new tables. The following values are supported: 3445 // CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the 3446 // table. CREATE_NEVER: The table must already exist. If it does not, a 3447 // 'notFound' error is returned in the job result. The default value is 3448 // CREATE_IF_NEEDED. Creation, truncation and append actions occur as 3449 // one atomic update upon job completion. 3450 CreateDisposition string `json:"createDisposition,omitempty"` 3451 3452 // DecimalTargetTypes: [Trusted Tester] Defines the list of possible SQL 3453 // data types to which the source decimal values are converted. This 3454 // list and the precision and the scale parameters of the decimal field 3455 // determine the target type. In the order of NUMERIC, BIGNUMERIC, and 3456 // STRING, a type is picked if it is in the specified list and if it 3457 // supports the precision and the scale. STRING supports all precision 3458 // and scale values. If none of the listed types supports the precision 3459 // and the scale, the type supporting the widest range in the specified 3460 // list is picked, and if a value exceeds the supported range when 3461 // reading the data, an error will be thrown. For example: suppose 3462 // decimal_target_type = ["NUMERIC", "BIGNUMERIC"]. Then if 3463 // (precision,scale) is: * (38,9) -> NUMERIC; * (39,9) -> BIGNUMERIC 3464 // (NUMERIC cannot hold 30 integer digits); * (38,10) -> BIGNUMERIC 3465 // (NUMERIC cannot hold 10 fractional digits); * (76,38) -> BIGNUMERIC; 3466 // * (77,38) -> BIGNUMERIC (error if value exeeds supported range). For 3467 // duplicated types in this field, only one will be considered and the 3468 // rest will be ignored. The order of the types in this field is 3469 // ignored. For example, ["BIGNUMERIC", "NUMERIC"] is the same as 3470 // ["NUMERIC", "BIGNUMERIC"] and NUMERIC always takes precedence over 3471 // BIGNUMERIC. 3472 DecimalTargetTypes []string `json:"decimalTargetTypes,omitempty"` 3473 3474 // DestinationEncryptionConfiguration: Custom encryption configuration 3475 // (e.g., Cloud KMS keys). 3476 DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` 3477 3478 // DestinationTable: [Required] The destination table to load the data 3479 // into. 3480 DestinationTable *TableReference `json:"destinationTable,omitempty"` 3481 3482 // DestinationTableProperties: [Beta] [Optional] Properties with which 3483 // to create the destination table if it is new. 3484 DestinationTableProperties *DestinationTableProperties `json:"destinationTableProperties,omitempty"` 3485 3486 // Encoding: [Optional] The character encoding of the data. The 3487 // supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. 3488 // BigQuery decodes the data after the raw, binary data has been split 3489 // using the values of the quote and fieldDelimiter properties. 3490 Encoding string `json:"encoding,omitempty"` 3491 3492 // FieldDelimiter: [Optional] The separator for fields in a CSV file. 3493 // The separator can be any ISO-8859-1 single-byte character. To use a 3494 // character in the range 128-255, you must encode the character as 3495 // UTF8. BigQuery converts the string to ISO-8859-1 encoding, and then 3496 // uses the first byte of the encoded string to split the data in its 3497 // raw, binary state. BigQuery also supports the escape sequence "\t" to 3498 // specify a tab separator. The default value is a comma (','). 3499 FieldDelimiter string `json:"fieldDelimiter,omitempty"` 3500 3501 // HivePartitioningOptions: [Optional, Trusted Tester] Options to 3502 // configure hive partitioning support. 3503 HivePartitioningOptions *HivePartitioningOptions `json:"hivePartitioningOptions,omitempty"` 3504 3505 // IgnoreUnknownValues: [Optional] Indicates if BigQuery should allow 3506 // extra values that are not represented in the table schema. If true, 3507 // the extra values are ignored. If false, records with extra columns 3508 // are treated as bad records, and if there are too many bad records, an 3509 // invalid error is returned in the job result. The default value is 3510 // false. The sourceFormat property determines what BigQuery treats as 3511 // an extra value: CSV: Trailing columns JSON: Named values that don't 3512 // match any column names 3513 IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"` 3514 3515 // MaxBadRecords: [Optional] The maximum number of bad records that 3516 // BigQuery can ignore when running the job. If the number of bad 3517 // records exceeds this value, an invalid error is returned in the job 3518 // result. This is only valid for CSV and JSON. The default value is 0, 3519 // which requires that all records are valid. 3520 MaxBadRecords int64 `json:"maxBadRecords,omitempty"` 3521 3522 // NullMarker: [Optional] Specifies a string that represents a null 3523 // value in a CSV file. For example, if you specify "\N", BigQuery 3524 // interprets "\N" as a null value when loading a CSV file. The default 3525 // value is the empty string. If you set this property to a custom 3526 // value, BigQuery throws an error if an empty string is present for all 3527 // data types except for STRING and BYTE. For STRING and BYTE columns, 3528 // BigQuery interprets the empty string as an empty value. 3529 NullMarker string `json:"nullMarker,omitempty"` 3530 3531 // ProjectionFields: If sourceFormat is set to "DATASTORE_BACKUP", 3532 // indicates which entity properties to load into BigQuery from a Cloud 3533 // Datastore backup. Property names are case sensitive and must be 3534 // top-level properties. If no properties are specified, BigQuery loads 3535 // all properties. If any named property isn't found in the Cloud 3536 // Datastore backup, an invalid error is returned in the job result. 3537 ProjectionFields []string `json:"projectionFields,omitempty"` 3538 3539 // Quote: [Optional] The value that is used to quote data sections in a 3540 // CSV file. BigQuery converts the string to ISO-8859-1 encoding, and 3541 // then uses the first byte of the encoded string to split the data in 3542 // its raw, binary state. The default value is a double-quote ('"'). If 3543 // your data does not contain quoted sections, set the property value to 3544 // an empty string. If your data contains quoted newline characters, you 3545 // must also set the allowQuotedNewlines property to true. 3546 // 3547 // Default: " 3548 Quote *string `json:"quote,omitempty"` 3549 3550 // RangePartitioning: [TrustedTester] Range partitioning specification 3551 // for this table. Only one of timePartitioning and rangePartitioning 3552 // should be specified. 3553 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 3554 3555 // Schema: [Optional] The schema for the destination table. The schema 3556 // can be omitted if the destination table already exists, or if you're 3557 // loading data from Google Cloud Datastore. 3558 Schema *TableSchema `json:"schema,omitempty"` 3559 3560 // SchemaInline: [Deprecated] The inline schema. For CSV schemas, 3561 // specify as "Field1:Type1[,Field2:Type2]*". For example, "foo:STRING, 3562 // bar:INTEGER, baz:FLOAT". 3563 SchemaInline string `json:"schemaInline,omitempty"` 3564 3565 // SchemaInlineFormat: [Deprecated] The format of the schemaInline 3566 // property. 3567 SchemaInlineFormat string `json:"schemaInlineFormat,omitempty"` 3568 3569 // SchemaUpdateOptions: Allows the schema of the destination table to be 3570 // updated as a side effect of the load job if a schema is autodetected 3571 // or supplied in the job configuration. Schema update options are 3572 // supported in two cases: when writeDisposition is WRITE_APPEND; when 3573 // writeDisposition is WRITE_TRUNCATE and the destination table is a 3574 // partition of a table, specified by partition decorators. For normal 3575 // tables, WRITE_TRUNCATE will always overwrite the schema. One or more 3576 // of the following values are specified: ALLOW_FIELD_ADDITION: allow 3577 // adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow 3578 // relaxing a required field in the original schema to nullable. 3579 SchemaUpdateOptions []string `json:"schemaUpdateOptions,omitempty"` 3580 3581 // SkipLeadingRows: [Optional] The number of rows at the top of a CSV 3582 // file that BigQuery will skip when loading the data. The default value 3583 // is 0. This property is useful if you have header rows in the file 3584 // that should be skipped. 3585 SkipLeadingRows int64 `json:"skipLeadingRows,omitempty"` 3586 3587 // SourceFormat: [Optional] The format of the data files. For CSV files, 3588 // specify "CSV". For datastore backups, specify "DATASTORE_BACKUP". For 3589 // newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro, 3590 // specify "AVRO". For parquet, specify "PARQUET". For orc, specify 3591 // "ORC". The default value is CSV. 3592 SourceFormat string `json:"sourceFormat,omitempty"` 3593 3594 // SourceUris: [Required] The fully-qualified URIs that point to your 3595 // data in Google Cloud. For Google Cloud Storage URIs: Each URI can 3596 // contain one '*' wildcard character and it must come after the 3597 // 'bucket' name. Size limits related to load jobs apply to external 3598 // data sources. For Google Cloud Bigtable URIs: Exactly one URI can be 3599 // specified and it has be a fully specified and valid HTTPS URL for a 3600 // Google Cloud Bigtable table. For Google Cloud Datastore backups: 3601 // Exactly one URI can be specified. Also, the '*' wildcard character is 3602 // not allowed. 3603 SourceUris []string `json:"sourceUris,omitempty"` 3604 3605 // TimePartitioning: Time-based partitioning specification for the 3606 // destination table. Only one of timePartitioning and rangePartitioning 3607 // should be specified. 3608 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 3609 3610 // UseAvroLogicalTypes: [Optional] If sourceFormat is set to "AVRO", 3611 // indicates whether to enable interpreting logical types into their 3612 // corresponding types (ie. TIMESTAMP), instead of only using their raw 3613 // types (ie. INTEGER). 3614 UseAvroLogicalTypes bool `json:"useAvroLogicalTypes,omitempty"` 3615 3616 // WriteDisposition: [Optional] Specifies the action that occurs if the 3617 // destination table already exists. The following values are supported: 3618 // WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the 3619 // table data. WRITE_APPEND: If the table already exists, BigQuery 3620 // appends the data to the table. WRITE_EMPTY: If the table already 3621 // exists and contains data, a 'duplicate' error is returned in the job 3622 // result. The default value is WRITE_APPEND. Each action is atomic and 3623 // only occurs if BigQuery is able to complete the job successfully. 3624 // Creation, truncation and append actions occur as one atomic update 3625 // upon job completion. 3626 WriteDisposition string `json:"writeDisposition,omitempty"` 3627 3628 // ForceSendFields is a list of field names (e.g. "AllowJaggedRows") to 3629 // unconditionally include in API requests. By default, fields with 3630 // empty values are omitted from API requests. However, any non-pointer, 3631 // non-interface field appearing in ForceSendFields will be sent to the 3632 // server regardless of whether the field is empty or not. This may be 3633 // used to include empty fields in Patch requests. 3634 ForceSendFields []string `json:"-"` 3635 3636 // NullFields is a list of field names (e.g. "AllowJaggedRows") to 3637 // include in API requests with the JSON null value. By default, fields 3638 // with empty values are omitted from API requests. However, any field 3639 // with an empty value appearing in NullFields will be sent to the 3640 // server as null. It is an error if a field in this list has a 3641 // non-empty value. This may be used to include null fields in Patch 3642 // requests. 3643 NullFields []string `json:"-"` 3644} 3645 3646func (s *JobConfigurationLoad) MarshalJSON() ([]byte, error) { 3647 type NoMethod JobConfigurationLoad 3648 raw := NoMethod(*s) 3649 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3650} 3651 3652type JobConfigurationQuery struct { 3653 // AllowLargeResults: [Optional] If true and query uses legacy SQL 3654 // dialect, allows the query to produce arbitrarily large result tables 3655 // at a slight cost in performance. Requires destinationTable to be set. 3656 // For standard SQL queries, this flag is ignored and large results are 3657 // always allowed. However, you must still set destinationTable when 3658 // result size exceeds the allowed maximum response size. 3659 AllowLargeResults bool `json:"allowLargeResults,omitempty"` 3660 3661 // Clustering: [Beta] Clustering specification for the destination 3662 // table. Must be specified with time-based partitioning, data in the 3663 // table will be first partitioned and subsequently clustered. 3664 Clustering *Clustering `json:"clustering,omitempty"` 3665 3666 // ConnectionProperties: Connection properties. 3667 ConnectionProperties []*ConnectionProperty `json:"connectionProperties,omitempty"` 3668 3669 // CreateDisposition: [Optional] Specifies whether the job is allowed to 3670 // create new tables. The following values are supported: 3671 // CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the 3672 // table. CREATE_NEVER: The table must already exist. If it does not, a 3673 // 'notFound' error is returned in the job result. The default value is 3674 // CREATE_IF_NEEDED. Creation, truncation and append actions occur as 3675 // one atomic update upon job completion. 3676 CreateDisposition string `json:"createDisposition,omitempty"` 3677 3678 // DefaultDataset: [Optional] Specifies the default dataset to use for 3679 // unqualified table names in the query. Note that this does not alter 3680 // behavior of unqualified dataset names. 3681 DefaultDataset *DatasetReference `json:"defaultDataset,omitempty"` 3682 3683 // DestinationEncryptionConfiguration: Custom encryption configuration 3684 // (e.g., Cloud KMS keys). 3685 DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` 3686 3687 // DestinationTable: [Optional] Describes the table where the query 3688 // results should be stored. If not present, a new table will be created 3689 // to store the results. This property must be set for large results 3690 // that exceed the maximum response size. 3691 DestinationTable *TableReference `json:"destinationTable,omitempty"` 3692 3693 // FlattenResults: [Optional] If true and query uses legacy SQL dialect, 3694 // flattens all nested and repeated fields in the query results. 3695 // allowLargeResults must be true if this is set to false. For standard 3696 // SQL queries, this flag is ignored and results are never flattened. 3697 // 3698 // Default: true 3699 FlattenResults *bool `json:"flattenResults,omitempty"` 3700 3701 // MaximumBillingTier: [Optional] Limits the billing tier for this job. 3702 // Queries that have resource usage beyond this tier will fail (without 3703 // incurring a charge). If unspecified, this will be set to your project 3704 // default. 3705 // 3706 // Default: 1 3707 MaximumBillingTier *int64 `json:"maximumBillingTier,omitempty"` 3708 3709 // MaximumBytesBilled: [Optional] Limits the bytes billed for this job. 3710 // Queries that will have bytes billed beyond this limit will fail 3711 // (without incurring a charge). If unspecified, this will be set to 3712 // your project default. 3713 MaximumBytesBilled int64 `json:"maximumBytesBilled,omitempty,string"` 3714 3715 // ParameterMode: Standard SQL only. Set to POSITIONAL to use positional 3716 // (?) query parameters or to NAMED to use named (@myparam) query 3717 // parameters in this query. 3718 ParameterMode string `json:"parameterMode,omitempty"` 3719 3720 // PreserveNulls: [Deprecated] This property is deprecated. 3721 PreserveNulls bool `json:"preserveNulls,omitempty"` 3722 3723 // Priority: [Optional] Specifies a priority for the query. Possible 3724 // values include INTERACTIVE and BATCH. The default value is 3725 // INTERACTIVE. 3726 Priority string `json:"priority,omitempty"` 3727 3728 // Query: [Required] SQL query text to execute. The useLegacySql field 3729 // can be used to indicate whether the query uses legacy SQL or standard 3730 // SQL. 3731 Query string `json:"query,omitempty"` 3732 3733 // QueryParameters: Query parameters for standard SQL queries. 3734 QueryParameters []*QueryParameter `json:"queryParameters,omitempty"` 3735 3736 // RangePartitioning: [TrustedTester] Range partitioning specification 3737 // for this table. Only one of timePartitioning and rangePartitioning 3738 // should be specified. 3739 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 3740 3741 // SchemaUpdateOptions: Allows the schema of the destination table to be 3742 // updated as a side effect of the query job. Schema update options are 3743 // supported in two cases: when writeDisposition is WRITE_APPEND; when 3744 // writeDisposition is WRITE_TRUNCATE and the destination table is a 3745 // partition of a table, specified by partition decorators. For normal 3746 // tables, WRITE_TRUNCATE will always overwrite the schema. One or more 3747 // of the following values are specified: ALLOW_FIELD_ADDITION: allow 3748 // adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow 3749 // relaxing a required field in the original schema to nullable. 3750 SchemaUpdateOptions []string `json:"schemaUpdateOptions,omitempty"` 3751 3752 // TableDefinitions: [Optional] If querying an external data source 3753 // outside of BigQuery, describes the data format, location and other 3754 // properties of the data source. By defining these properties, the data 3755 // source can then be queried as if it were a standard BigQuery table. 3756 TableDefinitions map[string]ExternalDataConfiguration `json:"tableDefinitions,omitempty"` 3757 3758 // TimePartitioning: Time-based partitioning specification for the 3759 // destination table. Only one of timePartitioning and rangePartitioning 3760 // should be specified. 3761 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 3762 3763 // UseLegacySql: Specifies whether to use BigQuery's legacy SQL dialect 3764 // for this query. The default value is true. If set to false, the query 3765 // will use BigQuery's standard SQL: 3766 // https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is 3767 // set to false, the value of flattenResults is ignored; query will be 3768 // run as if flattenResults is false. 3769 // 3770 // Default: true 3771 UseLegacySql *bool `json:"useLegacySql,omitempty"` 3772 3773 // UseQueryCache: [Optional] Whether to look for the result in the query 3774 // cache. The query cache is a best-effort cache that will be flushed 3775 // whenever tables in the query are modified. Moreover, the query cache 3776 // is only available when a query does not have a destination table 3777 // specified. The default value is true. 3778 // 3779 // Default: true 3780 UseQueryCache *bool `json:"useQueryCache,omitempty"` 3781 3782 // UserDefinedFunctionResources: Describes user-defined function 3783 // resources used in the query. 3784 UserDefinedFunctionResources []*UserDefinedFunctionResource `json:"userDefinedFunctionResources,omitempty"` 3785 3786 // WriteDisposition: [Optional] Specifies the action that occurs if the 3787 // destination table already exists. The following values are supported: 3788 // WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the 3789 // table data and uses the schema from the query result. WRITE_APPEND: 3790 // If the table already exists, BigQuery appends the data to the table. 3791 // WRITE_EMPTY: If the table already exists and contains data, a 3792 // 'duplicate' error is returned in the job result. The default value is 3793 // WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is 3794 // able to complete the job successfully. Creation, truncation and 3795 // append actions occur as one atomic update upon job completion. 3796 WriteDisposition string `json:"writeDisposition,omitempty"` 3797 3798 // ForceSendFields is a list of field names (e.g. "AllowLargeResults") 3799 // to unconditionally include in API requests. By default, fields with 3800 // empty values are omitted from API requests. However, any non-pointer, 3801 // non-interface field appearing in ForceSendFields will be sent to the 3802 // server regardless of whether the field is empty or not. This may be 3803 // used to include empty fields in Patch requests. 3804 ForceSendFields []string `json:"-"` 3805 3806 // NullFields is a list of field names (e.g. "AllowLargeResults") to 3807 // include in API requests with the JSON null value. By default, fields 3808 // with empty values are omitted from API requests. However, any field 3809 // with an empty value appearing in NullFields will be sent to the 3810 // server as null. It is an error if a field in this list has a 3811 // non-empty value. This may be used to include null fields in Patch 3812 // requests. 3813 NullFields []string `json:"-"` 3814} 3815 3816func (s *JobConfigurationQuery) MarshalJSON() ([]byte, error) { 3817 type NoMethod JobConfigurationQuery 3818 raw := NoMethod(*s) 3819 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3820} 3821 3822type JobConfigurationTableCopy struct { 3823 // CreateDisposition: [Optional] Specifies whether the job is allowed to 3824 // create new tables. The following values are supported: 3825 // CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the 3826 // table. CREATE_NEVER: The table must already exist. If it does not, a 3827 // 'notFound' error is returned in the job result. The default value is 3828 // CREATE_IF_NEEDED. Creation, truncation and append actions occur as 3829 // one atomic update upon job completion. 3830 CreateDisposition string `json:"createDisposition,omitempty"` 3831 3832 // DestinationEncryptionConfiguration: Custom encryption configuration 3833 // (e.g., Cloud KMS keys). 3834 DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` 3835 3836 // DestinationExpirationTime: [Optional] The time when the destination 3837 // table expires. Expired tables will be deleted and their storage 3838 // reclaimed. 3839 DestinationExpirationTime interface{} `json:"destinationExpirationTime,omitempty"` 3840 3841 // DestinationTable: [Required] The destination table 3842 DestinationTable *TableReference `json:"destinationTable,omitempty"` 3843 3844 // OperationType: [Optional] Supported operation types in table copy 3845 // job. 3846 OperationType string `json:"operationType,omitempty"` 3847 3848 // SourceTable: [Pick one] Source table to copy. 3849 SourceTable *TableReference `json:"sourceTable,omitempty"` 3850 3851 // SourceTables: [Pick one] Source tables to copy. 3852 SourceTables []*TableReference `json:"sourceTables,omitempty"` 3853 3854 // WriteDisposition: [Optional] Specifies the action that occurs if the 3855 // destination table already exists. The following values are supported: 3856 // WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the 3857 // table data. WRITE_APPEND: If the table already exists, BigQuery 3858 // appends the data to the table. WRITE_EMPTY: If the table already 3859 // exists and contains data, a 'duplicate' error is returned in the job 3860 // result. The default value is WRITE_EMPTY. Each action is atomic and 3861 // only occurs if BigQuery is able to complete the job successfully. 3862 // Creation, truncation and append actions occur as one atomic update 3863 // upon job completion. 3864 WriteDisposition string `json:"writeDisposition,omitempty"` 3865 3866 // ForceSendFields is a list of field names (e.g. "CreateDisposition") 3867 // to unconditionally include in API requests. By default, fields with 3868 // empty values are omitted from API requests. However, any non-pointer, 3869 // non-interface field appearing in ForceSendFields will be sent to the 3870 // server regardless of whether the field is empty or not. This may be 3871 // used to include empty fields in Patch requests. 3872 ForceSendFields []string `json:"-"` 3873 3874 // NullFields is a list of field names (e.g. "CreateDisposition") to 3875 // include in API requests with the JSON null value. By default, fields 3876 // with empty values are omitted from API requests. However, any field 3877 // with an empty value appearing in NullFields will be sent to the 3878 // server as null. It is an error if a field in this list has a 3879 // non-empty value. This may be used to include null fields in Patch 3880 // requests. 3881 NullFields []string `json:"-"` 3882} 3883 3884func (s *JobConfigurationTableCopy) MarshalJSON() ([]byte, error) { 3885 type NoMethod JobConfigurationTableCopy 3886 raw := NoMethod(*s) 3887 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3888} 3889 3890type JobList struct { 3891 // Etag: A hash of this page of results. 3892 Etag string `json:"etag,omitempty"` 3893 3894 // Jobs: List of jobs that were requested. 3895 Jobs []*JobListJobs `json:"jobs,omitempty"` 3896 3897 // Kind: The resource type of the response. 3898 Kind string `json:"kind,omitempty"` 3899 3900 // NextPageToken: A token to request the next page of results. 3901 NextPageToken string `json:"nextPageToken,omitempty"` 3902 3903 // ServerResponse contains the HTTP response code and headers from the 3904 // server. 3905 googleapi.ServerResponse `json:"-"` 3906 3907 // ForceSendFields is a list of field names (e.g. "Etag") to 3908 // unconditionally include in API requests. By default, fields with 3909 // empty values are omitted from API requests. However, any non-pointer, 3910 // non-interface field appearing in ForceSendFields will be sent to the 3911 // server regardless of whether the field is empty or not. This may be 3912 // used to include empty fields in Patch requests. 3913 ForceSendFields []string `json:"-"` 3914 3915 // NullFields is a list of field names (e.g. "Etag") to include in API 3916 // requests with the JSON null value. By default, fields with empty 3917 // values are omitted from API requests. However, any field with an 3918 // empty value appearing in NullFields will be sent to the server as 3919 // null. It is an error if a field in this list has a non-empty value. 3920 // This may be used to include null fields in Patch requests. 3921 NullFields []string `json:"-"` 3922} 3923 3924func (s *JobList) MarshalJSON() ([]byte, error) { 3925 type NoMethod JobList 3926 raw := NoMethod(*s) 3927 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3928} 3929 3930type JobListJobs struct { 3931 // Configuration: [Full-projection-only] Specifies the job 3932 // configuration. 3933 Configuration *JobConfiguration `json:"configuration,omitempty"` 3934 3935 // ErrorResult: A result object that will be present only if the job has 3936 // failed. 3937 ErrorResult *ErrorProto `json:"errorResult,omitempty"` 3938 3939 // Id: Unique opaque ID of the job. 3940 Id string `json:"id,omitempty"` 3941 3942 // JobReference: Job reference uniquely identifying the job. 3943 JobReference *JobReference `json:"jobReference,omitempty"` 3944 3945 // Kind: The resource type. 3946 Kind string `json:"kind,omitempty"` 3947 3948 // State: Running state of the job. When the state is DONE, errorResult 3949 // can be checked to determine whether the job succeeded or failed. 3950 State string `json:"state,omitempty"` 3951 3952 // Statistics: [Output-only] Information about the job, including 3953 // starting time and ending time of the job. 3954 Statistics *JobStatistics `json:"statistics,omitempty"` 3955 3956 // Status: [Full-projection-only] Describes the state of the job. 3957 Status *JobStatus `json:"status,omitempty"` 3958 3959 // UserEmail: [Full-projection-only] Email address of the user who ran 3960 // the job. 3961 UserEmail string `json:"user_email,omitempty"` 3962 3963 // ForceSendFields is a list of field names (e.g. "Configuration") to 3964 // unconditionally include in API requests. By default, fields with 3965 // empty values are omitted from API requests. However, any non-pointer, 3966 // non-interface field appearing in ForceSendFields will be sent to the 3967 // server regardless of whether the field is empty or not. This may be 3968 // used to include empty fields in Patch requests. 3969 ForceSendFields []string `json:"-"` 3970 3971 // NullFields is a list of field names (e.g. "Configuration") to include 3972 // in API requests with the JSON null value. By default, fields with 3973 // empty values are omitted from API requests. However, any field with 3974 // an empty value appearing in NullFields will be sent to the server as 3975 // null. It is an error if a field in this list has a non-empty value. 3976 // This may be used to include null fields in Patch requests. 3977 NullFields []string `json:"-"` 3978} 3979 3980func (s *JobListJobs) MarshalJSON() ([]byte, error) { 3981 type NoMethod JobListJobs 3982 raw := NoMethod(*s) 3983 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3984} 3985 3986type JobReference struct { 3987 // JobId: [Required] The ID of the job. The ID must contain only letters 3988 // (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). The 3989 // maximum length is 1,024 characters. 3990 JobId string `json:"jobId,omitempty"` 3991 3992 // Location: The geographic location of the job. See details at 3993 // https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 3994 Location string `json:"location,omitempty"` 3995 3996 // ProjectId: [Required] The ID of the project containing this job. 3997 ProjectId string `json:"projectId,omitempty"` 3998 3999 // ForceSendFields is a list of field names (e.g. "JobId") to 4000 // unconditionally include in API requests. By default, fields with 4001 // empty values are omitted from API requests. However, any non-pointer, 4002 // non-interface field appearing in ForceSendFields will be sent to the 4003 // server regardless of whether the field is empty or not. This may be 4004 // used to include empty fields in Patch requests. 4005 ForceSendFields []string `json:"-"` 4006 4007 // NullFields is a list of field names (e.g. "JobId") to include in API 4008 // requests with the JSON null value. By default, fields with empty 4009 // values are omitted from API requests. However, any field with an 4010 // empty value appearing in NullFields will be sent to the server as 4011 // null. It is an error if a field in this list has a non-empty value. 4012 // This may be used to include null fields in Patch requests. 4013 NullFields []string `json:"-"` 4014} 4015 4016func (s *JobReference) MarshalJSON() ([]byte, error) { 4017 type NoMethod JobReference 4018 raw := NoMethod(*s) 4019 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4020} 4021 4022type JobStatistics struct { 4023 // CompletionRatio: [TrustedTester] [Output-only] Job progress (0.0 -> 4024 // 1.0) for LOAD and EXTRACT jobs. 4025 CompletionRatio float64 `json:"completionRatio,omitempty"` 4026 4027 // CreationTime: [Output-only] Creation time of this job, in 4028 // milliseconds since the epoch. This field will be present on all jobs. 4029 CreationTime int64 `json:"creationTime,omitempty,string"` 4030 4031 // EndTime: [Output-only] End time of this job, in milliseconds since 4032 // the epoch. This field will be present whenever a job is in the DONE 4033 // state. 4034 EndTime int64 `json:"endTime,omitempty,string"` 4035 4036 // Extract: [Output-only] Statistics for an extract job. 4037 Extract *JobStatistics4 `json:"extract,omitempty"` 4038 4039 // Load: [Output-only] Statistics for a load job. 4040 Load *JobStatistics3 `json:"load,omitempty"` 4041 4042 // NumChildJobs: [Output-only] Number of child jobs executed. 4043 NumChildJobs int64 `json:"numChildJobs,omitempty,string"` 4044 4045 // ParentJobId: [Output-only] If this is a child job, the id of the 4046 // parent. 4047 ParentJobId string `json:"parentJobId,omitempty"` 4048 4049 // Query: [Output-only] Statistics for a query job. 4050 Query *JobStatistics2 `json:"query,omitempty"` 4051 4052 // QuotaDeferments: [Output-only] Quotas which delayed this job's start 4053 // time. 4054 QuotaDeferments []string `json:"quotaDeferments,omitempty"` 4055 4056 // ReservationUsage: [Output-only] Job resource usage breakdown by 4057 // reservation. 4058 ReservationUsage []*JobStatisticsReservationUsage `json:"reservationUsage,omitempty"` 4059 4060 // ReservationId: [Output-only] Name of the primary reservation assigned 4061 // to this job. Note that this could be different than reservations 4062 // reported in the reservation usage field if parent reservations were 4063 // used to execute this job. 4064 ReservationId string `json:"reservation_id,omitempty"` 4065 4066 // RowLevelSecurityStatistics: [Output-only] [Preview] Statistics for 4067 // row-level security. Present only for query and extract jobs. 4068 RowLevelSecurityStatistics *RowLevelSecurityStatistics `json:"rowLevelSecurityStatistics,omitempty"` 4069 4070 // ScriptStatistics: [Output-only] Statistics for a child job of a 4071 // script. 4072 ScriptStatistics *ScriptStatistics `json:"scriptStatistics,omitempty"` 4073 4074 // StartTime: [Output-only] Start time of this job, in milliseconds 4075 // since the epoch. This field will be present when the job transitions 4076 // from the PENDING state to either RUNNING or DONE. 4077 StartTime int64 `json:"startTime,omitempty,string"` 4078 4079 // TotalBytesProcessed: [Output-only] [Deprecated] Use the bytes 4080 // processed in the query statistics instead. 4081 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 4082 4083 // TotalSlotMs: [Output-only] Slot-milliseconds for the job. 4084 TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"` 4085 4086 // TransactionInfoTemplate: [Output-only] [Alpha] Information of the 4087 // multi-statement transaction if this job is part of one. 4088 TransactionInfoTemplate *TransactionInfo `json:"transactionInfoTemplate,omitempty"` 4089 4090 // ForceSendFields is a list of field names (e.g. "CompletionRatio") to 4091 // unconditionally include in API requests. By default, fields with 4092 // empty values are omitted from API requests. However, any non-pointer, 4093 // non-interface field appearing in ForceSendFields will be sent to the 4094 // server regardless of whether the field is empty or not. This may be 4095 // used to include empty fields in Patch requests. 4096 ForceSendFields []string `json:"-"` 4097 4098 // NullFields is a list of field names (e.g. "CompletionRatio") to 4099 // include in API requests with the JSON null value. By default, fields 4100 // with empty values are omitted from API requests. However, any field 4101 // with an empty value appearing in NullFields will be sent to the 4102 // server as null. It is an error if a field in this list has a 4103 // non-empty value. This may be used to include null fields in Patch 4104 // requests. 4105 NullFields []string `json:"-"` 4106} 4107 4108func (s *JobStatistics) MarshalJSON() ([]byte, error) { 4109 type NoMethod JobStatistics 4110 raw := NoMethod(*s) 4111 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4112} 4113 4114func (s *JobStatistics) UnmarshalJSON(data []byte) error { 4115 type NoMethod JobStatistics 4116 var s1 struct { 4117 CompletionRatio gensupport.JSONFloat64 `json:"completionRatio"` 4118 *NoMethod 4119 } 4120 s1.NoMethod = (*NoMethod)(s) 4121 if err := json.Unmarshal(data, &s1); err != nil { 4122 return err 4123 } 4124 s.CompletionRatio = float64(s1.CompletionRatio) 4125 return nil 4126} 4127 4128type JobStatisticsReservationUsage struct { 4129 // Name: [Output-only] Reservation name or "unreserved" for on-demand 4130 // resources usage. 4131 Name string `json:"name,omitempty"` 4132 4133 // SlotMs: [Output-only] Slot-milliseconds the job spent in the given 4134 // reservation. 4135 SlotMs int64 `json:"slotMs,omitempty,string"` 4136 4137 // ForceSendFields is a list of field names (e.g. "Name") to 4138 // unconditionally include in API requests. By default, fields with 4139 // empty values are omitted from API requests. However, any non-pointer, 4140 // non-interface field appearing in ForceSendFields will be sent to the 4141 // server regardless of whether the field is empty or not. This may be 4142 // used to include empty fields in Patch requests. 4143 ForceSendFields []string `json:"-"` 4144 4145 // NullFields is a list of field names (e.g. "Name") to include in API 4146 // requests with the JSON null value. By default, fields with empty 4147 // values are omitted from API requests. However, any field with an 4148 // empty value appearing in NullFields will be sent to the server as 4149 // null. It is an error if a field in this list has a non-empty value. 4150 // This may be used to include null fields in Patch requests. 4151 NullFields []string `json:"-"` 4152} 4153 4154func (s *JobStatisticsReservationUsage) MarshalJSON() ([]byte, error) { 4155 type NoMethod JobStatisticsReservationUsage 4156 raw := NoMethod(*s) 4157 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4158} 4159 4160type JobStatistics2 struct { 4161 // BillingTier: [Output-only] Billing tier for the job. 4162 BillingTier int64 `json:"billingTier,omitempty"` 4163 4164 // CacheHit: [Output-only] Whether the query result was fetched from the 4165 // query cache. 4166 CacheHit bool `json:"cacheHit,omitempty"` 4167 4168 // DdlAffectedRowAccessPolicyCount: [Output-only] [Preview] The number 4169 // of row access policies affected by a DDL statement. Present only for 4170 // DROP ALL ROW ACCESS POLICIES queries. 4171 DdlAffectedRowAccessPolicyCount int64 `json:"ddlAffectedRowAccessPolicyCount,omitempty,string"` 4172 4173 // DdlOperationPerformed: The DDL operation performed, possibly 4174 // dependent on the pre-existence of the DDL target. Possible values 4175 // (new values might be added in the future): "CREATE": The query 4176 // created the DDL target. "SKIP": No-op. Example cases: the query is 4177 // CREATE TABLE IF NOT EXISTS while the table already exists, or the 4178 // query is DROP TABLE IF EXISTS while the table does not exist. 4179 // "REPLACE": The query replaced the DDL target. Example case: the query 4180 // is CREATE OR REPLACE TABLE, and the table already exists. "DROP": The 4181 // query deleted the DDL target. 4182 DdlOperationPerformed string `json:"ddlOperationPerformed,omitempty"` 4183 4184 // DdlTargetRoutine: The DDL target routine. Present only for 4185 // CREATE/DROP FUNCTION/PROCEDURE queries. 4186 DdlTargetRoutine *RoutineReference `json:"ddlTargetRoutine,omitempty"` 4187 4188 // DdlTargetRowAccessPolicy: [Output-only] [Preview] The DDL target row 4189 // access policy. Present only for CREATE/DROP ROW ACCESS POLICY 4190 // queries. 4191 DdlTargetRowAccessPolicy *RowAccessPolicyReference `json:"ddlTargetRowAccessPolicy,omitempty"` 4192 4193 // DdlTargetTable: [Output-only] The DDL target table. Present only for 4194 // CREATE/DROP TABLE/VIEW and DROP ALL ROW ACCESS POLICIES queries. 4195 DdlTargetTable *TableReference `json:"ddlTargetTable,omitempty"` 4196 4197 // EstimatedBytesProcessed: [Output-only] The original estimate of bytes 4198 // processed for the job. 4199 EstimatedBytesProcessed int64 `json:"estimatedBytesProcessed,omitempty,string"` 4200 4201 // ModelTraining: [Output-only, Beta] Information about create model 4202 // query job progress. 4203 ModelTraining *BigQueryModelTraining `json:"modelTraining,omitempty"` 4204 4205 // ModelTrainingCurrentIteration: [Output-only, Beta] Deprecated; do not 4206 // use. 4207 ModelTrainingCurrentIteration int64 `json:"modelTrainingCurrentIteration,omitempty"` 4208 4209 // ModelTrainingExpectedTotalIteration: [Output-only, Beta] Deprecated; 4210 // do not use. 4211 ModelTrainingExpectedTotalIteration int64 `json:"modelTrainingExpectedTotalIteration,omitempty,string"` 4212 4213 // NumDmlAffectedRows: [Output-only] The number of rows affected by a 4214 // DML statement. Present only for DML statements INSERT, UPDATE or 4215 // DELETE. 4216 NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"` 4217 4218 // QueryPlan: [Output-only] Describes execution plan for the query. 4219 QueryPlan []*ExplainQueryStage `json:"queryPlan,omitempty"` 4220 4221 // ReferencedRoutines: [Output-only] Referenced routines (persistent 4222 // user-defined functions and stored procedures) for the job. 4223 ReferencedRoutines []*RoutineReference `json:"referencedRoutines,omitempty"` 4224 4225 // ReferencedTables: [Output-only] Referenced tables for the job. 4226 // Queries that reference more than 50 tables will not have a complete 4227 // list. 4228 ReferencedTables []*TableReference `json:"referencedTables,omitempty"` 4229 4230 // ReservationUsage: [Output-only] Job resource usage breakdown by 4231 // reservation. 4232 ReservationUsage []*JobStatistics2ReservationUsage `json:"reservationUsage,omitempty"` 4233 4234 // Schema: [Output-only] The schema of the results. Present only for 4235 // successful dry run of non-legacy SQL queries. 4236 Schema *TableSchema `json:"schema,omitempty"` 4237 4238 // StatementType: The type of query statement, if valid. Possible values 4239 // (new values might be added in the future): "SELECT": SELECT query. 4240 // "INSERT": INSERT query; see 4241 // 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. "ALTER_TABLE": ALTER TABLE query. "ALTER_VIEW": ALTER VIEW query. "ASSERT": ASSERT condition AS 'description'. "CREATE_FUNCTION": CREATE FUNCTION query. "CREATE_MODEL": CREATE [OR REPLACE] MODEL ... AS SELECT ... . "CREATE_PROCEDURE": CREATE PROCEDURE query. "CREATE_TABLE": CREATE [OR REPLACE] TABLE without AS SELECT. "CREATE_TABLE_AS_SELECT": CREATE [OR REPLACE] TABLE ... AS SELECT ... . "CREATE_VIEW": CREATE [OR REPLACE] VIEW ... AS SELECT ... . "DROP_FUNCTION" : DROP FUNCTION query. "DROP_PROCEDURE": DROP PROCEDURE query. "DROP_TABLE": DROP TABLE query. "DROP_VIEW": DROP VIEW 4242 // query. 4243 StatementType string `json:"statementType,omitempty"` 4244 4245 // Timeline: [Output-only] [Beta] Describes a timeline of job execution. 4246 Timeline []*QueryTimelineSample `json:"timeline,omitempty"` 4247 4248 // TotalBytesBilled: [Output-only] Total bytes billed for the job. 4249 TotalBytesBilled int64 `json:"totalBytesBilled,omitempty,string"` 4250 4251 // TotalBytesProcessed: [Output-only] Total bytes processed for the job. 4252 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 4253 4254 // TotalBytesProcessedAccuracy: [Output-only] For dry-run jobs, 4255 // totalBytesProcessed is an estimate and this field specifies the 4256 // accuracy of the estimate. Possible values can be: UNKNOWN: accuracy 4257 // of the estimate is unknown. PRECISE: estimate is precise. 4258 // LOWER_BOUND: estimate is lower bound of what the query would cost. 4259 // UPPER_BOUND: estimate is upper bound of what the query would cost. 4260 TotalBytesProcessedAccuracy string `json:"totalBytesProcessedAccuracy,omitempty"` 4261 4262 // TotalPartitionsProcessed: [Output-only] Total number of partitions 4263 // processed from all partitioned tables referenced in the job. 4264 TotalPartitionsProcessed int64 `json:"totalPartitionsProcessed,omitempty,string"` 4265 4266 // TotalSlotMs: [Output-only] Slot-milliseconds for the job. 4267 TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"` 4268 4269 // UndeclaredQueryParameters: Standard SQL only: list of undeclared 4270 // query parameters detected during a dry run validation. 4271 UndeclaredQueryParameters []*QueryParameter `json:"undeclaredQueryParameters,omitempty"` 4272 4273 // ForceSendFields is a list of field names (e.g. "BillingTier") to 4274 // unconditionally include in API requests. By default, fields with 4275 // empty values are omitted from API requests. However, any non-pointer, 4276 // non-interface field appearing in ForceSendFields will be sent to the 4277 // server regardless of whether the field is empty or not. This may be 4278 // used to include empty fields in Patch requests. 4279 ForceSendFields []string `json:"-"` 4280 4281 // NullFields is a list of field names (e.g. "BillingTier") to include 4282 // in API requests with the JSON null value. By default, fields with 4283 // empty values are omitted from API requests. However, any field with 4284 // an empty value appearing in NullFields will be sent to the server as 4285 // null. It is an error if a field in this list has a non-empty value. 4286 // This may be used to include null fields in Patch requests. 4287 NullFields []string `json:"-"` 4288} 4289 4290func (s *JobStatistics2) MarshalJSON() ([]byte, error) { 4291 type NoMethod JobStatistics2 4292 raw := NoMethod(*s) 4293 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4294} 4295 4296type JobStatistics2ReservationUsage struct { 4297 // Name: [Output-only] Reservation name or "unreserved" for on-demand 4298 // resources usage. 4299 Name string `json:"name,omitempty"` 4300 4301 // SlotMs: [Output-only] Slot-milliseconds the job spent in the given 4302 // reservation. 4303 SlotMs int64 `json:"slotMs,omitempty,string"` 4304 4305 // ForceSendFields is a list of field names (e.g. "Name") to 4306 // unconditionally include in API requests. By default, fields with 4307 // empty values are omitted from API requests. However, any non-pointer, 4308 // non-interface field appearing in ForceSendFields will be sent to the 4309 // server regardless of whether the field is empty or not. This may be 4310 // used to include empty fields in Patch requests. 4311 ForceSendFields []string `json:"-"` 4312 4313 // NullFields is a list of field names (e.g. "Name") to include in API 4314 // requests with the JSON null value. By default, fields with empty 4315 // values are omitted from API requests. However, any field with an 4316 // empty value appearing in NullFields will be sent to the server as 4317 // null. It is an error if a field in this list has a non-empty value. 4318 // This may be used to include null fields in Patch requests. 4319 NullFields []string `json:"-"` 4320} 4321 4322func (s *JobStatistics2ReservationUsage) MarshalJSON() ([]byte, error) { 4323 type NoMethod JobStatistics2ReservationUsage 4324 raw := NoMethod(*s) 4325 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4326} 4327 4328type JobStatistics3 struct { 4329 // BadRecords: [Output-only] The number of bad records encountered. Note 4330 // that if the job has failed because of more bad records encountered 4331 // than the maximum allowed in the load job configuration, then this 4332 // number can be less than the total number of bad records present in 4333 // the input data. 4334 BadRecords int64 `json:"badRecords,omitempty,string"` 4335 4336 // InputFileBytes: [Output-only] Number of bytes of source data in a 4337 // load job. 4338 InputFileBytes int64 `json:"inputFileBytes,omitempty,string"` 4339 4340 // InputFiles: [Output-only] Number of source files in a load job. 4341 InputFiles int64 `json:"inputFiles,omitempty,string"` 4342 4343 // OutputBytes: [Output-only] Size of the loaded data in bytes. Note 4344 // that while a load job is in the running state, this value may change. 4345 OutputBytes int64 `json:"outputBytes,omitempty,string"` 4346 4347 // OutputRows: [Output-only] Number of rows imported in a load job. Note 4348 // that while an import job is in the running state, this value may 4349 // change. 4350 OutputRows int64 `json:"outputRows,omitempty,string"` 4351 4352 // ForceSendFields is a list of field names (e.g. "BadRecords") to 4353 // unconditionally include in API requests. By default, fields with 4354 // empty values are omitted from API requests. However, any non-pointer, 4355 // non-interface field appearing in ForceSendFields will be sent to the 4356 // server regardless of whether the field is empty or not. This may be 4357 // used to include empty fields in Patch requests. 4358 ForceSendFields []string `json:"-"` 4359 4360 // NullFields is a list of field names (e.g. "BadRecords") to include in 4361 // API requests with the JSON null value. By default, fields with empty 4362 // values are omitted from API requests. However, any field with an 4363 // empty value appearing in NullFields will be sent to the server as 4364 // null. It is an error if a field in this list has a non-empty value. 4365 // This may be used to include null fields in Patch requests. 4366 NullFields []string `json:"-"` 4367} 4368 4369func (s *JobStatistics3) MarshalJSON() ([]byte, error) { 4370 type NoMethod JobStatistics3 4371 raw := NoMethod(*s) 4372 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4373} 4374 4375type JobStatistics4 struct { 4376 // DestinationUriFileCounts: [Output-only] Number of files per 4377 // destination URI or URI pattern specified in the extract 4378 // configuration. These values will be in the same order as the URIs 4379 // specified in the 'destinationUris' field. 4380 DestinationUriFileCounts googleapi.Int64s `json:"destinationUriFileCounts,omitempty"` 4381 4382 // InputBytes: [Output-only] Number of user bytes extracted into the 4383 // result. This is the byte count as computed by BigQuery for billing 4384 // purposes. 4385 InputBytes int64 `json:"inputBytes,omitempty,string"` 4386 4387 // ForceSendFields is a list of field names (e.g. 4388 // "DestinationUriFileCounts") to unconditionally include in API 4389 // requests. By default, fields with empty values are omitted from API 4390 // requests. However, any non-pointer, non-interface field appearing in 4391 // ForceSendFields will be sent to the server regardless of whether the 4392 // field is empty or not. This may be used to include empty fields in 4393 // Patch requests. 4394 ForceSendFields []string `json:"-"` 4395 4396 // NullFields is a list of field names (e.g. "DestinationUriFileCounts") 4397 // to include in API requests with the JSON null value. By default, 4398 // fields with empty values are omitted from API requests. However, any 4399 // field with an empty value appearing in NullFields will be sent to the 4400 // server as null. It is an error if a field in this list has a 4401 // non-empty value. This may be used to include null fields in Patch 4402 // requests. 4403 NullFields []string `json:"-"` 4404} 4405 4406func (s *JobStatistics4) MarshalJSON() ([]byte, error) { 4407 type NoMethod JobStatistics4 4408 raw := NoMethod(*s) 4409 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4410} 4411 4412type JobStatus struct { 4413 // ErrorResult: [Output-only] Final error result of the job. If present, 4414 // indicates that the job has completed and was unsuccessful. 4415 ErrorResult *ErrorProto `json:"errorResult,omitempty"` 4416 4417 // Errors: [Output-only] The first errors encountered during the running 4418 // of the job. The final message includes the number of errors that 4419 // caused the process to stop. Errors here do not necessarily mean that 4420 // the job has completed or was unsuccessful. 4421 Errors []*ErrorProto `json:"errors,omitempty"` 4422 4423 // State: [Output-only] Running state of the job. 4424 State string `json:"state,omitempty"` 4425 4426 // ForceSendFields is a list of field names (e.g. "ErrorResult") to 4427 // unconditionally include in API requests. By default, fields with 4428 // empty values are omitted from API requests. However, any non-pointer, 4429 // non-interface field appearing in ForceSendFields will be sent to the 4430 // server regardless of whether the field is empty or not. This may be 4431 // used to include empty fields in Patch requests. 4432 ForceSendFields []string `json:"-"` 4433 4434 // NullFields is a list of field names (e.g. "ErrorResult") to include 4435 // in API requests with the JSON null value. By default, fields with 4436 // empty values are omitted from API requests. However, any field with 4437 // an empty value appearing in NullFields will be sent to the server as 4438 // null. It is an error if a field in this list has a non-empty value. 4439 // This may be used to include null fields in Patch requests. 4440 NullFields []string `json:"-"` 4441} 4442 4443func (s *JobStatus) MarshalJSON() ([]byte, error) { 4444 type NoMethod JobStatus 4445 raw := NoMethod(*s) 4446 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4447} 4448 4449type JsonValue interface{} 4450 4451type ListModelsResponse struct { 4452 // Models: Models in the requested dataset. Only the following fields 4453 // are populated: model_reference, model_type, creation_time, 4454 // last_modified_time and labels. 4455 Models []*Model `json:"models,omitempty"` 4456 4457 // NextPageToken: A token to request the next page of results. 4458 NextPageToken string `json:"nextPageToken,omitempty"` 4459 4460 // ServerResponse contains the HTTP response code and headers from the 4461 // server. 4462 googleapi.ServerResponse `json:"-"` 4463 4464 // ForceSendFields is a list of field names (e.g. "Models") to 4465 // unconditionally include in API requests. By default, fields with 4466 // empty values are omitted from API requests. However, any non-pointer, 4467 // non-interface field appearing in ForceSendFields will be sent to the 4468 // server regardless of whether the field is empty or not. This may be 4469 // used to include empty fields in Patch requests. 4470 ForceSendFields []string `json:"-"` 4471 4472 // NullFields is a list of field names (e.g. "Models") to include in API 4473 // requests with the JSON null value. By default, fields with empty 4474 // values are omitted from API requests. However, any field with an 4475 // empty value appearing in NullFields will be sent to the server as 4476 // null. It is an error if a field in this list has a non-empty value. 4477 // This may be used to include null fields in Patch requests. 4478 NullFields []string `json:"-"` 4479} 4480 4481func (s *ListModelsResponse) MarshalJSON() ([]byte, error) { 4482 type NoMethod ListModelsResponse 4483 raw := NoMethod(*s) 4484 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4485} 4486 4487type ListRoutinesResponse struct { 4488 // NextPageToken: A token to request the next page of results. 4489 NextPageToken string `json:"nextPageToken,omitempty"` 4490 4491 // Routines: Routines in the requested dataset. Unless read_mask is set 4492 // in the request, only the following fields are populated: etag, 4493 // project_id, dataset_id, routine_id, routine_type, creation_time, 4494 // last_modified_time, and language. 4495 Routines []*Routine `json:"routines,omitempty"` 4496 4497 // ServerResponse contains the HTTP response code and headers from the 4498 // server. 4499 googleapi.ServerResponse `json:"-"` 4500 4501 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 4502 // unconditionally include in API requests. By default, fields with 4503 // empty values are omitted from API requests. However, any non-pointer, 4504 // non-interface field appearing in ForceSendFields will be sent to the 4505 // server regardless of whether the field is empty or not. This may be 4506 // used to include empty fields in Patch requests. 4507 ForceSendFields []string `json:"-"` 4508 4509 // NullFields is a list of field names (e.g. "NextPageToken") to include 4510 // in API requests with the JSON null value. By default, fields with 4511 // empty values are omitted from API requests. However, any field with 4512 // an empty value appearing in NullFields will be sent to the server as 4513 // null. It is an error if a field in this list has a non-empty value. 4514 // This may be used to include null fields in Patch requests. 4515 NullFields []string `json:"-"` 4516} 4517 4518func (s *ListRoutinesResponse) MarshalJSON() ([]byte, error) { 4519 type NoMethod ListRoutinesResponse 4520 raw := NoMethod(*s) 4521 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4522} 4523 4524// ListRowAccessPoliciesResponse: Response message for the 4525// ListRowAccessPolicies method. 4526type ListRowAccessPoliciesResponse struct { 4527 // NextPageToken: A token to request the next page of results. 4528 NextPageToken string `json:"nextPageToken,omitempty"` 4529 4530 // RowAccessPolicies: Row access policies on the requested table. 4531 RowAccessPolicies []*RowAccessPolicy `json:"rowAccessPolicies,omitempty"` 4532 4533 // ServerResponse contains the HTTP response code and headers from the 4534 // server. 4535 googleapi.ServerResponse `json:"-"` 4536 4537 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 4538 // unconditionally include in API requests. By default, fields with 4539 // empty values are omitted from API requests. However, any non-pointer, 4540 // non-interface field appearing in ForceSendFields will be sent to the 4541 // server regardless of whether the field is empty or not. This may be 4542 // used to include empty fields in Patch requests. 4543 ForceSendFields []string `json:"-"` 4544 4545 // NullFields is a list of field names (e.g. "NextPageToken") to include 4546 // in API requests with the JSON null value. By default, fields with 4547 // empty values are omitted from API requests. However, any field with 4548 // an empty value appearing in NullFields will be sent to the server as 4549 // null. It is an error if a field in this list has a non-empty value. 4550 // This may be used to include null fields in Patch requests. 4551 NullFields []string `json:"-"` 4552} 4553 4554func (s *ListRowAccessPoliciesResponse) MarshalJSON() ([]byte, error) { 4555 type NoMethod ListRowAccessPoliciesResponse 4556 raw := NoMethod(*s) 4557 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4558} 4559 4560// LocationMetadata: BigQuery-specific metadata about a location. This 4561// will be set on google.cloud.location.Location.metadata in Cloud 4562// Location API responses. 4563type LocationMetadata struct { 4564 // LegacyLocationId: The legacy BigQuery location ID, e.g. “EU” for 4565 // the “europe” location. This is for any API consumers that need 4566 // the legacy “US” and “EU” locations. 4567 LegacyLocationId string `json:"legacyLocationId,omitempty"` 4568 4569 // ForceSendFields is a list of field names (e.g. "LegacyLocationId") to 4570 // unconditionally include in API requests. By default, fields with 4571 // empty values are omitted from API requests. However, any non-pointer, 4572 // non-interface field appearing in ForceSendFields will be sent to the 4573 // server regardless of whether the field is empty or not. This may be 4574 // used to include empty fields in Patch requests. 4575 ForceSendFields []string `json:"-"` 4576 4577 // NullFields is a list of field names (e.g. "LegacyLocationId") to 4578 // include in API requests with the JSON null value. By default, fields 4579 // with empty values are omitted from API requests. However, any field 4580 // with an empty value appearing in NullFields will be sent to the 4581 // server as null. It is an error if a field in this list has a 4582 // non-empty value. This may be used to include null fields in Patch 4583 // requests. 4584 NullFields []string `json:"-"` 4585} 4586 4587func (s *LocationMetadata) MarshalJSON() ([]byte, error) { 4588 type NoMethod LocationMetadata 4589 raw := NoMethod(*s) 4590 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4591} 4592 4593type MaterializedViewDefinition struct { 4594 // EnableRefresh: [Optional] [TrustedTester] Enable automatic refresh of 4595 // the materialized view when the base table is updated. The default 4596 // value is "true". 4597 EnableRefresh bool `json:"enableRefresh,omitempty"` 4598 4599 // LastRefreshTime: [Output-only] [TrustedTester] The time when this 4600 // materialized view was last modified, in milliseconds since the epoch. 4601 LastRefreshTime int64 `json:"lastRefreshTime,omitempty,string"` 4602 4603 // Query: [Required] A query whose result is persisted. 4604 Query string `json:"query,omitempty"` 4605 4606 // RefreshIntervalMs: [Optional] [TrustedTester] The maximum frequency 4607 // at which this materialized view will be refreshed. The default value 4608 // is "1800000" (30 minutes). 4609 RefreshIntervalMs int64 `json:"refreshIntervalMs,omitempty,string"` 4610 4611 // ForceSendFields is a list of field names (e.g. "EnableRefresh") to 4612 // unconditionally include in API requests. By default, fields with 4613 // empty values are omitted from API requests. However, any non-pointer, 4614 // non-interface field appearing in ForceSendFields will be sent to the 4615 // server regardless of whether the field is empty or not. This may be 4616 // used to include empty fields in Patch requests. 4617 ForceSendFields []string `json:"-"` 4618 4619 // NullFields is a list of field names (e.g. "EnableRefresh") to include 4620 // in API requests with the JSON null value. By default, fields with 4621 // empty values are omitted from API requests. However, any field with 4622 // an empty value appearing in NullFields will be sent to the server as 4623 // null. It is an error if a field in this list has a non-empty value. 4624 // This may be used to include null fields in Patch requests. 4625 NullFields []string `json:"-"` 4626} 4627 4628func (s *MaterializedViewDefinition) MarshalJSON() ([]byte, error) { 4629 type NoMethod MaterializedViewDefinition 4630 raw := NoMethod(*s) 4631 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4632} 4633 4634type Model struct { 4635 // CreationTime: Output only. The time when this model was created, in 4636 // millisecs since the epoch. 4637 CreationTime int64 `json:"creationTime,omitempty,string"` 4638 4639 // Description: Optional. A user-friendly description of this model. 4640 Description string `json:"description,omitempty"` 4641 4642 // EncryptionConfiguration: Custom encryption configuration (e.g., Cloud 4643 // KMS keys). This shows the encryption configuration of the model data 4644 // while stored in BigQuery storage. This field can be used with 4645 // PatchModel to update encryption key for an already encrypted model. 4646 EncryptionConfiguration *EncryptionConfiguration `json:"encryptionConfiguration,omitempty"` 4647 4648 // Etag: Output only. A hash of this resource. 4649 Etag string `json:"etag,omitempty"` 4650 4651 // ExpirationTime: Optional. The time when this model expires, in 4652 // milliseconds since the epoch. If not present, the model will persist 4653 // indefinitely. Expired models will be deleted and their storage 4654 // reclaimed. The defaultTableExpirationMs property of the encapsulating 4655 // dataset can be used to set a default expirationTime on newly created 4656 // models. 4657 ExpirationTime int64 `json:"expirationTime,omitempty,string"` 4658 4659 // FeatureColumns: Output only. Input feature columns that were used to 4660 // train this model. 4661 FeatureColumns []*StandardSqlField `json:"featureColumns,omitempty"` 4662 4663 // FriendlyName: Optional. A descriptive name for this model. 4664 FriendlyName string `json:"friendlyName,omitempty"` 4665 4666 // LabelColumns: Output only. Label columns that were used to train this 4667 // model. The output of the model will have a "predicted_" prefix to 4668 // these columns. 4669 LabelColumns []*StandardSqlField `json:"labelColumns,omitempty"` 4670 4671 // Labels: The labels associated with this model. You can use these to 4672 // organize and group your models. Label keys and values can be no 4673 // longer than 63 characters, can only contain lowercase letters, 4674 // numeric characters, underscores and dashes. International characters 4675 // are allowed. Label values are optional. Label keys must start with a 4676 // letter and each label in the list must have a different key. 4677 Labels map[string]string `json:"labels,omitempty"` 4678 4679 // LastModifiedTime: Output only. The time when this model was last 4680 // modified, in millisecs since the epoch. 4681 LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"` 4682 4683 // Location: Output only. The geographic location where the model 4684 // resides. This value is inherited from the dataset. 4685 Location string `json:"location,omitempty"` 4686 4687 // ModelReference: Required. Unique identifier for this model. 4688 ModelReference *ModelReference `json:"modelReference,omitempty"` 4689 4690 // ModelType: Output only. Type of the model resource. 4691 // 4692 // Possible values: 4693 // "MODEL_TYPE_UNSPECIFIED" 4694 // "LINEAR_REGRESSION" - Linear regression model. 4695 // "LOGISTIC_REGRESSION" - Logistic regression based classification 4696 // model. 4697 // "KMEANS" - K-means clustering model. 4698 // "MATRIX_FACTORIZATION" - Matrix factorization model. 4699 // "DNN_CLASSIFIER" - [Beta] DNN classifier model. 4700 // "TENSORFLOW" - [Beta] An imported TensorFlow model. 4701 // "DNN_REGRESSOR" - [Beta] DNN regressor model. 4702 // "BOOSTED_TREE_REGRESSOR" - [Beta] Boosted tree regressor model. 4703 // "BOOSTED_TREE_CLASSIFIER" - [Beta] Boosted tree classifier model. 4704 // "ARIMA" - [Beta] ARIMA model. 4705 // "AUTOML_REGRESSOR" - [Beta] AutoML Tables regression model. 4706 // "AUTOML_CLASSIFIER" - [Beta] AutoML Tables classification model. 4707 ModelType string `json:"modelType,omitempty"` 4708 4709 // TrainingRuns: Output only. Information for all training runs in 4710 // increasing order of start_time. 4711 TrainingRuns []*TrainingRun `json:"trainingRuns,omitempty"` 4712 4713 // ServerResponse contains the HTTP response code and headers from the 4714 // server. 4715 googleapi.ServerResponse `json:"-"` 4716 4717 // ForceSendFields is a list of field names (e.g. "CreationTime") to 4718 // unconditionally include in API requests. By default, fields with 4719 // empty values are omitted from API requests. However, any non-pointer, 4720 // non-interface field appearing in ForceSendFields will be sent to the 4721 // server regardless of whether the field is empty or not. This may be 4722 // used to include empty fields in Patch requests. 4723 ForceSendFields []string `json:"-"` 4724 4725 // NullFields is a list of field names (e.g. "CreationTime") to include 4726 // in API requests with the JSON null value. By default, fields with 4727 // empty values are omitted from API requests. However, any field with 4728 // an empty value appearing in NullFields will be sent to the server as 4729 // null. It is an error if a field in this list has a non-empty value. 4730 // This may be used to include null fields in Patch requests. 4731 NullFields []string `json:"-"` 4732} 4733 4734func (s *Model) MarshalJSON() ([]byte, error) { 4735 type NoMethod Model 4736 raw := NoMethod(*s) 4737 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4738} 4739 4740type ModelDefinition struct { 4741 // ModelOptions: [Output-only, Beta] Model options used for the first 4742 // training run. These options are immutable for subsequent training 4743 // runs. Default values are used for any options not specified in the 4744 // input query. 4745 ModelOptions *ModelDefinitionModelOptions `json:"modelOptions,omitempty"` 4746 4747 // TrainingRuns: [Output-only, Beta] Information about ml training runs, 4748 // each training run comprises of multiple iterations and there may be 4749 // multiple training runs for the model if warm start is used or if a 4750 // user decides to continue a previously cancelled query. 4751 TrainingRuns []*BqmlTrainingRun `json:"trainingRuns,omitempty"` 4752 4753 // ForceSendFields is a list of field names (e.g. "ModelOptions") to 4754 // unconditionally include in API requests. By default, fields with 4755 // empty values are omitted from API requests. However, any non-pointer, 4756 // non-interface field appearing in ForceSendFields will be sent to the 4757 // server regardless of whether the field is empty or not. This may be 4758 // used to include empty fields in Patch requests. 4759 ForceSendFields []string `json:"-"` 4760 4761 // NullFields is a list of field names (e.g. "ModelOptions") to include 4762 // in API requests with the JSON null value. By default, fields with 4763 // empty values are omitted from API requests. However, any field with 4764 // an empty value appearing in NullFields will be sent to the server as 4765 // null. It is an error if a field in this list has a non-empty value. 4766 // This may be used to include null fields in Patch requests. 4767 NullFields []string `json:"-"` 4768} 4769 4770func (s *ModelDefinition) MarshalJSON() ([]byte, error) { 4771 type NoMethod ModelDefinition 4772 raw := NoMethod(*s) 4773 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4774} 4775 4776// ModelDefinitionModelOptions: [Output-only, Beta] Model options used 4777// for the first training run. These options are immutable for 4778// subsequent training runs. Default values are used for any options not 4779// specified in the input query. 4780type ModelDefinitionModelOptions struct { 4781 Labels []string `json:"labels,omitempty"` 4782 4783 LossType string `json:"lossType,omitempty"` 4784 4785 ModelType string `json:"modelType,omitempty"` 4786 4787 // ForceSendFields is a list of field names (e.g. "Labels") to 4788 // unconditionally include in API requests. By default, fields with 4789 // empty values are omitted from API requests. However, any non-pointer, 4790 // non-interface field appearing in ForceSendFields will be sent to the 4791 // server regardless of whether the field is empty or not. This may be 4792 // used to include empty fields in Patch requests. 4793 ForceSendFields []string `json:"-"` 4794 4795 // NullFields is a list of field names (e.g. "Labels") to include in API 4796 // requests with the JSON null value. By default, fields with empty 4797 // values are omitted from API requests. However, any field with an 4798 // empty value appearing in NullFields will be sent to the server as 4799 // null. It is an error if a field in this list has a non-empty value. 4800 // This may be used to include null fields in Patch requests. 4801 NullFields []string `json:"-"` 4802} 4803 4804func (s *ModelDefinitionModelOptions) MarshalJSON() ([]byte, error) { 4805 type NoMethod ModelDefinitionModelOptions 4806 raw := NoMethod(*s) 4807 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4808} 4809 4810type ModelReference struct { 4811 // DatasetId: [Required] The ID of the dataset containing this model. 4812 DatasetId string `json:"datasetId,omitempty"` 4813 4814 // ModelId: [Required] The ID of the model. The ID must contain only 4815 // letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum 4816 // length is 1,024 characters. 4817 ModelId string `json:"modelId,omitempty"` 4818 4819 // ProjectId: [Required] The ID of the project containing this model. 4820 ProjectId string `json:"projectId,omitempty"` 4821 4822 // ForceSendFields is a list of field names (e.g. "DatasetId") to 4823 // unconditionally include in API requests. By default, fields with 4824 // empty values are omitted from API requests. However, any non-pointer, 4825 // non-interface field appearing in ForceSendFields will be sent to the 4826 // server regardless of whether the field is empty or not. This may be 4827 // used to include empty fields in Patch requests. 4828 ForceSendFields []string `json:"-"` 4829 4830 // NullFields is a list of field names (e.g. "DatasetId") to include in 4831 // API requests with the JSON null value. By default, fields with empty 4832 // values are omitted from API requests. However, any field with an 4833 // empty value appearing in NullFields will be sent to the server as 4834 // null. It is an error if a field in this list has a non-empty value. 4835 // This may be used to include null fields in Patch requests. 4836 NullFields []string `json:"-"` 4837} 4838 4839func (s *ModelReference) MarshalJSON() ([]byte, error) { 4840 type NoMethod ModelReference 4841 raw := NoMethod(*s) 4842 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4843} 4844 4845// MultiClassClassificationMetrics: Evaluation metrics for multi-class 4846// classification/classifier models. 4847type MultiClassClassificationMetrics struct { 4848 // AggregateClassificationMetrics: Aggregate classification metrics. 4849 AggregateClassificationMetrics *AggregateClassificationMetrics `json:"aggregateClassificationMetrics,omitempty"` 4850 4851 // ConfusionMatrixList: Confusion matrix at different thresholds. 4852 ConfusionMatrixList []*ConfusionMatrix `json:"confusionMatrixList,omitempty"` 4853 4854 // ForceSendFields is a list of field names (e.g. 4855 // "AggregateClassificationMetrics") to unconditionally include in API 4856 // requests. By default, fields with empty values are omitted from API 4857 // requests. However, any non-pointer, non-interface field appearing in 4858 // ForceSendFields will be sent to the server regardless of whether the 4859 // field is empty or not. This may be used to include empty fields in 4860 // Patch requests. 4861 ForceSendFields []string `json:"-"` 4862 4863 // NullFields is a list of field names (e.g. 4864 // "AggregateClassificationMetrics") to include in API requests with the 4865 // JSON null value. By default, fields with empty values are omitted 4866 // from API requests. However, any field with an empty value appearing 4867 // in NullFields will be sent to the server as null. It is an error if a 4868 // field in this list has a non-empty value. This may be used to include 4869 // null fields in Patch requests. 4870 NullFields []string `json:"-"` 4871} 4872 4873func (s *MultiClassClassificationMetrics) MarshalJSON() ([]byte, error) { 4874 type NoMethod MultiClassClassificationMetrics 4875 raw := NoMethod(*s) 4876 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4877} 4878 4879// Policy: An Identity and Access Management (IAM) policy, which 4880// specifies access controls for Google Cloud resources. A `Policy` is a 4881// collection of `bindings`. A `binding` binds one or more `members` to 4882// a single `role`. Members can be user accounts, service accounts, 4883// Google groups, and domains (such as G Suite). A `role` is a named 4884// list of permissions; each `role` can be an IAM predefined role or a 4885// user-created custom role. For some types of Google Cloud resources, a 4886// `binding` can also specify a `condition`, which is a logical 4887// expression that allows access to a resource only if the expression 4888// evaluates to `true`. A condition can add constraints based on 4889// attributes of the request, the resource, or both. To learn which 4890// resources support conditions in their IAM policies, see the [IAM 4891// documentation](https://cloud.google.com/iam/help/conditions/resource-p 4892// olicies). **JSON example:** { "bindings": [ { "role": 4893// "roles/resourcemanager.organizationAdmin", "members": [ 4894// "user:mike@example.com", "group:admins@example.com", 4895// "domain:google.com", 4896// "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { 4897// "role": "roles/resourcemanager.organizationViewer", "members": [ 4898// "user:eve@example.com" ], "condition": { "title": "expirable access", 4899// "description": "Does not grant access after Sep 2020", "expression": 4900// "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], 4901// "etag": "BwWWja0YfJA=", "version": 3 } **YAML example:** bindings: - 4902// members: - user:mike@example.com - group:admins@example.com - 4903// domain:google.com - 4904// serviceAccount:my-project-id@appspot.gserviceaccount.com role: 4905// roles/resourcemanager.organizationAdmin - members: - 4906// user:eve@example.com role: roles/resourcemanager.organizationViewer 4907// condition: title: expirable access description: Does not grant access 4908// after Sep 2020 expression: request.time < 4909// timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 4910// 3 For a description of IAM and its features, see the [IAM 4911// documentation](https://cloud.google.com/iam/docs/). 4912type Policy struct { 4913 // AuditConfigs: Specifies cloud audit logging configuration for this 4914 // policy. 4915 AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` 4916 4917 // Bindings: Associates a list of `members` to a `role`. Optionally, may 4918 // specify a `condition` that determines how and when the `bindings` are 4919 // applied. Each of the `bindings` must contain at least one member. 4920 Bindings []*Binding `json:"bindings,omitempty"` 4921 4922 // Etag: `etag` is used for optimistic concurrency control as a way to 4923 // help prevent simultaneous updates of a policy from overwriting each 4924 // other. It is strongly suggested that systems make use of the `etag` 4925 // in the read-modify-write cycle to perform policy updates in order to 4926 // avoid race conditions: An `etag` is returned in the response to 4927 // `getIamPolicy`, and systems are expected to put that etag in the 4928 // request to `setIamPolicy` to ensure that their change will be applied 4929 // to the same version of the policy. **Important:** If you use IAM 4930 // Conditions, you must include the `etag` field whenever you call 4931 // `setIamPolicy`. If you omit this field, then IAM allows you to 4932 // overwrite a version `3` policy with a version `1` policy, and all of 4933 // the conditions in the version `3` policy are lost. 4934 Etag string `json:"etag,omitempty"` 4935 4936 // Version: Specifies the format of the policy. Valid values are `0`, 4937 // `1`, and `3`. Requests that specify an invalid value are rejected. 4938 // Any operation that affects conditional role bindings must specify 4939 // version `3`. This requirement applies to the following operations: * 4940 // Getting a policy that includes a conditional role binding * Adding a 4941 // conditional role binding to a policy * Changing a conditional role 4942 // binding in a policy * Removing any role binding, with or without a 4943 // condition, from a policy that includes conditions **Important:** If 4944 // you use IAM Conditions, you must include the `etag` field whenever 4945 // you call `setIamPolicy`. If you omit this field, then IAM allows you 4946 // to overwrite a version `3` policy with a version `1` policy, and all 4947 // of the conditions in the version `3` policy are lost. If a policy 4948 // does not include any conditions, operations on that policy may 4949 // specify any valid version or leave the field unset. To learn which 4950 // resources support conditions in their IAM policies, see the [IAM 4951 // documentation](https://cloud.google.com/iam/help/conditions/resource-p 4952 // olicies). 4953 Version int64 `json:"version,omitempty"` 4954 4955 // ServerResponse contains the HTTP response code and headers from the 4956 // server. 4957 googleapi.ServerResponse `json:"-"` 4958 4959 // ForceSendFields is a list of field names (e.g. "AuditConfigs") to 4960 // unconditionally include in API requests. By default, fields with 4961 // empty values are omitted from API requests. However, any non-pointer, 4962 // non-interface field appearing in ForceSendFields will be sent to the 4963 // server regardless of whether the field is empty or not. This may be 4964 // used to include empty fields in Patch requests. 4965 ForceSendFields []string `json:"-"` 4966 4967 // NullFields is a list of field names (e.g. "AuditConfigs") to include 4968 // in API requests with the JSON null value. By default, fields with 4969 // empty values are omitted from API requests. However, any field with 4970 // an empty value appearing in NullFields will be sent to the server as 4971 // null. It is an error if a field in this list has a non-empty value. 4972 // This may be used to include null fields in Patch requests. 4973 NullFields []string `json:"-"` 4974} 4975 4976func (s *Policy) MarshalJSON() ([]byte, error) { 4977 type NoMethod Policy 4978 raw := NoMethod(*s) 4979 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4980} 4981 4982type ProjectList struct { 4983 // Etag: A hash of the page of results 4984 Etag string `json:"etag,omitempty"` 4985 4986 // Kind: The type of list. 4987 Kind string `json:"kind,omitempty"` 4988 4989 // NextPageToken: A token to request the next page of results. 4990 NextPageToken string `json:"nextPageToken,omitempty"` 4991 4992 // Projects: Projects to which you have at least READ access. 4993 Projects []*ProjectListProjects `json:"projects,omitempty"` 4994 4995 // TotalItems: The total number of projects in the list. 4996 TotalItems int64 `json:"totalItems,omitempty"` 4997 4998 // ServerResponse contains the HTTP response code and headers from the 4999 // server. 5000 googleapi.ServerResponse `json:"-"` 5001 5002 // ForceSendFields is a list of field names (e.g. "Etag") to 5003 // unconditionally include in API requests. By default, fields with 5004 // empty values are omitted from API requests. However, any non-pointer, 5005 // non-interface field appearing in ForceSendFields will be sent to the 5006 // server regardless of whether the field is empty or not. This may be 5007 // used to include empty fields in Patch requests. 5008 ForceSendFields []string `json:"-"` 5009 5010 // NullFields is a list of field names (e.g. "Etag") to include in API 5011 // requests with the JSON null value. By default, fields with empty 5012 // values are omitted from API requests. However, any field with an 5013 // empty value appearing in NullFields will be sent to the server as 5014 // null. It is an error if a field in this list has a non-empty value. 5015 // This may be used to include null fields in Patch requests. 5016 NullFields []string `json:"-"` 5017} 5018 5019func (s *ProjectList) MarshalJSON() ([]byte, error) { 5020 type NoMethod ProjectList 5021 raw := NoMethod(*s) 5022 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5023} 5024 5025type ProjectListProjects struct { 5026 // FriendlyName: A descriptive name for this project. 5027 FriendlyName string `json:"friendlyName,omitempty"` 5028 5029 // Id: An opaque ID of this project. 5030 Id string `json:"id,omitempty"` 5031 5032 // Kind: The resource type. 5033 Kind string `json:"kind,omitempty"` 5034 5035 // NumericId: The numeric ID of this project. 5036 NumericId uint64 `json:"numericId,omitempty,string"` 5037 5038 // ProjectReference: A unique reference to this project. 5039 ProjectReference *ProjectReference `json:"projectReference,omitempty"` 5040 5041 // ForceSendFields is a list of field names (e.g. "FriendlyName") to 5042 // unconditionally include in API requests. By default, fields with 5043 // empty values are omitted from API requests. However, any non-pointer, 5044 // non-interface field appearing in ForceSendFields will be sent to the 5045 // server regardless of whether the field is empty or not. This may be 5046 // used to include empty fields in Patch requests. 5047 ForceSendFields []string `json:"-"` 5048 5049 // NullFields is a list of field names (e.g. "FriendlyName") to include 5050 // in API requests with the JSON null value. By default, fields with 5051 // empty values are omitted from API requests. However, any field with 5052 // an empty value appearing in NullFields will be sent to the server as 5053 // null. It is an error if a field in this list has a non-empty value. 5054 // This may be used to include null fields in Patch requests. 5055 NullFields []string `json:"-"` 5056} 5057 5058func (s *ProjectListProjects) MarshalJSON() ([]byte, error) { 5059 type NoMethod ProjectListProjects 5060 raw := NoMethod(*s) 5061 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5062} 5063 5064type ProjectReference struct { 5065 // ProjectId: [Required] ID of the project. Can be either the numeric ID 5066 // or the assigned ID of the project. 5067 ProjectId string `json:"projectId,omitempty"` 5068 5069 // ForceSendFields is a list of field names (e.g. "ProjectId") to 5070 // unconditionally include in API requests. By default, fields with 5071 // empty values are omitted from API requests. However, any non-pointer, 5072 // non-interface field appearing in ForceSendFields will be sent to the 5073 // server regardless of whether the field is empty or not. This may be 5074 // used to include empty fields in Patch requests. 5075 ForceSendFields []string `json:"-"` 5076 5077 // NullFields is a list of field names (e.g. "ProjectId") to include in 5078 // API requests with the JSON null value. By default, fields with empty 5079 // values are omitted from API requests. However, any field with an 5080 // empty value appearing in NullFields will be sent to the server as 5081 // null. It is an error if a field in this list has a non-empty value. 5082 // This may be used to include null fields in Patch requests. 5083 NullFields []string `json:"-"` 5084} 5085 5086func (s *ProjectReference) MarshalJSON() ([]byte, error) { 5087 type NoMethod ProjectReference 5088 raw := NoMethod(*s) 5089 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5090} 5091 5092type QueryParameter struct { 5093 // Name: [Optional] If unset, this is a positional parameter. Otherwise, 5094 // should be unique within a query. 5095 Name string `json:"name,omitempty"` 5096 5097 // ParameterType: [Required] The type of this parameter. 5098 ParameterType *QueryParameterType `json:"parameterType,omitempty"` 5099 5100 // ParameterValue: [Required] The value of this parameter. 5101 ParameterValue *QueryParameterValue `json:"parameterValue,omitempty"` 5102 5103 // ForceSendFields is a list of field names (e.g. "Name") to 5104 // unconditionally include in API requests. By default, fields with 5105 // empty values are omitted from API requests. However, any non-pointer, 5106 // non-interface field appearing in ForceSendFields will be sent to the 5107 // server regardless of whether the field is empty or not. This may be 5108 // used to include empty fields in Patch requests. 5109 ForceSendFields []string `json:"-"` 5110 5111 // NullFields is a list of field names (e.g. "Name") to include in API 5112 // requests with the JSON null value. By default, fields with empty 5113 // values are omitted from API requests. However, any field with an 5114 // empty value appearing in NullFields will be sent to the server as 5115 // null. It is an error if a field in this list has a non-empty value. 5116 // This may be used to include null fields in Patch requests. 5117 NullFields []string `json:"-"` 5118} 5119 5120func (s *QueryParameter) MarshalJSON() ([]byte, error) { 5121 type NoMethod QueryParameter 5122 raw := NoMethod(*s) 5123 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5124} 5125 5126type QueryParameterType struct { 5127 // ArrayType: [Optional] The type of the array's elements, if this is an 5128 // array. 5129 ArrayType *QueryParameterType `json:"arrayType,omitempty"` 5130 5131 // StructTypes: [Optional] The types of the fields of this struct, in 5132 // order, if this is a struct. 5133 StructTypes []*QueryParameterTypeStructTypes `json:"structTypes,omitempty"` 5134 5135 // Type: [Required] The top level type of this field. 5136 Type string `json:"type,omitempty"` 5137 5138 // ForceSendFields is a list of field names (e.g. "ArrayType") to 5139 // unconditionally include in API requests. By default, fields with 5140 // empty values are omitted from API requests. However, any non-pointer, 5141 // non-interface field appearing in ForceSendFields will be sent to the 5142 // server regardless of whether the field is empty or not. This may be 5143 // used to include empty fields in Patch requests. 5144 ForceSendFields []string `json:"-"` 5145 5146 // NullFields is a list of field names (e.g. "ArrayType") to include in 5147 // API requests with the JSON null value. By default, fields with empty 5148 // values are omitted from API requests. However, any field with an 5149 // empty value appearing in NullFields will be sent to the server as 5150 // null. It is an error if a field in this list has a non-empty value. 5151 // This may be used to include null fields in Patch requests. 5152 NullFields []string `json:"-"` 5153} 5154 5155func (s *QueryParameterType) MarshalJSON() ([]byte, error) { 5156 type NoMethod QueryParameterType 5157 raw := NoMethod(*s) 5158 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5159} 5160 5161type QueryParameterTypeStructTypes struct { 5162 // Description: [Optional] Human-oriented description of the field. 5163 Description string `json:"description,omitempty"` 5164 5165 // Name: [Optional] The name of this field. 5166 Name string `json:"name,omitempty"` 5167 5168 // Type: [Required] The type of this field. 5169 Type *QueryParameterType `json:"type,omitempty"` 5170 5171 // ForceSendFields is a list of field names (e.g. "Description") to 5172 // unconditionally include in API requests. By default, fields with 5173 // empty values are omitted from API requests. However, any non-pointer, 5174 // non-interface field appearing in ForceSendFields will be sent to the 5175 // server regardless of whether the field is empty or not. This may be 5176 // used to include empty fields in Patch requests. 5177 ForceSendFields []string `json:"-"` 5178 5179 // NullFields is a list of field names (e.g. "Description") to include 5180 // in API requests with the JSON null value. By default, fields with 5181 // empty values are omitted from API requests. However, any field with 5182 // an empty value appearing in NullFields will be sent to the server as 5183 // null. It is an error if a field in this list has a non-empty value. 5184 // This may be used to include null fields in Patch requests. 5185 NullFields []string `json:"-"` 5186} 5187 5188func (s *QueryParameterTypeStructTypes) MarshalJSON() ([]byte, error) { 5189 type NoMethod QueryParameterTypeStructTypes 5190 raw := NoMethod(*s) 5191 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5192} 5193 5194type QueryParameterValue struct { 5195 // ArrayValues: [Optional] The array values, if this is an array type. 5196 ArrayValues []*QueryParameterValue `json:"arrayValues,omitempty"` 5197 5198 // StructValues: [Optional] The struct field values, in order of the 5199 // struct type's declaration. 5200 StructValues map[string]QueryParameterValue `json:"structValues,omitempty"` 5201 5202 // Value: [Optional] The value of this value, if a simple scalar type. 5203 Value string `json:"value,omitempty"` 5204 5205 // ForceSendFields is a list of field names (e.g. "ArrayValues") to 5206 // unconditionally include in API requests. By default, fields with 5207 // empty values are omitted from API requests. However, any non-pointer, 5208 // non-interface field appearing in ForceSendFields will be sent to the 5209 // server regardless of whether the field is empty or not. This may be 5210 // used to include empty fields in Patch requests. 5211 ForceSendFields []string `json:"-"` 5212 5213 // NullFields is a list of field names (e.g. "ArrayValues") to include 5214 // in API requests with the JSON null value. By default, fields with 5215 // empty values are omitted from API requests. However, any field with 5216 // an empty value appearing in NullFields will be sent to the server as 5217 // null. It is an error if a field in this list has a non-empty value. 5218 // This may be used to include null fields in Patch requests. 5219 NullFields []string `json:"-"` 5220} 5221 5222func (s *QueryParameterValue) MarshalJSON() ([]byte, error) { 5223 type NoMethod QueryParameterValue 5224 raw := NoMethod(*s) 5225 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5226} 5227 5228type QueryRequest struct { 5229 // ConnectionProperties: Connection properties. 5230 ConnectionProperties []*ConnectionProperty `json:"connectionProperties,omitempty"` 5231 5232 // DefaultDataset: [Optional] Specifies the default datasetId and 5233 // projectId to assume for any unqualified table names in the query. If 5234 // not set, all table names in the query string must be qualified in the 5235 // format 'datasetId.tableId'. 5236 DefaultDataset *DatasetReference `json:"defaultDataset,omitempty"` 5237 5238 // DryRun: [Optional] If set to true, BigQuery doesn't run the job. 5239 // Instead, if the query is valid, BigQuery returns statistics about the 5240 // job such as how many bytes would be processed. If the query is 5241 // invalid, an error returns. The default value is false. 5242 DryRun bool `json:"dryRun,omitempty"` 5243 5244 // Kind: The resource type of the request. 5245 Kind string `json:"kind,omitempty"` 5246 5247 // Labels: The labels associated with this job. You can use these to 5248 // organize and group your jobs. Label keys and values can be no longer 5249 // than 63 characters, can only contain lowercase letters, numeric 5250 // characters, underscores and dashes. International characters are 5251 // allowed. Label values are optional. Label keys must start with a 5252 // letter and each label in the list must have a different key. 5253 Labels map[string]string `json:"labels,omitempty"` 5254 5255 // Location: The geographic location where the job should run. See 5256 // details at 5257 // https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 5258 Location string `json:"location,omitempty"` 5259 5260 // MaxResults: [Optional] The maximum number of rows of data to return 5261 // per page of results. Setting this flag to a small value such as 1000 5262 // and then paging through results might improve reliability when the 5263 // query result set is large. In addition to this limit, responses are 5264 // also limited to 10 MB. By default, there is no maximum row count, and 5265 // only the byte limit applies. 5266 MaxResults int64 `json:"maxResults,omitempty"` 5267 5268 // MaximumBytesBilled: [Optional] Limits the bytes billed for this job. 5269 // Queries that will have bytes billed beyond this limit will fail 5270 // (without incurring a charge). If unspecified, this will be set to 5271 // your project default. 5272 MaximumBytesBilled int64 `json:"maximumBytesBilled,omitempty,string"` 5273 5274 // ParameterMode: Standard SQL only. Set to POSITIONAL to use positional 5275 // (?) query parameters or to NAMED to use named (@myparam) query 5276 // parameters in this query. 5277 ParameterMode string `json:"parameterMode,omitempty"` 5278 5279 // PreserveNulls: [Deprecated] This property is deprecated. 5280 PreserveNulls bool `json:"preserveNulls,omitempty"` 5281 5282 // Query: [Required] A query string, following the BigQuery query 5283 // syntax, of the query to execute. Example: "SELECT count(f1) FROM 5284 // [myProjectId:myDatasetId.myTableId]". 5285 Query string `json:"query,omitempty"` 5286 5287 // QueryParameters: Query parameters for Standard SQL queries. 5288 QueryParameters []*QueryParameter `json:"queryParameters,omitempty"` 5289 5290 // RequestId: A unique user provided identifier to ensure idempotent 5291 // behavior for queries. Note that this is different from the job_id. It 5292 // has the following properties: 1. It is case-sensitive, limited to up 5293 // to 36 ASCII characters. A UUID is recommended. 2. Read only queries 5294 // can ignore this token since they are nullipotent by definition. 3. 5295 // For the purposes of idempotency ensured by the request_id, a request 5296 // is considered duplicate of another only if they have the same 5297 // request_id and are actually duplicates. When determining whether a 5298 // request is a duplicate of the previous request, all parameters in the 5299 // request that may affect the behavior are considered. For example, 5300 // query, connection_properties, query_parameters, use_legacy_sql are 5301 // parameters that affect the result and are considered when determining 5302 // whether a request is a duplicate, but properties like timeout_ms 5303 // don't affect the result and are thus not considered. Dry run query 5304 // requests are never considered duplicate of another request. 4. When a 5305 // duplicate mutating query request is detected, it returns: a. the 5306 // results of the mutation if it completes successfully within the 5307 // timeout. b. the running operation if it is still in progress at the 5308 // end of the timeout. 5. Its lifetime is limited to 15 minutes. In 5309 // other words, if two requests are sent with the same request_id, but 5310 // more than 15 minutes apart, idempotency is not guaranteed. 5311 RequestId string `json:"requestId,omitempty"` 5312 5313 // TimeoutMs: [Optional] How long to wait for the query to complete, in 5314 // milliseconds, before the request times out and returns. Note that 5315 // this is only a timeout for the request, not the query. If the query 5316 // takes longer to run than the timeout value, the call returns without 5317 // any results and with the 'jobComplete' flag set to false. You can 5318 // call GetQueryResults() to wait for the query to complete and read the 5319 // results. The default value is 10000 milliseconds (10 seconds). 5320 TimeoutMs int64 `json:"timeoutMs,omitempty"` 5321 5322 // UseLegacySql: Specifies whether to use BigQuery's legacy SQL dialect 5323 // for this query. The default value is true. If set to false, the query 5324 // will use BigQuery's standard SQL: 5325 // https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is 5326 // set to false, the value of flattenResults is ignored; query will be 5327 // run as if flattenResults is false. 5328 // 5329 // Default: true 5330 UseLegacySql *bool `json:"useLegacySql,omitempty"` 5331 5332 // UseQueryCache: [Optional] Whether to look for the result in the query 5333 // cache. The query cache is a best-effort cache that will be flushed 5334 // whenever tables in the query are modified. The default value is true. 5335 // 5336 // Default: true 5337 UseQueryCache *bool `json:"useQueryCache,omitempty"` 5338 5339 // ForceSendFields is a list of field names (e.g. 5340 // "ConnectionProperties") to unconditionally include in API requests. 5341 // By default, fields with empty values are omitted from API requests. 5342 // However, any non-pointer, non-interface field appearing in 5343 // ForceSendFields will be sent to the server regardless of whether the 5344 // field is empty or not. This may be used to include empty fields in 5345 // Patch requests. 5346 ForceSendFields []string `json:"-"` 5347 5348 // NullFields is a list of field names (e.g. "ConnectionProperties") to 5349 // include in API requests with the JSON null value. By default, fields 5350 // with empty values are omitted from API requests. However, any field 5351 // with an empty value appearing in NullFields will be sent to the 5352 // server as null. It is an error if a field in this list has a 5353 // non-empty value. This may be used to include null fields in Patch 5354 // requests. 5355 NullFields []string `json:"-"` 5356} 5357 5358func (s *QueryRequest) MarshalJSON() ([]byte, error) { 5359 type NoMethod QueryRequest 5360 raw := NoMethod(*s) 5361 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5362} 5363 5364type QueryResponse struct { 5365 // CacheHit: Whether the query result was fetched from the query cache. 5366 CacheHit bool `json:"cacheHit,omitempty"` 5367 5368 // Errors: [Output-only] The first errors or warnings encountered during 5369 // the running of the job. The final message includes the number of 5370 // errors that caused the process to stop. Errors here do not 5371 // necessarily mean that the job has completed or was unsuccessful. 5372 Errors []*ErrorProto `json:"errors,omitempty"` 5373 5374 // JobComplete: Whether the query has completed or not. If rows or 5375 // totalRows are present, this will always be true. If this is false, 5376 // totalRows will not be available. 5377 JobComplete bool `json:"jobComplete,omitempty"` 5378 5379 // JobReference: Reference to the Job that was created to run the query. 5380 // This field will be present even if the original request timed out, in 5381 // which case GetQueryResults can be used to read the results once the 5382 // query has completed. Since this API only returns the first page of 5383 // results, subsequent pages can be fetched via the same mechanism 5384 // (GetQueryResults). 5385 JobReference *JobReference `json:"jobReference,omitempty"` 5386 5387 // Kind: The resource type. 5388 Kind string `json:"kind,omitempty"` 5389 5390 // NumDmlAffectedRows: [Output-only] The number of rows affected by a 5391 // DML statement. Present only for DML statements INSERT, UPDATE or 5392 // DELETE. 5393 NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"` 5394 5395 // PageToken: A token used for paging results. 5396 PageToken string `json:"pageToken,omitempty"` 5397 5398 // Rows: An object with as many results as can be contained within the 5399 // maximum permitted reply size. To get any additional rows, you can 5400 // call GetQueryResults and specify the jobReference returned above. 5401 Rows []*TableRow `json:"rows,omitempty"` 5402 5403 // Schema: The schema of the results. Present only when the query 5404 // completes successfully. 5405 Schema *TableSchema `json:"schema,omitempty"` 5406 5407 // TotalBytesProcessed: The total number of bytes processed for this 5408 // query. If this query was a dry run, this is the number of bytes that 5409 // would be processed if the query were run. 5410 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 5411 5412 // TotalRows: The total number of rows in the complete query result set, 5413 // which can be more than the number of rows in this single page of 5414 // results. 5415 TotalRows uint64 `json:"totalRows,omitempty,string"` 5416 5417 // ServerResponse contains the HTTP response code and headers from the 5418 // server. 5419 googleapi.ServerResponse `json:"-"` 5420 5421 // ForceSendFields is a list of field names (e.g. "CacheHit") to 5422 // unconditionally include in API requests. By default, fields with 5423 // empty values are omitted from API requests. However, any non-pointer, 5424 // non-interface field appearing in ForceSendFields will be sent to the 5425 // server regardless of whether the field is empty or not. This may be 5426 // used to include empty fields in Patch requests. 5427 ForceSendFields []string `json:"-"` 5428 5429 // NullFields is a list of field names (e.g. "CacheHit") to include in 5430 // API requests with the JSON null value. By default, fields with empty 5431 // values are omitted from API requests. However, any field with an 5432 // empty value appearing in NullFields will be sent to the server as 5433 // null. It is an error if a field in this list has a non-empty value. 5434 // This may be used to include null fields in Patch requests. 5435 NullFields []string `json:"-"` 5436} 5437 5438func (s *QueryResponse) MarshalJSON() ([]byte, error) { 5439 type NoMethod QueryResponse 5440 raw := NoMethod(*s) 5441 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5442} 5443 5444type QueryTimelineSample struct { 5445 // ActiveUnits: Total number of units currently being processed by 5446 // workers. This does not correspond directly to slot usage. This is the 5447 // largest value observed since the last sample. 5448 ActiveUnits int64 `json:"activeUnits,omitempty,string"` 5449 5450 // CompletedUnits: Total parallel units of work completed by this query. 5451 CompletedUnits int64 `json:"completedUnits,omitempty,string"` 5452 5453 // ElapsedMs: Milliseconds elapsed since the start of query execution. 5454 ElapsedMs int64 `json:"elapsedMs,omitempty,string"` 5455 5456 // PendingUnits: Total parallel units of work remaining for the active 5457 // stages. 5458 PendingUnits int64 `json:"pendingUnits,omitempty,string"` 5459 5460 // TotalSlotMs: Cumulative slot-ms consumed by the query. 5461 TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"` 5462 5463 // ForceSendFields is a list of field names (e.g. "ActiveUnits") to 5464 // unconditionally include in API requests. By default, fields with 5465 // empty values are omitted from API requests. However, any non-pointer, 5466 // non-interface field appearing in ForceSendFields will be sent to the 5467 // server regardless of whether the field is empty or not. This may be 5468 // used to include empty fields in Patch requests. 5469 ForceSendFields []string `json:"-"` 5470 5471 // NullFields is a list of field names (e.g. "ActiveUnits") to include 5472 // in API requests with the JSON null value. By default, fields with 5473 // empty values are omitted from API requests. However, any field with 5474 // an empty value appearing in NullFields will be sent to the server as 5475 // null. It is an error if a field in this list has a non-empty value. 5476 // This may be used to include null fields in Patch requests. 5477 NullFields []string `json:"-"` 5478} 5479 5480func (s *QueryTimelineSample) MarshalJSON() ([]byte, error) { 5481 type NoMethod QueryTimelineSample 5482 raw := NoMethod(*s) 5483 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5484} 5485 5486type RangePartitioning struct { 5487 // Field: [TrustedTester] [Required] The table is partitioned by this 5488 // field. The field must be a top-level NULLABLE/REQUIRED field. The 5489 // only supported type is INTEGER/INT64. 5490 Field string `json:"field,omitempty"` 5491 5492 // Range: [TrustedTester] [Required] Defines the ranges for range 5493 // partitioning. 5494 Range *RangePartitioningRange `json:"range,omitempty"` 5495 5496 // ForceSendFields is a list of field names (e.g. "Field") to 5497 // unconditionally include in API requests. By default, fields with 5498 // empty values are omitted from API requests. However, any non-pointer, 5499 // non-interface field appearing in ForceSendFields will be sent to the 5500 // server regardless of whether the field is empty or not. This may be 5501 // used to include empty fields in Patch requests. 5502 ForceSendFields []string `json:"-"` 5503 5504 // NullFields is a list of field names (e.g. "Field") to include in API 5505 // requests with the JSON null value. By default, fields with empty 5506 // values are omitted from API requests. However, any field with an 5507 // empty value appearing in NullFields will be sent to the server as 5508 // null. It is an error if a field in this list has a non-empty value. 5509 // This may be used to include null fields in Patch requests. 5510 NullFields []string `json:"-"` 5511} 5512 5513func (s *RangePartitioning) MarshalJSON() ([]byte, error) { 5514 type NoMethod RangePartitioning 5515 raw := NoMethod(*s) 5516 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5517} 5518 5519// RangePartitioningRange: [TrustedTester] [Required] Defines the ranges 5520// for range partitioning. 5521type RangePartitioningRange struct { 5522 // End: [TrustedTester] [Required] The end of range partitioning, 5523 // exclusive. 5524 End int64 `json:"end,omitempty,string"` 5525 5526 // Interval: [TrustedTester] [Required] The width of each interval. 5527 Interval int64 `json:"interval,omitempty,string"` 5528 5529 // Start: [TrustedTester] [Required] The start of range partitioning, 5530 // inclusive. 5531 Start int64 `json:"start,omitempty,string"` 5532 5533 // ForceSendFields is a list of field names (e.g. "End") to 5534 // unconditionally include in API requests. By default, fields with 5535 // empty values are omitted from API requests. However, any non-pointer, 5536 // non-interface field appearing in ForceSendFields will be sent to the 5537 // server regardless of whether the field is empty or not. This may be 5538 // used to include empty fields in Patch requests. 5539 ForceSendFields []string `json:"-"` 5540 5541 // NullFields is a list of field names (e.g. "End") to include in API 5542 // requests with the JSON null value. By default, fields with empty 5543 // values are omitted from API requests. However, any field with an 5544 // empty value appearing in NullFields will be sent to the server as 5545 // null. It is an error if a field in this list has a non-empty value. 5546 // This may be used to include null fields in Patch requests. 5547 NullFields []string `json:"-"` 5548} 5549 5550func (s *RangePartitioningRange) MarshalJSON() ([]byte, error) { 5551 type NoMethod RangePartitioningRange 5552 raw := NoMethod(*s) 5553 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5554} 5555 5556// RankingMetrics: Evaluation metrics used by weighted-ALS models 5557// specified by feedback_type=implicit. 5558type RankingMetrics struct { 5559 // AverageRank: Determines the goodness of a ranking by computing the 5560 // percentile rank from the predicted confidence and dividing it by the 5561 // original rank. 5562 AverageRank float64 `json:"averageRank,omitempty"` 5563 5564 // MeanAveragePrecision: Calculates a precision per user for all the 5565 // items by ranking them and then averages all the precisions across all 5566 // the users. 5567 MeanAveragePrecision float64 `json:"meanAveragePrecision,omitempty"` 5568 5569 // MeanSquaredError: Similar to the mean squared error computed in 5570 // regression and explicit recommendation models except instead of 5571 // computing the rating directly, the output from evaluate is computed 5572 // against a preference which is 1 or 0 depending on if the rating 5573 // exists or not. 5574 MeanSquaredError float64 `json:"meanSquaredError,omitempty"` 5575 5576 // NormalizedDiscountedCumulativeGain: A metric to determine the 5577 // goodness of a ranking calculated from the predicted confidence by 5578 // comparing it to an ideal rank measured by the original ratings. 5579 NormalizedDiscountedCumulativeGain float64 `json:"normalizedDiscountedCumulativeGain,omitempty"` 5580 5581 // ForceSendFields is a list of field names (e.g. "AverageRank") to 5582 // unconditionally include in API requests. By default, fields with 5583 // empty values are omitted from API requests. However, any non-pointer, 5584 // non-interface field appearing in ForceSendFields will be sent to the 5585 // server regardless of whether the field is empty or not. This may be 5586 // used to include empty fields in Patch requests. 5587 ForceSendFields []string `json:"-"` 5588 5589 // NullFields is a list of field names (e.g. "AverageRank") to include 5590 // in API requests with the JSON null value. By default, fields with 5591 // empty values are omitted from API requests. However, any field with 5592 // an empty value appearing in NullFields will be sent to the server as 5593 // null. It is an error if a field in this list has a non-empty value. 5594 // This may be used to include null fields in Patch requests. 5595 NullFields []string `json:"-"` 5596} 5597 5598func (s *RankingMetrics) MarshalJSON() ([]byte, error) { 5599 type NoMethod RankingMetrics 5600 raw := NoMethod(*s) 5601 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5602} 5603 5604func (s *RankingMetrics) UnmarshalJSON(data []byte) error { 5605 type NoMethod RankingMetrics 5606 var s1 struct { 5607 AverageRank gensupport.JSONFloat64 `json:"averageRank"` 5608 MeanAveragePrecision gensupport.JSONFloat64 `json:"meanAveragePrecision"` 5609 MeanSquaredError gensupport.JSONFloat64 `json:"meanSquaredError"` 5610 NormalizedDiscountedCumulativeGain gensupport.JSONFloat64 `json:"normalizedDiscountedCumulativeGain"` 5611 *NoMethod 5612 } 5613 s1.NoMethod = (*NoMethod)(s) 5614 if err := json.Unmarshal(data, &s1); err != nil { 5615 return err 5616 } 5617 s.AverageRank = float64(s1.AverageRank) 5618 s.MeanAveragePrecision = float64(s1.MeanAveragePrecision) 5619 s.MeanSquaredError = float64(s1.MeanSquaredError) 5620 s.NormalizedDiscountedCumulativeGain = float64(s1.NormalizedDiscountedCumulativeGain) 5621 return nil 5622} 5623 5624// RegressionMetrics: Evaluation metrics for regression and explicit 5625// feedback type matrix factorization models. 5626type RegressionMetrics struct { 5627 // MeanAbsoluteError: Mean absolute error. 5628 MeanAbsoluteError float64 `json:"meanAbsoluteError,omitempty"` 5629 5630 // MeanSquaredError: Mean squared error. 5631 MeanSquaredError float64 `json:"meanSquaredError,omitempty"` 5632 5633 // MeanSquaredLogError: Mean squared log error. 5634 MeanSquaredLogError float64 `json:"meanSquaredLogError,omitempty"` 5635 5636 // MedianAbsoluteError: Median absolute error. 5637 MedianAbsoluteError float64 `json:"medianAbsoluteError,omitempty"` 5638 5639 // RSquared: R^2 score. 5640 RSquared float64 `json:"rSquared,omitempty"` 5641 5642 // ForceSendFields is a list of field names (e.g. "MeanAbsoluteError") 5643 // to unconditionally include in API requests. By default, fields with 5644 // empty values are omitted from API requests. However, any non-pointer, 5645 // non-interface field appearing in ForceSendFields will be sent to the 5646 // server regardless of whether the field is empty or not. This may be 5647 // used to include empty fields in Patch requests. 5648 ForceSendFields []string `json:"-"` 5649 5650 // NullFields is a list of field names (e.g. "MeanAbsoluteError") to 5651 // include in API requests with the JSON null value. By default, fields 5652 // with empty values are omitted from API requests. However, any field 5653 // with an empty value appearing in NullFields will be sent to the 5654 // server as null. It is an error if a field in this list has a 5655 // non-empty value. This may be used to include null fields in Patch 5656 // requests. 5657 NullFields []string `json:"-"` 5658} 5659 5660func (s *RegressionMetrics) MarshalJSON() ([]byte, error) { 5661 type NoMethod RegressionMetrics 5662 raw := NoMethod(*s) 5663 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5664} 5665 5666func (s *RegressionMetrics) UnmarshalJSON(data []byte) error { 5667 type NoMethod RegressionMetrics 5668 var s1 struct { 5669 MeanAbsoluteError gensupport.JSONFloat64 `json:"meanAbsoluteError"` 5670 MeanSquaredError gensupport.JSONFloat64 `json:"meanSquaredError"` 5671 MeanSquaredLogError gensupport.JSONFloat64 `json:"meanSquaredLogError"` 5672 MedianAbsoluteError gensupport.JSONFloat64 `json:"medianAbsoluteError"` 5673 RSquared gensupport.JSONFloat64 `json:"rSquared"` 5674 *NoMethod 5675 } 5676 s1.NoMethod = (*NoMethod)(s) 5677 if err := json.Unmarshal(data, &s1); err != nil { 5678 return err 5679 } 5680 s.MeanAbsoluteError = float64(s1.MeanAbsoluteError) 5681 s.MeanSquaredError = float64(s1.MeanSquaredError) 5682 s.MeanSquaredLogError = float64(s1.MeanSquaredLogError) 5683 s.MedianAbsoluteError = float64(s1.MedianAbsoluteError) 5684 s.RSquared = float64(s1.RSquared) 5685 return nil 5686} 5687 5688// Routine: A user-defined function or a stored procedure. 5689type Routine struct { 5690 // Arguments: Optional. 5691 Arguments []*Argument `json:"arguments,omitempty"` 5692 5693 // CreationTime: Output only. The time when this routine was created, in 5694 // milliseconds since the epoch. 5695 CreationTime int64 `json:"creationTime,omitempty,string"` 5696 5697 // DefinitionBody: Required. The body of the routine. For functions, 5698 // this is the expression in the AS clause. If language=SQL, it is the 5699 // substring inside (but excluding) the parentheses. For example, for 5700 // the function created with the following statement: `CREATE FUNCTION 5701 // JoinLines(x string, y string) as (concat(x, "\n", y))` The 5702 // definition_body is `concat(x, "\n", y)` (\n is not replaced with 5703 // linebreak). If language=JAVASCRIPT, it is the evaluated string in the 5704 // AS clause. For example, for the function created with the following 5705 // statement: `CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return 5706 // "\n";\n'` The definition_body is `return "\n";\n` Note that both \n 5707 // are replaced with linebreaks. 5708 DefinitionBody string `json:"definitionBody,omitempty"` 5709 5710 // Description: Optional. [Experimental] The description of the routine 5711 // if defined. 5712 Description string `json:"description,omitempty"` 5713 5714 // DeterminismLevel: Optional. [Experimental] The determinism level of 5715 // the JavaScript UDF if defined. 5716 // 5717 // Possible values: 5718 // "DETERMINISM_LEVEL_UNSPECIFIED" - The determinism of the UDF is 5719 // unspecified. 5720 // "DETERMINISTIC" - The UDF is deterministic, meaning that 2 function 5721 // calls with the same inputs always produce the same result, even 5722 // across 2 query runs. 5723 // "NOT_DETERMINISTIC" - The UDF is not deterministic. 5724 DeterminismLevel string `json:"determinismLevel,omitempty"` 5725 5726 // Etag: Output only. A hash of this resource. 5727 Etag string `json:"etag,omitempty"` 5728 5729 // ImportedLibraries: Optional. If language = "JAVASCRIPT", this field 5730 // stores the path of the imported JAVASCRIPT libraries. 5731 ImportedLibraries []string `json:"importedLibraries,omitempty"` 5732 5733 // Language: Optional. Defaults to "SQL". 5734 // 5735 // Possible values: 5736 // "LANGUAGE_UNSPECIFIED" 5737 // "SQL" - SQL language. 5738 // "JAVASCRIPT" - JavaScript language. 5739 Language string `json:"language,omitempty"` 5740 5741 // LastModifiedTime: Output only. The time when this routine was last 5742 // modified, in milliseconds since the epoch. 5743 LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"` 5744 5745 // ReturnType: Optional if language = "SQL"; required otherwise. If 5746 // absent, the return type is inferred from definition_body at query 5747 // time in each query that references this routine. If present, then the 5748 // evaluated result will be cast to the specified returned type at query 5749 // time. For example, for the functions created with the following 5750 // statements: * `CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS 5751 // FLOAT64 AS (x + y);` * `CREATE FUNCTION Increment(x FLOAT64) AS 5752 // (Add(x, 1));` * `CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 5753 // AS (Add(x, -1));` The return_type is `{type_kind: "FLOAT64"}` for 5754 // `Add` and `Decrement`, and is absent for `Increment` (inferred as 5755 // FLOAT64 at query time). Suppose the function `Add` is replaced by 5756 // `CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y);` Then 5757 // the inferred return type of `Increment` is automatically changed to 5758 // INT64 at query time, while the return type of `Decrement` remains 5759 // FLOAT64. 5760 ReturnType *StandardSqlDataType `json:"returnType,omitempty"` 5761 5762 // RoutineReference: Required. Reference describing the ID of this 5763 // routine. 5764 RoutineReference *RoutineReference `json:"routineReference,omitempty"` 5765 5766 // RoutineType: Required. The type of routine. 5767 // 5768 // Possible values: 5769 // "ROUTINE_TYPE_UNSPECIFIED" 5770 // "SCALAR_FUNCTION" - Non-builtin permanent scalar function. 5771 // "PROCEDURE" - Stored procedure. 5772 RoutineType string `json:"routineType,omitempty"` 5773 5774 // ServerResponse contains the HTTP response code and headers from the 5775 // server. 5776 googleapi.ServerResponse `json:"-"` 5777 5778 // ForceSendFields is a list of field names (e.g. "Arguments") to 5779 // unconditionally include in API requests. By default, fields with 5780 // empty values are omitted from API requests. However, any non-pointer, 5781 // non-interface field appearing in ForceSendFields will be sent to the 5782 // server regardless of whether the field is empty or not. This may be 5783 // used to include empty fields in Patch requests. 5784 ForceSendFields []string `json:"-"` 5785 5786 // NullFields is a list of field names (e.g. "Arguments") to include in 5787 // API requests with the JSON null value. By default, fields with empty 5788 // values are omitted from API requests. However, any field with an 5789 // empty value appearing in NullFields will be sent to the server as 5790 // null. It is an error if a field in this list has a non-empty value. 5791 // This may be used to include null fields in Patch requests. 5792 NullFields []string `json:"-"` 5793} 5794 5795func (s *Routine) MarshalJSON() ([]byte, error) { 5796 type NoMethod Routine 5797 raw := NoMethod(*s) 5798 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5799} 5800 5801type RoutineReference struct { 5802 // DatasetId: [Required] The ID of the dataset containing this routine. 5803 DatasetId string `json:"datasetId,omitempty"` 5804 5805 // ProjectId: [Required] The ID of the project containing this routine. 5806 ProjectId string `json:"projectId,omitempty"` 5807 5808 // RoutineId: [Required] The ID of the routine. The ID must contain only 5809 // letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum 5810 // length is 256 characters. 5811 RoutineId string `json:"routineId,omitempty"` 5812 5813 // ForceSendFields is a list of field names (e.g. "DatasetId") to 5814 // unconditionally include in API requests. By default, fields with 5815 // empty values are omitted from API requests. However, any non-pointer, 5816 // non-interface field appearing in ForceSendFields will be sent to the 5817 // server regardless of whether the field is empty or not. This may be 5818 // used to include empty fields in Patch requests. 5819 ForceSendFields []string `json:"-"` 5820 5821 // NullFields is a list of field names (e.g. "DatasetId") to include in 5822 // API requests with the JSON null value. By default, fields with empty 5823 // values are omitted from API requests. However, any field with an 5824 // empty value appearing in NullFields will be sent to the server as 5825 // null. It is an error if a field in this list has a non-empty value. 5826 // This may be used to include null fields in Patch requests. 5827 NullFields []string `json:"-"` 5828} 5829 5830func (s *RoutineReference) MarshalJSON() ([]byte, error) { 5831 type NoMethod RoutineReference 5832 raw := NoMethod(*s) 5833 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5834} 5835 5836// Row: A single row in the confusion matrix. 5837type Row struct { 5838 // ActualLabel: The original label of this row. 5839 ActualLabel string `json:"actualLabel,omitempty"` 5840 5841 // Entries: Info describing predicted label distribution. 5842 Entries []*Entry `json:"entries,omitempty"` 5843 5844 // ForceSendFields is a list of field names (e.g. "ActualLabel") to 5845 // unconditionally include in API requests. By default, fields with 5846 // empty values are omitted from API requests. However, any non-pointer, 5847 // non-interface field appearing in ForceSendFields will be sent to the 5848 // server regardless of whether the field is empty or not. This may be 5849 // used to include empty fields in Patch requests. 5850 ForceSendFields []string `json:"-"` 5851 5852 // NullFields is a list of field names (e.g. "ActualLabel") to include 5853 // in API requests with the JSON null value. By default, fields with 5854 // empty values are omitted from API requests. However, any field with 5855 // an empty value appearing in NullFields will be sent to the server as 5856 // null. It is an error if a field in this list has a non-empty value. 5857 // This may be used to include null fields in Patch requests. 5858 NullFields []string `json:"-"` 5859} 5860 5861func (s *Row) MarshalJSON() ([]byte, error) { 5862 type NoMethod Row 5863 raw := NoMethod(*s) 5864 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5865} 5866 5867// RowAccessPolicy: Represents access on a subset of rows on the 5868// specified table, defined by its filter predicate. Access to the 5869// subset of rows is controlled by its IAM policy. 5870type RowAccessPolicy struct { 5871 // CreationTime: Output only. The time when this row access policy was 5872 // created, in milliseconds since the epoch. 5873 CreationTime string `json:"creationTime,omitempty"` 5874 5875 // Etag: Output only. A hash of this resource. 5876 Etag string `json:"etag,omitempty"` 5877 5878 // FilterPredicate: Required. A SQL boolean expression that represents 5879 // the rows defined by this row access policy, similar to the boolean 5880 // expression in a WHERE clause of a SELECT query on a table. References 5881 // to other tables, routines, and temporary functions are not supported. 5882 // Examples: region="EU" date_field = CAST('2019-9-27' as DATE) 5883 // nullable_field is not NULL numeric_field BETWEEN 1.0 AND 5.0 5884 FilterPredicate string `json:"filterPredicate,omitempty"` 5885 5886 // LastModifiedTime: Output only. The time when this row access policy 5887 // was last modified, in milliseconds since the epoch. 5888 LastModifiedTime string `json:"lastModifiedTime,omitempty"` 5889 5890 // RowAccessPolicyReference: Required. Reference describing the ID of 5891 // this row access policy. 5892 RowAccessPolicyReference *RowAccessPolicyReference `json:"rowAccessPolicyReference,omitempty"` 5893 5894 // ForceSendFields is a list of field names (e.g. "CreationTime") to 5895 // unconditionally include in API requests. By default, fields with 5896 // empty values are omitted from API requests. However, any non-pointer, 5897 // non-interface field appearing in ForceSendFields will be sent to the 5898 // server regardless of whether the field is empty or not. This may be 5899 // used to include empty fields in Patch requests. 5900 ForceSendFields []string `json:"-"` 5901 5902 // NullFields is a list of field names (e.g. "CreationTime") to include 5903 // in API requests with the JSON null value. By default, fields with 5904 // empty values are omitted from API requests. However, any field with 5905 // an empty value appearing in NullFields will be sent to the server as 5906 // null. It is an error if a field in this list has a non-empty value. 5907 // This may be used to include null fields in Patch requests. 5908 NullFields []string `json:"-"` 5909} 5910 5911func (s *RowAccessPolicy) MarshalJSON() ([]byte, error) { 5912 type NoMethod RowAccessPolicy 5913 raw := NoMethod(*s) 5914 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5915} 5916 5917type RowAccessPolicyReference struct { 5918 // DatasetId: [Required] The ID of the dataset containing this row 5919 // access policy. 5920 DatasetId string `json:"datasetId,omitempty"` 5921 5922 // PolicyId: [Required] The ID of the row access policy. The ID must 5923 // contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). 5924 // The maximum length is 256 characters. 5925 PolicyId string `json:"policyId,omitempty"` 5926 5927 // ProjectId: [Required] The ID of the project containing this row 5928 // access policy. 5929 ProjectId string `json:"projectId,omitempty"` 5930 5931 // TableId: [Required] The ID of the table containing this row access 5932 // policy. 5933 TableId string `json:"tableId,omitempty"` 5934 5935 // ForceSendFields is a list of field names (e.g. "DatasetId") to 5936 // unconditionally include in API requests. By default, fields with 5937 // empty values are omitted from API requests. However, any non-pointer, 5938 // non-interface field appearing in ForceSendFields will be sent to the 5939 // server regardless of whether the field is empty or not. This may be 5940 // used to include empty fields in Patch requests. 5941 ForceSendFields []string `json:"-"` 5942 5943 // NullFields is a list of field names (e.g. "DatasetId") to include in 5944 // API requests with the JSON null value. By default, fields with empty 5945 // values are omitted from API requests. However, any field with an 5946 // empty value appearing in NullFields will be sent to the server as 5947 // null. It is an error if a field in this list has a non-empty value. 5948 // This may be used to include null fields in Patch requests. 5949 NullFields []string `json:"-"` 5950} 5951 5952func (s *RowAccessPolicyReference) MarshalJSON() ([]byte, error) { 5953 type NoMethod RowAccessPolicyReference 5954 raw := NoMethod(*s) 5955 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5956} 5957 5958type RowLevelSecurityStatistics struct { 5959 // RowLevelSecurityApplied: [Output-only] [Preview] Whether any accessed 5960 // data was protected by row access policies. 5961 RowLevelSecurityApplied bool `json:"rowLevelSecurityApplied,omitempty"` 5962 5963 // ForceSendFields is a list of field names (e.g. 5964 // "RowLevelSecurityApplied") to unconditionally include in API 5965 // requests. By default, fields with empty values are omitted from API 5966 // requests. However, any non-pointer, non-interface field appearing in 5967 // ForceSendFields will be sent to the server regardless of whether the 5968 // field is empty or not. This may be used to include empty fields in 5969 // Patch requests. 5970 ForceSendFields []string `json:"-"` 5971 5972 // NullFields is a list of field names (e.g. "RowLevelSecurityApplied") 5973 // to include in API requests with the JSON null value. By default, 5974 // fields with empty values are omitted from API requests. However, any 5975 // field with an empty value appearing in NullFields will be sent to the 5976 // server as null. It is an error if a field in this list has a 5977 // non-empty value. This may be used to include null fields in Patch 5978 // requests. 5979 NullFields []string `json:"-"` 5980} 5981 5982func (s *RowLevelSecurityStatistics) MarshalJSON() ([]byte, error) { 5983 type NoMethod RowLevelSecurityStatistics 5984 raw := NoMethod(*s) 5985 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5986} 5987 5988type ScriptStackFrame struct { 5989 // EndColumn: [Output-only] One-based end column. 5990 EndColumn int64 `json:"endColumn,omitempty"` 5991 5992 // EndLine: [Output-only] One-based end line. 5993 EndLine int64 `json:"endLine,omitempty"` 5994 5995 // ProcedureId: [Output-only] Name of the active procedure, empty if in 5996 // a top-level script. 5997 ProcedureId string `json:"procedureId,omitempty"` 5998 5999 // StartColumn: [Output-only] One-based start column. 6000 StartColumn int64 `json:"startColumn,omitempty"` 6001 6002 // StartLine: [Output-only] One-based start line. 6003 StartLine int64 `json:"startLine,omitempty"` 6004 6005 // Text: [Output-only] Text of the current statement/expression. 6006 Text string `json:"text,omitempty"` 6007 6008 // ForceSendFields is a list of field names (e.g. "EndColumn") to 6009 // unconditionally include in API requests. By default, fields with 6010 // empty values are omitted from API requests. However, any non-pointer, 6011 // non-interface field appearing in ForceSendFields will be sent to the 6012 // server regardless of whether the field is empty or not. This may be 6013 // used to include empty fields in Patch requests. 6014 ForceSendFields []string `json:"-"` 6015 6016 // NullFields is a list of field names (e.g. "EndColumn") to include in 6017 // API requests with the JSON null value. By default, fields with empty 6018 // values are omitted from API requests. However, any field with an 6019 // empty value appearing in NullFields will be sent to the server as 6020 // null. It is an error if a field in this list has a non-empty value. 6021 // This may be used to include null fields in Patch requests. 6022 NullFields []string `json:"-"` 6023} 6024 6025func (s *ScriptStackFrame) MarshalJSON() ([]byte, error) { 6026 type NoMethod ScriptStackFrame 6027 raw := NoMethod(*s) 6028 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6029} 6030 6031type ScriptStatistics struct { 6032 // EvaluationKind: [Output-only] Whether this child job was a statement 6033 // or expression. 6034 EvaluationKind string `json:"evaluationKind,omitempty"` 6035 6036 // StackFrames: Stack trace showing the line/column/procedure name of 6037 // each frame on the stack at the point where the current evaluation 6038 // happened. The leaf frame is first, the primary script is last. Never 6039 // empty. 6040 StackFrames []*ScriptStackFrame `json:"stackFrames,omitempty"` 6041 6042 // ForceSendFields is a list of field names (e.g. "EvaluationKind") to 6043 // unconditionally include in API requests. By default, fields with 6044 // empty values are omitted from API requests. However, any non-pointer, 6045 // non-interface field appearing in ForceSendFields will be sent to the 6046 // server regardless of whether the field is empty or not. This may be 6047 // used to include empty fields in Patch requests. 6048 ForceSendFields []string `json:"-"` 6049 6050 // NullFields is a list of field names (e.g. "EvaluationKind") to 6051 // include in API requests with the JSON null value. By default, fields 6052 // with empty values are omitted from API requests. However, any field 6053 // with an empty value appearing in NullFields will be sent to the 6054 // server as null. It is an error if a field in this list has a 6055 // non-empty value. This may be used to include null fields in Patch 6056 // requests. 6057 NullFields []string `json:"-"` 6058} 6059 6060func (s *ScriptStatistics) MarshalJSON() ([]byte, error) { 6061 type NoMethod ScriptStatistics 6062 raw := NoMethod(*s) 6063 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6064} 6065 6066// SetIamPolicyRequest: Request message for `SetIamPolicy` method. 6067type SetIamPolicyRequest struct { 6068 // Policy: REQUIRED: The complete policy to be applied to the 6069 // `resource`. The size of the policy is limited to a few 10s of KB. An 6070 // empty policy is a valid policy but certain Cloud Platform services 6071 // (such as Projects) might reject them. 6072 Policy *Policy `json:"policy,omitempty"` 6073 6074 // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the 6075 // policy to modify. Only the fields in the mask will be modified. If no 6076 // mask is provided, the following default mask is used: `paths: 6077 // "bindings, etag" 6078 UpdateMask string `json:"updateMask,omitempty"` 6079 6080 // ForceSendFields is a list of field names (e.g. "Policy") to 6081 // unconditionally include in API requests. By default, fields with 6082 // empty values are omitted from API requests. However, any non-pointer, 6083 // non-interface field appearing in ForceSendFields will be sent to the 6084 // server regardless of whether the field is empty or not. This may be 6085 // used to include empty fields in Patch requests. 6086 ForceSendFields []string `json:"-"` 6087 6088 // NullFields is a list of field names (e.g. "Policy") to include in API 6089 // requests with the JSON null value. By default, fields with empty 6090 // values are omitted from API requests. However, any field with an 6091 // empty value appearing in NullFields will be sent to the server as 6092 // null. It is an error if a field in this list has a non-empty value. 6093 // This may be used to include null fields in Patch requests. 6094 NullFields []string `json:"-"` 6095} 6096 6097func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { 6098 type NoMethod SetIamPolicyRequest 6099 raw := NoMethod(*s) 6100 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6101} 6102 6103type SnapshotDefinition struct { 6104 // BaseTableReference: [Required] Reference describing the ID of the 6105 // table that is snapshotted. 6106 BaseTableReference *TableReference `json:"baseTableReference,omitempty"` 6107 6108 // SnapshotTime: [Required] The time at which the base table was 6109 // snapshot. 6110 SnapshotTime string `json:"snapshotTime,omitempty"` 6111 6112 // ForceSendFields is a list of field names (e.g. "BaseTableReference") 6113 // to unconditionally include in API requests. By default, fields with 6114 // empty values are omitted from API requests. However, any non-pointer, 6115 // non-interface field appearing in ForceSendFields will be sent to the 6116 // server regardless of whether the field is empty or not. This may be 6117 // used to include empty fields in Patch requests. 6118 ForceSendFields []string `json:"-"` 6119 6120 // NullFields is a list of field names (e.g. "BaseTableReference") to 6121 // include in API requests with the JSON null value. By default, fields 6122 // with empty values are omitted from API requests. However, any field 6123 // with an empty value appearing in NullFields will be sent to the 6124 // server as null. It is an error if a field in this list has a 6125 // non-empty value. This may be used to include null fields in Patch 6126 // requests. 6127 NullFields []string `json:"-"` 6128} 6129 6130func (s *SnapshotDefinition) MarshalJSON() ([]byte, error) { 6131 type NoMethod SnapshotDefinition 6132 raw := NoMethod(*s) 6133 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6134} 6135 6136// StandardSqlDataType: The type of a variable, e.g., a function 6137// argument. Examples: INT64: {type_kind="INT64"} ARRAY: 6138// {type_kind="ARRAY", array_element_type="STRING"} STRUCT>: 6139// {type_kind="STRUCT", struct_type={fields=[ {name="x", 6140// type={type_kind="STRING"}}, {name="y", type={type_kind="ARRAY", 6141// array_element_type="DATE"}} ]}} 6142type StandardSqlDataType struct { 6143 // ArrayElementType: The type of the array's elements, if type_kind = 6144 // "ARRAY". 6145 ArrayElementType *StandardSqlDataType `json:"arrayElementType,omitempty"` 6146 6147 // StructType: The fields of this struct, in order, if type_kind = 6148 // "STRUCT". 6149 StructType *StandardSqlStructType `json:"structType,omitempty"` 6150 6151 // TypeKind: Required. The top level type of this field. Can be any 6152 // standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 6153 // 6154 // Possible values: 6155 // "TYPE_KIND_UNSPECIFIED" - Invalid type. 6156 // "INT64" - Encoded as a string in decimal format. 6157 // "BOOL" - Encoded as a boolean "false" or "true". 6158 // "FLOAT64" - Encoded as a number, or string "NaN", "Infinity" or 6159 // "-Infinity". 6160 // "STRING" - Encoded as a string value. 6161 // "BYTES" - Encoded as a base64 string per RFC 4648, section 4. 6162 // "TIMESTAMP" - Encoded as an RFC 3339 timestamp with mandatory "Z" 6163 // time zone string: 1985-04-12T23:20:50.52Z 6164 // "DATE" - Encoded as RFC 3339 full-date format string: 1985-04-12 6165 // "TIME" - Encoded as RFC 3339 partial-time format string: 6166 // 23:20:50.52 6167 // "DATETIME" - Encoded as RFC 3339 full-date "T" partial-time: 6168 // 1985-04-12T23:20:50.52 6169 // "GEOGRAPHY" - Encoded as WKT 6170 // "NUMERIC" - Encoded as a decimal string. 6171 // "BIGNUMERIC" - Encoded as a decimal string. 6172 // "ARRAY" - Encoded as a list with types matching Type.array_type. 6173 // "STRUCT" - Encoded as a list with fields of type 6174 // Type.struct_type[i]. List is used because a JSON object cannot have 6175 // duplicate field names. 6176 TypeKind string `json:"typeKind,omitempty"` 6177 6178 // ForceSendFields is a list of field names (e.g. "ArrayElementType") to 6179 // unconditionally include in API requests. By default, fields with 6180 // empty values are omitted from API requests. However, any non-pointer, 6181 // non-interface field appearing in ForceSendFields will be sent to the 6182 // server regardless of whether the field is empty or not. This may be 6183 // used to include empty fields in Patch requests. 6184 ForceSendFields []string `json:"-"` 6185 6186 // NullFields is a list of field names (e.g. "ArrayElementType") to 6187 // include in API requests with the JSON null value. By default, fields 6188 // with empty values are omitted from API requests. However, any field 6189 // with an empty value appearing in NullFields will be sent to the 6190 // server as null. It is an error if a field in this list has a 6191 // non-empty value. This may be used to include null fields in Patch 6192 // requests. 6193 NullFields []string `json:"-"` 6194} 6195 6196func (s *StandardSqlDataType) MarshalJSON() ([]byte, error) { 6197 type NoMethod StandardSqlDataType 6198 raw := NoMethod(*s) 6199 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6200} 6201 6202// StandardSqlField: A field or a column. 6203type StandardSqlField struct { 6204 // Name: Optional. The name of this field. Can be absent for struct 6205 // fields. 6206 Name string `json:"name,omitempty"` 6207 6208 // Type: Optional. The type of this parameter. Absent if not explicitly 6209 // specified (e.g., CREATE FUNCTION statement can omit the return type; 6210 // in this case the output parameter does not have this "type" field). 6211 Type *StandardSqlDataType `json:"type,omitempty"` 6212 6213 // ForceSendFields is a list of field names (e.g. "Name") to 6214 // unconditionally include in API requests. By default, fields with 6215 // empty values are omitted from API requests. However, any non-pointer, 6216 // non-interface field appearing in ForceSendFields will be sent to the 6217 // server regardless of whether the field is empty or not. This may be 6218 // used to include empty fields in Patch requests. 6219 ForceSendFields []string `json:"-"` 6220 6221 // NullFields is a list of field names (e.g. "Name") to include in API 6222 // requests with the JSON null value. By default, fields with empty 6223 // values are omitted from API requests. However, any field with an 6224 // empty value appearing in NullFields will be sent to the server as 6225 // null. It is an error if a field in this list has a non-empty value. 6226 // This may be used to include null fields in Patch requests. 6227 NullFields []string `json:"-"` 6228} 6229 6230func (s *StandardSqlField) MarshalJSON() ([]byte, error) { 6231 type NoMethod StandardSqlField 6232 raw := NoMethod(*s) 6233 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6234} 6235 6236type StandardSqlStructType struct { 6237 Fields []*StandardSqlField `json:"fields,omitempty"` 6238 6239 // ForceSendFields is a list of field names (e.g. "Fields") to 6240 // unconditionally include in API requests. By default, fields with 6241 // empty values are omitted from API requests. However, any non-pointer, 6242 // non-interface field appearing in ForceSendFields will be sent to the 6243 // server regardless of whether the field is empty or not. This may be 6244 // used to include empty fields in Patch requests. 6245 ForceSendFields []string `json:"-"` 6246 6247 // NullFields is a list of field names (e.g. "Fields") to include in API 6248 // requests with the JSON null value. By default, fields with empty 6249 // values are omitted from API requests. However, any field with an 6250 // empty value appearing in NullFields will be sent to the server as 6251 // null. It is an error if a field in this list has a non-empty value. 6252 // This may be used to include null fields in Patch requests. 6253 NullFields []string `json:"-"` 6254} 6255 6256func (s *StandardSqlStructType) MarshalJSON() ([]byte, error) { 6257 type NoMethod StandardSqlStructType 6258 raw := NoMethod(*s) 6259 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6260} 6261 6262type Streamingbuffer struct { 6263 // EstimatedBytes: [Output-only] A lower-bound estimate of the number of 6264 // bytes currently in the streaming buffer. 6265 EstimatedBytes uint64 `json:"estimatedBytes,omitempty,string"` 6266 6267 // EstimatedRows: [Output-only] A lower-bound estimate of the number of 6268 // rows currently in the streaming buffer. 6269 EstimatedRows uint64 `json:"estimatedRows,omitempty,string"` 6270 6271 // OldestEntryTime: [Output-only] Contains the timestamp of the oldest 6272 // entry in the streaming buffer, in milliseconds since the epoch, if 6273 // the streaming buffer is available. 6274 OldestEntryTime uint64 `json:"oldestEntryTime,omitempty,string"` 6275 6276 // ForceSendFields is a list of field names (e.g. "EstimatedBytes") to 6277 // unconditionally include in API requests. By default, fields with 6278 // empty values are omitted from API requests. However, any non-pointer, 6279 // non-interface field appearing in ForceSendFields will be sent to the 6280 // server regardless of whether the field is empty or not. This may be 6281 // used to include empty fields in Patch requests. 6282 ForceSendFields []string `json:"-"` 6283 6284 // NullFields is a list of field names (e.g. "EstimatedBytes") to 6285 // include in API requests with the JSON null value. By default, fields 6286 // with empty values are omitted from API requests. However, any field 6287 // with an empty value appearing in NullFields will be sent to the 6288 // server as null. It is an error if a field in this list has a 6289 // non-empty value. This may be used to include null fields in Patch 6290 // requests. 6291 NullFields []string `json:"-"` 6292} 6293 6294func (s *Streamingbuffer) MarshalJSON() ([]byte, error) { 6295 type NoMethod Streamingbuffer 6296 raw := NoMethod(*s) 6297 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6298} 6299 6300type Table struct { 6301 // Clustering: [Beta] Clustering specification for the table. Must be 6302 // specified with partitioning, data in the table will be first 6303 // partitioned and subsequently clustered. 6304 Clustering *Clustering `json:"clustering,omitempty"` 6305 6306 // CreationTime: [Output-only] The time when this table was created, in 6307 // milliseconds since the epoch. 6308 CreationTime int64 `json:"creationTime,omitempty,string"` 6309 6310 // Description: [Optional] A user-friendly description of this table. 6311 Description string `json:"description,omitempty"` 6312 6313 // EncryptionConfiguration: Custom encryption configuration (e.g., Cloud 6314 // KMS keys). 6315 EncryptionConfiguration *EncryptionConfiguration `json:"encryptionConfiguration,omitempty"` 6316 6317 // Etag: [Output-only] A hash of the table metadata. Used to ensure 6318 // there were no concurrent modifications to the resource when 6319 // attempting an update. Not guaranteed to change when the table 6320 // contents or the fields numRows, numBytes, numLongTermBytes or 6321 // lastModifiedTime change. 6322 Etag string `json:"etag,omitempty"` 6323 6324 // ExpirationTime: [Optional] The time when this table expires, in 6325 // milliseconds since the epoch. If not present, the table will persist 6326 // indefinitely. Expired tables will be deleted and their storage 6327 // reclaimed. The defaultTableExpirationMs property of the encapsulating 6328 // dataset can be used to set a default expirationTime on newly created 6329 // tables. 6330 ExpirationTime int64 `json:"expirationTime,omitempty,string"` 6331 6332 // ExternalDataConfiguration: [Optional] Describes the data format, 6333 // location, and other properties of a table stored outside of BigQuery. 6334 // By defining these properties, the data source can then be queried as 6335 // if it were a standard BigQuery table. 6336 ExternalDataConfiguration *ExternalDataConfiguration `json:"externalDataConfiguration,omitempty"` 6337 6338 // FriendlyName: [Optional] A descriptive name for this table. 6339 FriendlyName string `json:"friendlyName,omitempty"` 6340 6341 // Id: [Output-only] An opaque ID uniquely identifying the table. 6342 Id string `json:"id,omitempty"` 6343 6344 // Kind: [Output-only] The type of the resource. 6345 Kind string `json:"kind,omitempty"` 6346 6347 // Labels: The labels associated with this table. You can use these to 6348 // organize and group your tables. Label keys and values can be no 6349 // longer than 63 characters, can only contain lowercase letters, 6350 // numeric characters, underscores and dashes. International characters 6351 // are allowed. Label values are optional. Label keys must start with a 6352 // letter and each label in the list must have a different key. 6353 Labels map[string]string `json:"labels,omitempty"` 6354 6355 // LastModifiedTime: [Output-only] The time when this table was last 6356 // modified, in milliseconds since the epoch. 6357 LastModifiedTime uint64 `json:"lastModifiedTime,omitempty,string"` 6358 6359 // Location: [Output-only] The geographic location where the table 6360 // resides. This value is inherited from the dataset. 6361 Location string `json:"location,omitempty"` 6362 6363 // MaterializedView: [Optional] Materialized view definition. 6364 MaterializedView *MaterializedViewDefinition `json:"materializedView,omitempty"` 6365 6366 // Model: [Output-only, Beta] Present iff this table represents a ML 6367 // model. Describes the training information for the model, and it is 6368 // required to run 'PREDICT' queries. 6369 Model *ModelDefinition `json:"model,omitempty"` 6370 6371 // NumBytes: [Output-only] The size of this table in bytes, excluding 6372 // any data in the streaming buffer. 6373 NumBytes int64 `json:"numBytes,omitempty,string"` 6374 6375 // NumLongTermBytes: [Output-only] The number of bytes in the table that 6376 // are considered "long-term storage". 6377 NumLongTermBytes int64 `json:"numLongTermBytes,omitempty,string"` 6378 6379 // NumPhysicalBytes: [Output-only] [TrustedTester] The physical size of 6380 // this table in bytes, excluding any data in the streaming buffer. This 6381 // includes compression and storage used for time travel. 6382 NumPhysicalBytes int64 `json:"numPhysicalBytes,omitempty,string"` 6383 6384 // NumRows: [Output-only] The number of rows of data in this table, 6385 // excluding any data in the streaming buffer. 6386 NumRows uint64 `json:"numRows,omitempty,string"` 6387 6388 // RangePartitioning: [TrustedTester] Range partitioning specification 6389 // for this table. Only one of timePartitioning and rangePartitioning 6390 // should be specified. 6391 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 6392 6393 // RequirePartitionFilter: [Optional] If set to true, queries over this 6394 // table require a partition filter that can be used for partition 6395 // elimination to be specified. 6396 RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"` 6397 6398 // Schema: [Optional] Describes the schema of this table. 6399 Schema *TableSchema `json:"schema,omitempty"` 6400 6401 // SelfLink: [Output-only] A URL that can be used to access this 6402 // resource again. 6403 SelfLink string `json:"selfLink,omitempty"` 6404 6405 // SnapshotDefinition: [Output-only] Snapshot definition. 6406 SnapshotDefinition *SnapshotDefinition `json:"snapshotDefinition,omitempty"` 6407 6408 // StreamingBuffer: [Output-only] Contains information regarding this 6409 // table's streaming buffer, if one is present. This field will be 6410 // absent if the table is not being streamed to or if there is no data 6411 // in the streaming buffer. 6412 StreamingBuffer *Streamingbuffer `json:"streamingBuffer,omitempty"` 6413 6414 // TableReference: [Required] Reference describing the ID of this table. 6415 TableReference *TableReference `json:"tableReference,omitempty"` 6416 6417 // TimePartitioning: Time-based partitioning specification for this 6418 // table. Only one of timePartitioning and rangePartitioning should be 6419 // specified. 6420 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 6421 6422 // Type: [Output-only] Describes the table type. The following values 6423 // are supported: TABLE: A normal BigQuery table. VIEW: A virtual table 6424 // defined by a SQL query. SNAPSHOT: An immutable, read-only table that 6425 // is a copy of another table. [TrustedTester] MATERIALIZED_VIEW: SQL 6426 // query whose result is persisted. EXTERNAL: A table that references 6427 // data stored in an external storage system, such as Google Cloud 6428 // Storage. The default value is TABLE. 6429 Type string `json:"type,omitempty"` 6430 6431 // View: [Optional] The view definition. 6432 View *ViewDefinition `json:"view,omitempty"` 6433 6434 // ServerResponse contains the HTTP response code and headers from the 6435 // server. 6436 googleapi.ServerResponse `json:"-"` 6437 6438 // ForceSendFields is a list of field names (e.g. "Clustering") to 6439 // unconditionally include in API requests. By default, fields with 6440 // empty values are omitted from API requests. However, any non-pointer, 6441 // non-interface field appearing in ForceSendFields will be sent to the 6442 // server regardless of whether the field is empty or not. This may be 6443 // used to include empty fields in Patch requests. 6444 ForceSendFields []string `json:"-"` 6445 6446 // NullFields is a list of field names (e.g. "Clustering") to include in 6447 // API requests with the JSON null value. By default, fields with empty 6448 // values are omitted from API requests. However, any field with an 6449 // empty value appearing in NullFields will be sent to the server as 6450 // null. It is an error if a field in this list has a non-empty value. 6451 // This may be used to include null fields in Patch requests. 6452 NullFields []string `json:"-"` 6453} 6454 6455func (s *Table) MarshalJSON() ([]byte, error) { 6456 type NoMethod Table 6457 raw := NoMethod(*s) 6458 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6459} 6460 6461type TableCell struct { 6462 V interface{} `json:"v,omitempty"` 6463 6464 // ForceSendFields is a list of field names (e.g. "V") to 6465 // unconditionally include in API requests. By default, fields with 6466 // empty values are omitted from API requests. However, any non-pointer, 6467 // non-interface field appearing in ForceSendFields will be sent to the 6468 // server regardless of whether the field is empty or not. This may be 6469 // used to include empty fields in Patch requests. 6470 ForceSendFields []string `json:"-"` 6471 6472 // NullFields is a list of field names (e.g. "V") to include in API 6473 // requests with the JSON null value. By default, fields with empty 6474 // values are omitted from API requests. However, any field with an 6475 // empty value appearing in NullFields will be sent to the server as 6476 // null. It is an error if a field in this list has a non-empty value. 6477 // This may be used to include null fields in Patch requests. 6478 NullFields []string `json:"-"` 6479} 6480 6481func (s *TableCell) MarshalJSON() ([]byte, error) { 6482 type NoMethod TableCell 6483 raw := NoMethod(*s) 6484 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6485} 6486 6487type TableDataInsertAllRequest struct { 6488 // IgnoreUnknownValues: [Optional] Accept rows that contain values that 6489 // do not match the schema. The unknown values are ignored. Default is 6490 // false, which treats unknown values as errors. 6491 IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"` 6492 6493 // Kind: The resource type of the response. 6494 Kind string `json:"kind,omitempty"` 6495 6496 // Rows: The rows to insert. 6497 Rows []*TableDataInsertAllRequestRows `json:"rows,omitempty"` 6498 6499 // SkipInvalidRows: [Optional] Insert all valid rows of a request, even 6500 // if invalid rows exist. The default value is false, which causes the 6501 // entire request to fail if any invalid rows exist. 6502 SkipInvalidRows bool `json:"skipInvalidRows,omitempty"` 6503 6504 // TemplateSuffix: If specified, treats the destination table as a base 6505 // template, and inserts the rows into an instance table named 6506 // "{destination}{templateSuffix}". BigQuery will manage creation of the 6507 // instance table, using the schema of the base template table. See 6508 // https://cloud.google.com/bigquery/streaming-data-into-bigquery#template-tables for considerations when working with templates 6509 // tables. 6510 TemplateSuffix string `json:"templateSuffix,omitempty"` 6511 6512 // ForceSendFields is a list of field names (e.g. "IgnoreUnknownValues") 6513 // to unconditionally include in API requests. By default, fields with 6514 // empty values are omitted from API requests. However, any non-pointer, 6515 // non-interface field appearing in ForceSendFields will be sent to the 6516 // server regardless of whether the field is empty or not. This may be 6517 // used to include empty fields in Patch requests. 6518 ForceSendFields []string `json:"-"` 6519 6520 // NullFields is a list of field names (e.g. "IgnoreUnknownValues") to 6521 // include in API requests with the JSON null value. By default, fields 6522 // with empty values are omitted from API requests. However, any field 6523 // with an empty value appearing in NullFields will be sent to the 6524 // server as null. It is an error if a field in this list has a 6525 // non-empty value. This may be used to include null fields in Patch 6526 // requests. 6527 NullFields []string `json:"-"` 6528} 6529 6530func (s *TableDataInsertAllRequest) MarshalJSON() ([]byte, error) { 6531 type NoMethod TableDataInsertAllRequest 6532 raw := NoMethod(*s) 6533 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6534} 6535 6536type TableDataInsertAllRequestRows struct { 6537 // InsertId: [Optional] A unique ID for each row. BigQuery uses this 6538 // property to detect duplicate insertion requests on a best-effort 6539 // basis. 6540 InsertId string `json:"insertId,omitempty"` 6541 6542 // Json: [Required] A JSON object that contains a row of data. The 6543 // object's properties and values must match the destination table's 6544 // schema. 6545 Json map[string]JsonValue `json:"json,omitempty"` 6546 6547 // ForceSendFields is a list of field names (e.g. "InsertId") to 6548 // unconditionally include in API requests. By default, fields with 6549 // empty values are omitted from API requests. However, any non-pointer, 6550 // non-interface field appearing in ForceSendFields will be sent to the 6551 // server regardless of whether the field is empty or not. This may be 6552 // used to include empty fields in Patch requests. 6553 ForceSendFields []string `json:"-"` 6554 6555 // NullFields is a list of field names (e.g. "InsertId") to include in 6556 // API requests with the JSON null value. By default, fields with empty 6557 // values are omitted from API requests. However, any field with an 6558 // empty value appearing in NullFields will be sent to the server as 6559 // null. It is an error if a field in this list has a non-empty value. 6560 // This may be used to include null fields in Patch requests. 6561 NullFields []string `json:"-"` 6562} 6563 6564func (s *TableDataInsertAllRequestRows) MarshalJSON() ([]byte, error) { 6565 type NoMethod TableDataInsertAllRequestRows 6566 raw := NoMethod(*s) 6567 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6568} 6569 6570type TableDataInsertAllResponse struct { 6571 // InsertErrors: An array of errors for rows that were not inserted. 6572 InsertErrors []*TableDataInsertAllResponseInsertErrors `json:"insertErrors,omitempty"` 6573 6574 // Kind: The resource type of the response. 6575 Kind string `json:"kind,omitempty"` 6576 6577 // ServerResponse contains the HTTP response code and headers from the 6578 // server. 6579 googleapi.ServerResponse `json:"-"` 6580 6581 // ForceSendFields is a list of field names (e.g. "InsertErrors") to 6582 // unconditionally include in API requests. By default, fields with 6583 // empty values are omitted from API requests. However, any non-pointer, 6584 // non-interface field appearing in ForceSendFields will be sent to the 6585 // server regardless of whether the field is empty or not. This may be 6586 // used to include empty fields in Patch requests. 6587 ForceSendFields []string `json:"-"` 6588 6589 // NullFields is a list of field names (e.g. "InsertErrors") to include 6590 // in API requests with the JSON null value. By default, fields with 6591 // empty values are omitted from API requests. However, any field with 6592 // an empty value appearing in NullFields will be sent to the server as 6593 // null. It is an error if a field in this list has a non-empty value. 6594 // This may be used to include null fields in Patch requests. 6595 NullFields []string `json:"-"` 6596} 6597 6598func (s *TableDataInsertAllResponse) MarshalJSON() ([]byte, error) { 6599 type NoMethod TableDataInsertAllResponse 6600 raw := NoMethod(*s) 6601 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6602} 6603 6604type TableDataInsertAllResponseInsertErrors struct { 6605 // Errors: Error information for the row indicated by the index 6606 // property. 6607 Errors []*ErrorProto `json:"errors,omitempty"` 6608 6609 // Index: The index of the row that error applies to. 6610 Index int64 `json:"index,omitempty"` 6611 6612 // ForceSendFields is a list of field names (e.g. "Errors") to 6613 // unconditionally include in API requests. By default, fields with 6614 // empty values are omitted from API requests. However, any non-pointer, 6615 // non-interface field appearing in ForceSendFields will be sent to the 6616 // server regardless of whether the field is empty or not. This may be 6617 // used to include empty fields in Patch requests. 6618 ForceSendFields []string `json:"-"` 6619 6620 // NullFields is a list of field names (e.g. "Errors") to include in API 6621 // requests with the JSON null value. By default, fields with empty 6622 // values are omitted from API requests. However, any field with an 6623 // empty value appearing in NullFields will be sent to the server as 6624 // null. It is an error if a field in this list has a non-empty value. 6625 // This may be used to include null fields in Patch requests. 6626 NullFields []string `json:"-"` 6627} 6628 6629func (s *TableDataInsertAllResponseInsertErrors) MarshalJSON() ([]byte, error) { 6630 type NoMethod TableDataInsertAllResponseInsertErrors 6631 raw := NoMethod(*s) 6632 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6633} 6634 6635type TableDataList struct { 6636 // Etag: A hash of this page of results. 6637 Etag string `json:"etag,omitempty"` 6638 6639 // Kind: The resource type of the response. 6640 Kind string `json:"kind,omitempty"` 6641 6642 // PageToken: A token used for paging results. Providing this token 6643 // instead of the startIndex parameter can help you retrieve stable 6644 // results when an underlying table is changing. 6645 PageToken string `json:"pageToken,omitempty"` 6646 6647 // Rows: Rows of results. 6648 Rows []*TableRow `json:"rows,omitempty"` 6649 6650 // TotalRows: The total number of rows in the complete table. 6651 TotalRows int64 `json:"totalRows,omitempty,string"` 6652 6653 // ServerResponse contains the HTTP response code and headers from the 6654 // server. 6655 googleapi.ServerResponse `json:"-"` 6656 6657 // ForceSendFields is a list of field names (e.g. "Etag") to 6658 // unconditionally include in API requests. By default, fields with 6659 // empty values are omitted from API requests. However, any non-pointer, 6660 // non-interface field appearing in ForceSendFields will be sent to the 6661 // server regardless of whether the field is empty or not. This may be 6662 // used to include empty fields in Patch requests. 6663 ForceSendFields []string `json:"-"` 6664 6665 // NullFields is a list of field names (e.g. "Etag") to include in API 6666 // requests with the JSON null value. By default, fields with empty 6667 // values are omitted from API requests. However, any field with an 6668 // empty value appearing in NullFields will be sent to the server as 6669 // null. It is an error if a field in this list has a non-empty value. 6670 // This may be used to include null fields in Patch requests. 6671 NullFields []string `json:"-"` 6672} 6673 6674func (s *TableDataList) MarshalJSON() ([]byte, error) { 6675 type NoMethod TableDataList 6676 raw := NoMethod(*s) 6677 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6678} 6679 6680type TableFieldSchema struct { 6681 // Categories: [Optional] The categories attached to this field, used 6682 // for field-level access control. 6683 Categories *TableFieldSchemaCategories `json:"categories,omitempty"` 6684 6685 // Description: [Optional] The field description. The maximum length is 6686 // 1,024 characters. 6687 Description string `json:"description,omitempty"` 6688 6689 // Fields: [Optional] Describes the nested schema fields if the type 6690 // property is set to RECORD. 6691 Fields []*TableFieldSchema `json:"fields,omitempty"` 6692 6693 // Mode: [Optional] The field mode. Possible values include NULLABLE, 6694 // REQUIRED and REPEATED. The default value is NULLABLE. 6695 Mode string `json:"mode,omitempty"` 6696 6697 // Name: [Required] The field name. The name must contain only letters 6698 // (a-z, A-Z), numbers (0-9), or underscores (_), and must start with a 6699 // letter or underscore. The maximum length is 128 characters. 6700 Name string `json:"name,omitempty"` 6701 6702 PolicyTags *TableFieldSchemaPolicyTags `json:"policyTags,omitempty"` 6703 6704 // Type: [Required] The field data type. Possible values include STRING, 6705 // BYTES, INTEGER, INT64 (same as INTEGER), FLOAT, FLOAT64 (same as 6706 // FLOAT), BOOLEAN, BOOL (same as BOOLEAN), TIMESTAMP, DATE, TIME, 6707 // DATETIME, RECORD (where RECORD indicates that the field contains a 6708 // nested schema) or STRUCT (same as RECORD). 6709 Type string `json:"type,omitempty"` 6710 6711 // ForceSendFields is a list of field names (e.g. "Categories") to 6712 // unconditionally include in API requests. By default, fields with 6713 // empty values are omitted from API requests. However, any non-pointer, 6714 // non-interface field appearing in ForceSendFields will be sent to the 6715 // server regardless of whether the field is empty or not. This may be 6716 // used to include empty fields in Patch requests. 6717 ForceSendFields []string `json:"-"` 6718 6719 // NullFields is a list of field names (e.g. "Categories") to include in 6720 // API requests with the JSON null value. By default, fields with empty 6721 // values are omitted from API requests. However, any field with an 6722 // empty value appearing in NullFields will be sent to the server as 6723 // null. It is an error if a field in this list has a non-empty value. 6724 // This may be used to include null fields in Patch requests. 6725 NullFields []string `json:"-"` 6726} 6727 6728func (s *TableFieldSchema) MarshalJSON() ([]byte, error) { 6729 type NoMethod TableFieldSchema 6730 raw := NoMethod(*s) 6731 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6732} 6733 6734// TableFieldSchemaCategories: [Optional] The categories attached to 6735// this field, used for field-level access control. 6736type TableFieldSchemaCategories struct { 6737 // Names: A list of category resource names. For example, 6738 // "projects/1/taxonomies/2/categories/3". At most 5 categories are 6739 // allowed. 6740 Names []string `json:"names,omitempty"` 6741 6742 // ForceSendFields is a list of field names (e.g. "Names") to 6743 // unconditionally include in API requests. By default, fields with 6744 // empty values are omitted from API requests. However, any non-pointer, 6745 // non-interface field appearing in ForceSendFields will be sent to the 6746 // server regardless of whether the field is empty or not. This may be 6747 // used to include empty fields in Patch requests. 6748 ForceSendFields []string `json:"-"` 6749 6750 // NullFields is a list of field names (e.g. "Names") to include in API 6751 // requests with the JSON null value. By default, fields with empty 6752 // values are omitted from API requests. However, any field with an 6753 // empty value appearing in NullFields will be sent to the server as 6754 // null. It is an error if a field in this list has a non-empty value. 6755 // This may be used to include null fields in Patch requests. 6756 NullFields []string `json:"-"` 6757} 6758 6759func (s *TableFieldSchemaCategories) MarshalJSON() ([]byte, error) { 6760 type NoMethod TableFieldSchemaCategories 6761 raw := NoMethod(*s) 6762 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6763} 6764 6765type TableFieldSchemaPolicyTags struct { 6766 // Names: A list of category resource names. For example, 6767 // "projects/1/location/eu/taxonomies/2/policyTags/3". At most 1 policy 6768 // tag is allowed. 6769 Names []string `json:"names,omitempty"` 6770 6771 // ForceSendFields is a list of field names (e.g. "Names") to 6772 // unconditionally include in API requests. By default, fields with 6773 // empty values are omitted from API requests. However, any non-pointer, 6774 // non-interface field appearing in ForceSendFields will be sent to the 6775 // server regardless of whether the field is empty or not. This may be 6776 // used to include empty fields in Patch requests. 6777 ForceSendFields []string `json:"-"` 6778 6779 // NullFields is a list of field names (e.g. "Names") to include in API 6780 // requests with the JSON null value. By default, fields with empty 6781 // values are omitted from API requests. However, any field with an 6782 // empty value appearing in NullFields will be sent to the server as 6783 // null. It is an error if a field in this list has a non-empty value. 6784 // This may be used to include null fields in Patch requests. 6785 NullFields []string `json:"-"` 6786} 6787 6788func (s *TableFieldSchemaPolicyTags) MarshalJSON() ([]byte, error) { 6789 type NoMethod TableFieldSchemaPolicyTags 6790 raw := NoMethod(*s) 6791 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6792} 6793 6794type TableList struct { 6795 // Etag: A hash of this page of results. 6796 Etag string `json:"etag,omitempty"` 6797 6798 // Kind: The type of list. 6799 Kind string `json:"kind,omitempty"` 6800 6801 // NextPageToken: A token to request the next page of results. 6802 NextPageToken string `json:"nextPageToken,omitempty"` 6803 6804 // Tables: Tables in the requested dataset. 6805 Tables []*TableListTables `json:"tables,omitempty"` 6806 6807 // TotalItems: The total number of tables in the dataset. 6808 TotalItems int64 `json:"totalItems,omitempty"` 6809 6810 // ServerResponse contains the HTTP response code and headers from the 6811 // server. 6812 googleapi.ServerResponse `json:"-"` 6813 6814 // ForceSendFields is a list of field names (e.g. "Etag") to 6815 // unconditionally include in API requests. By default, fields with 6816 // empty values are omitted from API requests. However, any non-pointer, 6817 // non-interface field appearing in ForceSendFields will be sent to the 6818 // server regardless of whether the field is empty or not. This may be 6819 // used to include empty fields in Patch requests. 6820 ForceSendFields []string `json:"-"` 6821 6822 // NullFields is a list of field names (e.g. "Etag") to include in API 6823 // requests with the JSON null value. By default, fields with empty 6824 // values are omitted from API requests. However, any field with an 6825 // empty value appearing in NullFields will be sent to the server as 6826 // null. It is an error if a field in this list has a non-empty value. 6827 // This may be used to include null fields in Patch requests. 6828 NullFields []string `json:"-"` 6829} 6830 6831func (s *TableList) MarshalJSON() ([]byte, error) { 6832 type NoMethod TableList 6833 raw := NoMethod(*s) 6834 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6835} 6836 6837type TableListTables struct { 6838 // Clustering: [Beta] Clustering specification for this table, if 6839 // configured. 6840 Clustering *Clustering `json:"clustering,omitempty"` 6841 6842 // CreationTime: The time when this table was created, in milliseconds 6843 // since the epoch. 6844 CreationTime int64 `json:"creationTime,omitempty,string"` 6845 6846 // ExpirationTime: [Optional] The time when this table expires, in 6847 // milliseconds since the epoch. If not present, the table will persist 6848 // indefinitely. Expired tables will be deleted and their storage 6849 // reclaimed. 6850 ExpirationTime int64 `json:"expirationTime,omitempty,string"` 6851 6852 // FriendlyName: The user-friendly name for this table. 6853 FriendlyName string `json:"friendlyName,omitempty"` 6854 6855 // Id: An opaque ID of the table 6856 Id string `json:"id,omitempty"` 6857 6858 // Kind: The resource type. 6859 Kind string `json:"kind,omitempty"` 6860 6861 // Labels: The labels associated with this table. You can use these to 6862 // organize and group your tables. 6863 Labels map[string]string `json:"labels,omitempty"` 6864 6865 // RangePartitioning: The range partitioning specification for this 6866 // table, if configured. 6867 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 6868 6869 // TableReference: A reference uniquely identifying the table. 6870 TableReference *TableReference `json:"tableReference,omitempty"` 6871 6872 // TimePartitioning: The time-based partitioning specification for this 6873 // table, if configured. 6874 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 6875 6876 // Type: The type of table. Possible values are: TABLE, VIEW. 6877 Type string `json:"type,omitempty"` 6878 6879 // View: Additional details for a view. 6880 View *TableListTablesView `json:"view,omitempty"` 6881 6882 // ForceSendFields is a list of field names (e.g. "Clustering") to 6883 // unconditionally include in API requests. By default, fields with 6884 // empty values are omitted from API requests. However, any non-pointer, 6885 // non-interface field appearing in ForceSendFields will be sent to the 6886 // server regardless of whether the field is empty or not. This may be 6887 // used to include empty fields in Patch requests. 6888 ForceSendFields []string `json:"-"` 6889 6890 // NullFields is a list of field names (e.g. "Clustering") to include in 6891 // API requests with the JSON null value. By default, fields with empty 6892 // values are omitted from API requests. However, any field with an 6893 // empty value appearing in NullFields will be sent to the server as 6894 // null. It is an error if a field in this list has a non-empty value. 6895 // This may be used to include null fields in Patch requests. 6896 NullFields []string `json:"-"` 6897} 6898 6899func (s *TableListTables) MarshalJSON() ([]byte, error) { 6900 type NoMethod TableListTables 6901 raw := NoMethod(*s) 6902 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6903} 6904 6905// TableListTablesView: Additional details for a view. 6906type TableListTablesView struct { 6907 // UseLegacySql: True if view is defined in legacy SQL dialect, false if 6908 // in standard SQL. 6909 UseLegacySql bool `json:"useLegacySql,omitempty"` 6910 6911 // ForceSendFields is a list of field names (e.g. "UseLegacySql") to 6912 // unconditionally include in API requests. By default, fields with 6913 // empty values are omitted from API requests. However, any non-pointer, 6914 // non-interface field appearing in ForceSendFields will be sent to the 6915 // server regardless of whether the field is empty or not. This may be 6916 // used to include empty fields in Patch requests. 6917 ForceSendFields []string `json:"-"` 6918 6919 // NullFields is a list of field names (e.g. "UseLegacySql") to include 6920 // in API requests with the JSON null value. By default, fields with 6921 // empty values are omitted from API requests. However, any field with 6922 // an empty value appearing in NullFields will be sent to the server as 6923 // null. It is an error if a field in this list has a non-empty value. 6924 // This may be used to include null fields in Patch requests. 6925 NullFields []string `json:"-"` 6926} 6927 6928func (s *TableListTablesView) MarshalJSON() ([]byte, error) { 6929 type NoMethod TableListTablesView 6930 raw := NoMethod(*s) 6931 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6932} 6933 6934type TableReference struct { 6935 // DatasetId: [Required] The ID of the dataset containing this table. 6936 DatasetId string `json:"datasetId,omitempty"` 6937 6938 // ProjectId: [Required] The ID of the project containing this table. 6939 ProjectId string `json:"projectId,omitempty"` 6940 6941 // TableId: [Required] The ID of the table. The ID must contain only 6942 // letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum 6943 // length is 1,024 characters. 6944 TableId string `json:"tableId,omitempty"` 6945 6946 // ForceSendFields is a list of field names (e.g. "DatasetId") to 6947 // unconditionally include in API requests. By default, fields with 6948 // empty values are omitted from API requests. However, any non-pointer, 6949 // non-interface field appearing in ForceSendFields will be sent to the 6950 // server regardless of whether the field is empty or not. This may be 6951 // used to include empty fields in Patch requests. 6952 ForceSendFields []string `json:"-"` 6953 6954 // NullFields is a list of field names (e.g. "DatasetId") to include in 6955 // API requests with the JSON null value. By default, fields with empty 6956 // values are omitted from API requests. However, any field with an 6957 // empty value appearing in NullFields will be sent to the server as 6958 // null. It is an error if a field in this list has a non-empty value. 6959 // This may be used to include null fields in Patch requests. 6960 NullFields []string `json:"-"` 6961} 6962 6963func (s *TableReference) MarshalJSON() ([]byte, error) { 6964 type NoMethod TableReference 6965 raw := NoMethod(*s) 6966 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6967} 6968 6969type TableRow struct { 6970 // F: Represents a single row in the result set, consisting of one or 6971 // more fields. 6972 F []*TableCell `json:"f,omitempty"` 6973 6974 // ForceSendFields is a list of field names (e.g. "F") to 6975 // unconditionally include in API requests. By default, fields with 6976 // empty values are omitted from API requests. However, any non-pointer, 6977 // non-interface field appearing in ForceSendFields will be sent to the 6978 // server regardless of whether the field is empty or not. This may be 6979 // used to include empty fields in Patch requests. 6980 ForceSendFields []string `json:"-"` 6981 6982 // NullFields is a list of field names (e.g. "F") to include in API 6983 // requests with the JSON null value. By default, fields with empty 6984 // values are omitted from API requests. However, any field with an 6985 // empty value appearing in NullFields will be sent to the server as 6986 // null. It is an error if a field in this list has a non-empty value. 6987 // This may be used to include null fields in Patch requests. 6988 NullFields []string `json:"-"` 6989} 6990 6991func (s *TableRow) MarshalJSON() ([]byte, error) { 6992 type NoMethod TableRow 6993 raw := NoMethod(*s) 6994 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6995} 6996 6997type TableSchema struct { 6998 // Fields: Describes the fields in a table. 6999 Fields []*TableFieldSchema `json:"fields,omitempty"` 7000 7001 // ForceSendFields is a list of field names (e.g. "Fields") to 7002 // unconditionally include in API requests. By default, fields with 7003 // empty values are omitted from API requests. However, any non-pointer, 7004 // non-interface field appearing in ForceSendFields will be sent to the 7005 // server regardless of whether the field is empty or not. This may be 7006 // used to include empty fields in Patch requests. 7007 ForceSendFields []string `json:"-"` 7008 7009 // NullFields is a list of field names (e.g. "Fields") to include in API 7010 // requests with the JSON null value. By default, fields with empty 7011 // values are omitted from API requests. However, any field with an 7012 // empty value appearing in NullFields will be sent to the server as 7013 // null. It is an error if a field in this list has a non-empty value. 7014 // This may be used to include null fields in Patch requests. 7015 NullFields []string `json:"-"` 7016} 7017 7018func (s *TableSchema) MarshalJSON() ([]byte, error) { 7019 type NoMethod TableSchema 7020 raw := NoMethod(*s) 7021 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7022} 7023 7024// TestIamPermissionsRequest: Request message for `TestIamPermissions` 7025// method. 7026type TestIamPermissionsRequest struct { 7027 // Permissions: The set of permissions to check for the `resource`. 7028 // Permissions with wildcards (such as '*' or 'storage.*') are not 7029 // allowed. For more information see [IAM 7030 // Overview](https://cloud.google.com/iam/docs/overview#permissions). 7031 Permissions []string `json:"permissions,omitempty"` 7032 7033 // ForceSendFields is a list of field names (e.g. "Permissions") to 7034 // unconditionally include in API requests. By default, fields with 7035 // empty values are omitted from API requests. However, any non-pointer, 7036 // non-interface field appearing in ForceSendFields will be sent to the 7037 // server regardless of whether the field is empty or not. This may be 7038 // used to include empty fields in Patch requests. 7039 ForceSendFields []string `json:"-"` 7040 7041 // NullFields is a list of field names (e.g. "Permissions") to include 7042 // in API requests with the JSON null value. By default, fields with 7043 // empty values are omitted from API requests. However, any field with 7044 // an empty value appearing in NullFields will be sent to the server as 7045 // null. It is an error if a field in this list has a non-empty value. 7046 // This may be used to include null fields in Patch requests. 7047 NullFields []string `json:"-"` 7048} 7049 7050func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { 7051 type NoMethod TestIamPermissionsRequest 7052 raw := NoMethod(*s) 7053 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7054} 7055 7056// TestIamPermissionsResponse: Response message for `TestIamPermissions` 7057// method. 7058type TestIamPermissionsResponse struct { 7059 // Permissions: A subset of `TestPermissionsRequest.permissions` that 7060 // the caller is allowed. 7061 Permissions []string `json:"permissions,omitempty"` 7062 7063 // ServerResponse contains the HTTP response code and headers from the 7064 // server. 7065 googleapi.ServerResponse `json:"-"` 7066 7067 // ForceSendFields is a list of field names (e.g. "Permissions") to 7068 // unconditionally include in API requests. By default, fields with 7069 // empty values are omitted from API requests. However, any non-pointer, 7070 // non-interface field appearing in ForceSendFields will be sent to the 7071 // server regardless of whether the field is empty or not. This may be 7072 // used to include empty fields in Patch requests. 7073 ForceSendFields []string `json:"-"` 7074 7075 // NullFields is a list of field names (e.g. "Permissions") to include 7076 // in API requests with the JSON null value. By default, fields with 7077 // empty values are omitted from API requests. However, any field with 7078 // an empty value appearing in NullFields will be sent to the server as 7079 // null. It is an error if a field in this list has a non-empty value. 7080 // This may be used to include null fields in Patch requests. 7081 NullFields []string `json:"-"` 7082} 7083 7084func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { 7085 type NoMethod TestIamPermissionsResponse 7086 raw := NoMethod(*s) 7087 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7088} 7089 7090type TimePartitioning struct { 7091 // ExpirationMs: [Optional] Number of milliseconds for which to keep the 7092 // storage for partitions in the table. The storage in a partition will 7093 // have an expiration time of its partition time plus this value. 7094 ExpirationMs int64 `json:"expirationMs,omitempty,string"` 7095 7096 // Field: [Beta] [Optional] If not set, the table is partitioned by 7097 // pseudo column, referenced via either '_PARTITIONTIME' as TIMESTAMP 7098 // type, or '_PARTITIONDATE' as DATE type. If field is specified, the 7099 // table is instead partitioned by this field. The field must be a 7100 // top-level TIMESTAMP or DATE field. Its mode must be NULLABLE or 7101 // REQUIRED. 7102 Field string `json:"field,omitempty"` 7103 7104 RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"` 7105 7106 // Type: [Required] The supported types are DAY, HOUR, MONTH, and YEAR, 7107 // which will generate one partition per day, hour, month, and year, 7108 // respectively. When the type is not specified, the default behavior is 7109 // DAY. 7110 Type string `json:"type,omitempty"` 7111 7112 // ForceSendFields is a list of field names (e.g. "ExpirationMs") to 7113 // unconditionally include in API requests. By default, fields with 7114 // empty values are omitted from API requests. However, any non-pointer, 7115 // non-interface field appearing in ForceSendFields will be sent to the 7116 // server regardless of whether the field is empty or not. This may be 7117 // used to include empty fields in Patch requests. 7118 ForceSendFields []string `json:"-"` 7119 7120 // NullFields is a list of field names (e.g. "ExpirationMs") to include 7121 // in API requests with the JSON null value. By default, fields with 7122 // empty values are omitted from API requests. However, any field with 7123 // an empty value appearing in NullFields will be sent to the server as 7124 // null. It is an error if a field in this list has a non-empty value. 7125 // This may be used to include null fields in Patch requests. 7126 NullFields []string `json:"-"` 7127} 7128 7129func (s *TimePartitioning) MarshalJSON() ([]byte, error) { 7130 type NoMethod TimePartitioning 7131 raw := NoMethod(*s) 7132 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7133} 7134 7135type TrainingOptions struct { 7136 // AutoArima: Whether to enable auto ARIMA or not. 7137 AutoArima bool `json:"autoArima,omitempty"` 7138 7139 // AutoArimaMaxOrder: The max value of non-seasonal p and q. 7140 AutoArimaMaxOrder int64 `json:"autoArimaMaxOrder,omitempty,string"` 7141 7142 // BatchSize: Batch size for dnn models. 7143 BatchSize int64 `json:"batchSize,omitempty,string"` 7144 7145 // DataFrequency: The data frequency of a time series. 7146 // 7147 // Possible values: 7148 // "DATA_FREQUENCY_UNSPECIFIED" 7149 // "AUTO_FREQUENCY" - Automatically inferred from timestamps. 7150 // "YEARLY" - Yearly data. 7151 // "QUARTERLY" - Quarterly data. 7152 // "MONTHLY" - Monthly data. 7153 // "WEEKLY" - Weekly data. 7154 // "DAILY" - Daily data. 7155 // "HOURLY" - Hourly data. 7156 DataFrequency string `json:"dataFrequency,omitempty"` 7157 7158 // DataSplitColumn: The column to split data with. This column won't be 7159 // used as a feature. 1. When data_split_method is CUSTOM, the 7160 // corresponding column should be boolean. The rows with true value tag 7161 // are eval data, and the false are training data. 2. When 7162 // data_split_method is SEQ, the first DATA_SPLIT_EVAL_FRACTION rows 7163 // (from smallest to largest) in the corresponding column are used as 7164 // training data, and the rest are eval data. It respects the order in 7165 // Orderable data types: 7166 // https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#data-type-properties 7167 DataSplitColumn string `json:"dataSplitColumn,omitempty"` 7168 7169 // DataSplitEvalFraction: The fraction of evaluation data over the whole 7170 // input data. The rest of data will be used as training data. The 7171 // format should be double. Accurate to two decimal places. Default 7172 // value is 0.2. 7173 DataSplitEvalFraction float64 `json:"dataSplitEvalFraction,omitempty"` 7174 7175 // DataSplitMethod: The data split type for training and evaluation, 7176 // e.g. RANDOM. 7177 // 7178 // Possible values: 7179 // "DATA_SPLIT_METHOD_UNSPECIFIED" 7180 // "RANDOM" - Splits data randomly. 7181 // "CUSTOM" - Splits data with the user provided tags. 7182 // "SEQUENTIAL" - Splits data sequentially. 7183 // "NO_SPLIT" - Data split will be skipped. 7184 // "AUTO_SPLIT" - Splits data automatically: Uses NO_SPLIT if the data 7185 // size is small. Otherwise uses RANDOM. 7186 DataSplitMethod string `json:"dataSplitMethod,omitempty"` 7187 7188 // DistanceType: Distance type for clustering models. 7189 // 7190 // Possible values: 7191 // "DISTANCE_TYPE_UNSPECIFIED" 7192 // "EUCLIDEAN" - Eculidean distance. 7193 // "COSINE" - Cosine distance. 7194 DistanceType string `json:"distanceType,omitempty"` 7195 7196 // Dropout: Dropout probability for dnn models. 7197 Dropout float64 `json:"dropout,omitempty"` 7198 7199 // EarlyStop: Whether to stop early when the loss doesn't improve 7200 // significantly any more (compared to min_relative_progress). Used only 7201 // for iterative training algorithms. 7202 EarlyStop bool `json:"earlyStop,omitempty"` 7203 7204 // FeedbackType: Feedback type that specifies which algorithm to run for 7205 // matrix factorization. 7206 // 7207 // Possible values: 7208 // "FEEDBACK_TYPE_UNSPECIFIED" 7209 // "IMPLICIT" - Use weighted-als for implicit feedback problems. 7210 // "EXPLICIT" - Use nonweighted-als for explicit feedback problems. 7211 FeedbackType string `json:"feedbackType,omitempty"` 7212 7213 // HiddenUnits: Hidden units for dnn models. 7214 HiddenUnits googleapi.Int64s `json:"hiddenUnits,omitempty"` 7215 7216 // HolidayRegion: The geographical region based on which the holidays 7217 // are considered in time series modeling. If a valid value is 7218 // specified, then holiday effects modeling is enabled. 7219 // 7220 // Possible values: 7221 // "HOLIDAY_REGION_UNSPECIFIED" - Holiday region unspecified. 7222 // "GLOBAL" - Global. 7223 // "NA" - North America. 7224 // "JAPAC" - Japan and Asia Pacific: Korea, Greater China, India, 7225 // Australia, and New Zealand. 7226 // "EMEA" - Europe, the Middle East and Africa. 7227 // "LAC" - Latin America and the Caribbean. 7228 // "AE" - United Arab Emirates 7229 // "AR" - Argentina 7230 // "AT" - Austria 7231 // "AU" - Australia 7232 // "BE" - Belgium 7233 // "BR" - Brazil 7234 // "CA" - Canada 7235 // "CH" - Switzerland 7236 // "CL" - Chile 7237 // "CN" - China 7238 // "CO" - Colombia 7239 // "CS" - Czechoslovakia 7240 // "CZ" - Czech Republic 7241 // "DE" - Germany 7242 // "DK" - Denmark 7243 // "DZ" - Algeria 7244 // "EC" - Ecuador 7245 // "EE" - Estonia 7246 // "EG" - Egypt 7247 // "ES" - Spain 7248 // "FI" - Finland 7249 // "FR" - France 7250 // "GB" - Great Britain (United Kingdom) 7251 // "GR" - Greece 7252 // "HK" - Hong Kong 7253 // "HU" - Hungary 7254 // "ID" - Indonesia 7255 // "IE" - Ireland 7256 // "IL" - Israel 7257 // "IN" - India 7258 // "IR" - Iran 7259 // "IT" - Italy 7260 // "JP" - Japan 7261 // "KR" - Korea (South) 7262 // "LV" - Latvia 7263 // "MA" - Morocco 7264 // "MX" - Mexico 7265 // "MY" - Malaysia 7266 // "NG" - Nigeria 7267 // "NL" - Netherlands 7268 // "NO" - Norway 7269 // "NZ" - New Zealand 7270 // "PE" - Peru 7271 // "PH" - Philippines 7272 // "PK" - Pakistan 7273 // "PL" - Poland 7274 // "PT" - Portugal 7275 // "RO" - Romania 7276 // "RS" - Serbia 7277 // "RU" - Russian Federation 7278 // "SA" - Saudi Arabia 7279 // "SE" - Sweden 7280 // "SG" - Singapore 7281 // "SI" - Slovenia 7282 // "SK" - Slovakia 7283 // "TH" - Thailand 7284 // "TR" - Turkey 7285 // "TW" - Taiwan 7286 // "UA" - Ukraine 7287 // "US" - United States 7288 // "VE" - Venezuela 7289 // "VN" - Viet Nam 7290 // "ZA" - South Africa 7291 HolidayRegion string `json:"holidayRegion,omitempty"` 7292 7293 // Horizon: The number of periods ahead that need to be forecasted. 7294 Horizon int64 `json:"horizon,omitempty,string"` 7295 7296 // IncludeDrift: Include drift when fitting an ARIMA model. 7297 IncludeDrift bool `json:"includeDrift,omitempty"` 7298 7299 // InitialLearnRate: Specifies the initial learning rate for the line 7300 // search learn rate strategy. 7301 InitialLearnRate float64 `json:"initialLearnRate,omitempty"` 7302 7303 // InputLabelColumns: Name of input label columns in training data. 7304 InputLabelColumns []string `json:"inputLabelColumns,omitempty"` 7305 7306 // ItemColumn: Item column specified for matrix factorization models. 7307 ItemColumn string `json:"itemColumn,omitempty"` 7308 7309 // KmeansInitializationColumn: The column used to provide the initial 7310 // centroids for kmeans algorithm when kmeans_initialization_method is 7311 // CUSTOM. 7312 KmeansInitializationColumn string `json:"kmeansInitializationColumn,omitempty"` 7313 7314 // KmeansInitializationMethod: The method used to initialize the 7315 // centroids for kmeans algorithm. 7316 // 7317 // Possible values: 7318 // "KMEANS_INITIALIZATION_METHOD_UNSPECIFIED" 7319 // "RANDOM" - Initializes the centroids randomly. 7320 // "CUSTOM" - Initializes the centroids using data specified in 7321 // kmeans_initialization_column. 7322 // "KMEANS_PLUS_PLUS" - Initializes with kmeans++. 7323 KmeansInitializationMethod string `json:"kmeansInitializationMethod,omitempty"` 7324 7325 // L1Regularization: L1 regularization coefficient. 7326 L1Regularization float64 `json:"l1Regularization,omitempty"` 7327 7328 // L2Regularization: L2 regularization coefficient. 7329 L2Regularization float64 `json:"l2Regularization,omitempty"` 7330 7331 // LabelClassWeights: Weights associated with each label class, for 7332 // rebalancing the training data. Only applicable for classification 7333 // models. 7334 LabelClassWeights map[string]float64 `json:"labelClassWeights,omitempty"` 7335 7336 // LearnRate: Learning rate in training. Used only for iterative 7337 // training algorithms. 7338 LearnRate float64 `json:"learnRate,omitempty"` 7339 7340 // LearnRateStrategy: The strategy to determine learn rate for the 7341 // current iteration. 7342 // 7343 // Possible values: 7344 // "LEARN_RATE_STRATEGY_UNSPECIFIED" 7345 // "LINE_SEARCH" - Use line search to determine learning rate. 7346 // "CONSTANT" - Use a constant learning rate. 7347 LearnRateStrategy string `json:"learnRateStrategy,omitempty"` 7348 7349 // LossType: Type of loss function used during training run. 7350 // 7351 // Possible values: 7352 // "LOSS_TYPE_UNSPECIFIED" 7353 // "MEAN_SQUARED_LOSS" - Mean squared loss, used for linear 7354 // regression. 7355 // "MEAN_LOG_LOSS" - Mean log loss, used for logistic regression. 7356 LossType string `json:"lossType,omitempty"` 7357 7358 // MaxIterations: The maximum number of iterations in training. Used 7359 // only for iterative training algorithms. 7360 MaxIterations int64 `json:"maxIterations,omitempty,string"` 7361 7362 // MaxTreeDepth: Maximum depth of a tree for boosted tree models. 7363 MaxTreeDepth int64 `json:"maxTreeDepth,omitempty,string"` 7364 7365 // MinRelativeProgress: When early_stop is true, stops training when 7366 // accuracy improvement is less than 'min_relative_progress'. Used only 7367 // for iterative training algorithms. 7368 MinRelativeProgress float64 `json:"minRelativeProgress,omitempty"` 7369 7370 // MinSplitLoss: Minimum split loss for boosted tree models. 7371 MinSplitLoss float64 `json:"minSplitLoss,omitempty"` 7372 7373 // ModelUri: [Beta] Google Cloud Storage URI from which the model was 7374 // imported. Only applicable for imported models. 7375 ModelUri string `json:"modelUri,omitempty"` 7376 7377 // NonSeasonalOrder: A specification of the non-seasonal part of the 7378 // ARIMA model: the three components (p, d, q) are the AR order, the 7379 // degree of differencing, and the MA order. 7380 NonSeasonalOrder *ArimaOrder `json:"nonSeasonalOrder,omitempty"` 7381 7382 // NumClusters: Number of clusters for clustering models. 7383 NumClusters int64 `json:"numClusters,omitempty,string"` 7384 7385 // NumFactors: Num factors specified for matrix factorization models. 7386 NumFactors int64 `json:"numFactors,omitempty,string"` 7387 7388 // OptimizationStrategy: Optimization strategy for training linear 7389 // regression models. 7390 // 7391 // Possible values: 7392 // "OPTIMIZATION_STRATEGY_UNSPECIFIED" 7393 // "BATCH_GRADIENT_DESCENT" - Uses an iterative batch gradient descent 7394 // algorithm. 7395 // "NORMAL_EQUATION" - Uses a normal equation to solve linear 7396 // regression problem. 7397 OptimizationStrategy string `json:"optimizationStrategy,omitempty"` 7398 7399 // PreserveInputStructs: Whether to preserve the input structs in output 7400 // feature names. Suppose there is a struct A with field b. When false 7401 // (default), the output feature name is A_b. When true, the output 7402 // feature name is A.b. 7403 PreserveInputStructs bool `json:"preserveInputStructs,omitempty"` 7404 7405 // Subsample: Subsample fraction of the training data to grow tree to 7406 // prevent overfitting for boosted tree models. 7407 Subsample float64 `json:"subsample,omitempty"` 7408 7409 // TimeSeriesDataColumn: Column to be designated as time series data for 7410 // ARIMA model. 7411 TimeSeriesDataColumn string `json:"timeSeriesDataColumn,omitempty"` 7412 7413 // TimeSeriesIdColumn: The id column that will be used to indicate 7414 // different time series to forecast in parallel. 7415 TimeSeriesIdColumn string `json:"timeSeriesIdColumn,omitempty"` 7416 7417 // TimeSeriesTimestampColumn: Column to be designated as time series 7418 // timestamp for ARIMA model. 7419 TimeSeriesTimestampColumn string `json:"timeSeriesTimestampColumn,omitempty"` 7420 7421 // UserColumn: User column specified for matrix factorization models. 7422 UserColumn string `json:"userColumn,omitempty"` 7423 7424 // WalsAlpha: Hyperparameter for matrix factoration when implicit 7425 // feedback type is specified. 7426 WalsAlpha float64 `json:"walsAlpha,omitempty"` 7427 7428 // WarmStart: Whether to train a model from the last checkpoint. 7429 WarmStart bool `json:"warmStart,omitempty"` 7430 7431 // ForceSendFields is a list of field names (e.g. "AutoArima") to 7432 // unconditionally include in API requests. By default, fields with 7433 // empty values are omitted from API requests. However, any non-pointer, 7434 // non-interface field appearing in ForceSendFields will be sent to the 7435 // server regardless of whether the field is empty or not. This may be 7436 // used to include empty fields in Patch requests. 7437 ForceSendFields []string `json:"-"` 7438 7439 // NullFields is a list of field names (e.g. "AutoArima") to include in 7440 // API requests with the JSON null value. By default, fields with empty 7441 // values are omitted from API requests. However, any field with an 7442 // empty value appearing in NullFields will be sent to the server as 7443 // null. It is an error if a field in this list has a non-empty value. 7444 // This may be used to include null fields in Patch requests. 7445 NullFields []string `json:"-"` 7446} 7447 7448func (s *TrainingOptions) MarshalJSON() ([]byte, error) { 7449 type NoMethod TrainingOptions 7450 raw := NoMethod(*s) 7451 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7452} 7453 7454func (s *TrainingOptions) UnmarshalJSON(data []byte) error { 7455 type NoMethod TrainingOptions 7456 var s1 struct { 7457 DataSplitEvalFraction gensupport.JSONFloat64 `json:"dataSplitEvalFraction"` 7458 Dropout gensupport.JSONFloat64 `json:"dropout"` 7459 InitialLearnRate gensupport.JSONFloat64 `json:"initialLearnRate"` 7460 L1Regularization gensupport.JSONFloat64 `json:"l1Regularization"` 7461 L2Regularization gensupport.JSONFloat64 `json:"l2Regularization"` 7462 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 7463 MinRelativeProgress gensupport.JSONFloat64 `json:"minRelativeProgress"` 7464 MinSplitLoss gensupport.JSONFloat64 `json:"minSplitLoss"` 7465 Subsample gensupport.JSONFloat64 `json:"subsample"` 7466 WalsAlpha gensupport.JSONFloat64 `json:"walsAlpha"` 7467 *NoMethod 7468 } 7469 s1.NoMethod = (*NoMethod)(s) 7470 if err := json.Unmarshal(data, &s1); err != nil { 7471 return err 7472 } 7473 s.DataSplitEvalFraction = float64(s1.DataSplitEvalFraction) 7474 s.Dropout = float64(s1.Dropout) 7475 s.InitialLearnRate = float64(s1.InitialLearnRate) 7476 s.L1Regularization = float64(s1.L1Regularization) 7477 s.L2Regularization = float64(s1.L2Regularization) 7478 s.LearnRate = float64(s1.LearnRate) 7479 s.MinRelativeProgress = float64(s1.MinRelativeProgress) 7480 s.MinSplitLoss = float64(s1.MinSplitLoss) 7481 s.Subsample = float64(s1.Subsample) 7482 s.WalsAlpha = float64(s1.WalsAlpha) 7483 return nil 7484} 7485 7486// TrainingRun: Information about a single training query run for the 7487// model. 7488type TrainingRun struct { 7489 // DataSplitResult: Data split result of the training run. Only set when 7490 // the input data is actually split. 7491 DataSplitResult *DataSplitResult `json:"dataSplitResult,omitempty"` 7492 7493 // EvaluationMetrics: The evaluation metrics over training/eval data 7494 // that were computed at the end of training. 7495 EvaluationMetrics *EvaluationMetrics `json:"evaluationMetrics,omitempty"` 7496 7497 // GlobalExplanations: Global explanations for important features of the 7498 // model. For multi-class models, there is one entry for each label 7499 // class. For other models, there is only one entry in the list. 7500 GlobalExplanations []*GlobalExplanation `json:"globalExplanations,omitempty"` 7501 7502 // Results: Output of each iteration run, results.size() <= 7503 // max_iterations. 7504 Results []*IterationResult `json:"results,omitempty"` 7505 7506 // StartTime: The start time of this training run. 7507 StartTime string `json:"startTime,omitempty"` 7508 7509 // TrainingOptions: Options that were used for this training run, 7510 // includes user specified and default options that were used. 7511 TrainingOptions *TrainingOptions `json:"trainingOptions,omitempty"` 7512 7513 // ForceSendFields is a list of field names (e.g. "DataSplitResult") to 7514 // unconditionally include in API requests. By default, fields with 7515 // empty values are omitted from API requests. However, any non-pointer, 7516 // non-interface field appearing in ForceSendFields will be sent to the 7517 // server regardless of whether the field is empty or not. This may be 7518 // used to include empty fields in Patch requests. 7519 ForceSendFields []string `json:"-"` 7520 7521 // NullFields is a list of field names (e.g. "DataSplitResult") to 7522 // include in API requests with the JSON null value. By default, fields 7523 // with empty values are omitted from API requests. However, any field 7524 // with an empty value appearing in NullFields will be sent to the 7525 // server as null. It is an error if a field in this list has a 7526 // non-empty value. This may be used to include null fields in Patch 7527 // requests. 7528 NullFields []string `json:"-"` 7529} 7530 7531func (s *TrainingRun) MarshalJSON() ([]byte, error) { 7532 type NoMethod TrainingRun 7533 raw := NoMethod(*s) 7534 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7535} 7536 7537type TransactionInfo struct { 7538 // TransactionId: [Output-only] // [Alpha] Id of the transaction. 7539 TransactionId string `json:"transactionId,omitempty"` 7540 7541 // ForceSendFields is a list of field names (e.g. "TransactionId") to 7542 // unconditionally include in API requests. By default, fields with 7543 // empty values are omitted from API requests. However, any non-pointer, 7544 // non-interface field appearing in ForceSendFields will be sent to the 7545 // server regardless of whether the field is empty or not. This may be 7546 // used to include empty fields in Patch requests. 7547 ForceSendFields []string `json:"-"` 7548 7549 // NullFields is a list of field names (e.g. "TransactionId") to include 7550 // in API requests with the JSON null value. By default, fields with 7551 // empty values are omitted from API requests. However, any field with 7552 // an empty value appearing in NullFields will be sent to the server as 7553 // null. It is an error if a field in this list has a non-empty value. 7554 // This may be used to include null fields in Patch requests. 7555 NullFields []string `json:"-"` 7556} 7557 7558func (s *TransactionInfo) MarshalJSON() ([]byte, error) { 7559 type NoMethod TransactionInfo 7560 raw := NoMethod(*s) 7561 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7562} 7563 7564// UserDefinedFunctionResource: This is used for defining User Defined 7565// Function (UDF) resources only when using legacy SQL. Users of 7566// Standard SQL should leverage either DDL (e.g. CREATE [TEMPORARY] 7567// FUNCTION ... ) or the Routines API to define UDF resources. For 7568// additional information on migrating, see: 7569// https://cloud.google.com/bigquery/docs/reference/standard-sql/migrating-from-legacy-sql#differences_in_user-defined_javascript_functions 7570type UserDefinedFunctionResource struct { 7571 // InlineCode: [Pick one] An inline resource that contains code for a 7572 // user-defined function (UDF). Providing a inline code resource is 7573 // equivalent to providing a URI for a file containing the same code. 7574 InlineCode string `json:"inlineCode,omitempty"` 7575 7576 // ResourceUri: [Pick one] A code resource to load from a Google Cloud 7577 // Storage URI (gs://bucket/path). 7578 ResourceUri string `json:"resourceUri,omitempty"` 7579 7580 // ForceSendFields is a list of field names (e.g. "InlineCode") to 7581 // unconditionally include in API requests. By default, fields with 7582 // empty values are omitted from API requests. However, any non-pointer, 7583 // non-interface field appearing in ForceSendFields will be sent to the 7584 // server regardless of whether the field is empty or not. This may be 7585 // used to include empty fields in Patch requests. 7586 ForceSendFields []string `json:"-"` 7587 7588 // NullFields is a list of field names (e.g. "InlineCode") to include in 7589 // API requests with the JSON null value. By default, fields with empty 7590 // values are omitted from API requests. However, any field with an 7591 // empty value appearing in NullFields will be sent to the server as 7592 // null. It is an error if a field in this list has a non-empty value. 7593 // This may be used to include null fields in Patch requests. 7594 NullFields []string `json:"-"` 7595} 7596 7597func (s *UserDefinedFunctionResource) MarshalJSON() ([]byte, error) { 7598 type NoMethod UserDefinedFunctionResource 7599 raw := NoMethod(*s) 7600 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7601} 7602 7603type ViewDefinition struct { 7604 // Query: [Required] A query that BigQuery executes when the view is 7605 // referenced. 7606 Query string `json:"query,omitempty"` 7607 7608 // UseLegacySql: Specifies whether to use BigQuery's legacy SQL for this 7609 // view. The default value is true. If set to false, the view will use 7610 // BigQuery's standard SQL: 7611 // https://cloud.google.com/bigquery/sql-reference/ Queries and views 7612 // that reference this view must use the same flag value. 7613 UseLegacySql bool `json:"useLegacySql,omitempty"` 7614 7615 // UserDefinedFunctionResources: Describes user-defined function 7616 // resources used in the query. 7617 UserDefinedFunctionResources []*UserDefinedFunctionResource `json:"userDefinedFunctionResources,omitempty"` 7618 7619 // ForceSendFields is a list of field names (e.g. "Query") to 7620 // unconditionally include in API requests. By default, fields with 7621 // empty values are omitted from API requests. However, any non-pointer, 7622 // non-interface field appearing in ForceSendFields will be sent to the 7623 // server regardless of whether the field is empty or not. This may be 7624 // used to include empty fields in Patch requests. 7625 ForceSendFields []string `json:"-"` 7626 7627 // NullFields is a list of field names (e.g. "Query") to include in API 7628 // requests with the JSON null value. By default, fields with empty 7629 // values are omitted from API requests. However, any field with an 7630 // empty value appearing in NullFields will be sent to the server as 7631 // null. It is an error if a field in this list has a non-empty value. 7632 // This may be used to include null fields in Patch requests. 7633 NullFields []string `json:"-"` 7634} 7635 7636func (s *ViewDefinition) MarshalJSON() ([]byte, error) { 7637 type NoMethod ViewDefinition 7638 raw := NoMethod(*s) 7639 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7640} 7641 7642// method id "bigquery.datasets.delete": 7643 7644type DatasetsDeleteCall struct { 7645 s *Service 7646 projectId string 7647 datasetId string 7648 urlParams_ gensupport.URLParams 7649 ctx_ context.Context 7650 header_ http.Header 7651} 7652 7653// Delete: Deletes the dataset specified by the datasetId value. Before 7654// you can delete a dataset, you must delete all its tables, either 7655// manually or by specifying deleteContents. Immediately after deletion, 7656// you can create another dataset with the same name. 7657func (r *DatasetsService) Delete(projectId string, datasetId string) *DatasetsDeleteCall { 7658 c := &DatasetsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7659 c.projectId = projectId 7660 c.datasetId = datasetId 7661 return c 7662} 7663 7664// DeleteContents sets the optional parameter "deleteContents": If True, 7665// delete all the tables in the dataset. If False and the dataset 7666// contains tables, the request will fail. Default is False 7667func (c *DatasetsDeleteCall) DeleteContents(deleteContents bool) *DatasetsDeleteCall { 7668 c.urlParams_.Set("deleteContents", fmt.Sprint(deleteContents)) 7669 return c 7670} 7671 7672// Fields allows partial responses to be retrieved. See 7673// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7674// for more information. 7675func (c *DatasetsDeleteCall) Fields(s ...googleapi.Field) *DatasetsDeleteCall { 7676 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7677 return c 7678} 7679 7680// Context sets the context to be used in this call's Do method. Any 7681// pending HTTP request will be aborted if the provided context is 7682// canceled. 7683func (c *DatasetsDeleteCall) Context(ctx context.Context) *DatasetsDeleteCall { 7684 c.ctx_ = ctx 7685 return c 7686} 7687 7688// Header returns an http.Header that can be modified by the caller to 7689// add HTTP headers to the request. 7690func (c *DatasetsDeleteCall) Header() http.Header { 7691 if c.header_ == nil { 7692 c.header_ = make(http.Header) 7693 } 7694 return c.header_ 7695} 7696 7697func (c *DatasetsDeleteCall) doRequest(alt string) (*http.Response, error) { 7698 reqHeaders := make(http.Header) 7699 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 7700 for k, v := range c.header_ { 7701 reqHeaders[k] = v 7702 } 7703 reqHeaders.Set("User-Agent", c.s.userAgent()) 7704 var body io.Reader = nil 7705 c.urlParams_.Set("alt", alt) 7706 c.urlParams_.Set("prettyPrint", "false") 7707 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 7708 urls += "?" + c.urlParams_.Encode() 7709 req, err := http.NewRequest("DELETE", urls, body) 7710 if err != nil { 7711 return nil, err 7712 } 7713 req.Header = reqHeaders 7714 googleapi.Expand(req.URL, map[string]string{ 7715 "projectId": c.projectId, 7716 "datasetId": c.datasetId, 7717 }) 7718 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7719} 7720 7721// Do executes the "bigquery.datasets.delete" call. 7722func (c *DatasetsDeleteCall) Do(opts ...googleapi.CallOption) error { 7723 gensupport.SetOptions(c.urlParams_, opts...) 7724 res, err := c.doRequest("json") 7725 if err != nil { 7726 return err 7727 } 7728 defer googleapi.CloseBody(res) 7729 if err := googleapi.CheckResponse(res); err != nil { 7730 return err 7731 } 7732 return nil 7733 // { 7734 // "description": "Deletes the dataset specified by the datasetId value. Before you can delete a dataset, you must delete all its tables, either manually or by specifying deleteContents. Immediately after deletion, you can create another dataset with the same name.", 7735 // "httpMethod": "DELETE", 7736 // "id": "bigquery.datasets.delete", 7737 // "parameterOrder": [ 7738 // "projectId", 7739 // "datasetId" 7740 // ], 7741 // "parameters": { 7742 // "datasetId": { 7743 // "description": "Dataset ID of dataset being deleted", 7744 // "location": "path", 7745 // "required": true, 7746 // "type": "string" 7747 // }, 7748 // "deleteContents": { 7749 // "description": "If True, delete all the tables in the dataset. If False and the dataset contains tables, the request will fail. Default is False", 7750 // "location": "query", 7751 // "type": "boolean" 7752 // }, 7753 // "projectId": { 7754 // "description": "Project ID of the dataset being deleted", 7755 // "location": "path", 7756 // "required": true, 7757 // "type": "string" 7758 // } 7759 // }, 7760 // "path": "projects/{projectId}/datasets/{datasetId}", 7761 // "scopes": [ 7762 // "https://www.googleapis.com/auth/bigquery", 7763 // "https://www.googleapis.com/auth/cloud-platform" 7764 // ] 7765 // } 7766 7767} 7768 7769// method id "bigquery.datasets.get": 7770 7771type DatasetsGetCall struct { 7772 s *Service 7773 projectId string 7774 datasetId string 7775 urlParams_ gensupport.URLParams 7776 ifNoneMatch_ string 7777 ctx_ context.Context 7778 header_ http.Header 7779} 7780 7781// Get: Returns the dataset specified by datasetID. 7782func (r *DatasetsService) Get(projectId string, datasetId string) *DatasetsGetCall { 7783 c := &DatasetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7784 c.projectId = projectId 7785 c.datasetId = datasetId 7786 return c 7787} 7788 7789// Fields allows partial responses to be retrieved. See 7790// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7791// for more information. 7792func (c *DatasetsGetCall) Fields(s ...googleapi.Field) *DatasetsGetCall { 7793 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7794 return c 7795} 7796 7797// IfNoneMatch sets the optional parameter which makes the operation 7798// fail if the object's ETag matches the given value. This is useful for 7799// getting updates only after the object has changed since the last 7800// request. Use googleapi.IsNotModified to check whether the response 7801// error from Do is the result of In-None-Match. 7802func (c *DatasetsGetCall) IfNoneMatch(entityTag string) *DatasetsGetCall { 7803 c.ifNoneMatch_ = entityTag 7804 return c 7805} 7806 7807// Context sets the context to be used in this call's Do method. Any 7808// pending HTTP request will be aborted if the provided context is 7809// canceled. 7810func (c *DatasetsGetCall) Context(ctx context.Context) *DatasetsGetCall { 7811 c.ctx_ = ctx 7812 return c 7813} 7814 7815// Header returns an http.Header that can be modified by the caller to 7816// add HTTP headers to the request. 7817func (c *DatasetsGetCall) Header() http.Header { 7818 if c.header_ == nil { 7819 c.header_ = make(http.Header) 7820 } 7821 return c.header_ 7822} 7823 7824func (c *DatasetsGetCall) doRequest(alt string) (*http.Response, error) { 7825 reqHeaders := make(http.Header) 7826 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 7827 for k, v := range c.header_ { 7828 reqHeaders[k] = v 7829 } 7830 reqHeaders.Set("User-Agent", c.s.userAgent()) 7831 if c.ifNoneMatch_ != "" { 7832 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7833 } 7834 var body io.Reader = nil 7835 c.urlParams_.Set("alt", alt) 7836 c.urlParams_.Set("prettyPrint", "false") 7837 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 7838 urls += "?" + c.urlParams_.Encode() 7839 req, err := http.NewRequest("GET", urls, body) 7840 if err != nil { 7841 return nil, err 7842 } 7843 req.Header = reqHeaders 7844 googleapi.Expand(req.URL, map[string]string{ 7845 "projectId": c.projectId, 7846 "datasetId": c.datasetId, 7847 }) 7848 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7849} 7850 7851// Do executes the "bigquery.datasets.get" call. 7852// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 7853// code is an error. Response headers are in either 7854// *Dataset.ServerResponse.Header or (if a response was returned at all) 7855// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7856// check whether the returned error was because http.StatusNotModified 7857// was returned. 7858func (c *DatasetsGetCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 7859 gensupport.SetOptions(c.urlParams_, opts...) 7860 res, err := c.doRequest("json") 7861 if res != nil && res.StatusCode == http.StatusNotModified { 7862 if res.Body != nil { 7863 res.Body.Close() 7864 } 7865 return nil, &googleapi.Error{ 7866 Code: res.StatusCode, 7867 Header: res.Header, 7868 } 7869 } 7870 if err != nil { 7871 return nil, err 7872 } 7873 defer googleapi.CloseBody(res) 7874 if err := googleapi.CheckResponse(res); err != nil { 7875 return nil, err 7876 } 7877 ret := &Dataset{ 7878 ServerResponse: googleapi.ServerResponse{ 7879 Header: res.Header, 7880 HTTPStatusCode: res.StatusCode, 7881 }, 7882 } 7883 target := &ret 7884 if err := gensupport.DecodeResponse(target, res); err != nil { 7885 return nil, err 7886 } 7887 return ret, nil 7888 // { 7889 // "description": "Returns the dataset specified by datasetID.", 7890 // "httpMethod": "GET", 7891 // "id": "bigquery.datasets.get", 7892 // "parameterOrder": [ 7893 // "projectId", 7894 // "datasetId" 7895 // ], 7896 // "parameters": { 7897 // "datasetId": { 7898 // "description": "Dataset ID of the requested dataset", 7899 // "location": "path", 7900 // "required": true, 7901 // "type": "string" 7902 // }, 7903 // "projectId": { 7904 // "description": "Project ID of the requested dataset", 7905 // "location": "path", 7906 // "required": true, 7907 // "type": "string" 7908 // } 7909 // }, 7910 // "path": "projects/{projectId}/datasets/{datasetId}", 7911 // "response": { 7912 // "$ref": "Dataset" 7913 // }, 7914 // "scopes": [ 7915 // "https://www.googleapis.com/auth/bigquery", 7916 // "https://www.googleapis.com/auth/bigquery.readonly", 7917 // "https://www.googleapis.com/auth/cloud-platform", 7918 // "https://www.googleapis.com/auth/cloud-platform.read-only" 7919 // ] 7920 // } 7921 7922} 7923 7924// method id "bigquery.datasets.insert": 7925 7926type DatasetsInsertCall struct { 7927 s *Service 7928 projectId string 7929 dataset *Dataset 7930 urlParams_ gensupport.URLParams 7931 ctx_ context.Context 7932 header_ http.Header 7933} 7934 7935// Insert: Creates a new empty dataset. 7936func (r *DatasetsService) Insert(projectId string, dataset *Dataset) *DatasetsInsertCall { 7937 c := &DatasetsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7938 c.projectId = projectId 7939 c.dataset = dataset 7940 return c 7941} 7942 7943// Fields allows partial responses to be retrieved. See 7944// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7945// for more information. 7946func (c *DatasetsInsertCall) Fields(s ...googleapi.Field) *DatasetsInsertCall { 7947 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7948 return c 7949} 7950 7951// Context sets the context to be used in this call's Do method. Any 7952// pending HTTP request will be aborted if the provided context is 7953// canceled. 7954func (c *DatasetsInsertCall) Context(ctx context.Context) *DatasetsInsertCall { 7955 c.ctx_ = ctx 7956 return c 7957} 7958 7959// Header returns an http.Header that can be modified by the caller to 7960// add HTTP headers to the request. 7961func (c *DatasetsInsertCall) Header() http.Header { 7962 if c.header_ == nil { 7963 c.header_ = make(http.Header) 7964 } 7965 return c.header_ 7966} 7967 7968func (c *DatasetsInsertCall) doRequest(alt string) (*http.Response, error) { 7969 reqHeaders := make(http.Header) 7970 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 7971 for k, v := range c.header_ { 7972 reqHeaders[k] = v 7973 } 7974 reqHeaders.Set("User-Agent", c.s.userAgent()) 7975 var body io.Reader = nil 7976 body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset) 7977 if err != nil { 7978 return nil, err 7979 } 7980 reqHeaders.Set("Content-Type", "application/json") 7981 c.urlParams_.Set("alt", alt) 7982 c.urlParams_.Set("prettyPrint", "false") 7983 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets") 7984 urls += "?" + c.urlParams_.Encode() 7985 req, err := http.NewRequest("POST", urls, body) 7986 if err != nil { 7987 return nil, err 7988 } 7989 req.Header = reqHeaders 7990 googleapi.Expand(req.URL, map[string]string{ 7991 "projectId": c.projectId, 7992 }) 7993 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7994} 7995 7996// Do executes the "bigquery.datasets.insert" call. 7997// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 7998// code is an error. Response headers are in either 7999// *Dataset.ServerResponse.Header or (if a response was returned at all) 8000// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8001// check whether the returned error was because http.StatusNotModified 8002// was returned. 8003func (c *DatasetsInsertCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 8004 gensupport.SetOptions(c.urlParams_, opts...) 8005 res, err := c.doRequest("json") 8006 if res != nil && res.StatusCode == http.StatusNotModified { 8007 if res.Body != nil { 8008 res.Body.Close() 8009 } 8010 return nil, &googleapi.Error{ 8011 Code: res.StatusCode, 8012 Header: res.Header, 8013 } 8014 } 8015 if err != nil { 8016 return nil, err 8017 } 8018 defer googleapi.CloseBody(res) 8019 if err := googleapi.CheckResponse(res); err != nil { 8020 return nil, err 8021 } 8022 ret := &Dataset{ 8023 ServerResponse: googleapi.ServerResponse{ 8024 Header: res.Header, 8025 HTTPStatusCode: res.StatusCode, 8026 }, 8027 } 8028 target := &ret 8029 if err := gensupport.DecodeResponse(target, res); err != nil { 8030 return nil, err 8031 } 8032 return ret, nil 8033 // { 8034 // "description": "Creates a new empty dataset.", 8035 // "httpMethod": "POST", 8036 // "id": "bigquery.datasets.insert", 8037 // "parameterOrder": [ 8038 // "projectId" 8039 // ], 8040 // "parameters": { 8041 // "projectId": { 8042 // "description": "Project ID of the new dataset", 8043 // "location": "path", 8044 // "required": true, 8045 // "type": "string" 8046 // } 8047 // }, 8048 // "path": "projects/{projectId}/datasets", 8049 // "request": { 8050 // "$ref": "Dataset" 8051 // }, 8052 // "response": { 8053 // "$ref": "Dataset" 8054 // }, 8055 // "scopes": [ 8056 // "https://www.googleapis.com/auth/bigquery", 8057 // "https://www.googleapis.com/auth/cloud-platform" 8058 // ] 8059 // } 8060 8061} 8062 8063// method id "bigquery.datasets.list": 8064 8065type DatasetsListCall struct { 8066 s *Service 8067 projectId string 8068 urlParams_ gensupport.URLParams 8069 ifNoneMatch_ string 8070 ctx_ context.Context 8071 header_ http.Header 8072} 8073 8074// List: Lists all datasets in the specified project to which you have 8075// been granted the READER dataset role. 8076func (r *DatasetsService) List(projectId string) *DatasetsListCall { 8077 c := &DatasetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8078 c.projectId = projectId 8079 return c 8080} 8081 8082// All sets the optional parameter "all": Whether to list all datasets, 8083// including hidden ones 8084func (c *DatasetsListCall) All(all bool) *DatasetsListCall { 8085 c.urlParams_.Set("all", fmt.Sprint(all)) 8086 return c 8087} 8088 8089// Filter sets the optional parameter "filter": An expression for 8090// filtering the results of the request by label. The syntax is 8091// "labels.<name>[:<value>]". Multiple filters can be ANDed together by 8092// connecting with a space. Example: "labels.department:receiving 8093// labels.active". See Filtering datasets using labels for details. 8094func (c *DatasetsListCall) Filter(filter string) *DatasetsListCall { 8095 c.urlParams_.Set("filter", filter) 8096 return c 8097} 8098 8099// MaxResults sets the optional parameter "maxResults": The maximum 8100// number of results to return 8101func (c *DatasetsListCall) MaxResults(maxResults int64) *DatasetsListCall { 8102 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 8103 return c 8104} 8105 8106// PageToken sets the optional parameter "pageToken": Page token, 8107// returned by a previous call, to request the next page of results 8108func (c *DatasetsListCall) PageToken(pageToken string) *DatasetsListCall { 8109 c.urlParams_.Set("pageToken", pageToken) 8110 return c 8111} 8112 8113// Fields allows partial responses to be retrieved. See 8114// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8115// for more information. 8116func (c *DatasetsListCall) Fields(s ...googleapi.Field) *DatasetsListCall { 8117 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8118 return c 8119} 8120 8121// IfNoneMatch sets the optional parameter which makes the operation 8122// fail if the object's ETag matches the given value. This is useful for 8123// getting updates only after the object has changed since the last 8124// request. Use googleapi.IsNotModified to check whether the response 8125// error from Do is the result of In-None-Match. 8126func (c *DatasetsListCall) IfNoneMatch(entityTag string) *DatasetsListCall { 8127 c.ifNoneMatch_ = entityTag 8128 return c 8129} 8130 8131// Context sets the context to be used in this call's Do method. Any 8132// pending HTTP request will be aborted if the provided context is 8133// canceled. 8134func (c *DatasetsListCall) Context(ctx context.Context) *DatasetsListCall { 8135 c.ctx_ = ctx 8136 return c 8137} 8138 8139// Header returns an http.Header that can be modified by the caller to 8140// add HTTP headers to the request. 8141func (c *DatasetsListCall) Header() http.Header { 8142 if c.header_ == nil { 8143 c.header_ = make(http.Header) 8144 } 8145 return c.header_ 8146} 8147 8148func (c *DatasetsListCall) doRequest(alt string) (*http.Response, error) { 8149 reqHeaders := make(http.Header) 8150 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 8151 for k, v := range c.header_ { 8152 reqHeaders[k] = v 8153 } 8154 reqHeaders.Set("User-Agent", c.s.userAgent()) 8155 if c.ifNoneMatch_ != "" { 8156 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8157 } 8158 var body io.Reader = nil 8159 c.urlParams_.Set("alt", alt) 8160 c.urlParams_.Set("prettyPrint", "false") 8161 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets") 8162 urls += "?" + c.urlParams_.Encode() 8163 req, err := http.NewRequest("GET", urls, body) 8164 if err != nil { 8165 return nil, err 8166 } 8167 req.Header = reqHeaders 8168 googleapi.Expand(req.URL, map[string]string{ 8169 "projectId": c.projectId, 8170 }) 8171 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8172} 8173 8174// Do executes the "bigquery.datasets.list" call. 8175// Exactly one of *DatasetList or error will be non-nil. Any non-2xx 8176// status code is an error. Response headers are in either 8177// *DatasetList.ServerResponse.Header or (if a response was returned at 8178// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 8179// to check whether the returned error was because 8180// http.StatusNotModified was returned. 8181func (c *DatasetsListCall) Do(opts ...googleapi.CallOption) (*DatasetList, error) { 8182 gensupport.SetOptions(c.urlParams_, opts...) 8183 res, err := c.doRequest("json") 8184 if res != nil && res.StatusCode == http.StatusNotModified { 8185 if res.Body != nil { 8186 res.Body.Close() 8187 } 8188 return nil, &googleapi.Error{ 8189 Code: res.StatusCode, 8190 Header: res.Header, 8191 } 8192 } 8193 if err != nil { 8194 return nil, err 8195 } 8196 defer googleapi.CloseBody(res) 8197 if err := googleapi.CheckResponse(res); err != nil { 8198 return nil, err 8199 } 8200 ret := &DatasetList{ 8201 ServerResponse: googleapi.ServerResponse{ 8202 Header: res.Header, 8203 HTTPStatusCode: res.StatusCode, 8204 }, 8205 } 8206 target := &ret 8207 if err := gensupport.DecodeResponse(target, res); err != nil { 8208 return nil, err 8209 } 8210 return ret, nil 8211 // { 8212 // "description": "Lists all datasets in the specified project to which you have been granted the READER dataset role.", 8213 // "httpMethod": "GET", 8214 // "id": "bigquery.datasets.list", 8215 // "parameterOrder": [ 8216 // "projectId" 8217 // ], 8218 // "parameters": { 8219 // "all": { 8220 // "description": "Whether to list all datasets, including hidden ones", 8221 // "location": "query", 8222 // "type": "boolean" 8223 // }, 8224 // "filter": { 8225 // "description": "An expression for filtering the results of the request by label. The syntax is \"labels.\u003cname\u003e[:\u003cvalue\u003e]\". Multiple filters can be ANDed together by connecting with a space. Example: \"labels.department:receiving labels.active\". See Filtering datasets using labels for details.", 8226 // "location": "query", 8227 // "type": "string" 8228 // }, 8229 // "maxResults": { 8230 // "description": "The maximum number of results to return", 8231 // "format": "uint32", 8232 // "location": "query", 8233 // "type": "integer" 8234 // }, 8235 // "pageToken": { 8236 // "description": "Page token, returned by a previous call, to request the next page of results", 8237 // "location": "query", 8238 // "type": "string" 8239 // }, 8240 // "projectId": { 8241 // "description": "Project ID of the datasets to be listed", 8242 // "location": "path", 8243 // "required": true, 8244 // "type": "string" 8245 // } 8246 // }, 8247 // "path": "projects/{projectId}/datasets", 8248 // "response": { 8249 // "$ref": "DatasetList" 8250 // }, 8251 // "scopes": [ 8252 // "https://www.googleapis.com/auth/bigquery", 8253 // "https://www.googleapis.com/auth/bigquery.readonly", 8254 // "https://www.googleapis.com/auth/cloud-platform", 8255 // "https://www.googleapis.com/auth/cloud-platform.read-only" 8256 // ] 8257 // } 8258 8259} 8260 8261// Pages invokes f for each page of results. 8262// A non-nil error returned from f will halt the iteration. 8263// The provided context supersedes any context provided to the Context method. 8264func (c *DatasetsListCall) Pages(ctx context.Context, f func(*DatasetList) error) error { 8265 c.ctx_ = ctx 8266 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 8267 for { 8268 x, err := c.Do() 8269 if err != nil { 8270 return err 8271 } 8272 if err := f(x); err != nil { 8273 return err 8274 } 8275 if x.NextPageToken == "" { 8276 return nil 8277 } 8278 c.PageToken(x.NextPageToken) 8279 } 8280} 8281 8282// method id "bigquery.datasets.patch": 8283 8284type DatasetsPatchCall struct { 8285 s *Service 8286 projectId string 8287 datasetId string 8288 dataset *Dataset 8289 urlParams_ gensupport.URLParams 8290 ctx_ context.Context 8291 header_ http.Header 8292} 8293 8294// Patch: Updates information in an existing dataset. The update method 8295// replaces the entire dataset resource, whereas the patch method only 8296// replaces fields that are provided in the submitted dataset resource. 8297// This method supports patch semantics. 8298func (r *DatasetsService) Patch(projectId string, datasetId string, dataset *Dataset) *DatasetsPatchCall { 8299 c := &DatasetsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8300 c.projectId = projectId 8301 c.datasetId = datasetId 8302 c.dataset = dataset 8303 return c 8304} 8305 8306// Fields allows partial responses to be retrieved. See 8307// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8308// for more information. 8309func (c *DatasetsPatchCall) Fields(s ...googleapi.Field) *DatasetsPatchCall { 8310 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8311 return c 8312} 8313 8314// Context sets the context to be used in this call's Do method. Any 8315// pending HTTP request will be aborted if the provided context is 8316// canceled. 8317func (c *DatasetsPatchCall) Context(ctx context.Context) *DatasetsPatchCall { 8318 c.ctx_ = ctx 8319 return c 8320} 8321 8322// Header returns an http.Header that can be modified by the caller to 8323// add HTTP headers to the request. 8324func (c *DatasetsPatchCall) Header() http.Header { 8325 if c.header_ == nil { 8326 c.header_ = make(http.Header) 8327 } 8328 return c.header_ 8329} 8330 8331func (c *DatasetsPatchCall) doRequest(alt string) (*http.Response, error) { 8332 reqHeaders := make(http.Header) 8333 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 8334 for k, v := range c.header_ { 8335 reqHeaders[k] = v 8336 } 8337 reqHeaders.Set("User-Agent", c.s.userAgent()) 8338 var body io.Reader = nil 8339 body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset) 8340 if err != nil { 8341 return nil, err 8342 } 8343 reqHeaders.Set("Content-Type", "application/json") 8344 c.urlParams_.Set("alt", alt) 8345 c.urlParams_.Set("prettyPrint", "false") 8346 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 8347 urls += "?" + c.urlParams_.Encode() 8348 req, err := http.NewRequest("PATCH", urls, body) 8349 if err != nil { 8350 return nil, err 8351 } 8352 req.Header = reqHeaders 8353 googleapi.Expand(req.URL, map[string]string{ 8354 "projectId": c.projectId, 8355 "datasetId": c.datasetId, 8356 }) 8357 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8358} 8359 8360// Do executes the "bigquery.datasets.patch" call. 8361// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 8362// code is an error. Response headers are in either 8363// *Dataset.ServerResponse.Header or (if a response was returned at all) 8364// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8365// check whether the returned error was because http.StatusNotModified 8366// was returned. 8367func (c *DatasetsPatchCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 8368 gensupport.SetOptions(c.urlParams_, opts...) 8369 res, err := c.doRequest("json") 8370 if res != nil && res.StatusCode == http.StatusNotModified { 8371 if res.Body != nil { 8372 res.Body.Close() 8373 } 8374 return nil, &googleapi.Error{ 8375 Code: res.StatusCode, 8376 Header: res.Header, 8377 } 8378 } 8379 if err != nil { 8380 return nil, err 8381 } 8382 defer googleapi.CloseBody(res) 8383 if err := googleapi.CheckResponse(res); err != nil { 8384 return nil, err 8385 } 8386 ret := &Dataset{ 8387 ServerResponse: googleapi.ServerResponse{ 8388 Header: res.Header, 8389 HTTPStatusCode: res.StatusCode, 8390 }, 8391 } 8392 target := &ret 8393 if err := gensupport.DecodeResponse(target, res); err != nil { 8394 return nil, err 8395 } 8396 return ret, nil 8397 // { 8398 // "description": "Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource. This method supports patch semantics.", 8399 // "httpMethod": "PATCH", 8400 // "id": "bigquery.datasets.patch", 8401 // "parameterOrder": [ 8402 // "projectId", 8403 // "datasetId" 8404 // ], 8405 // "parameters": { 8406 // "datasetId": { 8407 // "description": "Dataset ID of the dataset being updated", 8408 // "location": "path", 8409 // "required": true, 8410 // "type": "string" 8411 // }, 8412 // "projectId": { 8413 // "description": "Project ID of the dataset being updated", 8414 // "location": "path", 8415 // "required": true, 8416 // "type": "string" 8417 // } 8418 // }, 8419 // "path": "projects/{projectId}/datasets/{datasetId}", 8420 // "request": { 8421 // "$ref": "Dataset" 8422 // }, 8423 // "response": { 8424 // "$ref": "Dataset" 8425 // }, 8426 // "scopes": [ 8427 // "https://www.googleapis.com/auth/bigquery", 8428 // "https://www.googleapis.com/auth/cloud-platform" 8429 // ] 8430 // } 8431 8432} 8433 8434// method id "bigquery.datasets.update": 8435 8436type DatasetsUpdateCall struct { 8437 s *Service 8438 projectId string 8439 datasetId string 8440 dataset *Dataset 8441 urlParams_ gensupport.URLParams 8442 ctx_ context.Context 8443 header_ http.Header 8444} 8445 8446// Update: Updates information in an existing dataset. The update method 8447// replaces the entire dataset resource, whereas the patch method only 8448// replaces fields that are provided in the submitted dataset resource. 8449func (r *DatasetsService) Update(projectId string, datasetId string, dataset *Dataset) *DatasetsUpdateCall { 8450 c := &DatasetsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8451 c.projectId = projectId 8452 c.datasetId = datasetId 8453 c.dataset = dataset 8454 return c 8455} 8456 8457// Fields allows partial responses to be retrieved. See 8458// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8459// for more information. 8460func (c *DatasetsUpdateCall) Fields(s ...googleapi.Field) *DatasetsUpdateCall { 8461 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8462 return c 8463} 8464 8465// Context sets the context to be used in this call's Do method. Any 8466// pending HTTP request will be aborted if the provided context is 8467// canceled. 8468func (c *DatasetsUpdateCall) Context(ctx context.Context) *DatasetsUpdateCall { 8469 c.ctx_ = ctx 8470 return c 8471} 8472 8473// Header returns an http.Header that can be modified by the caller to 8474// add HTTP headers to the request. 8475func (c *DatasetsUpdateCall) Header() http.Header { 8476 if c.header_ == nil { 8477 c.header_ = make(http.Header) 8478 } 8479 return c.header_ 8480} 8481 8482func (c *DatasetsUpdateCall) doRequest(alt string) (*http.Response, error) { 8483 reqHeaders := make(http.Header) 8484 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 8485 for k, v := range c.header_ { 8486 reqHeaders[k] = v 8487 } 8488 reqHeaders.Set("User-Agent", c.s.userAgent()) 8489 var body io.Reader = nil 8490 body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset) 8491 if err != nil { 8492 return nil, err 8493 } 8494 reqHeaders.Set("Content-Type", "application/json") 8495 c.urlParams_.Set("alt", alt) 8496 c.urlParams_.Set("prettyPrint", "false") 8497 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 8498 urls += "?" + c.urlParams_.Encode() 8499 req, err := http.NewRequest("PUT", urls, body) 8500 if err != nil { 8501 return nil, err 8502 } 8503 req.Header = reqHeaders 8504 googleapi.Expand(req.URL, map[string]string{ 8505 "projectId": c.projectId, 8506 "datasetId": c.datasetId, 8507 }) 8508 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8509} 8510 8511// Do executes the "bigquery.datasets.update" call. 8512// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 8513// code is an error. Response headers are in either 8514// *Dataset.ServerResponse.Header or (if a response was returned at all) 8515// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8516// check whether the returned error was because http.StatusNotModified 8517// was returned. 8518func (c *DatasetsUpdateCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 8519 gensupport.SetOptions(c.urlParams_, opts...) 8520 res, err := c.doRequest("json") 8521 if res != nil && res.StatusCode == http.StatusNotModified { 8522 if res.Body != nil { 8523 res.Body.Close() 8524 } 8525 return nil, &googleapi.Error{ 8526 Code: res.StatusCode, 8527 Header: res.Header, 8528 } 8529 } 8530 if err != nil { 8531 return nil, err 8532 } 8533 defer googleapi.CloseBody(res) 8534 if err := googleapi.CheckResponse(res); err != nil { 8535 return nil, err 8536 } 8537 ret := &Dataset{ 8538 ServerResponse: googleapi.ServerResponse{ 8539 Header: res.Header, 8540 HTTPStatusCode: res.StatusCode, 8541 }, 8542 } 8543 target := &ret 8544 if err := gensupport.DecodeResponse(target, res); err != nil { 8545 return nil, err 8546 } 8547 return ret, nil 8548 // { 8549 // "description": "Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource.", 8550 // "httpMethod": "PUT", 8551 // "id": "bigquery.datasets.update", 8552 // "parameterOrder": [ 8553 // "projectId", 8554 // "datasetId" 8555 // ], 8556 // "parameters": { 8557 // "datasetId": { 8558 // "description": "Dataset ID of the dataset being updated", 8559 // "location": "path", 8560 // "required": true, 8561 // "type": "string" 8562 // }, 8563 // "projectId": { 8564 // "description": "Project ID of the dataset being updated", 8565 // "location": "path", 8566 // "required": true, 8567 // "type": "string" 8568 // } 8569 // }, 8570 // "path": "projects/{projectId}/datasets/{datasetId}", 8571 // "request": { 8572 // "$ref": "Dataset" 8573 // }, 8574 // "response": { 8575 // "$ref": "Dataset" 8576 // }, 8577 // "scopes": [ 8578 // "https://www.googleapis.com/auth/bigquery", 8579 // "https://www.googleapis.com/auth/cloud-platform" 8580 // ] 8581 // } 8582 8583} 8584 8585// method id "bigquery.jobs.cancel": 8586 8587type JobsCancelCall struct { 8588 s *Service 8589 projectId string 8590 jobId string 8591 urlParams_ gensupport.URLParams 8592 ctx_ context.Context 8593 header_ http.Header 8594} 8595 8596// Cancel: Requests that a job be cancelled. This call will return 8597// immediately, and the client will need to poll for the job status to 8598// see if the cancel completed successfully. Cancelled jobs may still 8599// incur costs. 8600func (r *JobsService) Cancel(projectId string, jobId string) *JobsCancelCall { 8601 c := &JobsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8602 c.projectId = projectId 8603 c.jobId = jobId 8604 return c 8605} 8606 8607// Location sets the optional parameter "location": The geographic 8608// location of the job. Required except for US and EU. See details at 8609// https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 8610func (c *JobsCancelCall) Location(location string) *JobsCancelCall { 8611 c.urlParams_.Set("location", location) 8612 return c 8613} 8614 8615// Fields allows partial responses to be retrieved. See 8616// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8617// for more information. 8618func (c *JobsCancelCall) Fields(s ...googleapi.Field) *JobsCancelCall { 8619 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8620 return c 8621} 8622 8623// Context sets the context to be used in this call's Do method. Any 8624// pending HTTP request will be aborted if the provided context is 8625// canceled. 8626func (c *JobsCancelCall) Context(ctx context.Context) *JobsCancelCall { 8627 c.ctx_ = ctx 8628 return c 8629} 8630 8631// Header returns an http.Header that can be modified by the caller to 8632// add HTTP headers to the request. 8633func (c *JobsCancelCall) Header() http.Header { 8634 if c.header_ == nil { 8635 c.header_ = make(http.Header) 8636 } 8637 return c.header_ 8638} 8639 8640func (c *JobsCancelCall) doRequest(alt string) (*http.Response, error) { 8641 reqHeaders := make(http.Header) 8642 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 8643 for k, v := range c.header_ { 8644 reqHeaders[k] = v 8645 } 8646 reqHeaders.Set("User-Agent", c.s.userAgent()) 8647 var body io.Reader = nil 8648 c.urlParams_.Set("alt", alt) 8649 c.urlParams_.Set("prettyPrint", "false") 8650 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs/{jobId}/cancel") 8651 urls += "?" + c.urlParams_.Encode() 8652 req, err := http.NewRequest("POST", urls, body) 8653 if err != nil { 8654 return nil, err 8655 } 8656 req.Header = reqHeaders 8657 googleapi.Expand(req.URL, map[string]string{ 8658 "projectId": c.projectId, 8659 "jobId": c.jobId, 8660 }) 8661 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8662} 8663 8664// Do executes the "bigquery.jobs.cancel" call. 8665// Exactly one of *JobCancelResponse or error will be non-nil. Any 8666// non-2xx status code is an error. Response headers are in either 8667// *JobCancelResponse.ServerResponse.Header or (if a response was 8668// returned at all) in error.(*googleapi.Error).Header. Use 8669// googleapi.IsNotModified to check whether the returned error was 8670// because http.StatusNotModified was returned. 8671func (c *JobsCancelCall) Do(opts ...googleapi.CallOption) (*JobCancelResponse, error) { 8672 gensupport.SetOptions(c.urlParams_, opts...) 8673 res, err := c.doRequest("json") 8674 if res != nil && res.StatusCode == http.StatusNotModified { 8675 if res.Body != nil { 8676 res.Body.Close() 8677 } 8678 return nil, &googleapi.Error{ 8679 Code: res.StatusCode, 8680 Header: res.Header, 8681 } 8682 } 8683 if err != nil { 8684 return nil, err 8685 } 8686 defer googleapi.CloseBody(res) 8687 if err := googleapi.CheckResponse(res); err != nil { 8688 return nil, err 8689 } 8690 ret := &JobCancelResponse{ 8691 ServerResponse: googleapi.ServerResponse{ 8692 Header: res.Header, 8693 HTTPStatusCode: res.StatusCode, 8694 }, 8695 } 8696 target := &ret 8697 if err := gensupport.DecodeResponse(target, res); err != nil { 8698 return nil, err 8699 } 8700 return ret, nil 8701 // { 8702 // "description": "Requests that a job be cancelled. This call will return immediately, and the client will need to poll for the job status to see if the cancel completed successfully. Cancelled jobs may still incur costs.", 8703 // "httpMethod": "POST", 8704 // "id": "bigquery.jobs.cancel", 8705 // "parameterOrder": [ 8706 // "projectId", 8707 // "jobId" 8708 // ], 8709 // "parameters": { 8710 // "jobId": { 8711 // "description": "[Required] Job ID of the job to cancel", 8712 // "location": "path", 8713 // "required": true, 8714 // "type": "string" 8715 // }, 8716 // "location": { 8717 // "description": "The geographic location of the job. Required except for US and EU. See details at https://cloud.google.com/bigquery/docs/locations#specifying_your_location.", 8718 // "location": "query", 8719 // "type": "string" 8720 // }, 8721 // "projectId": { 8722 // "description": "[Required] Project ID of the job to cancel", 8723 // "location": "path", 8724 // "required": true, 8725 // "type": "string" 8726 // } 8727 // }, 8728 // "path": "projects/{projectId}/jobs/{jobId}/cancel", 8729 // "response": { 8730 // "$ref": "JobCancelResponse" 8731 // }, 8732 // "scopes": [ 8733 // "https://www.googleapis.com/auth/bigquery", 8734 // "https://www.googleapis.com/auth/cloud-platform" 8735 // ] 8736 // } 8737 8738} 8739 8740// method id "bigquery.jobs.get": 8741 8742type JobsGetCall struct { 8743 s *Service 8744 projectId string 8745 jobId string 8746 urlParams_ gensupport.URLParams 8747 ifNoneMatch_ string 8748 ctx_ context.Context 8749 header_ http.Header 8750} 8751 8752// Get: Returns information about a specific job. Job information is 8753// available for a six month period after creation. Requires that you're 8754// the person who ran the job, or have the Is Owner project role. 8755func (r *JobsService) Get(projectId string, jobId string) *JobsGetCall { 8756 c := &JobsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8757 c.projectId = projectId 8758 c.jobId = jobId 8759 return c 8760} 8761 8762// Location sets the optional parameter "location": The geographic 8763// location of the job. Required except for US and EU. See details at 8764// https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 8765func (c *JobsGetCall) Location(location string) *JobsGetCall { 8766 c.urlParams_.Set("location", location) 8767 return c 8768} 8769 8770// Fields allows partial responses to be retrieved. See 8771// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8772// for more information. 8773func (c *JobsGetCall) Fields(s ...googleapi.Field) *JobsGetCall { 8774 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8775 return c 8776} 8777 8778// IfNoneMatch sets the optional parameter which makes the operation 8779// fail if the object's ETag matches the given value. This is useful for 8780// getting updates only after the object has changed since the last 8781// request. Use googleapi.IsNotModified to check whether the response 8782// error from Do is the result of In-None-Match. 8783func (c *JobsGetCall) IfNoneMatch(entityTag string) *JobsGetCall { 8784 c.ifNoneMatch_ = entityTag 8785 return c 8786} 8787 8788// Context sets the context to be used in this call's Do method. Any 8789// pending HTTP request will be aborted if the provided context is 8790// canceled. 8791func (c *JobsGetCall) Context(ctx context.Context) *JobsGetCall { 8792 c.ctx_ = ctx 8793 return c 8794} 8795 8796// Header returns an http.Header that can be modified by the caller to 8797// add HTTP headers to the request. 8798func (c *JobsGetCall) Header() http.Header { 8799 if c.header_ == nil { 8800 c.header_ = make(http.Header) 8801 } 8802 return c.header_ 8803} 8804 8805func (c *JobsGetCall) doRequest(alt string) (*http.Response, error) { 8806 reqHeaders := make(http.Header) 8807 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 8808 for k, v := range c.header_ { 8809 reqHeaders[k] = v 8810 } 8811 reqHeaders.Set("User-Agent", c.s.userAgent()) 8812 if c.ifNoneMatch_ != "" { 8813 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8814 } 8815 var body io.Reader = nil 8816 c.urlParams_.Set("alt", alt) 8817 c.urlParams_.Set("prettyPrint", "false") 8818 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs/{jobId}") 8819 urls += "?" + c.urlParams_.Encode() 8820 req, err := http.NewRequest("GET", urls, body) 8821 if err != nil { 8822 return nil, err 8823 } 8824 req.Header = reqHeaders 8825 googleapi.Expand(req.URL, map[string]string{ 8826 "projectId": c.projectId, 8827 "jobId": c.jobId, 8828 }) 8829 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8830} 8831 8832// Do executes the "bigquery.jobs.get" call. 8833// Exactly one of *Job or error will be non-nil. Any non-2xx status code 8834// is an error. Response headers are in either 8835// *Job.ServerResponse.Header or (if a response was returned at all) in 8836// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 8837// whether the returned error was because http.StatusNotModified was 8838// returned. 8839func (c *JobsGetCall) Do(opts ...googleapi.CallOption) (*Job, error) { 8840 gensupport.SetOptions(c.urlParams_, opts...) 8841 res, err := c.doRequest("json") 8842 if res != nil && res.StatusCode == http.StatusNotModified { 8843 if res.Body != nil { 8844 res.Body.Close() 8845 } 8846 return nil, &googleapi.Error{ 8847 Code: res.StatusCode, 8848 Header: res.Header, 8849 } 8850 } 8851 if err != nil { 8852 return nil, err 8853 } 8854 defer googleapi.CloseBody(res) 8855 if err := googleapi.CheckResponse(res); err != nil { 8856 return nil, err 8857 } 8858 ret := &Job{ 8859 ServerResponse: googleapi.ServerResponse{ 8860 Header: res.Header, 8861 HTTPStatusCode: res.StatusCode, 8862 }, 8863 } 8864 target := &ret 8865 if err := gensupport.DecodeResponse(target, res); err != nil { 8866 return nil, err 8867 } 8868 return ret, nil 8869 // { 8870 // "description": "Returns information about a specific job. Job information is available for a six month period after creation. Requires that you're the person who ran the job, or have the Is Owner project role.", 8871 // "httpMethod": "GET", 8872 // "id": "bigquery.jobs.get", 8873 // "parameterOrder": [ 8874 // "projectId", 8875 // "jobId" 8876 // ], 8877 // "parameters": { 8878 // "jobId": { 8879 // "description": "[Required] Job ID of the requested job", 8880 // "location": "path", 8881 // "required": true, 8882 // "type": "string" 8883 // }, 8884 // "location": { 8885 // "description": "The geographic location of the job. Required except for US and EU. See details at https://cloud.google.com/bigquery/docs/locations#specifying_your_location.", 8886 // "location": "query", 8887 // "type": "string" 8888 // }, 8889 // "projectId": { 8890 // "description": "[Required] Project ID of the requested job", 8891 // "location": "path", 8892 // "required": true, 8893 // "type": "string" 8894 // } 8895 // }, 8896 // "path": "projects/{projectId}/jobs/{jobId}", 8897 // "response": { 8898 // "$ref": "Job" 8899 // }, 8900 // "scopes": [ 8901 // "https://www.googleapis.com/auth/bigquery", 8902 // "https://www.googleapis.com/auth/bigquery.readonly", 8903 // "https://www.googleapis.com/auth/cloud-platform", 8904 // "https://www.googleapis.com/auth/cloud-platform.read-only" 8905 // ] 8906 // } 8907 8908} 8909 8910// method id "bigquery.jobs.getQueryResults": 8911 8912type JobsGetQueryResultsCall struct { 8913 s *Service 8914 projectId string 8915 jobId string 8916 urlParams_ gensupport.URLParams 8917 ifNoneMatch_ string 8918 ctx_ context.Context 8919 header_ http.Header 8920} 8921 8922// GetQueryResults: Retrieves the results of a query job. 8923func (r *JobsService) GetQueryResults(projectId string, jobId string) *JobsGetQueryResultsCall { 8924 c := &JobsGetQueryResultsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8925 c.projectId = projectId 8926 c.jobId = jobId 8927 return c 8928} 8929 8930// Location sets the optional parameter "location": The geographic 8931// location where the job should run. Required except for US and EU. See 8932// details at 8933// https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 8934func (c *JobsGetQueryResultsCall) Location(location string) *JobsGetQueryResultsCall { 8935 c.urlParams_.Set("location", location) 8936 return c 8937} 8938 8939// MaxResults sets the optional parameter "maxResults": Maximum number 8940// of results to read 8941func (c *JobsGetQueryResultsCall) MaxResults(maxResults int64) *JobsGetQueryResultsCall { 8942 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 8943 return c 8944} 8945 8946// PageToken sets the optional parameter "pageToken": Page token, 8947// returned by a previous call, to request the next page of results 8948func (c *JobsGetQueryResultsCall) PageToken(pageToken string) *JobsGetQueryResultsCall { 8949 c.urlParams_.Set("pageToken", pageToken) 8950 return c 8951} 8952 8953// StartIndex sets the optional parameter "startIndex": Zero-based index 8954// of the starting row 8955func (c *JobsGetQueryResultsCall) StartIndex(startIndex uint64) *JobsGetQueryResultsCall { 8956 c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) 8957 return c 8958} 8959 8960// TimeoutMs sets the optional parameter "timeoutMs": How long to wait 8961// for the query to complete, in milliseconds, before returning. Default 8962// is 10 seconds. If the timeout passes before the job completes, the 8963// 'jobComplete' field in the response will be false 8964func (c *JobsGetQueryResultsCall) TimeoutMs(timeoutMs int64) *JobsGetQueryResultsCall { 8965 c.urlParams_.Set("timeoutMs", fmt.Sprint(timeoutMs)) 8966 return c 8967} 8968 8969// Fields allows partial responses to be retrieved. See 8970// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8971// for more information. 8972func (c *JobsGetQueryResultsCall) Fields(s ...googleapi.Field) *JobsGetQueryResultsCall { 8973 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8974 return c 8975} 8976 8977// IfNoneMatch sets the optional parameter which makes the operation 8978// fail if the object's ETag matches the given value. This is useful for 8979// getting updates only after the object has changed since the last 8980// request. Use googleapi.IsNotModified to check whether the response 8981// error from Do is the result of In-None-Match. 8982func (c *JobsGetQueryResultsCall) IfNoneMatch(entityTag string) *JobsGetQueryResultsCall { 8983 c.ifNoneMatch_ = entityTag 8984 return c 8985} 8986 8987// Context sets the context to be used in this call's Do method. Any 8988// pending HTTP request will be aborted if the provided context is 8989// canceled. 8990func (c *JobsGetQueryResultsCall) Context(ctx context.Context) *JobsGetQueryResultsCall { 8991 c.ctx_ = ctx 8992 return c 8993} 8994 8995// Header returns an http.Header that can be modified by the caller to 8996// add HTTP headers to the request. 8997func (c *JobsGetQueryResultsCall) Header() http.Header { 8998 if c.header_ == nil { 8999 c.header_ = make(http.Header) 9000 } 9001 return c.header_ 9002} 9003 9004func (c *JobsGetQueryResultsCall) doRequest(alt string) (*http.Response, error) { 9005 reqHeaders := make(http.Header) 9006 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 9007 for k, v := range c.header_ { 9008 reqHeaders[k] = v 9009 } 9010 reqHeaders.Set("User-Agent", c.s.userAgent()) 9011 if c.ifNoneMatch_ != "" { 9012 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9013 } 9014 var body io.Reader = nil 9015 c.urlParams_.Set("alt", alt) 9016 c.urlParams_.Set("prettyPrint", "false") 9017 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/queries/{jobId}") 9018 urls += "?" + c.urlParams_.Encode() 9019 req, err := http.NewRequest("GET", urls, body) 9020 if err != nil { 9021 return nil, err 9022 } 9023 req.Header = reqHeaders 9024 googleapi.Expand(req.URL, map[string]string{ 9025 "projectId": c.projectId, 9026 "jobId": c.jobId, 9027 }) 9028 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9029} 9030 9031// Do executes the "bigquery.jobs.getQueryResults" call. 9032// Exactly one of *GetQueryResultsResponse or error will be non-nil. Any 9033// non-2xx status code is an error. Response headers are in either 9034// *GetQueryResultsResponse.ServerResponse.Header or (if a response was 9035// returned at all) in error.(*googleapi.Error).Header. Use 9036// googleapi.IsNotModified to check whether the returned error was 9037// because http.StatusNotModified was returned. 9038func (c *JobsGetQueryResultsCall) Do(opts ...googleapi.CallOption) (*GetQueryResultsResponse, error) { 9039 gensupport.SetOptions(c.urlParams_, opts...) 9040 res, err := c.doRequest("json") 9041 if res != nil && res.StatusCode == http.StatusNotModified { 9042 if res.Body != nil { 9043 res.Body.Close() 9044 } 9045 return nil, &googleapi.Error{ 9046 Code: res.StatusCode, 9047 Header: res.Header, 9048 } 9049 } 9050 if err != nil { 9051 return nil, err 9052 } 9053 defer googleapi.CloseBody(res) 9054 if err := googleapi.CheckResponse(res); err != nil { 9055 return nil, err 9056 } 9057 ret := &GetQueryResultsResponse{ 9058 ServerResponse: googleapi.ServerResponse{ 9059 Header: res.Header, 9060 HTTPStatusCode: res.StatusCode, 9061 }, 9062 } 9063 target := &ret 9064 if err := gensupport.DecodeResponse(target, res); err != nil { 9065 return nil, err 9066 } 9067 return ret, nil 9068 // { 9069 // "description": "Retrieves the results of a query job.", 9070 // "httpMethod": "GET", 9071 // "id": "bigquery.jobs.getQueryResults", 9072 // "parameterOrder": [ 9073 // "projectId", 9074 // "jobId" 9075 // ], 9076 // "parameters": { 9077 // "jobId": { 9078 // "description": "[Required] Job ID of the query job", 9079 // "location": "path", 9080 // "required": true, 9081 // "type": "string" 9082 // }, 9083 // "location": { 9084 // "description": "The geographic location where the job should run. Required except for US and EU. See details at https://cloud.google.com/bigquery/docs/locations#specifying_your_location.", 9085 // "location": "query", 9086 // "type": "string" 9087 // }, 9088 // "maxResults": { 9089 // "description": "Maximum number of results to read", 9090 // "format": "uint32", 9091 // "location": "query", 9092 // "type": "integer" 9093 // }, 9094 // "pageToken": { 9095 // "description": "Page token, returned by a previous call, to request the next page of results", 9096 // "location": "query", 9097 // "type": "string" 9098 // }, 9099 // "projectId": { 9100 // "description": "[Required] Project ID of the query job", 9101 // "location": "path", 9102 // "required": true, 9103 // "type": "string" 9104 // }, 9105 // "startIndex": { 9106 // "description": "Zero-based index of the starting row", 9107 // "format": "uint64", 9108 // "location": "query", 9109 // "type": "string" 9110 // }, 9111 // "timeoutMs": { 9112 // "description": "How long to wait for the query to complete, in milliseconds, before returning. Default is 10 seconds. If the timeout passes before the job completes, the 'jobComplete' field in the response will be false", 9113 // "format": "uint32", 9114 // "location": "query", 9115 // "type": "integer" 9116 // } 9117 // }, 9118 // "path": "projects/{projectId}/queries/{jobId}", 9119 // "response": { 9120 // "$ref": "GetQueryResultsResponse" 9121 // }, 9122 // "scopes": [ 9123 // "https://www.googleapis.com/auth/bigquery", 9124 // "https://www.googleapis.com/auth/bigquery.readonly", 9125 // "https://www.googleapis.com/auth/cloud-platform", 9126 // "https://www.googleapis.com/auth/cloud-platform.read-only" 9127 // ] 9128 // } 9129 9130} 9131 9132// Pages invokes f for each page of results. 9133// A non-nil error returned from f will halt the iteration. 9134// The provided context supersedes any context provided to the Context method. 9135func (c *JobsGetQueryResultsCall) Pages(ctx context.Context, f func(*GetQueryResultsResponse) error) error { 9136 c.ctx_ = ctx 9137 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 9138 for { 9139 x, err := c.Do() 9140 if err != nil { 9141 return err 9142 } 9143 if err := f(x); err != nil { 9144 return err 9145 } 9146 if x.PageToken == "" { 9147 return nil 9148 } 9149 c.PageToken(x.PageToken) 9150 } 9151} 9152 9153// method id "bigquery.jobs.insert": 9154 9155type JobsInsertCall struct { 9156 s *Service 9157 projectId string 9158 job *Job 9159 urlParams_ gensupport.URLParams 9160 mediaInfo_ *gensupport.MediaInfo 9161 ctx_ context.Context 9162 header_ http.Header 9163} 9164 9165// Insert: Starts a new asynchronous job. Requires the Can View project 9166// role. 9167func (r *JobsService) Insert(projectId string, job *Job) *JobsInsertCall { 9168 c := &JobsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9169 c.projectId = projectId 9170 c.job = job 9171 return c 9172} 9173 9174// Media specifies the media to upload in one or more chunks. The chunk 9175// size may be controlled by supplying a MediaOption generated by 9176// googleapi.ChunkSize. The chunk size defaults to 9177// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 9178// upload request will be determined by sniffing the contents of r, 9179// unless a MediaOption generated by googleapi.ContentType is 9180// supplied. 9181// At most one of Media and ResumableMedia may be set. 9182func (c *JobsInsertCall) Media(r io.Reader, options ...googleapi.MediaOption) *JobsInsertCall { 9183 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 9184 return c 9185} 9186 9187// ResumableMedia specifies the media to upload in chunks and can be 9188// canceled with ctx. 9189// 9190// Deprecated: use Media instead. 9191// 9192// At most one of Media and ResumableMedia may be set. mediaType 9193// identifies the MIME media type of the upload, such as "image/png". If 9194// mediaType is "", it will be auto-detected. The provided ctx will 9195// supersede any context previously provided to the Context method. 9196func (c *JobsInsertCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *JobsInsertCall { 9197 c.ctx_ = ctx 9198 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 9199 return c 9200} 9201 9202// ProgressUpdater provides a callback function that will be called 9203// after every chunk. It should be a low-latency function in order to 9204// not slow down the upload operation. This should only be called when 9205// using ResumableMedia (as opposed to Media). 9206func (c *JobsInsertCall) ProgressUpdater(pu googleapi.ProgressUpdater) *JobsInsertCall { 9207 c.mediaInfo_.SetProgressUpdater(pu) 9208 return c 9209} 9210 9211// Fields allows partial responses to be retrieved. See 9212// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9213// for more information. 9214func (c *JobsInsertCall) Fields(s ...googleapi.Field) *JobsInsertCall { 9215 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9216 return c 9217} 9218 9219// Context sets the context to be used in this call's Do method. Any 9220// pending HTTP request will be aborted if the provided context is 9221// canceled. 9222// This context will supersede any context previously provided to the 9223// ResumableMedia method. 9224func (c *JobsInsertCall) Context(ctx context.Context) *JobsInsertCall { 9225 c.ctx_ = ctx 9226 return c 9227} 9228 9229// Header returns an http.Header that can be modified by the caller to 9230// add HTTP headers to the request. 9231func (c *JobsInsertCall) Header() http.Header { 9232 if c.header_ == nil { 9233 c.header_ = make(http.Header) 9234 } 9235 return c.header_ 9236} 9237 9238func (c *JobsInsertCall) doRequest(alt string) (*http.Response, error) { 9239 reqHeaders := make(http.Header) 9240 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 9241 for k, v := range c.header_ { 9242 reqHeaders[k] = v 9243 } 9244 reqHeaders.Set("User-Agent", c.s.userAgent()) 9245 var body io.Reader = nil 9246 body, err := googleapi.WithoutDataWrapper.JSONReader(c.job) 9247 if err != nil { 9248 return nil, err 9249 } 9250 reqHeaders.Set("Content-Type", "application/json") 9251 c.urlParams_.Set("alt", alt) 9252 c.urlParams_.Set("prettyPrint", "false") 9253 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs") 9254 if c.mediaInfo_ != nil { 9255 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/bigquery/v2/projects/{projectId}/jobs") 9256 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 9257 } 9258 if body == nil { 9259 body = new(bytes.Buffer) 9260 reqHeaders.Set("Content-Type", "application/json") 9261 } 9262 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 9263 defer cleanup() 9264 urls += "?" + c.urlParams_.Encode() 9265 req, err := http.NewRequest("POST", urls, body) 9266 if err != nil { 9267 return nil, err 9268 } 9269 req.Header = reqHeaders 9270 req.GetBody = getBody 9271 googleapi.Expand(req.URL, map[string]string{ 9272 "projectId": c.projectId, 9273 }) 9274 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9275} 9276 9277// Do executes the "bigquery.jobs.insert" call. 9278// Exactly one of *Job or error will be non-nil. Any non-2xx status code 9279// is an error. Response headers are in either 9280// *Job.ServerResponse.Header or (if a response was returned at all) in 9281// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9282// whether the returned error was because http.StatusNotModified was 9283// returned. 9284func (c *JobsInsertCall) Do(opts ...googleapi.CallOption) (*Job, error) { 9285 gensupport.SetOptions(c.urlParams_, opts...) 9286 res, err := c.doRequest("json") 9287 if res != nil && res.StatusCode == http.StatusNotModified { 9288 if res.Body != nil { 9289 res.Body.Close() 9290 } 9291 return nil, &googleapi.Error{ 9292 Code: res.StatusCode, 9293 Header: res.Header, 9294 } 9295 } 9296 if err != nil { 9297 return nil, err 9298 } 9299 defer googleapi.CloseBody(res) 9300 if err := googleapi.CheckResponse(res); err != nil { 9301 return nil, err 9302 } 9303 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 9304 if rx != nil { 9305 rx.Client = c.s.client 9306 rx.UserAgent = c.s.userAgent() 9307 ctx := c.ctx_ 9308 if ctx == nil { 9309 ctx = context.TODO() 9310 } 9311 res, err = rx.Upload(ctx) 9312 if err != nil { 9313 return nil, err 9314 } 9315 defer res.Body.Close() 9316 if err := googleapi.CheckResponse(res); err != nil { 9317 return nil, err 9318 } 9319 } 9320 ret := &Job{ 9321 ServerResponse: googleapi.ServerResponse{ 9322 Header: res.Header, 9323 HTTPStatusCode: res.StatusCode, 9324 }, 9325 } 9326 target := &ret 9327 if err := gensupport.DecodeResponse(target, res); err != nil { 9328 return nil, err 9329 } 9330 return ret, nil 9331 // { 9332 // "description": "Starts a new asynchronous job. Requires the Can View project role.", 9333 // "httpMethod": "POST", 9334 // "id": "bigquery.jobs.insert", 9335 // "mediaUpload": { 9336 // "accept": [ 9337 // "*/*" 9338 // ], 9339 // "protocols": { 9340 // "resumable": { 9341 // "multipart": true, 9342 // "path": "/resumable/upload/bigquery/v2/projects/{projectId}/jobs" 9343 // }, 9344 // "simple": { 9345 // "multipart": true, 9346 // "path": "/upload/bigquery/v2/projects/{projectId}/jobs" 9347 // } 9348 // } 9349 // }, 9350 // "parameterOrder": [ 9351 // "projectId" 9352 // ], 9353 // "parameters": { 9354 // "projectId": { 9355 // "description": "Project ID of the project that will be billed for the job", 9356 // "location": "path", 9357 // "required": true, 9358 // "type": "string" 9359 // } 9360 // }, 9361 // "path": "projects/{projectId}/jobs", 9362 // "request": { 9363 // "$ref": "Job" 9364 // }, 9365 // "response": { 9366 // "$ref": "Job" 9367 // }, 9368 // "scopes": [ 9369 // "https://www.googleapis.com/auth/bigquery", 9370 // "https://www.googleapis.com/auth/cloud-platform", 9371 // "https://www.googleapis.com/auth/devstorage.full_control", 9372 // "https://www.googleapis.com/auth/devstorage.read_only", 9373 // "https://www.googleapis.com/auth/devstorage.read_write" 9374 // ], 9375 // "supportsMediaUpload": true 9376 // } 9377 9378} 9379 9380// method id "bigquery.jobs.list": 9381 9382type JobsListCall struct { 9383 s *Service 9384 projectId string 9385 urlParams_ gensupport.URLParams 9386 ifNoneMatch_ string 9387 ctx_ context.Context 9388 header_ http.Header 9389} 9390 9391// List: Lists all jobs that you started in the specified project. Job 9392// information is available for a six month period after creation. The 9393// job list is sorted in reverse chronological order, by job creation 9394// time. Requires the Can View project role, or the Is Owner project 9395// role if you set the allUsers property. 9396func (r *JobsService) List(projectId string) *JobsListCall { 9397 c := &JobsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9398 c.projectId = projectId 9399 return c 9400} 9401 9402// AllUsers sets the optional parameter "allUsers": Whether to display 9403// jobs owned by all users in the project. Default false 9404func (c *JobsListCall) AllUsers(allUsers bool) *JobsListCall { 9405 c.urlParams_.Set("allUsers", fmt.Sprint(allUsers)) 9406 return c 9407} 9408 9409// MaxCreationTime sets the optional parameter "maxCreationTime": Max 9410// value for job creation time, in milliseconds since the POSIX epoch. 9411// If set, only jobs created before or at this timestamp are returned 9412func (c *JobsListCall) MaxCreationTime(maxCreationTime uint64) *JobsListCall { 9413 c.urlParams_.Set("maxCreationTime", fmt.Sprint(maxCreationTime)) 9414 return c 9415} 9416 9417// MaxResults sets the optional parameter "maxResults": Maximum number 9418// of results to return 9419func (c *JobsListCall) MaxResults(maxResults int64) *JobsListCall { 9420 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 9421 return c 9422} 9423 9424// MinCreationTime sets the optional parameter "minCreationTime": Min 9425// value for job creation time, in milliseconds since the POSIX epoch. 9426// If set, only jobs created after or at this timestamp are returned 9427func (c *JobsListCall) MinCreationTime(minCreationTime uint64) *JobsListCall { 9428 c.urlParams_.Set("minCreationTime", fmt.Sprint(minCreationTime)) 9429 return c 9430} 9431 9432// PageToken sets the optional parameter "pageToken": Page token, 9433// returned by a previous call, to request the next page of results 9434func (c *JobsListCall) PageToken(pageToken string) *JobsListCall { 9435 c.urlParams_.Set("pageToken", pageToken) 9436 return c 9437} 9438 9439// ParentJobId sets the optional parameter "parentJobId": If set, 9440// retrieves only jobs whose parent is this job. Otherwise, retrieves 9441// only jobs which have no parent 9442func (c *JobsListCall) ParentJobId(parentJobId string) *JobsListCall { 9443 c.urlParams_.Set("parentJobId", parentJobId) 9444 return c 9445} 9446 9447// Projection sets the optional parameter "projection": Restrict 9448// information returned to a set of selected fields 9449// 9450// Possible values: 9451// "full" - Includes all job data 9452// "minimal" - Does not include the job configuration 9453func (c *JobsListCall) Projection(projection string) *JobsListCall { 9454 c.urlParams_.Set("projection", projection) 9455 return c 9456} 9457 9458// StateFilter sets the optional parameter "stateFilter": Filter for job 9459// state 9460// 9461// Possible values: 9462// "done" - Finished jobs 9463// "pending" - Pending jobs 9464// "running" - Running jobs 9465func (c *JobsListCall) StateFilter(stateFilter ...string) *JobsListCall { 9466 c.urlParams_.SetMulti("stateFilter", append([]string{}, stateFilter...)) 9467 return c 9468} 9469 9470// Fields allows partial responses to be retrieved. See 9471// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9472// for more information. 9473func (c *JobsListCall) Fields(s ...googleapi.Field) *JobsListCall { 9474 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9475 return c 9476} 9477 9478// IfNoneMatch sets the optional parameter which makes the operation 9479// fail if the object's ETag matches the given value. This is useful for 9480// getting updates only after the object has changed since the last 9481// request. Use googleapi.IsNotModified to check whether the response 9482// error from Do is the result of In-None-Match. 9483func (c *JobsListCall) IfNoneMatch(entityTag string) *JobsListCall { 9484 c.ifNoneMatch_ = entityTag 9485 return c 9486} 9487 9488// Context sets the context to be used in this call's Do method. Any 9489// pending HTTP request will be aborted if the provided context is 9490// canceled. 9491func (c *JobsListCall) Context(ctx context.Context) *JobsListCall { 9492 c.ctx_ = ctx 9493 return c 9494} 9495 9496// Header returns an http.Header that can be modified by the caller to 9497// add HTTP headers to the request. 9498func (c *JobsListCall) Header() http.Header { 9499 if c.header_ == nil { 9500 c.header_ = make(http.Header) 9501 } 9502 return c.header_ 9503} 9504 9505func (c *JobsListCall) doRequest(alt string) (*http.Response, error) { 9506 reqHeaders := make(http.Header) 9507 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 9508 for k, v := range c.header_ { 9509 reqHeaders[k] = v 9510 } 9511 reqHeaders.Set("User-Agent", c.s.userAgent()) 9512 if c.ifNoneMatch_ != "" { 9513 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9514 } 9515 var body io.Reader = nil 9516 c.urlParams_.Set("alt", alt) 9517 c.urlParams_.Set("prettyPrint", "false") 9518 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs") 9519 urls += "?" + c.urlParams_.Encode() 9520 req, err := http.NewRequest("GET", urls, body) 9521 if err != nil { 9522 return nil, err 9523 } 9524 req.Header = reqHeaders 9525 googleapi.Expand(req.URL, map[string]string{ 9526 "projectId": c.projectId, 9527 }) 9528 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9529} 9530 9531// Do executes the "bigquery.jobs.list" call. 9532// Exactly one of *JobList or error will be non-nil. Any non-2xx status 9533// code is an error. Response headers are in either 9534// *JobList.ServerResponse.Header or (if a response was returned at all) 9535// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 9536// check whether the returned error was because http.StatusNotModified 9537// was returned. 9538func (c *JobsListCall) Do(opts ...googleapi.CallOption) (*JobList, error) { 9539 gensupport.SetOptions(c.urlParams_, opts...) 9540 res, err := c.doRequest("json") 9541 if res != nil && res.StatusCode == http.StatusNotModified { 9542 if res.Body != nil { 9543 res.Body.Close() 9544 } 9545 return nil, &googleapi.Error{ 9546 Code: res.StatusCode, 9547 Header: res.Header, 9548 } 9549 } 9550 if err != nil { 9551 return nil, err 9552 } 9553 defer googleapi.CloseBody(res) 9554 if err := googleapi.CheckResponse(res); err != nil { 9555 return nil, err 9556 } 9557 ret := &JobList{ 9558 ServerResponse: googleapi.ServerResponse{ 9559 Header: res.Header, 9560 HTTPStatusCode: res.StatusCode, 9561 }, 9562 } 9563 target := &ret 9564 if err := gensupport.DecodeResponse(target, res); err != nil { 9565 return nil, err 9566 } 9567 return ret, nil 9568 // { 9569 // "description": "Lists all jobs that you started in the specified project. Job information is available for a six month period after creation. The job list is sorted in reverse chronological order, by job creation time. Requires the Can View project role, or the Is Owner project role if you set the allUsers property.", 9570 // "httpMethod": "GET", 9571 // "id": "bigquery.jobs.list", 9572 // "parameterOrder": [ 9573 // "projectId" 9574 // ], 9575 // "parameters": { 9576 // "allUsers": { 9577 // "description": "Whether to display jobs owned by all users in the project. Default false", 9578 // "location": "query", 9579 // "type": "boolean" 9580 // }, 9581 // "maxCreationTime": { 9582 // "description": "Max value for job creation time, in milliseconds since the POSIX epoch. If set, only jobs created before or at this timestamp are returned", 9583 // "format": "uint64", 9584 // "location": "query", 9585 // "type": "string" 9586 // }, 9587 // "maxResults": { 9588 // "description": "Maximum number of results to return", 9589 // "format": "uint32", 9590 // "location": "query", 9591 // "type": "integer" 9592 // }, 9593 // "minCreationTime": { 9594 // "description": "Min value for job creation time, in milliseconds since the POSIX epoch. If set, only jobs created after or at this timestamp are returned", 9595 // "format": "uint64", 9596 // "location": "query", 9597 // "type": "string" 9598 // }, 9599 // "pageToken": { 9600 // "description": "Page token, returned by a previous call, to request the next page of results", 9601 // "location": "query", 9602 // "type": "string" 9603 // }, 9604 // "parentJobId": { 9605 // "description": "If set, retrieves only jobs whose parent is this job. Otherwise, retrieves only jobs which have no parent", 9606 // "location": "query", 9607 // "type": "string" 9608 // }, 9609 // "projectId": { 9610 // "description": "Project ID of the jobs to list", 9611 // "location": "path", 9612 // "required": true, 9613 // "type": "string" 9614 // }, 9615 // "projection": { 9616 // "description": "Restrict information returned to a set of selected fields", 9617 // "enum": [ 9618 // "full", 9619 // "minimal" 9620 // ], 9621 // "enumDescriptions": [ 9622 // "Includes all job data", 9623 // "Does not include the job configuration" 9624 // ], 9625 // "location": "query", 9626 // "type": "string" 9627 // }, 9628 // "stateFilter": { 9629 // "description": "Filter for job state", 9630 // "enum": [ 9631 // "done", 9632 // "pending", 9633 // "running" 9634 // ], 9635 // "enumDescriptions": [ 9636 // "Finished jobs", 9637 // "Pending jobs", 9638 // "Running jobs" 9639 // ], 9640 // "location": "query", 9641 // "repeated": true, 9642 // "type": "string" 9643 // } 9644 // }, 9645 // "path": "projects/{projectId}/jobs", 9646 // "response": { 9647 // "$ref": "JobList" 9648 // }, 9649 // "scopes": [ 9650 // "https://www.googleapis.com/auth/bigquery", 9651 // "https://www.googleapis.com/auth/bigquery.readonly", 9652 // "https://www.googleapis.com/auth/cloud-platform", 9653 // "https://www.googleapis.com/auth/cloud-platform.read-only" 9654 // ] 9655 // } 9656 9657} 9658 9659// Pages invokes f for each page of results. 9660// A non-nil error returned from f will halt the iteration. 9661// The provided context supersedes any context provided to the Context method. 9662func (c *JobsListCall) Pages(ctx context.Context, f func(*JobList) error) error { 9663 c.ctx_ = ctx 9664 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 9665 for { 9666 x, err := c.Do() 9667 if err != nil { 9668 return err 9669 } 9670 if err := f(x); err != nil { 9671 return err 9672 } 9673 if x.NextPageToken == "" { 9674 return nil 9675 } 9676 c.PageToken(x.NextPageToken) 9677 } 9678} 9679 9680// method id "bigquery.jobs.query": 9681 9682type JobsQueryCall struct { 9683 s *Service 9684 projectId string 9685 queryrequest *QueryRequest 9686 urlParams_ gensupport.URLParams 9687 ctx_ context.Context 9688 header_ http.Header 9689} 9690 9691// Query: Runs a BigQuery SQL query synchronously and returns query 9692// results if the query completes within a specified timeout. 9693func (r *JobsService) Query(projectId string, queryrequest *QueryRequest) *JobsQueryCall { 9694 c := &JobsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9695 c.projectId = projectId 9696 c.queryrequest = queryrequest 9697 return c 9698} 9699 9700// Fields allows partial responses to be retrieved. See 9701// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9702// for more information. 9703func (c *JobsQueryCall) Fields(s ...googleapi.Field) *JobsQueryCall { 9704 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9705 return c 9706} 9707 9708// Context sets the context to be used in this call's Do method. Any 9709// pending HTTP request will be aborted if the provided context is 9710// canceled. 9711func (c *JobsQueryCall) Context(ctx context.Context) *JobsQueryCall { 9712 c.ctx_ = ctx 9713 return c 9714} 9715 9716// Header returns an http.Header that can be modified by the caller to 9717// add HTTP headers to the request. 9718func (c *JobsQueryCall) Header() http.Header { 9719 if c.header_ == nil { 9720 c.header_ = make(http.Header) 9721 } 9722 return c.header_ 9723} 9724 9725func (c *JobsQueryCall) doRequest(alt string) (*http.Response, error) { 9726 reqHeaders := make(http.Header) 9727 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 9728 for k, v := range c.header_ { 9729 reqHeaders[k] = v 9730 } 9731 reqHeaders.Set("User-Agent", c.s.userAgent()) 9732 var body io.Reader = nil 9733 body, err := googleapi.WithoutDataWrapper.JSONReader(c.queryrequest) 9734 if err != nil { 9735 return nil, err 9736 } 9737 reqHeaders.Set("Content-Type", "application/json") 9738 c.urlParams_.Set("alt", alt) 9739 c.urlParams_.Set("prettyPrint", "false") 9740 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/queries") 9741 urls += "?" + c.urlParams_.Encode() 9742 req, err := http.NewRequest("POST", urls, body) 9743 if err != nil { 9744 return nil, err 9745 } 9746 req.Header = reqHeaders 9747 googleapi.Expand(req.URL, map[string]string{ 9748 "projectId": c.projectId, 9749 }) 9750 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9751} 9752 9753// Do executes the "bigquery.jobs.query" call. 9754// Exactly one of *QueryResponse or error will be non-nil. Any non-2xx 9755// status code is an error. Response headers are in either 9756// *QueryResponse.ServerResponse.Header or (if a response was returned 9757// at all) in error.(*googleapi.Error).Header. Use 9758// googleapi.IsNotModified to check whether the returned error was 9759// because http.StatusNotModified was returned. 9760func (c *JobsQueryCall) Do(opts ...googleapi.CallOption) (*QueryResponse, error) { 9761 gensupport.SetOptions(c.urlParams_, opts...) 9762 res, err := c.doRequest("json") 9763 if res != nil && res.StatusCode == http.StatusNotModified { 9764 if res.Body != nil { 9765 res.Body.Close() 9766 } 9767 return nil, &googleapi.Error{ 9768 Code: res.StatusCode, 9769 Header: res.Header, 9770 } 9771 } 9772 if err != nil { 9773 return nil, err 9774 } 9775 defer googleapi.CloseBody(res) 9776 if err := googleapi.CheckResponse(res); err != nil { 9777 return nil, err 9778 } 9779 ret := &QueryResponse{ 9780 ServerResponse: googleapi.ServerResponse{ 9781 Header: res.Header, 9782 HTTPStatusCode: res.StatusCode, 9783 }, 9784 } 9785 target := &ret 9786 if err := gensupport.DecodeResponse(target, res); err != nil { 9787 return nil, err 9788 } 9789 return ret, nil 9790 // { 9791 // "description": "Runs a BigQuery SQL query synchronously and returns query results if the query completes within a specified timeout.", 9792 // "httpMethod": "POST", 9793 // "id": "bigquery.jobs.query", 9794 // "parameterOrder": [ 9795 // "projectId" 9796 // ], 9797 // "parameters": { 9798 // "projectId": { 9799 // "description": "Project ID of the project billed for the query", 9800 // "location": "path", 9801 // "required": true, 9802 // "type": "string" 9803 // } 9804 // }, 9805 // "path": "projects/{projectId}/queries", 9806 // "request": { 9807 // "$ref": "QueryRequest" 9808 // }, 9809 // "response": { 9810 // "$ref": "QueryResponse" 9811 // }, 9812 // "scopes": [ 9813 // "https://www.googleapis.com/auth/bigquery", 9814 // "https://www.googleapis.com/auth/bigquery.readonly", 9815 // "https://www.googleapis.com/auth/cloud-platform", 9816 // "https://www.googleapis.com/auth/cloud-platform.read-only" 9817 // ] 9818 // } 9819 9820} 9821 9822// method id "bigquery.models.delete": 9823 9824type ModelsDeleteCall struct { 9825 s *Service 9826 projectId string 9827 datasetId string 9828 modelId string 9829 urlParams_ gensupport.URLParams 9830 ctx_ context.Context 9831 header_ http.Header 9832} 9833 9834// Delete: Deletes the model specified by modelId from the dataset. 9835func (r *ModelsService) Delete(projectId string, datasetId string, modelId string) *ModelsDeleteCall { 9836 c := &ModelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9837 c.projectId = projectId 9838 c.datasetId = datasetId 9839 c.modelId = modelId 9840 return c 9841} 9842 9843// Fields allows partial responses to be retrieved. See 9844// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9845// for more information. 9846func (c *ModelsDeleteCall) Fields(s ...googleapi.Field) *ModelsDeleteCall { 9847 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9848 return c 9849} 9850 9851// Context sets the context to be used in this call's Do method. Any 9852// pending HTTP request will be aborted if the provided context is 9853// canceled. 9854func (c *ModelsDeleteCall) Context(ctx context.Context) *ModelsDeleteCall { 9855 c.ctx_ = ctx 9856 return c 9857} 9858 9859// Header returns an http.Header that can be modified by the caller to 9860// add HTTP headers to the request. 9861func (c *ModelsDeleteCall) Header() http.Header { 9862 if c.header_ == nil { 9863 c.header_ = make(http.Header) 9864 } 9865 return c.header_ 9866} 9867 9868func (c *ModelsDeleteCall) doRequest(alt string) (*http.Response, error) { 9869 reqHeaders := make(http.Header) 9870 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 9871 for k, v := range c.header_ { 9872 reqHeaders[k] = v 9873 } 9874 reqHeaders.Set("User-Agent", c.s.userAgent()) 9875 var body io.Reader = nil 9876 c.urlParams_.Set("alt", alt) 9877 c.urlParams_.Set("prettyPrint", "false") 9878 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}") 9879 urls += "?" + c.urlParams_.Encode() 9880 req, err := http.NewRequest("DELETE", urls, body) 9881 if err != nil { 9882 return nil, err 9883 } 9884 req.Header = reqHeaders 9885 googleapi.Expand(req.URL, map[string]string{ 9886 "projectId": c.projectId, 9887 "datasetId": c.datasetId, 9888 "modelId": c.modelId, 9889 }) 9890 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9891} 9892 9893// Do executes the "bigquery.models.delete" call. 9894func (c *ModelsDeleteCall) Do(opts ...googleapi.CallOption) error { 9895 gensupport.SetOptions(c.urlParams_, opts...) 9896 res, err := c.doRequest("json") 9897 if err != nil { 9898 return err 9899 } 9900 defer googleapi.CloseBody(res) 9901 if err := googleapi.CheckResponse(res); err != nil { 9902 return err 9903 } 9904 return nil 9905 // { 9906 // "description": "Deletes the model specified by modelId from the dataset.", 9907 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models/{modelsId}", 9908 // "httpMethod": "DELETE", 9909 // "id": "bigquery.models.delete", 9910 // "parameterOrder": [ 9911 // "projectId", 9912 // "datasetId", 9913 // "modelId" 9914 // ], 9915 // "parameters": { 9916 // "datasetId": { 9917 // "description": "Required. Dataset ID of the model to delete.", 9918 // "location": "path", 9919 // "pattern": "^[^/]+$", 9920 // "required": true, 9921 // "type": "string" 9922 // }, 9923 // "modelId": { 9924 // "description": "Required. Model ID of the model to delete.", 9925 // "location": "path", 9926 // "pattern": "^[^/]+$", 9927 // "required": true, 9928 // "type": "string" 9929 // }, 9930 // "projectId": { 9931 // "description": "Required. Project ID of the model to delete.", 9932 // "location": "path", 9933 // "pattern": "^[^/]+$", 9934 // "required": true, 9935 // "type": "string" 9936 // } 9937 // }, 9938 // "path": "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}", 9939 // "scopes": [ 9940 // "https://www.googleapis.com/auth/bigquery", 9941 // "https://www.googleapis.com/auth/cloud-platform" 9942 // ] 9943 // } 9944 9945} 9946 9947// method id "bigquery.models.get": 9948 9949type ModelsGetCall struct { 9950 s *Service 9951 projectId string 9952 datasetId string 9953 modelId string 9954 urlParams_ gensupport.URLParams 9955 ifNoneMatch_ string 9956 ctx_ context.Context 9957 header_ http.Header 9958} 9959 9960// Get: Gets the specified model resource by model ID. 9961func (r *ModelsService) Get(projectId string, datasetId string, modelId string) *ModelsGetCall { 9962 c := &ModelsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9963 c.projectId = projectId 9964 c.datasetId = datasetId 9965 c.modelId = modelId 9966 return c 9967} 9968 9969// Fields allows partial responses to be retrieved. See 9970// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9971// for more information. 9972func (c *ModelsGetCall) Fields(s ...googleapi.Field) *ModelsGetCall { 9973 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9974 return c 9975} 9976 9977// IfNoneMatch sets the optional parameter which makes the operation 9978// fail if the object's ETag matches the given value. This is useful for 9979// getting updates only after the object has changed since the last 9980// request. Use googleapi.IsNotModified to check whether the response 9981// error from Do is the result of In-None-Match. 9982func (c *ModelsGetCall) IfNoneMatch(entityTag string) *ModelsGetCall { 9983 c.ifNoneMatch_ = entityTag 9984 return c 9985} 9986 9987// Context sets the context to be used in this call's Do method. Any 9988// pending HTTP request will be aborted if the provided context is 9989// canceled. 9990func (c *ModelsGetCall) Context(ctx context.Context) *ModelsGetCall { 9991 c.ctx_ = ctx 9992 return c 9993} 9994 9995// Header returns an http.Header that can be modified by the caller to 9996// add HTTP headers to the request. 9997func (c *ModelsGetCall) Header() http.Header { 9998 if c.header_ == nil { 9999 c.header_ = make(http.Header) 10000 } 10001 return c.header_ 10002} 10003 10004func (c *ModelsGetCall) doRequest(alt string) (*http.Response, error) { 10005 reqHeaders := make(http.Header) 10006 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 10007 for k, v := range c.header_ { 10008 reqHeaders[k] = v 10009 } 10010 reqHeaders.Set("User-Agent", c.s.userAgent()) 10011 if c.ifNoneMatch_ != "" { 10012 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 10013 } 10014 var body io.Reader = nil 10015 c.urlParams_.Set("alt", alt) 10016 c.urlParams_.Set("prettyPrint", "false") 10017 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}") 10018 urls += "?" + c.urlParams_.Encode() 10019 req, err := http.NewRequest("GET", urls, body) 10020 if err != nil { 10021 return nil, err 10022 } 10023 req.Header = reqHeaders 10024 googleapi.Expand(req.URL, map[string]string{ 10025 "projectId": c.projectId, 10026 "datasetId": c.datasetId, 10027 "modelId": c.modelId, 10028 }) 10029 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10030} 10031 10032// Do executes the "bigquery.models.get" call. 10033// Exactly one of *Model or error will be non-nil. Any non-2xx status 10034// code is an error. Response headers are in either 10035// *Model.ServerResponse.Header or (if a response was returned at all) 10036// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 10037// check whether the returned error was because http.StatusNotModified 10038// was returned. 10039func (c *ModelsGetCall) Do(opts ...googleapi.CallOption) (*Model, error) { 10040 gensupport.SetOptions(c.urlParams_, opts...) 10041 res, err := c.doRequest("json") 10042 if res != nil && res.StatusCode == http.StatusNotModified { 10043 if res.Body != nil { 10044 res.Body.Close() 10045 } 10046 return nil, &googleapi.Error{ 10047 Code: res.StatusCode, 10048 Header: res.Header, 10049 } 10050 } 10051 if err != nil { 10052 return nil, err 10053 } 10054 defer googleapi.CloseBody(res) 10055 if err := googleapi.CheckResponse(res); err != nil { 10056 return nil, err 10057 } 10058 ret := &Model{ 10059 ServerResponse: googleapi.ServerResponse{ 10060 Header: res.Header, 10061 HTTPStatusCode: res.StatusCode, 10062 }, 10063 } 10064 target := &ret 10065 if err := gensupport.DecodeResponse(target, res); err != nil { 10066 return nil, err 10067 } 10068 return ret, nil 10069 // { 10070 // "description": "Gets the specified model resource by model ID.", 10071 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models/{modelsId}", 10072 // "httpMethod": "GET", 10073 // "id": "bigquery.models.get", 10074 // "parameterOrder": [ 10075 // "projectId", 10076 // "datasetId", 10077 // "modelId" 10078 // ], 10079 // "parameters": { 10080 // "datasetId": { 10081 // "description": "Required. Dataset ID of the requested model.", 10082 // "location": "path", 10083 // "pattern": "^[^/]+$", 10084 // "required": true, 10085 // "type": "string" 10086 // }, 10087 // "modelId": { 10088 // "description": "Required. Model ID of the requested model.", 10089 // "location": "path", 10090 // "pattern": "^[^/]+$", 10091 // "required": true, 10092 // "type": "string" 10093 // }, 10094 // "projectId": { 10095 // "description": "Required. Project ID of the requested model.", 10096 // "location": "path", 10097 // "pattern": "^[^/]+$", 10098 // "required": true, 10099 // "type": "string" 10100 // } 10101 // }, 10102 // "path": "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}", 10103 // "response": { 10104 // "$ref": "Model" 10105 // }, 10106 // "scopes": [ 10107 // "https://www.googleapis.com/auth/bigquery", 10108 // "https://www.googleapis.com/auth/bigquery.readonly", 10109 // "https://www.googleapis.com/auth/cloud-platform", 10110 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10111 // ] 10112 // } 10113 10114} 10115 10116// method id "bigquery.models.list": 10117 10118type ModelsListCall struct { 10119 s *Service 10120 projectId string 10121 datasetId string 10122 urlParams_ gensupport.URLParams 10123 ifNoneMatch_ string 10124 ctx_ context.Context 10125 header_ http.Header 10126} 10127 10128// List: Lists all models in the specified dataset. Requires the READER 10129// dataset role. 10130func (r *ModelsService) List(projectId string, datasetId string) *ModelsListCall { 10131 c := &ModelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10132 c.projectId = projectId 10133 c.datasetId = datasetId 10134 return c 10135} 10136 10137// MaxResults sets the optional parameter "maxResults": The maximum 10138// number of results to return in a single response page. Leverage the 10139// page tokens to iterate through the entire collection. 10140func (c *ModelsListCall) MaxResults(maxResults int64) *ModelsListCall { 10141 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 10142 return c 10143} 10144 10145// PageToken sets the optional parameter "pageToken": Page token, 10146// returned by a previous call to request the next page of results 10147func (c *ModelsListCall) PageToken(pageToken string) *ModelsListCall { 10148 c.urlParams_.Set("pageToken", pageToken) 10149 return c 10150} 10151 10152// Fields allows partial responses to be retrieved. See 10153// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10154// for more information. 10155func (c *ModelsListCall) Fields(s ...googleapi.Field) *ModelsListCall { 10156 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10157 return c 10158} 10159 10160// IfNoneMatch sets the optional parameter which makes the operation 10161// fail if the object's ETag matches the given value. This is useful for 10162// getting updates only after the object has changed since the last 10163// request. Use googleapi.IsNotModified to check whether the response 10164// error from Do is the result of In-None-Match. 10165func (c *ModelsListCall) IfNoneMatch(entityTag string) *ModelsListCall { 10166 c.ifNoneMatch_ = entityTag 10167 return c 10168} 10169 10170// Context sets the context to be used in this call's Do method. Any 10171// pending HTTP request will be aborted if the provided context is 10172// canceled. 10173func (c *ModelsListCall) Context(ctx context.Context) *ModelsListCall { 10174 c.ctx_ = ctx 10175 return c 10176} 10177 10178// Header returns an http.Header that can be modified by the caller to 10179// add HTTP headers to the request. 10180func (c *ModelsListCall) Header() http.Header { 10181 if c.header_ == nil { 10182 c.header_ = make(http.Header) 10183 } 10184 return c.header_ 10185} 10186 10187func (c *ModelsListCall) doRequest(alt string) (*http.Response, error) { 10188 reqHeaders := make(http.Header) 10189 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 10190 for k, v := range c.header_ { 10191 reqHeaders[k] = v 10192 } 10193 reqHeaders.Set("User-Agent", c.s.userAgent()) 10194 if c.ifNoneMatch_ != "" { 10195 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 10196 } 10197 var body io.Reader = nil 10198 c.urlParams_.Set("alt", alt) 10199 c.urlParams_.Set("prettyPrint", "false") 10200 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models") 10201 urls += "?" + c.urlParams_.Encode() 10202 req, err := http.NewRequest("GET", urls, body) 10203 if err != nil { 10204 return nil, err 10205 } 10206 req.Header = reqHeaders 10207 googleapi.Expand(req.URL, map[string]string{ 10208 "projectId": c.projectId, 10209 "datasetId": c.datasetId, 10210 }) 10211 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10212} 10213 10214// Do executes the "bigquery.models.list" call. 10215// Exactly one of *ListModelsResponse or error will be non-nil. Any 10216// non-2xx status code is an error. Response headers are in either 10217// *ListModelsResponse.ServerResponse.Header or (if a response was 10218// returned at all) in error.(*googleapi.Error).Header. Use 10219// googleapi.IsNotModified to check whether the returned error was 10220// because http.StatusNotModified was returned. 10221func (c *ModelsListCall) Do(opts ...googleapi.CallOption) (*ListModelsResponse, error) { 10222 gensupport.SetOptions(c.urlParams_, opts...) 10223 res, err := c.doRequest("json") 10224 if res != nil && res.StatusCode == http.StatusNotModified { 10225 if res.Body != nil { 10226 res.Body.Close() 10227 } 10228 return nil, &googleapi.Error{ 10229 Code: res.StatusCode, 10230 Header: res.Header, 10231 } 10232 } 10233 if err != nil { 10234 return nil, err 10235 } 10236 defer googleapi.CloseBody(res) 10237 if err := googleapi.CheckResponse(res); err != nil { 10238 return nil, err 10239 } 10240 ret := &ListModelsResponse{ 10241 ServerResponse: googleapi.ServerResponse{ 10242 Header: res.Header, 10243 HTTPStatusCode: res.StatusCode, 10244 }, 10245 } 10246 target := &ret 10247 if err := gensupport.DecodeResponse(target, res); err != nil { 10248 return nil, err 10249 } 10250 return ret, nil 10251 // { 10252 // "description": "Lists all models in the specified dataset. Requires the READER dataset role.", 10253 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models", 10254 // "httpMethod": "GET", 10255 // "id": "bigquery.models.list", 10256 // "parameterOrder": [ 10257 // "projectId", 10258 // "datasetId" 10259 // ], 10260 // "parameters": { 10261 // "datasetId": { 10262 // "description": "Required. Dataset ID of the models to list.", 10263 // "location": "path", 10264 // "pattern": "^[^/]+$", 10265 // "required": true, 10266 // "type": "string" 10267 // }, 10268 // "maxResults": { 10269 // "description": "The maximum number of results to return in a single response page. Leverage the page tokens to iterate through the entire collection.", 10270 // "format": "uint32", 10271 // "location": "query", 10272 // "type": "integer" 10273 // }, 10274 // "pageToken": { 10275 // "description": "Page token, returned by a previous call to request the next page of results", 10276 // "location": "query", 10277 // "type": "string" 10278 // }, 10279 // "projectId": { 10280 // "description": "Required. Project ID of the models to list.", 10281 // "location": "path", 10282 // "pattern": "^[^/]+$", 10283 // "required": true, 10284 // "type": "string" 10285 // } 10286 // }, 10287 // "path": "projects/{+projectId}/datasets/{+datasetId}/models", 10288 // "response": { 10289 // "$ref": "ListModelsResponse" 10290 // }, 10291 // "scopes": [ 10292 // "https://www.googleapis.com/auth/bigquery", 10293 // "https://www.googleapis.com/auth/bigquery.readonly", 10294 // "https://www.googleapis.com/auth/cloud-platform", 10295 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10296 // ] 10297 // } 10298 10299} 10300 10301// Pages invokes f for each page of results. 10302// A non-nil error returned from f will halt the iteration. 10303// The provided context supersedes any context provided to the Context method. 10304func (c *ModelsListCall) Pages(ctx context.Context, f func(*ListModelsResponse) error) error { 10305 c.ctx_ = ctx 10306 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 10307 for { 10308 x, err := c.Do() 10309 if err != nil { 10310 return err 10311 } 10312 if err := f(x); err != nil { 10313 return err 10314 } 10315 if x.NextPageToken == "" { 10316 return nil 10317 } 10318 c.PageToken(x.NextPageToken) 10319 } 10320} 10321 10322// method id "bigquery.models.patch": 10323 10324type ModelsPatchCall struct { 10325 s *Service 10326 projectId string 10327 datasetId string 10328 modelId string 10329 model *Model 10330 urlParams_ gensupport.URLParams 10331 ctx_ context.Context 10332 header_ http.Header 10333} 10334 10335// Patch: Patch specific fields in the specified model. 10336func (r *ModelsService) Patch(projectId string, datasetId string, modelId string, model *Model) *ModelsPatchCall { 10337 c := &ModelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10338 c.projectId = projectId 10339 c.datasetId = datasetId 10340 c.modelId = modelId 10341 c.model = model 10342 return c 10343} 10344 10345// Fields allows partial responses to be retrieved. See 10346// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10347// for more information. 10348func (c *ModelsPatchCall) Fields(s ...googleapi.Field) *ModelsPatchCall { 10349 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10350 return c 10351} 10352 10353// Context sets the context to be used in this call's Do method. Any 10354// pending HTTP request will be aborted if the provided context is 10355// canceled. 10356func (c *ModelsPatchCall) Context(ctx context.Context) *ModelsPatchCall { 10357 c.ctx_ = ctx 10358 return c 10359} 10360 10361// Header returns an http.Header that can be modified by the caller to 10362// add HTTP headers to the request. 10363func (c *ModelsPatchCall) Header() http.Header { 10364 if c.header_ == nil { 10365 c.header_ = make(http.Header) 10366 } 10367 return c.header_ 10368} 10369 10370func (c *ModelsPatchCall) doRequest(alt string) (*http.Response, error) { 10371 reqHeaders := make(http.Header) 10372 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 10373 for k, v := range c.header_ { 10374 reqHeaders[k] = v 10375 } 10376 reqHeaders.Set("User-Agent", c.s.userAgent()) 10377 var body io.Reader = nil 10378 body, err := googleapi.WithoutDataWrapper.JSONReader(c.model) 10379 if err != nil { 10380 return nil, err 10381 } 10382 reqHeaders.Set("Content-Type", "application/json") 10383 c.urlParams_.Set("alt", alt) 10384 c.urlParams_.Set("prettyPrint", "false") 10385 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}") 10386 urls += "?" + c.urlParams_.Encode() 10387 req, err := http.NewRequest("PATCH", urls, body) 10388 if err != nil { 10389 return nil, err 10390 } 10391 req.Header = reqHeaders 10392 googleapi.Expand(req.URL, map[string]string{ 10393 "projectId": c.projectId, 10394 "datasetId": c.datasetId, 10395 "modelId": c.modelId, 10396 }) 10397 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10398} 10399 10400// Do executes the "bigquery.models.patch" call. 10401// Exactly one of *Model or error will be non-nil. Any non-2xx status 10402// code is an error. Response headers are in either 10403// *Model.ServerResponse.Header or (if a response was returned at all) 10404// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 10405// check whether the returned error was because http.StatusNotModified 10406// was returned. 10407func (c *ModelsPatchCall) Do(opts ...googleapi.CallOption) (*Model, error) { 10408 gensupport.SetOptions(c.urlParams_, opts...) 10409 res, err := c.doRequest("json") 10410 if res != nil && res.StatusCode == http.StatusNotModified { 10411 if res.Body != nil { 10412 res.Body.Close() 10413 } 10414 return nil, &googleapi.Error{ 10415 Code: res.StatusCode, 10416 Header: res.Header, 10417 } 10418 } 10419 if err != nil { 10420 return nil, err 10421 } 10422 defer googleapi.CloseBody(res) 10423 if err := googleapi.CheckResponse(res); err != nil { 10424 return nil, err 10425 } 10426 ret := &Model{ 10427 ServerResponse: googleapi.ServerResponse{ 10428 Header: res.Header, 10429 HTTPStatusCode: res.StatusCode, 10430 }, 10431 } 10432 target := &ret 10433 if err := gensupport.DecodeResponse(target, res); err != nil { 10434 return nil, err 10435 } 10436 return ret, nil 10437 // { 10438 // "description": "Patch specific fields in the specified model.", 10439 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models/{modelsId}", 10440 // "httpMethod": "PATCH", 10441 // "id": "bigquery.models.patch", 10442 // "parameterOrder": [ 10443 // "projectId", 10444 // "datasetId", 10445 // "modelId" 10446 // ], 10447 // "parameters": { 10448 // "datasetId": { 10449 // "description": "Required. Dataset ID of the model to patch.", 10450 // "location": "path", 10451 // "pattern": "^[^/]+$", 10452 // "required": true, 10453 // "type": "string" 10454 // }, 10455 // "modelId": { 10456 // "description": "Required. Model ID of the model to patch.", 10457 // "location": "path", 10458 // "pattern": "^[^/]+$", 10459 // "required": true, 10460 // "type": "string" 10461 // }, 10462 // "projectId": { 10463 // "description": "Required. Project ID of the model to patch.", 10464 // "location": "path", 10465 // "pattern": "^[^/]+$", 10466 // "required": true, 10467 // "type": "string" 10468 // } 10469 // }, 10470 // "path": "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}", 10471 // "request": { 10472 // "$ref": "Model" 10473 // }, 10474 // "response": { 10475 // "$ref": "Model" 10476 // }, 10477 // "scopes": [ 10478 // "https://www.googleapis.com/auth/bigquery", 10479 // "https://www.googleapis.com/auth/cloud-platform" 10480 // ] 10481 // } 10482 10483} 10484 10485// method id "bigquery.projects.getServiceAccount": 10486 10487type ProjectsGetServiceAccountCall struct { 10488 s *Service 10489 projectId string 10490 urlParams_ gensupport.URLParams 10491 ifNoneMatch_ string 10492 ctx_ context.Context 10493 header_ http.Header 10494} 10495 10496// GetServiceAccount: Returns the email address of the service account 10497// for your project used for interactions with Google Cloud KMS. 10498func (r *ProjectsService) GetServiceAccount(projectId string) *ProjectsGetServiceAccountCall { 10499 c := &ProjectsGetServiceAccountCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10500 c.projectId = projectId 10501 return c 10502} 10503 10504// Fields allows partial responses to be retrieved. See 10505// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10506// for more information. 10507func (c *ProjectsGetServiceAccountCall) Fields(s ...googleapi.Field) *ProjectsGetServiceAccountCall { 10508 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10509 return c 10510} 10511 10512// IfNoneMatch sets the optional parameter which makes the operation 10513// fail if the object's ETag matches the given value. This is useful for 10514// getting updates only after the object has changed since the last 10515// request. Use googleapi.IsNotModified to check whether the response 10516// error from Do is the result of In-None-Match. 10517func (c *ProjectsGetServiceAccountCall) IfNoneMatch(entityTag string) *ProjectsGetServiceAccountCall { 10518 c.ifNoneMatch_ = entityTag 10519 return c 10520} 10521 10522// Context sets the context to be used in this call's Do method. Any 10523// pending HTTP request will be aborted if the provided context is 10524// canceled. 10525func (c *ProjectsGetServiceAccountCall) Context(ctx context.Context) *ProjectsGetServiceAccountCall { 10526 c.ctx_ = ctx 10527 return c 10528} 10529 10530// Header returns an http.Header that can be modified by the caller to 10531// add HTTP headers to the request. 10532func (c *ProjectsGetServiceAccountCall) Header() http.Header { 10533 if c.header_ == nil { 10534 c.header_ = make(http.Header) 10535 } 10536 return c.header_ 10537} 10538 10539func (c *ProjectsGetServiceAccountCall) doRequest(alt string) (*http.Response, error) { 10540 reqHeaders := make(http.Header) 10541 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 10542 for k, v := range c.header_ { 10543 reqHeaders[k] = v 10544 } 10545 reqHeaders.Set("User-Agent", c.s.userAgent()) 10546 if c.ifNoneMatch_ != "" { 10547 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 10548 } 10549 var body io.Reader = nil 10550 c.urlParams_.Set("alt", alt) 10551 c.urlParams_.Set("prettyPrint", "false") 10552 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/serviceAccount") 10553 urls += "?" + c.urlParams_.Encode() 10554 req, err := http.NewRequest("GET", urls, body) 10555 if err != nil { 10556 return nil, err 10557 } 10558 req.Header = reqHeaders 10559 googleapi.Expand(req.URL, map[string]string{ 10560 "projectId": c.projectId, 10561 }) 10562 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10563} 10564 10565// Do executes the "bigquery.projects.getServiceAccount" call. 10566// Exactly one of *GetServiceAccountResponse or error will be non-nil. 10567// Any non-2xx status code is an error. Response headers are in either 10568// *GetServiceAccountResponse.ServerResponse.Header or (if a response 10569// was returned at all) in error.(*googleapi.Error).Header. Use 10570// googleapi.IsNotModified to check whether the returned error was 10571// because http.StatusNotModified was returned. 10572func (c *ProjectsGetServiceAccountCall) Do(opts ...googleapi.CallOption) (*GetServiceAccountResponse, error) { 10573 gensupport.SetOptions(c.urlParams_, opts...) 10574 res, err := c.doRequest("json") 10575 if res != nil && res.StatusCode == http.StatusNotModified { 10576 if res.Body != nil { 10577 res.Body.Close() 10578 } 10579 return nil, &googleapi.Error{ 10580 Code: res.StatusCode, 10581 Header: res.Header, 10582 } 10583 } 10584 if err != nil { 10585 return nil, err 10586 } 10587 defer googleapi.CloseBody(res) 10588 if err := googleapi.CheckResponse(res); err != nil { 10589 return nil, err 10590 } 10591 ret := &GetServiceAccountResponse{ 10592 ServerResponse: googleapi.ServerResponse{ 10593 Header: res.Header, 10594 HTTPStatusCode: res.StatusCode, 10595 }, 10596 } 10597 target := &ret 10598 if err := gensupport.DecodeResponse(target, res); err != nil { 10599 return nil, err 10600 } 10601 return ret, nil 10602 // { 10603 // "description": "Returns the email address of the service account for your project used for interactions with Google Cloud KMS.", 10604 // "httpMethod": "GET", 10605 // "id": "bigquery.projects.getServiceAccount", 10606 // "parameterOrder": [ 10607 // "projectId" 10608 // ], 10609 // "parameters": { 10610 // "projectId": { 10611 // "description": "Project ID for which the service account is requested.", 10612 // "location": "path", 10613 // "required": true, 10614 // "type": "string" 10615 // } 10616 // }, 10617 // "path": "projects/{projectId}/serviceAccount", 10618 // "response": { 10619 // "$ref": "GetServiceAccountResponse" 10620 // }, 10621 // "scopes": [ 10622 // "https://www.googleapis.com/auth/bigquery", 10623 // "https://www.googleapis.com/auth/bigquery.readonly", 10624 // "https://www.googleapis.com/auth/cloud-platform", 10625 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10626 // ] 10627 // } 10628 10629} 10630 10631// method id "bigquery.projects.list": 10632 10633type ProjectsListCall struct { 10634 s *Service 10635 urlParams_ gensupport.URLParams 10636 ifNoneMatch_ string 10637 ctx_ context.Context 10638 header_ http.Header 10639} 10640 10641// List: Lists all projects to which you have been granted any project 10642// role. 10643func (r *ProjectsService) List() *ProjectsListCall { 10644 c := &ProjectsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10645 return c 10646} 10647 10648// MaxResults sets the optional parameter "maxResults": Maximum number 10649// of results to return 10650func (c *ProjectsListCall) MaxResults(maxResults int64) *ProjectsListCall { 10651 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 10652 return c 10653} 10654 10655// PageToken sets the optional parameter "pageToken": Page token, 10656// returned by a previous call, to request the next page of results 10657func (c *ProjectsListCall) PageToken(pageToken string) *ProjectsListCall { 10658 c.urlParams_.Set("pageToken", pageToken) 10659 return c 10660} 10661 10662// Fields allows partial responses to be retrieved. See 10663// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10664// for more information. 10665func (c *ProjectsListCall) Fields(s ...googleapi.Field) *ProjectsListCall { 10666 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10667 return c 10668} 10669 10670// IfNoneMatch sets the optional parameter which makes the operation 10671// fail if the object's ETag matches the given value. This is useful for 10672// getting updates only after the object has changed since the last 10673// request. Use googleapi.IsNotModified to check whether the response 10674// error from Do is the result of In-None-Match. 10675func (c *ProjectsListCall) IfNoneMatch(entityTag string) *ProjectsListCall { 10676 c.ifNoneMatch_ = entityTag 10677 return c 10678} 10679 10680// Context sets the context to be used in this call's Do method. Any 10681// pending HTTP request will be aborted if the provided context is 10682// canceled. 10683func (c *ProjectsListCall) Context(ctx context.Context) *ProjectsListCall { 10684 c.ctx_ = ctx 10685 return c 10686} 10687 10688// Header returns an http.Header that can be modified by the caller to 10689// add HTTP headers to the request. 10690func (c *ProjectsListCall) Header() http.Header { 10691 if c.header_ == nil { 10692 c.header_ = make(http.Header) 10693 } 10694 return c.header_ 10695} 10696 10697func (c *ProjectsListCall) doRequest(alt string) (*http.Response, error) { 10698 reqHeaders := make(http.Header) 10699 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 10700 for k, v := range c.header_ { 10701 reqHeaders[k] = v 10702 } 10703 reqHeaders.Set("User-Agent", c.s.userAgent()) 10704 if c.ifNoneMatch_ != "" { 10705 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 10706 } 10707 var body io.Reader = nil 10708 c.urlParams_.Set("alt", alt) 10709 c.urlParams_.Set("prettyPrint", "false") 10710 urls := googleapi.ResolveRelative(c.s.BasePath, "projects") 10711 urls += "?" + c.urlParams_.Encode() 10712 req, err := http.NewRequest("GET", urls, body) 10713 if err != nil { 10714 return nil, err 10715 } 10716 req.Header = reqHeaders 10717 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10718} 10719 10720// Do executes the "bigquery.projects.list" call. 10721// Exactly one of *ProjectList or error will be non-nil. Any non-2xx 10722// status code is an error. Response headers are in either 10723// *ProjectList.ServerResponse.Header or (if a response was returned at 10724// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 10725// to check whether the returned error was because 10726// http.StatusNotModified was returned. 10727func (c *ProjectsListCall) Do(opts ...googleapi.CallOption) (*ProjectList, error) { 10728 gensupport.SetOptions(c.urlParams_, opts...) 10729 res, err := c.doRequest("json") 10730 if res != nil && res.StatusCode == http.StatusNotModified { 10731 if res.Body != nil { 10732 res.Body.Close() 10733 } 10734 return nil, &googleapi.Error{ 10735 Code: res.StatusCode, 10736 Header: res.Header, 10737 } 10738 } 10739 if err != nil { 10740 return nil, err 10741 } 10742 defer googleapi.CloseBody(res) 10743 if err := googleapi.CheckResponse(res); err != nil { 10744 return nil, err 10745 } 10746 ret := &ProjectList{ 10747 ServerResponse: googleapi.ServerResponse{ 10748 Header: res.Header, 10749 HTTPStatusCode: res.StatusCode, 10750 }, 10751 } 10752 target := &ret 10753 if err := gensupport.DecodeResponse(target, res); err != nil { 10754 return nil, err 10755 } 10756 return ret, nil 10757 // { 10758 // "description": "Lists all projects to which you have been granted any project role.", 10759 // "httpMethod": "GET", 10760 // "id": "bigquery.projects.list", 10761 // "parameters": { 10762 // "maxResults": { 10763 // "description": "Maximum number of results to return", 10764 // "format": "uint32", 10765 // "location": "query", 10766 // "type": "integer" 10767 // }, 10768 // "pageToken": { 10769 // "description": "Page token, returned by a previous call, to request the next page of results", 10770 // "location": "query", 10771 // "type": "string" 10772 // } 10773 // }, 10774 // "path": "projects", 10775 // "response": { 10776 // "$ref": "ProjectList" 10777 // }, 10778 // "scopes": [ 10779 // "https://www.googleapis.com/auth/bigquery", 10780 // "https://www.googleapis.com/auth/bigquery.readonly", 10781 // "https://www.googleapis.com/auth/cloud-platform", 10782 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10783 // ] 10784 // } 10785 10786} 10787 10788// Pages invokes f for each page of results. 10789// A non-nil error returned from f will halt the iteration. 10790// The provided context supersedes any context provided to the Context method. 10791func (c *ProjectsListCall) Pages(ctx context.Context, f func(*ProjectList) error) error { 10792 c.ctx_ = ctx 10793 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 10794 for { 10795 x, err := c.Do() 10796 if err != nil { 10797 return err 10798 } 10799 if err := f(x); err != nil { 10800 return err 10801 } 10802 if x.NextPageToken == "" { 10803 return nil 10804 } 10805 c.PageToken(x.NextPageToken) 10806 } 10807} 10808 10809// method id "bigquery.routines.delete": 10810 10811type RoutinesDeleteCall struct { 10812 s *Service 10813 projectId string 10814 datasetId string 10815 routineId string 10816 urlParams_ gensupport.URLParams 10817 ctx_ context.Context 10818 header_ http.Header 10819} 10820 10821// Delete: Deletes the routine specified by routineId from the dataset. 10822func (r *RoutinesService) Delete(projectId string, datasetId string, routineId string) *RoutinesDeleteCall { 10823 c := &RoutinesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10824 c.projectId = projectId 10825 c.datasetId = datasetId 10826 c.routineId = routineId 10827 return c 10828} 10829 10830// Fields allows partial responses to be retrieved. See 10831// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10832// for more information. 10833func (c *RoutinesDeleteCall) Fields(s ...googleapi.Field) *RoutinesDeleteCall { 10834 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10835 return c 10836} 10837 10838// Context sets the context to be used in this call's Do method. Any 10839// pending HTTP request will be aborted if the provided context is 10840// canceled. 10841func (c *RoutinesDeleteCall) Context(ctx context.Context) *RoutinesDeleteCall { 10842 c.ctx_ = ctx 10843 return c 10844} 10845 10846// Header returns an http.Header that can be modified by the caller to 10847// add HTTP headers to the request. 10848func (c *RoutinesDeleteCall) Header() http.Header { 10849 if c.header_ == nil { 10850 c.header_ = make(http.Header) 10851 } 10852 return c.header_ 10853} 10854 10855func (c *RoutinesDeleteCall) doRequest(alt string) (*http.Response, error) { 10856 reqHeaders := make(http.Header) 10857 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 10858 for k, v := range c.header_ { 10859 reqHeaders[k] = v 10860 } 10861 reqHeaders.Set("User-Agent", c.s.userAgent()) 10862 var body io.Reader = nil 10863 c.urlParams_.Set("alt", alt) 10864 c.urlParams_.Set("prettyPrint", "false") 10865 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}") 10866 urls += "?" + c.urlParams_.Encode() 10867 req, err := http.NewRequest("DELETE", urls, body) 10868 if err != nil { 10869 return nil, err 10870 } 10871 req.Header = reqHeaders 10872 googleapi.Expand(req.URL, map[string]string{ 10873 "projectId": c.projectId, 10874 "datasetId": c.datasetId, 10875 "routineId": c.routineId, 10876 }) 10877 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10878} 10879 10880// Do executes the "bigquery.routines.delete" call. 10881func (c *RoutinesDeleteCall) Do(opts ...googleapi.CallOption) error { 10882 gensupport.SetOptions(c.urlParams_, opts...) 10883 res, err := c.doRequest("json") 10884 if err != nil { 10885 return err 10886 } 10887 defer googleapi.CloseBody(res) 10888 if err := googleapi.CheckResponse(res); err != nil { 10889 return err 10890 } 10891 return nil 10892 // { 10893 // "description": "Deletes the routine specified by routineId from the dataset.", 10894 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines/{routinesId}", 10895 // "httpMethod": "DELETE", 10896 // "id": "bigquery.routines.delete", 10897 // "parameterOrder": [ 10898 // "projectId", 10899 // "datasetId", 10900 // "routineId" 10901 // ], 10902 // "parameters": { 10903 // "datasetId": { 10904 // "description": "Required. Dataset ID of the routine to delete", 10905 // "location": "path", 10906 // "pattern": "^[^/]+$", 10907 // "required": true, 10908 // "type": "string" 10909 // }, 10910 // "projectId": { 10911 // "description": "Required. Project ID of the routine to delete", 10912 // "location": "path", 10913 // "pattern": "^[^/]+$", 10914 // "required": true, 10915 // "type": "string" 10916 // }, 10917 // "routineId": { 10918 // "description": "Required. Routine ID of the routine to delete", 10919 // "location": "path", 10920 // "pattern": "^[^/]+$", 10921 // "required": true, 10922 // "type": "string" 10923 // } 10924 // }, 10925 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}", 10926 // "scopes": [ 10927 // "https://www.googleapis.com/auth/bigquery", 10928 // "https://www.googleapis.com/auth/cloud-platform" 10929 // ] 10930 // } 10931 10932} 10933 10934// method id "bigquery.routines.get": 10935 10936type RoutinesGetCall struct { 10937 s *Service 10938 projectId string 10939 datasetId string 10940 routineId string 10941 urlParams_ gensupport.URLParams 10942 ifNoneMatch_ string 10943 ctx_ context.Context 10944 header_ http.Header 10945} 10946 10947// Get: Gets the specified routine resource by routine ID. 10948func (r *RoutinesService) Get(projectId string, datasetId string, routineId string) *RoutinesGetCall { 10949 c := &RoutinesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10950 c.projectId = projectId 10951 c.datasetId = datasetId 10952 c.routineId = routineId 10953 return c 10954} 10955 10956// ReadMask sets the optional parameter "readMask": If set, only the 10957// Routine fields in the field mask are returned in the response. If 10958// unset, all Routine fields are returned. 10959func (c *RoutinesGetCall) ReadMask(readMask string) *RoutinesGetCall { 10960 c.urlParams_.Set("readMask", readMask) 10961 return c 10962} 10963 10964// Fields allows partial responses to be retrieved. See 10965// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10966// for more information. 10967func (c *RoutinesGetCall) Fields(s ...googleapi.Field) *RoutinesGetCall { 10968 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10969 return c 10970} 10971 10972// IfNoneMatch sets the optional parameter which makes the operation 10973// fail if the object's ETag matches the given value. This is useful for 10974// getting updates only after the object has changed since the last 10975// request. Use googleapi.IsNotModified to check whether the response 10976// error from Do is the result of In-None-Match. 10977func (c *RoutinesGetCall) IfNoneMatch(entityTag string) *RoutinesGetCall { 10978 c.ifNoneMatch_ = entityTag 10979 return c 10980} 10981 10982// Context sets the context to be used in this call's Do method. Any 10983// pending HTTP request will be aborted if the provided context is 10984// canceled. 10985func (c *RoutinesGetCall) Context(ctx context.Context) *RoutinesGetCall { 10986 c.ctx_ = ctx 10987 return c 10988} 10989 10990// Header returns an http.Header that can be modified by the caller to 10991// add HTTP headers to the request. 10992func (c *RoutinesGetCall) Header() http.Header { 10993 if c.header_ == nil { 10994 c.header_ = make(http.Header) 10995 } 10996 return c.header_ 10997} 10998 10999func (c *RoutinesGetCall) doRequest(alt string) (*http.Response, error) { 11000 reqHeaders := make(http.Header) 11001 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 11002 for k, v := range c.header_ { 11003 reqHeaders[k] = v 11004 } 11005 reqHeaders.Set("User-Agent", c.s.userAgent()) 11006 if c.ifNoneMatch_ != "" { 11007 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11008 } 11009 var body io.Reader = nil 11010 c.urlParams_.Set("alt", alt) 11011 c.urlParams_.Set("prettyPrint", "false") 11012 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}") 11013 urls += "?" + c.urlParams_.Encode() 11014 req, err := http.NewRequest("GET", urls, body) 11015 if err != nil { 11016 return nil, err 11017 } 11018 req.Header = reqHeaders 11019 googleapi.Expand(req.URL, map[string]string{ 11020 "projectId": c.projectId, 11021 "datasetId": c.datasetId, 11022 "routineId": c.routineId, 11023 }) 11024 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11025} 11026 11027// Do executes the "bigquery.routines.get" call. 11028// Exactly one of *Routine or error will be non-nil. Any non-2xx status 11029// code is an error. Response headers are in either 11030// *Routine.ServerResponse.Header or (if a response was returned at all) 11031// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 11032// check whether the returned error was because http.StatusNotModified 11033// was returned. 11034func (c *RoutinesGetCall) Do(opts ...googleapi.CallOption) (*Routine, error) { 11035 gensupport.SetOptions(c.urlParams_, opts...) 11036 res, err := c.doRequest("json") 11037 if res != nil && res.StatusCode == http.StatusNotModified { 11038 if res.Body != nil { 11039 res.Body.Close() 11040 } 11041 return nil, &googleapi.Error{ 11042 Code: res.StatusCode, 11043 Header: res.Header, 11044 } 11045 } 11046 if err != nil { 11047 return nil, err 11048 } 11049 defer googleapi.CloseBody(res) 11050 if err := googleapi.CheckResponse(res); err != nil { 11051 return nil, err 11052 } 11053 ret := &Routine{ 11054 ServerResponse: googleapi.ServerResponse{ 11055 Header: res.Header, 11056 HTTPStatusCode: res.StatusCode, 11057 }, 11058 } 11059 target := &ret 11060 if err := gensupport.DecodeResponse(target, res); err != nil { 11061 return nil, err 11062 } 11063 return ret, nil 11064 // { 11065 // "description": "Gets the specified routine resource by routine ID.", 11066 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines/{routinesId}", 11067 // "httpMethod": "GET", 11068 // "id": "bigquery.routines.get", 11069 // "parameterOrder": [ 11070 // "projectId", 11071 // "datasetId", 11072 // "routineId" 11073 // ], 11074 // "parameters": { 11075 // "datasetId": { 11076 // "description": "Required. Dataset ID of the requested routine", 11077 // "location": "path", 11078 // "pattern": "^[^/]+$", 11079 // "required": true, 11080 // "type": "string" 11081 // }, 11082 // "projectId": { 11083 // "description": "Required. Project ID of the requested routine", 11084 // "location": "path", 11085 // "pattern": "^[^/]+$", 11086 // "required": true, 11087 // "type": "string" 11088 // }, 11089 // "readMask": { 11090 // "description": "If set, only the Routine fields in the field mask are returned in the response. If unset, all Routine fields are returned.", 11091 // "format": "google-fieldmask", 11092 // "location": "query", 11093 // "type": "string" 11094 // }, 11095 // "routineId": { 11096 // "description": "Required. Routine ID of the requested routine", 11097 // "location": "path", 11098 // "pattern": "^[^/]+$", 11099 // "required": true, 11100 // "type": "string" 11101 // } 11102 // }, 11103 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}", 11104 // "response": { 11105 // "$ref": "Routine" 11106 // }, 11107 // "scopes": [ 11108 // "https://www.googleapis.com/auth/bigquery", 11109 // "https://www.googleapis.com/auth/bigquery.readonly", 11110 // "https://www.googleapis.com/auth/cloud-platform", 11111 // "https://www.googleapis.com/auth/cloud-platform.read-only" 11112 // ] 11113 // } 11114 11115} 11116 11117// method id "bigquery.routines.insert": 11118 11119type RoutinesInsertCall struct { 11120 s *Service 11121 projectId string 11122 datasetId string 11123 routine *Routine 11124 urlParams_ gensupport.URLParams 11125 ctx_ context.Context 11126 header_ http.Header 11127} 11128 11129// Insert: Creates a new routine in the dataset. 11130func (r *RoutinesService) Insert(projectId string, datasetId string, routine *Routine) *RoutinesInsertCall { 11131 c := &RoutinesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11132 c.projectId = projectId 11133 c.datasetId = datasetId 11134 c.routine = routine 11135 return c 11136} 11137 11138// Fields allows partial responses to be retrieved. See 11139// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11140// for more information. 11141func (c *RoutinesInsertCall) Fields(s ...googleapi.Field) *RoutinesInsertCall { 11142 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11143 return c 11144} 11145 11146// Context sets the context to be used in this call's Do method. Any 11147// pending HTTP request will be aborted if the provided context is 11148// canceled. 11149func (c *RoutinesInsertCall) Context(ctx context.Context) *RoutinesInsertCall { 11150 c.ctx_ = ctx 11151 return c 11152} 11153 11154// Header returns an http.Header that can be modified by the caller to 11155// add HTTP headers to the request. 11156func (c *RoutinesInsertCall) Header() http.Header { 11157 if c.header_ == nil { 11158 c.header_ = make(http.Header) 11159 } 11160 return c.header_ 11161} 11162 11163func (c *RoutinesInsertCall) doRequest(alt string) (*http.Response, error) { 11164 reqHeaders := make(http.Header) 11165 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 11166 for k, v := range c.header_ { 11167 reqHeaders[k] = v 11168 } 11169 reqHeaders.Set("User-Agent", c.s.userAgent()) 11170 var body io.Reader = nil 11171 body, err := googleapi.WithoutDataWrapper.JSONReader(c.routine) 11172 if err != nil { 11173 return nil, err 11174 } 11175 reqHeaders.Set("Content-Type", "application/json") 11176 c.urlParams_.Set("alt", alt) 11177 c.urlParams_.Set("prettyPrint", "false") 11178 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines") 11179 urls += "?" + c.urlParams_.Encode() 11180 req, err := http.NewRequest("POST", urls, body) 11181 if err != nil { 11182 return nil, err 11183 } 11184 req.Header = reqHeaders 11185 googleapi.Expand(req.URL, map[string]string{ 11186 "projectId": c.projectId, 11187 "datasetId": c.datasetId, 11188 }) 11189 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11190} 11191 11192// Do executes the "bigquery.routines.insert" call. 11193// Exactly one of *Routine or error will be non-nil. Any non-2xx status 11194// code is an error. Response headers are in either 11195// *Routine.ServerResponse.Header or (if a response was returned at all) 11196// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 11197// check whether the returned error was because http.StatusNotModified 11198// was returned. 11199func (c *RoutinesInsertCall) Do(opts ...googleapi.CallOption) (*Routine, error) { 11200 gensupport.SetOptions(c.urlParams_, opts...) 11201 res, err := c.doRequest("json") 11202 if res != nil && res.StatusCode == http.StatusNotModified { 11203 if res.Body != nil { 11204 res.Body.Close() 11205 } 11206 return nil, &googleapi.Error{ 11207 Code: res.StatusCode, 11208 Header: res.Header, 11209 } 11210 } 11211 if err != nil { 11212 return nil, err 11213 } 11214 defer googleapi.CloseBody(res) 11215 if err := googleapi.CheckResponse(res); err != nil { 11216 return nil, err 11217 } 11218 ret := &Routine{ 11219 ServerResponse: googleapi.ServerResponse{ 11220 Header: res.Header, 11221 HTTPStatusCode: res.StatusCode, 11222 }, 11223 } 11224 target := &ret 11225 if err := gensupport.DecodeResponse(target, res); err != nil { 11226 return nil, err 11227 } 11228 return ret, nil 11229 // { 11230 // "description": "Creates a new routine in the dataset.", 11231 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines", 11232 // "httpMethod": "POST", 11233 // "id": "bigquery.routines.insert", 11234 // "parameterOrder": [ 11235 // "projectId", 11236 // "datasetId" 11237 // ], 11238 // "parameters": { 11239 // "datasetId": { 11240 // "description": "Required. Dataset ID of the new routine", 11241 // "location": "path", 11242 // "pattern": "^[^/]+$", 11243 // "required": true, 11244 // "type": "string" 11245 // }, 11246 // "projectId": { 11247 // "description": "Required. Project ID of the new routine", 11248 // "location": "path", 11249 // "pattern": "^[^/]+$", 11250 // "required": true, 11251 // "type": "string" 11252 // } 11253 // }, 11254 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines", 11255 // "request": { 11256 // "$ref": "Routine" 11257 // }, 11258 // "response": { 11259 // "$ref": "Routine" 11260 // }, 11261 // "scopes": [ 11262 // "https://www.googleapis.com/auth/bigquery", 11263 // "https://www.googleapis.com/auth/cloud-platform" 11264 // ] 11265 // } 11266 11267} 11268 11269// method id "bigquery.routines.list": 11270 11271type RoutinesListCall struct { 11272 s *Service 11273 projectId string 11274 datasetId string 11275 urlParams_ gensupport.URLParams 11276 ifNoneMatch_ string 11277 ctx_ context.Context 11278 header_ http.Header 11279} 11280 11281// List: Lists all routines in the specified dataset. Requires the 11282// READER dataset role. 11283func (r *RoutinesService) List(projectId string, datasetId string) *RoutinesListCall { 11284 c := &RoutinesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11285 c.projectId = projectId 11286 c.datasetId = datasetId 11287 return c 11288} 11289 11290// Filter sets the optional parameter "filter": If set, then only the 11291// Routines matching this filter are returned. The current supported 11292// form is either "routine_type:" or "routineType:", where is a 11293// RoutineType enum. Example: "routineType:SCALAR_FUNCTION". 11294func (c *RoutinesListCall) Filter(filter string) *RoutinesListCall { 11295 c.urlParams_.Set("filter", filter) 11296 return c 11297} 11298 11299// MaxResults sets the optional parameter "maxResults": The maximum 11300// number of results to return in a single response page. Leverage the 11301// page tokens to iterate through the entire collection. 11302func (c *RoutinesListCall) MaxResults(maxResults int64) *RoutinesListCall { 11303 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 11304 return c 11305} 11306 11307// PageToken sets the optional parameter "pageToken": Page token, 11308// returned by a previous call, to request the next page of results 11309func (c *RoutinesListCall) PageToken(pageToken string) *RoutinesListCall { 11310 c.urlParams_.Set("pageToken", pageToken) 11311 return c 11312} 11313 11314// ReadMask sets the optional parameter "readMask": If set, then only 11315// the Routine fields in the field mask, as well as project_id, 11316// dataset_id and routine_id, are returned in the response. If unset, 11317// then the following Routine fields are returned: etag, project_id, 11318// dataset_id, routine_id, routine_type, creation_time, 11319// last_modified_time, and language. 11320func (c *RoutinesListCall) ReadMask(readMask string) *RoutinesListCall { 11321 c.urlParams_.Set("readMask", readMask) 11322 return c 11323} 11324 11325// Fields allows partial responses to be retrieved. See 11326// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11327// for more information. 11328func (c *RoutinesListCall) Fields(s ...googleapi.Field) *RoutinesListCall { 11329 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11330 return c 11331} 11332 11333// IfNoneMatch sets the optional parameter which makes the operation 11334// fail if the object's ETag matches the given value. This is useful for 11335// getting updates only after the object has changed since the last 11336// request. Use googleapi.IsNotModified to check whether the response 11337// error from Do is the result of In-None-Match. 11338func (c *RoutinesListCall) IfNoneMatch(entityTag string) *RoutinesListCall { 11339 c.ifNoneMatch_ = entityTag 11340 return c 11341} 11342 11343// Context sets the context to be used in this call's Do method. Any 11344// pending HTTP request will be aborted if the provided context is 11345// canceled. 11346func (c *RoutinesListCall) Context(ctx context.Context) *RoutinesListCall { 11347 c.ctx_ = ctx 11348 return c 11349} 11350 11351// Header returns an http.Header that can be modified by the caller to 11352// add HTTP headers to the request. 11353func (c *RoutinesListCall) Header() http.Header { 11354 if c.header_ == nil { 11355 c.header_ = make(http.Header) 11356 } 11357 return c.header_ 11358} 11359 11360func (c *RoutinesListCall) doRequest(alt string) (*http.Response, error) { 11361 reqHeaders := make(http.Header) 11362 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 11363 for k, v := range c.header_ { 11364 reqHeaders[k] = v 11365 } 11366 reqHeaders.Set("User-Agent", c.s.userAgent()) 11367 if c.ifNoneMatch_ != "" { 11368 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11369 } 11370 var body io.Reader = nil 11371 c.urlParams_.Set("alt", alt) 11372 c.urlParams_.Set("prettyPrint", "false") 11373 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines") 11374 urls += "?" + c.urlParams_.Encode() 11375 req, err := http.NewRequest("GET", urls, body) 11376 if err != nil { 11377 return nil, err 11378 } 11379 req.Header = reqHeaders 11380 googleapi.Expand(req.URL, map[string]string{ 11381 "projectId": c.projectId, 11382 "datasetId": c.datasetId, 11383 }) 11384 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11385} 11386 11387// Do executes the "bigquery.routines.list" call. 11388// Exactly one of *ListRoutinesResponse or error will be non-nil. Any 11389// non-2xx status code is an error. Response headers are in either 11390// *ListRoutinesResponse.ServerResponse.Header or (if a response was 11391// returned at all) in error.(*googleapi.Error).Header. Use 11392// googleapi.IsNotModified to check whether the returned error was 11393// because http.StatusNotModified was returned. 11394func (c *RoutinesListCall) Do(opts ...googleapi.CallOption) (*ListRoutinesResponse, error) { 11395 gensupport.SetOptions(c.urlParams_, opts...) 11396 res, err := c.doRequest("json") 11397 if res != nil && res.StatusCode == http.StatusNotModified { 11398 if res.Body != nil { 11399 res.Body.Close() 11400 } 11401 return nil, &googleapi.Error{ 11402 Code: res.StatusCode, 11403 Header: res.Header, 11404 } 11405 } 11406 if err != nil { 11407 return nil, err 11408 } 11409 defer googleapi.CloseBody(res) 11410 if err := googleapi.CheckResponse(res); err != nil { 11411 return nil, err 11412 } 11413 ret := &ListRoutinesResponse{ 11414 ServerResponse: googleapi.ServerResponse{ 11415 Header: res.Header, 11416 HTTPStatusCode: res.StatusCode, 11417 }, 11418 } 11419 target := &ret 11420 if err := gensupport.DecodeResponse(target, res); err != nil { 11421 return nil, err 11422 } 11423 return ret, nil 11424 // { 11425 // "description": "Lists all routines in the specified dataset. Requires the READER dataset role.", 11426 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines", 11427 // "httpMethod": "GET", 11428 // "id": "bigquery.routines.list", 11429 // "parameterOrder": [ 11430 // "projectId", 11431 // "datasetId" 11432 // ], 11433 // "parameters": { 11434 // "datasetId": { 11435 // "description": "Required. Dataset ID of the routines to list", 11436 // "location": "path", 11437 // "pattern": "^[^/]+$", 11438 // "required": true, 11439 // "type": "string" 11440 // }, 11441 // "filter": { 11442 // "description": "If set, then only the Routines matching this filter are returned. The current supported form is either \"routine_type:\" or \"routineType:\", where is a RoutineType enum. Example: \"routineType:SCALAR_FUNCTION\".", 11443 // "location": "query", 11444 // "type": "string" 11445 // }, 11446 // "maxResults": { 11447 // "description": "The maximum number of results to return in a single response page. Leverage the page tokens to iterate through the entire collection.", 11448 // "format": "uint32", 11449 // "location": "query", 11450 // "type": "integer" 11451 // }, 11452 // "pageToken": { 11453 // "description": "Page token, returned by a previous call, to request the next page of results", 11454 // "location": "query", 11455 // "type": "string" 11456 // }, 11457 // "projectId": { 11458 // "description": "Required. Project ID of the routines to list", 11459 // "location": "path", 11460 // "pattern": "^[^/]+$", 11461 // "required": true, 11462 // "type": "string" 11463 // }, 11464 // "readMask": { 11465 // "description": "If set, then only the Routine fields in the field mask, as well as project_id, dataset_id and routine_id, are returned in the response. If unset, then the following Routine fields are returned: etag, project_id, dataset_id, routine_id, routine_type, creation_time, last_modified_time, and language.", 11466 // "format": "google-fieldmask", 11467 // "location": "query", 11468 // "type": "string" 11469 // } 11470 // }, 11471 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines", 11472 // "response": { 11473 // "$ref": "ListRoutinesResponse" 11474 // }, 11475 // "scopes": [ 11476 // "https://www.googleapis.com/auth/bigquery", 11477 // "https://www.googleapis.com/auth/bigquery.readonly", 11478 // "https://www.googleapis.com/auth/cloud-platform", 11479 // "https://www.googleapis.com/auth/cloud-platform.read-only" 11480 // ] 11481 // } 11482 11483} 11484 11485// Pages invokes f for each page of results. 11486// A non-nil error returned from f will halt the iteration. 11487// The provided context supersedes any context provided to the Context method. 11488func (c *RoutinesListCall) Pages(ctx context.Context, f func(*ListRoutinesResponse) error) error { 11489 c.ctx_ = ctx 11490 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 11491 for { 11492 x, err := c.Do() 11493 if err != nil { 11494 return err 11495 } 11496 if err := f(x); err != nil { 11497 return err 11498 } 11499 if x.NextPageToken == "" { 11500 return nil 11501 } 11502 c.PageToken(x.NextPageToken) 11503 } 11504} 11505 11506// method id "bigquery.routines.update": 11507 11508type RoutinesUpdateCall struct { 11509 s *Service 11510 projectId string 11511 datasetId string 11512 routineId string 11513 routine *Routine 11514 urlParams_ gensupport.URLParams 11515 ctx_ context.Context 11516 header_ http.Header 11517} 11518 11519// Update: Updates information in an existing routine. The update method 11520// replaces the entire Routine resource. 11521func (r *RoutinesService) Update(projectId string, datasetId string, routineId string, routine *Routine) *RoutinesUpdateCall { 11522 c := &RoutinesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11523 c.projectId = projectId 11524 c.datasetId = datasetId 11525 c.routineId = routineId 11526 c.routine = routine 11527 return c 11528} 11529 11530// Fields allows partial responses to be retrieved. See 11531// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11532// for more information. 11533func (c *RoutinesUpdateCall) Fields(s ...googleapi.Field) *RoutinesUpdateCall { 11534 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11535 return c 11536} 11537 11538// Context sets the context to be used in this call's Do method. Any 11539// pending HTTP request will be aborted if the provided context is 11540// canceled. 11541func (c *RoutinesUpdateCall) Context(ctx context.Context) *RoutinesUpdateCall { 11542 c.ctx_ = ctx 11543 return c 11544} 11545 11546// Header returns an http.Header that can be modified by the caller to 11547// add HTTP headers to the request. 11548func (c *RoutinesUpdateCall) Header() http.Header { 11549 if c.header_ == nil { 11550 c.header_ = make(http.Header) 11551 } 11552 return c.header_ 11553} 11554 11555func (c *RoutinesUpdateCall) doRequest(alt string) (*http.Response, error) { 11556 reqHeaders := make(http.Header) 11557 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 11558 for k, v := range c.header_ { 11559 reqHeaders[k] = v 11560 } 11561 reqHeaders.Set("User-Agent", c.s.userAgent()) 11562 var body io.Reader = nil 11563 body, err := googleapi.WithoutDataWrapper.JSONReader(c.routine) 11564 if err != nil { 11565 return nil, err 11566 } 11567 reqHeaders.Set("Content-Type", "application/json") 11568 c.urlParams_.Set("alt", alt) 11569 c.urlParams_.Set("prettyPrint", "false") 11570 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}") 11571 urls += "?" + c.urlParams_.Encode() 11572 req, err := http.NewRequest("PUT", urls, body) 11573 if err != nil { 11574 return nil, err 11575 } 11576 req.Header = reqHeaders 11577 googleapi.Expand(req.URL, map[string]string{ 11578 "projectId": c.projectId, 11579 "datasetId": c.datasetId, 11580 "routineId": c.routineId, 11581 }) 11582 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11583} 11584 11585// Do executes the "bigquery.routines.update" call. 11586// Exactly one of *Routine or error will be non-nil. Any non-2xx status 11587// code is an error. Response headers are in either 11588// *Routine.ServerResponse.Header or (if a response was returned at all) 11589// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 11590// check whether the returned error was because http.StatusNotModified 11591// was returned. 11592func (c *RoutinesUpdateCall) Do(opts ...googleapi.CallOption) (*Routine, error) { 11593 gensupport.SetOptions(c.urlParams_, opts...) 11594 res, err := c.doRequest("json") 11595 if res != nil && res.StatusCode == http.StatusNotModified { 11596 if res.Body != nil { 11597 res.Body.Close() 11598 } 11599 return nil, &googleapi.Error{ 11600 Code: res.StatusCode, 11601 Header: res.Header, 11602 } 11603 } 11604 if err != nil { 11605 return nil, err 11606 } 11607 defer googleapi.CloseBody(res) 11608 if err := googleapi.CheckResponse(res); err != nil { 11609 return nil, err 11610 } 11611 ret := &Routine{ 11612 ServerResponse: googleapi.ServerResponse{ 11613 Header: res.Header, 11614 HTTPStatusCode: res.StatusCode, 11615 }, 11616 } 11617 target := &ret 11618 if err := gensupport.DecodeResponse(target, res); err != nil { 11619 return nil, err 11620 } 11621 return ret, nil 11622 // { 11623 // "description": "Updates information in an existing routine. The update method replaces the entire Routine resource.", 11624 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines/{routinesId}", 11625 // "httpMethod": "PUT", 11626 // "id": "bigquery.routines.update", 11627 // "parameterOrder": [ 11628 // "projectId", 11629 // "datasetId", 11630 // "routineId" 11631 // ], 11632 // "parameters": { 11633 // "datasetId": { 11634 // "description": "Required. Dataset ID of the routine to update", 11635 // "location": "path", 11636 // "pattern": "^[^/]+$", 11637 // "required": true, 11638 // "type": "string" 11639 // }, 11640 // "projectId": { 11641 // "description": "Required. Project ID of the routine to update", 11642 // "location": "path", 11643 // "pattern": "^[^/]+$", 11644 // "required": true, 11645 // "type": "string" 11646 // }, 11647 // "routineId": { 11648 // "description": "Required. Routine ID of the routine to update", 11649 // "location": "path", 11650 // "pattern": "^[^/]+$", 11651 // "required": true, 11652 // "type": "string" 11653 // } 11654 // }, 11655 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}", 11656 // "request": { 11657 // "$ref": "Routine" 11658 // }, 11659 // "response": { 11660 // "$ref": "Routine" 11661 // }, 11662 // "scopes": [ 11663 // "https://www.googleapis.com/auth/bigquery", 11664 // "https://www.googleapis.com/auth/cloud-platform" 11665 // ] 11666 // } 11667 11668} 11669 11670// method id "bigquery.rowAccessPolicies.list": 11671 11672type RowAccessPoliciesListCall struct { 11673 s *Service 11674 projectId string 11675 datasetId string 11676 tableId string 11677 urlParams_ gensupport.URLParams 11678 ifNoneMatch_ string 11679 ctx_ context.Context 11680 header_ http.Header 11681} 11682 11683// List: Lists all row access policies on the specified table. 11684func (r *RowAccessPoliciesService) List(projectId string, datasetId string, tableId string) *RowAccessPoliciesListCall { 11685 c := &RowAccessPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11686 c.projectId = projectId 11687 c.datasetId = datasetId 11688 c.tableId = tableId 11689 return c 11690} 11691 11692// PageSize sets the optional parameter "pageSize": The maximum number 11693// of results to return in a single response page. Leverage the page 11694// tokens to iterate through the entire collection. 11695func (c *RowAccessPoliciesListCall) PageSize(pageSize int64) *RowAccessPoliciesListCall { 11696 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 11697 return c 11698} 11699 11700// PageToken sets the optional parameter "pageToken": Page token, 11701// returned by a previous call, to request the next page of results. 11702func (c *RowAccessPoliciesListCall) PageToken(pageToken string) *RowAccessPoliciesListCall { 11703 c.urlParams_.Set("pageToken", pageToken) 11704 return c 11705} 11706 11707// Fields allows partial responses to be retrieved. See 11708// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11709// for more information. 11710func (c *RowAccessPoliciesListCall) Fields(s ...googleapi.Field) *RowAccessPoliciesListCall { 11711 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11712 return c 11713} 11714 11715// IfNoneMatch sets the optional parameter which makes the operation 11716// fail if the object's ETag matches the given value. This is useful for 11717// getting updates only after the object has changed since the last 11718// request. Use googleapi.IsNotModified to check whether the response 11719// error from Do is the result of In-None-Match. 11720func (c *RowAccessPoliciesListCall) IfNoneMatch(entityTag string) *RowAccessPoliciesListCall { 11721 c.ifNoneMatch_ = entityTag 11722 return c 11723} 11724 11725// Context sets the context to be used in this call's Do method. Any 11726// pending HTTP request will be aborted if the provided context is 11727// canceled. 11728func (c *RowAccessPoliciesListCall) Context(ctx context.Context) *RowAccessPoliciesListCall { 11729 c.ctx_ = ctx 11730 return c 11731} 11732 11733// Header returns an http.Header that can be modified by the caller to 11734// add HTTP headers to the request. 11735func (c *RowAccessPoliciesListCall) Header() http.Header { 11736 if c.header_ == nil { 11737 c.header_ = make(http.Header) 11738 } 11739 return c.header_ 11740} 11741 11742func (c *RowAccessPoliciesListCall) doRequest(alt string) (*http.Response, error) { 11743 reqHeaders := make(http.Header) 11744 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 11745 for k, v := range c.header_ { 11746 reqHeaders[k] = v 11747 } 11748 reqHeaders.Set("User-Agent", c.s.userAgent()) 11749 if c.ifNoneMatch_ != "" { 11750 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11751 } 11752 var body io.Reader = nil 11753 c.urlParams_.Set("alt", alt) 11754 c.urlParams_.Set("prettyPrint", "false") 11755 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/tables/{+tableId}/rowAccessPolicies") 11756 urls += "?" + c.urlParams_.Encode() 11757 req, err := http.NewRequest("GET", urls, body) 11758 if err != nil { 11759 return nil, err 11760 } 11761 req.Header = reqHeaders 11762 googleapi.Expand(req.URL, map[string]string{ 11763 "projectId": c.projectId, 11764 "datasetId": c.datasetId, 11765 "tableId": c.tableId, 11766 }) 11767 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11768} 11769 11770// Do executes the "bigquery.rowAccessPolicies.list" call. 11771// Exactly one of *ListRowAccessPoliciesResponse or error will be 11772// non-nil. Any non-2xx status code is an error. Response headers are in 11773// either *ListRowAccessPoliciesResponse.ServerResponse.Header or (if a 11774// response was returned at all) in error.(*googleapi.Error).Header. Use 11775// googleapi.IsNotModified to check whether the returned error was 11776// because http.StatusNotModified was returned. 11777func (c *RowAccessPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListRowAccessPoliciesResponse, error) { 11778 gensupport.SetOptions(c.urlParams_, opts...) 11779 res, err := c.doRequest("json") 11780 if res != nil && res.StatusCode == http.StatusNotModified { 11781 if res.Body != nil { 11782 res.Body.Close() 11783 } 11784 return nil, &googleapi.Error{ 11785 Code: res.StatusCode, 11786 Header: res.Header, 11787 } 11788 } 11789 if err != nil { 11790 return nil, err 11791 } 11792 defer googleapi.CloseBody(res) 11793 if err := googleapi.CheckResponse(res); err != nil { 11794 return nil, err 11795 } 11796 ret := &ListRowAccessPoliciesResponse{ 11797 ServerResponse: googleapi.ServerResponse{ 11798 Header: res.Header, 11799 HTTPStatusCode: res.StatusCode, 11800 }, 11801 } 11802 target := &ret 11803 if err := gensupport.DecodeResponse(target, res); err != nil { 11804 return nil, err 11805 } 11806 return ret, nil 11807 // { 11808 // "description": "Lists all row access policies on the specified table.", 11809 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}/rowAccessPolicies", 11810 // "httpMethod": "GET", 11811 // "id": "bigquery.rowAccessPolicies.list", 11812 // "parameterOrder": [ 11813 // "projectId", 11814 // "datasetId", 11815 // "tableId" 11816 // ], 11817 // "parameters": { 11818 // "datasetId": { 11819 // "description": "Required. Dataset ID of row access policies to list.", 11820 // "location": "path", 11821 // "pattern": "^[^/]+$", 11822 // "required": true, 11823 // "type": "string" 11824 // }, 11825 // "pageSize": { 11826 // "description": "The maximum number of results to return in a single response page. Leverage the page tokens to iterate through the entire collection.", 11827 // "format": "int32", 11828 // "location": "query", 11829 // "type": "integer" 11830 // }, 11831 // "pageToken": { 11832 // "description": "Page token, returned by a previous call, to request the next page of results.", 11833 // "location": "query", 11834 // "type": "string" 11835 // }, 11836 // "projectId": { 11837 // "description": "Required. Project ID of the row access policies to list.", 11838 // "location": "path", 11839 // "pattern": "^[^/]+$", 11840 // "required": true, 11841 // "type": "string" 11842 // }, 11843 // "tableId": { 11844 // "description": "Required. Table ID of the table to list row access policies.", 11845 // "location": "path", 11846 // "pattern": "^[^/]+$", 11847 // "required": true, 11848 // "type": "string" 11849 // } 11850 // }, 11851 // "path": "projects/{+projectId}/datasets/{+datasetId}/tables/{+tableId}/rowAccessPolicies", 11852 // "response": { 11853 // "$ref": "ListRowAccessPoliciesResponse" 11854 // }, 11855 // "scopes": [ 11856 // "https://www.googleapis.com/auth/bigquery", 11857 // "https://www.googleapis.com/auth/bigquery.readonly", 11858 // "https://www.googleapis.com/auth/cloud-platform", 11859 // "https://www.googleapis.com/auth/cloud-platform.read-only" 11860 // ] 11861 // } 11862 11863} 11864 11865// Pages invokes f for each page of results. 11866// A non-nil error returned from f will halt the iteration. 11867// The provided context supersedes any context provided to the Context method. 11868func (c *RowAccessPoliciesListCall) Pages(ctx context.Context, f func(*ListRowAccessPoliciesResponse) error) error { 11869 c.ctx_ = ctx 11870 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 11871 for { 11872 x, err := c.Do() 11873 if err != nil { 11874 return err 11875 } 11876 if err := f(x); err != nil { 11877 return err 11878 } 11879 if x.NextPageToken == "" { 11880 return nil 11881 } 11882 c.PageToken(x.NextPageToken) 11883 } 11884} 11885 11886// method id "bigquery.tabledata.insertAll": 11887 11888type TabledataInsertAllCall struct { 11889 s *Service 11890 projectId string 11891 datasetId string 11892 tableId string 11893 tabledatainsertallrequest *TableDataInsertAllRequest 11894 urlParams_ gensupport.URLParams 11895 ctx_ context.Context 11896 header_ http.Header 11897} 11898 11899// InsertAll: Streams data into BigQuery one record at a time without 11900// needing to run a load job. Requires the WRITER dataset role. 11901func (r *TabledataService) InsertAll(projectId string, datasetId string, tableId string, tabledatainsertallrequest *TableDataInsertAllRequest) *TabledataInsertAllCall { 11902 c := &TabledataInsertAllCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11903 c.projectId = projectId 11904 c.datasetId = datasetId 11905 c.tableId = tableId 11906 c.tabledatainsertallrequest = tabledatainsertallrequest 11907 return c 11908} 11909 11910// Fields allows partial responses to be retrieved. See 11911// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11912// for more information. 11913func (c *TabledataInsertAllCall) Fields(s ...googleapi.Field) *TabledataInsertAllCall { 11914 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11915 return c 11916} 11917 11918// Context sets the context to be used in this call's Do method. Any 11919// pending HTTP request will be aborted if the provided context is 11920// canceled. 11921func (c *TabledataInsertAllCall) Context(ctx context.Context) *TabledataInsertAllCall { 11922 c.ctx_ = ctx 11923 return c 11924} 11925 11926// Header returns an http.Header that can be modified by the caller to 11927// add HTTP headers to the request. 11928func (c *TabledataInsertAllCall) Header() http.Header { 11929 if c.header_ == nil { 11930 c.header_ = make(http.Header) 11931 } 11932 return c.header_ 11933} 11934 11935func (c *TabledataInsertAllCall) doRequest(alt string) (*http.Response, error) { 11936 reqHeaders := make(http.Header) 11937 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 11938 for k, v := range c.header_ { 11939 reqHeaders[k] = v 11940 } 11941 reqHeaders.Set("User-Agent", c.s.userAgent()) 11942 var body io.Reader = nil 11943 body, err := googleapi.WithoutDataWrapper.JSONReader(c.tabledatainsertallrequest) 11944 if err != nil { 11945 return nil, err 11946 } 11947 reqHeaders.Set("Content-Type", "application/json") 11948 c.urlParams_.Set("alt", alt) 11949 c.urlParams_.Set("prettyPrint", "false") 11950 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/insertAll") 11951 urls += "?" + c.urlParams_.Encode() 11952 req, err := http.NewRequest("POST", urls, body) 11953 if err != nil { 11954 return nil, err 11955 } 11956 req.Header = reqHeaders 11957 googleapi.Expand(req.URL, map[string]string{ 11958 "projectId": c.projectId, 11959 "datasetId": c.datasetId, 11960 "tableId": c.tableId, 11961 }) 11962 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11963} 11964 11965// Do executes the "bigquery.tabledata.insertAll" call. 11966// Exactly one of *TableDataInsertAllResponse or error will be non-nil. 11967// Any non-2xx status code is an error. Response headers are in either 11968// *TableDataInsertAllResponse.ServerResponse.Header or (if a response 11969// was returned at all) in error.(*googleapi.Error).Header. Use 11970// googleapi.IsNotModified to check whether the returned error was 11971// because http.StatusNotModified was returned. 11972func (c *TabledataInsertAllCall) Do(opts ...googleapi.CallOption) (*TableDataInsertAllResponse, error) { 11973 gensupport.SetOptions(c.urlParams_, opts...) 11974 res, err := c.doRequest("json") 11975 if res != nil && res.StatusCode == http.StatusNotModified { 11976 if res.Body != nil { 11977 res.Body.Close() 11978 } 11979 return nil, &googleapi.Error{ 11980 Code: res.StatusCode, 11981 Header: res.Header, 11982 } 11983 } 11984 if err != nil { 11985 return nil, err 11986 } 11987 defer googleapi.CloseBody(res) 11988 if err := googleapi.CheckResponse(res); err != nil { 11989 return nil, err 11990 } 11991 ret := &TableDataInsertAllResponse{ 11992 ServerResponse: googleapi.ServerResponse{ 11993 Header: res.Header, 11994 HTTPStatusCode: res.StatusCode, 11995 }, 11996 } 11997 target := &ret 11998 if err := gensupport.DecodeResponse(target, res); err != nil { 11999 return nil, err 12000 } 12001 return ret, nil 12002 // { 12003 // "description": "Streams data into BigQuery one record at a time without needing to run a load job. Requires the WRITER dataset role.", 12004 // "httpMethod": "POST", 12005 // "id": "bigquery.tabledata.insertAll", 12006 // "parameterOrder": [ 12007 // "projectId", 12008 // "datasetId", 12009 // "tableId" 12010 // ], 12011 // "parameters": { 12012 // "datasetId": { 12013 // "description": "Dataset ID of the destination table.", 12014 // "location": "path", 12015 // "required": true, 12016 // "type": "string" 12017 // }, 12018 // "projectId": { 12019 // "description": "Project ID of the destination table.", 12020 // "location": "path", 12021 // "required": true, 12022 // "type": "string" 12023 // }, 12024 // "tableId": { 12025 // "description": "Table ID of the destination table.", 12026 // "location": "path", 12027 // "required": true, 12028 // "type": "string" 12029 // } 12030 // }, 12031 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/insertAll", 12032 // "request": { 12033 // "$ref": "TableDataInsertAllRequest" 12034 // }, 12035 // "response": { 12036 // "$ref": "TableDataInsertAllResponse" 12037 // }, 12038 // "scopes": [ 12039 // "https://www.googleapis.com/auth/bigquery", 12040 // "https://www.googleapis.com/auth/bigquery.insertdata", 12041 // "https://www.googleapis.com/auth/cloud-platform" 12042 // ] 12043 // } 12044 12045} 12046 12047// method id "bigquery.tabledata.list": 12048 12049type TabledataListCall struct { 12050 s *Service 12051 projectId string 12052 datasetId string 12053 tableId string 12054 urlParams_ gensupport.URLParams 12055 ifNoneMatch_ string 12056 ctx_ context.Context 12057 header_ http.Header 12058} 12059 12060// List: Retrieves table data from a specified set of rows. Requires the 12061// READER dataset role. 12062func (r *TabledataService) List(projectId string, datasetId string, tableId string) *TabledataListCall { 12063 c := &TabledataListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12064 c.projectId = projectId 12065 c.datasetId = datasetId 12066 c.tableId = tableId 12067 return c 12068} 12069 12070// MaxResults sets the optional parameter "maxResults": Maximum number 12071// of results to return 12072func (c *TabledataListCall) MaxResults(maxResults int64) *TabledataListCall { 12073 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 12074 return c 12075} 12076 12077// PageToken sets the optional parameter "pageToken": Page token, 12078// returned by a previous call, identifying the result set 12079func (c *TabledataListCall) PageToken(pageToken string) *TabledataListCall { 12080 c.urlParams_.Set("pageToken", pageToken) 12081 return c 12082} 12083 12084// SelectedFields sets the optional parameter "selectedFields": List of 12085// fields to return (comma-separated). If unspecified, all fields are 12086// returned 12087func (c *TabledataListCall) SelectedFields(selectedFields string) *TabledataListCall { 12088 c.urlParams_.Set("selectedFields", selectedFields) 12089 return c 12090} 12091 12092// StartIndex sets the optional parameter "startIndex": Zero-based index 12093// of the starting row to read 12094func (c *TabledataListCall) StartIndex(startIndex uint64) *TabledataListCall { 12095 c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) 12096 return c 12097} 12098 12099// Fields allows partial responses to be retrieved. See 12100// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12101// for more information. 12102func (c *TabledataListCall) Fields(s ...googleapi.Field) *TabledataListCall { 12103 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12104 return c 12105} 12106 12107// IfNoneMatch sets the optional parameter which makes the operation 12108// fail if the object's ETag matches the given value. This is useful for 12109// getting updates only after the object has changed since the last 12110// request. Use googleapi.IsNotModified to check whether the response 12111// error from Do is the result of In-None-Match. 12112func (c *TabledataListCall) IfNoneMatch(entityTag string) *TabledataListCall { 12113 c.ifNoneMatch_ = entityTag 12114 return c 12115} 12116 12117// Context sets the context to be used in this call's Do method. Any 12118// pending HTTP request will be aborted if the provided context is 12119// canceled. 12120func (c *TabledataListCall) Context(ctx context.Context) *TabledataListCall { 12121 c.ctx_ = ctx 12122 return c 12123} 12124 12125// Header returns an http.Header that can be modified by the caller to 12126// add HTTP headers to the request. 12127func (c *TabledataListCall) Header() http.Header { 12128 if c.header_ == nil { 12129 c.header_ = make(http.Header) 12130 } 12131 return c.header_ 12132} 12133 12134func (c *TabledataListCall) doRequest(alt string) (*http.Response, error) { 12135 reqHeaders := make(http.Header) 12136 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 12137 for k, v := range c.header_ { 12138 reqHeaders[k] = v 12139 } 12140 reqHeaders.Set("User-Agent", c.s.userAgent()) 12141 if c.ifNoneMatch_ != "" { 12142 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12143 } 12144 var body io.Reader = nil 12145 c.urlParams_.Set("alt", alt) 12146 c.urlParams_.Set("prettyPrint", "false") 12147 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/data") 12148 urls += "?" + c.urlParams_.Encode() 12149 req, err := http.NewRequest("GET", urls, body) 12150 if err != nil { 12151 return nil, err 12152 } 12153 req.Header = reqHeaders 12154 googleapi.Expand(req.URL, map[string]string{ 12155 "projectId": c.projectId, 12156 "datasetId": c.datasetId, 12157 "tableId": c.tableId, 12158 }) 12159 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12160} 12161 12162// Do executes the "bigquery.tabledata.list" call. 12163// Exactly one of *TableDataList or error will be non-nil. Any non-2xx 12164// status code is an error. Response headers are in either 12165// *TableDataList.ServerResponse.Header or (if a response was returned 12166// at all) in error.(*googleapi.Error).Header. Use 12167// googleapi.IsNotModified to check whether the returned error was 12168// because http.StatusNotModified was returned. 12169func (c *TabledataListCall) Do(opts ...googleapi.CallOption) (*TableDataList, error) { 12170 gensupport.SetOptions(c.urlParams_, opts...) 12171 res, err := c.doRequest("json") 12172 if res != nil && res.StatusCode == http.StatusNotModified { 12173 if res.Body != nil { 12174 res.Body.Close() 12175 } 12176 return nil, &googleapi.Error{ 12177 Code: res.StatusCode, 12178 Header: res.Header, 12179 } 12180 } 12181 if err != nil { 12182 return nil, err 12183 } 12184 defer googleapi.CloseBody(res) 12185 if err := googleapi.CheckResponse(res); err != nil { 12186 return nil, err 12187 } 12188 ret := &TableDataList{ 12189 ServerResponse: googleapi.ServerResponse{ 12190 Header: res.Header, 12191 HTTPStatusCode: res.StatusCode, 12192 }, 12193 } 12194 target := &ret 12195 if err := gensupport.DecodeResponse(target, res); err != nil { 12196 return nil, err 12197 } 12198 return ret, nil 12199 // { 12200 // "description": "Retrieves table data from a specified set of rows. Requires the READER dataset role.", 12201 // "httpMethod": "GET", 12202 // "id": "bigquery.tabledata.list", 12203 // "parameterOrder": [ 12204 // "projectId", 12205 // "datasetId", 12206 // "tableId" 12207 // ], 12208 // "parameters": { 12209 // "datasetId": { 12210 // "description": "Dataset ID of the table to read", 12211 // "location": "path", 12212 // "required": true, 12213 // "type": "string" 12214 // }, 12215 // "maxResults": { 12216 // "description": "Maximum number of results to return", 12217 // "format": "uint32", 12218 // "location": "query", 12219 // "type": "integer" 12220 // }, 12221 // "pageToken": { 12222 // "description": "Page token, returned by a previous call, identifying the result set", 12223 // "location": "query", 12224 // "type": "string" 12225 // }, 12226 // "projectId": { 12227 // "description": "Project ID of the table to read", 12228 // "location": "path", 12229 // "required": true, 12230 // "type": "string" 12231 // }, 12232 // "selectedFields": { 12233 // "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", 12234 // "location": "query", 12235 // "type": "string" 12236 // }, 12237 // "startIndex": { 12238 // "description": "Zero-based index of the starting row to read", 12239 // "format": "uint64", 12240 // "location": "query", 12241 // "type": "string" 12242 // }, 12243 // "tableId": { 12244 // "description": "Table ID of the table to read", 12245 // "location": "path", 12246 // "required": true, 12247 // "type": "string" 12248 // } 12249 // }, 12250 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/data", 12251 // "response": { 12252 // "$ref": "TableDataList" 12253 // }, 12254 // "scopes": [ 12255 // "https://www.googleapis.com/auth/bigquery", 12256 // "https://www.googleapis.com/auth/bigquery.readonly", 12257 // "https://www.googleapis.com/auth/cloud-platform", 12258 // "https://www.googleapis.com/auth/cloud-platform.read-only" 12259 // ] 12260 // } 12261 12262} 12263 12264// Pages invokes f for each page of results. 12265// A non-nil error returned from f will halt the iteration. 12266// The provided context supersedes any context provided to the Context method. 12267func (c *TabledataListCall) Pages(ctx context.Context, f func(*TableDataList) error) error { 12268 c.ctx_ = ctx 12269 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 12270 for { 12271 x, err := c.Do() 12272 if err != nil { 12273 return err 12274 } 12275 if err := f(x); err != nil { 12276 return err 12277 } 12278 if x.PageToken == "" { 12279 return nil 12280 } 12281 c.PageToken(x.PageToken) 12282 } 12283} 12284 12285// method id "bigquery.tables.delete": 12286 12287type TablesDeleteCall struct { 12288 s *Service 12289 projectId string 12290 datasetId string 12291 tableId string 12292 urlParams_ gensupport.URLParams 12293 ctx_ context.Context 12294 header_ http.Header 12295} 12296 12297// Delete: Deletes the table specified by tableId from the dataset. If 12298// the table contains data, all the data will be deleted. 12299func (r *TablesService) Delete(projectId string, datasetId string, tableId string) *TablesDeleteCall { 12300 c := &TablesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12301 c.projectId = projectId 12302 c.datasetId = datasetId 12303 c.tableId = tableId 12304 return c 12305} 12306 12307// Fields allows partial responses to be retrieved. See 12308// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12309// for more information. 12310func (c *TablesDeleteCall) Fields(s ...googleapi.Field) *TablesDeleteCall { 12311 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12312 return c 12313} 12314 12315// Context sets the context to be used in this call's Do method. Any 12316// pending HTTP request will be aborted if the provided context is 12317// canceled. 12318func (c *TablesDeleteCall) Context(ctx context.Context) *TablesDeleteCall { 12319 c.ctx_ = ctx 12320 return c 12321} 12322 12323// Header returns an http.Header that can be modified by the caller to 12324// add HTTP headers to the request. 12325func (c *TablesDeleteCall) Header() http.Header { 12326 if c.header_ == nil { 12327 c.header_ = make(http.Header) 12328 } 12329 return c.header_ 12330} 12331 12332func (c *TablesDeleteCall) doRequest(alt string) (*http.Response, error) { 12333 reqHeaders := make(http.Header) 12334 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 12335 for k, v := range c.header_ { 12336 reqHeaders[k] = v 12337 } 12338 reqHeaders.Set("User-Agent", c.s.userAgent()) 12339 var body io.Reader = nil 12340 c.urlParams_.Set("alt", alt) 12341 c.urlParams_.Set("prettyPrint", "false") 12342 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 12343 urls += "?" + c.urlParams_.Encode() 12344 req, err := http.NewRequest("DELETE", urls, body) 12345 if err != nil { 12346 return nil, err 12347 } 12348 req.Header = reqHeaders 12349 googleapi.Expand(req.URL, map[string]string{ 12350 "projectId": c.projectId, 12351 "datasetId": c.datasetId, 12352 "tableId": c.tableId, 12353 }) 12354 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12355} 12356 12357// Do executes the "bigquery.tables.delete" call. 12358func (c *TablesDeleteCall) Do(opts ...googleapi.CallOption) error { 12359 gensupport.SetOptions(c.urlParams_, opts...) 12360 res, err := c.doRequest("json") 12361 if err != nil { 12362 return err 12363 } 12364 defer googleapi.CloseBody(res) 12365 if err := googleapi.CheckResponse(res); err != nil { 12366 return err 12367 } 12368 return nil 12369 // { 12370 // "description": "Deletes the table specified by tableId from the dataset. If the table contains data, all the data will be deleted.", 12371 // "httpMethod": "DELETE", 12372 // "id": "bigquery.tables.delete", 12373 // "parameterOrder": [ 12374 // "projectId", 12375 // "datasetId", 12376 // "tableId" 12377 // ], 12378 // "parameters": { 12379 // "datasetId": { 12380 // "description": "Dataset ID of the table to delete", 12381 // "location": "path", 12382 // "required": true, 12383 // "type": "string" 12384 // }, 12385 // "projectId": { 12386 // "description": "Project ID of the table to delete", 12387 // "location": "path", 12388 // "required": true, 12389 // "type": "string" 12390 // }, 12391 // "tableId": { 12392 // "description": "Table ID of the table to delete", 12393 // "location": "path", 12394 // "required": true, 12395 // "type": "string" 12396 // } 12397 // }, 12398 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 12399 // "scopes": [ 12400 // "https://www.googleapis.com/auth/bigquery", 12401 // "https://www.googleapis.com/auth/cloud-platform" 12402 // ] 12403 // } 12404 12405} 12406 12407// method id "bigquery.tables.get": 12408 12409type TablesGetCall struct { 12410 s *Service 12411 projectId string 12412 datasetId string 12413 tableId string 12414 urlParams_ gensupport.URLParams 12415 ifNoneMatch_ string 12416 ctx_ context.Context 12417 header_ http.Header 12418} 12419 12420// Get: Gets the specified table resource by table ID. This method does 12421// not return the data in the table, it only returns the table resource, 12422// which describes the structure of this table. 12423func (r *TablesService) Get(projectId string, datasetId string, tableId string) *TablesGetCall { 12424 c := &TablesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12425 c.projectId = projectId 12426 c.datasetId = datasetId 12427 c.tableId = tableId 12428 return c 12429} 12430 12431// SelectedFields sets the optional parameter "selectedFields": List of 12432// fields to return (comma-separated). If unspecified, all fields are 12433// returned 12434func (c *TablesGetCall) SelectedFields(selectedFields string) *TablesGetCall { 12435 c.urlParams_.Set("selectedFields", selectedFields) 12436 return c 12437} 12438 12439// Fields allows partial responses to be retrieved. See 12440// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12441// for more information. 12442func (c *TablesGetCall) Fields(s ...googleapi.Field) *TablesGetCall { 12443 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12444 return c 12445} 12446 12447// IfNoneMatch sets the optional parameter which makes the operation 12448// fail if the object's ETag matches the given value. This is useful for 12449// getting updates only after the object has changed since the last 12450// request. Use googleapi.IsNotModified to check whether the response 12451// error from Do is the result of In-None-Match. 12452func (c *TablesGetCall) IfNoneMatch(entityTag string) *TablesGetCall { 12453 c.ifNoneMatch_ = entityTag 12454 return c 12455} 12456 12457// Context sets the context to be used in this call's Do method. Any 12458// pending HTTP request will be aborted if the provided context is 12459// canceled. 12460func (c *TablesGetCall) Context(ctx context.Context) *TablesGetCall { 12461 c.ctx_ = ctx 12462 return c 12463} 12464 12465// Header returns an http.Header that can be modified by the caller to 12466// add HTTP headers to the request. 12467func (c *TablesGetCall) Header() http.Header { 12468 if c.header_ == nil { 12469 c.header_ = make(http.Header) 12470 } 12471 return c.header_ 12472} 12473 12474func (c *TablesGetCall) doRequest(alt string) (*http.Response, error) { 12475 reqHeaders := make(http.Header) 12476 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 12477 for k, v := range c.header_ { 12478 reqHeaders[k] = v 12479 } 12480 reqHeaders.Set("User-Agent", c.s.userAgent()) 12481 if c.ifNoneMatch_ != "" { 12482 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12483 } 12484 var body io.Reader = nil 12485 c.urlParams_.Set("alt", alt) 12486 c.urlParams_.Set("prettyPrint", "false") 12487 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 12488 urls += "?" + c.urlParams_.Encode() 12489 req, err := http.NewRequest("GET", urls, body) 12490 if err != nil { 12491 return nil, err 12492 } 12493 req.Header = reqHeaders 12494 googleapi.Expand(req.URL, map[string]string{ 12495 "projectId": c.projectId, 12496 "datasetId": c.datasetId, 12497 "tableId": c.tableId, 12498 }) 12499 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12500} 12501 12502// Do executes the "bigquery.tables.get" call. 12503// Exactly one of *Table or error will be non-nil. Any non-2xx status 12504// code is an error. Response headers are in either 12505// *Table.ServerResponse.Header or (if a response was returned at all) 12506// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12507// check whether the returned error was because http.StatusNotModified 12508// was returned. 12509func (c *TablesGetCall) Do(opts ...googleapi.CallOption) (*Table, error) { 12510 gensupport.SetOptions(c.urlParams_, opts...) 12511 res, err := c.doRequest("json") 12512 if res != nil && res.StatusCode == http.StatusNotModified { 12513 if res.Body != nil { 12514 res.Body.Close() 12515 } 12516 return nil, &googleapi.Error{ 12517 Code: res.StatusCode, 12518 Header: res.Header, 12519 } 12520 } 12521 if err != nil { 12522 return nil, err 12523 } 12524 defer googleapi.CloseBody(res) 12525 if err := googleapi.CheckResponse(res); err != nil { 12526 return nil, err 12527 } 12528 ret := &Table{ 12529 ServerResponse: googleapi.ServerResponse{ 12530 Header: res.Header, 12531 HTTPStatusCode: res.StatusCode, 12532 }, 12533 } 12534 target := &ret 12535 if err := gensupport.DecodeResponse(target, res); err != nil { 12536 return nil, err 12537 } 12538 return ret, nil 12539 // { 12540 // "description": "Gets the specified table resource by table ID. This method does not return the data in the table, it only returns the table resource, which describes the structure of this table.", 12541 // "httpMethod": "GET", 12542 // "id": "bigquery.tables.get", 12543 // "parameterOrder": [ 12544 // "projectId", 12545 // "datasetId", 12546 // "tableId" 12547 // ], 12548 // "parameters": { 12549 // "datasetId": { 12550 // "description": "Dataset ID of the requested table", 12551 // "location": "path", 12552 // "required": true, 12553 // "type": "string" 12554 // }, 12555 // "projectId": { 12556 // "description": "Project ID of the requested table", 12557 // "location": "path", 12558 // "required": true, 12559 // "type": "string" 12560 // }, 12561 // "selectedFields": { 12562 // "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", 12563 // "location": "query", 12564 // "type": "string" 12565 // }, 12566 // "tableId": { 12567 // "description": "Table ID of the requested table", 12568 // "location": "path", 12569 // "required": true, 12570 // "type": "string" 12571 // } 12572 // }, 12573 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 12574 // "response": { 12575 // "$ref": "Table" 12576 // }, 12577 // "scopes": [ 12578 // "https://www.googleapis.com/auth/bigquery", 12579 // "https://www.googleapis.com/auth/bigquery.readonly", 12580 // "https://www.googleapis.com/auth/cloud-platform", 12581 // "https://www.googleapis.com/auth/cloud-platform.read-only" 12582 // ] 12583 // } 12584 12585} 12586 12587// method id "bigquery.tables.getIamPolicy": 12588 12589type TablesGetIamPolicyCall struct { 12590 s *Service 12591 resource string 12592 getiampolicyrequest *GetIamPolicyRequest 12593 urlParams_ gensupport.URLParams 12594 ctx_ context.Context 12595 header_ http.Header 12596} 12597 12598// GetIamPolicy: Gets the access control policy for a resource. Returns 12599// an empty policy if the resource exists and does not have a policy 12600// set. 12601func (r *TablesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *TablesGetIamPolicyCall { 12602 c := &TablesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12603 c.resource = resource 12604 c.getiampolicyrequest = getiampolicyrequest 12605 return c 12606} 12607 12608// Fields allows partial responses to be retrieved. See 12609// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12610// for more information. 12611func (c *TablesGetIamPolicyCall) Fields(s ...googleapi.Field) *TablesGetIamPolicyCall { 12612 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12613 return c 12614} 12615 12616// Context sets the context to be used in this call's Do method. Any 12617// pending HTTP request will be aborted if the provided context is 12618// canceled. 12619func (c *TablesGetIamPolicyCall) Context(ctx context.Context) *TablesGetIamPolicyCall { 12620 c.ctx_ = ctx 12621 return c 12622} 12623 12624// Header returns an http.Header that can be modified by the caller to 12625// add HTTP headers to the request. 12626func (c *TablesGetIamPolicyCall) Header() http.Header { 12627 if c.header_ == nil { 12628 c.header_ = make(http.Header) 12629 } 12630 return c.header_ 12631} 12632 12633func (c *TablesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 12634 reqHeaders := make(http.Header) 12635 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 12636 for k, v := range c.header_ { 12637 reqHeaders[k] = v 12638 } 12639 reqHeaders.Set("User-Agent", c.s.userAgent()) 12640 var body io.Reader = nil 12641 body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) 12642 if err != nil { 12643 return nil, err 12644 } 12645 reqHeaders.Set("Content-Type", "application/json") 12646 c.urlParams_.Set("alt", alt) 12647 c.urlParams_.Set("prettyPrint", "false") 12648 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:getIamPolicy") 12649 urls += "?" + c.urlParams_.Encode() 12650 req, err := http.NewRequest("POST", urls, body) 12651 if err != nil { 12652 return nil, err 12653 } 12654 req.Header = reqHeaders 12655 googleapi.Expand(req.URL, map[string]string{ 12656 "resource": c.resource, 12657 }) 12658 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12659} 12660 12661// Do executes the "bigquery.tables.getIamPolicy" call. 12662// Exactly one of *Policy or error will be non-nil. Any non-2xx status 12663// code is an error. Response headers are in either 12664// *Policy.ServerResponse.Header or (if a response was returned at all) 12665// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12666// check whether the returned error was because http.StatusNotModified 12667// was returned. 12668func (c *TablesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 12669 gensupport.SetOptions(c.urlParams_, opts...) 12670 res, err := c.doRequest("json") 12671 if res != nil && res.StatusCode == http.StatusNotModified { 12672 if res.Body != nil { 12673 res.Body.Close() 12674 } 12675 return nil, &googleapi.Error{ 12676 Code: res.StatusCode, 12677 Header: res.Header, 12678 } 12679 } 12680 if err != nil { 12681 return nil, err 12682 } 12683 defer googleapi.CloseBody(res) 12684 if err := googleapi.CheckResponse(res); err != nil { 12685 return nil, err 12686 } 12687 ret := &Policy{ 12688 ServerResponse: googleapi.ServerResponse{ 12689 Header: res.Header, 12690 HTTPStatusCode: res.StatusCode, 12691 }, 12692 } 12693 target := &ret 12694 if err := gensupport.DecodeResponse(target, res); err != nil { 12695 return nil, err 12696 } 12697 return ret, nil 12698 // { 12699 // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", 12700 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}:getIamPolicy", 12701 // "httpMethod": "POST", 12702 // "id": "bigquery.tables.getIamPolicy", 12703 // "parameterOrder": [ 12704 // "resource" 12705 // ], 12706 // "parameters": { 12707 // "resource": { 12708 // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", 12709 // "location": "path", 12710 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+$", 12711 // "required": true, 12712 // "type": "string" 12713 // } 12714 // }, 12715 // "path": "{+resource}:getIamPolicy", 12716 // "request": { 12717 // "$ref": "GetIamPolicyRequest" 12718 // }, 12719 // "response": { 12720 // "$ref": "Policy" 12721 // }, 12722 // "scopes": [ 12723 // "https://www.googleapis.com/auth/bigquery", 12724 // "https://www.googleapis.com/auth/bigquery.readonly", 12725 // "https://www.googleapis.com/auth/cloud-platform", 12726 // "https://www.googleapis.com/auth/cloud-platform.read-only" 12727 // ] 12728 // } 12729 12730} 12731 12732// method id "bigquery.tables.insert": 12733 12734type TablesInsertCall struct { 12735 s *Service 12736 projectId string 12737 datasetId string 12738 table *Table 12739 urlParams_ gensupport.URLParams 12740 ctx_ context.Context 12741 header_ http.Header 12742} 12743 12744// Insert: Creates a new, empty table in the dataset. 12745func (r *TablesService) Insert(projectId string, datasetId string, table *Table) *TablesInsertCall { 12746 c := &TablesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12747 c.projectId = projectId 12748 c.datasetId = datasetId 12749 c.table = table 12750 return c 12751} 12752 12753// Fields allows partial responses to be retrieved. See 12754// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12755// for more information. 12756func (c *TablesInsertCall) Fields(s ...googleapi.Field) *TablesInsertCall { 12757 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12758 return c 12759} 12760 12761// Context sets the context to be used in this call's Do method. Any 12762// pending HTTP request will be aborted if the provided context is 12763// canceled. 12764func (c *TablesInsertCall) Context(ctx context.Context) *TablesInsertCall { 12765 c.ctx_ = ctx 12766 return c 12767} 12768 12769// Header returns an http.Header that can be modified by the caller to 12770// add HTTP headers to the request. 12771func (c *TablesInsertCall) Header() http.Header { 12772 if c.header_ == nil { 12773 c.header_ = make(http.Header) 12774 } 12775 return c.header_ 12776} 12777 12778func (c *TablesInsertCall) doRequest(alt string) (*http.Response, error) { 12779 reqHeaders := make(http.Header) 12780 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 12781 for k, v := range c.header_ { 12782 reqHeaders[k] = v 12783 } 12784 reqHeaders.Set("User-Agent", c.s.userAgent()) 12785 var body io.Reader = nil 12786 body, err := googleapi.WithoutDataWrapper.JSONReader(c.table) 12787 if err != nil { 12788 return nil, err 12789 } 12790 reqHeaders.Set("Content-Type", "application/json") 12791 c.urlParams_.Set("alt", alt) 12792 c.urlParams_.Set("prettyPrint", "false") 12793 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables") 12794 urls += "?" + c.urlParams_.Encode() 12795 req, err := http.NewRequest("POST", urls, body) 12796 if err != nil { 12797 return nil, err 12798 } 12799 req.Header = reqHeaders 12800 googleapi.Expand(req.URL, map[string]string{ 12801 "projectId": c.projectId, 12802 "datasetId": c.datasetId, 12803 }) 12804 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12805} 12806 12807// Do executes the "bigquery.tables.insert" call. 12808// Exactly one of *Table or error will be non-nil. Any non-2xx status 12809// code is an error. Response headers are in either 12810// *Table.ServerResponse.Header or (if a response was returned at all) 12811// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12812// check whether the returned error was because http.StatusNotModified 12813// was returned. 12814func (c *TablesInsertCall) Do(opts ...googleapi.CallOption) (*Table, error) { 12815 gensupport.SetOptions(c.urlParams_, opts...) 12816 res, err := c.doRequest("json") 12817 if res != nil && res.StatusCode == http.StatusNotModified { 12818 if res.Body != nil { 12819 res.Body.Close() 12820 } 12821 return nil, &googleapi.Error{ 12822 Code: res.StatusCode, 12823 Header: res.Header, 12824 } 12825 } 12826 if err != nil { 12827 return nil, err 12828 } 12829 defer googleapi.CloseBody(res) 12830 if err := googleapi.CheckResponse(res); err != nil { 12831 return nil, err 12832 } 12833 ret := &Table{ 12834 ServerResponse: googleapi.ServerResponse{ 12835 Header: res.Header, 12836 HTTPStatusCode: res.StatusCode, 12837 }, 12838 } 12839 target := &ret 12840 if err := gensupport.DecodeResponse(target, res); err != nil { 12841 return nil, err 12842 } 12843 return ret, nil 12844 // { 12845 // "description": "Creates a new, empty table in the dataset.", 12846 // "httpMethod": "POST", 12847 // "id": "bigquery.tables.insert", 12848 // "parameterOrder": [ 12849 // "projectId", 12850 // "datasetId" 12851 // ], 12852 // "parameters": { 12853 // "datasetId": { 12854 // "description": "Dataset ID of the new table", 12855 // "location": "path", 12856 // "required": true, 12857 // "type": "string" 12858 // }, 12859 // "projectId": { 12860 // "description": "Project ID of the new table", 12861 // "location": "path", 12862 // "required": true, 12863 // "type": "string" 12864 // } 12865 // }, 12866 // "path": "projects/{projectId}/datasets/{datasetId}/tables", 12867 // "request": { 12868 // "$ref": "Table" 12869 // }, 12870 // "response": { 12871 // "$ref": "Table" 12872 // }, 12873 // "scopes": [ 12874 // "https://www.googleapis.com/auth/bigquery", 12875 // "https://www.googleapis.com/auth/cloud-platform" 12876 // ] 12877 // } 12878 12879} 12880 12881// method id "bigquery.tables.list": 12882 12883type TablesListCall struct { 12884 s *Service 12885 projectId string 12886 datasetId string 12887 urlParams_ gensupport.URLParams 12888 ifNoneMatch_ string 12889 ctx_ context.Context 12890 header_ http.Header 12891} 12892 12893// List: Lists all tables in the specified dataset. Requires the READER 12894// dataset role. 12895func (r *TablesService) List(projectId string, datasetId string) *TablesListCall { 12896 c := &TablesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12897 c.projectId = projectId 12898 c.datasetId = datasetId 12899 return c 12900} 12901 12902// MaxResults sets the optional parameter "maxResults": Maximum number 12903// of results to return 12904func (c *TablesListCall) MaxResults(maxResults int64) *TablesListCall { 12905 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 12906 return c 12907} 12908 12909// PageToken sets the optional parameter "pageToken": Page token, 12910// returned by a previous call, to request the next page of results 12911func (c *TablesListCall) PageToken(pageToken string) *TablesListCall { 12912 c.urlParams_.Set("pageToken", pageToken) 12913 return c 12914} 12915 12916// Fields allows partial responses to be retrieved. See 12917// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12918// for more information. 12919func (c *TablesListCall) Fields(s ...googleapi.Field) *TablesListCall { 12920 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12921 return c 12922} 12923 12924// IfNoneMatch sets the optional parameter which makes the operation 12925// fail if the object's ETag matches the given value. This is useful for 12926// getting updates only after the object has changed since the last 12927// request. Use googleapi.IsNotModified to check whether the response 12928// error from Do is the result of In-None-Match. 12929func (c *TablesListCall) IfNoneMatch(entityTag string) *TablesListCall { 12930 c.ifNoneMatch_ = entityTag 12931 return c 12932} 12933 12934// Context sets the context to be used in this call's Do method. Any 12935// pending HTTP request will be aborted if the provided context is 12936// canceled. 12937func (c *TablesListCall) Context(ctx context.Context) *TablesListCall { 12938 c.ctx_ = ctx 12939 return c 12940} 12941 12942// Header returns an http.Header that can be modified by the caller to 12943// add HTTP headers to the request. 12944func (c *TablesListCall) Header() http.Header { 12945 if c.header_ == nil { 12946 c.header_ = make(http.Header) 12947 } 12948 return c.header_ 12949} 12950 12951func (c *TablesListCall) doRequest(alt string) (*http.Response, error) { 12952 reqHeaders := make(http.Header) 12953 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 12954 for k, v := range c.header_ { 12955 reqHeaders[k] = v 12956 } 12957 reqHeaders.Set("User-Agent", c.s.userAgent()) 12958 if c.ifNoneMatch_ != "" { 12959 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12960 } 12961 var body io.Reader = nil 12962 c.urlParams_.Set("alt", alt) 12963 c.urlParams_.Set("prettyPrint", "false") 12964 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables") 12965 urls += "?" + c.urlParams_.Encode() 12966 req, err := http.NewRequest("GET", urls, body) 12967 if err != nil { 12968 return nil, err 12969 } 12970 req.Header = reqHeaders 12971 googleapi.Expand(req.URL, map[string]string{ 12972 "projectId": c.projectId, 12973 "datasetId": c.datasetId, 12974 }) 12975 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12976} 12977 12978// Do executes the "bigquery.tables.list" call. 12979// Exactly one of *TableList or error will be non-nil. Any non-2xx 12980// status code is an error. Response headers are in either 12981// *TableList.ServerResponse.Header or (if a response was returned at 12982// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 12983// to check whether the returned error was because 12984// http.StatusNotModified was returned. 12985func (c *TablesListCall) Do(opts ...googleapi.CallOption) (*TableList, error) { 12986 gensupport.SetOptions(c.urlParams_, opts...) 12987 res, err := c.doRequest("json") 12988 if res != nil && res.StatusCode == http.StatusNotModified { 12989 if res.Body != nil { 12990 res.Body.Close() 12991 } 12992 return nil, &googleapi.Error{ 12993 Code: res.StatusCode, 12994 Header: res.Header, 12995 } 12996 } 12997 if err != nil { 12998 return nil, err 12999 } 13000 defer googleapi.CloseBody(res) 13001 if err := googleapi.CheckResponse(res); err != nil { 13002 return nil, err 13003 } 13004 ret := &TableList{ 13005 ServerResponse: googleapi.ServerResponse{ 13006 Header: res.Header, 13007 HTTPStatusCode: res.StatusCode, 13008 }, 13009 } 13010 target := &ret 13011 if err := gensupport.DecodeResponse(target, res); err != nil { 13012 return nil, err 13013 } 13014 return ret, nil 13015 // { 13016 // "description": "Lists all tables in the specified dataset. Requires the READER dataset role.", 13017 // "httpMethod": "GET", 13018 // "id": "bigquery.tables.list", 13019 // "parameterOrder": [ 13020 // "projectId", 13021 // "datasetId" 13022 // ], 13023 // "parameters": { 13024 // "datasetId": { 13025 // "description": "Dataset ID of the tables to list", 13026 // "location": "path", 13027 // "required": true, 13028 // "type": "string" 13029 // }, 13030 // "maxResults": { 13031 // "description": "Maximum number of results to return", 13032 // "format": "uint32", 13033 // "location": "query", 13034 // "type": "integer" 13035 // }, 13036 // "pageToken": { 13037 // "description": "Page token, returned by a previous call, to request the next page of results", 13038 // "location": "query", 13039 // "type": "string" 13040 // }, 13041 // "projectId": { 13042 // "description": "Project ID of the tables to list", 13043 // "location": "path", 13044 // "required": true, 13045 // "type": "string" 13046 // } 13047 // }, 13048 // "path": "projects/{projectId}/datasets/{datasetId}/tables", 13049 // "response": { 13050 // "$ref": "TableList" 13051 // }, 13052 // "scopes": [ 13053 // "https://www.googleapis.com/auth/bigquery", 13054 // "https://www.googleapis.com/auth/bigquery.readonly", 13055 // "https://www.googleapis.com/auth/cloud-platform", 13056 // "https://www.googleapis.com/auth/cloud-platform.read-only" 13057 // ] 13058 // } 13059 13060} 13061 13062// Pages invokes f for each page of results. 13063// A non-nil error returned from f will halt the iteration. 13064// The provided context supersedes any context provided to the Context method. 13065func (c *TablesListCall) Pages(ctx context.Context, f func(*TableList) error) error { 13066 c.ctx_ = ctx 13067 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 13068 for { 13069 x, err := c.Do() 13070 if err != nil { 13071 return err 13072 } 13073 if err := f(x); err != nil { 13074 return err 13075 } 13076 if x.NextPageToken == "" { 13077 return nil 13078 } 13079 c.PageToken(x.NextPageToken) 13080 } 13081} 13082 13083// method id "bigquery.tables.patch": 13084 13085type TablesPatchCall struct { 13086 s *Service 13087 projectId string 13088 datasetId string 13089 tableId string 13090 table *Table 13091 urlParams_ gensupport.URLParams 13092 ctx_ context.Context 13093 header_ http.Header 13094} 13095 13096// Patch: Updates information in an existing table. The update method 13097// replaces the entire table resource, whereas the patch method only 13098// replaces fields that are provided in the submitted table resource. 13099// This method supports patch semantics. 13100func (r *TablesService) Patch(projectId string, datasetId string, tableId string, table *Table) *TablesPatchCall { 13101 c := &TablesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13102 c.projectId = projectId 13103 c.datasetId = datasetId 13104 c.tableId = tableId 13105 c.table = table 13106 return c 13107} 13108 13109// Fields allows partial responses to be retrieved. See 13110// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13111// for more information. 13112func (c *TablesPatchCall) Fields(s ...googleapi.Field) *TablesPatchCall { 13113 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13114 return c 13115} 13116 13117// Context sets the context to be used in this call's Do method. Any 13118// pending HTTP request will be aborted if the provided context is 13119// canceled. 13120func (c *TablesPatchCall) Context(ctx context.Context) *TablesPatchCall { 13121 c.ctx_ = ctx 13122 return c 13123} 13124 13125// Header returns an http.Header that can be modified by the caller to 13126// add HTTP headers to the request. 13127func (c *TablesPatchCall) Header() http.Header { 13128 if c.header_ == nil { 13129 c.header_ = make(http.Header) 13130 } 13131 return c.header_ 13132} 13133 13134func (c *TablesPatchCall) doRequest(alt string) (*http.Response, error) { 13135 reqHeaders := make(http.Header) 13136 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 13137 for k, v := range c.header_ { 13138 reqHeaders[k] = v 13139 } 13140 reqHeaders.Set("User-Agent", c.s.userAgent()) 13141 var body io.Reader = nil 13142 body, err := googleapi.WithoutDataWrapper.JSONReader(c.table) 13143 if err != nil { 13144 return nil, err 13145 } 13146 reqHeaders.Set("Content-Type", "application/json") 13147 c.urlParams_.Set("alt", alt) 13148 c.urlParams_.Set("prettyPrint", "false") 13149 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 13150 urls += "?" + c.urlParams_.Encode() 13151 req, err := http.NewRequest("PATCH", urls, body) 13152 if err != nil { 13153 return nil, err 13154 } 13155 req.Header = reqHeaders 13156 googleapi.Expand(req.URL, map[string]string{ 13157 "projectId": c.projectId, 13158 "datasetId": c.datasetId, 13159 "tableId": c.tableId, 13160 }) 13161 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13162} 13163 13164// Do executes the "bigquery.tables.patch" call. 13165// Exactly one of *Table or error will be non-nil. Any non-2xx status 13166// code is an error. Response headers are in either 13167// *Table.ServerResponse.Header or (if a response was returned at all) 13168// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 13169// check whether the returned error was because http.StatusNotModified 13170// was returned. 13171func (c *TablesPatchCall) Do(opts ...googleapi.CallOption) (*Table, error) { 13172 gensupport.SetOptions(c.urlParams_, opts...) 13173 res, err := c.doRequest("json") 13174 if res != nil && res.StatusCode == http.StatusNotModified { 13175 if res.Body != nil { 13176 res.Body.Close() 13177 } 13178 return nil, &googleapi.Error{ 13179 Code: res.StatusCode, 13180 Header: res.Header, 13181 } 13182 } 13183 if err != nil { 13184 return nil, err 13185 } 13186 defer googleapi.CloseBody(res) 13187 if err := googleapi.CheckResponse(res); err != nil { 13188 return nil, err 13189 } 13190 ret := &Table{ 13191 ServerResponse: googleapi.ServerResponse{ 13192 Header: res.Header, 13193 HTTPStatusCode: res.StatusCode, 13194 }, 13195 } 13196 target := &ret 13197 if err := gensupport.DecodeResponse(target, res); err != nil { 13198 return nil, err 13199 } 13200 return ret, nil 13201 // { 13202 // "description": "Updates information in an existing table. The update method replaces the entire table resource, whereas the patch method only replaces fields that are provided in the submitted table resource. This method supports patch semantics.", 13203 // "httpMethod": "PATCH", 13204 // "id": "bigquery.tables.patch", 13205 // "parameterOrder": [ 13206 // "projectId", 13207 // "datasetId", 13208 // "tableId" 13209 // ], 13210 // "parameters": { 13211 // "datasetId": { 13212 // "description": "Dataset ID of the table to update", 13213 // "location": "path", 13214 // "required": true, 13215 // "type": "string" 13216 // }, 13217 // "projectId": { 13218 // "description": "Project ID of the table to update", 13219 // "location": "path", 13220 // "required": true, 13221 // "type": "string" 13222 // }, 13223 // "tableId": { 13224 // "description": "Table ID of the table to update", 13225 // "location": "path", 13226 // "required": true, 13227 // "type": "string" 13228 // } 13229 // }, 13230 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 13231 // "request": { 13232 // "$ref": "Table" 13233 // }, 13234 // "response": { 13235 // "$ref": "Table" 13236 // }, 13237 // "scopes": [ 13238 // "https://www.googleapis.com/auth/bigquery", 13239 // "https://www.googleapis.com/auth/cloud-platform" 13240 // ] 13241 // } 13242 13243} 13244 13245// method id "bigquery.tables.setIamPolicy": 13246 13247type TablesSetIamPolicyCall struct { 13248 s *Service 13249 resource string 13250 setiampolicyrequest *SetIamPolicyRequest 13251 urlParams_ gensupport.URLParams 13252 ctx_ context.Context 13253 header_ http.Header 13254} 13255 13256// SetIamPolicy: Sets the access control policy on the specified 13257// resource. Replaces any existing policy. Can return `NOT_FOUND`, 13258// `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. 13259func (r *TablesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *TablesSetIamPolicyCall { 13260 c := &TablesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13261 c.resource = resource 13262 c.setiampolicyrequest = setiampolicyrequest 13263 return c 13264} 13265 13266// Fields allows partial responses to be retrieved. See 13267// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13268// for more information. 13269func (c *TablesSetIamPolicyCall) Fields(s ...googleapi.Field) *TablesSetIamPolicyCall { 13270 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13271 return c 13272} 13273 13274// Context sets the context to be used in this call's Do method. Any 13275// pending HTTP request will be aborted if the provided context is 13276// canceled. 13277func (c *TablesSetIamPolicyCall) Context(ctx context.Context) *TablesSetIamPolicyCall { 13278 c.ctx_ = ctx 13279 return c 13280} 13281 13282// Header returns an http.Header that can be modified by the caller to 13283// add HTTP headers to the request. 13284func (c *TablesSetIamPolicyCall) Header() http.Header { 13285 if c.header_ == nil { 13286 c.header_ = make(http.Header) 13287 } 13288 return c.header_ 13289} 13290 13291func (c *TablesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 13292 reqHeaders := make(http.Header) 13293 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 13294 for k, v := range c.header_ { 13295 reqHeaders[k] = v 13296 } 13297 reqHeaders.Set("User-Agent", c.s.userAgent()) 13298 var body io.Reader = nil 13299 body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) 13300 if err != nil { 13301 return nil, err 13302 } 13303 reqHeaders.Set("Content-Type", "application/json") 13304 c.urlParams_.Set("alt", alt) 13305 c.urlParams_.Set("prettyPrint", "false") 13306 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:setIamPolicy") 13307 urls += "?" + c.urlParams_.Encode() 13308 req, err := http.NewRequest("POST", urls, body) 13309 if err != nil { 13310 return nil, err 13311 } 13312 req.Header = reqHeaders 13313 googleapi.Expand(req.URL, map[string]string{ 13314 "resource": c.resource, 13315 }) 13316 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13317} 13318 13319// Do executes the "bigquery.tables.setIamPolicy" call. 13320// Exactly one of *Policy or error will be non-nil. Any non-2xx status 13321// code is an error. Response headers are in either 13322// *Policy.ServerResponse.Header or (if a response was returned at all) 13323// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 13324// check whether the returned error was because http.StatusNotModified 13325// was returned. 13326func (c *TablesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 13327 gensupport.SetOptions(c.urlParams_, opts...) 13328 res, err := c.doRequest("json") 13329 if res != nil && res.StatusCode == http.StatusNotModified { 13330 if res.Body != nil { 13331 res.Body.Close() 13332 } 13333 return nil, &googleapi.Error{ 13334 Code: res.StatusCode, 13335 Header: res.Header, 13336 } 13337 } 13338 if err != nil { 13339 return nil, err 13340 } 13341 defer googleapi.CloseBody(res) 13342 if err := googleapi.CheckResponse(res); err != nil { 13343 return nil, err 13344 } 13345 ret := &Policy{ 13346 ServerResponse: googleapi.ServerResponse{ 13347 Header: res.Header, 13348 HTTPStatusCode: res.StatusCode, 13349 }, 13350 } 13351 target := &ret 13352 if err := gensupport.DecodeResponse(target, res); err != nil { 13353 return nil, err 13354 } 13355 return ret, nil 13356 // { 13357 // "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", 13358 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}:setIamPolicy", 13359 // "httpMethod": "POST", 13360 // "id": "bigquery.tables.setIamPolicy", 13361 // "parameterOrder": [ 13362 // "resource" 13363 // ], 13364 // "parameters": { 13365 // "resource": { 13366 // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", 13367 // "location": "path", 13368 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+$", 13369 // "required": true, 13370 // "type": "string" 13371 // } 13372 // }, 13373 // "path": "{+resource}:setIamPolicy", 13374 // "request": { 13375 // "$ref": "SetIamPolicyRequest" 13376 // }, 13377 // "response": { 13378 // "$ref": "Policy" 13379 // }, 13380 // "scopes": [ 13381 // "https://www.googleapis.com/auth/bigquery", 13382 // "https://www.googleapis.com/auth/cloud-platform" 13383 // ] 13384 // } 13385 13386} 13387 13388// method id "bigquery.tables.testIamPermissions": 13389 13390type TablesTestIamPermissionsCall struct { 13391 s *Service 13392 resource string 13393 testiampermissionsrequest *TestIamPermissionsRequest 13394 urlParams_ gensupport.URLParams 13395 ctx_ context.Context 13396 header_ http.Header 13397} 13398 13399// TestIamPermissions: Returns permissions that a caller has on the 13400// specified resource. If the resource does not exist, this will return 13401// an empty set of permissions, not a `NOT_FOUND` error. Note: This 13402// operation is designed to be used for building permission-aware UIs 13403// and command-line tools, not for authorization checking. This 13404// operation may "fail open" without warning. 13405func (r *TablesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *TablesTestIamPermissionsCall { 13406 c := &TablesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13407 c.resource = resource 13408 c.testiampermissionsrequest = testiampermissionsrequest 13409 return c 13410} 13411 13412// Fields allows partial responses to be retrieved. See 13413// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13414// for more information. 13415func (c *TablesTestIamPermissionsCall) Fields(s ...googleapi.Field) *TablesTestIamPermissionsCall { 13416 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13417 return c 13418} 13419 13420// Context sets the context to be used in this call's Do method. Any 13421// pending HTTP request will be aborted if the provided context is 13422// canceled. 13423func (c *TablesTestIamPermissionsCall) Context(ctx context.Context) *TablesTestIamPermissionsCall { 13424 c.ctx_ = ctx 13425 return c 13426} 13427 13428// Header returns an http.Header that can be modified by the caller to 13429// add HTTP headers to the request. 13430func (c *TablesTestIamPermissionsCall) Header() http.Header { 13431 if c.header_ == nil { 13432 c.header_ = make(http.Header) 13433 } 13434 return c.header_ 13435} 13436 13437func (c *TablesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { 13438 reqHeaders := make(http.Header) 13439 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 13440 for k, v := range c.header_ { 13441 reqHeaders[k] = v 13442 } 13443 reqHeaders.Set("User-Agent", c.s.userAgent()) 13444 var body io.Reader = nil 13445 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) 13446 if err != nil { 13447 return nil, err 13448 } 13449 reqHeaders.Set("Content-Type", "application/json") 13450 c.urlParams_.Set("alt", alt) 13451 c.urlParams_.Set("prettyPrint", "false") 13452 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:testIamPermissions") 13453 urls += "?" + c.urlParams_.Encode() 13454 req, err := http.NewRequest("POST", urls, body) 13455 if err != nil { 13456 return nil, err 13457 } 13458 req.Header = reqHeaders 13459 googleapi.Expand(req.URL, map[string]string{ 13460 "resource": c.resource, 13461 }) 13462 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13463} 13464 13465// Do executes the "bigquery.tables.testIamPermissions" call. 13466// Exactly one of *TestIamPermissionsResponse or error will be non-nil. 13467// Any non-2xx status code is an error. Response headers are in either 13468// *TestIamPermissionsResponse.ServerResponse.Header or (if a response 13469// was returned at all) in error.(*googleapi.Error).Header. Use 13470// googleapi.IsNotModified to check whether the returned error was 13471// because http.StatusNotModified was returned. 13472func (c *TablesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { 13473 gensupport.SetOptions(c.urlParams_, opts...) 13474 res, err := c.doRequest("json") 13475 if res != nil && res.StatusCode == http.StatusNotModified { 13476 if res.Body != nil { 13477 res.Body.Close() 13478 } 13479 return nil, &googleapi.Error{ 13480 Code: res.StatusCode, 13481 Header: res.Header, 13482 } 13483 } 13484 if err != nil { 13485 return nil, err 13486 } 13487 defer googleapi.CloseBody(res) 13488 if err := googleapi.CheckResponse(res); err != nil { 13489 return nil, err 13490 } 13491 ret := &TestIamPermissionsResponse{ 13492 ServerResponse: googleapi.ServerResponse{ 13493 Header: res.Header, 13494 HTTPStatusCode: res.StatusCode, 13495 }, 13496 } 13497 target := &ret 13498 if err := gensupport.DecodeResponse(target, res); err != nil { 13499 return nil, err 13500 } 13501 return ret, nil 13502 // { 13503 // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", 13504 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}:testIamPermissions", 13505 // "httpMethod": "POST", 13506 // "id": "bigquery.tables.testIamPermissions", 13507 // "parameterOrder": [ 13508 // "resource" 13509 // ], 13510 // "parameters": { 13511 // "resource": { 13512 // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", 13513 // "location": "path", 13514 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+$", 13515 // "required": true, 13516 // "type": "string" 13517 // } 13518 // }, 13519 // "path": "{+resource}:testIamPermissions", 13520 // "request": { 13521 // "$ref": "TestIamPermissionsRequest" 13522 // }, 13523 // "response": { 13524 // "$ref": "TestIamPermissionsResponse" 13525 // }, 13526 // "scopes": [ 13527 // "https://www.googleapis.com/auth/bigquery", 13528 // "https://www.googleapis.com/auth/bigquery.readonly", 13529 // "https://www.googleapis.com/auth/cloud-platform", 13530 // "https://www.googleapis.com/auth/cloud-platform.read-only" 13531 // ] 13532 // } 13533 13534} 13535 13536// method id "bigquery.tables.update": 13537 13538type TablesUpdateCall struct { 13539 s *Service 13540 projectId string 13541 datasetId string 13542 tableId string 13543 table *Table 13544 urlParams_ gensupport.URLParams 13545 ctx_ context.Context 13546 header_ http.Header 13547} 13548 13549// Update: Updates information in an existing table. The update method 13550// replaces the entire table resource, whereas the patch method only 13551// replaces fields that are provided in the submitted table resource. 13552func (r *TablesService) Update(projectId string, datasetId string, tableId string, table *Table) *TablesUpdateCall { 13553 c := &TablesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13554 c.projectId = projectId 13555 c.datasetId = datasetId 13556 c.tableId = tableId 13557 c.table = table 13558 return c 13559} 13560 13561// Fields allows partial responses to be retrieved. See 13562// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13563// for more information. 13564func (c *TablesUpdateCall) Fields(s ...googleapi.Field) *TablesUpdateCall { 13565 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13566 return c 13567} 13568 13569// Context sets the context to be used in this call's Do method. Any 13570// pending HTTP request will be aborted if the provided context is 13571// canceled. 13572func (c *TablesUpdateCall) Context(ctx context.Context) *TablesUpdateCall { 13573 c.ctx_ = ctx 13574 return c 13575} 13576 13577// Header returns an http.Header that can be modified by the caller to 13578// add HTTP headers to the request. 13579func (c *TablesUpdateCall) Header() http.Header { 13580 if c.header_ == nil { 13581 c.header_ = make(http.Header) 13582 } 13583 return c.header_ 13584} 13585 13586func (c *TablesUpdateCall) doRequest(alt string) (*http.Response, error) { 13587 reqHeaders := make(http.Header) 13588 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20201124") 13589 for k, v := range c.header_ { 13590 reqHeaders[k] = v 13591 } 13592 reqHeaders.Set("User-Agent", c.s.userAgent()) 13593 var body io.Reader = nil 13594 body, err := googleapi.WithoutDataWrapper.JSONReader(c.table) 13595 if err != nil { 13596 return nil, err 13597 } 13598 reqHeaders.Set("Content-Type", "application/json") 13599 c.urlParams_.Set("alt", alt) 13600 c.urlParams_.Set("prettyPrint", "false") 13601 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 13602 urls += "?" + c.urlParams_.Encode() 13603 req, err := http.NewRequest("PUT", urls, body) 13604 if err != nil { 13605 return nil, err 13606 } 13607 req.Header = reqHeaders 13608 googleapi.Expand(req.URL, map[string]string{ 13609 "projectId": c.projectId, 13610 "datasetId": c.datasetId, 13611 "tableId": c.tableId, 13612 }) 13613 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13614} 13615 13616// Do executes the "bigquery.tables.update" call. 13617// Exactly one of *Table or error will be non-nil. Any non-2xx status 13618// code is an error. Response headers are in either 13619// *Table.ServerResponse.Header or (if a response was returned at all) 13620// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 13621// check whether the returned error was because http.StatusNotModified 13622// was returned. 13623func (c *TablesUpdateCall) Do(opts ...googleapi.CallOption) (*Table, error) { 13624 gensupport.SetOptions(c.urlParams_, opts...) 13625 res, err := c.doRequest("json") 13626 if res != nil && res.StatusCode == http.StatusNotModified { 13627 if res.Body != nil { 13628 res.Body.Close() 13629 } 13630 return nil, &googleapi.Error{ 13631 Code: res.StatusCode, 13632 Header: res.Header, 13633 } 13634 } 13635 if err != nil { 13636 return nil, err 13637 } 13638 defer googleapi.CloseBody(res) 13639 if err := googleapi.CheckResponse(res); err != nil { 13640 return nil, err 13641 } 13642 ret := &Table{ 13643 ServerResponse: googleapi.ServerResponse{ 13644 Header: res.Header, 13645 HTTPStatusCode: res.StatusCode, 13646 }, 13647 } 13648 target := &ret 13649 if err := gensupport.DecodeResponse(target, res); err != nil { 13650 return nil, err 13651 } 13652 return ret, nil 13653 // { 13654 // "description": "Updates information in an existing table. The update method replaces the entire table resource, whereas the patch method only replaces fields that are provided in the submitted table resource.", 13655 // "httpMethod": "PUT", 13656 // "id": "bigquery.tables.update", 13657 // "parameterOrder": [ 13658 // "projectId", 13659 // "datasetId", 13660 // "tableId" 13661 // ], 13662 // "parameters": { 13663 // "datasetId": { 13664 // "description": "Dataset ID of the table to update", 13665 // "location": "path", 13666 // "required": true, 13667 // "type": "string" 13668 // }, 13669 // "projectId": { 13670 // "description": "Project ID of the table to update", 13671 // "location": "path", 13672 // "required": true, 13673 // "type": "string" 13674 // }, 13675 // "tableId": { 13676 // "description": "Table ID of the table to update", 13677 // "location": "path", 13678 // "required": true, 13679 // "type": "string" 13680 // } 13681 // }, 13682 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 13683 // "request": { 13684 // "$ref": "Table" 13685 // }, 13686 // "response": { 13687 // "$ref": "Table" 13688 // }, 13689 // "scopes": [ 13690 // "https://www.googleapis.com/auth/bigquery", 13691 // "https://www.googleapis.com/auth/cloud-platform" 13692 // ] 13693 // } 13694 13695} 13696